diff --git a/src/bonsai/test/files/snap.ifc b/src/bonsai/test/files/snap.ifc new file mode 100644 index 0000000000..b99cf6c6c2 --- /dev/null +++ b/src/bonsai/test/files/snap.ifc @@ -0,0 +1,1229 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition[DesignTransferView]'),'2;1'); +FILE_NAME('snap.ifc','2026-04-28T11:17:26-03:00',(),(),'IfcOpenShell 0.0.0','Bonsai 0.8.6-alpha260415-29fe41e','Nobody'); +FILE_SCHEMA(('IFC4')); +ENDSEC; +DATA; +#1=IFCPROJECT('0_wwi6gGz9iPW4qKouGP6L',$,'My Project',$,$,$,$,(#14,#26),#9); +#2=IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.); +#3=IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#4=IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#5=IFCDIMENSIONALEXPONENTS(0,0,0,0,0,0,0); +#6=IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#7=IFCMEASUREWITHUNIT(IFCREAL(0.0174532925199433),#6); +#8=IFCCONVERSIONBASEDUNIT(#5,.PLANEANGLEUNIT.,'degree',#7); +#9=IFCUNITASSIGNMENT((#4,#2,#8,#3)); +#10=IFCCARTESIANPOINT((0.,0.,0.)); +#11=IFCDIRECTION((0.,0.,1.)); +#12=IFCDIRECTION((1.,0.,0.)); +#13=IFCAXIS2PLACEMENT3D(#10,#11,#12); +#14=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-05,#13,$); +#15=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#14,$,.MODEL_VIEW.,$); +#16=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#14,$,.GRAPH_VIEW.,$); +#17=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Box','Model',*,*,*,*,#14,$,.MODEL_VIEW.,$); +#18=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#14,$,.SECTION_VIEW.,$); +#19=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#14,$,.ELEVATION_VIEW.,$); +#20=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#14,$,.MODEL_VIEW.,$); +#21=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#14,$,.PLAN_VIEW.,$); +#22=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Profile','Model',*,*,*,*,#14,$,.ELEVATION_VIEW.,$); +#23=IFCCARTESIANPOINT((0.,0.)); +#24=IFCDIRECTION((1.,0.)); +#25=IFCAXIS2PLACEMENT2D(#23,#24); +#26=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Plan',2,1.E-05,#25,$); +#27=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Plan',*,*,*,*,#26,$,.GRAPH_VIEW.,$); +#28=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Plan',*,*,*,*,#26,$,.PLAN_VIEW.,$); +#29=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Plan',*,*,*,*,#26,$,.PLAN_VIEW.,$); +#30=IFCSITE('3q97y5qv978PccYiHqvsaD',$,'My Site',$,$,#53,$,$,$,$,$,$,$,$); +#36=IFCBUILDING('0l2LfU1Jz9IekI6$oJ9I49',$,'My Building',$,$,#59,$,$,$,$,$,$); +#42=IFCBUILDINGSTOREY('2DYJHaYCT6guUOu9i9MdFC',$,'My Storey',$,$,#65,$,$,$,$); +#48=IFCRELAGGREGATES('3gpAinwxbBiefJiHCpBbjc',$,$,$,#1,(#30)); +#49=IFCCARTESIANPOINT((0.,0.,0.)); +#50=IFCDIRECTION((0.,0.,1.)); +#51=IFCDIRECTION((1.,0.,0.)); +#52=IFCAXIS2PLACEMENT3D(#49,#50,#51); +#53=IFCLOCALPLACEMENT($,#52); +#54=IFCRELAGGREGATES('29krqS8irBTfkWPyZmXi4J',$,$,$,#30,(#36)); +#55=IFCCARTESIANPOINT((0.,0.,0.)); +#56=IFCDIRECTION((0.,0.,1.)); +#57=IFCDIRECTION((1.,0.,0.)); +#58=IFCAXIS2PLACEMENT3D(#55,#56,#57); +#59=IFCLOCALPLACEMENT(#53,#58); +#60=IFCRELAGGREGATES('3SejG2dBn0bhb2IesSwnmN',$,$,$,#36,(#42)); +#61=IFCCARTESIANPOINT((0.,0.,0.)); +#62=IFCDIRECTION((0.,0.,1.)); +#63=IFCDIRECTION((1.,0.,0.)); +#64=IFCAXIS2PLACEMENT3D(#61,#62,#63); +#65=IFCLOCALPLACEMENT(#59,#64); +#66=IFCWALLTYPE('2o8NqQQbHA5BeErrgwfr7d',$,'WAL50',$,$,$,$,$,$,.NOTDEFINED.); +#67=IFCRELASSOCIATESMATERIAL('1Q$5DZKr98n82Eitz2dWey',$,$,$,(#66),#70); +#68=IFCMATERIAL('Unknown',$,$); +#69=IFCMATERIALLAYER(#68,50.,$,$,$,$,$); +#70=IFCMATERIALLAYERSET((#69),$,$); +#71=IFCWALLTYPE('3KlIOv_P9A79tkt8D_jq_m',$,'WAL100',$,$,$,$,$,$,.NOTDEFINED.); +#72=IFCRELASSOCIATESMATERIAL('32B9Wx8Z1FxhIN7m77MiHG',$,$,$,(#71),#74); +#73=IFCMATERIALLAYER(#68,100.,$,$,$,$,$); +#74=IFCMATERIALLAYERSET((#73),$,$); +#75=IFCWALLTYPE('2DqrSeel1AGw6h3b$ujafZ',$,'WAL200',$,$,$,$,$,$,.NOTDEFINED.); +#76=IFCRELASSOCIATESMATERIAL('2FeYUpt3D4tAvwgGmwXWZn',$,$,$,(#75),#78); +#77=IFCMATERIALLAYER(#68,200.,$,$,$,$,$); +#78=IFCMATERIALLAYERSET((#77),$,$); +#79=IFCWALLTYPE('2jNdEOFIP1eQb3WZePlFGY',$,'WAL300',$,$,$,$,$,$,.NOTDEFINED.); +#80=IFCRELASSOCIATESMATERIAL('2bFeM6xevAwucuwMlauX77',$,$,$,(#79),#82); +#81=IFCMATERIALLAYER(#68,300.,$,$,$,$,$); +#82=IFCMATERIALLAYERSET((#81),$,$); +#83=IFCCOVERINGTYPE('3310gCgH59w9tu$DfmiCEN',$,'COV10',$,$,$,$,$,$,.NOTDEFINED.); +#84=IFCRELASSOCIATESMATERIAL('3pTNmWd_jBoOWyHc8Yf4qI',$,$,$,(#83),#86); +#85=IFCMATERIALLAYER(#68,10.,$,$,$,$,$); +#86=IFCMATERIALLAYERSET((#85),$,$); +#87=IFCPROPERTYSINGLEVALUE('LayerSetDirection',$,IFCLABEL('AXIS2'),$); +#88=IFCPROPERTYSET('2VZJ9xfdn1NeOY6uEmnnYW',$,'EPset_Parametric',$,(#87)); +#89=IFCCOVERINGTYPE('2sksWFuPzCgeNk1ofXS6PZ',$,'COV20',$,$,(#88),$,$,$,.NOTDEFINED.); +#90=IFCRELASSOCIATESMATERIAL('36rl5NddT1ux6ejkQAkT2z',$,$,$,(#89),#92); +#91=IFCMATERIALLAYER(#68,20.,$,$,$,$,$); +#92=IFCMATERIALLAYERSET((#91),$,$); +#93=IFCPROPERTYSINGLEVALUE('LayerSetDirection',$,IFCLABEL('AXIS3'),$); +#94=IFCPROPERTYSET('0HnrRhcd16Yfbgtci4sqCG',$,'EPset_Parametric',$,(#93)); +#95=IFCCOVERINGTYPE('1uU6rxt95AC91lZ0jTRG6G',$,'COV30',$,$,(#94),$,$,$,.NOTDEFINED.); +#96=IFCRELASSOCIATESMATERIAL('2lFv4xQYr5bwtiSsMTVCgz',$,$,$,(#95),#98); +#97=IFCMATERIALLAYER(#68,30.,$,$,$,$,$); +#98=IFCMATERIALLAYERSET((#97),$,$); +#99=IFCRAMPTYPE('3nonXCVn58jhVV08N8c97B',$,'RAM200',$,$,$,$,$,$,.NOTDEFINED.); +#100=IFCRELASSOCIATESMATERIAL('2NdIrmbUP6bh4x$p_RY31C',$,$,$,(#99),#102); +#101=IFCMATERIALLAYER(#68,200.,$,$,$,$,$); +#102=IFCMATERIALLAYERSET((#101),$,$); +#103=IFCPILETYPE('2uuf5kq5TDDfO9jGN7XIHh',$,'P1',$,$,$,$,$,$,.NOTDEFINED.); +#104=IFCRELASSOCIATESMATERIAL('3hi821Ffj8YR9yFjp226LU',$,$,$,(#103),#107); +#105=IFCCIRCLEPROFILEDEF(.AREA.,$,$,300.); +#106=IFCMATERIALPROFILE($,$,#68,#105,$,$); +#107=IFCMATERIALPROFILESET($,$,(#106),$); +#108=IFCSLABTYPE('2janmz3nH4P9IHaOVvGY_B',$,'FLR150',$,$,$,$,$,$,.NOTDEFINED.); +#109=IFCRELASSOCIATESMATERIAL('0og5Zg4ib67g6XWgOgqBWy',$,$,$,(#108),#111); +#110=IFCMATERIALLAYER(#68,200.,$,$,$,$,$); +#111=IFCMATERIALLAYERSET((#110),$,$); +#112=IFCSLABTYPE('26UKpEaTb9fh4qrqi3Ymzj',$,'FLR250',$,$,$,$,$,$,.NOTDEFINED.); +#113=IFCRELASSOCIATESMATERIAL('1BeBXPqen9TQEE42SxzhjF',$,$,$,(#112),#115); +#114=IFCMATERIALLAYER(#68,300.,$,$,$,$,$); +#115=IFCMATERIALLAYERSET((#114),$,$); +#116=IFCCOLUMNTYPE('1KnWzBBoLCNfJ3_J79LT7d',$,'C1',$,$,$,$,$,$,.NOTDEFINED.); +#117=IFCRELASSOCIATESMATERIAL('1W8OWQjEL05gH5hEpve6Lh',$,$,$,(#116),#120); +#118=IFCRECTANGLEPROFILEDEF(.AREA.,'500x600',$,500.,600.); +#119=IFCMATERIALPROFILE($,$,#68,#118,$,$); +#120=IFCMATERIALPROFILESET($,$,(#119),$); +#121=IFCCOLUMNTYPE('33jPFERfL9bfTeWfTL5kZ7',$,'C2',$,$,$,$,$,$,.NOTDEFINED.); +#122=IFCRELASSOCIATESMATERIAL('3czOrQw2v9BfS0PeQCrzWq',$,$,$,(#121),#125); +#123=IFCCIRCLEHOLLOWPROFILEDEF(.AREA.,'500.0x5.0 CHS',$,250.,5.); +#124=IFCMATERIALPROFILE($,$,#68,#123,$,$); +#125=IFCMATERIALPROFILESET($,$,(#124),$); +#126=IFCCOLUMNTYPE('21YcNdKNj2$95U55yNx1Nw',$,'C3',$,$,$,$,$,$,.NOTDEFINED.); +#127=IFCRELASSOCIATESMATERIAL('3n6Cru3xr6jvDptU9u7QEF',$,$,$,(#126),#130); +#128=IFCRECTANGLEHOLLOWPROFILEDEF(.AREA.,'150x75x2.0 RHS',$,75.,150.,2.,5.,5.); +#129=IFCMATERIALPROFILE($,$,#68,#128,$,$); +#130=IFCMATERIALPROFILESET($,$,(#129),$); +#131=IFCBEAMTYPE('2CsGpD$6nDCxWv9jXTtvq9',$,'B1',$,$,$,$,$,$,.NOTDEFINED.); +#132=IFCRELASSOCIATESMATERIAL('2LJExc74j9rgBSBx51HDPK',$,$,$,(#131),#135); +#133=IFCISHAPEPROFILEDEF(.AREA.,'DEMO-I',$,100.,200.,5.,10.,5.,$,$); +#134=IFCMATERIALPROFILE($,$,#68,#133,$,$); +#135=IFCMATERIALPROFILESET($,$,(#134),$); +#136=IFCBEAMTYPE('32pHN2b0P0awGw$U8PpneO',$,'B2',$,$,$,$,$,$,.NOTDEFINED.); +#137=IFCRELASSOCIATESMATERIAL('2wg8R1Drb2xhQ2Y_pRSh3c',$,$,$,(#136),#140); +#138=IFCCSHAPEPROFILEDEF(.AREA.,'DEMO-C',$,200.,100.,1.5,30.,5.); +#139=IFCMATERIALPROFILE($,$,#68,#138,$,$); +#140=IFCMATERIALPROFILESET($,$,(#139),$); +#141=IFCCARTESIANPOINT((0.,0.,0.)); +#142=IFCDIRECTION((0.,0.,1.)); +#143=IFCDIRECTION((1.,0.,0.)); +#144=IFCAXIS2PLACEMENT3D(#141,#142,#143); +#151=IFCCARTESIANPOINTLIST3D(((899.999976158142,0.,1200.00004768372),(899.999976158142,0.,0.),(0.,0.,1200.00004768372),(0.,0.,0.),(99.9999940395355,0.,99.9999940395355),(99.9999940395355,0.,1100.00002384186),(800.000011920929,0.,1100.00002384186),(800.000011920929,0.,99.9999940395355),(99.9999940395355,19.9999995529652,99.9999940395355),(99.9999940395355,19.9999995529652,1100.00002384186),(800.000011920929,19.9999995529652,1100.00002384186),(800.000011920929,19.9999995529652,99.9999940395355),(99.9999940395355,50.0000007450581,99.9999940395355),(99.9999940395355,50.0000007450581,1100.00002384186),(800.000011920929,50.0000007450581,1100.00002384186),(800.000011920929,50.0000007450581,99.9999940395355),(0.,50.0000007450581,0.),(0.,50.0000007450581,1200.00004768372),(899.999976158142,50.0000007450581,1200.00004768372),(899.999976158142,50.0000007450581,0.),(99.9999940395355,29.9999993294477,99.9999940395355),(99.9999940395355,29.9999993294477,1100.00002384186),(800.000011920929,29.9999993294477,1100.00002384186),(800.000011920929,29.9999993294477,99.9999940395355))); +#152=IFCINDEXEDPOLYGONALFACE((13,17,18,14)); +#153=IFCINDEXEDPOLYGONALFACE((5,6,3,4)); +#154=IFCINDEXEDPOLYGONALFACE((7,8,2,1)); +#155=IFCINDEXEDPOLYGONALFACE((6,7,1,3)); +#156=IFCINDEXEDPOLYGONALFACE((8,5,4,2)); +#157=IFCINDEXEDPOLYGONALFACE((15,19,20,16)); +#158=IFCINDEXEDPOLYGONALFACE((14,18,19,15)); +#159=IFCINDEXEDPOLYGONALFACE((16,20,17,13)); +#160=IFCINDEXEDPOLYGONALFACE((4,17,20,2)); +#161=IFCINDEXEDPOLYGONALFACE((2,20,19,1)); +#162=IFCINDEXEDPOLYGONALFACE((8,16,13,5)); +#163=IFCINDEXEDPOLYGONALFACE((7,15,16,8)); +#164=IFCINDEXEDPOLYGONALFACE((1,19,18,3)); +#165=IFCINDEXEDPOLYGONALFACE((3,18,17,4)); +#166=IFCINDEXEDPOLYGONALFACE((6,14,15,7)); +#167=IFCINDEXEDPOLYGONALFACE((5,13,14,6)); +#168=IFCPOLYGONALFACESET(#151,.T.,(#152,#153,#154,#155,#156,#157,#158,#159,#160,#161,#162,#163,#164,#165,#166,#167),$); +#169=IFCINDEXEDPOLYGONALFACE((12,11,10,9)); +#170=IFCINDEXEDPOLYGONALFACE((24,21,22,23)); +#171=IFCINDEXEDPOLYGONALFACE((11,23,22,10)); +#172=IFCINDEXEDPOLYGONALFACE((10,22,21,9)); +#173=IFCINDEXEDPOLYGONALFACE((9,21,24,12)); +#174=IFCINDEXEDPOLYGONALFACE((12,24,23,11)); +#175=IFCPOLYGONALFACESET(#151,.T.,(#169,#170,#171,#172,#173,#174),$); +#176=IFCSHAPEREPRESENTATION(#15,'Body','Tessellation',(#168,#175)); +#177=IFCREPRESENTATIONMAP(#144,#176); +#178=IFCCARTESIANPOINT((0.,0.,0.)); +#179=IFCDIRECTION((0.,0.,1.)); +#180=IFCDIRECTION((1.,0.,0.)); +#181=IFCAXIS2PLACEMENT3D(#178,#179,#180); +#187=IFCCARTESIANPOINTLIST2D(((100.000023841858,20.0000032782555),(800.000011920929,20.0000032782555),(800.000011920929,30.0000011920929),(100.000023841858,30.0000011920929))); +#188=IFCINDEXEDPOLYCURVE(#187,(IFCLINEINDEX((1,2,3,4,1))),$); +#189=IFCCARTESIANPOINTLIST2D(((899.999976158142,50.0000007450581),(800.000011920929,50.0000007450581),(800.000011920929,0.),(899.999976158142,0.))); +#190=IFCINDEXEDPOLYCURVE(#189,(IFCLINEINDEX((1,2,3,4,1))),$); +#191=IFCCARTESIANPOINTLIST2D(((0.,0.),(100.000023841858,0.),(100.000023841858,50.0000007450581),(0.,50.0000007450581))); +#192=IFCINDEXEDPOLYCURVE(#191,(IFCLINEINDEX((1,2,3,4,1))),$); +#193=IFCCARTESIANPOINTLIST2D(((100.000023841858,50.0000007450581),(800.000011920929,50.0000007450581))); +#194=IFCINDEXEDPOLYCURVE(#193,$,$); +#195=IFCCARTESIANPOINTLIST2D(((100.000023841858,0.),(800.000011920929,0.))); +#196=IFCINDEXEDPOLYCURVE(#195,$,$); +#197=IFCGEOMETRICCURVESET((#188,#190,#192,#194,#196)); +#198=IFCSHAPEREPRESENTATION(#28,'Body','Annotation2D',(#197)); +#199=IFCREPRESENTATIONMAP(#181,#198); +#200=IFCWINDOWTYPE('1Gg9HfZEr69u8SdWfDs2J3',$,'WT01',$,$,$,(#177,#199),$,$,.NOTDEFINED.,.NOTDEFINED.,$,$); +#201=IFCSTYLEDITEM(#168,(#204),'Frame'); +#202=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559); +#203=IFCSURFACESTYLESHADING(#202,0.); +#204=IFCSURFACESTYLE('Frame',.BOTH.,(#203)); +#205=IFCSTYLEDITEM(#175,(#208),'Glass'); +#206=IFCCOLOURRGB($,0.800000011920929,1.,1.); +#207=IFCSURFACESTYLESHADING(#206,0.799999997019768); +#208=IFCSURFACESTYLE('Glass',.BOTH.,(#207)); +#209=IFCCARTESIANPOINT((0.,0.,0.)); +#210=IFCDIRECTION((0.,0.,1.)); +#211=IFCDIRECTION((1.,0.,0.)); +#212=IFCAXIS2PLACEMENT3D(#209,#210,#211); +#219=IFCCARTESIANPOINTLIST3D(((955.000162124634,0.,2090.00015258789),(955.000162124634,54.9999885261059,2090.00015258789),(970.000028610229,54.9999922513962,2105.00001907349),(0.,99.9999940395355,0.),(970.000028610229,99.9999940395355,2105.00001907349),(39.9999916553497,99.9999940395355,2105.00001907349),(39.9999916553497,54.9999922513962,2105.00001907349),(55.0000071525574,54.9999885261059,2090.00015258789),(55.0000071525574,0.,2090.00015258789),(0.,0.,2145.00021934509),(0.,100.000001490116,2145.00021934509),(44.9999868869781,99.9999940395355,2099.99990463257),(44.9999868869781,59.9999949336052,2099.99990463257),(965.000033378601,59.9999949336052,2099.99990463257),(965.000033378601,99.9999940395355,2099.99990463257),(965.000033378601,99.9999940395355,0.),(965.000033378601,59.9999949336052,0.),(44.9999868869781,59.9999949336052,0.),(44.9999868869781,99.9999940395355,0.),(0.,0.,0.),(55.0000071525574,0.,0.),(55.0000071525574,54.9999922513962,0.),(39.9999916553497,54.9999922513962,0.),(39.9999916553497,99.9999940395355,0.),(1010.00034809113,0.,2145.00021934509),(1010.00034809113,100.000001490116,2145.00021934509),(955.000162124634,0.,0.),(955.000162124634,54.9999885261059,0.),(970.000028610229,54.9999922513962,0.),(970.000028610229,99.9999940395355,0.),(1010.00034809113,0.,0.),(1010.00034809113,100.000001490116,0.))); +#220=IFCINDEXEDPOLYGONALFACE((2,3,29,28)); +#221=IFCINDEXEDPOLYGONALFACE((27,28,29,30,32,31)); +#222=IFCINDEXEDPOLYGONALFACE((7,6,5,3)); +#223=IFCINDEXEDPOLYGONALFACE((8,7,3,2)); +#224=IFCINDEXEDPOLYGONALFACE((23,24,6,7)); +#225=IFCINDEXEDPOLYGONALFACE((21,20,4,24,23,22)); +#226=IFCINDEXEDPOLYGONALFACE((11,10,25,26)); +#227=IFCINDEXEDPOLYGONALFACE((25,1,27,31)); +#228=IFCINDEXEDPOLYGONALFACE((24,4,11,6)); +#229=IFCINDEXEDPOLYGONALFACE((20,21,9,10)); +#230=IFCINDEXEDPOLYGONALFACE((9,8,2,1)); +#231=IFCINDEXEDPOLYGONALFACE((10,9,1,25)); +#232=IFCINDEXEDPOLYGONALFACE((22,23,7,8)); +#233=IFCINDEXEDPOLYGONALFACE((4,20,10,11)); +#234=IFCINDEXEDPOLYGONALFACE((21,22,8,9)); +#235=IFCINDEXEDPOLYGONALFACE((6,11,26,5)); +#236=IFCINDEXEDPOLYGONALFACE((5,26,32,30)); +#237=IFCINDEXEDPOLYGONALFACE((1,2,28,27)); +#238=IFCINDEXEDPOLYGONALFACE((26,25,31,32)); +#239=IFCINDEXEDPOLYGONALFACE((3,5,30,29)); +#240=IFCPOLYGONALFACESET(#219,.T.,(#220,#221,#222,#223,#224,#225,#226,#227,#228,#229,#230,#231,#232,#233,#234,#235,#236,#237,#238,#239),$); +#241=IFCINDEXEDPOLYGONALFACE((17,16,15,14)); +#242=IFCINDEXEDPOLYGONALFACE((12,13,14,15)); +#243=IFCINDEXEDPOLYGONALFACE((16,19,12,15)); +#244=IFCINDEXEDPOLYGONALFACE((19,16,17,18)); +#245=IFCINDEXEDPOLYGONALFACE((19,18,13,12)); +#246=IFCINDEXEDPOLYGONALFACE((18,17,14,13)); +#247=IFCPOLYGONALFACESET(#219,.T.,(#241,#242,#243,#244,#245,#246),$); +#248=IFCSHAPEREPRESENTATION(#15,'Body','Tessellation',(#240,#247)); +#249=IFCREPRESENTATIONMAP(#212,#248); +#250=IFCCARTESIANPOINT((0.,0.,0.)); +#251=IFCDIRECTION((0.,0.,1.)); +#252=IFCDIRECTION((1.,0.,0.)); +#253=IFCAXIS2PLACEMENT3D(#250,#251,#252); +#259=IFCCARTESIANPOINTLIST2D(((964.999914169312,1020.0001001358),(965.000033378601,99.9999940395355),(925.000011920929,99.9999940395355),(924.999952316284,1020.0001001358),(964.999914169312,1020.0001001358),(844.915807247162,1012.12930679321),(726.886332035065,988.651752471924),(612.931072711945,949.969172477722),(504.999756813049,896.743297576904),(404.939234256744,829.885005950928),(314.461469650269,750.538170337677),(235.114604234695,660.060405731201),(168.256282806396,559.999823570251),(115.030474960804,452.068567276001),(76.3478726148605,338.113307952881),(52.8703518211842,220.083817839622),(44.9996180832386,99.999688565731))); +#260=IFCINDEXEDPOLYCURVE(#259,$,$); +#261=IFCCARTESIANPOINTLIST2D(((970.000028610229,54.9999922513962),(955.000162124634,54.9999922513962),(955.000162124634,0.),(1010.00034809113,0.),(1010.00034809113,99.9999940395355),(970.000028610229,99.9999940395355))); +#262=IFCINDEXEDPOLYCURVE(#261,(IFCLINEINDEX((1,2,3,4,5,6,1))),$); +#263=IFCCARTESIANPOINTLIST2D(((0.,0.),(0.,99.9999940395355),(39.9999916553497,99.9999940395355),(39.9999916553497,54.9999922513962),(55.0000071525574,54.9999922513962),(55.0000071525574,0.))); +#264=IFCINDEXEDPOLYCURVE(#263,(IFCLINEINDEX((1,2,3,4,5,6,1))),$); +#265=IFCGEOMETRICCURVESET((#260,#262,#264)); +#266=IFCSHAPEREPRESENTATION(#28,'Body','Annotation2D',(#265)); +#267=IFCREPRESENTATIONMAP(#253,#266); +#268=IFCDOORTYPE('0NBUmPKyT9WecsIeYJrEqg',$,'DT01',$,$,$,(#249,#267),$,$,.NOTDEFINED.,.NOTDEFINED.,$,$); +#269=IFCSTYLEDITEM(#240,(#272),'Frame'); +#270=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559); +#271=IFCSURFACESTYLESHADING(#270,0.); +#272=IFCSURFACESTYLE('Frame',.BOTH.,(#271)); +#273=IFCSTYLEDITEM(#247,(#276),'Panel'); +#274=IFCCOLOURRGB($,0.184475064277649,0.184475019574165,0.184475019574165); +#275=IFCSURFACESTYLESHADING(#274,0.); +#276=IFCSURFACESTYLE('Panel',.BOTH.,(#275)); +#277=IFCCARTESIANPOINT((0.,0.,0.)); +#278=IFCDIRECTION((0.,0.,1.)); +#279=IFCDIRECTION((1.,0.,0.)); +#280=IFCAXIS2PLACEMENT3D(#277,#278,#279); +#287=IFCCARTESIANPOINTLIST3D(((-75.7642686367035,-12.1694896370173,220.662087202072),(-105.255022644997,-14.1069469973445,230.906546115875),(-164.038479328156,-96.2571799755096,263.201057910919),(-14.9683114141226,-43.4482358396053,228.664547204971),(-42.6693223416805,-12.0228659361601,222.334340214729),(78.8992568850517,-76.7349451780319,173.714026808739),(95.3715369105339,-40.9212671220303,169.86283659935),(-71.9772353768349,-94.9608311057091,171.763256192207),(73.5535696148872,-46.2111458182335,199.328601360321),(-160.245850682259,39.7466160356998,298.533588647842),(106.730677187443,-12.4975387006998,138.676866889),(13.9651391655207,-42.3045344650745,229.461222887039),(96.7235639691353,-14.4418459385633,168.111309409142),(-219.927728176117,-41.4205342531204,239.053592085838),(-198.184996843338,-74.2136090993881,172.668352723122),(-162.167191505432,-43.4498824179173,289.568781852722),(-189.809292554855,-71.6947764158249,281.713783740997),(15.2298724278808,-84.9794447422028,205.268412828445),(-123.513199388981,-45.2961064875126,264.716774225235),(-188.629180192947,-119.135543704033,233.101561665535),(-13.0218090489507,-65.1145428419113,222.954735159874),(-196.876853704453,11.9782146066427,138.698890805244),(43.1601963937283,-45.1620146632195,221.45189344883),(-216.075524687767,-16.599427908659,204.968154430389),(-58.2821778953075,22.4160328507423,331.800371408463),(-190.823614597321,-102.445237338543,260.164886713028),(-43.1380830705166,-99.1964489221573,176.975786685944),(-52.2686094045639,49.4366958737373,351.232975721359),(-89.5938724279404,32.2130136191845,318.689584732056),(13.082567602396,-66.8555349111557,223.062723875046),(-106.145963072777,-41.5130592882633,228.82467508316),(44.8657646775246,-77.6780471205711,203.667193651199),(-103.71295362711,-3.66749544627964,314.385384321213),(-213.60756456852,-16.9711355119944,233.581200242043),(-138.989388942719,-74.9303176999092,265.050023794174),(105.769321322441,-41.5658876299858,138.697892427444),(99.2072820663452,-67.7607133984566,138.679757714272),(-135.680645704269,-40.2409471571445,287.896603345871),(-174.96183514595,-42.5181090831757,74.3281096220016),(-161.954745650291,-12.9314502701163,289.540559053421),(-208.628505468369,-103.418782353401,201.527774333954),(64.0031322836876,-67.7034556865692,197.900995612144),(100.172616541386,12.6537960022688,138.708665966988),(-168.615952134132,48.2185557484627,307.22576379776),(-14.0691194683313,-84.7146064043045,205.532997846603),(70.2492073178291,-102.0467877388,138.582319021225),(-181.213811039925,99.2056727409363,328.065633773804),(-15.2021609246731,-112.156376242638,18.3885656297207),(16.2124074995518,-111.216500401497,21.827794611454),(-133.747041225433,-15.9911345690489,290.624916553497),(-216.561943292618,-70.9330290555954,202.728658914566),(-42.7242144942284,-42.6300838589668,222.017183899879),(-159.124106168747,-73.8818794488907,283.847242593765),(-103.956542909145,15.4779236763716,320.181280374527),(-136.982098221779,-102.321907877922,19.4435473531485),(-183.684900403023,39.6271869540215,295.159220695496),(-107.928916811943,-10.153891518712,291.135489940643),(-103.886745870113,-101.836994290352,18.0104468017817),(-46.1161360144615,-119.219377636909,138.967230916023),(-46.1340732872486,-61.420276761055,215.00451862812),(-211.329713463783,-16.9732719659805,138.692498207092),(-165.825873613358,17.0033983886242,294.365167617798),(-162.926822900772,16.7535953223705,259.086668491364),(44.605728238821,-98.5531806945801,171.382486820221),(-83.4082290530205,3.35463741794229,315.553486347198),(-159.71240401268,24.7225016355515,197.611734271049),(-164.89240527153,105.032727122307,322.820842266083),(-215.148985385895,-46.2404675781727,266.269713640213),(74.162483215332,41.4574705064297,138.786911964417),(14.2031144350767,-105.447888374329,170.478105545044),(14.1690038144588,-13.1895141676068,229.208543896675),(43.3205515146255,-101.634204387665,17.8499221801758),(-194.831639528275,8.55887122452259,198.67131114006),(-190.071240067482,8.37886054068804,263.859361410141),(14.6396514028311,50.3562577068806,171.330958604813),(-46.6328002512455,-78.9417400956154,203.323245048523),(-14.2267476767302,-15.7651714980602,228.64143550396),(-214.272990822792,-70.0500085949898,258.544147014618),(-18.7377445399761,23.4869290143251,211.539566516876),(-169.090524315834,130.419373512268,343.455374240875),(-73.0840340256691,-58.5213899612427,211.252138018608),(-211.533859372139,-42.9056100547314,138.715773820877),(-73.9177912473679,15.4376216232777,210.008263587952),(-73.77789914608,-73.5882744193077,200.627535581589),(-186.267927289009,-121.167339384556,205.986142158508),(89.2870724201202,16.3372419774532,167.569145560265),(-163.796290755272,38.7952998280525,138.641089200974),(-197.594255208969,-74.69642162323,138.668864965439),(-157.580107450485,132.616892457008,328.512966632843),(-73.5077708959579,39.3004417419434,326.341509819031),(-133.432641625404,-80.0390690565109,240.147277712822),(-161.642774939537,-107.512913644314,235.317841172218),(-103.187024593353,15.1489116251469,293.316811323166),(-131.257891654968,-96.2524563074112,88.3080363273621),(-97.7480411529541,54.0151223540306,138.882651925087),(-15.323237515986,-128.71652841568,138.334348797798),(102.820813655853,-72.0862969756126,78.2168358564377),(69.1742300987244,9.61552746593952,196.848139166832),(-78.4864947199821,-104.707300662994,24.4421008974314),(-129.387423396111,-83.7726294994354,201.711267232895),(100.28512775898,14.7631969302893,106.750056147575),(72.5274235010147,-73.3503252267838,16.2904672324657),(90.7945036888123,-63.1996393203735,166.820541024208),(-68.5850381851196,68.8069462776184,138.255223631859),(-43.0277064442635,-107.757613062859,22.122398018837),(102.449595928192,-65.0743395090103,27.8087817132473),(-12.3228346928954,-128.916323184967,51.6869872808456),(13.3168455213308,-126.367673277855,49.7013293206692),(-211.436733603477,-42.5778105854988,171.008050441742),(-135.128378868103,-73.7440511584282,28.781833127141),(-71.3493376970291,-97.4928066134453,48.680767416954),(-14.4545361399651,-107.40352421999,169.533520936966),(-52.0200654864311,-106.458351016045,46.8626022338867),(-38.3422300219536,-121.899470686913,53.7898242473602),(-135.303497314453,4.72360569983721,269.406676292419),(-222.012773156166,-43.5851588845253,201.951056718826),(-150.152832269669,70.6916153430939,296.226799488068),(-205.232128500938,-53.0128739774227,172.492980957031),(81.5067514777184,-84.2671692371368,46.3023483753204),(101.917430758476,-74.4422674179077,51.1590167880058),(-104.162633419037,-76.9466981291771,197.300210595131),(-165.175527334213,100.392691791058,295.828104019165),(62.4474883079529,-91.4158597588539,172.223627567291),(-69.6270391345024,37.1879562735558,345.104366540909),(-129.096910357475,-71.5842396020889,53.2362163066864),(-102.229714393616,-91.8472409248352,50.0270053744316),(32.8243598341942,-62.8630220890045,219.847500324249),(-92.9397568106651,-59.8123446106911,212.814390659332),(-140.351414680481,-65.1696026325226,281.688511371613),(-29.9176927655935,64.6412074565887,345.614969730377),(-210.334226489067,-19.161444157362,170.468419790268),(-189.835593104362,-14.7899463772774,284.663945436478),(-70.6062465906143,-35.3134833276272,219.783633947372),(-196.250692009926,-41.9037826359272,286.000579595566),(-189.289301633835,15.417193993926,167.268991470337),(-165.491297841072,119.253136217594,309.156060218811),(-188.711583614349,-42.2543436288834,85.7931450009346),(-137.549817562103,-17.5594426691532,48.555850982666),(-43.9321398735046,18.8035927712917,209.587976336479),(-166.142821311951,43.8390895724297,269.286632537842),(-100.659042596817,21.2050415575504,210.695147514343),(-165.524810552597,68.1574642658234,275.103896856308),(-131.917878985405,-43.2314537465572,46.9778589904308),(-39.3056124448776,-127.956256270409,80.5243328213692),(-14.8295955732465,-134.464859962463,78.124076128006),(15.6515818089247,-132.012516260147,77.5675550103188),(128.680378198624,-63.8554841279984,48.6980155110359),(11.726126074791,-126.89021229744,138.521879911423),(-104.669205844402,-97.3712056875229,78.6209478974342),(-72.2803771495819,-99.4613841176033,78.2437026500702),(-90.0976955890656,28.9249792695045,304.527103900909),(-131.665915250778,-80.5337652564049,72.9337483644485),(-178.88680100441,12.7522293478251,288.278430700302),(-131.906762719154,21.6084867715836,211.986422538757),(43.8910871744156,44.6652211248875,170.035198330879),(126.842275261879,-62.0891898870468,72.0244571566582),(-181.458547711372,72.0020085573196,305.15855550766),(-105.359517037868,10.6867477297783,222.205132246017),(-75.5681917071342,-105.624243617058,107.75239020586),(-130.771055817604,43.6740666627884,171.749204397202),(-133.024662733078,49.973726272583,138.679206371307),(-116.55567586422,-16.352504491806,262.825727462769),(-192.813113331795,9.62049700319767,228.011801838875),(-99.5994955301285,46.3632792234421,169.919461011887),(-15.3328543528914,77.56557315588,138.280719518661),(-14.9811441078782,54.4508099555969,170.514196157455),(-77.7326822280884,18.9591310918331,297.642737627029),(-42.9378487169743,52.6389256119728,171.193689107895),(-210.668057203293,-93.4961810708046,245.899826288223),(-162.400558590889,19.8477655649185,223.333954811096),(112.556174397469,-41.5905937552452,87.884321808815),(-98.4991043806076,34.1813936829567,196.81504368782),(-125.417664647102,9.07643139362335,292.186677455902),(12.7286352217197,71.5995132923126,138.794869184494),(-184.464573860168,-63.567191362381,91.7578190565109),(-159.845903515816,34.9735803902149,277.037382125854),(-163.954228162766,-73.273241519928,79.649306833744),(-130.220845341682,47.9081235826015,111.017473042011),(-105.627626180649,-103.251308202744,104.907594621181),(-44.7412990033627,-130.966305732727,105.820834636688),(-14.5897325128317,-137.667417526245,107.010833919048),(17.7259147167206,-133.680522441864,110.51332205534),(-204.10780608654,-15.498636290431,265.768945217133),(-163.662612438202,-96.3144749403,108.248025178909),(-133.774682879448,-102.946348488331,108.776144683361),(-152.653515338898,-93.793697655201,11.2244309857488),(-169.374197721481,76.9077241420746,315.95915555954),(-153.37011218071,49.5448186993599,289.855599403381),(-148.65180850029,93.5175195336342,306.516766548157),(-163.774311542511,-100.279614329338,138.708546757698),(-114.786863327026,-34.9755696952343,251.059830188751),(43.5214228928089,-123.003117740154,107.089169323444),(12.2568001970649,23.4032459557056,212.896287441254),(-132.915586233139,-105.148307979107,138.666361570358),(-103.796437382698,-104.18801009655,138.67013156414),(-72.1595510840416,-105.9859842062,138.681977987289),(41.2953048944473,-12.3581402003765,221.496060490608),(-69.7300583124161,50.7166534662247,170.578330755234),(44.1036224365234,-114.852353930473,138.935402035713),(-12.8488391637802,38.8977639377117,196.252673864365),(-124.916173517704,-6.59546442329884,306.106418371201),(-218.161851167679,-71.009561419487,230.814844369888),(-163.197606801987,-97.3011329770088,173.606932163239),(-106.259688735008,-96.0564464330673,167.294099926949),(-134.439319372177,-99.6981337666512,164.969086647034),(-160.570159554482,-110.724151134491,202.919006347656),(-120.365753769875,-5.49432123079896,253.050655126572),(-133.883744478226,10.6024611741304,233.26064646244),(-36.5464128553867,62.771737575531,351.498425006866),(-69.8662772774696,35.7129909098148,305.281817913055),(-135.447904467583,-87.4549821019173,184.239640831947),(-112.891294062138,6.57996907830238,271.908432245255),(-49.9069318175316,49.8133301734924,325.594484806061),(-135.738432407379,-100.006818771362,-7.45058059692383E-06),(12.3523958027363,-101.531967520714,-7.45058059692383E-06),(-102.930329740047,-98.7276136875153,-7.45058059692383E-06),(-158.383101224899,35.3976972401142,167.762398719788),(58.5155189037323,-88.7269079685211,16.9257298111916),(-202.236160635948,-44.0891794860363,107.780121266842),(126.52799487114,-42.4845181405544,31.7913927137852),(44.5115864276886,-111.490845680237,45.2388003468513),(17.8857706487179,35.9265469014645,199.328750371933),(68.5334727168083,-97.8689268231392,53.3365905284882),(138.488471508026,-43.2419404387474,49.3728704750538),(40.6565591692924,62.880277633667,138.536900281906),(87.1811881661415,-87.0387107133865,138.694822788239),(-50.5233928561211,30.0182458013296,313.426643610001),(43.5324311256409,-119.963906705379,79.2121887207031),(72.3142325878143,-100.660108029842,80.1471099257469),(88.0676060914993,-86.207315325737,78.484445810318),(136.276960372925,-40.5644066631794,78.633114695549),(73.5301449894905,46.2804175913334,105.18267005682),(-180.783584713936,120.272636413574,335.98318696022),(-155.802026391029,-42.164009064436,62.2472763061523),(-192.451253533363,-73.2510983943939,112.686090171337),(31.3579067587852,24.0139346569777,208.784699440002),(72.8883668780327,-103.513494133949,107.350297272205),(88.5002017021179,-88.5679498314857,105.739302933216),(100.790202617645,-71.3259652256966,106.83286935091),(109.439946711063,-42.6978133618832,107.300646603107),(-188.64569067955,-16.7884975671768,86.7345333099365),(-70.9428116679192,35.2016389369965,193.65206360817),(-35.7190407812595,61.5072995424271,335.724234580994),(44.7911284863949,14.4118629395962,-7.45058059692383E-06),(36.9860865175724,36.9828194379807,-7.45058059692383E-06),(46.1129434406757,-74.8821049928665,-7.45058059692383E-06),(104.031659662724,-13.5611081495881,14.8804550990462),(98.6066535115242,6.6530667245388,27.1508432924747),(103.960558772087,-42.0542061328888,15.0693515315652),(121.874935925007,-14.7962821647525,28.2622296363115),(69.6230307221413,34.0555869042873,168.976783752441),(72.9203075170517,15.480482019484,22.6278305053711),(-44.5376336574554,74.1409137845039,139.188349246979),(46.685803681612,46.0076108574867,19.2816369235516),(132.462680339813,-14.7683853283525,79.218864440918),(123.972199857235,5.19884005188942,47.1794344484806),(134.83801484108,-13.5693158954382,47.7543026208878),(101.557418704033,15.0842368602753,50.0984787940979),(-151.446789503098,125.798091292381,318.272113800049),(82.6703608036041,23.927254602313,46.4257299900055),(69.3408101797104,43.5765013098717,50.0893704593182),(-42.0871675014496,38.0131863057613,193.471923470497),(-97.1032008528709,61.6641864180565,-7.45058059692383E-06),(-13.0963791161776,64.698226749897,19.7515171021223),(-157.119512557983,8.03167372941971,-7.45058059692383E-06),(113.602519035339,-13.2037419825792,87.9008769989014),(-69.912314414978,66.078893840313,19.1369466483593),(38.9328189194202,35.1467467844486,194.373697042465),(76.8988505005836,42.0413166284561,78.8332372903824),(101.57422721386,13.4498169645667,77.3250162601471),(123.080961406231,3.95354814827442,69.4246292114258),(-211.960434913635,-102.200835943222,224.356546998024),(110.181555151939,-13.6255938559771,109.196342527866),(-102.282598614693,41.4383597671986,19.612405449152),(-172.445297241211,115.39913713932,340.771019458771),(-181.048646569252,112.369157373905,342.96378493309),(72.5264996290207,-15.2853392064571,200.319215655327),(-183.978870511055,70.9394812583923,317.676812410355),(-153.028383851051,-38.4657420217991,-7.45058059692383E-06),(-154.637187719345,-69.1222250461578,-7.45058059692383E-06),(-152.765303850174,-73.8510563969612,15.262059867382),(-153.248697519302,-91.9284746050835,-7.45058059692383E-06),(-161.92090511322,-14.5302480086684,-7.45058059692383E-06),(-161.076262593269,-14.9271814152598,17.3035766929388),(-139.386385679245,-48.0194091796875,20.1432537287474),(-154.07682955265,-33.6258858442307,15.4564278200269),(-141.747921705246,-15.8547051250935,28.8874395191669),(-56.3743449747562,-108.996540307999,73.7379342317581),(-46.1691729724407,89.0766233205795,110.146202147007),(-14.6415047347546,51.2426868081093,-7.45058059692383E-06),(-156.508177518845,8.72325897216797,12.7747664228082),(-93.2494476437569,62.2886717319489,15.7215017825365),(-134.241998195648,18.0515833199024,22.0324043184519),(-75.4619538784027,45.5531552433968,50.9162880480289),(-103.701874613762,27.3517612367868,51.7874732613564),(-131.066977977753,11.5249017253518,52.4038933217525),(-62.931016087532,69.2232176661491,53.6416172981262),(-132.335588335991,32.2872921824455,197.51612842083),(-45.2888980507851,76.0203972458839,47.2172982990742),(-163.926124572754,14.2420912161469,82.3174566030502),(-174.691706895828,-13.5900285094976,73.6509189009666),(-48.6402213573456,84.9898308515549,78.8175389170647),(-68.9510703086853,70.2485665678978,78.4279331564903),(-81.0153111815453,49.1584502160549,74.8984813690186),(-42.9749675095081,61.7619827389717,-7.45058059692383E-06),(34.9937379360199,6.42204098403454,219.141826033592),(-202.323064208031,-12.2631303966045,109.208643436432),(-188.646167516708,14.8954978212714,108.683586120605),(-74.4052901864052,73.5662579536438,106.222227215767),(-161.729156970978,38.1991006433964,108.166508376598),(-104.008600115776,45.3929454088211,-7.45058059692383E-06),(38.8389863073826,70.2219158411026,109.72835123539),(-41.2575826048851,68.8836574554443,20.4634200781584),(-132.600158452988,16.2683837115765,-7.45058059692383E-06),(41.9384241104126,64.3723532557487,48.7342029809952),(-23.0755694210529,90.2970731258392,106.796741485596),(12.2685618698597,50.3091886639595,-7.45058059692383E-06),(42.0029424130917,68.0971890687943,78.9963230490685),(-13.2175851613283,6.25489093363285,222.308561205864),(14.6723045036197,7.23757036030293,223.271667957306),(72.0149055123329,-12.0490025728941,2.31547281146049),(13.688700273633,64.2379224300385,26.2222941964865),(33.619936555624,59.9825419485569,30.1631242036819),(15.6846102327108,72.6122707128525,49.7567467391491),(-13.9973452314734,76.6579210758209,47.4896989762783),(-16.6601836681366,85.7705846428871,79.0435597300529),(12.7416122704744,78.7845030426979,77.6184424757957),(-137.325063347816,22.2998633980751,70.9470063447952),(-103.061355650425,39.2319709062576,82.869827747345),(-133.015736937523,38.7391112744808,90.4415026307106),(-151.931047439575,32.1191623806953,87.8717452287674),(12.5869233161211,80.6632563471794,105.742789804935),(-99.5742082595825,49.370177090168,106.232292950153),(-74.6603757143021,65.6085163354874,-7.45058059692383E-06),(12.2953318059444,17.735980451107,-7.45058059692383E-06),(-14.6934473887086,26.2711010873318,-7.45058059692383E-06),(-42.9374538362026,29.8651698976755,-7.45058059692383E-06),(-103.215932846069,13.7835666537285,-7.45058059692383E-06),(44.4422401487827,-12.9836350679398,-7.45058059692383E-06),(-74.6518895030022,31.6607765853405,-7.45058059692383E-06),(12.3018361628056,-12.7876792103052,-7.45058059692383E-06),(-14.7215090692043,-13.3242877200246,-7.45058059692383E-06),(-101.430043578148,-14.7481001913548,-7.45058059692383E-06),(-42.9213680326939,-15.1002155616879,-7.45058059692383E-06),(-132.630944252014,-13.4387537837029,-7.45058059692383E-06),(-74.6475011110306,-11.1579261720181,-7.45058059692383E-06),(46.1949594318867,-48.3818538486958,-7.45058059692383E-06),(12.3028568923473,-43.1565642356873,-7.45058059692383E-06),(67.6943361759186,-43.9984127879143,2.13921279646456),(-14.7214606404305,-41.9304519891739,-7.45058059692383E-06),(-42.9213680326939,-42.6230616867542,-7.45058059692383E-06),(-134.391859173775,-42.0995727181435,-7.45058059692383E-06),(12.3003236949444,-71.4240521192551,-7.45058059692383E-06),(-14.7217661142349,-71.9940662384033,-7.45058059692383E-06),(-74.6477097272873,-69.8381289839745,-7.45058059692383E-06),(-42.9213680326939,-72.1928924322128,-7.45058059692383E-06),(-101.144231855869,-71.8697011470795,-7.45058059692383E-06),(34.7950644791126,-96.686989068985,-7.45058059692383E-06),(-132.067084312439,-72.0017328858376,-7.45058059692383E-06),(-159.548789262772,-12.5050684437156,61.8688985705376),(-16.9071108102798,-107.485927641392,-7.45058059692383E-06),(-74.6394321322441,-103.576719760895,-7.45058059692383E-06),(-42.8757518529892,-105.996340513229,-7.45058059692383E-06),(-74.6474862098694,-41.8127365410328,-7.45058059692383E-06),(-101.288944482803,-45.6511229276657,-7.45058059692383E-06),(61.871238052845,24.5271548628807,191.577181220055),(-47.0216795802116,41.4715930819511,344.332307577133),(-35.1001992821693,58.2603961229324,352.131396532059),(-43.320570141077,42.2725304961205,325.726985931396),(-33.2878455519676,56.865319609642,334.871053695679),(-78.2285928726196,10.980136692524,334.277510643005),(-61.2197890877724,18.5103937983513,307.83212184906),(-87.6919776201248,26.8637835979462,333.815038204193),(-75.0949084758759,-1.58989988267422,216.51217341423),(-43.2584583759308,0.724630663171411,217.384174466133))); +#288=IFCINDEXEDPOLYGONALFACE((187,278,44)); +#289=IFCINDEXEDPOLYGONALFACE((21,52,60)); +#290=IFCINDEXEDPOLYGONALFACE((91,100,31)); +#291=IFCINDEXEDPOLYGONALFACE((162,19,191)); +#292=IFCINDEXEDPOLYGONALFACE((288,180,159)); +#293=IFCINDEXEDPOLYGONALFACE((241,219,307)); +#294=IFCINDEXEDPOLYGONALFACE((54,93,173)); +#295=IFCINDEXEDPOLYGONALFACE((60,45,21)); +#296=IFCINDEXEDPOLYGONALFACE((58,110,55)); +#297=IFCINDEXEDPOLYGONALFACE((64,18,70)); +#298=IFCINDEXEDPOLYGONALFACE((2,207,162)); +#299=IFCINDEXEDPOLYGONALFACE((10,176,188)); +#300=IFCINDEXEDPOLYGONALFACE((105,114,113)); +#301=IFCINDEXEDPOLYGONALFACE((220,106,249)); +#302=IFCINDEXEDPOLYGONALFACE((252,321,244)); +#303=IFCINDEXEDPOLYGONALFACE((162,57,19)); +#304=IFCINDEXEDPOLYGONALFACE((224,147,220)); +#305=IFCINDEXEDPOLYGONALFACE((90,373,124)); +#306=IFCINDEXEDPOLYGONALFACE((70,199,64)); +#307=IFCINDEXEDPOLYGONALFACE((256,248,258)); +#308=IFCINDEXEDPOLYGONALFACE((115,212,207)); +#309=IFCINDEXEDPOLYGONALFACE((103,36,7)); +#310=IFCINDEXEDPOLYGONALFACE((71,306,320)); +#311=IFCINDEXEDPOLYGONALFACE((297,267,294)); +#312=IFCINDEXEDPOLYGONALFACE((57,50,19)); +#313=IFCINDEXEDPOLYGONALFACE((117,44,188)); +#314=IFCINDEXEDPOLYGONALFACE((62,56,153)); +#315=IFCINDEXEDPOLYGONALFACE((106,147,120)); +#316=IFCINDEXEDPOLYGONALFACE((254,244,245)); +#317=IFCINDEXEDPOLYGONALFACE((208,207,2)); +#318=IFCINDEXEDPOLYGONALFACE((256,257,250)); +#319=IFCINDEXEDPOLYGONALFACE((203,205,211)); +#320=IFCINDEXEDPOLYGONALFACE((56,278,157)); +#321=IFCINDEXEDPOLYGONALFACE((103,7,9)); +#322=IFCINDEXEDPOLYGONALFACE((63,140,176)); +#323=IFCINDEXEDPOLYGONALFACE((15,109,118)); +#324=IFCINDEXEDPOLYGONALFACE((59,159,180)); +#325=IFCINDEXEDPOLYGONALFACE((158,154,208)); +#326=IFCINDEXEDPOLYGONALFACE((300,241,308)); +#327=IFCINDEXEDPOLYGONALFACE((23,32,42)); +#328=IFCINDEXEDPOLYGONALFACE((44,278,56)); +#329=IFCINDEXEDPOLYGONALFACE((189,259,67)); +#330=IFCINDEXEDPOLYGONALFACE((309,304,333)); +#331=IFCINDEXEDPOLYGONALFACE((136,89,259)); +#332=IFCINDEXEDPOLYGONALFACE((31,191,19)); +#333=IFCINDEXEDPOLYGONALFACE((295,304,294)); +#334=IFCINDEXEDPOLYGONALFACE((50,38,19)); +#335=IFCINDEXEDPOLYGONALFACE((44,62,10)); +#336=IFCINDEXEDPOLYGONALFACE((369,25,227)); +#337=IFCINDEXEDPOLYGONALFACE((136,47,233)); +#338=IFCINDEXEDPOLYGONALFACE((33,54,201)); +#339=IFCINDEXEDPOLYGONALFACE((333,304,329)); +#340=IFCINDEXEDPOLYGONALFACE((281,110,285)); +#341=IFCINDEXEDPOLYGONALFACE((275,80,276)); +#342=IFCINDEXEDPOLYGONALFACE((119,106,120)); +#343=IFCINDEXEDPOLYGONALFACE((276,80,233)); +#344=IFCINDEXEDPOLYGONALFACE((232,318,312)); +#345=IFCINDEXEDPOLYGONALFACE((208,63,115)); +#346=IFCINDEXEDPOLYGONALFACE((150,288,159)); +#347=IFCINDEXEDPOLYGONALFACE((286,287,284)); +#348=IFCINDEXEDPOLYGONALFACE((286,285,287)); +#349=IFCINDEXEDPOLYGONALFACE((285,286,279)); +#350=IFCINDEXEDPOLYGONALFACE((239,171,240)); +#351=IFCINDEXEDPOLYGONALFACE((233,47,276)); +#352=IFCINDEXEDPOLYGONALFACE((124,213,90)); +#353=IFCINDEXEDPOLYGONALFACE((157,278,47)); +#354=IFCINDEXEDPOLYGONALFACE((187,47,157)); +#355=IFCINDEXEDPOLYGONALFACE((268,75,222)); +#356=IFCINDEXEDPOLYGONALFACE((101,269,232)); +#357=IFCINDEXEDPOLYGONALFACE((277,7,13)); +#358=IFCINDEXEDPOLYGONALFACE((140,63,74)); +#359=IFCINDEXEDPOLYGONALFACE((140,74,56)); +#360=IFCINDEXEDPOLYGONALFACE((74,153,56)); +#361=IFCINDEXEDPOLYGONALFACE((57,201,50)); +#362=IFCINDEXEDPOLYGONALFACE((320,236,193)); +#363=IFCINDEXEDPOLYGONALFACE((222,236,268)); +#364=IFCINDEXEDPOLYGONALFACE((173,50,201)); +#365=IFCINDEXEDPOLYGONALFACE((299,267,297)); +#366=IFCINDEXEDPOLYGONALFACE((162,212,57)); +#367=IFCINDEXEDPOLYGONALFACE((208,115,207)); +#368=IFCINDEXEDPOLYGONALFACE((267,292,274)); +#369=IFCINDEXEDPOLYGONALFACE((98,197,277)); +#370=IFCINDEXEDPOLYGONALFACE((295,328,329)); +#371=IFCINDEXEDPOLYGONALFACE((158,208,2)); +#372=IFCINDEXEDPOLYGONALFACE((201,57,33)); +#373=IFCINDEXEDPOLYGONALFACE((187,47,278)); +#374=IFCINDEXEDPOLYGONALFACE((241,307,308)); +#375=IFCINDEXEDPOLYGONALFACE((335,317,245)); +#376=IFCINDEXEDPOLYGONALFACE((328,330,329)); +#377=IFCINDEXEDPOLYGONALFACE((84,128,121)); +#378=IFCINDEXEDPOLYGONALFACE((331,330,328)); +#379=IFCINDEXEDPOLYGONALFACE((300,331,328)); +#380=IFCINDEXEDPOLYGONALFACE((129,19,38)); +#381=IFCINDEXEDPOLYGONALFACE((154,298,66)); +#382=IFCINDEXEDPOLYGONALFACE((317,322,323)); +#383=IFCINDEXEDPOLYGONALFACE((302,297,303)); +#384=IFCINDEXEDPOLYGONALFACE((212,93,167)); +#385=IFCINDEXEDPOLYGONALFACE((94,185,184)); +#386=IFCINDEXEDPOLYGONALFACE((211,121,100)); +#387=IFCINDEXEDPOLYGONALFACE((212,173,93)); +#388=IFCINDEXEDPOLYGONALFACE((317,254,245)); +#389=IFCINDEXEDPOLYGONALFACE((51,15,41)); +#390=IFCINDEXEDPOLYGONALFACE((321,339,244)); +#391=IFCINDEXEDPOLYGONALFACE((244,335,245)); +#392=IFCINDEXEDPOLYGONALFACE((211,204,121)); +#393=IFCINDEXEDPOLYGONALFACE((246,72,358)); +#394=IFCINDEXEDPOLYGONALFACE((300,360,301)); +#395=IFCINDEXEDPOLYGONALFACE((234,177,39)); +#396=IFCINDEXEDPOLYGONALFACE((125,152,177)); +#397=IFCINDEXEDPOLYGONALFACE((338,314,311)); +#398=IFCINDEXEDPOLYGONALFACE((149,94,152)); +#399=IFCINDEXEDPOLYGONALFACE((39,175,137)); +#400=IFCINDEXEDPOLYGONALFACE((334,292,267)); +#401=IFCINDEXEDPOLYGONALFACE((343,338,340,346)); +#402=IFCINDEXEDPOLYGONALFACE((283,286,284)); +#403=IFCINDEXEDPOLYGONALFACE((129,16,53)); +#404=IFCINDEXEDPOLYGONALFACE((102,249,106)); +#405=IFCINDEXEDPOLYGONALFACE((197,12,23)); +#406=IFCINDEXEDPOLYGONALFACE((330,310,178)); +#407=IFCINDEXEDPOLYGONALFACE((307,61,22,308)); +#408=IFCINDEXEDPOLYGONALFACE((300,310,331)); +#409=IFCINDEXEDPOLYGONALFACE((205,190,194)); +#410=IFCINDEXEDPOLYGONALFACE((133,2,31)); +#411=IFCINDEXEDPOLYGONALFACE((85,92,20)); +#412=IFCINDEXEDPOLYGONALFACE((360,39,301)); +#413=IFCINDEXEDPOLYGONALFACE((122,47,136)); +#414=IFCINDEXEDPOLYGONALFACE((281,282,186)); +#415=IFCINDEXEDPOLYGONALFACE((2,191,31)); +#416=IFCINDEXEDPOLYGONALFACE((250,249,247)); +#417=IFCINDEXEDPOLYGONALFACE((58,214,216)); +#418=IFCINDEXEDPOLYGONALFACE((234,138,143)); +#419=IFCINDEXEDPOLYGONALFACE((141,298,154)); +#420=IFCINDEXEDPOLYGONALFACE((27,45,76)); +#421=IFCINDEXEDPOLYGONALFACE((146,181,145)); +#422=IFCINDEXEDPOLYGONALFACE((144,181,180)); +#423=IFCINDEXEDPOLYGONALFACE((195,185,179)); +#424=IFCINDEXEDPOLYGONALFACE((228,223,229)); +#425=IFCINDEXEDPOLYGONALFACE((49,358,72)); +#426=IFCINDEXEDPOLYGONALFACE((74,34,183)); +#427=IFCINDEXEDPOLYGONALFACE((221,218,223)); +#428=IFCINDEXEDPOLYGONALFACE((146,107,108)); +#429=IFCINDEXEDPOLYGONALFACE((194,204,205)); +#430=IFCINDEXEDPOLYGONALFACE((352,359,280,279)); +#431=IFCINDEXEDPOLYGONALFACE((46,64,199)); +#432=IFCINDEXEDPOLYGONALFACE((366,86,251)); +#433=IFCINDEXEDPOLYGONALFACE((48,114,105)); +#434=IFCINDEXEDPOLYGONALFACE((198,95,164)); +#435=IFCINDEXEDPOLYGONALFACE((372,65,167)); +#436=IFCINDEXEDPOLYGONALFACE((74,132,153)); +#437=IFCINDEXEDPOLYGONALFACE((21,12,4)); +#438=IFCINDEXEDPOLYGONALFACE((288,111,113)); +#439=IFCINDEXEDPOLYGONALFACE((75,225,174)); +#440=IFCINDEXEDPOLYGONALFACE((166,262,200)); +#441=IFCINDEXEDPOLYGONALFACE((223,230,229)); +#442=IFCINDEXEDPOLYGONALFACE((26,92,3)); +#443=IFCINDEXEDPOLYGONALFACE((219,88,82)); +#444=IFCINDEXEDPOLYGONALFACE((355,357,365,364)); +#445=IFCINDEXEDPOLYGONALFACE((322,325,324)); +#446=IFCINDEXEDPOLYGONALFACE((257,220,250)); +#447=IFCINDEXEDPOLYGONALFACE((289,104,253)); +#448=IFCINDEXEDPOLYGONALFACE((228,108,221)); +#449=IFCINDEXEDPOLYGONALFACE((119,218,102)); +#450=IFCINDEXEDPOLYGONALFACE((367,124,25)); +#451=IFCINDEXEDPOLYGONALFACE((327,325,326)); +#452=IFCINDEXEDPOLYGONALFACE((40,115,63)); +#453=IFCINDEXEDPOLYGONALFACE((321,248,247)); +#454=IFCINDEXEDPOLYGONALFACE((158,83,141)); +#455=IFCINDEXEDPOLYGONALFACE((13,98,277)); +#456=IFCINDEXEDPOLYGONALFACE((352,345,343,365)); +#457=IFCINDEXEDPOLYGONALFACE((5,374,1)); +#458=IFCINDEXEDPOLYGONALFACE((339,347,348,341)); +#459=IFCINDEXEDPOLYGONALFACE((135,87,22)); +#460=IFCINDEXEDPOLYGONALFACE((156,224,231)); +#461=IFCINDEXEDPOLYGONALFACE((163,63,170)); +#462=IFCINDEXEDPOLYGONALFACE((56,142,140)); +#463=IFCINDEXEDPOLYGONALFACE((362,355,356,363)); +#464=IFCINDEXEDPOLYGONALFACE((88,203,15)); +#465=IFCINDEXEDPOLYGONALFACE((24,163,73)); +#466=IFCINDEXEDPOLYGONALFACE((14,78,68)); +#467=IFCINDEXEDPOLYGONALFACE((248,260,258)); +#468=IFCINDEXEDPOLYGONALFACE((78,26,17)); +#469=IFCINDEXEDPOLYGONALFACE((16,17,53)); +#470=IFCINDEXEDPOLYGONALFACE((161,164,95)); +#471=IFCINDEXEDPOLYGONALFACE((291,287,293)); +#472=IFCINDEXEDPOLYGONALFACE((127,18,32)); +#473=IFCINDEXEDPOLYGONALFACE((182,199,148)); +#474=IFCINDEXEDPOLYGONALFACE((319,71,320)); +#475=IFCINDEXEDPOLYGONALFACE((225,232,312)); +#476=IFCINDEXEDPOLYGONALFACE((302,309,289)); +#477=IFCINDEXEDPOLYGONALFACE((13,36,11)); +#478=IFCINDEXEDPOLYGONALFACE((308,87,310)); +#479=IFCINDEXEDPOLYGONALFACE((353,348,347,246)); +#480=IFCINDEXEDPOLYGONALFACE((262,79,200)); +#481=IFCINDEXEDPOLYGONALFACE((131,73,135)); +#482=IFCINDEXEDPOLYGONALFACE((370,213,243)); +#483=IFCINDEXEDPOLYGONALFACE((92,100,91)); +#484=IFCINDEXEDPOLYGONALFACE((89,233,80)); +#485=IFCINDEXEDPOLYGONALFACE((332,165,174)); +#486=IFCINDEXEDPOLYGONALFACE((1,374,2)); +#487=IFCINDEXEDPOLYGONALFACE((28,368,209)); +#488=IFCINDEXEDPOLYGONALFACE((189,136,259)); +#489=IFCINDEXEDPOLYGONALFACE((326,332,327)); +#490=IFCINDEXEDPOLYGONALFACE((117,122,189)); +#491=IFCINDEXEDPOLYGONALFACE((132,16,40)); +#492=IFCINDEXEDPOLYGONALFACE((263,334,311)); +#493=IFCINDEXEDPOLYGONALFACE((134,183,68)); +#494=IFCINDEXEDPOLYGONALFACE((157,122,142)); +#495=IFCINDEXEDPOLYGONALFACE((239,230,97)); +#496=IFCINDEXEDPOLYGONALFACE((180,96,59)); +#497=IFCINDEXEDPOLYGONALFACE((99,113,111)); +#498=IFCINDEXEDPOLYGONALFACE((22,131,135)); +#499=IFCINDEXEDPOLYGONALFACE((321,249,349)); +#500=IFCINDEXEDPOLYGONALFACE((156,120,147)); +#501=IFCINDEXEDPOLYGONALFACE((148,181,182)); +#502=IFCINDEXEDPOLYGONALFACE((152,126,149)); +#503=IFCINDEXEDPOLYGONALFACE((346,340,337,344)); +#504=IFCINDEXEDPOLYGONALFACE((358,215,353,246)); +#505=IFCINDEXEDPOLYGONALFACE((275,89,80)); +#506=IFCINDEXEDPOLYGONALFACE((240,37,239)); +#507=IFCINDEXEDPOLYGONALFACE((14,183,34)); +#508=IFCINDEXEDPOLYGONALFACE((293,295,274)); +#509=IFCINDEXEDPOLYGONALFACE((350,351,344,342)); +#510=IFCINDEXEDPOLYGONALFACE((148,112,96)); +#511=IFCINDEXEDPOLYGONALFACE((313,325,264)); +#512=IFCINDEXEDPOLYGONALFACE((154,170,208)); +#513=IFCINDEXEDPOLYGONALFACE((226,123,46)); +#514=IFCINDEXEDPOLYGONALFACE((351,364,346,344)); +#515=IFCINDEXEDPOLYGONALFACE((355,362,216,357)); +#516=IFCINDEXEDPOLYGONALFACE((349,339,321)); +#517=IFCINDEXEDPOLYGONALFACE((318,324,327)); +#518=IFCINDEXEDPOLYGONALFACE((338,311,334,340)); +#519=IFCINDEXEDPOLYGONALFACE((326,299,302)); +#520=IFCINDEXEDPOLYGONALFACE((112,59,96)); +#521=IFCINDEXEDPOLYGONALFACE((262,198,242)); +#522=IFCINDEXEDPOLYGONALFACE((272,51,41)); +#523=IFCINDEXEDPOLYGONALFACE((318,261,315)); +#524=IFCINDEXEDPOLYGONALFACE((167,57,212)); +#525=IFCINDEXEDPOLYGONALFACE((271,266,255)); +#526=IFCINDEXEDPOLYGONALFACE((218,246,102)); +#527=IFCINDEXEDPOLYGONALFACE((94,179,185)); +#528=IFCINDEXEDPOLYGONALFACE((343,346,364,365)); +#529=IFCINDEXEDPOLYGONALFACE((40,153,132)); +#530=IFCINDEXEDPOLYGONALFACE((345,314,338,343)); +#531=IFCINDEXEDPOLYGONALFACE((8,121,204)); +#532=IFCINDEXEDPOLYGONALFACE((32,64,123)); +#533=IFCINDEXEDPOLYGONALFACE((88,109,82)); +#534=IFCINDEXEDPOLYGONALFACE((133,128,81)); +#535=IFCINDEXEDPOLYGONALFACE((193,319,320)); +#536=IFCINDEXEDPOLYGONALFACE((370,367,369)); +#537=IFCINDEXEDPOLYGONALFACE((6,9,42)); +#538=IFCINDEXEDPOLYGONALFACE((214,186,282)); +#539=IFCINDEXEDPOLYGONALFACE((200,75,166)); +#540=IFCINDEXEDPOLYGONALFACE((375,79,139)); +#541=IFCINDEXEDPOLYGONALFACE((95,309,333)); +#542=IFCINDEXEDPOLYGONALFACE((221,49,72)); +#543=IFCINDEXEDPOLYGONALFACE((36,273,11)); +#544=IFCINDEXEDPOLYGONALFACE((69,155,251)); +#545=IFCINDEXEDPOLYGONALFACE((316,302,289)); +#546=IFCINDEXEDPOLYGONALFACE((297,304,303)); +#547=IFCINDEXEDPOLYGONALFACE((195,159,196)); +#548=IFCINDEXEDPOLYGONALFACE((110,186,55)); +#549=IFCINDEXEDPOLYGONALFACE((323,324,315)); +#550=IFCINDEXEDPOLYGONALFACE((172,83,242)); +#551=IFCINDEXEDPOLYGONALFACE((61,219,82)); +#552=IFCINDEXEDPOLYGONALFACE((283,291,265)); +#553=IFCINDEXEDPOLYGONALFACE((184,175,177)); +#554=IFCINDEXEDPOLYGONALFACE((349,246,347)); +#555=IFCINDEXEDPOLYGONALFACE((174,166,75)); +#556=IFCINDEXEDPOLYGONALFACE((48,363,361)); +#557=IFCINDEXEDPOLYGONALFACE((199,237,46)); +#558=IFCINDEXEDPOLYGONALFACE((164,242,198)); +#559=IFCINDEXEDPOLYGONALFACE((290,317,335,336)); +#560=IFCINDEXEDPOLYGONALFACE((217,298,160)); +#561=IFCINDEXEDPOLYGONALFACE((193,200,79)); +#562=IFCINDEXEDPOLYGONALFACE((253,166,165)); +#563=IFCINDEXEDPOLYGONALFACE((202,116,51)); +#564=IFCINDEXEDPOLYGONALFACE((236,366,268)); +#565=IFCINDEXEDPOLYGONALFACE((170,73,163)); +#566=IFCINDEXEDPOLYGONALFACE((360,328,296)); +#567=IFCINDEXEDPOLYGONALFACE((354,350,348,353)); +#568=IFCINDEXEDPOLYGONALFACE((359,357,216,214)); +#569=IFCINDEXEDPOLYGONALFACE((143,110,125)); +#570=IFCINDEXEDPOLYGONALFACE((265,314,345,283)); +#571=IFCINDEXEDPOLYGONALFACE((252,261,260)); +#572=IFCINDEXEDPOLYGONALFACE((305,337,340,334)); +#573=IFCINDEXEDPOLYGONALFACE((131,116,24)); +#574=IFCINDEXEDPOLYGONALFACE((104,168,253)); +#575=IFCINDEXEDPOLYGONALFACE((126,99,111)); +#576=IFCINDEXEDPOLYGONALFACE((47,275,276)); +#577=IFCINDEXEDPOLYGONALFACE((230,120,97)); +#578=IFCINDEXEDPOLYGONALFACE((279,283,345,352)); +#579=IFCINDEXEDPOLYGONALFACE((67,89,275)); +#580=IFCINDEXEDPOLYGONALFACE((257,271,255)); +#581=IFCINDEXEDPOLYGONALFACE((257,231,224)); +#582=IFCINDEXEDPOLYGONALFACE((316,253,165)); +#583=IFCINDEXEDPOLYGONALFACE((17,3,53)); +#584=IFCINDEXEDPOLYGONALFACE((273,171,266)); +#585=IFCINDEXEDPOLYGONALFACE((260,270,258)); +#586=IFCINDEXEDPOLYGONALFACE((362,58,216)); +#587=IFCINDEXEDPOLYGONALFACE((48,108,107)); +#588=IFCINDEXEDPOLYGONALFACE((57,65,33)); +#589=IFCINDEXEDPOLYGONALFACE((160,172,164)); +#590=IFCINDEXEDPOLYGONALFACE((190,235,184)); +#591=IFCINDEXEDPOLYGONALFACE((354,353,215,361)); +#592=IFCINDEXEDPOLYGONALFACE((258,271,256)); +#593=IFCINDEXEDPOLYGONALFACE((155,366,251)); +#594=IFCINDEXEDPOLYGONALFACE((365,357,359,352)); +#595=IFCINDEXEDPOLYGONALFACE((169,20,26)); +#596=IFCINDEXEDPOLYGONALFACE((312,174,225)); +#597=IFCINDEXEDPOLYGONALFACE((273,43,11)); +#598=IFCINDEXEDPOLYGONALFACE((264,317,290)); +#599=IFCINDEXEDPOLYGONALFACE((287,296,293)); +#600=IFCINDEXEDPOLYGONALFACE((159,149,150)); +#601=IFCINDEXEDPOLYGONALFACE((267,305,334)); +#602=IFCINDEXEDPOLYGONALFACE((206,211,100)); +#603=IFCINDEXEDPOLYGONALFACE((126,150,149)); +#604=IFCINDEXEDPOLYGONALFACE((288,114,144)); +#605=IFCINDEXEDPOLYGONALFACE((266,101,273)); +#606=IFCINDEXEDPOLYGONALFACE((123,42,32)); +#607=IFCINDEXEDPOLYGONALFACE((255,171,231)); +#608=IFCINDEXEDPOLYGONALFACE((34,116,14)); +#609=IFCINDEXEDPOLYGONALFACE((91,3,92)); +#610=IFCINDEXEDPOLYGONALFACE((287,143,138)); +#611=IFCINDEXEDPOLYGONALFACE((77,12,71)); +#612=IFCINDEXEDPOLYGONALFACE((95,178,161)); +#613=IFCINDEXEDPOLYGONALFACE((285,280,281)); +#614=IFCINDEXEDPOLYGONALFACE((242,139,262)); +#615=IFCINDEXEDPOLYGONALFACE((332,318,327)); +#616=IFCINDEXEDPOLYGONALFACE((226,239,37)); +#617=IFCINDEXEDPOLYGONALFACE((175,219,137)); +#618=IFCINDEXEDPOLYGONALFACE((177,94,184)); +#619=IFCINDEXEDPOLYGONALFACE((103,226,37)); +#620=IFCINDEXEDPOLYGONALFACE((372,371,65)); +#621=IFCINDEXEDPOLYGONALFACE((341,335,244,339)); +#622=IFCINDEXEDPOLYGONALFACE((101,69,43)); +#623=IFCINDEXEDPOLYGONALFACE((146,192,182)); +#624=IFCINDEXEDPOLYGONALFACE((52,77,5)); +#625=IFCINDEXEDPOLYGONALFACE((133,60,52)); +#626=IFCINDEXEDPOLYGONALFACE((28,243,213)); +#627=IFCINDEXEDPOLYGONALFACE((110,126,125)); +#628=IFCINDEXEDPOLYGONALFACE((140,188,176)); +#629=IFCINDEXEDPOLYGONALFACE((341,342,336,335)); +#630=IFCINDEXEDPOLYGONALFACE((82,131,61)); +#631=IFCINDEXEDPOLYGONALFACE((290,336,337,305)); +#632=IFCINDEXEDPOLYGONALFACE((109,51,116)); +#633=IFCINDEXEDPOLYGONALFACE((210,29,90)); +#634=IFCINDEXEDPOLYGONALFACE((45,30,21)); +#635=IFCINDEXEDPOLYGONALFACE((204,196,8)); +#636=IFCINDEXEDPOLYGONALFACE((229,238,237)); +#637=IFCINDEXEDPOLYGONALFACE((161,217,160)); +#638=IFCINDEXEDPOLYGONALFACE((305,264,290)); +#639=IFCINDEXEDPOLYGONALFACE((84,60,81)); +#640=IFCINDEXEDPOLYGONALFACE((185,190,184)); +#641=IFCINDEXEDPOLYGONALFACE((5,133,52)); +#642=IFCINDEXEDPOLYGONALFACE((189,187,117)); +#643=IFCINDEXEDPOLYGONALFACE((226,237,238)); +#644=IFCINDEXEDPOLYGONALFACE((23,277,197)); +#645=IFCINDEXEDPOLYGONALFACE((76,8,27)); +#646=IFCINDEXEDPOLYGONALFACE((294,274,295)); +#647=IFCINDEXEDPOLYGONALFACE((145,114,107)); +#648=IFCINDEXEDPOLYGONALFACE((188,44,10)); +#649=IFCINDEXEDPOLYGONALFACE((41,203,85)); +#650=IFCINDEXEDPOLYGONALFACE((13,43,86)); +#651=IFCINDEXEDPOLYGONALFACE((355,364,351,356)); +#652=IFCINDEXEDPOLYGONALFACE((234,125,177)); +#653=IFCINDEXEDPOLYGONALFACE((40,38,50)); +#654=IFCINDEXEDPOLYGONALFACE((272,85,20)); +#655=IFCINDEXEDPOLYGONALFACE((215,48,361)); +#656=IFCINDEXEDPOLYGONALFACE((39,241,301)); +#657=IFCINDEXEDPOLYGONALFACE((311,292,263)); +#658=IFCINDEXEDPOLYGONALFACE((69,86,43)); +#659=IFCINDEXEDPOLYGONALFACE((310,161,178)); +#660=IFCINDEXEDPOLYGONALFACE((202,169,78)); +#661=IFCINDEXEDPOLYGONALFACE((248,250,247)); +#662=IFCINDEXEDPOLYGONALFACE((296,138,360)); +#663=IFCINDEXEDPOLYGONALFACE((42,9,23)); +#664=IFCINDEXEDPOLYGONALFACE((203,206,85)); +#665=IFCINDEXEDPOLYGONALFACE((202,272,169)); +#666=IFCINDEXEDPOLYGONALFACE((342,344,337,336)); +#667=IFCINDEXEDPOLYGONALFACE((129,35,19)); +#668=IFCINDEXEDPOLYGONALFACE((2,162,191)); +#669=IFCINDEXEDPOLYGONALFACE((366,306,98)); +#670=IFCINDEXEDPOLYGONALFACE((361,363,356,354)); +#671=IFCINDEXEDPOLYGONALFACE((68,17,134)); +#672=IFCINDEXEDPOLYGONALFACE((54,173,201)); +#673=IFCINDEXEDPOLYGONALFACE((210,167,151)); +#674=IFCINDEXEDPOLYGONALFACE((156,171,97)); +#675=IFCINDEXEDPOLYGONALFACE((54,151,93)); +#676=IFCINDEXEDPOLYGONALFACE((59,8,196)); +#677=IFCINDEXEDPOLYGONALFACE((213,210,90)); +#678=IFCINDEXEDPOLYGONALFACE((54,371,373)); +#679=IFCINDEXEDPOLYGONALFACE((130,243,209)); +#680=IFCINDEXEDPOLYGONALFACE((359,214,282,280)); +#681=IFCINDEXEDPOLYGONALFACE((142,117,188)); +#682=IFCINDEXEDPOLYGONALFACE((28,367,368)); +#683=IFCINDEXEDPOLYGONALFACE((237,228,229)); +#684=IFCINDEXEDPOLYGONALFACE((362,105,99)); +#685=IFCINDEXEDPOLYGONALFACE((291,314,265)); +#686=IFCINDEXEDPOLYGONALFACE((45,70,18)); +#687=IFCINDEXEDPOLYGONALFACE((210,372,167)); +#688=IFCINDEXEDPOLYGONALFACE((62,63,176)); +#689=IFCINDEXEDPOLYGONALFACE((91,19,35)); +#690=IFCINDEXEDPOLYGONALFACE((206,203,211)); +#691=IFCINDEXEDPOLYGONALFACE((269,260,261)); +#692=IFCINDEXEDPOLYGONALFACE((53,35,129)); +#693=IFCINDEXEDPOLYGONALFACE((54,29,151)); +#694=IFCINDEXEDPOLYGONALFACE((130,368,370)); +#695=IFCINDEXEDPOLYGONALFACE((67,187,189)); +#696=IFCINDEXEDPOLYGONALFACE((371,25,124)); +#697=IFCINDEXEDPOLYGONALFACE((130,209,368)); +#698=IFCINDEXEDPOLYGONALFACE((243,130,370)); +#699=IFCINDEXEDPOLYGONALFACE((213,227,210)); +#700=IFCINDEXEDPOLYGONALFACE((227,372,210)); +#701=IFCINDEXEDPOLYGONALFACE((167,93,151)); +#702=IFCINDEXEDPOLYGONALFACE((372,227,25)); +#703=IFCINDEXEDPOLYGONALFACE((373,29,54)); +#704=IFCINDEXEDPOLYGONALFACE((213,369,227)); +#705=IFCINDEXEDPOLYGONALFACE((371,124,373)); +#706=IFCINDEXEDPOLYGONALFACE((341,348,350,342)); +#707=IFCINDEXEDPOLYGONALFACE((135,66,217)); +#708=IFCINDEXEDPOLYGONALFACE((65,371,33)); +#709=IFCINDEXEDPOLYGONALFACE((350,354,356,351)); +#710=IFCINDEXEDPOLYGONALFACE((333,330,178)); +#711=IFCINDEXEDPOLYGONALFACE((315,254,323)); +#712=IFCINDEXEDPOLYGONALFACE((127,12,30)); +#713=IFCINDEXEDPOLYGONALFACE((100,128,31)); +#714=IFCINDEXEDPOLYGONALFACE((319,5,77)); +#715=IFCINDEXEDPOLYGONALFACE((374,158,2)); +#716=IFCINDEXEDPOLYGONALFACE((375,83,374)); +#717=IFCINDEXEDPOLYGONALFACE((314,274,311)); +#718=IFCINDEXEDPOLYGONALFACE((21,4,52)); +#719=IFCINDEXEDPOLYGONALFACE((288,144,180)); +#720=IFCINDEXEDPOLYGONALFACE((241,137,219)); +#721=IFCINDEXEDPOLYGONALFACE((60,76,45)); +#722=IFCINDEXEDPOLYGONALFACE((10,62,176)); +#723=IFCINDEXEDPOLYGONALFACE((220,147,106)); +#724=IFCINDEXEDPOLYGONALFACE((90,29,373)); +#725=IFCINDEXEDPOLYGONALFACE((70,148,199)); +#726=IFCINDEXEDPOLYGONALFACE((103,37,36)); +#727=IFCINDEXEDPOLYGONALFACE((71,197,306)); +#728=IFCINDEXEDPOLYGONALFACE((117,187,44)); +#729=IFCINDEXEDPOLYGONALFACE((62,44,56)); +#730=IFCINDEXEDPOLYGONALFACE((254,252,244)); +#731=IFCINDEXEDPOLYGONALFACE((59,196,159)); +#732=IFCINDEXEDPOLYGONALFACE((158,141,154)); +#733=IFCINDEXEDPOLYGONALFACE((300,301,241)); +#734=IFCINDEXEDPOLYGONALFACE((23,127,32)); +#735=IFCINDEXEDPOLYGONALFACE((309,303,304)); +#736=IFCINDEXEDPOLYGONALFACE((295,329,304)); +#737=IFCINDEXEDPOLYGONALFACE((369,367,25)); +#738=IFCINDEXEDPOLYGONALFACE((119,102,106)); +#739=IFCINDEXEDPOLYGONALFACE((232,269,318)); +#740=IFCINDEXEDPOLYGONALFACE((208,170,63)); +#741=IFCINDEXEDPOLYGONALFACE((239,97,171)); +#742=IFCINDEXEDPOLYGONALFACE((124,28,213)); +#743=IFCINDEXEDPOLYGONALFACE((268,155,75)); +#744=IFCINDEXEDPOLYGONALFACE((101,270,269)); +#745=IFCINDEXEDPOLYGONALFACE((277,9,7)); +#746=IFCINDEXEDPOLYGONALFACE((320,306,236)); +#747=IFCINDEXEDPOLYGONALFACE((222,193,236)); +#748=IFCINDEXEDPOLYGONALFACE((173,115,50)); +#749=IFCINDEXEDPOLYGONALFACE((299,313,267)); +#750=IFCINDEXEDPOLYGONALFACE((162,207,212)); +#751=IFCINDEXEDPOLYGONALFACE((98,306,197)); +#752=IFCINDEXEDPOLYGONALFACE((295,296,328)); +#753=IFCINDEXEDPOLYGONALFACE((84,81,128)); +#754=IFCINDEXEDPOLYGONALFACE((302,299,297)); +#755=IFCINDEXEDPOLYGONALFACE((212,115,173)); +#756=IFCINDEXEDPOLYGONALFACE((317,323,254)); +#757=IFCINDEXEDPOLYGONALFACE((211,205,204)); +#758=IFCINDEXEDPOLYGONALFACE((39,177,175)); +#759=IFCINDEXEDPOLYGONALFACE((334,263,292)); +#760=IFCINDEXEDPOLYGONALFACE((283,279,286)); +#761=IFCINDEXEDPOLYGONALFACE((129,38,16)); +#762=IFCINDEXEDPOLYGONALFACE((102,349,249)); +#763=IFCINDEXEDPOLYGONALFACE((197,71,12)); +#764=IFCINDEXEDPOLYGONALFACE((330,331,310)); +#765=IFCINDEXEDPOLYGONALFACE((300,308,310)); +#766=IFCINDEXEDPOLYGONALFACE((205,203,190)); +#767=IFCINDEXEDPOLYGONALFACE((133,1,2)); +#768=IFCINDEXEDPOLYGONALFACE((85,206,92)); +#769=IFCINDEXEDPOLYGONALFACE((360,234,39)); +#770=IFCINDEXEDPOLYGONALFACE((122,157,47)); +#771=IFCINDEXEDPOLYGONALFACE((281,280,282)); +#772=IFCINDEXEDPOLYGONALFACE((250,220,249)); +#773=IFCINDEXEDPOLYGONALFACE((58,55,214)); +#774=IFCINDEXEDPOLYGONALFACE((234,360,138)); +#775=IFCINDEXEDPOLYGONALFACE((141,172,298)); +#776=IFCINDEXEDPOLYGONALFACE((27,112,45)); +#777=IFCINDEXEDPOLYGONALFACE((146,182,181)); +#778=IFCINDEXEDPOLYGONALFACE((144,145,181)); +#779=IFCINDEXEDPOLYGONALFACE((195,194,185)); +#780=IFCINDEXEDPOLYGONALFACE((228,221,223)); +#781=IFCINDEXEDPOLYGONALFACE((49,215,358)); +#782=IFCINDEXEDPOLYGONALFACE((74,163,34)); +#783=IFCINDEXEDPOLYGONALFACE((221,72,218)); +#784=IFCINDEXEDPOLYGONALFACE((146,145,107)); +#785=IFCINDEXEDPOLYGONALFACE((194,195,204)); +#786=IFCINDEXEDPOLYGONALFACE((46,123,64)); +#787=IFCINDEXEDPOLYGONALFACE((366,98,86)); +#788=IFCINDEXEDPOLYGONALFACE((48,107,114)); +#789=IFCINDEXEDPOLYGONALFACE((198,104,95)); +#790=IFCINDEXEDPOLYGONALFACE((74,183,132)); +#791=IFCINDEXEDPOLYGONALFACE((21,30,12)); +#792=IFCINDEXEDPOLYGONALFACE((288,150,111)); +#793=IFCINDEXEDPOLYGONALFACE((75,155,225)); +#794=IFCINDEXEDPOLYGONALFACE((166,168,262)); +#795=IFCINDEXEDPOLYGONALFACE((223,119,230)); +#796=IFCINDEXEDPOLYGONALFACE((26,20,92)); +#797=IFCINDEXEDPOLYGONALFACE((219,235,88)); +#798=IFCINDEXEDPOLYGONALFACE((322,264,325)); +#799=IFCINDEXEDPOLYGONALFACE((257,224,220)); +#800=IFCINDEXEDPOLYGONALFACE((289,309,104)); +#801=IFCINDEXEDPOLYGONALFACE((228,146,108)); +#802=IFCINDEXEDPOLYGONALFACE((119,223,218)); +#803=IFCINDEXEDPOLYGONALFACE((367,28,124)); +#804=IFCINDEXEDPOLYGONALFACE((327,324,325)); +#805=IFCINDEXEDPOLYGONALFACE((40,50,115)); +#806=IFCINDEXEDPOLYGONALFACE((321,252,248)); +#807=IFCINDEXEDPOLYGONALFACE((13,86,98)); +#808=IFCINDEXEDPOLYGONALFACE((5,375,374)); +#809=IFCINDEXEDPOLYGONALFACE((135,217,87)); +#810=IFCINDEXEDPOLYGONALFACE((156,147,224)); +#811=IFCINDEXEDPOLYGONALFACE((163,74,63)); +#812=IFCINDEXEDPOLYGONALFACE((56,157,142)); +#813=IFCINDEXEDPOLYGONALFACE((88,190,203)); +#814=IFCINDEXEDPOLYGONALFACE((24,34,163)); +#815=IFCINDEXEDPOLYGONALFACE((14,202,78)); +#816=IFCINDEXEDPOLYGONALFACE((248,252,260)); +#817=IFCINDEXEDPOLYGONALFACE((78,169,26)); +#818=IFCINDEXEDPOLYGONALFACE((16,134,17)); +#819=IFCINDEXEDPOLYGONALFACE((161,160,164)); +#820=IFCINDEXEDPOLYGONALFACE((291,284,287)); +#821=IFCINDEXEDPOLYGONALFACE((127,30,18)); +#822=IFCINDEXEDPOLYGONALFACE((182,192,199)); +#823=IFCINDEXEDPOLYGONALFACE((319,77,71)); +#824=IFCINDEXEDPOLYGONALFACE((225,69,232)); +#825=IFCINDEXEDPOLYGONALFACE((302,303,309)); +#826=IFCINDEXEDPOLYGONALFACE((13,7,36)); +#827=IFCINDEXEDPOLYGONALFACE((308,22,87)); +#828=IFCINDEXEDPOLYGONALFACE((262,139,79)); +#829=IFCINDEXEDPOLYGONALFACE((131,24,73)); +#830=IFCINDEXEDPOLYGONALFACE((370,369,213)); +#831=IFCINDEXEDPOLYGONALFACE((92,206,100)); +#832=IFCINDEXEDPOLYGONALFACE((89,136,233)); +#833=IFCINDEXEDPOLYGONALFACE((332,316,165)); +#834=IFCINDEXEDPOLYGONALFACE((189,122,136)); +#835=IFCINDEXEDPOLYGONALFACE((326,316,332)); +#836=IFCINDEXEDPOLYGONALFACE((117,142,122)); +#837=IFCINDEXEDPOLYGONALFACE((132,134,16)); +#838=IFCINDEXEDPOLYGONALFACE((134,132,183)); +#839=IFCINDEXEDPOLYGONALFACE((239,238,230)); +#840=IFCINDEXEDPOLYGONALFACE((180,181,96)); +#841=IFCINDEXEDPOLYGONALFACE((99,105,113)); +#842=IFCINDEXEDPOLYGONALFACE((22,61,131)); +#843=IFCINDEXEDPOLYGONALFACE((321,247,249)); +#844=IFCINDEXEDPOLYGONALFACE((156,97,120)); +#845=IFCINDEXEDPOLYGONALFACE((148,96,181)); +#846=IFCINDEXEDPOLYGONALFACE((152,125,126)); +#847=IFCINDEXEDPOLYGONALFACE((240,36,37)); +#848=IFCINDEXEDPOLYGONALFACE((14,68,183)); +#849=IFCINDEXEDPOLYGONALFACE((293,296,295)); +#850=IFCINDEXEDPOLYGONALFACE((148,70,112)); +#851=IFCINDEXEDPOLYGONALFACE((313,299,325)); +#852=IFCINDEXEDPOLYGONALFACE((154,66,170)); +#853=IFCINDEXEDPOLYGONALFACE((226,6,123)); +#854=IFCINDEXEDPOLYGONALFACE((349,347,339)); +#855=IFCINDEXEDPOLYGONALFACE((318,315,324)); +#856=IFCINDEXEDPOLYGONALFACE((326,325,299)); +#857=IFCINDEXEDPOLYGONALFACE((112,27,59)); +#858=IFCINDEXEDPOLYGONALFACE((262,168,198)); +#859=IFCINDEXEDPOLYGONALFACE((272,202,51)); +#860=IFCINDEXEDPOLYGONALFACE((318,269,261)); +#861=IFCINDEXEDPOLYGONALFACE((167,65,57)); +#862=IFCINDEXEDPOLYGONALFACE((271,270,266)); +#863=IFCINDEXEDPOLYGONALFACE((218,72,246)); +#864=IFCINDEXEDPOLYGONALFACE((94,149,179)); +#865=IFCINDEXEDPOLYGONALFACE((40,62,153)); +#866=IFCINDEXEDPOLYGONALFACE((8,84,121)); +#867=IFCINDEXEDPOLYGONALFACE((32,18,64)); +#868=IFCINDEXEDPOLYGONALFACE((88,15,109)); +#869=IFCINDEXEDPOLYGONALFACE((133,31,128)); +#870=IFCINDEXEDPOLYGONALFACE((193,79,319)); +#871=IFCINDEXEDPOLYGONALFACE((370,368,367)); +#872=IFCINDEXEDPOLYGONALFACE((6,103,9)); +#873=IFCINDEXEDPOLYGONALFACE((214,55,186)); +#874=IFCINDEXEDPOLYGONALFACE((200,222,75)); +#875=IFCINDEXEDPOLYGONALFACE((375,319,79)); +#876=IFCINDEXEDPOLYGONALFACE((95,104,309)); +#877=IFCINDEXEDPOLYGONALFACE((221,108,49)); +#878=IFCINDEXEDPOLYGONALFACE((36,240,273)); +#879=IFCINDEXEDPOLYGONALFACE((69,225,155)); +#880=IFCINDEXEDPOLYGONALFACE((316,326,302)); +#881=IFCINDEXEDPOLYGONALFACE((297,294,304)); +#882=IFCINDEXEDPOLYGONALFACE((195,179,159)); +#883=IFCINDEXEDPOLYGONALFACE((110,281,186)); +#884=IFCINDEXEDPOLYGONALFACE((323,322,324)); +#885=IFCINDEXEDPOLYGONALFACE((172,141,83)); +#886=IFCINDEXEDPOLYGONALFACE((61,307,219)); +#887=IFCINDEXEDPOLYGONALFACE((283,284,291)); +#888=IFCINDEXEDPOLYGONALFACE((184,235,175)); +#889=IFCINDEXEDPOLYGONALFACE((349,102,246)); +#890=IFCINDEXEDPOLYGONALFACE((174,165,166)); +#891=IFCINDEXEDPOLYGONALFACE((48,105,363)); +#892=IFCINDEXEDPOLYGONALFACE((199,192,237)); +#893=IFCINDEXEDPOLYGONALFACE((164,172,242)); +#894=IFCINDEXEDPOLYGONALFACE((217,66,298)); +#895=IFCINDEXEDPOLYGONALFACE((193,222,200)); +#896=IFCINDEXEDPOLYGONALFACE((253,168,166)); +#897=IFCINDEXEDPOLYGONALFACE((202,14,116)); +#898=IFCINDEXEDPOLYGONALFACE((236,306,366)); +#899=IFCINDEXEDPOLYGONALFACE((170,66,73)); +#900=IFCINDEXEDPOLYGONALFACE((360,300,328)); +#901=IFCINDEXEDPOLYGONALFACE((143,285,110)); +#902=IFCINDEXEDPOLYGONALFACE((252,254,261)); +#903=IFCINDEXEDPOLYGONALFACE((131,109,116)); +#904=IFCINDEXEDPOLYGONALFACE((104,198,168)); +#905=IFCINDEXEDPOLYGONALFACE((126,58,99)); +#906=IFCINDEXEDPOLYGONALFACE((47,67,275)); +#907=IFCINDEXEDPOLYGONALFACE((230,119,120)); +#908=IFCINDEXEDPOLYGONALFACE((67,259,89)); +#909=IFCINDEXEDPOLYGONALFACE((257,256,271)); +#910=IFCINDEXEDPOLYGONALFACE((257,255,231)); +#911=IFCINDEXEDPOLYGONALFACE((316,289,253)); +#912=IFCINDEXEDPOLYGONALFACE((17,26,3)); +#913=IFCINDEXEDPOLYGONALFACE((273,240,171)); +#914=IFCINDEXEDPOLYGONALFACE((362,99,58)); +#915=IFCINDEXEDPOLYGONALFACE((48,49,108)); +#916=IFCINDEXEDPOLYGONALFACE((160,298,172)); +#917=IFCINDEXEDPOLYGONALFACE((190,88,235)); +#918=IFCINDEXEDPOLYGONALFACE((258,270,271)); +#919=IFCINDEXEDPOLYGONALFACE((155,268,366)); +#920=IFCINDEXEDPOLYGONALFACE((169,272,20)); +#921=IFCINDEXEDPOLYGONALFACE((312,332,174)); +#922=IFCINDEXEDPOLYGONALFACE((273,101,43)); +#923=IFCINDEXEDPOLYGONALFACE((264,322,317)); +#924=IFCINDEXEDPOLYGONALFACE((287,138,296)); +#925=IFCINDEXEDPOLYGONALFACE((159,179,149)); +#926=IFCINDEXEDPOLYGONALFACE((267,313,305)); +#927=IFCINDEXEDPOLYGONALFACE((126,111,150)); +#928=IFCINDEXEDPOLYGONALFACE((288,113,114)); +#929=IFCINDEXEDPOLYGONALFACE((266,270,101)); +#930=IFCINDEXEDPOLYGONALFACE((123,6,42)); +#931=IFCINDEXEDPOLYGONALFACE((255,266,171)); +#932=IFCINDEXEDPOLYGONALFACE((34,24,116)); +#933=IFCINDEXEDPOLYGONALFACE((91,35,3)); +#934=IFCINDEXEDPOLYGONALFACE((287,285,143)); +#935=IFCINDEXEDPOLYGONALFACE((77,4,12)); +#936=IFCINDEXEDPOLYGONALFACE((95,333,178)); +#937=IFCINDEXEDPOLYGONALFACE((285,279,280)); +#938=IFCINDEXEDPOLYGONALFACE((242,83,139)); +#939=IFCINDEXEDPOLYGONALFACE((332,312,318)); +#940=IFCINDEXEDPOLYGONALFACE((226,238,239)); +#941=IFCINDEXEDPOLYGONALFACE((175,235,219)); +#942=IFCINDEXEDPOLYGONALFACE((177,152,94)); +#943=IFCINDEXEDPOLYGONALFACE((103,6,226)); +#944=IFCINDEXEDPOLYGONALFACE((372,25,371)); +#945=IFCINDEXEDPOLYGONALFACE((101,232,69)); +#946=IFCINDEXEDPOLYGONALFACE((146,228,192)); +#947=IFCINDEXEDPOLYGONALFACE((52,4,77)); +#948=IFCINDEXEDPOLYGONALFACE((133,81,60)); +#949=IFCINDEXEDPOLYGONALFACE((28,209,243)); +#950=IFCINDEXEDPOLYGONALFACE((110,58,126)); +#951=IFCINDEXEDPOLYGONALFACE((140,142,188)); +#952=IFCINDEXEDPOLYGONALFACE((82,109,131)); +#953=IFCINDEXEDPOLYGONALFACE((109,15,51)); +#954=IFCINDEXEDPOLYGONALFACE((210,151,29)); +#955=IFCINDEXEDPOLYGONALFACE((45,18,30)); +#956=IFCINDEXEDPOLYGONALFACE((204,195,196)); +#957=IFCINDEXEDPOLYGONALFACE((229,230,238)); +#958=IFCINDEXEDPOLYGONALFACE((161,87,217)); +#959=IFCINDEXEDPOLYGONALFACE((305,313,264)); +#960=IFCINDEXEDPOLYGONALFACE((84,76,60)); +#961=IFCINDEXEDPOLYGONALFACE((185,194,190)); +#962=IFCINDEXEDPOLYGONALFACE((5,1,133)); +#963=IFCINDEXEDPOLYGONALFACE((226,46,237)); +#964=IFCINDEXEDPOLYGONALFACE((23,9,277)); +#965=IFCINDEXEDPOLYGONALFACE((76,84,8)); +#966=IFCINDEXEDPOLYGONALFACE((294,267,274)); +#967=IFCINDEXEDPOLYGONALFACE((145,144,114)); +#968=IFCINDEXEDPOLYGONALFACE((41,15,203)); +#969=IFCINDEXEDPOLYGONALFACE((13,11,43)); +#970=IFCINDEXEDPOLYGONALFACE((234,143,125)); +#971=IFCINDEXEDPOLYGONALFACE((40,16,38)); +#972=IFCINDEXEDPOLYGONALFACE((272,41,85)); +#973=IFCINDEXEDPOLYGONALFACE((215,49,48)); +#974=IFCINDEXEDPOLYGONALFACE((39,137,241)); +#975=IFCINDEXEDPOLYGONALFACE((311,274,292)); +#976=IFCINDEXEDPOLYGONALFACE((69,251,86)); +#977=IFCINDEXEDPOLYGONALFACE((310,87,161)); +#978=IFCINDEXEDPOLYGONALFACE((248,256,250)); +#979=IFCINDEXEDPOLYGONALFACE((68,78,17)); +#980=IFCINDEXEDPOLYGONALFACE((156,231,171)); +#981=IFCINDEXEDPOLYGONALFACE((59,27,8)); +#982=IFCINDEXEDPOLYGONALFACE((54,33,371)); +#983=IFCINDEXEDPOLYGONALFACE((237,192,228)); +#984=IFCINDEXEDPOLYGONALFACE((362,363,105)); +#985=IFCINDEXEDPOLYGONALFACE((291,293,314)); +#986=IFCINDEXEDPOLYGONALFACE((45,112,70)); +#987=IFCINDEXEDPOLYGONALFACE((62,40,63)); +#988=IFCINDEXEDPOLYGONALFACE((91,31,19)); +#989=IFCINDEXEDPOLYGONALFACE((269,270,260)); +#990=IFCINDEXEDPOLYGONALFACE((53,3,35)); +#991=IFCINDEXEDPOLYGONALFACE((67,47,187)); +#992=IFCINDEXEDPOLYGONALFACE((135,73,66)); +#993=IFCINDEXEDPOLYGONALFACE((333,329,330)); +#994=IFCINDEXEDPOLYGONALFACE((315,261,254)); +#995=IFCINDEXEDPOLYGONALFACE((127,23,12)); +#996=IFCINDEXEDPOLYGONALFACE((100,121,128)); +#997=IFCINDEXEDPOLYGONALFACE((319,375,5)); +#998=IFCINDEXEDPOLYGONALFACE((374,83,158)); +#999=IFCINDEXEDPOLYGONALFACE((375,139,83)); +#1000=IFCINDEXEDPOLYGONALFACE((314,293,274)); +#1001=IFCPOLYGONALFACESET(#287,.F.,(#288,#289,#290,#291,#292,#293,#294,#295,#296,#297,#298,#299,#300,#301,#302,#303,#304,#305,#306,#307,#308,#309,#310,#311,#312,#313,#314,#315,#316,#317,#318,#319,#320,#321,#322,#323,#324,#325,#326,#327,#328,#329,#330,#331,#332,#333,#334,#335,#336,#337,#338,#339,#340,#341,#342,#343,#344,#345,#346,#347,#348,#349,#350,#351,#352,#353,#354,#355,#356,#357,#358,#359,#360,#361,#362,#363,#364,#365,#366,#367,#368,#369,#370,#371,#372,#373,#374,#375,#376,#377,#378,#379,#380,#381,#382,#383,#384,#385,#386,#387,#388,#389,#390,#391,#392,#393,#394,#395,#396,#397,#398,#399,#400,#401,#402,#403,#404,#405,#406,#407,#408,#409,#410,#411,#412,#413,#414,#415,#416,#417,#418,#419,#420,#421,#422,#423,#424,#425,#426,#427,#428,#429,#430,#431,#432,#433,#434,#435,#436,#437,#438,#439,#440,#441,#442,#443,#444,#445,#446,#447,#448,#449,#450,#451,#452,#453,#454,#455,#456,#457,#458,#459,#460,#461,#462,#463,#464,#465,#466,#467,#468,#469,#470,#471,#472,#473,#474,#475,#476,#477,#478,#479,#480,#481,#482,#483,#484,#485,#486,#487,#488,#489,#490,#491,#492,#493,#494,#495,#496,#497,#498,#499,#500,#501,#502,#503,#504,#505,#506,#507,#508,#509,#510,#511,#512,#513,#514,#515,#516,#517,#518,#519,#520,#521,#522,#523,#524,#525,#526,#527,#528,#529,#530,#531,#532,#533,#534,#535,#536,#537,#538,#539,#540,#541,#542,#543,#544,#545,#546,#547,#548,#549,#550,#551,#552,#553,#554,#555,#556,#557,#558,#559,#560,#561,#562,#563,#564,#565,#566,#567,#568,#569,#570,#571,#572,#573,#574,#575,#576,#577,#578,#579,#580,#581,#582,#583,#584,#585,#586,#587,#588,#589,#590,#591,#592,#593,#594,#595,#596,#597,#598,#599,#600,#601,#602,#603,#604,#605,#606,#607,#608,#609,#610,#611,#612,#613,#614,#615,#616,#617,#618,#619,#620,#621,#622,#623,#624,#625,#626,#627,#628,#629,#630,#631,#632,#633,#634,#635,#636,#637,#638,#639,#640,#641,#642,#643,#644,#645,#646,#647,#648,#649,#650,#651,#652,#653,#654,#655,#656,#657,#658,#659,#660,#661,#662,#663,#664,#665,#666,#667,#668,#669,#670,#671,#672,#673,#674,#675,#676,#677,#678,#679,#680,#681,#682,#683,#684,#685,#686,#687,#688,#689,#690,#691,#692,#693,#694,#695,#696,#697,#698,#699,#700,#701,#702,#703,#704,#705,#706,#707,#708,#709,#710,#711,#712,#713,#714,#715,#716,#717,#718,#719,#720,#721,#722,#723,#724,#725,#726,#727,#728,#729,#730,#731,#732,#733,#734,#735,#736,#737,#738,#739,#740,#741,#742,#743,#744,#745,#746,#747,#748,#749,#750,#751,#752,#753,#754,#755,#756,#757,#758,#759,#760,#761,#762,#763,#764,#765,#766,#767,#768,#769,#770,#771,#772,#773,#774,#775,#776,#777,#778,#779,#780,#781,#782,#783,#784,#785,#786,#787,#788,#789,#790,#791,#792,#793,#794,#795,#796,#797,#798,#799,#800,#801,#802,#803,#804,#805,#806,#807,#808,#809,#810,#811,#812,#813,#814,#815,#816,#817,#818,#819,#820,#821,#822,#823,#824,#825,#826,#827,#828,#829,#830,#831,#832,#833,#834,#835,#836,#837,#838,#839,#840,#841,#842,#843,#844,#845,#846,#847,#848,#849,#850,#851,#852,#853,#854,#855,#856,#857,#858,#859,#860,#861,#862,#863,#864,#865,#866,#867,#868,#869,#870,#871,#872,#873,#874,#875,#876,#877,#878,#879,#880,#881,#882,#883,#884,#885,#886,#887,#888,#889,#890,#891,#892,#893,#894,#895,#896,#897,#898,#899,#900,#901,#902,#903,#904,#905,#906,#907,#908,#909,#910,#911,#912,#913,#914,#915,#916,#917,#918,#919,#920,#921,#922,#923,#924,#925,#926,#927,#928,#929,#930,#931,#932,#933,#934,#935,#936,#937,#938,#939,#940,#941,#942,#943,#944,#945,#946,#947,#948,#949,#950,#951,#952,#953,#954,#955,#956,#957,#958,#959,#960,#961,#962,#963,#964,#965,#966,#967,#968,#969,#970,#971,#972,#973,#974,#975,#976,#977,#978,#979,#980,#981,#982,#983,#984,#985,#986,#987,#988,#989,#990,#991,#992,#993,#994,#995,#996,#997,#998,#999,#1000),$); +#1002=IFCSHAPEREPRESENTATION(#15,'Body','Tessellation',(#1001)); +#1003=IFCREPRESENTATIONMAP(#280,#1002); +#1004=IFCCARTESIANPOINT((0.,0.,0.)); +#1005=IFCDIRECTION((0.,0.,1.)); +#1006=IFCDIRECTION((1.,0.,0.)); +#1007=IFCAXIS2PLACEMENT3D(#1004,#1005,#1006); +#1013=IFCCARTESIANPOINTLIST2D(((-161.386370658875,0.390071421861649),(-162.97847032547,30.6398719549179),(-152.914509177208,57.6198659837246),(-148.716494441032,79.5774236321449),(-149.392008781433,102.066904306412),(-151.44681930542,125.798091292381),(-157.580137252808,132.616892457008),(-169.090509414673,130.419373512268),(-180.844187736511,118.465758860111),(-182.052731513977,90.6300097703934),(-183.831930160522,55.2833341062069),(-183.684945106506,39.6271869540215),(-192.724362015724,-4.67484071850777))); +#1014=IFCINDEXEDPOLYCURVE(#1013,$,$); +#1015=IFCCARTESIANPOINTLIST2D(((-173.348978161812,20.3548446297646),(-163.15957903862,61.7493018507957),(-157.428041100502,97.4122136831284),(-165.070101618767,119.064696133137))); +#1016=IFCINDEXEDPOLYCURVE(#1015,$,$); +#1017=IFCCARTESIANPOINTLIST2D(((-160.456106066704,37.40194439888),(-130.220890045166,47.9081235826015),(-97.7480411529541,54.0151223540306),(-74.405312538147,73.5662579536438),(-37.3027324676514,89.5451977849007),(-5.24431467056274,85.4801684617996),(44.9999570846558,68.9153224229813),(76.8988728523254,42.0413166284561),(100.000023841858,20.0000032782555),(112.531423568726,-13.4119689464569),(110.93932390213,-41.5389761328697),(101.917445659637,-74.4422599673271),(128.680348396301,-63.8554915785789),(138.488471508026,-43.2419404387474),(134.837985038757,-13.5693177580833),(123.972177505493,5.19884377717972),(100.000023841858,20.0000032782555))); +#1018=IFCINDEXEDPOLYCURVE(#1017,$,$); +#1019=IFCCARTESIANPOINTLIST2D(((-41.3289070129395,60.5994611978531),(-55.4808378219604,46.8897596001625),(-78.0355930328369,36.7180481553078),(-99.2635488510132,18.5858532786369),(-136.412382125854,4.43390011787415))); +#1020=IFCINDEXEDPOLYCURVE(#1019,$,$); +#1021=IFCCARTESIANPOINTLIST2D(((-143.91028881073,8.47188383340836),(-127.020835876465,23.3357548713684),(-99.5742082595825,49.370177090168),(-68.5850381851196,68.8069462776184),(-29.6431183815002,76.3391554355621),(-26.7347097396851,71.21342420578),(-33.8107347488403,58.3882182836533),(-58.5765838623047,19.0281048417091),(-103.685975074768,-7.94906169176102),(-130.663156509399,-14.5827829837799))); +#1022=IFCINDEXEDPOLYCURVE(#1021,$,$); +#1023=IFCCARTESIANPOINTLIST2D(((101.917445659637,-74.4422599673271),(77.6327848434448,-98.9715680480003),(43.5214042663574,-123.003117740154),(-1.87504291534424,-136.098772287369),(-44.7412729263306,-130.966305732727),(-75.5681991577148,-105.624251067638),(-114.447318017483,-103.237792849541),(-148.344993591309,-102.713964879513),(-129.387378692627,-83.7726220488548),(-112.089991569519,-52.3208752274513))); +#1024=IFCINDEXEDPOLYCURVE(#1023,$,$); +#1025=IFCCARTESIANPOINTLIST2D(((-148.344993591309,-102.713964879513),(-160.57014465332,-110.72414368391),(-187.541648745537,-117.346309125423),(-205.768346786499,-106.695257127285),(-214.284062385559,-90.5132815241814),(-222.012758255005,-43.5851588845253),(-217.635273933411,-23.6888602375984),(-189.349979162216,11.8629187345505))); +#1026=IFCINDEXEDPOLYCURVE(#1025,$,$); +#1027=IFCGEOMETRICCURVESET((#1014,#1016,#1018,#1020,#1022,#1024,#1026)); +#1028=IFCSHAPEREPRESENTATION(#28,'Body','Annotation2D',(#1027)); +#1029=IFCREPRESENTATIONMAP(#1007,#1028); +#1030=IFCFURNITURETYPE('3Kyc6IyarAUw3_8fkNtXIg',$,'BUN01',$,$,$,(#1003,#1029),$,$,.NOTDEFINED.,.NOTDEFINED.); +#1031=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('setout-point'),$); +#1032=IFCPROPERTYSET('2dQzX_K4r1Xet6dz9zBlgs',$,'EPset_Annotation',$,(#1031)); +#1033=IFCTYPEPRODUCT('0TBMBnD_b66QLUWKD9HLsc',$,'SETOUT-POINT',$,'IfcAnnotation/SYMBOL',(#1032),$,$); +#1034=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('control-point'),$); +#1035=IFCPROPERTYSET('3APQOw$FP1ivxp08UxHsl6',$,'EPset_Annotation',$,(#1034)); +#1036=IFCTYPEPRODUCT('0vo_7PU3H9ygTnrIipqPRI',$,'CONTROL-POINT',$,'IfcAnnotation/SYMBOL',(#1035),$,$); +#1037=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('traverse-point'),$); +#1038=IFCPROPERTYSET('0cTSYXMc9B$PTXVDrhBYYW',$,'EPset_Annotation',$,(#1037)); +#1039=IFCTYPEPRODUCT('32V27G3$T1OO3TbXg6948F',$,'TRAVERSE-POINT',$,'IfcAnnotation/SYMBOL',(#1038),$,$); +#1040=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('dashed'),$); +#1041=IFCPROPERTYSET('0RiYsOxp529gXnCkw44wF8',$,'EPset_Annotation',$,(#1040)); +#1042=IFCTYPEPRODUCT('2PXIC7Bg914gJhRh2XeGnN',$,'DASHED',$,'IfcAnnotation/LINEWORK',(#1041),$,$); +#1043=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('fine'),$); +#1044=IFCPROPERTYSET('2gzly9D0L1qPK2MExeXgRO',$,'EPset_Annotation',$,(#1043)); +#1045=IFCTYPEPRODUCT('1Ou1kA3Vb4HhuNBvM0uGe0',$,'FINE',$,'IfcAnnotation/LINEWORK',(#1044),$,$); +#1046=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('thin'),$); +#1047=IFCPROPERTYSET('0vsVpqs6zArvA2bfBtvQew',$,'EPset_Annotation',$,(#1046)); +#1048=IFCTYPEPRODUCT('3lx$KQPRbEZwbQ7Xdfm5gw',$,'THIN',$,'IfcAnnotation/LINEWORK',(#1047),$,$); +#1049=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('medium'),$); +#1050=IFCPROPERTYSET('240rEBDOn8PAvfnm_43s55',$,'EPset_Annotation',$,(#1049)); +#1051=IFCTYPEPRODUCT('00j$y97p903w2HOb35lAQ2',$,'MEDIUM',$,'IfcAnnotation/LINEWORK',(#1050),$,$); +#1052=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('thick'),$); +#1053=IFCPROPERTYSET('2IEGHncr1D$R8fKA9zCEJP',$,'EPset_Annotation',$,(#1052)); +#1054=IFCTYPEPRODUCT('2tVdFGorj6dfrL4uA1kyW8',$,'THICK',$,'IfcAnnotation/LINEWORK',(#1053),$,$); +#1055=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('strong'),$); +#1056=IFCPROPERTYSET('1gRomAS1L2WguA51ZI0E40',$,'EPset_Annotation',$,(#1055)); +#1057=IFCTYPEPRODUCT('1T5C$$ONTBB8A9a7vv0Gn6',$,'STRONG',$,'IfcAnnotation/LINEWORK',(#1056),$,$); +#1058=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('setout-tag'),$); +#1059=IFCPROPERTYSET('0nF9du8qDAF9aldqjCUsbX',$,'EPset_Annotation',$,(#1058)); +#1060=IFCCARTESIANPOINT((0.,0.,0.)); +#1061=IFCDIRECTION((0.,0.,1.)); +#1062=IFCDIRECTION((1.,0.,0.)); +#1063=IFCAXIS2PLACEMENT3D(#1060,#1061,#1062); +#1069=IFCCARTESIANPOINT((0.,0.,0.)); +#1070=IFCDIRECTION((0.,0.,1.)); +#1071=IFCDIRECTION((1.,0.,0.)); +#1072=IFCAXIS2PLACEMENT3D(#1069,#1070,#1071); +#1073=IFCPLANAREXTENT(1000000.,1000000.); +#1074=IFCTEXTLITERALWITHEXTENT('E ``round({{easting}}, 0.001)``',#1072,.RIGHT.,#1073,'center'); +#1075=IFCCARTESIANPOINT((0.,0.,0.)); +#1076=IFCDIRECTION((0.,0.,1.)); +#1077=IFCDIRECTION((1.,0.,0.)); +#1078=IFCAXIS2PLACEMENT3D(#1075,#1076,#1077); +#1079=IFCPLANAREXTENT(1000000.,1000000.); +#1080=IFCTEXTLITERALWITHEXTENT('N ``round({{northing}}, 0.001)``',#1078,.RIGHT.,#1079,'center'); +#1081=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1074,#1080)); +#1082=IFCREPRESENTATIONMAP(#1063,#1081); +#1083=IFCTYPEPRODUCT('2LmKYrAEr2K8EwJyCAsyc4',$,'SETOUT-TAG',$,'IfcAnnotation/TEXT',(#1059),(#1082),$); +#1084=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('door-tag'),$); +#1085=IFCPROPERTYSET('1MUPGQolnDEgp0NxcMN56E',$,'EPset_Annotation',$,(#1084)); +#1086=IFCCARTESIANPOINT((0.,0.,0.)); +#1087=IFCDIRECTION((0.,0.,1.)); +#1088=IFCDIRECTION((1.,0.,0.)); +#1089=IFCAXIS2PLACEMENT3D(#1086,#1087,#1088); +#1095=IFCCARTESIANPOINT((0.,0.,0.)); +#1096=IFCDIRECTION((0.,0.,1.)); +#1097=IFCDIRECTION((1.,0.,0.)); +#1098=IFCAXIS2PLACEMENT3D(#1095,#1096,#1097); +#1099=IFCPLANAREXTENT(1000000.,1000000.); +#1100=IFCTEXTLITERALWITHEXTENT('{{type.Name}}',#1098,.RIGHT.,#1099,'center'); +#1101=IFCCARTESIANPOINT((0.,0.,0.)); +#1102=IFCDIRECTION((0.,0.,1.)); +#1103=IFCDIRECTION((1.,0.,0.)); +#1104=IFCAXIS2PLACEMENT3D(#1101,#1102,#1103); +#1105=IFCPLANAREXTENT(1000000.,1000000.); +#1106=IFCTEXTLITERALWITHEXTENT('{{Name}}',#1104,.RIGHT.,#1105,'center'); +#1107=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1100,#1106)); +#1108=IFCREPRESENTATIONMAP(#1089,#1107); +#1109=IFCTYPEPRODUCT('1cdhVmqEPF6e13_TFOdlQw',$,'DOOR-TAG',$,'IfcAnnotation/TEXT',(#1085),(#1108),$); +#1110=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('window-tag'),$); +#1111=IFCPROPERTYSET('2X7dAo_1P5ruRnlKA4kIl6',$,'EPset_Annotation',$,(#1110)); +#1112=IFCCARTESIANPOINT((0.,0.,0.)); +#1113=IFCDIRECTION((0.,0.,1.)); +#1114=IFCDIRECTION((1.,0.,0.)); +#1115=IFCAXIS2PLACEMENT3D(#1112,#1113,#1114); +#1121=IFCCARTESIANPOINT((0.,0.,0.)); +#1122=IFCDIRECTION((0.,0.,1.)); +#1123=IFCDIRECTION((1.,0.,0.)); +#1124=IFCAXIS2PLACEMENT3D(#1121,#1122,#1123); +#1125=IFCPLANAREXTENT(1000000.,1000000.); +#1126=IFCTEXTLITERALWITHEXTENT('{{Name}}',#1124,.RIGHT.,#1125,'center'); +#1127=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1126)); +#1128=IFCREPRESENTATIONMAP(#1115,#1127); +#1129=IFCTYPEPRODUCT('0OuDi3gRH2CxW9mrtE0vXw',$,'WINDOW-TAG',$,'IfcAnnotation/TEXT',(#1111),(#1128),$); +#1130=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('space-tag'),$); +#1131=IFCPROPERTYSET('02FAX8dIzAlunWD5ak$6sU',$,'EPset_Annotation',$,(#1130)); +#1132=IFCCARTESIANPOINT((0.,0.,0.)); +#1133=IFCDIRECTION((0.,0.,1.)); +#1134=IFCDIRECTION((1.,0.,0.)); +#1135=IFCAXIS2PLACEMENT3D(#1132,#1133,#1134); +#1141=IFCCARTESIANPOINT((0.,0.,0.)); +#1142=IFCDIRECTION((0.,0.,1.)); +#1143=IFCDIRECTION((1.,0.,0.)); +#1144=IFCAXIS2PLACEMENT3D(#1141,#1142,#1143); +#1145=IFCPLANAREXTENT(1000000.,1000000.); +#1146=IFCTEXTLITERALWITHEXTENT('{{Name}}',#1144,.RIGHT.,#1145,'center'); +#1147=IFCCARTESIANPOINT((0.,0.,0.)); +#1148=IFCDIRECTION((0.,0.,1.)); +#1149=IFCDIRECTION((1.,0.,0.)); +#1150=IFCAXIS2PLACEMENT3D(#1147,#1148,#1149); +#1151=IFCPLANAREXTENT(1000000.,1000000.); +#1152=IFCTEXTLITERALWITHEXTENT('{{Description}}',#1150,.RIGHT.,#1151,'center'); +#1153=IFCCARTESIANPOINT((0.,0.,0.)); +#1154=IFCDIRECTION((0.,0.,1.)); +#1155=IFCDIRECTION((1.,0.,0.)); +#1156=IFCAXIS2PLACEMENT3D(#1153,#1154,#1155); +#1157=IFCPLANAREXTENT(1000000.,1000000.); +#1158=IFCTEXTLITERALWITHEXTENT('``round({{Qto_SpaceBaseQuantities.NetFloorArea}}, 0.01)``',#1156,.RIGHT.,#1157,'center'); +#1159=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1146,#1152,#1158)); +#1160=IFCREPRESENTATIONMAP(#1135,#1159); +#1161=IFCTYPEPRODUCT('3WEV_9wQn6AQTESgjW36PH',$,'SPACE-TAG',$,'IfcAnnotation/TEXT',(#1131),(#1160),$); +#1162=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('rectangle-tag'),$); +#1163=IFCPROPERTYSET('2KPJlGyer0UBmphfR7952k',$,'EPset_Annotation',$,(#1162)); +#1164=IFCCARTESIANPOINT((0.,0.,0.)); +#1165=IFCDIRECTION((0.,0.,1.)); +#1166=IFCDIRECTION((1.,0.,0.)); +#1167=IFCAXIS2PLACEMENT3D(#1164,#1165,#1166); +#1173=IFCCARTESIANPOINT((0.,0.,0.)); +#1174=IFCDIRECTION((0.,0.,1.)); +#1175=IFCDIRECTION((1.,0.,0.)); +#1176=IFCAXIS2PLACEMENT3D(#1173,#1174,#1175); +#1177=IFCPLANAREXTENT(1000000.,1000000.); +#1178=IFCTEXTLITERALWITHEXTENT('{{material.Name}}',#1176,.RIGHT.,#1177,'center'); +#1179=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1178)); +#1180=IFCREPRESENTATIONMAP(#1167,#1179); +#1181=IFCTYPEPRODUCT('1evqvQLLL1zxdsIWqEn0lK',$,'MATERIAL-TAG',$,'IfcAnnotation/TEXT',(#1163),(#1180),$); +#1182=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('capsule-tag'),$); +#1183=IFCPROPERTYSET('15bspgnA9CEuFox6xFjoTL',$,'EPset_Annotation',$,(#1182)); +#1184=IFCCARTESIANPOINT((0.,0.,0.)); +#1185=IFCDIRECTION((0.,0.,1.)); +#1186=IFCDIRECTION((1.,0.,0.)); +#1187=IFCAXIS2PLACEMENT3D(#1184,#1185,#1186); +#1193=IFCCARTESIANPOINT((0.,0.,0.)); +#1194=IFCDIRECTION((0.,0.,1.)); +#1195=IFCDIRECTION((1.,0.,0.)); +#1196=IFCAXIS2PLACEMENT3D(#1193,#1194,#1195); +#1197=IFCPLANAREXTENT(1000000.,1000000.); +#1198=IFCTEXTLITERALWITHEXTENT('{{type.Name}}',#1196,.RIGHT.,#1197,'center'); +#1199=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1198)); +#1200=IFCREPRESENTATIONMAP(#1187,#1199); +#1201=IFCTYPEPRODUCT('3Nem6d4xX87O3deyWDi3AW',$,'TYPE-TAG',$,'IfcAnnotation/TEXT',(#1183),(#1200),$); +#1202=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('capsule-tag'),$); +#1203=IFCPROPERTYSET('1d53tifbv2rwcoFFJosiHf',$,'EPset_Annotation',$,(#1202)); +#1204=IFCCARTESIANPOINT((0.,0.,0.)); +#1205=IFCDIRECTION((0.,0.,1.)); +#1206=IFCDIRECTION((1.,0.,0.)); +#1207=IFCAXIS2PLACEMENT3D(#1204,#1205,#1206); +#1213=IFCCARTESIANPOINT((0.,0.,0.)); +#1214=IFCDIRECTION((0.,0.,1.)); +#1215=IFCDIRECTION((1.,0.,0.)); +#1216=IFCAXIS2PLACEMENT3D(#1213,#1214,#1215); +#1217=IFCPLANAREXTENT(1000000.,1000000.); +#1218=IFCTEXTLITERALWITHEXTENT('{{Name}}',#1216,.RIGHT.,#1217,'center'); +#1219=IFCSHAPEREPRESENTATION(#29,'Annotation','Annotation2D',(#1218)); +#1220=IFCREPRESENTATIONMAP(#1207,#1219); +#1221=IFCTYPEPRODUCT('0klFX9AjnEnPBkdIURv8XD',$,'NAME-TAG',$,'IfcAnnotation/TEXT',(#1203),(#1220),$); +#1222=IFCWALL('3fphKxC81BMwRc46o$1Cqj',$,'Wall_02',$,$,#1336,#1230,$,$); +#1223=IFCRELCONTAINEDINSPATIALSTRUCTURE('2EB4R7ETPDiw0Rbe6drZly',$,$,$,(#1486,#1320),#42); +#1224=IFCRELDEFINESBYTYPE('0jBmsPz3v5HvFHMoyoj824',$,$,$,(#1222,#1249),#71); +#1225=IFCMATERIALLAYERSETUSAGE(#74,.AXIS2.,.POSITIVE.,0.,$); +#1226=IFCRELASSOCIATESMATERIAL('0q0BFzauPCjBOVG64mRZDH',$,$,$,(#1222),#1225); +#1230=IFCPRODUCTDEFINITIONSHAPE($,$,(#1485,#1482)); +#1246=IFCPROPERTYSET('2Tu$MYW3P1TBBc43ffoRi_',$,'EPset_Parametric',$,(#1248)); +#1247=IFCRELDEFINESBYPROPERTIES('2hAhcaDLj0F9gCnfJAmLlK',$,$,$,(#1222),#1246); +#1248=IFCPROPERTYSINGLEVALUE('Engine',$,IFCLABEL('Bonsai.DumbLayer2'),$); +#1249=IFCWALL('3rSTXfFcn4u9mBNbgk9MSB',$,'Wall_01',$,$,#1382,#1255,$,$); +#1250=IFCMATERIALLAYERSETUSAGE(#74,.AXIS2.,.POSITIVE.,0.,$); +#1251=IFCRELASSOCIATESMATERIAL('2l$04b$nXEux0KWqMJPg6c',$,$,$,(#1249),#1250); +#1255=IFCPRODUCTDEFINITIONSHAPE($,$,(#1469,#1466)); +#1271=IFCPROPERTYSET('2_ccgyBVv31Rbk8e0gjsdb',$,'EPset_Parametric',$,(#1273)); +#1272=IFCRELDEFINESBYPROPERTIES('10j1y8fbb4welJJcuVWQJM',$,$,$,(#1249),#1271); +#1273=IFCPROPERTYSINGLEVALUE('Engine',$,IFCLABEL('Bonsai.DumbLayer2'),$); +#1274=IFCRELCONNECTSPATHELEMENTS('0vDxCGayX2zfucYRconjsZ',$,$,'MITRE',$,#1249,#1222,(),(),.ATSTART.,.ATSTART.); +#1320=IFCELEMENTASSEMBLY('33Tq9eGfD3GxapogLdNo3a',$,'Assembly',$,$,#1330,$,$,$,$); +#1326=IFCCARTESIANPOINT((0.,0.,0.)); +#1327=IFCDIRECTION((0.,0.,1.)); +#1328=IFCDIRECTION((1.,0.,0.)); +#1329=IFCAXIS2PLACEMENT3D(#1326,#1327,#1328); +#1330=IFCLOCALPLACEMENT(#65,#1329); +#1331=IFCRELAGGREGATES('3KnbkZNYXBafjneBxz3j6B',$,$,$,#1320,(#1249,#1222)); +#1332=IFCCARTESIANPOINT((0.,0.,0.)); +#1333=IFCDIRECTION((0.,0.,1.)); +#1334=IFCDIRECTION((1.,0.,0.)); +#1335=IFCAXIS2PLACEMENT3D(#1332,#1333,#1334); +#1336=IFCLOCALPLACEMENT(#1330,#1335); +#1378=IFCCARTESIANPOINT((1.39858280630235E-12,0.,0.)); +#1379=IFCDIRECTION((0.,0.,1.)); +#1380=IFCDIRECTION((1.94707183709394E-07,-0.999999999999981,0.)); +#1381=IFCAXIS2PLACEMENT3D(#1378,#1379,#1380); +#1382=IFCLOCALPLACEMENT(#1330,#1381); +#1457=IFCCARTESIANPOINTLIST2D(((-100.000000000002,0.),(1.94707183709398E-05,100.),(5000.,100.),(5000.,0.))); +#1458=IFCINDEXEDPOLYCURVE(#1457,(IFCLINEINDEX((1,2,3,4,1))),$); +#1459=IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,$,#1458); +#1460=IFCCARTESIANPOINT((0.,0.,0.)); +#1461=IFCDIRECTION((0.,0.,1.)); +#1462=IFCDIRECTION((1.,0.,0.)); +#1463=IFCAXIS2PLACEMENT3D(#1460,#1461,#1462); +#1464=IFCDIRECTION((0.,0.,1.)); +#1465=IFCEXTRUDEDAREASOLID(#1459,#1463,#1464,3000.); +#1466=IFCSHAPEREPRESENTATION(#15,'Body','SweptSolid',(#1465)); +#1467=IFCCARTESIANPOINTLIST2D(((0.,0.),(5000.,-0.000119209276817855))); +#1468=IFCINDEXEDPOLYCURVE(#1467,$,$); +#1469=IFCSHAPEREPRESENTATION(#27,'Axis','Curve2D',(#1468)); +#1473=IFCCARTESIANPOINTLIST2D(((100.000000000001,0.),(-1.70865328345826E-05,100.),(5000.,100.),(5000.,0.))); +#1474=IFCINDEXEDPOLYCURVE(#1473,(IFCLINEINDEX((1,2,3,4,1))),$); +#1475=IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,$,#1474); +#1476=IFCCARTESIANPOINT((0.,0.,0.)); +#1477=IFCDIRECTION((0.,0.,1.)); +#1478=IFCDIRECTION((1.,0.,0.)); +#1479=IFCAXIS2PLACEMENT3D(#1476,#1477,#1478); +#1480=IFCDIRECTION((0.,0.,1.)); +#1481=IFCEXTRUDEDAREASOLID(#1475,#1479,#1480,3000.00023841858); +#1482=IFCSHAPEREPRESENTATION(#15,'Body','SweptSolid',(#1481)); +#1483=IFCCARTESIANPOINTLIST2D(((0.,0.),(5000.,0.))); +#1484=IFCINDEXEDPOLYCURVE(#1483,$,$); +#1485=IFCSHAPEREPRESENTATION(#27,'Axis','Curve2D',(#1484)); +#1486=IFCFURNITURE('1Sb706bhrENfbE9hKU48_S',$,'Furniture',$,$,#1512,#1495,$,$); +#1487=IFCRELDEFINESBYTYPE('0Ij9V31nz4fh$peML8rHbD',$,$,$,(#1486),#1030); +#1488=IFCCARTESIANPOINT((0.,0.,0.)); +#1489=IFCDIRECTION((1.,0.,0.)); +#1490=IFCDIRECTION((0.,1.,0.)); +#1491=IFCDIRECTION((0.,0.,1.)); +#1492=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#1489,#1490,#1488,1.,#1491); +#1493=IFCMAPPEDITEM(#1003,#1492); +#1494=IFCSHAPEREPRESENTATION(#15,'Body','MappedRepresentation',(#1493)); +#1495=IFCPRODUCTDEFINITIONSHAPE($,$,(#1494,#1502)); +#1496=IFCCARTESIANPOINT((0.,0.,0.)); +#1497=IFCDIRECTION((1.,0.,0.)); +#1498=IFCDIRECTION((0.,1.,0.)); +#1499=IFCDIRECTION((0.,0.,1.)); +#1500=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#1497,#1498,#1496,1.,#1499); +#1501=IFCMAPPEDITEM(#1029,#1500); +#1502=IFCSHAPEREPRESENTATION(#28,'Body','MappedRepresentation',(#1501)); +#1508=IFCCARTESIANPOINT((3652.57239341736,3233.63018035889,7.45058059692383E-06)); +#1509=IFCDIRECTION((0.,0.,1.)); +#1510=IFCDIRECTION((1.,0.,0.)); +#1511=IFCAXIS2PLACEMENT3D(#1508,#1509,#1510); +#1512=IFCLOCALPLACEMENT(#65,#1511); +ENDSEC; +END-ISO-10303-21; diff --git a/src/bonsai/test/files/wall.ifc b/src/bonsai/test/files/wall.ifc new file mode 100644 index 0000000000..8deb1b23a0 --- /dev/null +++ b/src/bonsai/test/files/wall.ifc @@ -0,0 +1,1141 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition[DesignTransferView]'),'2;1'); +FILE_NAME('wall.ifc','2026-04-28T13:43:46-03:00',(''),(''),'IfcOpenShell 0.0.0','Bonsai 0.8.6-alpha260415-29fe41e','Nobody'); +FILE_SCHEMA(('IFC4')); +ENDSEC; +DATA; +#1=IFCPROJECT('2mlx$RowLAlexGZc1k81wn',$,'My Project',$,$,$,$,(#10,#22),#5); +#2=IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.); +#3=IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#4=IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#5=IFCUNITASSIGNMENT((#3,#4,#2)); +#6=IFCCARTESIANPOINT((0.,0.,0.)); +#7=IFCDIRECTION((0.,0.,1.)); +#8=IFCDIRECTION((1.,0.,0.)); +#9=IFCAXIS2PLACEMENT3D(#6,#7,#8); +#10=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-05,#9,$); +#11=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#10,$,.MODEL_VIEW.,$); +#12=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#10,$,.GRAPH_VIEW.,$); +#13=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Box','Model',*,*,*,*,#10,$,.MODEL_VIEW.,$); +#14=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#10,$,.SECTION_VIEW.,$); +#15=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#10,$,.ELEVATION_VIEW.,$); +#16=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#10,$,.MODEL_VIEW.,$); +#17=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#10,$,.PLAN_VIEW.,$); +#18=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Profile','Model',*,*,*,*,#10,$,.ELEVATION_VIEW.,$); +#19=IFCCARTESIANPOINT((0.,0.)); +#20=IFCDIRECTION((1.,0.)); +#21=IFCAXIS2PLACEMENT2D(#19,#20); +#22=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Plan',2,1.E-05,#21,$); +#23=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Plan',*,*,*,*,#22,$,.GRAPH_VIEW.,$); +#24=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Plan',*,*,*,*,#22,$,.PLAN_VIEW.,$); +#25=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Plan',*,*,*,*,#22,$,.PLAN_VIEW.,$); +#26=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Plan',*,*,*,*,#22,$,.REFLECTED_PLAN_VIEW.,$); +#27=IFCSITE('3YYNP4k15BvRDtut4BImW8',$,'My Site',$,$,#50,$,$,$,$,$,$,$,$); +#33=IFCBUILDING('1_D6$vuJ59HxZaIM$3MXje',$,'My Building',$,$,#56,$,$,$,$,$,$); +#39=IFCBUILDINGSTOREY('3O7OiaeRP4qeCDCmLlk$$S',$,'My Storey',$,$,#62,$,$,$,$); +#45=IFCRELAGGREGATES('1IV3YPHJb4z86yS0WtE5Bx',$,$,$,#1,(#27)); +#46=IFCCARTESIANPOINT((0.,0.,0.)); +#47=IFCDIRECTION((0.,0.,1.)); +#48=IFCDIRECTION((1.,0.,0.)); +#49=IFCAXIS2PLACEMENT3D(#46,#47,#48); +#50=IFCLOCALPLACEMENT($,#49); +#51=IFCRELAGGREGATES('31qCrDZ8PAKQWwQgM8loQ5',$,$,$,#27,(#33)); +#52=IFCCARTESIANPOINT((0.,0.,0.)); +#53=IFCDIRECTION((0.,0.,1.)); +#54=IFCDIRECTION((1.,0.,0.)); +#55=IFCAXIS2PLACEMENT3D(#52,#53,#54); +#56=IFCLOCALPLACEMENT(#50,#55); +#57=IFCRELAGGREGATES('1cHc7TlX18mw1IF7G4Cndd',$,$,$,#33,(#39)); +#58=IFCCARTESIANPOINT((0.,0.,0.)); +#59=IFCDIRECTION((0.,0.,1.)); +#60=IFCDIRECTION((1.,0.,0.)); +#61=IFCAXIS2PLACEMENT3D(#58,#59,#60); +#62=IFCLOCALPLACEMENT(#56,#61); +#63=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('setout-point'),$); +#64=IFCPROPERTYSET('27lmSbeAXC08EWkEq8XdUG',$,'EPset_Annotation',$,(#63)); +#65=IFCTYPEPRODUCT('0UrP0fLdD5OwzwD41aRKao',$,'SETOUT-POINT',$,'IfcAnnotation/SYMBOL',(#64),$,$); +#66=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('control-point'),$); +#67=IFCPROPERTYSET('23aN9DsdjFcfWq8KGSIVoN',$,'EPset_Annotation',$,(#66)); +#68=IFCTYPEPRODUCT('3IQrQOSFP0WfkuLk0ak7_0',$,'CONTROL-POINT',$,'IfcAnnotation/SYMBOL',(#67),$,$); +#69=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('traverse-point'),$); +#70=IFCPROPERTYSET('1j7aFM1Rb9BRuKgUEn1U10',$,'EPset_Annotation',$,(#69)); +#71=IFCTYPEPRODUCT('3wvbaiaIz8agQgDRzt01vz',$,'TRAVERSE-POINT',$,'IfcAnnotation/SYMBOL',(#70),$,$); +#72=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('dashed'),$); +#73=IFCPROPERTYSET('27smSHyiv39vhBRSwfDVCD',$,'EPset_Annotation',$,(#72)); +#74=IFCTYPEPRODUCT('0p5ZTfTnX9ZOywroa7Ffql',$,'DASHED',$,'IfcAnnotation/LINEWORK',(#73),$,$); +#75=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('fine'),$); +#76=IFCPROPERTYSET('0gVTuDcZ5ByRdR3sZnEZUR',$,'EPset_Annotation',$,(#75)); +#77=IFCTYPEPRODUCT('2EvrG9Vuf6t9etgMeWFuJ2',$,'FINE',$,'IfcAnnotation/LINEWORK',(#76),$,$); +#78=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('thin'),$); +#79=IFCPROPERTYSET('0t6c$uCeT9092GYkbm8hDS',$,'EPset_Annotation',$,(#78)); +#80=IFCTYPEPRODUCT('0IeM1ywXn1qhR_6NhB6N4s',$,'THIN',$,'IfcAnnotation/LINEWORK',(#79),$,$); +#81=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('medium'),$); +#82=IFCPROPERTYSET('2uTJ11lF98GeN8pPIf340N',$,'EPset_Annotation',$,(#81)); +#83=IFCTYPEPRODUCT('1jZVbCwrTCGhZdKbH4uqTP',$,'MEDIUM',$,'IfcAnnotation/LINEWORK',(#82),$,$); +#84=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('thick'),$); +#85=IFCPROPERTYSET('2XQxgO16v9vxjvuIJpaPpG',$,'EPset_Annotation',$,(#84)); +#86=IFCTYPEPRODUCT('38zW9E1uH2ae$zat9KrieS',$,'THICK',$,'IfcAnnotation/LINEWORK',(#85),$,$); +#87=IFCPROPERTYSINGLEVALUE('Classes',$,IFCLABEL('strong'),$); +#88=IFCPROPERTYSET('0TcB8Gal96vebTrLWa5CEw',$,'EPset_Annotation',$,(#87)); +#89=IFCTYPEPRODUCT('3G2s7ZLzfDJh5J$2iIzHw9',$,'STRONG',$,'IfcAnnotation/LINEWORK',(#88),$,$); +#90=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('setout-tag'),$); +#91=IFCPROPERTYSET('39$oNFI052cBhtpZCVVLfj',$,'EPset_Annotation',$,(#90)); +#92=IFCCARTESIANPOINT((0.,0.,0.)); +#93=IFCDIRECTION((0.,0.,1.)); +#94=IFCDIRECTION((1.,0.,0.)); +#95=IFCAXIS2PLACEMENT3D(#92,#93,#94); +#101=IFCCARTESIANPOINT((0.,0.,0.)); +#102=IFCDIRECTION((0.,0.,1.)); +#103=IFCDIRECTION((1.,0.,0.)); +#104=IFCAXIS2PLACEMENT3D(#101,#102,#103); +#105=IFCPLANAREXTENT(1000000.,1000000.); +#106=IFCTEXTLITERALWITHEXTENT('E ``round({{easting}}, 0.001)``',#104,.RIGHT.,#105,'center'); +#107=IFCCARTESIANPOINT((0.,0.,0.)); +#108=IFCDIRECTION((0.,0.,1.)); +#109=IFCDIRECTION((1.,0.,0.)); +#110=IFCAXIS2PLACEMENT3D(#107,#108,#109); +#111=IFCPLANAREXTENT(1000000.,1000000.); +#112=IFCTEXTLITERALWITHEXTENT('N ``round({{northing}}, 0.001)``',#110,.RIGHT.,#111,'center'); +#113=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#106,#112)); +#114=IFCREPRESENTATIONMAP(#95,#113); +#115=IFCTYPEPRODUCT('3pq2B$0k52ZOv2bFuRYkxO',$,'SETOUT-TAG',$,'IfcAnnotation/TEXT',(#91),(#114),$); +#116=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('door-tag'),$); +#117=IFCPROPERTYSET('3xUNoLKPT9kB4LMdoctm5k',$,'EPset_Annotation',$,(#116)); +#118=IFCCARTESIANPOINT((0.,0.,0.)); +#119=IFCDIRECTION((0.,0.,1.)); +#120=IFCDIRECTION((1.,0.,0.)); +#121=IFCAXIS2PLACEMENT3D(#118,#119,#120); +#127=IFCCARTESIANPOINT((0.,0.,0.)); +#128=IFCDIRECTION((0.,0.,1.)); +#129=IFCDIRECTION((1.,0.,0.)); +#130=IFCAXIS2PLACEMENT3D(#127,#128,#129); +#131=IFCPLANAREXTENT(1000000.,1000000.); +#132=IFCTEXTLITERALWITHEXTENT('{{type.Name}}',#130,.RIGHT.,#131,'center'); +#133=IFCCARTESIANPOINT((0.,0.,0.)); +#134=IFCDIRECTION((0.,0.,1.)); +#135=IFCDIRECTION((1.,0.,0.)); +#136=IFCAXIS2PLACEMENT3D(#133,#134,#135); +#137=IFCPLANAREXTENT(1000000.,1000000.); +#138=IFCTEXTLITERALWITHEXTENT('{{Name}}',#136,.RIGHT.,#137,'center'); +#139=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#132,#138)); +#140=IFCREPRESENTATIONMAP(#121,#139); +#141=IFCTYPEPRODUCT('11M3ahhrr9NBdB29YEazzw',$,'DOOR-TAG',$,'IfcAnnotation/TEXT',(#117),(#140),$); +#142=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('window-tag'),$); +#143=IFCPROPERTYSET('2MqzSGkXDBcPSolaAQvYO4',$,'EPset_Annotation',$,(#142)); +#144=IFCCARTESIANPOINT((0.,0.,0.)); +#145=IFCDIRECTION((0.,0.,1.)); +#146=IFCDIRECTION((1.,0.,0.)); +#147=IFCAXIS2PLACEMENT3D(#144,#145,#146); +#153=IFCCARTESIANPOINT((0.,0.,0.)); +#154=IFCDIRECTION((0.,0.,1.)); +#155=IFCDIRECTION((1.,0.,0.)); +#156=IFCAXIS2PLACEMENT3D(#153,#154,#155); +#157=IFCPLANAREXTENT(1000000.,1000000.); +#158=IFCTEXTLITERALWITHEXTENT('{{Name}}',#156,.RIGHT.,#157,'center'); +#159=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#158)); +#160=IFCREPRESENTATIONMAP(#147,#159); +#161=IFCTYPEPRODUCT('1eE8Y$BVDFDgG8Fj6d9wiV',$,'WINDOW-TAG',$,'IfcAnnotation/TEXT',(#143),(#160),$); +#162=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('space-tag'),$); +#163=IFCPROPERTYSET('2zKuFdTPj3DhNdQ0U2kd5u',$,'EPset_Annotation',$,(#162)); +#164=IFCCARTESIANPOINT((0.,0.,0.)); +#165=IFCDIRECTION((0.,0.,1.)); +#166=IFCDIRECTION((1.,0.,0.)); +#167=IFCAXIS2PLACEMENT3D(#164,#165,#166); +#173=IFCCARTESIANPOINT((0.,0.,0.)); +#174=IFCDIRECTION((0.,0.,1.)); +#175=IFCDIRECTION((1.,0.,0.)); +#176=IFCAXIS2PLACEMENT3D(#173,#174,#175); +#177=IFCPLANAREXTENT(1000000.,1000000.); +#178=IFCTEXTLITERALWITHEXTENT('{{Name}}',#176,.RIGHT.,#177,'center'); +#179=IFCCARTESIANPOINT((0.,0.,0.)); +#180=IFCDIRECTION((0.,0.,1.)); +#181=IFCDIRECTION((1.,0.,0.)); +#182=IFCAXIS2PLACEMENT3D(#179,#180,#181); +#183=IFCPLANAREXTENT(1000000.,1000000.); +#184=IFCTEXTLITERALWITHEXTENT('{{Description}}',#182,.RIGHT.,#183,'center'); +#185=IFCCARTESIANPOINT((0.,0.,0.)); +#186=IFCDIRECTION((0.,0.,1.)); +#187=IFCDIRECTION((1.,0.,0.)); +#188=IFCAXIS2PLACEMENT3D(#185,#186,#187); +#189=IFCPLANAREXTENT(1000000.,1000000.); +#190=IFCTEXTLITERALWITHEXTENT('``round({{Qto_SpaceBaseQuantities.NetFloorArea}}, 0.01)``',#188,.RIGHT.,#189,'center'); +#191=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#178,#184,#190)); +#192=IFCREPRESENTATIONMAP(#167,#191); +#193=IFCTYPEPRODUCT('0vvfHSiaPBxewA$32C4LdW',$,'SPACE-TAG',$,'IfcAnnotation/TEXT',(#163),(#192),$); +#194=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('rectangle-tag'),$); +#195=IFCPROPERTYSET('1x86VNVk1Drwe5XOj$GZX3',$,'EPset_Annotation',$,(#194)); +#196=IFCCARTESIANPOINT((0.,0.,0.)); +#197=IFCDIRECTION((0.,0.,1.)); +#198=IFCDIRECTION((1.,0.,0.)); +#199=IFCAXIS2PLACEMENT3D(#196,#197,#198); +#205=IFCCARTESIANPOINT((0.,0.,0.)); +#206=IFCDIRECTION((0.,0.,1.)); +#207=IFCDIRECTION((1.,0.,0.)); +#208=IFCAXIS2PLACEMENT3D(#205,#206,#207); +#209=IFCPLANAREXTENT(1000000.,1000000.); +#210=IFCTEXTLITERALWITHEXTENT('{{material.Name}}',#208,.RIGHT.,#209,'center'); +#211=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#210)); +#212=IFCREPRESENTATIONMAP(#199,#211); +#213=IFCTYPEPRODUCT('36lTcd9yT8UBNDejQUNWrq',$,'MATERIAL-TAG',$,'IfcAnnotation/TEXT',(#195),(#212),$); +#214=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('capsule-tag'),$); +#215=IFCPROPERTYSET('3BeqEbDzX0xORamqqSx_kZ',$,'EPset_Annotation',$,(#214)); +#216=IFCCARTESIANPOINT((0.,0.,0.)); +#217=IFCDIRECTION((0.,0.,1.)); +#218=IFCDIRECTION((1.,0.,0.)); +#219=IFCAXIS2PLACEMENT3D(#216,#217,#218); +#225=IFCCARTESIANPOINT((0.,0.,0.)); +#226=IFCDIRECTION((0.,0.,1.)); +#227=IFCDIRECTION((1.,0.,0.)); +#228=IFCAXIS2PLACEMENT3D(#225,#226,#227); +#229=IFCPLANAREXTENT(1000000.,1000000.); +#230=IFCTEXTLITERALWITHEXTENT('{{type.Name}}',#228,.RIGHT.,#229,'center'); +#231=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#230)); +#232=IFCREPRESENTATIONMAP(#219,#231); +#233=IFCTYPEPRODUCT('1rxhEX6I16oPqglXaGZ7Sw',$,'TYPE-TAG',$,'IfcAnnotation/TEXT',(#215),(#232),$); +#234=IFCPROPERTYSINGLEVALUE('Symbol',$,IFCLABEL('capsule-tag'),$); +#235=IFCPROPERTYSET('11L$PtdnX8LfYigzRZ$g0a',$,'EPset_Annotation',$,(#234)); +#236=IFCCARTESIANPOINT((0.,0.,0.)); +#237=IFCDIRECTION((0.,0.,1.)); +#238=IFCDIRECTION((1.,0.,0.)); +#239=IFCAXIS2PLACEMENT3D(#236,#237,#238); +#245=IFCCARTESIANPOINT((0.,0.,0.)); +#246=IFCDIRECTION((0.,0.,1.)); +#247=IFCDIRECTION((1.,0.,0.)); +#248=IFCAXIS2PLACEMENT3D(#245,#246,#247); +#249=IFCPLANAREXTENT(1000000.,1000000.); +#250=IFCTEXTLITERALWITHEXTENT('{{Name}}',#248,.RIGHT.,#249,'center'); +#251=IFCSHAPEREPRESENTATION(#16,'Annotation','Annotation2D',(#250)); +#252=IFCREPRESENTATIONMAP(#239,#251); +#253=IFCTYPEPRODUCT('0sws1hxNb2Og1etXqyoEh1',$,'NAME-TAG',$,'IfcAnnotation/TEXT',(#235),(#252),$); +#254=IFCBEAMTYPE('2E$V5l4b54dxuToJ1A6IHp',$,'B1',$,$,$,$,$,$,.NOTDEFINED.); +#255=IFCRELASSOCIATESMATERIAL('3PUNnY7cj8LhyXbHKVqZnf',$,$,$,(#254),#259); +#256=IFCMATERIAL('Unknown',$,$); +#257=IFCISHAPEPROFILEDEF(.AREA.,'DEMO-I',$,100.,200.,5.,10.,5.,$,$); +#258=IFCMATERIALPROFILE($,$,#256,#257,$,$); +#259=IFCMATERIALPROFILESET($,$,(#258),$); +#260=IFCBEAMTYPE('3qutoZTvP0lvLWNXyjPhPm',$,'B2',$,$,$,$,$,$,.NOTDEFINED.); +#261=IFCRELASSOCIATESMATERIAL('3dGyQf42H2ahch2bSYPPHP',$,$,$,(#260),#264); +#262=IFCCSHAPEPROFILEDEF(.AREA.,'DEMO-C',$,200.,100.,1.5,30.,5.); +#263=IFCMATERIALPROFILE($,$,#256,#262,$,$); +#264=IFCMATERIALPROFILESET($,$,(#263),$); +#265=IFCCOLUMNTYPE('278sjptdDDzgOZseERj390',$,'C1',$,$,$,$,$,$,.NOTDEFINED.); +#266=IFCRELASSOCIATESMATERIAL('1ppYXw39v6kBwi3rrIm4ZE',$,$,$,(#265),#269); +#267=IFCRECTANGLEPROFILEDEF(.AREA.,'500x600',$,500.,600.); +#268=IFCMATERIALPROFILE($,$,#256,#267,$,$); +#269=IFCMATERIALPROFILESET($,$,(#268),$); +#270=IFCCOLUMNTYPE('3aSZOvGmr7jggSNwsq5PJE',$,'C2',$,$,$,$,$,$,.NOTDEFINED.); +#271=IFCRELASSOCIATESMATERIAL('1AtNJPaD14DgINbAjXvbU4',$,$,$,(#270),#274); +#272=IFCCIRCLEHOLLOWPROFILEDEF(.AREA.,'500.0x5.0 CHS',$,250.,5.); +#273=IFCMATERIALPROFILE($,$,#256,#272,$,$); +#274=IFCMATERIALPROFILESET($,$,(#273),$); +#275=IFCCOLUMNTYPE('28iv3Kru12yQ7R7RRwNjvD',$,'C3',$,$,$,$,$,$,.NOTDEFINED.); +#276=IFCRELASSOCIATESMATERIAL('2M_oL$n3j6rBRnOW5RSk87',$,$,$,(#275),#279); +#277=IFCRECTANGLEHOLLOWPROFILEDEF(.AREA.,'150x75x2.0 RHS',$,75.,150.,2.,5.,5.); +#278=IFCMATERIALPROFILE($,$,#256,#277,$,$); +#279=IFCMATERIALPROFILESET($,$,(#278),$); +#280=IFCCOVERINGTYPE('0iLxgfHB9F2hRH2vMcw7Yv',$,'COV10',$,$,$,$,$,$,.NOTDEFINED.); +#281=IFCRELASSOCIATESMATERIAL('0yvFX0zgb9uvJ3ARnf4mfe',$,$,$,(#280),#283); +#282=IFCMATERIALLAYER(#256,10.,$,$,$,$,$); +#283=IFCMATERIALLAYERSET((#282),$,$); +#284=IFCPROPERTYSINGLEVALUE('LayerSetDirection',$,IFCLABEL('AXIS2'),$); +#285=IFCPROPERTYSET('18ICCZ0fjDG9UXMyzrsFBA',$,'EPset_Parametric',$,(#284)); +#286=IFCCOVERINGTYPE('15Riw2WTrAUPwvfLyKXJ2g',$,'COV20',$,$,(#285),$,$,$,.NOTDEFINED.); +#287=IFCRELASSOCIATESMATERIAL('1iAOG6NK9FBxitFtzN9qP5',$,$,$,(#286),#289); +#288=IFCMATERIALLAYER(#256,20.,$,$,$,$,$); +#289=IFCMATERIALLAYERSET((#288),$,$); +#290=IFCPROPERTYSINGLEVALUE('LayerSetDirection',$,IFCLABEL('AXIS3'),$); +#291=IFCPROPERTYSET('3qCbs1tuDCvuOXam5RrA$a',$,'EPset_Parametric',$,(#290)); +#292=IFCCOVERINGTYPE('0gEOtYULD0F9KD9zPoA6cJ',$,'COV30',$,$,(#291),$,$,$,.NOTDEFINED.); +#293=IFCRELASSOCIATESMATERIAL('0xd6dsjf13JA98q9fnAMpQ',$,$,$,(#292),#295); +#294=IFCMATERIALLAYER(#256,30.,$,$,$,$,$); +#295=IFCMATERIALLAYERSET((#294),$,$); +#296=IFCCARTESIANPOINT((0.,0.,0.)); +#297=IFCDIRECTION((0.,0.,1.)); +#298=IFCDIRECTION((1.,0.,0.)); +#299=IFCAXIS2PLACEMENT3D(#296,#297,#298); +#306=IFCCARTESIANPOINTLIST3D(((955.000162124634,0.,2090.00015258789),(955.000162124634,54.9999885261059,2090.00015258789),(970.000028610229,54.9999922513962,2105.00001907349),(0.,99.9999940395355,0.),(970.000028610229,99.9999940395355,2105.00001907349),(39.9999916553497,99.9999940395355,2105.00001907349),(39.9999916553497,54.9999922513962,2105.00001907349),(55.0000071525574,54.9999885261059,2090.00015258789),(55.0000071525574,0.,2090.00015258789),(0.,0.,2145.00021934509),(0.,100.000001490116,2145.00021934509),(44.9999868869781,99.9999940395355,2099.99990463257),(44.9999868869781,59.9999949336052,2099.99990463257),(965.000033378601,59.9999949336052,2099.99990463257),(965.000033378601,99.9999940395355,2099.99990463257),(965.000033378601,99.9999940395355,0.),(965.000033378601,59.9999949336052,0.),(44.9999868869781,59.9999949336052,0.),(44.9999868869781,99.9999940395355,0.),(0.,0.,0.),(55.0000071525574,0.,0.),(55.0000071525574,54.9999922513962,0.),(39.9999916553497,54.9999922513962,0.),(39.9999916553497,99.9999940395355,0.),(1010.00034809113,0.,2145.00021934509),(1010.00034809113,100.000001490116,2145.00021934509),(955.000162124634,0.,0.),(955.000162124634,54.9999885261059,0.),(970.000028610229,54.9999922513962,0.),(970.000028610229,99.9999940395355,0.),(1010.00034809113,0.,0.),(1010.00034809113,100.000001490116,0.))); +#307=IFCINDEXEDPOLYGONALFACE((2,3,29,28)); +#308=IFCINDEXEDPOLYGONALFACE((27,28,29,30,32,31)); +#309=IFCINDEXEDPOLYGONALFACE((7,6,5,3)); +#310=IFCINDEXEDPOLYGONALFACE((8,7,3,2)); +#311=IFCINDEXEDPOLYGONALFACE((23,24,6,7)); +#312=IFCINDEXEDPOLYGONALFACE((21,20,4,24,23,22)); +#313=IFCINDEXEDPOLYGONALFACE((11,10,25,26)); +#314=IFCINDEXEDPOLYGONALFACE((25,1,27,31)); +#315=IFCINDEXEDPOLYGONALFACE((24,4,11,6)); +#316=IFCINDEXEDPOLYGONALFACE((20,21,9,10)); +#317=IFCINDEXEDPOLYGONALFACE((9,8,2,1)); +#318=IFCINDEXEDPOLYGONALFACE((10,9,1,25)); +#319=IFCINDEXEDPOLYGONALFACE((22,23,7,8)); +#320=IFCINDEXEDPOLYGONALFACE((4,20,10,11)); +#321=IFCINDEXEDPOLYGONALFACE((21,22,8,9)); +#322=IFCINDEXEDPOLYGONALFACE((6,11,26,5)); +#323=IFCINDEXEDPOLYGONALFACE((5,26,32,30)); +#324=IFCINDEXEDPOLYGONALFACE((1,2,28,27)); +#325=IFCINDEXEDPOLYGONALFACE((26,25,31,32)); +#326=IFCINDEXEDPOLYGONALFACE((3,5,30,29)); +#327=IFCPOLYGONALFACESET(#306,.T.,(#307,#308,#309,#310,#311,#312,#313,#314,#315,#316,#317,#318,#319,#320,#321,#322,#323,#324,#325,#326),$); +#328=IFCINDEXEDPOLYGONALFACE((17,16,15,14)); +#329=IFCINDEXEDPOLYGONALFACE((12,13,14,15)); +#330=IFCINDEXEDPOLYGONALFACE((16,19,12,15)); +#331=IFCINDEXEDPOLYGONALFACE((19,16,17,18)); +#332=IFCINDEXEDPOLYGONALFACE((19,18,13,12)); +#333=IFCINDEXEDPOLYGONALFACE((18,17,14,13)); +#334=IFCPOLYGONALFACESET(#306,.T.,(#328,#329,#330,#331,#332,#333),$); +#335=IFCSHAPEREPRESENTATION(#11,'Body','Tessellation',(#327,#334)); +#336=IFCREPRESENTATIONMAP(#299,#335); +#337=IFCCARTESIANPOINT((0.,0.,0.)); +#338=IFCDIRECTION((0.,0.,1.)); +#339=IFCDIRECTION((1.,0.,0.)); +#340=IFCAXIS2PLACEMENT3D(#337,#338,#339); +#346=IFCCARTESIANPOINTLIST2D(((964.999914169312,1020.0001001358),(965.000033378601,99.9999940395355),(925.000011920929,99.9999940395355),(924.999952316284,1020.0001001358),(964.999914169312,1020.0001001358),(844.915807247162,1012.12930679321),(726.886332035065,988.651752471924),(612.931072711945,949.969172477722),(504.999756813049,896.743297576904),(404.939234256744,829.885005950928),(314.461469650269,750.538170337677),(235.114604234695,660.060405731201),(168.256282806396,559.999823570251),(115.030474960804,452.068567276001),(76.3478726148605,338.113307952881),(52.8703518211842,220.083817839622),(44.9996180832386,99.999688565731))); +#347=IFCINDEXEDPOLYCURVE(#346,$,$); +#348=IFCCARTESIANPOINTLIST2D(((970.000028610229,54.9999922513962),(955.000162124634,54.9999922513962),(955.000162124634,0.),(1010.00034809113,0.),(1010.00034809113,99.9999940395355),(970.000028610229,99.9999940395355))); +#349=IFCINDEXEDPOLYCURVE(#348,(IFCLINEINDEX((1,2,3,4,5,6,1))),$); +#350=IFCCARTESIANPOINTLIST2D(((0.,0.),(0.,99.9999940395355),(39.9999916553497,99.9999940395355),(39.9999916553497,54.9999922513962),(55.0000071525574,54.9999922513962),(55.0000071525574,0.))); +#351=IFCINDEXEDPOLYCURVE(#350,(IFCLINEINDEX((1,2,3,4,5,6,1))),$); +#352=IFCGEOMETRICCURVESET((#347,#349,#351)); +#353=IFCSHAPEREPRESENTATION(#24,'Body','Annotation2D',(#352)); +#354=IFCREPRESENTATIONMAP(#340,#353); +#355=IFCDOORTYPE('2j0vIBgkH0ERnBCP0cpcCz',$,'DT01',$,$,$,(#336,#354),$,$,.NOTDEFINED.,.NOTDEFINED.,$,$); +#356=IFCSTYLEDITEM(#327,(#359),'Frame'); +#357=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559); +#358=IFCSURFACESTYLESHADING(#357,0.); +#359=IFCSURFACESTYLE('Frame',.BOTH.,(#358)); +#360=IFCSTYLEDITEM(#334,(#363),'Panel'); +#361=IFCCOLOURRGB($,0.184475064277649,0.184475019574165,0.184475019574165); +#362=IFCSURFACESTYLESHADING(#361,0.); +#363=IFCSURFACESTYLE('Panel',.BOTH.,(#362)); +#364=IFCPILETYPE('25MTkMtaH5QeCf$gFbvSSw',$,'P1',$,$,$,$,$,$,.NOTDEFINED.); +#365=IFCRELASSOCIATESMATERIAL('09FXUZCnrFEffxBrtg16gx',$,$,$,(#364),#368); +#366=IFCCIRCLEPROFILEDEF(.AREA.,$,$,300.); +#367=IFCMATERIALPROFILE($,$,#256,#366,$,$); +#368=IFCMATERIALPROFILESET($,$,(#367),$); +#369=IFCRAMPTYPE('2yW1ePlyb8cOR6HdEntpRh',$,'RAM200',$,$,$,$,$,$,.NOTDEFINED.); +#370=IFCRELASSOCIATESMATERIAL('1x9ZyVim19AQtJhfEE06XR',$,$,$,(#369),#372); +#371=IFCMATERIALLAYER(#256,200.,$,$,$,$,$); +#372=IFCMATERIALLAYERSET((#371),$,$); +#373=IFCSLABTYPE('1Akbal7tP5DAPW0ti$Qp30',$,'FLR200',$,$,$,$,$,$,.NOTDEFINED.); +#374=IFCRELASSOCIATESMATERIAL('0jzkXlkBL4HhmQ_FTWW6Cj',$,$,$,(#373),#376); +#375=IFCMATERIALLAYER(#256,200.,$,$,$,$,$); +#376=IFCMATERIALLAYERSET((#375),$,$); +#377=IFCSLABTYPE('0$gpYNi3T08BrxaR67CxgI',$,'FLR300',$,$,$,$,$,$,.NOTDEFINED.); +#378=IFCRELASSOCIATESMATERIAL('3a6kjEM29DleYTlSkA8_DK',$,$,$,(#377),#380); +#379=IFCMATERIALLAYER(#256,300.,$,$,$,$,$); +#380=IFCMATERIALLAYERSET((#379),$,$); +#381=IFCWALLTYPE('2F1k78lI53fwS0rg3rqrRb',$,'WAL50',$,$,$,$,$,$,.NOTDEFINED.); +#382=IFCRELASSOCIATESMATERIAL('0khP_Smdj12f2JrOTRbRKj',$,$,$,(#381),#384); +#383=IFCMATERIALLAYER(#256,50.,$,$,$,$,$); +#384=IFCMATERIALLAYERSET((#383),$,$); +#385=IFCWALLTYPE('3R5onkTtX1IxdCMPoThRaw',$,'WAL100',$,$,$,$,$,$,.NOTDEFINED.); +#386=IFCRELASSOCIATESMATERIAL('0$mXRPCT16nP6Q70XFNvZv',$,$,$,(#385),#388); +#387=IFCMATERIALLAYER(#256,100.,$,$,$,$,$); +#388=IFCMATERIALLAYERSET((#387),$,$); +#389=IFCWALLTYPE('1juanculbDJPqvqT2FCm8m',$,'WAL200',$,$,$,$,$,$,.NOTDEFINED.); +#390=IFCRELASSOCIATESMATERIAL('0FsB2A$frFn9AZW2IG38ny',$,$,$,(#389),#392); +#391=IFCMATERIALLAYER(#256,200.,$,$,$,$,$); +#392=IFCMATERIALLAYERSET((#391),$,$); +#393=IFCWALLTYPE('05UYduR9r1vRxZZgP64Rdw',$,'WAL300',$,$,$,$,$,$,.NOTDEFINED.); +#394=IFCRELASSOCIATESMATERIAL('2FYhYrvmv4SBoZHVWDTTte',$,$,$,(#393),#396); +#395=IFCMATERIALLAYER(#256,300.,$,$,$,$,$); +#396=IFCMATERIALLAYERSET((#395),$,$); +#397=IFCCARTESIANPOINT((0.,0.,0.)); +#398=IFCDIRECTION((0.,0.,1.)); +#399=IFCDIRECTION((1.,0.,0.)); +#400=IFCAXIS2PLACEMENT3D(#397,#398,#399); +#407=IFCCARTESIANPOINTLIST3D(((899.999976158142,0.,1200.00004768372),(899.999976158142,0.,0.),(0.,0.,1200.00004768372),(0.,0.,0.),(99.9999940395355,0.,99.9999940395355),(99.9999940395355,0.,1100.00002384186),(800.000011920929,0.,1100.00002384186),(800.000011920929,0.,99.9999940395355),(99.9999940395355,19.9999995529652,99.9999940395355),(99.9999940395355,19.9999995529652,1100.00002384186),(800.000011920929,19.9999995529652,1100.00002384186),(800.000011920929,19.9999995529652,99.9999940395355),(99.9999940395355,50.0000007450581,99.9999940395355),(99.9999940395355,50.0000007450581,1100.00002384186),(800.000011920929,50.0000007450581,1100.00002384186),(800.000011920929,50.0000007450581,99.9999940395355),(0.,50.0000007450581,0.),(0.,50.0000007450581,1200.00004768372),(899.999976158142,50.0000007450581,1200.00004768372),(899.999976158142,50.0000007450581,0.),(99.9999940395355,29.9999993294477,99.9999940395355),(99.9999940395355,29.9999993294477,1100.00002384186),(800.000011920929,29.9999993294477,1100.00002384186),(800.000011920929,29.9999993294477,99.9999940395355))); +#408=IFCINDEXEDPOLYGONALFACE((13,17,18,14)); +#409=IFCINDEXEDPOLYGONALFACE((5,6,3,4)); +#410=IFCINDEXEDPOLYGONALFACE((7,8,2,1)); +#411=IFCINDEXEDPOLYGONALFACE((6,7,1,3)); +#412=IFCINDEXEDPOLYGONALFACE((8,5,4,2)); +#413=IFCINDEXEDPOLYGONALFACE((15,19,20,16)); +#414=IFCINDEXEDPOLYGONALFACE((14,18,19,15)); +#415=IFCINDEXEDPOLYGONALFACE((16,20,17,13)); +#416=IFCINDEXEDPOLYGONALFACE((4,17,20,2)); +#417=IFCINDEXEDPOLYGONALFACE((2,20,19,1)); +#418=IFCINDEXEDPOLYGONALFACE((8,16,13,5)); +#419=IFCINDEXEDPOLYGONALFACE((7,15,16,8)); +#420=IFCINDEXEDPOLYGONALFACE((1,19,18,3)); +#421=IFCINDEXEDPOLYGONALFACE((3,18,17,4)); +#422=IFCINDEXEDPOLYGONALFACE((6,14,15,7)); +#423=IFCINDEXEDPOLYGONALFACE((5,13,14,6)); +#424=IFCPOLYGONALFACESET(#407,.T.,(#408,#409,#410,#411,#412,#413,#414,#415,#416,#417,#418,#419,#420,#421,#422,#423),$); +#425=IFCINDEXEDPOLYGONALFACE((12,11,10,9)); +#426=IFCINDEXEDPOLYGONALFACE((24,21,22,23)); +#427=IFCINDEXEDPOLYGONALFACE((11,23,22,10)); +#428=IFCINDEXEDPOLYGONALFACE((10,22,21,9)); +#429=IFCINDEXEDPOLYGONALFACE((9,21,24,12)); +#430=IFCINDEXEDPOLYGONALFACE((12,24,23,11)); +#431=IFCPOLYGONALFACESET(#407,.T.,(#425,#426,#427,#428,#429,#430),$); +#432=IFCSHAPEREPRESENTATION(#11,'Body','Tessellation',(#424,#431)); +#433=IFCREPRESENTATIONMAP(#400,#432); +#434=IFCCARTESIANPOINT((0.,0.,0.)); +#435=IFCDIRECTION((0.,0.,1.)); +#436=IFCDIRECTION((1.,0.,0.)); +#437=IFCAXIS2PLACEMENT3D(#434,#435,#436); +#443=IFCCARTESIANPOINTLIST2D(((100.000023841858,20.0000032782555),(800.000011920929,20.0000032782555),(800.000011920929,30.0000011920929),(100.000023841858,30.0000011920929))); +#444=IFCINDEXEDPOLYCURVE(#443,(IFCLINEINDEX((1,2,3,4,1))),$); +#445=IFCCARTESIANPOINTLIST2D(((899.999976158142,50.0000007450581),(800.000011920929,50.0000007450581),(800.000011920929,0.),(899.999976158142,0.))); +#446=IFCINDEXEDPOLYCURVE(#445,(IFCLINEINDEX((1,2,3,4,1))),$); +#447=IFCCARTESIANPOINTLIST2D(((0.,0.),(100.000023841858,0.),(100.000023841858,50.0000007450581),(0.,50.0000007450581))); +#448=IFCINDEXEDPOLYCURVE(#447,(IFCLINEINDEX((1,2,3,4,1))),$); +#449=IFCCARTESIANPOINTLIST2D(((100.000023841858,50.0000007450581),(800.000011920929,50.0000007450581))); +#450=IFCINDEXEDPOLYCURVE(#449,$,$); +#451=IFCCARTESIANPOINTLIST2D(((100.000023841858,0.),(800.000011920929,0.))); +#452=IFCINDEXEDPOLYCURVE(#451,$,$); +#453=IFCGEOMETRICCURVESET((#444,#446,#448,#450,#452)); +#454=IFCSHAPEREPRESENTATION(#24,'Body','Annotation2D',(#453)); +#455=IFCREPRESENTATIONMAP(#437,#454); +#456=IFCWINDOWTYPE('0bK3c4PWL3eOMNwkPN$rlg',$,'WT01',$,$,$,(#433,#455),$,$,.NOTDEFINED.,.NOTDEFINED.,$,$); +#457=IFCSTYLEDITEM(#424,(#359),'Frame'); +#458=IFCSTYLEDITEM(#431,(#461),'Glass'); +#459=IFCCOLOURRGB($,0.800000011920929,1.,1.); +#460=IFCSURFACESTYLESHADING(#459,0.799999997019768); +#461=IFCSURFACESTYLE('Glass',.BOTH.,(#460)); +#462=IFCCARTESIANPOINT((0.,0.,0.)); +#463=IFCDIRECTION((0.,0.,1.)); +#464=IFCDIRECTION((1.,0.,0.)); +#465=IFCAXIS2PLACEMENT3D(#462,#463,#464); +#472=IFCCARTESIANPOINTLIST3D(((-75.7642686367035,-12.1694896370173,220.662087202072),(-105.255022644997,-14.1069469973445,230.906546115875),(-164.038479328156,-96.2571799755096,263.201057910919),(-14.9683114141226,-43.4482358396053,228.664547204971),(-42.6693223416805,-12.0228659361601,222.334340214729),(78.8992568850517,-76.7349451780319,173.714026808739),(95.3715369105339,-40.9212671220303,169.86283659935),(-71.9772353768349,-94.9608311057091,171.763256192207),(73.5535696148872,-46.2111458182335,199.328601360321),(-160.245850682259,39.7466160356998,298.533588647842),(106.730677187443,-12.4975387006998,138.676866889),(13.9651391655207,-42.3045344650745,229.461222887039),(96.7235639691353,-14.4418459385633,168.111309409142),(-219.927728176117,-41.4205342531204,239.053592085838),(-198.184996843338,-74.2136090993881,172.668352723122),(-162.167191505432,-43.4498824179173,289.568781852722),(-189.809292554855,-71.6947764158249,281.713783740997),(15.2298724278808,-84.9794447422028,205.268412828445),(-123.513199388981,-45.2961064875126,264.716774225235),(-188.629180192947,-119.135543704033,233.101561665535),(-13.0218090489507,-65.1145428419113,222.954735159874),(-196.876853704453,11.9782146066427,138.698890805244),(43.1601963937283,-45.1620146632195,221.45189344883),(-216.075524687767,-16.599427908659,204.968154430389),(-58.2821778953075,22.4160328507423,331.800371408463),(-190.823614597321,-102.445237338543,260.164886713028),(-43.1380830705166,-99.1964489221573,176.975786685944),(-52.2686094045639,49.4366958737373,351.232975721359),(-89.5938724279404,32.2130136191845,318.689584732056),(13.082567602396,-66.8555349111557,223.062723875046),(-106.145963072777,-41.5130592882633,228.82467508316),(44.8657646775246,-77.6780471205711,203.667193651199),(-103.71295362711,-3.66749544627964,314.385384321213),(-213.60756456852,-16.9711355119944,233.581200242043),(-138.989388942719,-74.9303176999092,265.050023794174),(105.769321322441,-41.5658876299858,138.697892427444),(99.2072820663452,-67.7607133984566,138.679757714272),(-135.680645704269,-40.2409471571445,287.896603345871),(-174.96183514595,-42.5181090831757,74.3281096220016),(-161.954745650291,-12.9314502701163,289.540559053421),(-208.628505468369,-103.418782353401,201.527774333954),(64.0031322836876,-67.7034556865692,197.900995612144),(100.172616541386,12.6537960022688,138.708665966988),(-168.615952134132,48.2185557484627,307.22576379776),(-14.0691194683313,-84.7146064043045,205.532997846603),(70.2492073178291,-102.0467877388,138.582319021225),(-181.213811039925,99.2056727409363,328.065633773804),(-15.2021609246731,-112.156376242638,18.3885656297207),(16.2124074995518,-111.216500401497,21.827794611454),(-133.747041225433,-15.9911345690489,290.624916553497),(-216.561943292618,-70.9330290555954,202.728658914566),(-42.7242144942284,-42.6300838589668,222.017183899879),(-159.124106168747,-73.8818794488907,283.847242593765),(-103.956542909145,15.4779236763716,320.181280374527),(-136.982098221779,-102.321907877922,19.4435473531485),(-183.684900403023,39.6271869540215,295.159220695496),(-107.928916811943,-10.153891518712,291.135489940643),(-103.886745870113,-101.836994290352,18.0104468017817),(-46.1161360144615,-119.219377636909,138.967230916023),(-46.1340732872486,-61.420276761055,215.00451862812),(-211.329713463783,-16.9732719659805,138.692498207092),(-165.825873613358,17.0033983886242,294.365167617798),(-162.926822900772,16.7535953223705,259.086668491364),(44.605728238821,-98.5531806945801,171.382486820221),(-83.4082290530205,3.35463741794229,315.553486347198),(-159.71240401268,24.7225016355515,197.611734271049),(-164.89240527153,105.032727122307,322.820842266083),(-215.148985385895,-46.2404675781727,266.269713640213),(74.162483215332,41.4574705064297,138.786911964417),(14.2031144350767,-105.447888374329,170.478105545044),(14.1690038144588,-13.1895141676068,229.208543896675),(43.3205515146255,-101.634204387665,17.8499221801758),(-194.831639528275,8.55887122452259,198.67131114006),(-190.071240067482,8.37886054068804,263.859361410141),(14.6396514028311,50.3562577068806,171.330958604813),(-46.6328002512455,-78.9417400956154,203.323245048523),(-14.2267476767302,-15.7651714980602,228.64143550396),(-214.272990822792,-70.0500085949898,258.544147014618),(-18.7377445399761,23.4869290143251,211.539566516876),(-169.090524315834,130.419373512268,343.455374240875),(-73.0840340256691,-58.5213899612427,211.252138018608),(-211.533859372139,-42.9056100547314,138.715773820877),(-73.9177912473679,15.4376216232777,210.008263587952),(-73.77789914608,-73.5882744193077,200.627535581589),(-186.267927289009,-121.167339384556,205.986142158508),(89.2870724201202,16.3372419774532,167.569145560265),(-163.796290755272,38.7952998280525,138.641089200974),(-197.594255208969,-74.69642162323,138.668864965439),(-157.580107450485,132.616892457008,328.512966632843),(-73.5077708959579,39.3004417419434,326.341509819031),(-133.432641625404,-80.0390690565109,240.147277712822),(-161.642774939537,-107.512913644314,235.317841172218),(-103.187024593353,15.1489116251469,293.316811323166),(-131.257891654968,-96.2524563074112,88.3080363273621),(-97.7480411529541,54.0151223540306,138.882651925087),(-15.323237515986,-128.71652841568,138.334348797798),(102.820813655853,-72.0862969756126,78.2168358564377),(69.1742300987244,9.61552746593952,196.848139166832),(-78.4864947199821,-104.707300662994,24.4421008974314),(-129.387423396111,-83.7726294994354,201.711267232895),(100.28512775898,14.7631969302893,106.750056147575),(72.5274235010147,-73.3503252267838,16.2904672324657),(90.7945036888123,-63.1996393203735,166.820541024208),(-68.5850381851196,68.8069462776184,138.255223631859),(-43.0277064442635,-107.757613062859,22.122398018837),(102.449595928192,-65.0743395090103,27.8087817132473),(-12.3228346928954,-128.916323184967,51.6869872808456),(13.3168455213308,-126.367673277855,49.7013293206692),(-211.436733603477,-42.5778105854988,171.008050441742),(-135.128378868103,-73.7440511584282,28.781833127141),(-71.3493376970291,-97.4928066134453,48.680767416954),(-14.4545361399651,-107.40352421999,169.533520936966),(-52.0200654864311,-106.458351016045,46.8626022338867),(-38.3422300219536,-121.899470686913,53.7898242473602),(-135.303497314453,4.72360569983721,269.406676292419),(-222.012773156166,-43.5851588845253,201.951056718826),(-150.152832269669,70.6916153430939,296.226799488068),(-205.232128500938,-53.0128739774227,172.492980957031),(81.5067514777184,-84.2671692371368,46.3023483753204),(101.917430758476,-74.4422674179077,51.1590167880058),(-104.162633419037,-76.9466981291771,197.300210595131),(-165.175527334213,100.392691791058,295.828104019165),(62.4474883079529,-91.4158597588539,172.223627567291),(-69.6270391345024,37.1879562735558,345.104366540909),(-129.096910357475,-71.5842396020889,53.2362163066864),(-102.229714393616,-91.8472409248352,50.0270053744316),(32.8243598341942,-62.8630220890045,219.847500324249),(-92.9397568106651,-59.8123446106911,212.814390659332),(-140.351414680481,-65.1696026325226,281.688511371613),(-29.9176927655935,64.6412074565887,345.614969730377),(-210.334226489067,-19.161444157362,170.468419790268),(-189.835593104362,-14.7899463772774,284.663945436478),(-70.6062465906143,-35.3134833276272,219.783633947372),(-196.250692009926,-41.9037826359272,286.000579595566),(-189.289301633835,15.417193993926,167.268991470337),(-165.491297841072,119.253136217594,309.156060218811),(-188.711583614349,-42.2543436288834,85.7931450009346),(-137.549817562103,-17.5594426691532,48.555850982666),(-43.9321398735046,18.8035927712917,209.587976336479),(-166.142821311951,43.8390895724297,269.286632537842),(-100.659042596817,21.2050415575504,210.695147514343),(-165.524810552597,68.1574642658234,275.103896856308),(-131.917878985405,-43.2314537465572,46.9778589904308),(-39.3056124448776,-127.956256270409,80.5243328213692),(-14.8295955732465,-134.464859962463,78.124076128006),(15.6515818089247,-132.012516260147,77.5675550103188),(128.680378198624,-63.8554841279984,48.6980155110359),(11.726126074791,-126.89021229744,138.521879911423),(-104.669205844402,-97.3712056875229,78.6209478974342),(-72.2803771495819,-99.4613841176033,78.2437026500702),(-90.0976955890656,28.9249792695045,304.527103900909),(-131.665915250778,-80.5337652564049,72.9337483644485),(-178.88680100441,12.7522293478251,288.278430700302),(-131.906762719154,21.6084867715836,211.986422538757),(43.8910871744156,44.6652211248875,170.035198330879),(126.842275261879,-62.0891898870468,72.0244571566582),(-181.458547711372,72.0020085573196,305.15855550766),(-105.359517037868,10.6867477297783,222.205132246017),(-75.5681917071342,-105.624243617058,107.75239020586),(-130.771055817604,43.6740666627884,171.749204397202),(-133.024662733078,49.973726272583,138.679206371307),(-116.55567586422,-16.352504491806,262.825727462769),(-192.813113331795,9.62049700319767,228.011801838875),(-99.5994955301285,46.3632792234421,169.919461011887),(-15.3328543528914,77.56557315588,138.280719518661),(-14.9811441078782,54.4508099555969,170.514196157455),(-77.7326822280884,18.9591310918331,297.642737627029),(-42.9378487169743,52.6389256119728,171.193689107895),(-210.668057203293,-93.4961810708046,245.899826288223),(-162.400558590889,19.8477655649185,223.333954811096),(112.556174397469,-41.5905937552452,87.884321808815),(-98.4991043806076,34.1813936829567,196.81504368782),(-125.417664647102,9.07643139362335,292.186677455902),(12.7286352217197,71.5995132923126,138.794869184494),(-184.464573860168,-63.567191362381,91.7578190565109),(-159.845903515816,34.9735803902149,277.037382125854),(-163.954228162766,-73.273241519928,79.649306833744),(-130.220845341682,47.9081235826015,111.017473042011),(-105.627626180649,-103.251308202744,104.907594621181),(-44.7412990033627,-130.966305732727,105.820834636688),(-14.5897325128317,-137.667417526245,107.010833919048),(17.7259147167206,-133.680522441864,110.51332205534),(-204.10780608654,-15.498636290431,265.768945217133),(-163.662612438202,-96.3144749403,108.248025178909),(-133.774682879448,-102.946348488331,108.776144683361),(-152.653515338898,-93.793697655201,11.2244309857488),(-169.374197721481,76.9077241420746,315.95915555954),(-153.37011218071,49.5448186993599,289.855599403381),(-148.65180850029,93.5175195336342,306.516766548157),(-163.774311542511,-100.279614329338,138.708546757698),(-114.786863327026,-34.9755696952343,251.059830188751),(43.5214228928089,-123.003117740154,107.089169323444),(12.2568001970649,23.4032459557056,212.896287441254),(-132.915586233139,-105.148307979107,138.666361570358),(-103.796437382698,-104.18801009655,138.67013156414),(-72.1595510840416,-105.9859842062,138.681977987289),(41.2953048944473,-12.3581402003765,221.496060490608),(-69.7300583124161,50.7166534662247,170.578330755234),(44.1036224365234,-114.852353930473,138.935402035713),(-12.8488391637802,38.8977639377117,196.252673864365),(-124.916173517704,-6.59546442329884,306.106418371201),(-218.161851167679,-71.009561419487,230.814844369888),(-163.197606801987,-97.3011329770088,173.606932163239),(-106.259688735008,-96.0564464330673,167.294099926949),(-134.439319372177,-99.6981337666512,164.969086647034),(-160.570159554482,-110.724151134491,202.919006347656),(-120.365753769875,-5.49432123079896,253.050655126572),(-133.883744478226,10.6024611741304,233.26064646244),(-36.5464128553867,62.771737575531,351.498425006866),(-69.8662772774696,35.7129909098148,305.281817913055),(-135.447904467583,-87.4549821019173,184.239640831947),(-112.891294062138,6.57996907830238,271.908432245255),(-49.9069318175316,49.8133301734924,325.594484806061),(-135.738432407379,-100.006818771362,-7.45058059692383E-06),(12.3523958027363,-101.531967520714,-7.45058059692383E-06),(-102.930329740047,-98.7276136875153,-7.45058059692383E-06),(-158.383101224899,35.3976972401142,167.762398719788),(58.5155189037323,-88.7269079685211,16.9257298111916),(-202.236160635948,-44.0891794860363,107.780121266842),(126.52799487114,-42.4845181405544,31.7913927137852),(44.5115864276886,-111.490845680237,45.2388003468513),(17.8857706487179,35.9265469014645,199.328750371933),(68.5334727168083,-97.8689268231392,53.3365905284882),(138.488471508026,-43.2419404387474,49.3728704750538),(40.6565591692924,62.880277633667,138.536900281906),(87.1811881661415,-87.0387107133865,138.694822788239),(-50.5233928561211,30.0182458013296,313.426643610001),(43.5324311256409,-119.963906705379,79.2121887207031),(72.3142325878143,-100.660108029842,80.1471099257469),(88.0676060914993,-86.207315325737,78.484445810318),(136.276960372925,-40.5644066631794,78.633114695549),(73.5301449894905,46.2804175913334,105.18267005682),(-180.783584713936,120.272636413574,335.98318696022),(-155.802026391029,-42.164009064436,62.2472763061523),(-192.451253533363,-73.2510983943939,112.686090171337),(31.3579067587852,24.0139346569777,208.784699440002),(72.8883668780327,-103.513494133949,107.350297272205),(88.5002017021179,-88.5679498314857,105.739302933216),(100.790202617645,-71.3259652256966,106.83286935091),(109.439946711063,-42.6978133618832,107.300646603107),(-188.64569067955,-16.7884975671768,86.7345333099365),(-70.9428116679192,35.2016389369965,193.65206360817),(-35.7190407812595,61.5072995424271,335.724234580994),(44.7911284863949,14.4118629395962,-7.45058059692383E-06),(36.9860865175724,36.9828194379807,-7.45058059692383E-06),(46.1129434406757,-74.8821049928665,-7.45058059692383E-06),(104.031659662724,-13.5611081495881,14.8804550990462),(98.6066535115242,6.6530667245388,27.1508432924747),(103.960558772087,-42.0542061328888,15.0693515315652),(121.874935925007,-14.7962821647525,28.2622296363115),(69.6230307221413,34.0555869042873,168.976783752441),(72.9203075170517,15.480482019484,22.6278305053711),(-44.5376336574554,74.1409137845039,139.188349246979),(46.685803681612,46.0076108574867,19.2816369235516),(132.462680339813,-14.7683853283525,79.218864440918),(123.972199857235,5.19884005188942,47.1794344484806),(134.83801484108,-13.5693158954382,47.7543026208878),(101.557418704033,15.0842368602753,50.0984787940979),(-151.446789503098,125.798091292381,318.272113800049),(82.6703608036041,23.927254602313,46.4257299900055),(69.3408101797104,43.5765013098717,50.0893704593182),(-42.0871675014496,38.0131863057613,193.471923470497),(-97.1032008528709,61.6641864180565,-7.45058059692383E-06),(-13.0963791161776,64.698226749897,19.7515171021223),(-157.119512557983,8.03167372941971,-7.45058059692383E-06),(113.602519035339,-13.2037419825792,87.9008769989014),(-69.912314414978,66.078893840313,19.1369466483593),(38.9328189194202,35.1467467844486,194.373697042465),(76.8988505005836,42.0413166284561,78.8332372903824),(101.57422721386,13.4498169645667,77.3250162601471),(123.080961406231,3.95354814827442,69.4246292114258),(-211.960434913635,-102.200835943222,224.356546998024),(110.181555151939,-13.6255938559771,109.196342527866),(-102.282598614693,41.4383597671986,19.612405449152),(-172.445297241211,115.39913713932,340.771019458771),(-181.048646569252,112.369157373905,342.96378493309),(72.5264996290207,-15.2853392064571,200.319215655327),(-183.978870511055,70.9394812583923,317.676812410355),(-153.028383851051,-38.4657420217991,-7.45058059692383E-06),(-154.637187719345,-69.1222250461578,-7.45058059692383E-06),(-152.765303850174,-73.8510563969612,15.262059867382),(-153.248697519302,-91.9284746050835,-7.45058059692383E-06),(-161.92090511322,-14.5302480086684,-7.45058059692383E-06),(-161.076262593269,-14.9271814152598,17.3035766929388),(-139.386385679245,-48.0194091796875,20.1432537287474),(-154.07682955265,-33.6258858442307,15.4564278200269),(-141.747921705246,-15.8547051250935,28.8874395191669),(-56.3743449747562,-108.996540307999,73.7379342317581),(-46.1691729724407,89.0766233205795,110.146202147007),(-14.6415047347546,51.2426868081093,-7.45058059692383E-06),(-156.508177518845,8.72325897216797,12.7747664228082),(-93.2494476437569,62.2886717319489,15.7215017825365),(-134.241998195648,18.0515833199024,22.0324043184519),(-75.4619538784027,45.5531552433968,50.9162880480289),(-103.701874613762,27.3517612367868,51.7874732613564),(-131.066977977753,11.5249017253518,52.4038933217525),(-62.931016087532,69.2232176661491,53.6416172981262),(-132.335588335991,32.2872921824455,197.51612842083),(-45.2888980507851,76.0203972458839,47.2172982990742),(-163.926124572754,14.2420912161469,82.3174566030502),(-174.691706895828,-13.5900285094976,73.6509189009666),(-48.6402213573456,84.9898308515549,78.8175389170647),(-68.9510703086853,70.2485665678978,78.4279331564903),(-81.0153111815453,49.1584502160549,74.8984813690186),(-42.9749675095081,61.7619827389717,-7.45058059692383E-06),(34.9937379360199,6.42204098403454,219.141826033592),(-202.323064208031,-12.2631303966045,109.208643436432),(-188.646167516708,14.8954978212714,108.683586120605),(-74.4052901864052,73.5662579536438,106.222227215767),(-161.729156970978,38.1991006433964,108.166508376598),(-104.008600115776,45.3929454088211,-7.45058059692383E-06),(38.8389863073826,70.2219158411026,109.72835123539),(-41.2575826048851,68.8836574554443,20.4634200781584),(-132.600158452988,16.2683837115765,-7.45058059692383E-06),(41.9384241104126,64.3723532557487,48.7342029809952),(-23.0755694210529,90.2970731258392,106.796741485596),(12.2685618698597,50.3091886639595,-7.45058059692383E-06),(42.0029424130917,68.0971890687943,78.9963230490685),(-13.2175851613283,6.25489093363285,222.308561205864),(14.6723045036197,7.23757036030293,223.271667957306),(72.0149055123329,-12.0490025728941,2.31547281146049),(13.688700273633,64.2379224300385,26.2222941964865),(33.619936555624,59.9825419485569,30.1631242036819),(15.6846102327108,72.6122707128525,49.7567467391491),(-13.9973452314734,76.6579210758209,47.4896989762783),(-16.6601836681366,85.7705846428871,79.0435597300529),(12.7416122704744,78.7845030426979,77.6184424757957),(-137.325063347816,22.2998633980751,70.9470063447952),(-103.061355650425,39.2319709062576,82.869827747345),(-133.015736937523,38.7391112744808,90.4415026307106),(-151.931047439575,32.1191623806953,87.8717452287674),(12.5869233161211,80.6632563471794,105.742789804935),(-99.5742082595825,49.370177090168,106.232292950153),(-74.6603757143021,65.6085163354874,-7.45058059692383E-06),(12.2953318059444,17.735980451107,-7.45058059692383E-06),(-14.6934473887086,26.2711010873318,-7.45058059692383E-06),(-42.9374538362026,29.8651698976755,-7.45058059692383E-06),(-103.215932846069,13.7835666537285,-7.45058059692383E-06),(44.4422401487827,-12.9836350679398,-7.45058059692383E-06),(-74.6518895030022,31.6607765853405,-7.45058059692383E-06),(12.3018361628056,-12.7876792103052,-7.45058059692383E-06),(-14.7215090692043,-13.3242877200246,-7.45058059692383E-06),(-101.430043578148,-14.7481001913548,-7.45058059692383E-06),(-42.9213680326939,-15.1002155616879,-7.45058059692383E-06),(-132.630944252014,-13.4387537837029,-7.45058059692383E-06),(-74.6475011110306,-11.1579261720181,-7.45058059692383E-06),(46.1949594318867,-48.3818538486958,-7.45058059692383E-06),(12.3028568923473,-43.1565642356873,-7.45058059692383E-06),(67.6943361759186,-43.9984127879143,2.13921279646456),(-14.7214606404305,-41.9304519891739,-7.45058059692383E-06),(-42.9213680326939,-42.6230616867542,-7.45058059692383E-06),(-134.391859173775,-42.0995727181435,-7.45058059692383E-06),(12.3003236949444,-71.4240521192551,-7.45058059692383E-06),(-14.7217661142349,-71.9940662384033,-7.45058059692383E-06),(-74.6477097272873,-69.8381289839745,-7.45058059692383E-06),(-42.9213680326939,-72.1928924322128,-7.45058059692383E-06),(-101.144231855869,-71.8697011470795,-7.45058059692383E-06),(34.7950644791126,-96.686989068985,-7.45058059692383E-06),(-132.067084312439,-72.0017328858376,-7.45058059692383E-06),(-159.548789262772,-12.5050684437156,61.8688985705376),(-16.9071108102798,-107.485927641392,-7.45058059692383E-06),(-74.6394321322441,-103.576719760895,-7.45058059692383E-06),(-42.8757518529892,-105.996340513229,-7.45058059692383E-06),(-74.6474862098694,-41.8127365410328,-7.45058059692383E-06),(-101.288944482803,-45.6511229276657,-7.45058059692383E-06),(61.871238052845,24.5271548628807,191.577181220055),(-47.0216795802116,41.4715930819511,344.332307577133),(-35.1001992821693,58.2603961229324,352.131396532059),(-43.320570141077,42.2725304961205,325.726985931396),(-33.2878455519676,56.865319609642,334.871053695679),(-78.2285928726196,10.980136692524,334.277510643005),(-61.2197890877724,18.5103937983513,307.83212184906),(-87.6919776201248,26.8637835979462,333.815038204193),(-75.0949084758759,-1.58989988267422,216.51217341423),(-43.2584583759308,0.724630663171411,217.384174466133))); +#473=IFCINDEXEDPOLYGONALFACE((187,278,44)); +#474=IFCINDEXEDPOLYGONALFACE((21,52,60)); +#475=IFCINDEXEDPOLYGONALFACE((91,100,31)); +#476=IFCINDEXEDPOLYGONALFACE((162,19,191)); +#477=IFCINDEXEDPOLYGONALFACE((288,180,159)); +#478=IFCINDEXEDPOLYGONALFACE((241,219,307)); +#479=IFCINDEXEDPOLYGONALFACE((54,93,173)); +#480=IFCINDEXEDPOLYGONALFACE((60,45,21)); +#481=IFCINDEXEDPOLYGONALFACE((58,110,55)); +#482=IFCINDEXEDPOLYGONALFACE((64,18,70)); +#483=IFCINDEXEDPOLYGONALFACE((2,207,162)); +#484=IFCINDEXEDPOLYGONALFACE((10,176,188)); +#485=IFCINDEXEDPOLYGONALFACE((105,114,113)); +#486=IFCINDEXEDPOLYGONALFACE((220,106,249)); +#487=IFCINDEXEDPOLYGONALFACE((252,321,244)); +#488=IFCINDEXEDPOLYGONALFACE((162,57,19)); +#489=IFCINDEXEDPOLYGONALFACE((224,147,220)); +#490=IFCINDEXEDPOLYGONALFACE((90,373,124)); +#491=IFCINDEXEDPOLYGONALFACE((70,199,64)); +#492=IFCINDEXEDPOLYGONALFACE((256,248,258)); +#493=IFCINDEXEDPOLYGONALFACE((115,212,207)); +#494=IFCINDEXEDPOLYGONALFACE((103,36,7)); +#495=IFCINDEXEDPOLYGONALFACE((71,306,320)); +#496=IFCINDEXEDPOLYGONALFACE((297,267,294)); +#497=IFCINDEXEDPOLYGONALFACE((57,50,19)); +#498=IFCINDEXEDPOLYGONALFACE((117,44,188)); +#499=IFCINDEXEDPOLYGONALFACE((62,56,153)); +#500=IFCINDEXEDPOLYGONALFACE((106,147,120)); +#501=IFCINDEXEDPOLYGONALFACE((254,244,245)); +#502=IFCINDEXEDPOLYGONALFACE((208,207,2)); +#503=IFCINDEXEDPOLYGONALFACE((256,257,250)); +#504=IFCINDEXEDPOLYGONALFACE((203,205,211)); +#505=IFCINDEXEDPOLYGONALFACE((56,278,157)); +#506=IFCINDEXEDPOLYGONALFACE((103,7,9)); +#507=IFCINDEXEDPOLYGONALFACE((63,140,176)); +#508=IFCINDEXEDPOLYGONALFACE((15,109,118)); +#509=IFCINDEXEDPOLYGONALFACE((59,159,180)); +#510=IFCINDEXEDPOLYGONALFACE((158,154,208)); +#511=IFCINDEXEDPOLYGONALFACE((300,241,308)); +#512=IFCINDEXEDPOLYGONALFACE((23,32,42)); +#513=IFCINDEXEDPOLYGONALFACE((44,278,56)); +#514=IFCINDEXEDPOLYGONALFACE((189,259,67)); +#515=IFCINDEXEDPOLYGONALFACE((309,304,333)); +#516=IFCINDEXEDPOLYGONALFACE((136,89,259)); +#517=IFCINDEXEDPOLYGONALFACE((31,191,19)); +#518=IFCINDEXEDPOLYGONALFACE((295,304,294)); +#519=IFCINDEXEDPOLYGONALFACE((50,38,19)); +#520=IFCINDEXEDPOLYGONALFACE((44,62,10)); +#521=IFCINDEXEDPOLYGONALFACE((369,25,227)); +#522=IFCINDEXEDPOLYGONALFACE((136,47,233)); +#523=IFCINDEXEDPOLYGONALFACE((33,54,201)); +#524=IFCINDEXEDPOLYGONALFACE((333,304,329)); +#525=IFCINDEXEDPOLYGONALFACE((281,110,285)); +#526=IFCINDEXEDPOLYGONALFACE((275,80,276)); +#527=IFCINDEXEDPOLYGONALFACE((119,106,120)); +#528=IFCINDEXEDPOLYGONALFACE((276,80,233)); +#529=IFCINDEXEDPOLYGONALFACE((232,318,312)); +#530=IFCINDEXEDPOLYGONALFACE((208,63,115)); +#531=IFCINDEXEDPOLYGONALFACE((150,288,159)); +#532=IFCINDEXEDPOLYGONALFACE((286,287,284)); +#533=IFCINDEXEDPOLYGONALFACE((286,285,287)); +#534=IFCINDEXEDPOLYGONALFACE((285,286,279)); +#535=IFCINDEXEDPOLYGONALFACE((239,171,240)); +#536=IFCINDEXEDPOLYGONALFACE((233,47,276)); +#537=IFCINDEXEDPOLYGONALFACE((124,213,90)); +#538=IFCINDEXEDPOLYGONALFACE((157,278,47)); +#539=IFCINDEXEDPOLYGONALFACE((187,47,157)); +#540=IFCINDEXEDPOLYGONALFACE((268,75,222)); +#541=IFCINDEXEDPOLYGONALFACE((101,269,232)); +#542=IFCINDEXEDPOLYGONALFACE((277,7,13)); +#543=IFCINDEXEDPOLYGONALFACE((140,63,74)); +#544=IFCINDEXEDPOLYGONALFACE((140,74,56)); +#545=IFCINDEXEDPOLYGONALFACE((74,153,56)); +#546=IFCINDEXEDPOLYGONALFACE((57,201,50)); +#547=IFCINDEXEDPOLYGONALFACE((320,236,193)); +#548=IFCINDEXEDPOLYGONALFACE((222,236,268)); +#549=IFCINDEXEDPOLYGONALFACE((173,50,201)); +#550=IFCINDEXEDPOLYGONALFACE((299,267,297)); +#551=IFCINDEXEDPOLYGONALFACE((162,212,57)); +#552=IFCINDEXEDPOLYGONALFACE((208,115,207)); +#553=IFCINDEXEDPOLYGONALFACE((267,292,274)); +#554=IFCINDEXEDPOLYGONALFACE((98,197,277)); +#555=IFCINDEXEDPOLYGONALFACE((295,328,329)); +#556=IFCINDEXEDPOLYGONALFACE((158,208,2)); +#557=IFCINDEXEDPOLYGONALFACE((201,57,33)); +#558=IFCINDEXEDPOLYGONALFACE((187,47,278)); +#559=IFCINDEXEDPOLYGONALFACE((241,307,308)); +#560=IFCINDEXEDPOLYGONALFACE((335,317,245)); +#561=IFCINDEXEDPOLYGONALFACE((328,330,329)); +#562=IFCINDEXEDPOLYGONALFACE((84,128,121)); +#563=IFCINDEXEDPOLYGONALFACE((331,330,328)); +#564=IFCINDEXEDPOLYGONALFACE((300,331,328)); +#565=IFCINDEXEDPOLYGONALFACE((129,19,38)); +#566=IFCINDEXEDPOLYGONALFACE((154,298,66)); +#567=IFCINDEXEDPOLYGONALFACE((317,322,323)); +#568=IFCINDEXEDPOLYGONALFACE((302,297,303)); +#569=IFCINDEXEDPOLYGONALFACE((212,93,167)); +#570=IFCINDEXEDPOLYGONALFACE((94,185,184)); +#571=IFCINDEXEDPOLYGONALFACE((211,121,100)); +#572=IFCINDEXEDPOLYGONALFACE((212,173,93)); +#573=IFCINDEXEDPOLYGONALFACE((317,254,245)); +#574=IFCINDEXEDPOLYGONALFACE((51,15,41)); +#575=IFCINDEXEDPOLYGONALFACE((321,339,244)); +#576=IFCINDEXEDPOLYGONALFACE((244,335,245)); +#577=IFCINDEXEDPOLYGONALFACE((211,204,121)); +#578=IFCINDEXEDPOLYGONALFACE((246,72,358)); +#579=IFCINDEXEDPOLYGONALFACE((300,360,301)); +#580=IFCINDEXEDPOLYGONALFACE((234,177,39)); +#581=IFCINDEXEDPOLYGONALFACE((125,152,177)); +#582=IFCINDEXEDPOLYGONALFACE((338,314,311)); +#583=IFCINDEXEDPOLYGONALFACE((149,94,152)); +#584=IFCINDEXEDPOLYGONALFACE((39,175,137)); +#585=IFCINDEXEDPOLYGONALFACE((334,292,267)); +#586=IFCINDEXEDPOLYGONALFACE((343,338,340,346)); +#587=IFCINDEXEDPOLYGONALFACE((283,286,284)); +#588=IFCINDEXEDPOLYGONALFACE((129,16,53)); +#589=IFCINDEXEDPOLYGONALFACE((102,249,106)); +#590=IFCINDEXEDPOLYGONALFACE((197,12,23)); +#591=IFCINDEXEDPOLYGONALFACE((330,310,178)); +#592=IFCINDEXEDPOLYGONALFACE((307,61,22,308)); +#593=IFCINDEXEDPOLYGONALFACE((300,310,331)); +#594=IFCINDEXEDPOLYGONALFACE((205,190,194)); +#595=IFCINDEXEDPOLYGONALFACE((133,2,31)); +#596=IFCINDEXEDPOLYGONALFACE((85,92,20)); +#597=IFCINDEXEDPOLYGONALFACE((360,39,301)); +#598=IFCINDEXEDPOLYGONALFACE((122,47,136)); +#599=IFCINDEXEDPOLYGONALFACE((281,282,186)); +#600=IFCINDEXEDPOLYGONALFACE((2,191,31)); +#601=IFCINDEXEDPOLYGONALFACE((250,249,247)); +#602=IFCINDEXEDPOLYGONALFACE((58,214,216)); +#603=IFCINDEXEDPOLYGONALFACE((234,138,143)); +#604=IFCINDEXEDPOLYGONALFACE((141,298,154)); +#605=IFCINDEXEDPOLYGONALFACE((27,45,76)); +#606=IFCINDEXEDPOLYGONALFACE((146,181,145)); +#607=IFCINDEXEDPOLYGONALFACE((144,181,180)); +#608=IFCINDEXEDPOLYGONALFACE((195,185,179)); +#609=IFCINDEXEDPOLYGONALFACE((228,223,229)); +#610=IFCINDEXEDPOLYGONALFACE((49,358,72)); +#611=IFCINDEXEDPOLYGONALFACE((74,34,183)); +#612=IFCINDEXEDPOLYGONALFACE((221,218,223)); +#613=IFCINDEXEDPOLYGONALFACE((146,107,108)); +#614=IFCINDEXEDPOLYGONALFACE((194,204,205)); +#615=IFCINDEXEDPOLYGONALFACE((352,359,280,279)); +#616=IFCINDEXEDPOLYGONALFACE((46,64,199)); +#617=IFCINDEXEDPOLYGONALFACE((366,86,251)); +#618=IFCINDEXEDPOLYGONALFACE((48,114,105)); +#619=IFCINDEXEDPOLYGONALFACE((198,95,164)); +#620=IFCINDEXEDPOLYGONALFACE((372,65,167)); +#621=IFCINDEXEDPOLYGONALFACE((74,132,153)); +#622=IFCINDEXEDPOLYGONALFACE((21,12,4)); +#623=IFCINDEXEDPOLYGONALFACE((288,111,113)); +#624=IFCINDEXEDPOLYGONALFACE((75,225,174)); +#625=IFCINDEXEDPOLYGONALFACE((166,262,200)); +#626=IFCINDEXEDPOLYGONALFACE((223,230,229)); +#627=IFCINDEXEDPOLYGONALFACE((26,92,3)); +#628=IFCINDEXEDPOLYGONALFACE((219,88,82)); +#629=IFCINDEXEDPOLYGONALFACE((355,357,365,364)); +#630=IFCINDEXEDPOLYGONALFACE((322,325,324)); +#631=IFCINDEXEDPOLYGONALFACE((257,220,250)); +#632=IFCINDEXEDPOLYGONALFACE((289,104,253)); +#633=IFCINDEXEDPOLYGONALFACE((228,108,221)); +#634=IFCINDEXEDPOLYGONALFACE((119,218,102)); +#635=IFCINDEXEDPOLYGONALFACE((367,124,25)); +#636=IFCINDEXEDPOLYGONALFACE((327,325,326)); +#637=IFCINDEXEDPOLYGONALFACE((40,115,63)); +#638=IFCINDEXEDPOLYGONALFACE((321,248,247)); +#639=IFCINDEXEDPOLYGONALFACE((158,83,141)); +#640=IFCINDEXEDPOLYGONALFACE((13,98,277)); +#641=IFCINDEXEDPOLYGONALFACE((352,345,343,365)); +#642=IFCINDEXEDPOLYGONALFACE((5,374,1)); +#643=IFCINDEXEDPOLYGONALFACE((339,347,348,341)); +#644=IFCINDEXEDPOLYGONALFACE((135,87,22)); +#645=IFCINDEXEDPOLYGONALFACE((156,224,231)); +#646=IFCINDEXEDPOLYGONALFACE((163,63,170)); +#647=IFCINDEXEDPOLYGONALFACE((56,142,140)); +#648=IFCINDEXEDPOLYGONALFACE((362,355,356,363)); +#649=IFCINDEXEDPOLYGONALFACE((88,203,15)); +#650=IFCINDEXEDPOLYGONALFACE((24,163,73)); +#651=IFCINDEXEDPOLYGONALFACE((14,78,68)); +#652=IFCINDEXEDPOLYGONALFACE((248,260,258)); +#653=IFCINDEXEDPOLYGONALFACE((78,26,17)); +#654=IFCINDEXEDPOLYGONALFACE((16,17,53)); +#655=IFCINDEXEDPOLYGONALFACE((161,164,95)); +#656=IFCINDEXEDPOLYGONALFACE((291,287,293)); +#657=IFCINDEXEDPOLYGONALFACE((127,18,32)); +#658=IFCINDEXEDPOLYGONALFACE((182,199,148)); +#659=IFCINDEXEDPOLYGONALFACE((319,71,320)); +#660=IFCINDEXEDPOLYGONALFACE((225,232,312)); +#661=IFCINDEXEDPOLYGONALFACE((302,309,289)); +#662=IFCINDEXEDPOLYGONALFACE((13,36,11)); +#663=IFCINDEXEDPOLYGONALFACE((308,87,310)); +#664=IFCINDEXEDPOLYGONALFACE((353,348,347,246)); +#665=IFCINDEXEDPOLYGONALFACE((262,79,200)); +#666=IFCINDEXEDPOLYGONALFACE((131,73,135)); +#667=IFCINDEXEDPOLYGONALFACE((370,213,243)); +#668=IFCINDEXEDPOLYGONALFACE((92,100,91)); +#669=IFCINDEXEDPOLYGONALFACE((89,233,80)); +#670=IFCINDEXEDPOLYGONALFACE((332,165,174)); +#671=IFCINDEXEDPOLYGONALFACE((1,374,2)); +#672=IFCINDEXEDPOLYGONALFACE((28,368,209)); +#673=IFCINDEXEDPOLYGONALFACE((189,136,259)); +#674=IFCINDEXEDPOLYGONALFACE((326,332,327)); +#675=IFCINDEXEDPOLYGONALFACE((117,122,189)); +#676=IFCINDEXEDPOLYGONALFACE((132,16,40)); +#677=IFCINDEXEDPOLYGONALFACE((263,334,311)); +#678=IFCINDEXEDPOLYGONALFACE((134,183,68)); +#679=IFCINDEXEDPOLYGONALFACE((157,122,142)); +#680=IFCINDEXEDPOLYGONALFACE((239,230,97)); +#681=IFCINDEXEDPOLYGONALFACE((180,96,59)); +#682=IFCINDEXEDPOLYGONALFACE((99,113,111)); +#683=IFCINDEXEDPOLYGONALFACE((22,131,135)); +#684=IFCINDEXEDPOLYGONALFACE((321,249,349)); +#685=IFCINDEXEDPOLYGONALFACE((156,120,147)); +#686=IFCINDEXEDPOLYGONALFACE((148,181,182)); +#687=IFCINDEXEDPOLYGONALFACE((152,126,149)); +#688=IFCINDEXEDPOLYGONALFACE((346,340,337,344)); +#689=IFCINDEXEDPOLYGONALFACE((358,215,353,246)); +#690=IFCINDEXEDPOLYGONALFACE((275,89,80)); +#691=IFCINDEXEDPOLYGONALFACE((240,37,239)); +#692=IFCINDEXEDPOLYGONALFACE((14,183,34)); +#693=IFCINDEXEDPOLYGONALFACE((293,295,274)); +#694=IFCINDEXEDPOLYGONALFACE((350,351,344,342)); +#695=IFCINDEXEDPOLYGONALFACE((148,112,96)); +#696=IFCINDEXEDPOLYGONALFACE((313,325,264)); +#697=IFCINDEXEDPOLYGONALFACE((154,170,208)); +#698=IFCINDEXEDPOLYGONALFACE((226,123,46)); +#699=IFCINDEXEDPOLYGONALFACE((351,364,346,344)); +#700=IFCINDEXEDPOLYGONALFACE((355,362,216,357)); +#701=IFCINDEXEDPOLYGONALFACE((349,339,321)); +#702=IFCINDEXEDPOLYGONALFACE((318,324,327)); +#703=IFCINDEXEDPOLYGONALFACE((338,311,334,340)); +#704=IFCINDEXEDPOLYGONALFACE((326,299,302)); +#705=IFCINDEXEDPOLYGONALFACE((112,59,96)); +#706=IFCINDEXEDPOLYGONALFACE((262,198,242)); +#707=IFCINDEXEDPOLYGONALFACE((272,51,41)); +#708=IFCINDEXEDPOLYGONALFACE((318,261,315)); +#709=IFCINDEXEDPOLYGONALFACE((167,57,212)); +#710=IFCINDEXEDPOLYGONALFACE((271,266,255)); +#711=IFCINDEXEDPOLYGONALFACE((218,246,102)); +#712=IFCINDEXEDPOLYGONALFACE((94,179,185)); +#713=IFCINDEXEDPOLYGONALFACE((343,346,364,365)); +#714=IFCINDEXEDPOLYGONALFACE((40,153,132)); +#715=IFCINDEXEDPOLYGONALFACE((345,314,338,343)); +#716=IFCINDEXEDPOLYGONALFACE((8,121,204)); +#717=IFCINDEXEDPOLYGONALFACE((32,64,123)); +#718=IFCINDEXEDPOLYGONALFACE((88,109,82)); +#719=IFCINDEXEDPOLYGONALFACE((133,128,81)); +#720=IFCINDEXEDPOLYGONALFACE((193,319,320)); +#721=IFCINDEXEDPOLYGONALFACE((370,367,369)); +#722=IFCINDEXEDPOLYGONALFACE((6,9,42)); +#723=IFCINDEXEDPOLYGONALFACE((214,186,282)); +#724=IFCINDEXEDPOLYGONALFACE((200,75,166)); +#725=IFCINDEXEDPOLYGONALFACE((375,79,139)); +#726=IFCINDEXEDPOLYGONALFACE((95,309,333)); +#727=IFCINDEXEDPOLYGONALFACE((221,49,72)); +#728=IFCINDEXEDPOLYGONALFACE((36,273,11)); +#729=IFCINDEXEDPOLYGONALFACE((69,155,251)); +#730=IFCINDEXEDPOLYGONALFACE((316,302,289)); +#731=IFCINDEXEDPOLYGONALFACE((297,304,303)); +#732=IFCINDEXEDPOLYGONALFACE((195,159,196)); +#733=IFCINDEXEDPOLYGONALFACE((110,186,55)); +#734=IFCINDEXEDPOLYGONALFACE((323,324,315)); +#735=IFCINDEXEDPOLYGONALFACE((172,83,242)); +#736=IFCINDEXEDPOLYGONALFACE((61,219,82)); +#737=IFCINDEXEDPOLYGONALFACE((283,291,265)); +#738=IFCINDEXEDPOLYGONALFACE((184,175,177)); +#739=IFCINDEXEDPOLYGONALFACE((349,246,347)); +#740=IFCINDEXEDPOLYGONALFACE((174,166,75)); +#741=IFCINDEXEDPOLYGONALFACE((48,363,361)); +#742=IFCINDEXEDPOLYGONALFACE((199,237,46)); +#743=IFCINDEXEDPOLYGONALFACE((164,242,198)); +#744=IFCINDEXEDPOLYGONALFACE((290,317,335,336)); +#745=IFCINDEXEDPOLYGONALFACE((217,298,160)); +#746=IFCINDEXEDPOLYGONALFACE((193,200,79)); +#747=IFCINDEXEDPOLYGONALFACE((253,166,165)); +#748=IFCINDEXEDPOLYGONALFACE((202,116,51)); +#749=IFCINDEXEDPOLYGONALFACE((236,366,268)); +#750=IFCINDEXEDPOLYGONALFACE((170,73,163)); +#751=IFCINDEXEDPOLYGONALFACE((360,328,296)); +#752=IFCINDEXEDPOLYGONALFACE((354,350,348,353)); +#753=IFCINDEXEDPOLYGONALFACE((359,357,216,214)); +#754=IFCINDEXEDPOLYGONALFACE((143,110,125)); +#755=IFCINDEXEDPOLYGONALFACE((265,314,345,283)); +#756=IFCINDEXEDPOLYGONALFACE((252,261,260)); +#757=IFCINDEXEDPOLYGONALFACE((305,337,340,334)); +#758=IFCINDEXEDPOLYGONALFACE((131,116,24)); +#759=IFCINDEXEDPOLYGONALFACE((104,168,253)); +#760=IFCINDEXEDPOLYGONALFACE((126,99,111)); +#761=IFCINDEXEDPOLYGONALFACE((47,275,276)); +#762=IFCINDEXEDPOLYGONALFACE((230,120,97)); +#763=IFCINDEXEDPOLYGONALFACE((279,283,345,352)); +#764=IFCINDEXEDPOLYGONALFACE((67,89,275)); +#765=IFCINDEXEDPOLYGONALFACE((257,271,255)); +#766=IFCINDEXEDPOLYGONALFACE((257,231,224)); +#767=IFCINDEXEDPOLYGONALFACE((316,253,165)); +#768=IFCINDEXEDPOLYGONALFACE((17,3,53)); +#769=IFCINDEXEDPOLYGONALFACE((273,171,266)); +#770=IFCINDEXEDPOLYGONALFACE((260,270,258)); +#771=IFCINDEXEDPOLYGONALFACE((362,58,216)); +#772=IFCINDEXEDPOLYGONALFACE((48,108,107)); +#773=IFCINDEXEDPOLYGONALFACE((57,65,33)); +#774=IFCINDEXEDPOLYGONALFACE((160,172,164)); +#775=IFCINDEXEDPOLYGONALFACE((190,235,184)); +#776=IFCINDEXEDPOLYGONALFACE((354,353,215,361)); +#777=IFCINDEXEDPOLYGONALFACE((258,271,256)); +#778=IFCINDEXEDPOLYGONALFACE((155,366,251)); +#779=IFCINDEXEDPOLYGONALFACE((365,357,359,352)); +#780=IFCINDEXEDPOLYGONALFACE((169,20,26)); +#781=IFCINDEXEDPOLYGONALFACE((312,174,225)); +#782=IFCINDEXEDPOLYGONALFACE((273,43,11)); +#783=IFCINDEXEDPOLYGONALFACE((264,317,290)); +#784=IFCINDEXEDPOLYGONALFACE((287,296,293)); +#785=IFCINDEXEDPOLYGONALFACE((159,149,150)); +#786=IFCINDEXEDPOLYGONALFACE((267,305,334)); +#787=IFCINDEXEDPOLYGONALFACE((206,211,100)); +#788=IFCINDEXEDPOLYGONALFACE((126,150,149)); +#789=IFCINDEXEDPOLYGONALFACE((288,114,144)); +#790=IFCINDEXEDPOLYGONALFACE((266,101,273)); +#791=IFCINDEXEDPOLYGONALFACE((123,42,32)); +#792=IFCINDEXEDPOLYGONALFACE((255,171,231)); +#793=IFCINDEXEDPOLYGONALFACE((34,116,14)); +#794=IFCINDEXEDPOLYGONALFACE((91,3,92)); +#795=IFCINDEXEDPOLYGONALFACE((287,143,138)); +#796=IFCINDEXEDPOLYGONALFACE((77,12,71)); +#797=IFCINDEXEDPOLYGONALFACE((95,178,161)); +#798=IFCINDEXEDPOLYGONALFACE((285,280,281)); +#799=IFCINDEXEDPOLYGONALFACE((242,139,262)); +#800=IFCINDEXEDPOLYGONALFACE((332,318,327)); +#801=IFCINDEXEDPOLYGONALFACE((226,239,37)); +#802=IFCINDEXEDPOLYGONALFACE((175,219,137)); +#803=IFCINDEXEDPOLYGONALFACE((177,94,184)); +#804=IFCINDEXEDPOLYGONALFACE((103,226,37)); +#805=IFCINDEXEDPOLYGONALFACE((372,371,65)); +#806=IFCINDEXEDPOLYGONALFACE((341,335,244,339)); +#807=IFCINDEXEDPOLYGONALFACE((101,69,43)); +#808=IFCINDEXEDPOLYGONALFACE((146,192,182)); +#809=IFCINDEXEDPOLYGONALFACE((52,77,5)); +#810=IFCINDEXEDPOLYGONALFACE((133,60,52)); +#811=IFCINDEXEDPOLYGONALFACE((28,243,213)); +#812=IFCINDEXEDPOLYGONALFACE((110,126,125)); +#813=IFCINDEXEDPOLYGONALFACE((140,188,176)); +#814=IFCINDEXEDPOLYGONALFACE((341,342,336,335)); +#815=IFCINDEXEDPOLYGONALFACE((82,131,61)); +#816=IFCINDEXEDPOLYGONALFACE((290,336,337,305)); +#817=IFCINDEXEDPOLYGONALFACE((109,51,116)); +#818=IFCINDEXEDPOLYGONALFACE((210,29,90)); +#819=IFCINDEXEDPOLYGONALFACE((45,30,21)); +#820=IFCINDEXEDPOLYGONALFACE((204,196,8)); +#821=IFCINDEXEDPOLYGONALFACE((229,238,237)); +#822=IFCINDEXEDPOLYGONALFACE((161,217,160)); +#823=IFCINDEXEDPOLYGONALFACE((305,264,290)); +#824=IFCINDEXEDPOLYGONALFACE((84,60,81)); +#825=IFCINDEXEDPOLYGONALFACE((185,190,184)); +#826=IFCINDEXEDPOLYGONALFACE((5,133,52)); +#827=IFCINDEXEDPOLYGONALFACE((189,187,117)); +#828=IFCINDEXEDPOLYGONALFACE((226,237,238)); +#829=IFCINDEXEDPOLYGONALFACE((23,277,197)); +#830=IFCINDEXEDPOLYGONALFACE((76,8,27)); +#831=IFCINDEXEDPOLYGONALFACE((294,274,295)); +#832=IFCINDEXEDPOLYGONALFACE((145,114,107)); +#833=IFCINDEXEDPOLYGONALFACE((188,44,10)); +#834=IFCINDEXEDPOLYGONALFACE((41,203,85)); +#835=IFCINDEXEDPOLYGONALFACE((13,43,86)); +#836=IFCINDEXEDPOLYGONALFACE((355,364,351,356)); +#837=IFCINDEXEDPOLYGONALFACE((234,125,177)); +#838=IFCINDEXEDPOLYGONALFACE((40,38,50)); +#839=IFCINDEXEDPOLYGONALFACE((272,85,20)); +#840=IFCINDEXEDPOLYGONALFACE((215,48,361)); +#841=IFCINDEXEDPOLYGONALFACE((39,241,301)); +#842=IFCINDEXEDPOLYGONALFACE((311,292,263)); +#843=IFCINDEXEDPOLYGONALFACE((69,86,43)); +#844=IFCINDEXEDPOLYGONALFACE((310,161,178)); +#845=IFCINDEXEDPOLYGONALFACE((202,169,78)); +#846=IFCINDEXEDPOLYGONALFACE((248,250,247)); +#847=IFCINDEXEDPOLYGONALFACE((296,138,360)); +#848=IFCINDEXEDPOLYGONALFACE((42,9,23)); +#849=IFCINDEXEDPOLYGONALFACE((203,206,85)); +#850=IFCINDEXEDPOLYGONALFACE((202,272,169)); +#851=IFCINDEXEDPOLYGONALFACE((342,344,337,336)); +#852=IFCINDEXEDPOLYGONALFACE((129,35,19)); +#853=IFCINDEXEDPOLYGONALFACE((2,162,191)); +#854=IFCINDEXEDPOLYGONALFACE((366,306,98)); +#855=IFCINDEXEDPOLYGONALFACE((361,363,356,354)); +#856=IFCINDEXEDPOLYGONALFACE((68,17,134)); +#857=IFCINDEXEDPOLYGONALFACE((54,173,201)); +#858=IFCINDEXEDPOLYGONALFACE((210,167,151)); +#859=IFCINDEXEDPOLYGONALFACE((156,171,97)); +#860=IFCINDEXEDPOLYGONALFACE((54,151,93)); +#861=IFCINDEXEDPOLYGONALFACE((59,8,196)); +#862=IFCINDEXEDPOLYGONALFACE((213,210,90)); +#863=IFCINDEXEDPOLYGONALFACE((54,371,373)); +#864=IFCINDEXEDPOLYGONALFACE((130,243,209)); +#865=IFCINDEXEDPOLYGONALFACE((359,214,282,280)); +#866=IFCINDEXEDPOLYGONALFACE((142,117,188)); +#867=IFCINDEXEDPOLYGONALFACE((28,367,368)); +#868=IFCINDEXEDPOLYGONALFACE((237,228,229)); +#869=IFCINDEXEDPOLYGONALFACE((362,105,99)); +#870=IFCINDEXEDPOLYGONALFACE((291,314,265)); +#871=IFCINDEXEDPOLYGONALFACE((45,70,18)); +#872=IFCINDEXEDPOLYGONALFACE((210,372,167)); +#873=IFCINDEXEDPOLYGONALFACE((62,63,176)); +#874=IFCINDEXEDPOLYGONALFACE((91,19,35)); +#875=IFCINDEXEDPOLYGONALFACE((206,203,211)); +#876=IFCINDEXEDPOLYGONALFACE((269,260,261)); +#877=IFCINDEXEDPOLYGONALFACE((53,35,129)); +#878=IFCINDEXEDPOLYGONALFACE((54,29,151)); +#879=IFCINDEXEDPOLYGONALFACE((130,368,370)); +#880=IFCINDEXEDPOLYGONALFACE((67,187,189)); +#881=IFCINDEXEDPOLYGONALFACE((371,25,124)); +#882=IFCINDEXEDPOLYGONALFACE((130,209,368)); +#883=IFCINDEXEDPOLYGONALFACE((243,130,370)); +#884=IFCINDEXEDPOLYGONALFACE((213,227,210)); +#885=IFCINDEXEDPOLYGONALFACE((227,372,210)); +#886=IFCINDEXEDPOLYGONALFACE((167,93,151)); +#887=IFCINDEXEDPOLYGONALFACE((372,227,25)); +#888=IFCINDEXEDPOLYGONALFACE((373,29,54)); +#889=IFCINDEXEDPOLYGONALFACE((213,369,227)); +#890=IFCINDEXEDPOLYGONALFACE((371,124,373)); +#891=IFCINDEXEDPOLYGONALFACE((341,348,350,342)); +#892=IFCINDEXEDPOLYGONALFACE((135,66,217)); +#893=IFCINDEXEDPOLYGONALFACE((65,371,33)); +#894=IFCINDEXEDPOLYGONALFACE((350,354,356,351)); +#895=IFCINDEXEDPOLYGONALFACE((333,330,178)); +#896=IFCINDEXEDPOLYGONALFACE((315,254,323)); +#897=IFCINDEXEDPOLYGONALFACE((127,12,30)); +#898=IFCINDEXEDPOLYGONALFACE((100,128,31)); +#899=IFCINDEXEDPOLYGONALFACE((319,5,77)); +#900=IFCINDEXEDPOLYGONALFACE((374,158,2)); +#901=IFCINDEXEDPOLYGONALFACE((375,83,374)); +#902=IFCINDEXEDPOLYGONALFACE((314,274,311)); +#903=IFCINDEXEDPOLYGONALFACE((21,4,52)); +#904=IFCINDEXEDPOLYGONALFACE((288,144,180)); +#905=IFCINDEXEDPOLYGONALFACE((241,137,219)); +#906=IFCINDEXEDPOLYGONALFACE((60,76,45)); +#907=IFCINDEXEDPOLYGONALFACE((10,62,176)); +#908=IFCINDEXEDPOLYGONALFACE((220,147,106)); +#909=IFCINDEXEDPOLYGONALFACE((90,29,373)); +#910=IFCINDEXEDPOLYGONALFACE((70,148,199)); +#911=IFCINDEXEDPOLYGONALFACE((103,37,36)); +#912=IFCINDEXEDPOLYGONALFACE((71,197,306)); +#913=IFCINDEXEDPOLYGONALFACE((117,187,44)); +#914=IFCINDEXEDPOLYGONALFACE((62,44,56)); +#915=IFCINDEXEDPOLYGONALFACE((254,252,244)); +#916=IFCINDEXEDPOLYGONALFACE((59,196,159)); +#917=IFCINDEXEDPOLYGONALFACE((158,141,154)); +#918=IFCINDEXEDPOLYGONALFACE((300,301,241)); +#919=IFCINDEXEDPOLYGONALFACE((23,127,32)); +#920=IFCINDEXEDPOLYGONALFACE((309,303,304)); +#921=IFCINDEXEDPOLYGONALFACE((295,329,304)); +#922=IFCINDEXEDPOLYGONALFACE((369,367,25)); +#923=IFCINDEXEDPOLYGONALFACE((119,102,106)); +#924=IFCINDEXEDPOLYGONALFACE((232,269,318)); +#925=IFCINDEXEDPOLYGONALFACE((208,170,63)); +#926=IFCINDEXEDPOLYGONALFACE((239,97,171)); +#927=IFCINDEXEDPOLYGONALFACE((124,28,213)); +#928=IFCINDEXEDPOLYGONALFACE((268,155,75)); +#929=IFCINDEXEDPOLYGONALFACE((101,270,269)); +#930=IFCINDEXEDPOLYGONALFACE((277,9,7)); +#931=IFCINDEXEDPOLYGONALFACE((320,306,236)); +#932=IFCINDEXEDPOLYGONALFACE((222,193,236)); +#933=IFCINDEXEDPOLYGONALFACE((173,115,50)); +#934=IFCINDEXEDPOLYGONALFACE((299,313,267)); +#935=IFCINDEXEDPOLYGONALFACE((162,207,212)); +#936=IFCINDEXEDPOLYGONALFACE((98,306,197)); +#937=IFCINDEXEDPOLYGONALFACE((295,296,328)); +#938=IFCINDEXEDPOLYGONALFACE((84,81,128)); +#939=IFCINDEXEDPOLYGONALFACE((302,299,297)); +#940=IFCINDEXEDPOLYGONALFACE((212,115,173)); +#941=IFCINDEXEDPOLYGONALFACE((317,323,254)); +#942=IFCINDEXEDPOLYGONALFACE((211,205,204)); +#943=IFCINDEXEDPOLYGONALFACE((39,177,175)); +#944=IFCINDEXEDPOLYGONALFACE((334,263,292)); +#945=IFCINDEXEDPOLYGONALFACE((283,279,286)); +#946=IFCINDEXEDPOLYGONALFACE((129,38,16)); +#947=IFCINDEXEDPOLYGONALFACE((102,349,249)); +#948=IFCINDEXEDPOLYGONALFACE((197,71,12)); +#949=IFCINDEXEDPOLYGONALFACE((330,331,310)); +#950=IFCINDEXEDPOLYGONALFACE((300,308,310)); +#951=IFCINDEXEDPOLYGONALFACE((205,203,190)); +#952=IFCINDEXEDPOLYGONALFACE((133,1,2)); +#953=IFCINDEXEDPOLYGONALFACE((85,206,92)); +#954=IFCINDEXEDPOLYGONALFACE((360,234,39)); +#955=IFCINDEXEDPOLYGONALFACE((122,157,47)); +#956=IFCINDEXEDPOLYGONALFACE((281,280,282)); +#957=IFCINDEXEDPOLYGONALFACE((250,220,249)); +#958=IFCINDEXEDPOLYGONALFACE((58,55,214)); +#959=IFCINDEXEDPOLYGONALFACE((234,360,138)); +#960=IFCINDEXEDPOLYGONALFACE((141,172,298)); +#961=IFCINDEXEDPOLYGONALFACE((27,112,45)); +#962=IFCINDEXEDPOLYGONALFACE((146,182,181)); +#963=IFCINDEXEDPOLYGONALFACE((144,145,181)); +#964=IFCINDEXEDPOLYGONALFACE((195,194,185)); +#965=IFCINDEXEDPOLYGONALFACE((228,221,223)); +#966=IFCINDEXEDPOLYGONALFACE((49,215,358)); +#967=IFCINDEXEDPOLYGONALFACE((74,163,34)); +#968=IFCINDEXEDPOLYGONALFACE((221,72,218)); +#969=IFCINDEXEDPOLYGONALFACE((146,145,107)); +#970=IFCINDEXEDPOLYGONALFACE((194,195,204)); +#971=IFCINDEXEDPOLYGONALFACE((46,123,64)); +#972=IFCINDEXEDPOLYGONALFACE((366,98,86)); +#973=IFCINDEXEDPOLYGONALFACE((48,107,114)); +#974=IFCINDEXEDPOLYGONALFACE((198,104,95)); +#975=IFCINDEXEDPOLYGONALFACE((74,183,132)); +#976=IFCINDEXEDPOLYGONALFACE((21,30,12)); +#977=IFCINDEXEDPOLYGONALFACE((288,150,111)); +#978=IFCINDEXEDPOLYGONALFACE((75,155,225)); +#979=IFCINDEXEDPOLYGONALFACE((166,168,262)); +#980=IFCINDEXEDPOLYGONALFACE((223,119,230)); +#981=IFCINDEXEDPOLYGONALFACE((26,20,92)); +#982=IFCINDEXEDPOLYGONALFACE((219,235,88)); +#983=IFCINDEXEDPOLYGONALFACE((322,264,325)); +#984=IFCINDEXEDPOLYGONALFACE((257,224,220)); +#985=IFCINDEXEDPOLYGONALFACE((289,309,104)); +#986=IFCINDEXEDPOLYGONALFACE((228,146,108)); +#987=IFCINDEXEDPOLYGONALFACE((119,223,218)); +#988=IFCINDEXEDPOLYGONALFACE((367,28,124)); +#989=IFCINDEXEDPOLYGONALFACE((327,324,325)); +#990=IFCINDEXEDPOLYGONALFACE((40,50,115)); +#991=IFCINDEXEDPOLYGONALFACE((321,252,248)); +#992=IFCINDEXEDPOLYGONALFACE((13,86,98)); +#993=IFCINDEXEDPOLYGONALFACE((5,375,374)); +#994=IFCINDEXEDPOLYGONALFACE((135,217,87)); +#995=IFCINDEXEDPOLYGONALFACE((156,147,224)); +#996=IFCINDEXEDPOLYGONALFACE((163,74,63)); +#997=IFCINDEXEDPOLYGONALFACE((56,157,142)); +#998=IFCINDEXEDPOLYGONALFACE((88,190,203)); +#999=IFCINDEXEDPOLYGONALFACE((24,34,163)); +#1000=IFCINDEXEDPOLYGONALFACE((14,202,78)); +#1001=IFCINDEXEDPOLYGONALFACE((248,252,260)); +#1002=IFCINDEXEDPOLYGONALFACE((78,169,26)); +#1003=IFCINDEXEDPOLYGONALFACE((16,134,17)); +#1004=IFCINDEXEDPOLYGONALFACE((161,160,164)); +#1005=IFCINDEXEDPOLYGONALFACE((291,284,287)); +#1006=IFCINDEXEDPOLYGONALFACE((127,30,18)); +#1007=IFCINDEXEDPOLYGONALFACE((182,192,199)); +#1008=IFCINDEXEDPOLYGONALFACE((319,77,71)); +#1009=IFCINDEXEDPOLYGONALFACE((225,69,232)); +#1010=IFCINDEXEDPOLYGONALFACE((302,303,309)); +#1011=IFCINDEXEDPOLYGONALFACE((13,7,36)); +#1012=IFCINDEXEDPOLYGONALFACE((308,22,87)); +#1013=IFCINDEXEDPOLYGONALFACE((262,139,79)); +#1014=IFCINDEXEDPOLYGONALFACE((131,24,73)); +#1015=IFCINDEXEDPOLYGONALFACE((370,369,213)); +#1016=IFCINDEXEDPOLYGONALFACE((92,206,100)); +#1017=IFCINDEXEDPOLYGONALFACE((89,136,233)); +#1018=IFCINDEXEDPOLYGONALFACE((332,316,165)); +#1019=IFCINDEXEDPOLYGONALFACE((189,122,136)); +#1020=IFCINDEXEDPOLYGONALFACE((326,316,332)); +#1021=IFCINDEXEDPOLYGONALFACE((117,142,122)); +#1022=IFCINDEXEDPOLYGONALFACE((132,134,16)); +#1023=IFCINDEXEDPOLYGONALFACE((134,132,183)); +#1024=IFCINDEXEDPOLYGONALFACE((239,238,230)); +#1025=IFCINDEXEDPOLYGONALFACE((180,181,96)); +#1026=IFCINDEXEDPOLYGONALFACE((99,105,113)); +#1027=IFCINDEXEDPOLYGONALFACE((22,61,131)); +#1028=IFCINDEXEDPOLYGONALFACE((321,247,249)); +#1029=IFCINDEXEDPOLYGONALFACE((156,97,120)); +#1030=IFCINDEXEDPOLYGONALFACE((148,96,181)); +#1031=IFCINDEXEDPOLYGONALFACE((152,125,126)); +#1032=IFCINDEXEDPOLYGONALFACE((240,36,37)); +#1033=IFCINDEXEDPOLYGONALFACE((14,68,183)); +#1034=IFCINDEXEDPOLYGONALFACE((293,296,295)); +#1035=IFCINDEXEDPOLYGONALFACE((148,70,112)); +#1036=IFCINDEXEDPOLYGONALFACE((313,299,325)); +#1037=IFCINDEXEDPOLYGONALFACE((154,66,170)); +#1038=IFCINDEXEDPOLYGONALFACE((226,6,123)); +#1039=IFCINDEXEDPOLYGONALFACE((349,347,339)); +#1040=IFCINDEXEDPOLYGONALFACE((318,315,324)); +#1041=IFCINDEXEDPOLYGONALFACE((326,325,299)); +#1042=IFCINDEXEDPOLYGONALFACE((112,27,59)); +#1043=IFCINDEXEDPOLYGONALFACE((262,168,198)); +#1044=IFCINDEXEDPOLYGONALFACE((272,202,51)); +#1045=IFCINDEXEDPOLYGONALFACE((318,269,261)); +#1046=IFCINDEXEDPOLYGONALFACE((167,65,57)); +#1047=IFCINDEXEDPOLYGONALFACE((271,270,266)); +#1048=IFCINDEXEDPOLYGONALFACE((218,72,246)); +#1049=IFCINDEXEDPOLYGONALFACE((94,149,179)); +#1050=IFCINDEXEDPOLYGONALFACE((40,62,153)); +#1051=IFCINDEXEDPOLYGONALFACE((8,84,121)); +#1052=IFCINDEXEDPOLYGONALFACE((32,18,64)); +#1053=IFCINDEXEDPOLYGONALFACE((88,15,109)); +#1054=IFCINDEXEDPOLYGONALFACE((133,31,128)); +#1055=IFCINDEXEDPOLYGONALFACE((193,79,319)); +#1056=IFCINDEXEDPOLYGONALFACE((370,368,367)); +#1057=IFCINDEXEDPOLYGONALFACE((6,103,9)); +#1058=IFCINDEXEDPOLYGONALFACE((214,55,186)); +#1059=IFCINDEXEDPOLYGONALFACE((200,222,75)); +#1060=IFCINDEXEDPOLYGONALFACE((375,319,79)); +#1061=IFCINDEXEDPOLYGONALFACE((95,104,309)); +#1062=IFCINDEXEDPOLYGONALFACE((221,108,49)); +#1063=IFCINDEXEDPOLYGONALFACE((36,240,273)); +#1064=IFCINDEXEDPOLYGONALFACE((69,225,155)); +#1065=IFCINDEXEDPOLYGONALFACE((316,326,302)); +#1066=IFCINDEXEDPOLYGONALFACE((297,294,304)); +#1067=IFCINDEXEDPOLYGONALFACE((195,179,159)); +#1068=IFCINDEXEDPOLYGONALFACE((110,281,186)); +#1069=IFCINDEXEDPOLYGONALFACE((323,322,324)); +#1070=IFCINDEXEDPOLYGONALFACE((172,141,83)); +#1071=IFCINDEXEDPOLYGONALFACE((61,307,219)); +#1072=IFCINDEXEDPOLYGONALFACE((283,284,291)); +#1073=IFCINDEXEDPOLYGONALFACE((184,235,175)); +#1074=IFCINDEXEDPOLYGONALFACE((349,102,246)); +#1075=IFCINDEXEDPOLYGONALFACE((174,165,166)); +#1076=IFCINDEXEDPOLYGONALFACE((48,105,363)); +#1077=IFCINDEXEDPOLYGONALFACE((199,192,237)); +#1078=IFCINDEXEDPOLYGONALFACE((164,172,242)); +#1079=IFCINDEXEDPOLYGONALFACE((217,66,298)); +#1080=IFCINDEXEDPOLYGONALFACE((193,222,200)); +#1081=IFCINDEXEDPOLYGONALFACE((253,168,166)); +#1082=IFCINDEXEDPOLYGONALFACE((202,14,116)); +#1083=IFCINDEXEDPOLYGONALFACE((236,306,366)); +#1084=IFCINDEXEDPOLYGONALFACE((170,66,73)); +#1085=IFCINDEXEDPOLYGONALFACE((360,300,328)); +#1086=IFCINDEXEDPOLYGONALFACE((143,285,110)); +#1087=IFCINDEXEDPOLYGONALFACE((252,254,261)); +#1088=IFCINDEXEDPOLYGONALFACE((131,109,116)); +#1089=IFCINDEXEDPOLYGONALFACE((104,198,168)); +#1090=IFCINDEXEDPOLYGONALFACE((126,58,99)); +#1091=IFCINDEXEDPOLYGONALFACE((47,67,275)); +#1092=IFCINDEXEDPOLYGONALFACE((230,119,120)); +#1093=IFCINDEXEDPOLYGONALFACE((67,259,89)); +#1094=IFCINDEXEDPOLYGONALFACE((257,256,271)); +#1095=IFCINDEXEDPOLYGONALFACE((257,255,231)); +#1096=IFCINDEXEDPOLYGONALFACE((316,289,253)); +#1097=IFCINDEXEDPOLYGONALFACE((17,26,3)); +#1098=IFCINDEXEDPOLYGONALFACE((273,240,171)); +#1099=IFCINDEXEDPOLYGONALFACE((362,99,58)); +#1100=IFCINDEXEDPOLYGONALFACE((48,49,108)); +#1101=IFCINDEXEDPOLYGONALFACE((160,298,172)); +#1102=IFCINDEXEDPOLYGONALFACE((190,88,235)); +#1103=IFCINDEXEDPOLYGONALFACE((258,270,271)); +#1104=IFCINDEXEDPOLYGONALFACE((155,268,366)); +#1105=IFCINDEXEDPOLYGONALFACE((169,272,20)); +#1106=IFCINDEXEDPOLYGONALFACE((312,332,174)); +#1107=IFCINDEXEDPOLYGONALFACE((273,101,43)); +#1108=IFCINDEXEDPOLYGONALFACE((264,322,317)); +#1109=IFCINDEXEDPOLYGONALFACE((287,138,296)); +#1110=IFCINDEXEDPOLYGONALFACE((159,179,149)); +#1111=IFCINDEXEDPOLYGONALFACE((267,313,305)); +#1112=IFCINDEXEDPOLYGONALFACE((126,111,150)); +#1113=IFCINDEXEDPOLYGONALFACE((288,113,114)); +#1114=IFCINDEXEDPOLYGONALFACE((266,270,101)); +#1115=IFCINDEXEDPOLYGONALFACE((123,6,42)); +#1116=IFCINDEXEDPOLYGONALFACE((255,266,171)); +#1117=IFCINDEXEDPOLYGONALFACE((34,24,116)); +#1118=IFCINDEXEDPOLYGONALFACE((91,35,3)); +#1119=IFCINDEXEDPOLYGONALFACE((287,285,143)); +#1120=IFCINDEXEDPOLYGONALFACE((77,4,12)); +#1121=IFCINDEXEDPOLYGONALFACE((95,333,178)); +#1122=IFCINDEXEDPOLYGONALFACE((285,279,280)); +#1123=IFCINDEXEDPOLYGONALFACE((242,83,139)); +#1124=IFCINDEXEDPOLYGONALFACE((332,312,318)); +#1125=IFCINDEXEDPOLYGONALFACE((226,238,239)); +#1126=IFCINDEXEDPOLYGONALFACE((175,235,219)); +#1127=IFCINDEXEDPOLYGONALFACE((177,152,94)); +#1128=IFCINDEXEDPOLYGONALFACE((103,6,226)); +#1129=IFCINDEXEDPOLYGONALFACE((372,25,371)); +#1130=IFCINDEXEDPOLYGONALFACE((101,232,69)); +#1131=IFCINDEXEDPOLYGONALFACE((146,228,192)); +#1132=IFCINDEXEDPOLYGONALFACE((52,4,77)); +#1133=IFCINDEXEDPOLYGONALFACE((133,81,60)); +#1134=IFCINDEXEDPOLYGONALFACE((28,209,243)); +#1135=IFCINDEXEDPOLYGONALFACE((110,58,126)); +#1136=IFCINDEXEDPOLYGONALFACE((140,142,188)); +#1137=IFCINDEXEDPOLYGONALFACE((82,109,131)); +#1138=IFCINDEXEDPOLYGONALFACE((109,15,51)); +#1139=IFCINDEXEDPOLYGONALFACE((210,151,29)); +#1140=IFCINDEXEDPOLYGONALFACE((45,18,30)); +#1141=IFCINDEXEDPOLYGONALFACE((204,195,196)); +#1142=IFCINDEXEDPOLYGONALFACE((229,230,238)); +#1143=IFCINDEXEDPOLYGONALFACE((161,87,217)); +#1144=IFCINDEXEDPOLYGONALFACE((305,313,264)); +#1145=IFCINDEXEDPOLYGONALFACE((84,76,60)); +#1146=IFCINDEXEDPOLYGONALFACE((185,194,190)); +#1147=IFCINDEXEDPOLYGONALFACE((5,1,133)); +#1148=IFCINDEXEDPOLYGONALFACE((226,46,237)); +#1149=IFCINDEXEDPOLYGONALFACE((23,9,277)); +#1150=IFCINDEXEDPOLYGONALFACE((76,84,8)); +#1151=IFCINDEXEDPOLYGONALFACE((294,267,274)); +#1152=IFCINDEXEDPOLYGONALFACE((145,144,114)); +#1153=IFCINDEXEDPOLYGONALFACE((41,15,203)); +#1154=IFCINDEXEDPOLYGONALFACE((13,11,43)); +#1155=IFCINDEXEDPOLYGONALFACE((234,143,125)); +#1156=IFCINDEXEDPOLYGONALFACE((40,16,38)); +#1157=IFCINDEXEDPOLYGONALFACE((272,41,85)); +#1158=IFCINDEXEDPOLYGONALFACE((215,49,48)); +#1159=IFCINDEXEDPOLYGONALFACE((39,137,241)); +#1160=IFCINDEXEDPOLYGONALFACE((311,274,292)); +#1161=IFCINDEXEDPOLYGONALFACE((69,251,86)); +#1162=IFCINDEXEDPOLYGONALFACE((310,87,161)); +#1163=IFCINDEXEDPOLYGONALFACE((248,256,250)); +#1164=IFCINDEXEDPOLYGONALFACE((68,78,17)); +#1165=IFCINDEXEDPOLYGONALFACE((156,231,171)); +#1166=IFCINDEXEDPOLYGONALFACE((59,27,8)); +#1167=IFCINDEXEDPOLYGONALFACE((54,33,371)); +#1168=IFCINDEXEDPOLYGONALFACE((237,192,228)); +#1169=IFCINDEXEDPOLYGONALFACE((362,363,105)); +#1170=IFCINDEXEDPOLYGONALFACE((291,293,314)); +#1171=IFCINDEXEDPOLYGONALFACE((45,112,70)); +#1172=IFCINDEXEDPOLYGONALFACE((62,40,63)); +#1173=IFCINDEXEDPOLYGONALFACE((91,31,19)); +#1174=IFCINDEXEDPOLYGONALFACE((269,270,260)); +#1175=IFCINDEXEDPOLYGONALFACE((53,3,35)); +#1176=IFCINDEXEDPOLYGONALFACE((67,47,187)); +#1177=IFCINDEXEDPOLYGONALFACE((135,73,66)); +#1178=IFCINDEXEDPOLYGONALFACE((333,329,330)); +#1179=IFCINDEXEDPOLYGONALFACE((315,261,254)); +#1180=IFCINDEXEDPOLYGONALFACE((127,23,12)); +#1181=IFCINDEXEDPOLYGONALFACE((100,121,128)); +#1182=IFCINDEXEDPOLYGONALFACE((319,375,5)); +#1183=IFCINDEXEDPOLYGONALFACE((374,83,158)); +#1184=IFCINDEXEDPOLYGONALFACE((375,139,83)); +#1185=IFCINDEXEDPOLYGONALFACE((314,293,274)); +#1186=IFCPOLYGONALFACESET(#472,.F.,(#473,#474,#475,#476,#477,#478,#479,#480,#481,#482,#483,#484,#485,#486,#487,#488,#489,#490,#491,#492,#493,#494,#495,#496,#497,#498,#499,#500,#501,#502,#503,#504,#505,#506,#507,#508,#509,#510,#511,#512,#513,#514,#515,#516,#517,#518,#519,#520,#521,#522,#523,#524,#525,#526,#527,#528,#529,#530,#531,#532,#533,#534,#535,#536,#537,#538,#539,#540,#541,#542,#543,#544,#545,#546,#547,#548,#549,#550,#551,#552,#553,#554,#555,#556,#557,#558,#559,#560,#561,#562,#563,#564,#565,#566,#567,#568,#569,#570,#571,#572,#573,#574,#575,#576,#577,#578,#579,#580,#581,#582,#583,#584,#585,#586,#587,#588,#589,#590,#591,#592,#593,#594,#595,#596,#597,#598,#599,#600,#601,#602,#603,#604,#605,#606,#607,#608,#609,#610,#611,#612,#613,#614,#615,#616,#617,#618,#619,#620,#621,#622,#623,#624,#625,#626,#627,#628,#629,#630,#631,#632,#633,#634,#635,#636,#637,#638,#639,#640,#641,#642,#643,#644,#645,#646,#647,#648,#649,#650,#651,#652,#653,#654,#655,#656,#657,#658,#659,#660,#661,#662,#663,#664,#665,#666,#667,#668,#669,#670,#671,#672,#673,#674,#675,#676,#677,#678,#679,#680,#681,#682,#683,#684,#685,#686,#687,#688,#689,#690,#691,#692,#693,#694,#695,#696,#697,#698,#699,#700,#701,#702,#703,#704,#705,#706,#707,#708,#709,#710,#711,#712,#713,#714,#715,#716,#717,#718,#719,#720,#721,#722,#723,#724,#725,#726,#727,#728,#729,#730,#731,#732,#733,#734,#735,#736,#737,#738,#739,#740,#741,#742,#743,#744,#745,#746,#747,#748,#749,#750,#751,#752,#753,#754,#755,#756,#757,#758,#759,#760,#761,#762,#763,#764,#765,#766,#767,#768,#769,#770,#771,#772,#773,#774,#775,#776,#777,#778,#779,#780,#781,#782,#783,#784,#785,#786,#787,#788,#789,#790,#791,#792,#793,#794,#795,#796,#797,#798,#799,#800,#801,#802,#803,#804,#805,#806,#807,#808,#809,#810,#811,#812,#813,#814,#815,#816,#817,#818,#819,#820,#821,#822,#823,#824,#825,#826,#827,#828,#829,#830,#831,#832,#833,#834,#835,#836,#837,#838,#839,#840,#841,#842,#843,#844,#845,#846,#847,#848,#849,#850,#851,#852,#853,#854,#855,#856,#857,#858,#859,#860,#861,#862,#863,#864,#865,#866,#867,#868,#869,#870,#871,#872,#873,#874,#875,#876,#877,#878,#879,#880,#881,#882,#883,#884,#885,#886,#887,#888,#889,#890,#891,#892,#893,#894,#895,#896,#897,#898,#899,#900,#901,#902,#903,#904,#905,#906,#907,#908,#909,#910,#911,#912,#913,#914,#915,#916,#917,#918,#919,#920,#921,#922,#923,#924,#925,#926,#927,#928,#929,#930,#931,#932,#933,#934,#935,#936,#937,#938,#939,#940,#941,#942,#943,#944,#945,#946,#947,#948,#949,#950,#951,#952,#953,#954,#955,#956,#957,#958,#959,#960,#961,#962,#963,#964,#965,#966,#967,#968,#969,#970,#971,#972,#973,#974,#975,#976,#977,#978,#979,#980,#981,#982,#983,#984,#985,#986,#987,#988,#989,#990,#991,#992,#993,#994,#995,#996,#997,#998,#999,#1000,#1001,#1002,#1003,#1004,#1005,#1006,#1007,#1008,#1009,#1010,#1011,#1012,#1013,#1014,#1015,#1016,#1017,#1018,#1019,#1020,#1021,#1022,#1023,#1024,#1025,#1026,#1027,#1028,#1029,#1030,#1031,#1032,#1033,#1034,#1035,#1036,#1037,#1038,#1039,#1040,#1041,#1042,#1043,#1044,#1045,#1046,#1047,#1048,#1049,#1050,#1051,#1052,#1053,#1054,#1055,#1056,#1057,#1058,#1059,#1060,#1061,#1062,#1063,#1064,#1065,#1066,#1067,#1068,#1069,#1070,#1071,#1072,#1073,#1074,#1075,#1076,#1077,#1078,#1079,#1080,#1081,#1082,#1083,#1084,#1085,#1086,#1087,#1088,#1089,#1090,#1091,#1092,#1093,#1094,#1095,#1096,#1097,#1098,#1099,#1100,#1101,#1102,#1103,#1104,#1105,#1106,#1107,#1108,#1109,#1110,#1111,#1112,#1113,#1114,#1115,#1116,#1117,#1118,#1119,#1120,#1121,#1122,#1123,#1124,#1125,#1126,#1127,#1128,#1129,#1130,#1131,#1132,#1133,#1134,#1135,#1136,#1137,#1138,#1139,#1140,#1141,#1142,#1143,#1144,#1145,#1146,#1147,#1148,#1149,#1150,#1151,#1152,#1153,#1154,#1155,#1156,#1157,#1158,#1159,#1160,#1161,#1162,#1163,#1164,#1165,#1166,#1167,#1168,#1169,#1170,#1171,#1172,#1173,#1174,#1175,#1176,#1177,#1178,#1179,#1180,#1181,#1182,#1183,#1184,#1185),$); +#1187=IFCSHAPEREPRESENTATION(#11,'Body','Tessellation',(#1186)); +#1188=IFCREPRESENTATIONMAP(#465,#1187); +#1189=IFCCARTESIANPOINT((0.,0.,0.)); +#1190=IFCDIRECTION((0.,0.,1.)); +#1191=IFCDIRECTION((1.,0.,0.)); +#1192=IFCAXIS2PLACEMENT3D(#1189,#1190,#1191); +#1198=IFCCARTESIANPOINTLIST2D(((-161.386370658875,0.390071421861649),(-162.97847032547,30.6398719549179),(-152.914509177208,57.6198659837246),(-148.716494441032,79.5774236321449),(-149.392008781433,102.066904306412),(-151.44681930542,125.798091292381),(-157.580137252808,132.616892457008),(-169.090509414673,130.419373512268),(-180.844187736511,118.465758860111),(-182.052731513977,90.6300097703934),(-183.831930160522,55.2833341062069),(-183.684945106506,39.6271869540215),(-192.724362015724,-4.67484071850777))); +#1199=IFCINDEXEDPOLYCURVE(#1198,$,$); +#1200=IFCCARTESIANPOINTLIST2D(((-173.348978161812,20.3548446297646),(-163.15957903862,61.7493018507957),(-157.428041100502,97.4122136831284),(-165.070101618767,119.064696133137))); +#1201=IFCINDEXEDPOLYCURVE(#1200,$,$); +#1202=IFCCARTESIANPOINTLIST2D(((-160.456106066704,37.40194439888),(-130.220890045166,47.9081235826015),(-97.7480411529541,54.0151223540306),(-74.405312538147,73.5662579536438),(-37.3027324676514,89.5451977849007),(-5.24431467056274,85.4801684617996),(44.9999570846558,68.9153224229813),(76.8988728523254,42.0413166284561),(100.000023841858,20.0000032782555),(112.531423568726,-13.4119689464569),(110.93932390213,-41.5389761328697),(101.917445659637,-74.4422599673271),(128.680348396301,-63.8554915785789),(138.488471508026,-43.2419404387474),(134.837985038757,-13.5693177580833),(123.972177505493,5.19884377717972),(100.000023841858,20.0000032782555))); +#1203=IFCINDEXEDPOLYCURVE(#1202,$,$); +#1204=IFCCARTESIANPOINTLIST2D(((-41.3289070129395,60.5994611978531),(-55.4808378219604,46.8897596001625),(-78.0355930328369,36.7180481553078),(-99.2635488510132,18.5858532786369),(-136.412382125854,4.43390011787415))); +#1205=IFCINDEXEDPOLYCURVE(#1204,$,$); +#1206=IFCCARTESIANPOINTLIST2D(((-143.91028881073,8.47188383340836),(-127.020835876465,23.3357548713684),(-99.5742082595825,49.370177090168),(-68.5850381851196,68.8069462776184),(-29.6431183815002,76.3391554355621),(-26.7347097396851,71.21342420578),(-33.8107347488403,58.3882182836533),(-58.5765838623047,19.0281048417091),(-103.685975074768,-7.94906169176102),(-130.663156509399,-14.5827829837799))); +#1207=IFCINDEXEDPOLYCURVE(#1206,$,$); +#1208=IFCCARTESIANPOINTLIST2D(((101.917445659637,-74.4422599673271),(77.6327848434448,-98.9715680480003),(43.5214042663574,-123.003117740154),(-1.87504291534424,-136.098772287369),(-44.7412729263306,-130.966305732727),(-75.5681991577148,-105.624251067638),(-114.447318017483,-103.237792849541),(-148.344993591309,-102.713964879513),(-129.387378692627,-83.7726220488548),(-112.089991569519,-52.3208752274513))); +#1209=IFCINDEXEDPOLYCURVE(#1208,$,$); +#1210=IFCCARTESIANPOINTLIST2D(((-148.344993591309,-102.713964879513),(-160.57014465332,-110.72414368391),(-187.541648745537,-117.346309125423),(-205.768346786499,-106.695257127285),(-214.284062385559,-90.5132815241814),(-222.012758255005,-43.5851588845253),(-217.635273933411,-23.6888602375984),(-189.349979162216,11.8629187345505))); +#1211=IFCINDEXEDPOLYCURVE(#1210,$,$); +#1212=IFCGEOMETRICCURVESET((#1199,#1201,#1203,#1205,#1207,#1209,#1211)); +#1213=IFCSHAPEREPRESENTATION(#24,'Body','Annotation2D',(#1212)); +#1214=IFCREPRESENTATIONMAP(#1192,#1213); +#1215=IFCFURNITURETYPE('02XxQ_3oT0SPrmFPATrt7o',$,'BUN01',$,$,$,(#1188,#1214),$,$,.NOTDEFINED.,.NOTDEFINED.); +ENDSEC; +END-ISO-10303-21; diff --git a/src/bonsai/test/modal/test_snap.py b/src/bonsai/test/modal/test_snap.py new file mode 100644 index 0000000000..6558c2fff0 --- /dev/null +++ b/src/bonsai/test/modal/test_snap.py @@ -0,0 +1,213 @@ +import inspect +import time + +import bpy +import pytest + +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore + + +def _assert_pass(message: str) -> None: + caller_name = inspect.stack()[1].function + GREEN = "\033[32m" + RESET = "\033[0m" + print(f"{GREEN}{caller_name} PASSED: {message}{RESET}") + + +def _handle_error(e: Exception, on_done) -> None: + RED = "\033[31m" + RESET = "\033[0m" + print(f"{RED}Assertion failed: {e}{RESET}") + on_done() + + +def run_iter_from_timer(event_iter, on_complete=None, on_error=None): + i = iter(event_iter) + done = False + + def event_step(): + nonlocal done, on_complete + try: + ret = next(i, "STOP") + # print(f"Iter step returned: {ret!r}") + if ret is None or ret == "STOP" or ret == "FINISHED": + done = True + # print("Iterator done, calling on_complete") + if on_complete: + on_complete() + return None + except StopIteration: + done = True + # print("StopIteration, calling on_complete") + if on_complete: + on_complete() + return None + except Exception as e: + done = True + print(f"Exception: {e}") + if on_error: + on_error(e) + elif on_complete: + on_complete() + return None + return 0.0 + + bpy.app.timers.register(event_step, first_interval=0.0) + + +def preset_event_simulate(window, event_type, value, x, y): + if value == "TAP": + yield window.event_simulate(event_type, "PRESS", x=x, y=y) + yield window.event_simulate(event_type, "RELEASE", x=x, y=y) + else: + yield window.event_simulate(event_type, value, x=x, y=y) + + +def test_snap_object_detection(window, x, y): + yield from preset_event_simulate(window, "ESC", "TAP", x, y) + + measure_settings = tool.Project.get_measure_tool_settings() + measure_settings.measurement_type = "POLYLINE" + for obj in tool.Blender.get_selected_objects(): + obj.select_set(False) + for area in bpy.context.screen.areas: + if area.type == "VIEW_3D": + for region in area.regions: + if region.type == "WINDOW": + with bpy.context.temp_override( + area=area, region=region, space_data=area.spaces[0] + ): + bpy.ops.bim.measure_tool("INVOKE_DEFAULT", measure_type="POLYLINE") + break + + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x, y) + yield from preset_event_simulate(window, "LEFTMOUSE", "TAP", x, y) + snap_point = tool.Model.get_polyline_props().snap_mouse_point[0] + assert snap_point.snap_object, "First click should have a snap_object" + _assert_pass("First click should have a snap_object") + assert type(snap_point.snap_object) == str, "snap_object should be an object name string." + _assert_pass("snap_object should be an object name string.") + assert snap_point.snap_object.split("/")[0] == "IfcWall", "Object should be an IfcWall" + _assert_pass("Object should be an IfcWall") + + offset = 200 + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x-offset, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x-offset, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x-offset, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x-offset, y) + yield from preset_event_simulate(window, "LEFTMOUSE", "TAP", x-offset, y) + snap_point = tool.Model.get_polyline_props().snap_mouse_point[0] + assert not snap_point.snap_object, "Second click should not have a snap_object" + _assert_pass("Second click should not have a snap_object") + + yield from preset_event_simulate(window, "RET", "TAP", x, y) + yield "FINISHED" + + +def test_snap_in_xray_mode(window, x, y): + area = next(area for area in bpy.context.screen.areas if area.type == "VIEW_3D") + area.spaces[0].shading.show_xray = True + + yield from preset_event_simulate(window, "ESC", "TAP", x, y) + + measure_settings = tool.Project.get_measure_tool_settings() + measure_settings.measurement_type = "POLYLINE" + for obj in tool.Blender.get_selected_objects(): + obj.select_set(False) + for area in bpy.context.screen.areas: + if area.type == "VIEW_3D": + for region in area.regions: + if region.type == "WINDOW": + with bpy.context.temp_override( + area=area, region=region, space_data=area.spaces[0] + ): + bpy.ops.bim.measure_tool("INVOKE_DEFAULT", measure_type="POLYLINE") + break + + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x, y) + yield from preset_event_simulate(window, "LEFTMOUSE", "TAP", x, y) + snap_point = tool.Model.get_polyline_props().snap_mouse_point[0] + assert snap_point.snap_object, "First click should have a snap_object" + _assert_pass("First click should have a snap_object") + assert type(snap_point.snap_object) == str, "snap_object should be an object name string." + _assert_pass("snap_object should be an object name string.") + assert snap_point.snap_object.split("/")[0] == "IfcFurniture", "Object should be an IfcFurniture" + _assert_pass("Object should be an IfcFurniture") + yield "FINISHED" + + +def cleanup(): + # print("CLEANUP CALLED") + bpy.app.use_event_simulate = False + bpy.ops.wm.quit_blender() + + +def get_test_queue(window): + """Returns a list of test callables to run sequentially, each in its own timer.""" + return [ + lambda w=window: test_snap_object_detection(w, 960, 540), + lambda w=window: test_snap_in_xray_mode(w, 1200, 540), + ] + +def _get_valid_window() -> bpy.types.Window: + """Return a Blender window that works even when ``bpy.context.window`` + is ``None`` (e.g. during a temporary operator context).""" + win = bpy.context.window + if win is not None: + return win + wm = getattr(bpy.context, "window_manager", None) + if wm and wm.windows: + return wm.windows[0] + raise RuntimeError("Unable to locate a Blender UI window.") + +def new_project(): + IfcStore.purge() + bpy.ops.wm.read_homefile(app_template="", use_factory_startup=True) + if len(bpy.data.objects) > 0: + bpy.data.batch_remove(bpy.data.objects) + bpy.ops.outliner.orphans_purge(do_local_ids=True, do_linked_ids=True, do_recursive=True) + if len(bpy.data.materials) > 0: + bpy.data.batch_remove(bpy.data.materials) + bpy.context.scene.unit_settings.system = "METRIC" + bpy.context.scene.unit_settings.length_unit = "MILLIMETERS" + props = tool.Project.get_project_props() + props.template_file = "0" + tool.Blender.get_addon_preferences().should_play_chaching_sound = False + + +@pytest.mark.snap +def run_tests(window): + tests = get_test_queue(window) + def run_next(): + # print(f"run_next called, {len(tests)} tests remaining, id={id(tests)}") + if not tests: + # print("No tests left, calling cleanup") + cleanup() + return + test_fn = tests.pop(0) + # print(f"Running test: {test_fn}") + current_tests = list(tests) + def on_done(): + # print(f"on_done called, tests had {len(current_tests)} items") + if current_tests: + run_next() + else: + cleanup() + run_iter_from_timer( + test_fn(), + on_complete=on_done, + on_error=lambda e: _handle_error(e, on_done), + ) + + run_next() + + +if __name__ == "__main__": + new_project() + filepath = "./test/files/snap.ifc" + bpy.ops.bim.load_project(filepath=filepath) + # load_project may clear the context.window; reacquire a valid one. + window = _get_valid_window() + run_tests(window) + diff --git a/src/bonsai/test/modal/test_wall.py b/src/bonsai/test/modal/test_wall.py new file mode 100644 index 0000000000..b6038ea95a --- /dev/null +++ b/src/bonsai/test/modal/test_wall.py @@ -0,0 +1,193 @@ +import inspect +import time + +import bpy +import ifcopenshell +import pytest + +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.model.data import AuthoringData + + +def _assert_pass(message: str) -> None: + caller_name = inspect.stack()[1].function + GREEN = "\033[32m" + RESET = "\033[0m" + print(f"{GREEN}{caller_name} PASSED: {message}{RESET}") + + +def _handle_error(e: Exception, on_done) -> None: + RED = "\033[31m" + RESET = "\033[0m" + print(f"{RED}Assertion failed: {e}{RESET}") + on_done() + + +def run_iter_from_timer(event_iter, on_complete=None, on_error=None): + i = iter(event_iter) + done = False + + def event_step(): + nonlocal done, on_complete + try: + ret = next(i, "STOP") + # print(f"Iter step returned: {ret!r}") + if ret is None or ret == "STOP" or ret == "FINISHED": + done = True + # print("Iterator done, calling on_complete") + if on_complete: + on_complete() + return None + except StopIteration: + done = True + # print("StopIteration, calling on_complete") + if on_complete: + on_complete() + return None + except Exception as e: + done = True + print(f"Exception: {e}") + if on_error: + on_error(e) + elif on_complete: + on_complete() + return None + return 0.0 + + bpy.app.timers.register(event_step, first_interval=0.0) + + +def preset_event_simulate(window, event_type, value, x, y): + if value == "TAP": + yield window.event_simulate(event_type, "PRESS", x=x, y=y) + yield window.event_simulate(event_type, "RELEASE", x=x, y=y) + else: + yield window.event_simulate(event_type, value, x=x, y=y) + + +def test_draw_polyline_wall(window, x, y): + yield from preset_event_simulate(window, "ESC", "TAP", x, y) + + for obj in tool.Blender.get_selected_objects(): + obj.select_set(False) + for area in bpy.context.screen.areas: + if area.type == "VIEW_3D": + for region in area.regions: + if region.type == "WINDOW": + with bpy.context.temp_override( + area=area, region=region, space_data=area.spaces[0] + ): + props = tool.Model.get_model_props() + ifc = tool.Ifc.get() + relating_type = ifc.by_type("IfcWallType")[0] + + if tool.Model.get_usage_type(relating_type) == "LAYER2": + print("FOI!") + props.ifc_class = "IfcWallType" + props.relating_type_id = str(relating_type.id()) + # print(wall_type) + + bpy.ops.bim.draw_polyline_wall("INVOKE_DEFAULT") + break + + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x, y) + yield from preset_event_simulate(window, "LEFTMOUSE", "TAP", x, y) + yield from preset_event_simulate(window, "X", "TAP", x, y) + + offset = 200 + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x+offset, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x+offset, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x+offset, y) + yield from preset_event_simulate(window, "MOUSEMOVE", "NOTHING", x+offset, y) + yield from preset_event_simulate(window, "LEFTMOUSE", "TAP", x+offset, y) + + yield from preset_event_simulate(window, "RET", "TAP", x, y) + element = tool.Ifc.get_entity(bpy.context.selected_objects[0]) + + assert_msg = "Created object should be IfcWall" + assert element.is_a() == "IfcWall" + _assert_pass(assert_msg) + assert_msg = "Created object should be typed by IfcWallType" + assert ifcopenshell.util.element.get_type(element).is_a() == "IfcWallType" + _assert_pass(assert_msg) + # TODO Asset the axis has the same X value + + yield "FINISHED" + + +def cleanup(): + bpy.app.use_event_simulate = False + bpy.ops.wm.quit_blender() + + +def get_test_queue(window): + """Returns a list of test callables to run sequentially, each in its own timer.""" + return [ + lambda w=window: test_draw_polyline_wall(w, 960, 540), + ] + +def _get_valid_window() -> bpy.types.Window: + """Return a Blender window that works even when ``bpy.context.window`` + is ``None`` (e.g. during a temporary operator context).""" + win = bpy.context.window + if win is not None: + return win + wm = getattr(bpy.context, "window_manager", None) + if wm and wm.windows: + return wm.windows[0] + raise RuntimeError("Unable to locate a Blender UI window.") + +def new_project(): + IfcStore.purge() + bpy.ops.wm.read_homefile(app_template="", use_factory_startup=True) + if len(bpy.data.objects) > 0: + bpy.data.batch_remove(bpy.data.objects) + bpy.ops.outliner.orphans_purge(do_local_ids=True, do_linked_ids=True, do_recursive=True) + if len(bpy.data.materials) > 0: + bpy.data.batch_remove(bpy.data.materials) + bpy.context.scene.unit_settings.system = "METRIC" + bpy.context.scene.unit_settings.length_unit = "MILLIMETERS" + props = tool.Project.get_project_props() + props.template_file = "0" + tool.Blender.get_addon_preferences().should_play_chaching_sound = False + + +@pytest.mark.snap +def run_tests(window): + tests = get_test_queue(window) + def run_next(): + # print(f"run_next called, {len(tests)} tests remaining, id={id(tests)}") + if not tests: + # print("No tests left, calling cleanup") + cleanup() + return + test_fn = tests.pop(0) + # print(f"Running test: {test_fn}") + current_tests = list(tests) + def on_done(): + # print(f"on_done called, tests had {len(current_tests)} items") + if current_tests: + run_next() + else: + cleanup() + run_iter_from_timer( + test_fn(), + on_complete=on_done, + on_error=lambda e: _handle_error(e, on_done), + ) + + run_next() + + +if __name__ == "__main__": + new_project() + filepath = "./test/files/wall.ifc" + bpy.ops.bim.load_project(filepath=filepath) + window = _get_valid_window() + run_tests(window) + +