<!-- SOLID CITY · part 3661 -->
 Math.abs(s) + dep / 2 * Math.abs(c);
    for (var i = 0; i < n; i++) {
      var off = -len / 2 + cw * (i + 0.5);
      var lx = w.position.x + (p.width >= p.depth ? off : 0), lz = w.position.z + (p.width >= p.depth ? 0 : off);
      var wx = mesh.position.x + lx * c + lz * s, wz = mesh.position.z - lx * s + lz * c;
      A.solids.push({ x0: wx - hx, x1: wx + hx, z0: wz - hz, z1: wz + hz, y0: ly - p.height / 2 - 0.03, y1: ly + p.height / 2 + 0.03, wardHouseWall: true });
    }
  });
}
function raiseHouse(house) {
  A.scene.add(house.mesh);
  var roofTop = null;
  house.mesh.children.forEach(function (ch) {
    var p = ch.geometry && ch.geometry.parameters;
    if (p && p.width >= 8.7 && Math.abs(p.height - 0.28) < 0.01) roofTop = ch.position.y + p.height / 2;
  });
  H.houses.push({ stand: house.stand, roofTop: roofTop, cx: house.plot.cx, cz: house.plot.cz, ward: house.plot.ward });
  wallSolids(house);
  return roofTop;
}
function load() {
  Promise.all([
    import('/city/ward-houses.js?v=20261013a'),
    import('/city/ward-joins.js?v=20261013a'),
    import('/city/wards.js?v=20261013a'),
    fetch('/city/city.js').then(function (r) { return r.text(); })
  ]).then(function (r) {
    var seg = r[3].slice(r[3].indexOf('var SEED'), r[3].indexOf('function mulberry'));
    var gnd = new Function(seg + '; return groundAt;')();
    var isAllowed = r[2].isAllowedSolidCity(gnd);
    // THE MULTIPLICATION — every lawful house the searcher found, raised.
    var table = [], pilot = null, occupied = [];
    [2, 3, 5].forEach(function (ward) {
      var res = r[0].createWardHouses({ THREE: A.THREE, groundAt: gnd, isAllowed: isAllowed, ward: ward });
      res.accepted.forEach(function (house) {
        raiseHouse(house);
        var m = r[0].measureWardHouse(house, gnd);
        table.push('W' + ward + ' @ (' + Math.round(house.plot.cx) + ', ' + Math.round(house.plot.cz) + ') floor ' + m.floorY.toFixed(2)); occupied.push({ cx: house.plot.cx, cz: house.plot.cz });
        if (ward === 2 && !pilot) pilot = house;
      });
    });
    // WARD 4 — the two surveyed gate plots, raised through the surveyed-plot adapter under the shipped law.
    var w4 = r[0].createSurveyedWardHouses({ THREE: A.THREE, groundAt: gnd, isAllowed: isAllowed, occupiedFootprints: occupied, plots: [
      { id: 'W4-A', ward: 4, cx: -924.764172, cz: -790.330013, ux: 0.6919053632, uz: 0.7219882051, vx: 0.7219882051, vz: -0.6919053632, floorY: 11.17 },
      { id: 'W4-B', ward: 4, cx: -941.803093, cz: -774.001046, ux: 0.6919053632, uz: 0.7219882051, vx: -0.7219882051, vz: 0.6919053632, floorY: 11.07 }
    ] });
    w4.accepted.forEach(function (house) { raiseHouse(house); var m = r[0].measureWardHouse(house, gnd); table.push('W4-' + house.id.slice(-1) + ' @ (' + Math.round(house.plot.cx) + ', ' + Math.round(house.plot.cz) + ') floor ' + m.floorY.toFixed(2)); });
    if (!pilot) throw new Error('no pilot house');
    H.housePos = { x: pilot.plot.cx, z: pilot.plot.cz };
    // THE TWO SHORT JOINS — built, and their surfaces connected to movement.
    var joins = r[1].createShortWardJoins({ THREE: A.THREE, groundAt: gnd, isAllowed: isAllowed });
    for (var name in joins) { A.scene.add(joins[name].group); if (joins[name].standSurface && joins[name].standSurface.geometry) H.joins.push(extractTris(joins[name].standSurface.geometry)); }
    // THE WARD 6 CONNECTOR — surveyed line to the Long Road corridor's edge.
    var w6 = r[1].createWardConnector({ THREE: A.THREE, groundAt: gnd, isAllowed: isAllowed, name: 'W6-LongRoad', line: [[-1118, -540], [-1135.3, -508.3]] });
    var w6note = 'W6 connector REFUSED: ' + (w6.check && w6.check.reason ? w6.check.reason : 'check');
    if (w6.accepted) { A.scene.add(w6.group); H.joins.push(extractTris(w6.standSurface.geometry)); var wm = w6.measure(); w6note = 'W6 connector built to the last lawful station before the Long Road corridor boundary (36.1 m, ending 1.3 m short at the survey boundary per the schematic\'s refusal law — the road-edge apron awaits its own survey; deviation from lift max ' + wm.maxAbsErrorFromLift.toFixed(4) + ' m, ' + wm.upFacingTriangles + ' up / ' + wm.downFacingTriangles + ' down).'; }
    if (A.POIS) {
      A.POIS.push({ id: 'pilot-house', name: 'THE PILOT HOUSE — WARD 2', icon: '🏠', x: pilot.plot.cx, z: pilot.plot.cz, blurb: 'The first dwelling of the nation, raised as a pilot from VECTOR\'s housing factories: level floor on descending supports, glass to the street, its plot the searcher\'s first lawful choice in Ward 2. Examined first — then the nation multiplied.', arrive: 'You stand before the Pilot House.' });
      A.POIS.push({ id: 'ward-3-street', name: 'WARD 3 STREET', icon: '🏘', x: STREET[3].x, z: STREET[3].z, blurb: 'Four dwellings of the nation along the Spine path of Ward 3 — silver walls, glass to the street, every floor founded on sampled ground and registered under standing law.', arrive: 'Ward 3 Street — the nation lives here now.' });