// bimtex example 14 — three-storey hotel, ballroom, spa, gym and resort pool
//
// This is an original coordinated design, not a reconstruction of a real hotel,
// planning application or hospitality brand. The 100 × 80 m parcel, 42 × 24 m
// hotel, guest-room bay, ballroom layout, wellness suite, parking and pool were
// composed together for this example. No dimensions or architectural details
// are claimed to derive from a built precedent.
{"t":"project","id":"hotel-spa","name":"Aster Court Hotel + Spa","summary":"A three-storey resort hotel with twenty twin guest rooms, a ballroom, bar and lounge, full gym and salon suite, and a landscaped outdoor pool.","unit":"m","typology":"residential","frontSide":"south","light":"golden-hour"}
{"t":"parcel","id":"hotel-parcel","x":0,"y":0,"w":100,"d":80,"address":"Original coordinated hospitality site study","frontage":"south"}
{"t":"grade","id":"hotel-grade","elev":0}
{"t":"setback","id":"hotel-setback","margin":{"north":4,"south":4,"east":4,"west":4}}
//
// Site arrival, parking, pool garden and planting.
{"t":"street","id":"hotel-street","name":"ASTER COURT","from":[-5,85],"to":[105,85],"width":10,"lanes":2,"class":"local"}
{"t":"curb","id":"south-curb-west","from":[0,80],"to":[45,80]}
{"t":"curb","id":"south-curb-east","from":[55,80],"to":[100,80]}
{"t":"road","id":"arrival-drive","use":"two-way guest arrival","width":7,"from":[50,80],"path":[{"to":[50,57]}],"material":"hotel-asphalt"}
{"t":"paving","id":"arrival-forecourt","label":"ARRIVAL FORECOURT","use":"driveway","shape":"circle","cx":50,"cy":54,"r":10,"material":"hotel-asphalt"}
{"t":"paving","id":"entry-walk","label":"HOTEL ENTRY WALK","use":"walkway","x":39,"y":45,"w":22,"d":5,"material":"hotel-paving"}
{"t":"paving","id":"west-parking-court","label":"WEST GUEST PARKING","use":"parking","x":7,"y":52,"w":22,"d":17,"material":"hotel-asphalt"}
{"t":"paving","id":"east-parking-court","label":"EAST GUEST PARKING","use":"parking","x":71,"y":52,"w":22,"d":17,"material":"hotel-asphalt"}
{"t":"parking","id":"west-guest-stalls","x":8,"y":55,"along":"x","count":8,"accessible":1,"material":"hotel-asphalt"}
{"t":"parking","id":"east-guest-stalls","x":72,"y":55,"along":"x","count":8,"accessible":1,"material":"hotel-asphalt"}
{"t":"asset","id":"guest-car-west","class":"car","x":10.7,"y":56,"w":1.85,"d":4.5,"z0":0,"z1":1.5}
{"t":"asset","id":"guest-suv-east","class":"car-suv","x":82.5,"y":56,"w":1.95,"d":4.65,"z0":0,"z1":1.7}
{"t":"asset","id":"parking-light-west","class":"light-column","x":8.5,"y":51,"w":0.45,"d":0.45,"z0":0,"z1":7}
{"t":"asset","id":"parking-light-east","class":"light-column","x":91,"y":51,"w":0.45,"d":0.45,"z0":0,"z1":7}
{"t":"landscape","id":"north-garden","x":5,"y":5,"w":90,"d":12,"planting":{"species":"ornamental grasses","count":70,"spacing":1.2}}
{"t":"landscape","id":"west-garden","x":5,"y":18,"w":18,"d":30,"planting":{"species":"low evergreen planting","count":50,"spacing":1.1}}
{"t":"landscape","id":"pool-garden","x":73,"y":18,"w":23,"d":30,"planting":{"species":"spa garden planting","count":60,"spacing":1}}
{"t":"tree","id":"palm-nw","x":12,"y":11,"canopy":4,"species":"palm"}
{"t":"tree","id":"palm-n1","x":30,"y":10,"canopy":4,"species":"palm"}
{"t":"tree","id":"palm-n2","x":50,"y":9,"canopy":4,"species":"palm"}
{"t":"tree","id":"palm-n3","x":70,"y":10,"canopy":4,"species":"palm"}
{"t":"tree","id":"palm-ne","x":89,"y":11,"canopy":4,"species":"palm"}
{"t":"tree","id":"palm-west-1","x":13,"y":25,"canopy":3.5,"species":"palm"}
{"t":"tree","id":"palm-west-2","x":13,"y":42,"canopy":3.5,"species":"palm"}
{"t":"tree","id":"palm-pool-1","x":79,"y":19,"canopy":3.5,"species":"palm"}
{"t":"tree","id":"palm-pool-2","x":92,"y":19,"canopy":3.5,"species":"palm"}
{"t":"tree","id":"palm-pool-3","x":93,"y":42,"canopy":3.5,"species":"palm"}
{"t":"paving","id":"pool-terrace","label":"SPA POOL TERRACE","use":"patio","x":74,"y":21,"w":22,"d":17,"material":"hotel-paving"}
{"t":"pool","id":"resort-pool","x":77,"y":24,"w":16,"d":6.5,"depth":1.5,"shell":0.25,"setback":2,"material":"pack-pool-plaster","water":"pack-pool-water"}
{"t":"fence","id":"pool-fence-n","from":[75,22],"to":[95,22],"height":1.2,"kind":"pool"}
{"t":"fence","id":"pool-fence-e","from":[95,22],"to":[95,36],"height":1.2,"kind":"pool"}
{"t":"fence","id":"pool-fence-s","from":[95,36],"to":[75,36],"height":1.2,"kind":"pool"}
{"t":"fence","id":"pool-fence-w","from":[75,36],"to":[75,22],"height":1.2,"kind":"pool"}
{"t":"asset","id":"pool-lounger-1","class":"lounger","x":77,"y":32,"w":2,"d":0.78,"z0":0,"z1":0.82}
{"t":"asset","id":"pool-lounger-2","class":"lounger","x":83,"y":32,"w":2,"d":0.78,"z0":0,"z1":0.82}
{"t":"asset","id":"pool-lounger-3","class":"lounger","x":89,"y":32,"w":2,"d":0.78,"z0":0,"z1":0.82}
{"t":"asset","id":"pool-table-1","class":"pool-side-table","x":80,"y":33,"w":0.55,"d":0.55,"z0":0,"z1":0.55}
{"t":"asset","id":"pool-table-2","class":"pool-side-table","x":86,"y":33,"w":0.55,"d":0.55,"z0":0,"z1":0.55}
//
// One compact footprint carries the three stacked hotel levels.
{"t":"footprint","id":"hotel-footprint","label":"ASTER COURT HOTEL + SPA","x":29,"y":21,"w":42,"d":24}
{"t":"building","id":"hotel-building","label":"Three-storey hotel","footprint":"hotel-footprint"}
{"t":"level","id":"g","name":"Ground Floor — Guest + Events","elev":0,"height":4.4,"ceiling":4}
{"t":"level","id":"l1","name":"First Floor — Guest Rooms 101–110","elev":4.4,"height":3.4,"ceiling":3}
{"t":"level","id":"l2","name":"Second Floor — Guest Rooms 201–210","elev":7.8,"height":3.4,"ceiling":3}
{"t":"slab","id":"slab-g","level":"g","x":0,"y":0,"w":42,"d":24,"thickness":0.28,"material":"hotel-concrete"}
{"t":"slab","id":"slab-l1","level":"l1","x":0,"y":0,"w":42,"d":24,"thickness":0.28,"material":"hotel-concrete"}
{"t":"slab","id":"slab-l2","level":"l2","x":0,"y":0,"w":42,"d":24,"thickness":0.28,"material":"hotel-concrete"}
//
// Ground floor programme: events and service north, public and spa rooms south.
{"t":"room","id":"g-ballroom","label":"Ballroom + Function Room","use":"assembly","level":"g","x":0.3,"y":0.3,"w":18,"d":10.2}
{"t":"room","id":"g-boh-kitchen","label":"Banquet Kitchen","use":"service","level":"g","x":18.3,"y":0.3,"w":8,"d":5.2}
{"t":"room","id":"g-boh-store","label":"Ballroom Store + Service","use":"storage","level":"g","x":18.3,"y":5.5,"w":8,"d":5}
{"t":"room","id":"g-gym","label":"GYM","use":"assembly","level":"g","x":26.3,"y":0.3,"w":7.7,"d":10.2}
{"t":"room","id":"g-salon","label":"SPA SALON","use":"retail","level":"g","x":34,"y":0.3,"w":7.7,"d":10.2}
{"t":"room","id":"g-corridor","label":"Ground Floor Gallery","use":"circulation","level":"g","x":0.3,"y":10.5,"w":41.4,"d":3}
{"t":"room","id":"g-bar","label":"Bar + Lounge","use":"dining","level":"g","x":0.3,"y":13.5,"w":12,"d":10.2}
{"t":"room","id":"g-lobby","label":"Hotel Lobby + Reception","use":"living","level":"g","x":12.3,"y":13.5,"w":14,"d":10.2}
{"t":"room","id":"g-spa-reception","label":"SPA LOUNGE","use":"living","level":"g","x":26.3,"y":13.5,"w":7.7,"d":10.2}
{"t":"room","id":"g-change-women","label":"WOMEN","use":"bathroom","level":"g","x":34,"y":13.5,"w":3.85,"d":10.2}
{"t":"room","id":"g-change-men","label":"MEN","use":"bathroom","level":"g","x":37.85,"y":13.5,"w":3.85,"d":10.2}
{"t":"wall","id":"g-north","level":"g","side":"north","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"g-south","level":"g","side":"south","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"g-east","level":"g","side":"east","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"g-west","level":"g","side":"west","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"g-north-ballroom-boh","level":"g","from":[18.3,0],"to":[18.3,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-north-boh-gym","level":"g","from":[26.3,0],"to":[26.3,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-north-gym-salon","level":"g","from":[34,0],"to":[34,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-boh-kitchen-store","level":"g","from":[18.3,5.5],"to":[26.3,5.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-corridor-n","level":"g","from":[0,10.5],"to":[42,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-corridor-s","level":"g","from":[0,13.5],"to":[42,13.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-south-bar-lobby","level":"g","from":[12.3,13.5],"to":[12.3,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-south-lobby-spa","level":"g","from":[26.3,13.5],"to":[26.3,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-south-spa-women","level":"g","from":[34,13.5],"to":[34,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"g-south-women-men","level":"g","from":[37.85,13.5],"to":[37.85,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"opening","id":"g-ballroom-door","on":"g-corridor-n","kind":"door","at":7.5,"width":1.8,"operation":"sliding","head":2.4,"between":["g-ballroom","g-corridor"]}
{"t":"opening","id":"g-boh-door","on":"g-corridor-n","kind":"door","at":21.4,"width":1.1,"operation":"sliding","head":2.4,"between":["g-boh-store","g-corridor"]}
{"t":"opening","id":"g-gym-door","on":"g-corridor-n","kind":"door","at":29.5,"width":1.1,"operation":"sliding","head":2.4,"between":["g-gym","g-corridor"]}
{"t":"opening","id":"g-salon-door","on":"g-corridor-n","kind":"door","at":37,"width":1.1,"operation":"sliding","head":2.4,"between":["g-salon","g-corridor"]}
{"t":"opening","id":"g-bar-door","on":"g-corridor-s","kind":"door","at":5.5,"width":1.4,"operation":"double-acting","head":2.4,"between":["g-corridor","g-bar"]}
{"t":"opening","id":"g-lobby-gallery-door","on":"g-corridor-s","kind":"door","at":18.5,"width":1.8,"operation":"double-acting","head":2.4,"between":["g-corridor","g-lobby"]}
{"t":"opening","id":"g-spa-door","on":"g-corridor-s","kind":"door","at":29.5,"width":1.1,"operation":"sliding","head":2.4,"between":["g-corridor","g-spa-reception"]}
{"t":"opening","id":"g-women-door","on":"g-corridor-s","kind":"door","at":35.4,"width":0.9,"operation":"sliding","head":2.4,"between":["g-corridor","g-change-women"]}
{"t":"opening","id":"g-men-door","on":"g-corridor-s","kind":"door","at":39.2,"width":0.9,"operation":"sliding","head":2.4,"between":["g-corridor","g-change-men"]}
{"t":"opening","id":"g-kitchen-store-door","on":"g-boh-kitchen-store","kind":"door","at":21.7,"width":1.1,"operation":"sliding","head":2.4,"between":["g-boh-kitchen","g-boh-store"]}
{"t":"opening","id":"hotel-main-entry","on":"g-south","kind":"door","operation":"double-acting","at":18.9,"width":2.2,"leaves":2,"sill":0,"head":2.8,"room":"g-lobby"}
{"t":"canopy","id":"hotel-entry-canopy","on":"hotel-main-entry","width":5.5,"depth":3.2,"base":3.15,"thickness":0.22,"material":"hotel-bronze"}
{"t":"opening","id":"hotel-service-entry","on":"g-north","kind":"door","operation":"swing","at":21.5,"width":1.1,"sill":0,"head":2.4,"room":"g-boh-kitchen"}
{"t":"opening","id":"ballroom-n-window-1","on":"g-north","kind":"window","operation":"fixed","at":2.5,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"ballroom-n-window-2","on":"g-north","kind":"window","operation":"fixed","at":8,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"ballroom-n-window-3","on":"g-north","kind":"window","operation":"fixed","at":13.5,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"gym-n-window","on":"g-north","kind":"window","operation":"fixed","at":28,"width":3.2,"sill":0.75,"head":3.1}
{"t":"opening","id":"salon-n-window","on":"g-north","kind":"window","operation":"fixed","at":36,"width":3.2,"sill":0.75,"head":3.1}
{"t":"opening","id":"bar-s-window-1","on":"g-south","kind":"window","operation":"fixed","at":2,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"bar-s-window-2","on":"g-south","kind":"window","operation":"fixed","at":7,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"spa-s-window","on":"g-south","kind":"window","operation":"fixed","at":28.5,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"women-s-window","on":"g-south","kind":"window","operation":"fixed","at":34.5,"width":1.8,"sill":0.75,"head":3.1}
{"t":"opening","id":"men-s-window","on":"g-south","kind":"window","operation":"fixed","at":39,"width":1.8,"sill":0.75,"head":3.1}
{"t":"opening","id":"ballroom-w-window","on":"g-west","kind":"window","operation":"fixed","at":3,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"bar-w-window","on":"g-west","kind":"window","operation":"fixed","at":17.5,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"salon-e-window","on":"g-east","kind":"window","operation":"fixed","at":3,"width":3,"sill":0.75,"head":3.1}
{"t":"opening","id":"spa-e-window","on":"g-east","kind":"window","operation":"fixed","at":17.5,"width":3,"sill":0.75,"head":3.1}
//
// Ballroom furniture stays semantic on plan; specialist assembly pieces dress 3D.
{"t":"furniture","id":"ballroom-rounds","type":"round-table-8","label":"Six Banquet Rounds","level":"g","x":1.5,"y":3.3,"w":1.8,"d":1.8,"height":0.74,"cols":3,"rows":2,"gapX":3.2,"gapY":1.9}
{"t":"furniture","id":"ballroom-trestles","type":"banquet-table","label":"Banquet Trestles","level":"g","x":15,"y":3,"w":1.83,"d":0.76,"height":0.74,"rows":3,"gapY":1.2}
{"t":"asset","id":"ballroom-stage","class":"stage","x":36.3,"y":21.5,"w":4,"d":2.2,"z0":0,"z1":0.42}
{"t":"asset","id":"ballroom-lectern","class":"lectern","x":34.9,"y":22.5,"w":0.6,"d":0.45,"z0":0,"z1":1.1}
{"t":"asset","id":"ballroom-screen","class":"av-screen","x":36.8,"y":21.42,"w":3,"d":0.18,"z0":0.6,"z1":3.2}
{"t":"asset","id":"ballroom-folding-chair-01","class":"folding-chair","x":31.18,"y":23.8,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-02","class":"folding-chair","x":31.18,"y":26.150000000000002,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-03","class":"folding-chair","x":30,"y":24.98,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-04","class":"folding-chair","x":32.35,"y":24.98,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-05","class":"folding-chair","x":36.18,"y":23.8,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-06","class":"folding-chair","x":36.18,"y":26.150000000000002,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-07","class":"folding-chair","x":35,"y":24.98,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-08","class":"folding-chair","x":37.35,"y":24.98,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-09","class":"folding-chair","x":41.18,"y":23.8,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-10","class":"folding-chair","x":41.18,"y":26.150000000000002,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-11","class":"folding-chair","x":40,"y":24.98,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-12","class":"folding-chair","x":42.35,"y":24.98,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-13","class":"folding-chair","x":31.18,"y":27.5,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-14","class":"folding-chair","x":31.18,"y":29.85,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-15","class":"folding-chair","x":30,"y":28.68,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-16","class":"folding-chair","x":32.35,"y":28.68,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-17","class":"folding-chair","x":36.18,"y":27.5,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-18","class":"folding-chair","x":36.18,"y":29.85,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-19","class":"folding-chair","x":35,"y":28.68,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-20","class":"folding-chair","x":37.35,"y":28.68,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-21","class":"folding-chair","x":41.18,"y":27.5,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-22","class":"folding-chair","x":41.18,"y":29.85,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-23","class":"folding-chair","x":40,"y":28.68,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
{"t":"asset","id":"ballroom-folding-chair-24","class":"folding-chair","x":42.35,"y":28.68,"w":0.45,"d":0.5,"z0":0,"z1":0.85}
//
// Back-of-house kitchen equipment.
{"t":"furniture","id":"boh-prep-table","type":"prep-table","level":"g","x":19,"y":1,"w":1.5,"d":0.75,"height":0.9}
{"t":"furniture","id":"boh-commercial-sink","type":"commercial-sink","level":"g","x":23.5,"y":1,"w":1.8,"d":0.75,"height":1.22}
//
// Every fitness pack element has a credible station in the gym.
{"t":"asset","id":"gym-treadmill","class":"treadmill","x":55.8,"y":22,"w":1,"d":2,"z0":0,"z1":1.5}
{"t":"asset","id":"gym-squat-rack","class":"squat-rack","x":58,"y":22,"w":2,"d":1.5,"z0":0,"z1":2.3}
{"t":"asset","id":"gym-flat-bench","class":"weight-bench","x":58.3,"y":24.3,"w":1.4,"d":0.55,"z0":0,"z1":0.55}
{"t":"asset","id":"gym-dumbbell-rack","class":"dumbbell-rack","x":60.5,"y":21.7,"w":2,"d":0.6,"z0":0,"z1":1.05}
{"t":"asset","id":"gym-cable-crossover","class":"cable-machine","x":55.8,"y":27.8,"w":2.8,"d":1,"z0":0,"z1":2.3}
{"t":"asset","id":"gym-rowing-machine","class":"rower","x":59.3,"y":26.3,"w":0.7,"d":2.4,"z0":0,"z1":0.9}
{"t":"asset","id":"gym-upright-bike","class":"exercise-bike","x":61.5,"y":25,"w":0.7,"d":1.2,"z0":0,"z1":1.4}
{"t":"asset","id":"gym-mat-stack","class":"mat-stack","x":61.5,"y":28.5,"w":0.8,"d":0.6,"z0":0,"z1":1}
{"t":"asset","id":"gym-mirror-wall","class":"mirror-wall","x":55.42,"y":23.5,"w":0.15,"d":5,"z0":0.2,"z1":2.9}
//
// Every salon pack element has a working position in the treatment suite.
{"t":"asset","id":"salon-styling-chair-1","class":"styling-chair","x":63.7,"y":24,"w":0.75,"d":0.75,"z0":0,"z1":1.15}
{"t":"asset","id":"salon-styling-chair-2","class":"styling-chair","x":66,"y":24,"w":0.75,"d":0.75,"z0":0,"z1":1.15}
{"t":"asset","id":"salon-styling-station-1","class":"styling-station","x":63.6,"y":21.55,"w":1,"d":0.45,"z0":0,"z1":2}
{"t":"asset","id":"salon-styling-station-2","class":"styling-station","x":65.9,"y":21.55,"w":1,"d":0.45,"z0":0,"z1":2}
{"t":"asset","id":"salon-shampoo-unit","class":"shampoo-unit","x":69,"y":22,"w":0.8,"d":1.5,"z0":0,"z1":1.1}
{"t":"asset","id":"salon-nail-table","class":"nail-table","x":63.7,"y":27,"w":1.2,"d":0.6,"z0":0,"z1":0.82}
{"t":"asset","id":"salon-pedicure-chair","class":"pedicure-chair","x":66.3,"y":26.4,"w":1,"d":1.5,"z0":0,"z1":1.4}
{"t":"asset","id":"salon-reception-desk","class":"reception-desk","x":63.5,"y":30.1,"w":1.8,"d":0.8,"z0":0,"z1":1.15}
{"t":"asset","id":"salon-waiting-bench","class":"waiting-bench","x":66,"y":30.2,"w":1.8,"d":0.6,"z0":0,"z1":0.9}
{"t":"asset","id":"salon-towel-cabinet","class":"towel-cabinet","x":69.5,"y":27.5,"w":0.8,"d":0.45,"z0":0,"z1":1.6}
//
// Lobby, lounge and changing-room fittings are explicitly sized.
{"t":"furniture","id":"bar-counter","type":"bar","level":"g","x":0.8,"y":14.2,"w":4,"d":0.7,"height":1.07,"rot":0}
{"t":"furniture","id":"bar-sofa-1","type":"sofa","level":"g","x":1,"y":17.3,"w":2.1,"d":0.9,"height":0.8,"rot":0}
{"t":"furniture","id":"bar-sofa-2","type":"sofa","level":"g","x":6.5,"y":20.2,"w":2.1,"d":0.9,"height":0.8,"rot":180}
{"t":"furniture","id":"bar-coffee-table","type":"coffee-table","level":"g","x":3.8,"y":18.1,"w":1.1,"d":0.6,"height":0.42,"rot":0}
{"t":"furniture","id":"lobby-reception","type":"checkout","level":"g","x":13.2,"y":14.2,"w":2,"d":0.9,"height":1.05,"rot":0}
{"t":"furniture","id":"lobby-sofa","type":"sofa","level":"g","x":14,"y":19,"w":2.1,"d":0.9,"height":0.8,"rot":0}
{"t":"furniture","id":"lobby-coffee-table","type":"coffee-table","level":"g","x":17,"y":19.2,"w":1.1,"d":0.6,"height":0.42,"rot":0}
{"t":"furniture","id":"lobby-armchair-1","type":"armchair","level":"g","x":20,"y":18.4,"w":0.85,"d":0.85,"height":0.88,"rot":0}
{"t":"furniture","id":"lobby-armchair-2","type":"armchair","level":"g","x":22,"y":18.4,"w":0.85,"d":0.85,"height":0.88,"rot":0}
{"t":"furniture","id":"spa-sofa","type":"sofa","level":"g","x":27,"y":18,"w":2.1,"d":0.9,"height":0.8,"rot":0}
{"t":"furniture","id":"spa-coffee-table","type":"coffee-table","level":"g","x":29.5,"y":18.2,"w":1.1,"d":0.6,"height":0.42,"rot":0}
{"t":"furniture","id":"women-change-wc","type":"toilet","level":"g","x":34.3,"y":15,"w":0.42,"d":0.72,"height":0.78}
{"t":"furniture","id":"women-change-basin","type":"sink","level":"g","x":35.5,"y":15,"w":0.55,"d":0.48,"height":1.1}
{"t":"furniture","id":"women-change-shower","type":"shower","level":"g","x":35.1,"y":21.7,"w":0.9,"d":0.9,"height":2.1}
{"t":"furniture","id":"men-change-wc","type":"toilet","level":"g","x":38.15,"y":15,"w":0.42,"d":0.72,"height":0.78}
{"t":"furniture","id":"men-change-basin","type":"sink","level":"g","x":39.35,"y":15,"w":0.55,"d":0.48,"height":1.1}
{"t":"furniture","id":"men-change-shower","type":"shower","level":"g","x":38.95,"y":21.7,"w":0.9,"d":0.9,"height":2.1}
//
// Two reusable guest-room bays keep the twenty rooms genuinely repetitive.
{"t":"module","id":"guest-bay-north","entities":[{"t":"room","id":"n-bedroom","label":"TWIN ROOM","use":"bedroom","level":"template","x":0,"y":0,"w":6.9,"d":6.7},{"t":"room","id":"n-bath","label":"BATH","use":"bathroom","level":"template","x":0,"y":6.7,"w":2.6,"d":3.5},{"t":"room","id":"n-entry","label":"ENTRY","use":"circulation","level":"template","x":2.6,"y":6.7,"w":4.3,"d":3.5},{"t":"wall","id":"n-room-divider","level":"template","from":[0,6.7],"to":[6.9,6.7],"type":"partition","thickness":0.15,"material":"hotel-partition"},{"t":"wall","id":"n-bath-divider","level":"template","from":[2.6,6.7],"to":[2.6,10.2],"type":"partition","thickness":0.15,"material":"hotel-partition"},{"t":"opening","id":"n-bedroom-door","on":"n-room-divider","kind":"door","operation":"sliding","at":"two-thirds","width":1,"between":["n-entry","n-bedroom"]},{"t":"opening","id":"n-bath-door","on":"n-bath-divider","kind":"door","operation":"sliding","at":"center","width":0.9,"between":["n-entry","n-bath"]},{"t":"furniture","id":"n-bed-west","type":"bed-single","level":"template","x":0.8,"y":0.7,"w":0.97,"d":2.03,"height":0.95},{"t":"furniture","id":"n-bed-east","type":"bed-single","level":"template","x":3.8,"y":0.7,"w":0.97,"d":2.03,"height":0.95},{"t":"furniture","id":"n-nightstand","type":"nightstand","level":"template","x":2.7,"y":0.8,"w":0.5,"d":0.45,"height":0.58},{"t":"furniture","id":"n-wc","type":"toilet","level":"template","x":0.3,"y":7.05,"w":0.42,"d":0.72,"height":0.78},{"t":"furniture","id":"n-basin","type":"sink","level":"template","x":1.5,"y":7.05,"w":0.55,"d":0.48,"height":1.1},{"t":"furniture","id":"n-shower","type":"shower","level":"template","x":0.4,"y":8.85,"w":0.9,"d":0.9,"height":2.1}]}
{"t":"module","id":"guest-bay-south","entities":[{"t":"room","id":"s-bath","label":"BATH","use":"bathroom","level":"template","x":0,"y":0,"w":2.6,"d":3.5},{"t":"room","id":"s-entry","label":"ENTRY","use":"circulation","level":"template","x":2.6,"y":0,"w":4.3,"d":3.5},{"t":"room","id":"s-bedroom","label":"TWIN ROOM","use":"bedroom","level":"template","x":0,"y":3.5,"w":6.9,"d":6.7},{"t":"wall","id":"s-room-divider","level":"template","from":[0,3.5],"to":[6.9,3.5],"type":"partition","thickness":0.15,"material":"hotel-partition"},{"t":"wall","id":"s-bath-divider","level":"template","from":[2.6,0],"to":[2.6,3.5],"type":"partition","thickness":0.15,"material":"hotel-partition"},{"t":"opening","id":"s-bedroom-door","on":"s-room-divider","kind":"door","operation":"sliding","at":"two-thirds","width":1,"between":["s-entry","s-bedroom"]},{"t":"opening","id":"s-bath-door","on":"s-bath-divider","kind":"door","operation":"sliding","at":"center","width":0.9,"between":["s-entry","s-bath"]},{"t":"furniture","id":"s-bed-west","type":"bed-single","level":"template","x":0.8,"y":7,"w":0.97,"d":2.03,"height":0.95,"rot":180},{"t":"furniture","id":"s-bed-east","type":"bed-single","level":"template","x":3.8,"y":7,"w":0.97,"d":2.03,"height":0.95,"rot":180},{"t":"furniture","id":"s-nightstand","type":"nightstand","level":"template","x":2.7,"y":8.75,"w":0.5,"d":0.45,"height":0.58,"rot":180},{"t":"furniture","id":"s-wc","type":"toilet","level":"template","x":0.3,"y":0.35,"w":0.42,"d":0.72,"height":0.78,"rot":180},{"t":"furniture","id":"s-basin","type":"sink","level":"template","x":1.5,"y":0.35,"w":0.55,"d":0.48,"height":1.1,"rot":180},{"t":"furniture","id":"s-shower","type":"shower","level":"template","x":0.4,"y":1.75,"w":0.9,"d":0.9,"height":2.1}]}
//
// First guest floor: six north rooms, four south rooms and a compact service core.
{"t":"room","id":"l1-corridor","label":"Guest Corridor 1","use":"circulation","level":"l1","x":0.3,"y":10.5,"w":41.4,"d":3}
{"t":"room","id":"l1-housekeeping","label":"LINEN 1","use":"service","level":"l1","x":14.1,"y":13.5,"w":6.9,"d":10.2}
{"t":"room","id":"l1-guest-lounge","label":"LOUNGE 1","use":"living","level":"l1","x":21,"y":13.5,"w":6.9,"d":10.2}
{"t":"instance","id":"l1-n01","module":"guest-bay-north","level":"l1","x":0.3,"y":0.3}
{"t":"instance","id":"l1-n02","module":"guest-bay-north","level":"l1","x":7.2,"y":0.3}
{"t":"instance","id":"l1-n03","module":"guest-bay-north","level":"l1","x":14.1,"y":0.3}
{"t":"instance","id":"l1-n04","module":"guest-bay-north","level":"l1","x":21,"y":0.3}
{"t":"instance","id":"l1-n05","module":"guest-bay-north","level":"l1","x":27.9,"y":0.3}
{"t":"instance","id":"l1-n06","module":"guest-bay-north","level":"l1","x":34.8,"y":0.3}
{"t":"instance","id":"l1-s01","module":"guest-bay-south","level":"l1","x":0.3,"y":13.5}
{"t":"instance","id":"l1-s02","module":"guest-bay-south","level":"l1","x":7.2,"y":13.5}
{"t":"instance","id":"l1-s03","module":"guest-bay-south","level":"l1","x":27.9,"y":13.5}
{"t":"instance","id":"l1-s04","module":"guest-bay-south","level":"l1","x":34.8,"y":13.5}
{"t":"wall","id":"l1-north","level":"l1","side":"north","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l1-south","level":"l1","side":"south","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l1-east","level":"l1","side":"east","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l1-west","level":"l1","side":"west","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l1-north-party-1","level":"l1","from":[7.2,0],"to":[7.2,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-south-party-1","level":"l1","from":[7.2,13.5],"to":[7.2,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-north-party-2","level":"l1","from":[14.1,0],"to":[14.1,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-south-party-2","level":"l1","from":[14.1,13.5],"to":[14.1,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-north-party-3","level":"l1","from":[21,0],"to":[21,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-south-party-3","level":"l1","from":[21,13.5],"to":[21,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-north-party-4","level":"l1","from":[27.9,0],"to":[27.9,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-south-party-4","level":"l1","from":[27.9,13.5],"to":[27.9,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-north-party-5","level":"l1","from":[34.8,0],"to":[34.8,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-south-party-5","level":"l1","from":[34.8,13.5],"to":[34.8,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-corridor-n","level":"l1","from":[0,10.5],"to":[42,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l1-corridor-s","level":"l1","from":[0,13.5],"to":[42,13.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"opening","id":"l1-north-entry-1","on":"l1-corridor-n","kind":"door","operation":"sliding","at":4.3,"width":1.05,"between":["l1-corridor","l1-n01/n-entry"]}
{"t":"opening","id":"l1-north-entry-2","on":"l1-corridor-n","kind":"door","operation":"sliding","at":11.2,"width":1.05,"between":["l1-corridor","l1-n02/n-entry"]}
{"t":"opening","id":"l1-north-entry-3","on":"l1-corridor-n","kind":"door","operation":"sliding","at":18.1,"width":1.05,"between":["l1-corridor","l1-n03/n-entry"]}
{"t":"opening","id":"l1-north-entry-4","on":"l1-corridor-n","kind":"door","operation":"sliding","at":25,"width":1.05,"between":["l1-corridor","l1-n04/n-entry"]}
{"t":"opening","id":"l1-north-entry-5","on":"l1-corridor-n","kind":"door","operation":"sliding","at":31.9,"width":1.05,"between":["l1-corridor","l1-n05/n-entry"]}
{"t":"opening","id":"l1-north-entry-6","on":"l1-corridor-n","kind":"door","operation":"sliding","at":38.8,"width":1.05,"between":["l1-corridor","l1-n06/n-entry"]}
{"t":"opening","id":"l1-south-entry-1","on":"l1-corridor-s","kind":"door","operation":"sliding","at":4.3,"width":1.05,"between":["l1-corridor","l1-s01/s-entry"]}
{"t":"opening","id":"l1-south-entry-2","on":"l1-corridor-s","kind":"door","operation":"sliding","at":11.2,"width":1.05,"between":["l1-corridor","l1-s02/s-entry"]}
{"t":"opening","id":"l1-south-entry-3","on":"l1-corridor-s","kind":"door","operation":"sliding","at":31.9,"width":1.05,"between":["l1-corridor","l1-s03/s-entry"]}
{"t":"opening","id":"l1-south-entry-4","on":"l1-corridor-s","kind":"door","operation":"sliding","at":38.8,"width":1.05,"between":["l1-corridor","l1-s04/s-entry"]}
{"t":"opening","id":"l1-housekeeping-door","on":"l1-corridor-s","kind":"door","operation":"sliding","at":16.8,"width":1,"between":["l1-corridor","l1-housekeeping"]}
{"t":"opening","id":"l1-lounge-door","on":"l1-corridor-s","kind":"door","operation":"double-acting","at":23.8,"width":1.4,"between":["l1-corridor","l1-guest-lounge"]}
{"t":"opening","id":"l1-north-windows","on":"l1-north","kind":"window","operation":"fixed","at":2.25,"width":3,"sill":0.7,"head":2.55,"repeat":{"count":6,"spacing":6.9}}
{"t":"opening","id":"l1-south-windows","on":"l1-south","kind":"window","operation":"fixed","at":2.25,"width":3,"sill":0.7,"head":2.55,"repeat":{"count":6,"spacing":6.9}}
{"t":"opening","id":"l1-west-window-1","on":"l1-west","kind":"window","operation":"fixed","at":2.3,"width":3,"sill":0.7,"head":2.55}
{"t":"opening","id":"l1-west-window-2","on":"l1-west","kind":"window","operation":"fixed","at":18,"width":3,"sill":0.7,"head":2.55}
{"t":"opening","id":"l1-east-window-1","on":"l1-east","kind":"window","operation":"fixed","at":2.3,"width":3,"sill":0.7,"head":2.55}
{"t":"opening","id":"l1-east-window-2","on":"l1-east","kind":"window","operation":"fixed","at":18,"width":3,"sill":0.7,"head":2.55}
{"t":"asset","id":"l1-n01-headboard-west","class":"headboard-panel","x":30.1,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n01-headboard-east","class":"headboard-panel","x":33.1,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n01-luggage-bench","class":"luggage-bench","x":32.1,"y":25.4,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-n01-minibar","class":"minibar","x":34.55,"y":28.35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-n01-fan-coil","class":"fan-coil","x":34.65,"y":21.42,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-n01-wardrobe","class":"wardrobe-niche","x":32.2,"y":29.3,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-n02-headboard-west","class":"headboard-panel","x":37,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n02-headboard-east","class":"headboard-panel","x":40,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n02-luggage-bench","class":"luggage-bench","x":39,"y":25.4,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-n02-minibar","class":"minibar","x":41.45,"y":28.35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-n02-fan-coil","class":"fan-coil","x":41.550000000000004,"y":21.42,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-n02-wardrobe","class":"wardrobe-niche","x":39.1,"y":29.3,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-n03-headboard-west","class":"headboard-panel","x":43.9,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n03-headboard-east","class":"headboard-panel","x":46.9,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n03-luggage-bench","class":"luggage-bench","x":45.9,"y":25.4,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-n03-minibar","class":"minibar","x":48.35,"y":28.35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-n03-fan-coil","class":"fan-coil","x":48.45,"y":21.42,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-n03-wardrobe","class":"wardrobe-niche","x":46,"y":29.3,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-n04-headboard-west","class":"headboard-panel","x":50.8,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n04-headboard-east","class":"headboard-panel","x":53.8,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n04-luggage-bench","class":"luggage-bench","x":52.8,"y":25.4,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-n04-minibar","class":"minibar","x":55.25,"y":28.35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-n04-fan-coil","class":"fan-coil","x":55.35,"y":21.42,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-n04-wardrobe","class":"wardrobe-niche","x":52.9,"y":29.3,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-n05-headboard-west","class":"headboard-panel","x":57.7,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n05-headboard-east","class":"headboard-panel","x":60.7,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n05-luggage-bench","class":"luggage-bench","x":59.7,"y":25.4,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-n05-minibar","class":"minibar","x":62.150000000000006,"y":28.35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-n05-fan-coil","class":"fan-coil","x":62.25000000000001,"y":21.42,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-n05-wardrobe","class":"wardrobe-niche","x":59.800000000000004,"y":29.3,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-n06-headboard-west","class":"headboard-panel","x":64.6,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n06-headboard-east","class":"headboard-panel","x":67.6,"y":21.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-n06-luggage-bench","class":"luggage-bench","x":66.6,"y":25.4,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-n06-minibar","class":"minibar","x":69.05,"y":28.35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-n06-fan-coil","class":"fan-coil","x":69.14999999999999,"y":21.42,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-n06-wardrobe","class":"wardrobe-niche","x":66.7,"y":29.3,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-s01-headboard-west","class":"headboard-panel","x":30.1,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s01-headboard-east","class":"headboard-panel","x":33.1,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s01-luggage-bench","class":"luggage-bench","x":32.1,"y":39.1,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-s01-minibar","class":"minibar","x":34.55,"y":35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-s01-fan-coil","class":"fan-coil","x":34.65,"y":44.28,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-s01-wardrobe","class":"wardrobe-niche","x":32.2,"y":35.2,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-s02-headboard-west","class":"headboard-panel","x":37,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s02-headboard-east","class":"headboard-panel","x":40,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s02-luggage-bench","class":"luggage-bench","x":39,"y":39.1,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-s02-minibar","class":"minibar","x":41.45,"y":35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-s02-fan-coil","class":"fan-coil","x":41.550000000000004,"y":44.28,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-s02-wardrobe","class":"wardrobe-niche","x":39.1,"y":35.2,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-s03-headboard-west","class":"headboard-panel","x":57.7,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s03-headboard-east","class":"headboard-panel","x":60.7,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s03-luggage-bench","class":"luggage-bench","x":59.7,"y":39.1,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-s03-minibar","class":"minibar","x":62.150000000000006,"y":35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-s03-fan-coil","class":"fan-coil","x":62.25000000000001,"y":44.28,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-s03-wardrobe","class":"wardrobe-niche","x":59.800000000000004,"y":35.2,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"asset","id":"l1-s04-headboard-west","class":"headboard-panel","x":64.6,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s04-headboard-east","class":"headboard-panel","x":67.6,"y":44.42,"w":0.97,"d":0.12,"z0":4.5,"z1":5.9}
{"t":"asset","id":"l1-s04-luggage-bench","class":"luggage-bench","x":66.6,"y":39.1,"w":1.3,"d":0.5,"z0":4.4,"z1":4.95}
{"t":"asset","id":"l1-s04-minibar","class":"minibar","x":69.05,"y":35,"w":0.9,"d":0.55,"z0":4.4,"z1":5.5}
{"t":"asset","id":"l1-s04-fan-coil","class":"fan-coil","x":69.14999999999999,"y":44.28,"w":1.1,"d":0.3,"z0":4.5,"z1":5.15}
{"t":"asset","id":"l1-s04-wardrobe","class":"wardrobe-niche","x":66.7,"y":35.2,"w":1.4,"d":0.6,"z0":4.4,"z1":6.6000000000000005}
{"t":"furniture","id":"l1-lounge-sofa","type":"sofa","level":"l1","x":22,"y":18.5,"w":2.1,"d":0.9,"height":0.8}
{"t":"furniture","id":"l1-lounge-coffee-table","type":"coffee-table","level":"l1","x":24.5,"y":18.7,"w":1.1,"d":0.6,"height":0.42}
//
// Second guest floor: six north rooms, four south rooms and a compact service core.
{"t":"room","id":"l2-corridor","label":"Guest Corridor 2","use":"circulation","level":"l2","x":0.3,"y":10.5,"w":41.4,"d":3}
{"t":"room","id":"l2-housekeeping","label":"LINEN 2","use":"service","level":"l2","x":14.1,"y":13.5,"w":6.9,"d":10.2}
{"t":"room","id":"l2-guest-lounge","label":"LOUNGE 2","use":"living","level":"l2","x":21,"y":13.5,"w":6.9,"d":10.2}
{"t":"instance","id":"l2-n01","module":"guest-bay-north","level":"l2","x":0.3,"y":0.3}
{"t":"instance","id":"l2-n02","module":"guest-bay-north","level":"l2","x":7.2,"y":0.3}
{"t":"instance","id":"l2-n03","module":"guest-bay-north","level":"l2","x":14.1,"y":0.3}
{"t":"instance","id":"l2-n04","module":"guest-bay-north","level":"l2","x":21,"y":0.3}
{"t":"instance","id":"l2-n05","module":"guest-bay-north","level":"l2","x":27.9,"y":0.3}
{"t":"instance","id":"l2-n06","module":"guest-bay-north","level":"l2","x":34.8,"y":0.3}
{"t":"instance","id":"l2-s01","module":"guest-bay-south","level":"l2","x":0.3,"y":13.5}
{"t":"instance","id":"l2-s02","module":"guest-bay-south","level":"l2","x":7.2,"y":13.5}
{"t":"instance","id":"l2-s03","module":"guest-bay-south","level":"l2","x":27.9,"y":13.5}
{"t":"instance","id":"l2-s04","module":"guest-bay-south","level":"l2","x":34.8,"y":13.5}
{"t":"wall","id":"l2-north","level":"l2","side":"north","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l2-south","level":"l2","side":"south","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l2-east","level":"l2","side":"east","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l2-west","level":"l2","side":"west","type":"exterior","thickness":0.3,"material":"hotel-stone"}
{"t":"wall","id":"l2-north-party-1","level":"l2","from":[7.2,0],"to":[7.2,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-south-party-1","level":"l2","from":[7.2,13.5],"to":[7.2,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-north-party-2","level":"l2","from":[14.1,0],"to":[14.1,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-south-party-2","level":"l2","from":[14.1,13.5],"to":[14.1,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-north-party-3","level":"l2","from":[21,0],"to":[21,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-south-party-3","level":"l2","from":[21,13.5],"to":[21,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-north-party-4","level":"l2","from":[27.9,0],"to":[27.9,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-south-party-4","level":"l2","from":[27.9,13.5],"to":[27.9,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-north-party-5","level":"l2","from":[34.8,0],"to":[34.8,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-south-party-5","level":"l2","from":[34.8,13.5],"to":[34.8,24],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-corridor-n","level":"l2","from":[0,10.5],"to":[42,10.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"wall","id":"l2-corridor-s","level":"l2","from":[0,13.5],"to":[42,13.5],"type":"partition","thickness":0.15,"material":"hotel-partition"}
{"t":"opening","id":"l2-north-entry-1","on":"l2-corridor-n","kind":"door","operation":"sliding","at":4.3,"width":1.05,"between":["l2-corridor","l2-n01/n-entry"]}
{"t":"opening","id":"l2-north-entry-2","on":"l2-corridor-n","kind":"door","operation":"sliding","at":11.2,"width":1.05,"between":["l2-corridor","l2-n02/n-entry"]}
{"t":"opening","id":"l2-north-entry-3","on":"l2-corridor-n","kind":"door","operation":"sliding","at":18.1,"width":1.05,"between":["l2-corridor","l2-n03/n-entry"]}
{"t":"opening","id":"l2-north-entry-4","on":"l2-corridor-n","kind":"door","operation":"sliding","at":25,"width":1.05,"between":["l2-corridor","l2-n04/n-entry"]}
{"t":"opening","id":"l2-north-entry-5","on":"l2-corridor-n","kind":"door","operation":"sliding","at":31.9,"width":1.05,"between":["l2-corridor","l2-n05/n-entry"]}
{"t":"opening","id":"l2-north-entry-6","on":"l2-corridor-n","kind":"door","operation":"sliding","at":38.8,"width":1.05,"between":["l2-corridor","l2-n06/n-entry"]}
{"t":"opening","id":"l2-south-entry-1","on":"l2-corridor-s","kind":"door","operation":"sliding","at":4.3,"width":1.05,"between":["l2-corridor","l2-s01/s-entry"]}
{"t":"opening","id":"l2-south-entry-2","on":"l2-corridor-s","kind":"door","operation":"sliding","at":11.2,"width":1.05,"between":["l2-corridor","l2-s02/s-entry"]}
{"t":"opening","id":"l2-south-entry-3","on":"l2-corridor-s","kind":"door","operation":"sliding","at":31.9,"width":1.05,"between":["l2-corridor","l2-s03/s-entry"]}
{"t":"opening","id":"l2-south-entry-4","on":"l2-corridor-s","kind":"door","operation":"sliding","at":38.8,"width":1.05,"between":["l2-corridor","l2-s04/s-entry"]}
{"t":"opening","id":"l2-housekeeping-door","on":"l2-corridor-s","kind":"door","operation":"sliding","at":16.8,"width":1,"between":["l2-corridor","l2-housekeeping"]}
{"t":"opening","id":"l2-lounge-door","on":"l2-corridor-s","kind":"door","operation":"double-acting","at":23.8,"width":1.4,"between":["l2-corridor","l2-guest-lounge"]}
{"t":"opening","id":"l2-north-windows","on":"l2-north","kind":"window","operation":"fixed","at":2.25,"width":3,"sill":0.7,"head":2.55,"repeat":{"count":6,"spacing":6.9}}
{"t":"opening","id":"l2-south-windows","on":"l2-south","kind":"window","operation":"fixed","at":2.25,"width":3,"sill":0.7,"head":2.55,"repeat":{"count":6,"spacing":6.9}}
{"t":"opening","id":"l2-west-window-1","on":"l2-west","kind":"window","operation":"fixed","at":2.3,"width":3,"sill":0.7,"head":2.55}
{"t":"opening","id":"l2-west-window-2","on":"l2-west","kind":"window","operation":"fixed","at":18,"width":3,"sill":0.7,"head":2.55}
{"t":"opening","id":"l2-east-window-1","on":"l2-east","kind":"window","operation":"fixed","at":2.3,"width":3,"sill":0.7,"head":2.55}
{"t":"opening","id":"l2-east-window-2","on":"l2-east","kind":"window","operation":"fixed","at":18,"width":3,"sill":0.7,"head":2.55}
{"t":"asset","id":"l2-n01-headboard-west","class":"headboard-panel","x":30.1,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n01-headboard-east","class":"headboard-panel","x":33.1,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n01-luggage-bench","class":"luggage-bench","x":32.1,"y":25.4,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-n01-minibar","class":"minibar","x":34.55,"y":28.35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-n01-fan-coil","class":"fan-coil","x":34.65,"y":21.42,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-n01-wardrobe","class":"wardrobe-niche","x":32.2,"y":29.3,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-n02-headboard-west","class":"headboard-panel","x":37,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n02-headboard-east","class":"headboard-panel","x":40,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n02-luggage-bench","class":"luggage-bench","x":39,"y":25.4,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-n02-minibar","class":"minibar","x":41.45,"y":28.35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-n02-fan-coil","class":"fan-coil","x":41.550000000000004,"y":21.42,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-n02-wardrobe","class":"wardrobe-niche","x":39.1,"y":29.3,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-n03-headboard-west","class":"headboard-panel","x":43.9,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n03-headboard-east","class":"headboard-panel","x":46.9,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n03-luggage-bench","class":"luggage-bench","x":45.9,"y":25.4,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-n03-minibar","class":"minibar","x":48.35,"y":28.35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-n03-fan-coil","class":"fan-coil","x":48.45,"y":21.42,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-n03-wardrobe","class":"wardrobe-niche","x":46,"y":29.3,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-n04-headboard-west","class":"headboard-panel","x":50.8,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n04-headboard-east","class":"headboard-panel","x":53.8,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n04-luggage-bench","class":"luggage-bench","x":52.8,"y":25.4,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-n04-minibar","class":"minibar","x":55.25,"y":28.35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-n04-fan-coil","class":"fan-coil","x":55.35,"y":21.42,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-n04-wardrobe","class":"wardrobe-niche","x":52.9,"y":29.3,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-n05-headboard-west","class":"headboard-panel","x":57.7,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n05-headboard-east","class":"headboard-panel","x":60.7,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n05-luggage-bench","class":"luggage-bench","x":59.7,"y":25.4,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-n05-minibar","class":"minibar","x":62.150000000000006,"y":28.35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-n05-fan-coil","class":"fan-coil","x":62.25000000000001,"y":21.42,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-n05-wardrobe","class":"wardrobe-niche","x":59.800000000000004,"y":29.3,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-n06-headboard-west","class":"headboard-panel","x":64.6,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n06-headboard-east","class":"headboard-panel","x":67.6,"y":21.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-n06-luggage-bench","class":"luggage-bench","x":66.6,"y":25.4,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-n06-minibar","class":"minibar","x":69.05,"y":28.35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-n06-fan-coil","class":"fan-coil","x":69.14999999999999,"y":21.42,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-n06-wardrobe","class":"wardrobe-niche","x":66.7,"y":29.3,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-s01-headboard-west","class":"headboard-panel","x":30.1,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s01-headboard-east","class":"headboard-panel","x":33.1,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s01-luggage-bench","class":"luggage-bench","x":32.1,"y":39.1,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-s01-minibar","class":"minibar","x":34.55,"y":35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-s01-fan-coil","class":"fan-coil","x":34.65,"y":44.28,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-s01-wardrobe","class":"wardrobe-niche","x":32.2,"y":35.2,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-s02-headboard-west","class":"headboard-panel","x":37,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s02-headboard-east","class":"headboard-panel","x":40,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s02-luggage-bench","class":"luggage-bench","x":39,"y":39.1,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-s02-minibar","class":"minibar","x":41.45,"y":35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-s02-fan-coil","class":"fan-coil","x":41.550000000000004,"y":44.28,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-s02-wardrobe","class":"wardrobe-niche","x":39.1,"y":35.2,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-s03-headboard-west","class":"headboard-panel","x":57.7,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s03-headboard-east","class":"headboard-panel","x":60.7,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s03-luggage-bench","class":"luggage-bench","x":59.7,"y":39.1,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-s03-minibar","class":"minibar","x":62.150000000000006,"y":35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-s03-fan-coil","class":"fan-coil","x":62.25000000000001,"y":44.28,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-s03-wardrobe","class":"wardrobe-niche","x":59.800000000000004,"y":35.2,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"asset","id":"l2-s04-headboard-west","class":"headboard-panel","x":64.6,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s04-headboard-east","class":"headboard-panel","x":67.6,"y":44.42,"w":0.97,"d":0.12,"z0":7.8999999999999995,"z1":9.3}
{"t":"asset","id":"l2-s04-luggage-bench","class":"luggage-bench","x":66.6,"y":39.1,"w":1.3,"d":0.5,"z0":7.8,"z1":8.35}
{"t":"asset","id":"l2-s04-minibar","class":"minibar","x":69.05,"y":35,"w":0.9,"d":0.55,"z0":7.8,"z1":8.9}
{"t":"asset","id":"l2-s04-fan-coil","class":"fan-coil","x":69.14999999999999,"y":44.28,"w":1.1,"d":0.3,"z0":7.8999999999999995,"z1":8.55}
{"t":"asset","id":"l2-s04-wardrobe","class":"wardrobe-niche","x":66.7,"y":35.2,"w":1.4,"d":0.6,"z0":7.8,"z1":10}
{"t":"furniture","id":"l2-lounge-sofa","type":"sofa","level":"l2","x":22,"y":18.5,"w":2.1,"d":0.9,"height":0.8}
{"t":"furniture","id":"l2-lounge-coffee-table","type":"coffee-table","level":"l2","x":24.5,"y":18.7,"w":1.1,"d":0.6,"height":0.42}
//
// A stacked stair and lift land in the circulation gallery on every floor.
{"t":"stair","id":"guest-stair-g-l1","from":"g","to":"l1","x":6.5,"y":10.65,"width":1.4,"run":7,"dir":"east","steps":25,"landings":[{"at":3.5,"length":1.4,"turn":"straight"}]}
{"t":"stair","id":"guest-stair-l1-l2","from":"l1","to":"l2","x":6.5,"y":10.65,"width":1.4,"run":7,"dir":"east","steps":20}
{"t":"void","id":"guest-stair-void-l1","level":"l1","x":6.35,"y":10.5,"w":8.7,"d":1.7}
{"t":"void","id":"guest-stair-void-l2","level":"l2","x":6.35,"y":10.5,"w":7.4,"d":1.7}
{"t":"lift","id":"guest-lift","from":"g","to":"l2","x":21.5,"y":11.1,"w":1.6,"d":1.5,"dir":"south"}
//
// A low curved formdef roof gives the long guest block a calm resort silhouette.
{"t":"formdef","id":"hotel-barrel-form","for":"roof:soft-barrel","op":"extrude","profile":[[1,0],[0.985,0.174],[0.94,0.342],[0.866,0.5],[0.766,0.643],[0.643,0.766],[0.5,0.866],[0.342,0.94],[0.174,0.985],[0,1]]}
{"t":"roof","id":"hotel-roof","level":"l2","type":"soft-barrel","ridgeAxis":"x","rise":2.1,"overhang":0.35,"eave":11.2,"x":29,"y":21,"w":42,"d":24,"material":"hotel-roof-finish"}
//
// Editorial views expose the four programmes this example is designed to prove.
{"t":"view","id":"interior:guest-room","mode":"interior","level":"l1","label":"TWIN GUEST ROOM + BATHROOM","cameraElevation":18,"cameraAzimuth":215}
{"t":"view","id":"interior:ballroom","mode":"interior","level":"g","label":"BALLROOM BANQUET SETUP","cameraElevation":20,"cameraAzimuth":145}
{"t":"view","id":"interior:gym-spa","mode":"interior","level":"g","label":"GYM + SPA SALON","cameraElevation":20,"cameraAzimuth":225}
{"t":"view","id":"site:arrival-pool","mode":"site","label":"HOTEL ARRIVAL + POOL GARDEN","cameraElevation":52,"cameraAzimuth":205}
{"t":"view","id":"section:guest-spine","mode":"section","axis":"x","station":50.8,"label":"SECTION THROUGH GUEST SPINE + LIFT"}
//
// Model-local architectural materials.
{"t":"materialdef","id":"hotel-stone","of":"stone","value":72,"accent":"#b9aa91","hatch":"masonry","body":{"roughness":0.9}}
{"t":"materialdef","id":"hotel-partition","of":"render","value":92,"body":{"roughness":0.9}}
{"t":"materialdef","id":"hotel-concrete","of":"concrete","value":72,"hatch":"concrete","body":{"roughness":0.86}}
{"t":"materialdef","id":"hotel-roof-finish","of":"membrane","value":42,"body":{"roughness":0.7,"metalness":0.32}}
{"t":"materialdef","id":"hotel-bronze","of":"steel","value":42,"accent":"#6f5942","body":{"roughness":0.35,"metalness":0.65}}
{"t":"materialdef","id":"hotel-asphalt","of":"render","value":42,"body":{"roughness":0.96}}
{"t":"materialdef","id":"hotel-paving","of":"paving","value":80,"hatch":"concrete","body":{"roughness":0.9}}
//
// Inlined verbatim from packs/hotel.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-hotel-oatmeal","of":"cloth","value":80,"accent":"#d2c7b6","body":{"sheenColor":"#eee8dd"}}
{"t":"materialdef","id":"pack-hotel-white","of":"cloth","value":92,"accent":"#f5f3ee","body":{"roughness":0.92,"sheen":0.3,"sheenColor":"#ffffff","sheenRoughness":0.8}}
{"t":"materialdef","id":"pack-hotel-runner","of":"cloth","value":20,"accent":"#38383a","body":{"roughness":0.95}}
{"t":"materialdef","id":"pack-hotel-walnut","of":"timber","value":42,"accent":"#5a3c2a"}
{"t":"materialdef","id":"pack-hotel-leather","of":"leather","value":58,"accent":"#b87349","body":{"sheen":0.18,"sheenColor":"#d79a70","sheenRoughness":0.65}}
{"t":"materialdef","id":"pack-hotel-black","of":"painted-metal","value":20,"accent":"#242526","body":{"roughness":0.36,"metalness":0.24}}
{"t":"look","id":"use-single-platform-bed","for":"furniture:bed-single","use":"single-platform-bed"}
{"t":"look","id":"use-luggage-bench","for":"asset:luggage-bench","use":"luggage-bench"}
{"t":"look","id":"use-headboard-panel","for":"asset:headboard-panel","use":"headboard-panel"}
{"t":"look","id":"use-minibar-cabinet","for":"asset:minibar","use":"minibar-cabinet"}
{"t":"look","id":"use-fan-coil-unit","for":"asset:fan-coil","use":"fan-coil-unit"}
{"t":"look","id":"use-wardrobe-niche","for":"asset:wardrobe-niche","use":"wardrobe-niche"}
//
// Inlined verbatim from packs/fitness.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-fitness-frame","of":"painted-metal","value":20,"accent":"#34383b","body":{"roughness":0.46,"metalness":0.34}}
{"t":"materialdef","id":"pack-fitness-aluminium","of":"steel","value":72,"accent":"#b8bec0","body":{"roughness":0.3,"metalness":0.76}}
{"t":"materialdef","id":"pack-fitness-sage","of":"cloth","value":58,"accent":"#879586","body":{"roughness":0.9}}
{"t":"materialdef","id":"pack-fitness-screen","of":"paint","value":20,"accent":"#25292c","body":{"roughness":0.16,"clearcoat":0.45}}
{"t":"materialdef","id":"pack-fitness-mirror","of":"glass","value":86,"body":{"type":"MeshPhysicalMaterial","roughness":0.06,"metalness":0.68,"transmission":0.2,"ior":1.5,"thickness":0.018}}
{"t":"look","id":"use-treadmill","for":"asset:treadmill","use":"treadmill"}
{"t":"look","id":"use-squat-rack","for":"asset:squat-rack","use":"squat-rack"}
{"t":"look","id":"use-flat-bench","for":"asset:weight-bench","use":"flat-bench"}
{"t":"look","id":"use-dumbbell-rack","for":"asset:dumbbell-rack","use":"dumbbell-rack"}
{"t":"look","id":"use-cable-crossover","for":"asset:cable-machine","use":"cable-crossover"}
{"t":"look","id":"use-rowing-machine","for":"asset:rower","use":"rowing-machine"}
{"t":"look","id":"use-upright-bike","for":"asset:exercise-bike","use":"upright-bike"}
{"t":"look","id":"use-mat-stack","for":"asset:mat-stack","use":"mat-stack"}
{"t":"look","id":"use-mirror-wall-panel","for":"asset:mirror-wall","use":"mirror-wall-panel"}
//
// Inlined verbatim from packs/salon.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-salon-black","of":"leather","value":20,"accent":"#252525"}
{"t":"materialdef","id":"pack-salon-chrome","of":"chrome","value":72,"accent":"#c8cdcf","body":{"metalness":0.88}}
{"t":"materialdef","id":"pack-salon-porcelain","of":"ceramic","value":92,"accent":"#f5f3ed","body":{"roughness":0.2,"clearcoat":0.35}}
{"t":"materialdef","id":"pack-salon-cream","of":"cloth","value":86,"accent":"#e7ddcf","body":{"roughness":0.9,"sheen":0.52,"sheenColor":"#fff8ec","sheenRoughness":0.78}}
{"t":"materialdef","id":"pack-salon-white","of":"paint","value":92,"accent":"#f2f1ec","body":{"roughness":0.38}}
{"t":"materialdef","id":"pack-salon-mirror","of":"glass","value":86,"body":{"type":"MeshPhysicalMaterial","roughness":0.06,"metalness":0.68,"transmission":0.2,"ior":1.5,"thickness":0.018}}
{"t":"look","id":"use-styling-chair","for":"asset:styling-chair","use":"styling-chair"}
{"t":"look","id":"use-styling-station","for":"asset:styling-station","use":"styling-station"}
{"t":"look","id":"use-shampoo-unit","for":"asset:shampoo-unit","use":"shampoo-unit"}
{"t":"look","id":"use-nail-table","for":"asset:nail-table","use":"nail-table"}
{"t":"look","id":"use-pedicure-chair","for":"asset:pedicure-chair","use":"pedicure-chair"}
{"t":"look","id":"use-reception-desk","for":"asset:reception-desk","use":"reception-desk"}
{"t":"look","id":"use-waiting-bench","for":"asset:waiting-bench","use":"waiting-bench"}
{"t":"look","id":"use-towel-cabinet","for":"asset:towel-cabinet","use":"towel-cabinet"}
//
// Inlined verbatim from packs/assembly.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-assembly-oak","of":"timber","value":58,"accent":"#9b6a3d"}
{"t":"materialdef","id":"pack-assembly-ivory-cloth","of":"cloth","value":92,"accent":"#f2efe7","body":{"sheen":0.32,"sheenColor":"#ffffff"}}
{"t":"materialdef","id":"pack-assembly-gold","of":"brass","value":72,"accent":"#b58a3b","body":{"metalness":0.72}}
{"t":"look","id":"use-banquet-trestle","for":"furniture:banquet-table","use":"banquet-trestle"}
{"t":"look","id":"use-banquet-round","for":"furniture:round-table-8","use":"banquet-round"}
{"t":"look","id":"use-folding-chair","for":"asset:folding-chair","use":"folding-chair"}
{"t":"look","id":"use-stage-platform","for":"asset:stage","use":"stage-platform"}
{"t":"look","id":"use-lectern","for":"asset:lectern","use":"lectern"}
{"t":"look","id":"use-projection-screen","for":"asset:av-screen","use":"projection-screen"}
//
// Inlined verbatim from packs/interiors.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-int-linen","of":"cloth","value":72,"body":{"sheen":0.7,"sheenRoughness":0.6}}
{"t":"materialdef","id":"pack-int-linen-soft","of":"cloth","value":80,"body":{"sheenRoughness":0.55}}
{"t":"materialdef","id":"pack-int-oak","of":"timber","value":58,"hatch":"timber","body":{"roughness":0.62}}
{"t":"materialdef","id":"pack-int-clay","of":"plaster","value":72,"body":{"roughness":0.86}}
{"t":"materialdef","id":"pack-int-stone","of":"stone","value":86,"body":{"roughness":0.3}}
{"t":"materialdef","id":"pack-int-black","of":"membrane","value":20,"body":{"roughness":0.44,"metalness":0.3}}
{"t":"materialdef","id":"pack-int-steel","of":"steel","value":72,"body":{"roughness":0.3,"metalness":0.6}}
{"t":"materialdef","id":"pack-int-brass","of":"brass","value":58,"accent":"#b08d52","body":{"metalness":0.75}}
{"t":"materialdef","id":"pack-int-china","of":"plaster","value":92,"body":{"roughness":0.22}}
{"t":"materialdef","id":"pack-int-screen","of":"membrane","value":20,"body":{"roughness":0.14,"metalness":0.2}}
{"t":"materialdef","id":"pack-int-glass","of":"glass","value":86,"body":{"type":"MeshPhysicalMaterial","transmission":0.92,"ior":1.5,"roughness":0.03,"thickness":0.02}}
{"t":"look","id":"use-bedside-cube","for":"furniture:nightstand","use":"bedside-cube"}
{"t":"look","id":"use-wall-hung-wc-2","for":"furniture:toilet","use":"wall-hung-wc-2"}
{"t":"look","id":"use-glass-shower","for":"furniture:shower","use":"glass-shower"}
{"t":"look","id":"use-cafe-service-bar-2","for":"furniture:bar","use":"cafe-service-bar-2"}
{"t":"look","id":"use-pos-checkout-2","for":"furniture:checkout","use":"pos-checkout-2"}
{"t":"look","id":"use-commercial-prep-table","for":"furniture:prep-table","use":"commercial-prep-table"}
{"t":"look","id":"use-three-bowl-sink-2","for":"furniture:commercial-sink","use":"three-bowl-sink-2"}
{"t":"look","id":"use-two-cushion-lounge-sofa","for":"furniture:sofa","use":"two-cushion-lounge-sofa"}
{"t":"look","id":"use-fluted-drum-coffee-table","for":"furniture:coffee-table","use":"fluted-drum-coffee-table"}
{"t":"look","id":"use-wall-basin","for":"furniture:sink","use":"wall-basin"}
//
// Inlined verbatim from packs/furniture.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-ash","of":"timber","value":80,"accent":"#cbbfa9"}
{"t":"materialdef","id":"pack-oatmeal","of":"boucle","value":80,"accent":"#d7cbbb"}
{"t":"look","id":"use-tub-armchair-2","for":"furniture:armchair","use":"tub-armchair-2"}
//
// Inlined verbatim from packs/openings.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-opening-oak","of":"timber","value":58,"hatch":"timber","body":{"roughness":0.68}}
{"t":"materialdef","id":"pack-opening-glass","of":"glass","value":72,"body":{"type":"MeshPhysicalMaterial","transmission":0.92,"ior":1.5,"roughness":0.06,"thickness":0.12}}
{"t":"look","id":"use-deep-reveal-window","for":"opening:window","use":"deep-reveal-window"}
{"t":"look","id":"use-timber-flush-door-2","for":"opening:door","use":"timber-flush-door-2"}
{"t":"look","id":"use-sliding-glass-door","for":"opening:sliding","use":"sliding-glass-door"}
{"t":"look","id":"use-glazed-double-acting-door","for":"opening:double-acting","use":"glazed-double-acting-door"}
//
// Inlined verbatim from packs/trees.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-palm-bark","of":"timber","value":42,"accent":"#72563b","body":{"roughness":0.98}}
{"t":"look","id":"use-fan-palm","for":"tree:palm","use":"fan-palm"}
//
// Inlined verbatim from packs/site-assets.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-site-timber","of":"timber","value":42,"accent":"#8b603d","body":{"roughness":0.74}}
{"t":"look","id":"use-outdoor-side-table","for":"asset:pool-side-table","use":"outdoor-side-table"}
//
// Inlined verbatim from packs/parking.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-car-silver","of":"car-paint","value":72,"accent":"#c3c8ce","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-car-slate","of":"car-paint","value":42,"accent":"#3f5d86","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-car-glass","of":"glass","value":20,"body":{"type":"MeshPhysicalMaterial","roughness":0.08,"metalness":0.1,"transmission":0.62,"ior":1.46,"thickness":0.02}}
{"t":"materialdef","id":"pack-tyre","of":"rubber","value":20,"accent":"#212428","body":{"roughness":0.96}}
{"t":"materialdef","id":"pack-rim","of":"steel","value":80,"accent":"#c6c9cc","body":{"roughness":0.3,"metalness":0.8}}
{"t":"materialdef","id":"pack-head-lamp","of":"paint","value":92,"accent":"#fdf6de","body":{"emissive":"#fdf6de","emissiveIntensity":1.6,"roughness":0.2}}
{"t":"materialdef","id":"pack-tail-lamp","of":"paint","value":20,"accent":"#8d2a24","body":{"emissive":"#a32a20","emissiveIntensity":1.1,"roughness":0.3}}
{"t":"materialdef","id":"pack-pole-grey","of":"steel","value":42,"accent":"#53585c","body":{"roughness":0.44,"metalness":0.55}}
{"t":"materialdef","id":"pack-luminaire","of":"paint","value":92,"accent":"#fbf4dd","body":{"emissive":"#fbf4dd","emissiveIntensity":2.4,"roughness":0.18}}
{"t":"materialdef","id":"pack-car-graphite","of":"car-paint","value":20,"accent":"#33383d","body":{"type":"MeshPhysicalMaterial"}}
{"t":"look","id":"use-saloon-car-2","for":"asset:car","use":"saloon-car-2"}
{"t":"look","id":"use-compact-suv-2","for":"asset:car-suv","use":"compact-suv-2"}
{"t":"look","id":"use-twin-head-light-column","for":"asset:light-column","use":"twin-head-light-column"}
//
// Inlined verbatim from packs/pools.ndjson via the repository graft helper.
{"t":"materialdef","id":"pack-pool-plaster","of":"plaster","value":86,"accent":"#d9e7e7","body":{"roughness":0.38}}
{"t":"materialdef","id":"pack-pool-tile","of":"paving","value":42,"accent":"#245a72","texture":"tile-grid","body":{"roughness":0.2}}
{"t":"materialdef","id":"pack-pool-lane","of":"paving","value":20,"accent":"#0d456b","texture":"tile-grid","body":{"roughness":0.18}}
{"t":"materialdef","id":"pack-pool-water","of":"glass","value":72,"accent":"#74bed0","body":{"type":"MeshPhysicalMaterial","transmission":0.9,"ior":1.33,"clearcoat":0.62,"clearcoatRoughness":0.12,"thickness":0.48,"attenuationColor":"#2a91a8","attenuationDistance":4.6}}
{"t":"materialdef","id":"pack-pool-lounger-timber","of":"timber","value":58,"hatch":"timber","body":{"roughness":0.66}}
{"t":"materialdef","id":"pack-pool-lounger-sling","of":"boucle","value":72,"body":{"sheen":0.7,"sheenRoughness":0.6}}
{"t":"look","id":"use-resort-shelf-pool","for":"pool","use":"resort-shelf-pool"}
{"t":"look","id":"use-pool-lounger","for":"asset:lounger","use":"pool-lounger"}
