{
  "created_utc": "2026-10-21T05:34:18.893236+00:00",
  "role": "Post-freeze descriptive source metadata only; no model/method selection input",
  "source": "Official automatic 3DBAG/Roofer-lineage teacher, not independent measured GT",
  "scope": {
    "source_cities": [
      "Utrecht",
      "Leiden",
      "Haarlem",
      "Delft",
      "Rotterdam",
      "Amersfoort",
      "Arnhem",
      "Nijmegen",
      "Zwolle",
      "Tilburg"
    ],
    "allowed_splits": [
      "train",
      "calibration",
      "validation"
    ],
    "source_records": 21000,
    "test_records_semantically_opened": false,
    "test_meshes_or_arrays_opened": false,
    "any_mesh_or_array_opened": false,
    "model_results_opened": false,
    "canonical_manifest_access": "opaque SHA256 only; source city snapshots decoded",
    "authoritative_subsets_access": "source ID lists only; final ID lists unused"
  },
  "definitions": {
    "plane_count": "Frozen parser approximate coplanar teacher support groups across complete BAG parent; not human roof facets, connected polygons, roof-style labels or a slope test.",
    "area_m2": "Sum of XY-projected admitted roof triangle areas, not 3D sloped surface area.",
    "source_ahn_year": "Per-building source AHN metadata year, not a uniform imagery date, guaranteed survey instant or roof-change verification.",
    "quantiles": "Each building weighted once; NumPy linear quantiles. No area weighting.",
    "units": "RD New XY metres, NAP Z metres (EPSG:7415)."
  },
  "frozen_inputs": {
    "manifest_sha256": "14da9431fef7a8bac1305c5956f5e2e6b89f76aa4e9a375e6246584aa79f8c1a",
    "subsets_sha256": "af1840e1a53b880a7aa1a3206b0c50fcef1d9b9f9fad0ed0164af64ea10df51d",
    "source_city_snapshots": [
      {
        "city": "Utrecht",
        "path": "teacher_data/city_manifests_v2/Utrecht.json",
        "sha256": "b1cc75ef6e354b11ac9af42559044e4995f80f9ae4b1e3322c473caad4f20727"
      },
      {
        "city": "Leiden",
        "path": "teacher_data/city_manifests/Leiden.json",
        "sha256": "bf4935f485769328b91f5584db2f341b05bafe444c33797519589433649c194c"
      },
      {
        "city": "Haarlem",
        "path": "teacher_data/city_manifests_v2/Haarlem.json",
        "sha256": "8871731dbf017bbf747fcb4d74f3f5bc59edf669920bb2c922c7dbd2bd1e68ef"
      },
      {
        "city": "Delft",
        "path": "teacher_data/city_manifests/Delft.json",
        "sha256": "55c9c4f21d95261b8a666b6d68de7a6df42e6785cc48ec1a3e526502f8b1e0d2"
      },
      {
        "city": "Rotterdam",
        "path": "teacher_data/city_manifests_v2/Rotterdam.json",
        "sha256": "ca054e67fb8a2cb559c9c3aba116ead523d71481d98fc42c2e35ff9aca9cdab1"
      },
      {
        "city": "Amersfoort",
        "path": "teacher_data/city_manifests_v2/Amersfoort.json",
        "sha256": "2df8067d9d208da2ecd55fd0abe3766f3ca95d32779678f9f533a1f358c80dc3"
      },
      {
        "city": "Arnhem",
        "path": "teacher_data/city_manifests_v2/Arnhem.json",
        "sha256": "29dc5d6db7532afa4eb9cab6f19aa4c59483dbcc4487a12f56f4cb29ea099d3d"
      },
      {
        "city": "Nijmegen",
        "path": "teacher_data/city_manifests_v2/Nijmegen.json",
        "sha256": "92828c492b6317a037b9fd3351b0106224d73489146621da4688cb9aa4f6d13b"
      },
      {
        "city": "Zwolle",
        "path": "teacher_data/city_manifests_v2/Zwolle.json",
        "sha256": "c3a73b34ad53639b516013c7596e62ac3bed25b58955d670e0089600dbac55a4"
      },
      {
        "city": "Tilburg",
        "path": "teacher_data/city_manifests_v2/Tilburg.json",
        "sha256": "2bd63b52bd0ac50837c5cb2ded9b973a278ef5eefbc4cb1a94416a8b41f8efc8"
      }
    ],
    "report_script_sha256": "427fc13c811fee004c5f15cc6b12f4e965eb8f9d042e3b91a0de6528c2e99283"
  },
  "by_split": {
    "train": {
      "n": 20000,
      "unique_parent_buildings": 20000,
      "adjacency_groups": 8541,
      "city_counts": {
        "Amersfoort": 2000,
        "Arnhem": 2000,
        "Delft": 2000,
        "Haarlem": 2000,
        "Leiden": 2000,
        "Nijmegen": 2000,
        "Rotterdam": 2000,
        "Tilburg": 2000,
        "Utrecht": 2000,
        "Zwolle": 2000
      },
      "plane_group_bins": {
        "1": {
          "count": 3847,
          "fraction": 0.19235
        },
        "2-4": {
          "count": 13915,
          "fraction": 0.69575
        },
        "5+": {
          "count": 2238,
          "fraction": 0.1119
        }
      },
      "plane_group_count": {
        "n": 20000,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 6.0,
        "max": 42.0
      },
      "projected_roof_area_m2": {
        "n": 20000,
        "min": 20.000019499969504,
        "p05": 26.50503312507648,
        "p25": 49.38305974998232,
        "median": 58.08982249990149,
        "p75": 76.02036550009267,
        "p95": 191.27969320037732,
        "max": 2480.681709499998
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 6,
        "2014": 13,
        "2015": 2,
        "2016": 28,
        "2018": 40,
        "2020": 178,
        "2021": 6,
        "2022": 3949,
        "2023": 11798,
        "2024": 3980
      },
      "source_ahn_family_counts": {
        "ahn3": 89,
        "ahn4": 4133,
        "ahn5": 15778
      }
    },
    "calibration": {
      "n": 500,
      "unique_parent_buildings": 500,
      "adjacency_groups": 391,
      "city_counts": {
        "Amersfoort": 50,
        "Arnhem": 50,
        "Delft": 50,
        "Haarlem": 50,
        "Leiden": 50,
        "Nijmegen": 50,
        "Rotterdam": 50,
        "Tilburg": 50,
        "Utrecht": 50,
        "Zwolle": 50
      },
      "plane_group_bins": {
        "1": {
          "count": 59,
          "fraction": 0.118
        },
        "2-4": {
          "count": 350,
          "fraction": 0.7
        },
        "5+": {
          "count": 91,
          "fraction": 0.182
        }
      },
      "plane_group_count": {
        "n": 500,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 7.0,
        "max": 27.0
      },
      "projected_roof_area_m2": {
        "n": 500,
        "min": 20.451322000112473,
        "p05": 30.66506125002079,
        "p25": 48.0652690002305,
        "median": 59.851439499861506,
        "p75": 78.49860287493627,
        "p95": 182.43228767509785,
        "max": 1188.0813720002745
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2016": 3,
        "2020": 6,
        "2021": 2,
        "2022": 97,
        "2023": 294,
        "2024": 98
      },
      "source_ahn_family_counts": {
        "ahn3": 3,
        "ahn4": 105,
        "ahn5": 392
      }
    },
    "validation": {
      "n": 500,
      "unique_parent_buildings": 500,
      "adjacency_groups": 385,
      "city_counts": {
        "Amersfoort": 50,
        "Arnhem": 50,
        "Delft": 50,
        "Haarlem": 50,
        "Leiden": 50,
        "Nijmegen": 50,
        "Rotterdam": 50,
        "Tilburg": 50,
        "Utrecht": 50,
        "Zwolle": 50
      },
      "plane_group_bins": {
        "1": {
          "count": 69,
          "fraction": 0.138
        },
        "2-4": {
          "count": 324,
          "fraction": 0.648
        },
        "5+": {
          "count": 107,
          "fraction": 0.214
        }
      },
      "plane_group_count": {
        "n": 500,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 7.0,
        "max": 38.0
      },
      "projected_roof_area_m2": {
        "n": 500,
        "min": 20.550204999897513,
        "p05": 31.478740749987107,
        "p25": 49.29651487509602,
        "median": 61.04719624987065,
        "p75": 90.36841712507686,
        "p95": 196.02112557447674,
        "max": 1543.7077475000583
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 2,
        "2020": 5,
        "2021": 1,
        "2022": 85,
        "2023": 268,
        "2024": 139
      },
      "source_ahn_family_counts": {
        "ahn3": 2,
        "ahn4": 66,
        "ahn5": 432
      }
    }
  },
  "by_city_and_split": {
    "Utrecht": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 1653,
        "city_counts": {
          "Utrecht": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 332,
            "fraction": 0.166
          },
          "2-4": {
            "count": 1434,
            "fraction": 0.717
          },
          "5+": {
            "count": 234,
            "fraction": 0.117
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.06011250000312,
          "p05": 41.262503675011935,
          "p25": 48.455965124966504,
          "median": 55.165427000040175,
          "p75": 68.24765262507843,
          "p95": 130.15166662493166,
          "max": 2310.249800499831
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 2,
          "2020": 19,
          "2023": 1979
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 19,
          "ahn5": 1979
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 46,
        "city_counts": {
          "Utrecht": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 1,
            "fraction": 0.02
          },
          "2-4": {
            "count": 36,
            "fraction": 0.72
          },
          "5+": {
            "count": 13,
            "fraction": 0.26
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 2.0,
          "p25": 3.0,
          "median": 3.0,
          "p75": 4.75,
          "p95": 7.549999999999997,
          "max": 10.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 31.409509999947314,
          "p05": 41.988280574848915,
          "p25": 48.947030124894155,
          "median": 62.13270074998086,
          "p75": 80.80523774999044,
          "p95": 150.60912142483818,
          "max": 281.25894899990277
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 2,
          "2023": 48
        },
        "source_ahn_family_counts": {
          "ahn4": 2,
          "ahn5": 48
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 47,
        "city_counts": {
          "Utrecht": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 2,
            "fraction": 0.04
          },
          "2-4": {
            "count": 38,
            "fraction": 0.76
          },
          "5+": {
            "count": 10,
            "fraction": 0.2
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 2.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 7.549999999999997,
          "max": 15.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 20.550204999897513,
          "p05": 29.488081949969633,
          "p25": 44.451620374964335,
          "median": 52.267033250108646,
          "p75": 67.57589224980491,
          "p95": 192.45060584967214,
          "max": 846.8741290000988
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 3,
          "2023": 47
        },
        "source_ahn_family_counts": {
          "ahn4": 3,
          "ahn5": 47
        }
      }
    },
    "Leiden": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 803,
        "city_counts": {
          "Leiden": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 144,
            "fraction": 0.072
          },
          "2-4": {
            "count": 1610,
            "fraction": 0.805
          },
          "5+": {
            "count": 246,
            "fraction": 0.123
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.155105499983872,
          "p05": 45.17278950009482,
          "p25": 51.96731999988398,
          "median": 58.0764812501032,
          "p75": 67.44107349988496,
          "p95": 104.53750382507793,
          "max": 1678.5113240004546
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 18,
          "2023": 1982
        },
        "source_ahn_family_counts": {
          "ahn4": 18,
          "ahn5": 1982
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 18,
        "city_counts": {
          "Leiden": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 9,
            "fraction": 0.18
          },
          "2-4": {
            "count": 29,
            "fraction": 0.58
          },
          "5+": {
            "count": 12,
            "fraction": 0.24
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 10.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 20.49412549983916,
          "p05": 23.167631425116575,
          "p25": 65.77827137497569,
          "median": 70.01814374990855,
          "p75": 77.99387799989161,
          "p95": 111.09091685009301,
          "max": 266.0679685002914
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2023": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 24,
        "city_counts": {
          "Leiden": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 5,
            "fraction": 0.1
          },
          "2-4": {
            "count": 37,
            "fraction": 0.74
          },
          "5+": {
            "count": 8,
            "fraction": 0.16
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.5,
          "p75": 4.0,
          "p95": 5.549999999999997,
          "max": 7.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 21.806414999990515,
          "p05": 47.407910000071546,
          "p25": 50.896529500048246,
          "median": 51.37669524987942,
          "p75": 67.91699837518972,
          "p95": 105.60168389970693,
          "max": 127.26495399967962
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2023": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      }
    },
    "Haarlem": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 498,
        "city_counts": {
          "Haarlem": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 236,
            "fraction": 0.118
          },
          "2-4": {
            "count": 1485,
            "fraction": 0.7425
          },
          "5+": {
            "count": 279,
            "fraction": 0.1395
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.013629999915107,
          "p05": 48.28081442493623,
          "p25": 51.94738412514288,
          "median": 59.26299124997682,
          "p75": 74.43709725007443,
          "p95": 209.53900477503433,
          "max": 2336.662258500594
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 6,
          "2020": 43,
          "2023": 1951
        },
        "source_ahn_family_counts": {
          "ahn3": 6,
          "ahn4": 43,
          "ahn5": 1951
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 41,
        "city_counts": {
          "Haarlem": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 13,
            "fraction": 0.26
          },
          "2-4": {
            "count": 37,
            "fraction": 0.74
          },
          "5+": {
            "count": 0,
            "fraction": 0.0
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.25,
          "median": 2.0,
          "p75": 2.0,
          "p95": 2.0,
          "max": 4.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 21.35542200005459,
          "p05": 23.48719287493535,
          "p25": 34.814218374980356,
          "median": 46.28088849997616,
          "p75": 47.114197250001986,
          "p95": 48.2651090250623,
          "max": 58.30761099994403
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2023": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 40,
        "city_counts": {
          "Haarlem": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 17,
            "fraction": 0.34
          },
          "2-4": {
            "count": 33,
            "fraction": 0.66
          },
          "5+": {
            "count": 0,
            "fraction": 0.0
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 4.0,
          "max": 4.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 20.930745000024903,
          "p05": 21.764585675040937,
          "p25": 30.686778249838795,
          "median": 38.97479374989682,
          "p75": 49.44638262496929,
          "p95": 92.86351039989715,
          "max": 103.08071799997502
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 1,
          "2023": 49
        },
        "source_ahn_family_counts": {
          "ahn4": 1,
          "ahn5": 49
        }
      }
    },
    "Delft": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 993,
        "city_counts": {
          "Delft": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 305,
            "fraction": 0.1525
          },
          "2-4": {
            "count": 1530,
            "fraction": 0.765
          },
          "5+": {
            "count": 165,
            "fraction": 0.0825
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.075546000079022,
          "p05": 40.117481225031895,
          "p25": 50.66571912492983,
          "median": 55.99683800006397,
          "p75": 65.92307300011079,
          "p95": 271.7726308998538,
          "max": 2355.7423904999823
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 5,
          "2020": 22,
          "2023": 1973
        },
        "source_ahn_family_counts": {
          "ahn3": 5,
          "ahn4": 22,
          "ahn5": 1973
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 30,
        "city_counts": {
          "Delft": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 9,
            "fraction": 0.18
          },
          "2-4": {
            "count": 34,
            "fraction": 0.68
          },
          "5+": {
            "count": 7,
            "fraction": 0.14
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 10.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 30.529045000005077,
          "p05": 31.194188375020264,
          "p25": 45.237907874910206,
          "median": 51.113441000053285,
          "p75": 65.30323299982689,
          "p95": 283.2381175747741,
          "max": 740.3507525007074
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 2,
          "2023": 48
        },
        "source_ahn_family_counts": {
          "ahn4": 2,
          "ahn5": 48
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 35,
        "city_counts": {
          "Delft": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 14,
            "fraction": 0.28
          },
          "2-4": {
            "count": 32,
            "fraction": 0.64
          },
          "5+": {
            "count": 4,
            "fraction": 0.08
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 20.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 32.69745749997007,
          "p05": 49.58547810014778,
          "p25": 55.07532824992532,
          "median": 61.43578800003176,
          "p75": 89.97939462494683,
          "p95": 952.0853689497935,
          "max": 1543.7077475000583
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2023": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      }
    },
    "Rotterdam": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 335,
        "city_counts": {
          "Rotterdam": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 547,
            "fraction": 0.2735
          },
          "2-4": {
            "count": 1108,
            "fraction": 0.554
          },
          "5+": {
            "count": 345,
            "fraction": 0.1725
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 42.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.034059999896975,
          "p05": 38.78795122482864,
          "p25": 62.702476624946954,
          "median": 76.7046452499899,
          "p75": 111.18578087501318,
          "p95": 224.60911722487654,
          "max": 1532.5974450000485
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2011": 6,
          "2020": 26,
          "2023": 1968
        },
        "source_ahn_family_counts": {
          "ahn3": 6,
          "ahn4": 26,
          "ahn5": 1968
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 46,
        "city_counts": {
          "Rotterdam": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 0,
            "fraction": 0.0
          },
          "2-4": {
            "count": 42,
            "fraction": 0.84
          },
          "5+": {
            "count": 8,
            "fraction": 0.16
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 2.0,
          "p05": 2.0,
          "p25": 3.0,
          "median": 4.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 27.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 46.03457200018294,
          "p05": 50.88371327509526,
          "p25": 54.35293637514573,
          "median": 62.716357000027266,
          "p75": 75.91480124986482,
          "p95": 124.52355102505761,
          "max": 499.43222599949723
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 2,
          "2023": 48
        },
        "source_ahn_family_counts": {
          "ahn4": 2,
          "ahn5": 48
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 31,
        "city_counts": {
          "Rotterdam": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 10,
            "fraction": 0.2
          },
          "2-4": {
            "count": 19,
            "fraction": 0.38
          },
          "5+": {
            "count": 21,
            "fraction": 0.42
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 4.0,
          "p75": 5.75,
          "p95": 10.649999999999991,
          "max": 38.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 33.42516349996594,
          "p05": 46.8946241499791,
          "p25": 75.1964960001074,
          "median": 123.65028849995238,
          "p75": 169.81153825011955,
          "p95": 874.7647322999704,
          "max": 1141.431858999681
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2011": 2,
          "2020": 1,
          "2022": 25,
          "2023": 22
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 1,
          "ahn5": 47
        }
      }
    },
    "Amersfoort": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 1133,
        "city_counts": {
          "Amersfoort": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 618,
            "fraction": 0.309
          },
          "2-4": {
            "count": 1210,
            "fraction": 0.605
          },
          "5+": {
            "count": 172,
            "fraction": 0.086
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 19.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.052094499932462,
          "p05": 32.7938475250032,
          "p25": 51.37572387499178,
          "median": 60.69838674997338,
          "p75": 84.60006912494232,
          "p95": 216.75043637488008,
          "max": 2225.6007215002887
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 13,
          "2020": 42,
          "2023": 1945
        },
        "source_ahn_family_counts": {
          "ahn3": 13,
          "ahn4": 42,
          "ahn5": 1945
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 50,
        "city_counts": {
          "Amersfoort": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 3,
            "fraction": 0.06
          },
          "2-4": {
            "count": 39,
            "fraction": 0.78
          },
          "5+": {
            "count": 8,
            "fraction": 0.16
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.4500000000000002,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 7.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 21.967584999928825,
          "p05": 41.242652049862684,
          "p25": 50.7012508749941,
          "median": 54.88300675011324,
          "p75": 59.47893274984907,
          "p95": 87.60376217480403,
          "max": 155.99448100015982
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2023": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 50,
        "city_counts": {
          "Amersfoort": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 4,
            "fraction": 0.08
          },
          "2-4": {
            "count": 31,
            "fraction": 0.62
          },
          "5+": {
            "count": 15,
            "fraction": 0.3
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.5,
          "p75": 5.0,
          "p95": 7.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 23.44317300004555,
          "p05": 26.685993750037042,
          "p25": 48.28935749997927,
          "median": 57.236381000072214,
          "p75": 74.96719574995649,
          "p95": 114.38712324980702,
          "max": 199.2940749996279
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2023": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      }
    },
    "Arnhem": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 726,
        "city_counts": {
          "Arnhem": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 504,
            "fraction": 0.252
          },
          "2-4": {
            "count": 1315,
            "fraction": 0.6575
          },
          "5+": {
            "count": 181,
            "fraction": 0.0905
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.037496500015138,
          "p05": 27.34834869972945,
          "p25": 46.40620612493685,
          "median": 53.97401500005844,
          "p75": 68.54529825005562,
          "p95": 160.8163178750576,
          "max": 2039.7588225010902
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 27,
          "2022": 1973
        },
        "source_ahn_family_counts": {
          "ahn3": 27,
          "ahn4": 1973
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 50,
        "city_counts": {
          "Arnhem": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 3,
            "fraction": 0.06
          },
          "2-4": {
            "count": 33,
            "fraction": 0.66
          },
          "5+": {
            "count": 14,
            "fraction": 0.28
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.4500000000000002,
          "p25": 2.0,
          "median": 3.0,
          "p75": 5.0,
          "p95": 7.0,
          "max": 9.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 42.28113950019487,
          "p05": 46.07784409998862,
          "p25": 58.86889537513669,
          "median": 81.8566435000326,
          "p75": 106.89965012482489,
          "p95": 199.94896994995062,
          "max": 465.2422570002245
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2022": 50
        },
        "source_ahn_family_counts": {
          "ahn4": 50
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 49,
        "city_counts": {
          "Arnhem": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 10,
            "fraction": 0.2
          },
          "2-4": {
            "count": 36,
            "fraction": 0.72
          },
          "5+": {
            "count": 4,
            "fraction": 0.08
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 10.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 21.962669500194174,
          "p05": 41.76965824979817,
          "p25": 45.4822792501397,
          "median": 53.10262974997963,
          "p75": 86.07828112497505,
          "p95": 157.62655735004455,
          "max": 170.9614829999255
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2022": 10,
          "2024": 40
        },
        "source_ahn_family_counts": {
          "ahn4": 10,
          "ahn5": 40
        }
      }
    },
    "Nijmegen": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 655,
        "city_counts": {
          "Nijmegen": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 359,
            "fraction": 0.1795
          },
          "2-4": {
            "count": 1526,
            "fraction": 0.763
          },
          "5+": {
            "count": 115,
            "fraction": 0.0575
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 14.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.05108550005162,
          "p05": 21.857490699963435,
          "p25": 48.514506374963545,
          "median": 51.546359749947655,
          "p75": 72.2266854999983,
          "p95": 428.25761545040217,
          "max": 2480.681709499998
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2015": 2,
          "2021": 6,
          "2024": 1992
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 6,
          "ahn5": 1992
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 29,
        "city_counts": {
          "Nijmegen": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 9,
            "fraction": 0.18
          },
          "2-4": {
            "count": 29,
            "fraction": 0.58
          },
          "5+": {
            "count": 12,
            "fraction": 0.24
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 9.549999999999997,
          "max": 14.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 21.78331399990829,
          "p05": 31.61739662499344,
          "p25": 49.52714712502846,
          "median": 88.17228950009678,
          "p75": 148.33003812494076,
          "p95": 216.03995977478013,
          "max": 383.0430750006792
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2021": 2,
          "2024": 48
        },
        "source_ahn_family_counts": {
          "ahn4": 2,
          "ahn5": 48
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 25,
        "city_counts": {
          "Nijmegen": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 1,
            "fraction": 0.02
          },
          "2-4": {
            "count": 37,
            "fraction": 0.74
          },
          "5+": {
            "count": 12,
            "fraction": 0.24
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 2.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 8.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 39.49660200010174,
          "p05": 46.485989849900655,
          "p25": 54.98081325018049,
          "median": 93.00095700006574,
          "p75": 118.48890737496245,
          "p95": 180.33915017476136,
          "max": 727.5500020001955
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2024": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      }
    },
    "Zwolle": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 1026,
        "city_counts": {
          "Zwolle": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 428,
            "fraction": 0.214
          },
          "2-4": {
            "count": 1297,
            "fraction": 0.6485
          },
          "5+": {
            "count": 275,
            "fraction": 0.1375
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.000019499969504,
          "p05": 21.308132424943494,
          "p25": 46.16520162484938,
          "median": 57.76817349996152,
          "p75": 80.2250986248672,
          "p95": 209.5081589252911,
          "max": 2374.2006175007596
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 24,
          "2022": 1976
        },
        "source_ahn_family_counts": {
          "ahn3": 24,
          "ahn4": 1976
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 38,
        "city_counts": {
          "Zwolle": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 6,
            "fraction": 0.12
          },
          "2-4": {
            "count": 41,
            "fraction": 0.82
          },
          "5+": {
            "count": 3,
            "fraction": 0.06
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 4.549999999999997,
          "max": 5.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 20.688517999982807,
          "p05": 44.60901474998163,
          "p25": 52.687546625111985,
          "median": 62.90046624976674,
          "p75": 70.93385562500443,
          "p95": 159.47151447469187,
          "max": 1188.0813720002745
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 3,
          "2022": 47
        },
        "source_ahn_family_counts": {
          "ahn3": 3,
          "ahn4": 47
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 35,
        "city_counts": {
          "Zwolle": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 3,
            "fraction": 0.06
          },
          "2-4": {
            "count": 21,
            "fraction": 0.42
          },
          "5+": {
            "count": 26,
            "fraction": 0.52
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.4500000000000002,
          "p25": 2.0,
          "median": 5.0,
          "p75": 6.0,
          "p95": 8.549999999999997,
          "max": 10.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 43.60926150013927,
          "p05": 45.18103780012789,
          "p25": 54.051116999967704,
          "median": 68.98818900009584,
          "p75": 98.95137924989973,
          "p95": 244.6294550251763,
          "max": 448.3318080002031
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2022": 50
        },
        "source_ahn_family_counts": {
          "ahn4": 50
        }
      }
    },
    "Tilburg": {
      "train": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 719,
        "city_counts": {
          "Tilburg": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 374,
            "fraction": 0.187
          },
          "2-4": {
            "count": 1400,
            "fraction": 0.7
          },
          "5+": {
            "count": 226,
            "fraction": 0.113
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 13.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.0768540002289,
          "p05": 22.033964024989324,
          "p25": 43.631886125124055,
          "median": 53.855493999901114,
          "p75": 73.66416012507011,
          "p95": 130.43463572503006,
          "max": 1147.8311140000465
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 4,
          "2020": 8,
          "2024": 1988
        },
        "source_ahn_family_counts": {
          "ahn3": 4,
          "ahn4": 8,
          "ahn5": 1988
        }
      },
      "calibration": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 43,
        "city_counts": {
          "Tilburg": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 6,
            "fraction": 0.12
          },
          "2-4": {
            "count": 30,
            "fraction": 0.6
          },
          "5+": {
            "count": 14,
            "fraction": 0.28
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.0,
          "p25": 3.0,
          "median": 3.0,
          "p75": 5.0,
          "p95": 6.0,
          "max": 7.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 20.451322000112473,
          "p05": 28.264819700089735,
          "p25": 53.35825862507785,
          "median": 62.40786550005717,
          "p75": 72.60799862509252,
          "p95": 92.57018282528567,
          "max": 196.289311000033
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2024": 50
        },
        "source_ahn_family_counts": {
          "ahn5": 50
        }
      },
      "validation": {
        "n": 50,
        "unique_parent_buildings": 50,
        "adjacency_groups": 49,
        "city_counts": {
          "Tilburg": 50
        },
        "plane_group_bins": {
          "1": {
            "count": 3,
            "fraction": 0.06
          },
          "2-4": {
            "count": 40,
            "fraction": 0.8
          },
          "5+": {
            "count": 7,
            "fraction": 0.14
          }
        },
        "plane_group_count": {
          "n": 50,
          "min": 1.0,
          "p05": 1.4500000000000002,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 7.0
        },
        "projected_roof_area_m2": {
          "n": 50,
          "min": 21.912423000009593,
          "p05": 39.552237325026184,
          "p25": 45.66200037502526,
          "median": 61.23969874993505,
          "p75": 70.23701537496362,
          "p95": 88.84273667511427,
          "max": 151.65739800006483
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2021": 1,
          "2024": 49
        },
        "source_ahn_family_counts": {
          "ahn4": 1,
          "ahn5": 49
        }
      }
    }
  },
  "nested_training_scales": {
    "3500": {
      "n": 3500,
      "unique_parent_buildings": 3500,
      "adjacency_groups": 2533,
      "city_counts": {
        "Amersfoort": 350,
        "Arnhem": 350,
        "Delft": 350,
        "Haarlem": 350,
        "Leiden": 350,
        "Nijmegen": 350,
        "Rotterdam": 350,
        "Tilburg": 350,
        "Utrecht": 350,
        "Zwolle": 350
      },
      "plane_group_bins": {
        "1": {
          "count": 665,
          "fraction": 0.19
        },
        "2-4": {
          "count": 2448,
          "fraction": 0.6994285714285714
        },
        "5+": {
          "count": 387,
          "fraction": 0.11057142857142857
        }
      },
      "plane_group_count": {
        "n": 3500,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 5.0,
        "max": 42.0
      },
      "projected_roof_area_m2": {
        "n": 3500,
        "min": 20.000019499969504,
        "p05": 26.85780407499626,
        "p25": 49.68562812504669,
        "median": 58.404211249965,
        "p75": 76.43262125006264,
        "p95": 195.6149334750453,
        "max": 2310.249800499831
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 2,
        "2014": 4,
        "2016": 6,
        "2018": 6,
        "2020": 27,
        "2021": 1,
        "2022": 693,
        "2023": 2064,
        "2024": 697
      },
      "source_ahn_family_counts": {
        "ahn3": 18,
        "ahn4": 721,
        "ahn5": 2761
      }
    },
    "10000": {
      "n": 10000,
      "unique_parent_buildings": 10000,
      "adjacency_groups": 5475,
      "city_counts": {
        "Amersfoort": 1000,
        "Arnhem": 1000,
        "Delft": 1000,
        "Haarlem": 1000,
        "Leiden": 1000,
        "Nijmegen": 1000,
        "Rotterdam": 1000,
        "Tilburg": 1000,
        "Utrecht": 1000,
        "Zwolle": 1000
      },
      "plane_group_bins": {
        "1": {
          "count": 1932,
          "fraction": 0.1932
        },
        "2-4": {
          "count": 6968,
          "fraction": 0.6968
        },
        "5+": {
          "count": 1100,
          "fraction": 0.11
        }
      },
      "plane_group_count": {
        "n": 10000,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 5.0,
        "max": 42.0
      },
      "projected_roof_area_m2": {
        "n": 10000,
        "min": 20.000019499969504,
        "p05": 26.29416907518629,
        "p25": 49.442265875009525,
        "median": 58.15870200000292,
        "p75": 75.91336062486718,
        "p95": 192.28300022502174,
        "max": 2374.2006175007596
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 3,
        "2014": 6,
        "2016": 16,
        "2018": 24,
        "2020": 87,
        "2021": 3,
        "2022": 1972,
        "2023": 5896,
        "2024": 1993
      },
      "source_ahn_family_counts": {
        "ahn3": 49,
        "ahn4": 2062,
        "ahn5": 7889
      }
    },
    "20000": {
      "n": 20000,
      "unique_parent_buildings": 20000,
      "adjacency_groups": 8541,
      "city_counts": {
        "Amersfoort": 2000,
        "Arnhem": 2000,
        "Delft": 2000,
        "Haarlem": 2000,
        "Leiden": 2000,
        "Nijmegen": 2000,
        "Rotterdam": 2000,
        "Tilburg": 2000,
        "Utrecht": 2000,
        "Zwolle": 2000
      },
      "plane_group_bins": {
        "1": {
          "count": 3847,
          "fraction": 0.19235
        },
        "2-4": {
          "count": 13915,
          "fraction": 0.69575
        },
        "5+": {
          "count": 2238,
          "fraction": 0.1119
        }
      },
      "plane_group_count": {
        "n": 20000,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 6.0,
        "max": 42.0
      },
      "projected_roof_area_m2": {
        "n": 20000,
        "min": 20.000019499969504,
        "p05": 26.50503312507648,
        "p25": 49.38305974998232,
        "median": 58.08982249990149,
        "p75": 76.02036550009267,
        "p95": 191.27969320037732,
        "max": 2480.681709499998
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 6,
        "2014": 13,
        "2015": 2,
        "2016": 28,
        "2018": 40,
        "2020": 178,
        "2021": 6,
        "2022": 3949,
        "2023": 11798,
        "2024": 3980
      },
      "source_ahn_family_counts": {
        "ahn3": 89,
        "ahn4": 4133,
        "ahn5": 15778
      }
    }
  },
  "training_increments": {
    "3500_to_10000": {
      "n": 6500,
      "unique_parent_buildings": 6500,
      "adjacency_groups": 4090,
      "city_counts": {
        "Amersfoort": 650,
        "Arnhem": 650,
        "Delft": 650,
        "Haarlem": 650,
        "Leiden": 650,
        "Nijmegen": 650,
        "Rotterdam": 650,
        "Tilburg": 650,
        "Utrecht": 650,
        "Zwolle": 650
      },
      "plane_group_bins": {
        "1": {
          "count": 1267,
          "fraction": 0.19492307692307692
        },
        "2-4": {
          "count": 4520,
          "fraction": 0.6953846153846154
        },
        "5+": {
          "count": 713,
          "fraction": 0.10969230769230769
        }
      },
      "plane_group_count": {
        "n": 6500,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 5.0,
        "max": 18.0
      },
      "projected_roof_area_m2": {
        "n": 6500,
        "min": 20.013629999915107,
        "p05": 25.971441924870124,
        "p25": 49.30732162514954,
        "median": 58.028942999955405,
        "p75": 75.64154949996637,
        "p95": 188.29669289985242,
        "max": 2374.2006175007596
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 1,
        "2014": 2,
        "2016": 10,
        "2018": 18,
        "2020": 60,
        "2021": 2,
        "2022": 1279,
        "2023": 3832,
        "2024": 1296
      },
      "source_ahn_family_counts": {
        "ahn3": 31,
        "ahn4": 1341,
        "ahn5": 5128
      }
    },
    "10000_to_20000": {
      "n": 10000,
      "unique_parent_buildings": 10000,
      "adjacency_groups": 5511,
      "city_counts": {
        "Amersfoort": 1000,
        "Arnhem": 1000,
        "Delft": 1000,
        "Haarlem": 1000,
        "Leiden": 1000,
        "Nijmegen": 1000,
        "Rotterdam": 1000,
        "Tilburg": 1000,
        "Utrecht": 1000,
        "Zwolle": 1000
      },
      "plane_group_bins": {
        "1": {
          "count": 1915,
          "fraction": 0.1915
        },
        "2-4": {
          "count": 6947,
          "fraction": 0.6947
        },
        "5+": {
          "count": 1138,
          "fraction": 0.1138
        }
      },
      "plane_group_count": {
        "n": 10000,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 6.0,
        "max": 19.0
      },
      "projected_roof_area_m2": {
        "n": 10000,
        "min": 20.037496500015138,
        "p05": 26.803144075028765,
        "p25": 49.31439924988012,
        "median": 58.01060474985244,
        "p75": 76.09130549983283,
        "p95": 190.38356509983245,
        "max": 2480.681709499998
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 3,
        "2014": 7,
        "2015": 2,
        "2016": 12,
        "2018": 16,
        "2020": 91,
        "2021": 3,
        "2022": 1977,
        "2023": 5902,
        "2024": 1987
      },
      "source_ahn_family_counts": {
        "ahn3": 40,
        "ahn4": 2071,
        "ahn5": 7889
      }
    },
    "3500_to_20000": {
      "n": 16500,
      "unique_parent_buildings": 16500,
      "adjacency_groups": 7591,
      "city_counts": {
        "Amersfoort": 1650,
        "Arnhem": 1650,
        "Delft": 1650,
        "Haarlem": 1650,
        "Leiden": 1650,
        "Nijmegen": 1650,
        "Rotterdam": 1650,
        "Tilburg": 1650,
        "Utrecht": 1650,
        "Zwolle": 1650
      },
      "plane_group_bins": {
        "1": {
          "count": 3182,
          "fraction": 0.19284848484848485
        },
        "2-4": {
          "count": 11467,
          "fraction": 0.694969696969697
        },
        "5+": {
          "count": 1851,
          "fraction": 0.11218181818181819
        }
      },
      "plane_group_count": {
        "n": 16500,
        "min": 1.0,
        "p05": 1.0,
        "p25": 2.0,
        "median": 3.0,
        "p75": 4.0,
        "p95": 6.0,
        "max": 19.0
      },
      "projected_roof_area_m2": {
        "n": 16500,
        "min": 20.013629999915107,
        "p05": 26.43067567503856,
        "p25": 49.30896250014795,
        "median": 58.01960699997506,
        "p75": 75.97808037509378,
        "p95": 189.4812621999341,
        "max": 2480.681709499998
      },
      "roof_height_above_ground_m": {
        "available": false,
        "n": 0,
        "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
      },
      "source_ahn_year_counts": {
        "2011": 4,
        "2014": 9,
        "2015": 2,
        "2016": 22,
        "2018": 34,
        "2020": 151,
        "2021": 5,
        "2022": 3256,
        "2023": 9734,
        "2024": 3283
      },
      "source_ahn_family_counts": {
        "ahn3": 71,
        "ahn4": 3412,
        "ahn5": 13017
      }
    }
  },
  "by_city_and_training_scale": {
    "Utrecht": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 344,
        "city_counts": {
          "Utrecht": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 53,
            "fraction": 0.15142857142857144
          },
          "2-4": {
            "count": 254,
            "fraction": 0.7257142857142858
          },
          "5+": {
            "count": 43,
            "fraction": 0.12285714285714286
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.136510500162377,
          "p05": 40.61299442494293,
          "p25": 49.701213500056184,
          "median": 57.76002625002697,
          "p75": 70.58771425004136,
          "p95": 131.22505645007234,
          "max": 2310.249800499831
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 2,
          "2020": 3,
          "2023": 345
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 3,
          "ahn5": 345
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 914,
        "city_counts": {
          "Utrecht": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 170,
            "fraction": 0.17
          },
          "2-4": {
            "count": 721,
            "fraction": 0.721
          },
          "5+": {
            "count": 109,
            "fraction": 0.109
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.067694499838982,
          "p05": 40.68382604984951,
          "p25": 48.964327250017924,
          "median": 56.11050725007445,
          "p75": 69.3905633750673,
          "p95": 131.6589382751911,
          "max": 2310.249800499831
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 2,
          "2020": 10,
          "2023": 988
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 10,
          "ahn5": 988
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 1653,
        "city_counts": {
          "Utrecht": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 332,
            "fraction": 0.166
          },
          "2-4": {
            "count": 1434,
            "fraction": 0.717
          },
          "5+": {
            "count": 234,
            "fraction": 0.117
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.06011250000312,
          "p05": 41.262503675011935,
          "p25": 48.455965124966504,
          "median": 55.165427000040175,
          "p75": 68.24765262507843,
          "p95": 130.15166662493166,
          "max": 2310.249800499831
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 2,
          "2020": 19,
          "2023": 1979
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 19,
          "ahn5": 1979
        }
      }
    },
    "Leiden": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 249,
        "city_counts": {
          "Leiden": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 26,
            "fraction": 0.07428571428571429
          },
          "2-4": {
            "count": 288,
            "fraction": 0.8228571428571428
          },
          "5+": {
            "count": 36,
            "fraction": 0.10285714285714286
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.645809999914178,
          "p05": 45.16570825009721,
          "p25": 51.605950250012086,
          "median": 57.36570849981488,
          "p75": 67.18911149984706,
          "p95": 111.22152837509974,
          "max": 760.3983694994943
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 4,
          "2023": 346
        },
        "source_ahn_family_counts": {
          "ahn4": 4,
          "ahn5": 346
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 530,
        "city_counts": {
          "Leiden": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 65,
            "fraction": 0.065
          },
          "2-4": {
            "count": 823,
            "fraction": 0.823
          },
          "5+": {
            "count": 112,
            "fraction": 0.112
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.197273499808556,
          "p05": 45.1724331501082,
          "p25": 51.95822012489735,
          "median": 57.87440074999775,
          "p75": 67.46870687497781,
          "p95": 105.34223182477804,
          "max": 804.2069419996914
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 11,
          "2023": 989
        },
        "source_ahn_family_counts": {
          "ahn4": 11,
          "ahn5": 989
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 803,
        "city_counts": {
          "Leiden": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 144,
            "fraction": 0.072
          },
          "2-4": {
            "count": 1610,
            "fraction": 0.805
          },
          "5+": {
            "count": 246,
            "fraction": 0.123
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.155105499983872,
          "p05": 45.17278950009482,
          "p25": 51.96731999988398,
          "median": 58.0764812501032,
          "p75": 67.44107349988496,
          "p95": 104.53750382507793,
          "max": 1678.5113240004546
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2020": 18,
          "2023": 1982
        },
        "source_ahn_family_counts": {
          "ahn4": 18,
          "ahn5": 1982
        }
      }
    },
    "Haarlem": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 229,
        "city_counts": {
          "Haarlem": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 30,
            "fraction": 0.08571428571428572
          },
          "2-4": {
            "count": 274,
            "fraction": 0.7828571428571428
          },
          "5+": {
            "count": 46,
            "fraction": 0.13142857142857142
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 9.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.554512500071553,
          "p05": 48.541228600083265,
          "p25": 51.46189800008064,
          "median": 58.07978474998522,
          "p75": 75.54551337498523,
          "p95": 183.84665812502456,
          "max": 589.5244454997053
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 1,
          "2020": 5,
          "2023": 344
        },
        "source_ahn_family_counts": {
          "ahn3": 1,
          "ahn4": 5,
          "ahn5": 344
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 395,
        "city_counts": {
          "Haarlem": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 111,
            "fraction": 0.111
          },
          "2-4": {
            "count": 761,
            "fraction": 0.761
          },
          "5+": {
            "count": 128,
            "fraction": 0.128
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.013629999915107,
          "p05": 48.44022917500489,
          "p25": 51.93461050010686,
          "median": 58.99503524984199,
          "p75": 74.68389699985961,
          "p95": 212.92652454962916,
          "max": 1575.0402599999845
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 2,
          "2020": 21,
          "2023": 977
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 21,
          "ahn5": 977
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 498,
        "city_counts": {
          "Haarlem": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 236,
            "fraction": 0.118
          },
          "2-4": {
            "count": 1485,
            "fraction": 0.7425
          },
          "5+": {
            "count": 279,
            "fraction": 0.1395
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.013629999915107,
          "p05": 48.28081442493623,
          "p25": 51.94738412514288,
          "median": 59.26299124997682,
          "p75": 74.43709725007443,
          "p95": 209.53900477503433,
          "max": 2336.662258500594
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 6,
          "2020": 43,
          "2023": 1951
        },
        "source_ahn_family_counts": {
          "ahn3": 6,
          "ahn4": 43,
          "ahn5": 1951
        }
      }
    },
    "Delft": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 275,
        "city_counts": {
          "Delft": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 55,
            "fraction": 0.15714285714285714
          },
          "2-4": {
            "count": 270,
            "fraction": 0.7714285714285715
          },
          "5+": {
            "count": 25,
            "fraction": 0.07142857142857142
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.45781799997578,
          "p05": 36.32964999991321,
          "p25": 50.799531250045256,
          "median": 56.002845499900246,
          "p75": 66.01212224998753,
          "p95": 272.2516349499148,
          "max": 1752.2931370004505
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 1,
          "2020": 2,
          "2023": 347
        },
        "source_ahn_family_counts": {
          "ahn3": 1,
          "ahn4": 2,
          "ahn5": 347
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 626,
        "city_counts": {
          "Delft": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 170,
            "fraction": 0.17
          },
          "2-4": {
            "count": 749,
            "fraction": 0.749
          },
          "5+": {
            "count": 81,
            "fraction": 0.081
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.14339799994237,
          "p05": 38.66236350004061,
          "p25": 50.61125824974516,
          "median": 55.6604332499528,
          "p75": 65.51459587510672,
          "p95": 243.0288653750872,
          "max": 2355.7423904999823
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 2,
          "2020": 10,
          "2023": 988
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 10,
          "ahn5": 988
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 993,
        "city_counts": {
          "Delft": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 305,
            "fraction": 0.1525
          },
          "2-4": {
            "count": 1530,
            "fraction": 0.765
          },
          "5+": {
            "count": 165,
            "fraction": 0.0825
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.075546000079022,
          "p05": 40.117481225031895,
          "p25": 50.66571912492983,
          "median": 55.99683800006397,
          "p75": 65.92307300011079,
          "p95": 271.7726308998538,
          "max": 2355.7423904999823
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2014": 5,
          "2020": 22,
          "2023": 1973
        },
        "source_ahn_family_counts": {
          "ahn3": 5,
          "ahn4": 22,
          "ahn5": 1973
        }
      }
    },
    "Rotterdam": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 136,
        "city_counts": {
          "Rotterdam": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 91,
            "fraction": 0.26
          },
          "2-4": {
            "count": 206,
            "fraction": 0.5885714285714285
          },
          "5+": {
            "count": 53,
            "fraction": 0.15142857142857144
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 42.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.034059999896975,
          "p05": 43.30586972491848,
          "p25": 62.5156336249527,
          "median": 75.18971049998315,
          "p75": 105.51894862509637,
          "p95": 222.25098632484742,
          "max": 1450.0567849999695
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2011": 2,
          "2020": 6,
          "2023": 342
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 6,
          "ahn5": 342
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 238,
        "city_counts": {
          "Rotterdam": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 262,
            "fraction": 0.262
          },
          "2-4": {
            "count": 568,
            "fraction": 0.568
          },
          "5+": {
            "count": 170,
            "fraction": 0.17
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 42.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.034059999896975,
          "p05": 38.15731899985947,
          "p25": 62.575695000072024,
          "median": 76.13951224985935,
          "p75": 108.31016099999,
          "p95": 222.68402692480666,
          "max": 1532.5974450000485
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2011": 3,
          "2020": 12,
          "2023": 985
        },
        "source_ahn_family_counts": {
          "ahn3": 3,
          "ahn4": 12,
          "ahn5": 985
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 335,
        "city_counts": {
          "Rotterdam": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 547,
            "fraction": 0.2735
          },
          "2-4": {
            "count": 1108,
            "fraction": 0.554
          },
          "5+": {
            "count": 345,
            "fraction": 0.1725
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 7.0,
          "max": 42.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.034059999896975,
          "p05": 38.78795122482864,
          "p25": 62.702476624946954,
          "median": 76.7046452499899,
          "p75": 111.18578087501318,
          "p95": 224.60911722487654,
          "max": 1532.5974450000485
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2011": 6,
          "2020": 26,
          "2023": 1968
        },
        "source_ahn_family_counts": {
          "ahn3": 6,
          "ahn4": 26,
          "ahn5": 1968
        }
      }
    },
    "Amersfoort": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 283,
        "city_counts": {
          "Amersfoort": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 116,
            "fraction": 0.3314285714285714
          },
          "2-4": {
            "count": 206,
            "fraction": 0.5885714285714285
          },
          "5+": {
            "count": 28,
            "fraction": 0.08
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.052094499932462,
          "p05": 34.56853679999337,
          "p25": 51.23372700034788,
          "median": 61.12838799982406,
          "p75": 84.77817987505115,
          "p95": 190.0901437751766,
          "max": 2060.849585499958
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 4,
          "2020": 6,
          "2023": 340
        },
        "source_ahn_family_counts": {
          "ahn3": 4,
          "ahn4": 6,
          "ahn5": 340
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 683,
        "city_counts": {
          "Amersfoort": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 319,
            "fraction": 0.319
          },
          "2-4": {
            "count": 593,
            "fraction": 0.593
          },
          "5+": {
            "count": 88,
            "fraction": 0.088
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.052094499932462,
          "p05": 32.7950741999758,
          "p25": 51.235038000435196,
          "median": 60.10889724998933,
          "p75": 82.33469624994409,
          "p95": 246.00405145012257,
          "max": 2060.849585499958
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 10,
          "2020": 21,
          "2023": 969
        },
        "source_ahn_family_counts": {
          "ahn3": 10,
          "ahn4": 21,
          "ahn5": 969
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 1133,
        "city_counts": {
          "Amersfoort": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 618,
            "fraction": 0.309
          },
          "2-4": {
            "count": 1210,
            "fraction": 0.605
          },
          "5+": {
            "count": 172,
            "fraction": 0.086
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 19.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.052094499932462,
          "p05": 32.7938475250032,
          "p25": 51.37572387499178,
          "median": 60.69838674997338,
          "p75": 84.60006912494232,
          "p95": 216.75043637488008,
          "max": 2225.6007215002887
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 13,
          "2020": 42,
          "2023": 1945
        },
        "source_ahn_family_counts": {
          "ahn3": 13,
          "ahn4": 42,
          "ahn5": 1945
        }
      }
    },
    "Arnhem": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 243,
        "city_counts": {
          "Arnhem": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 90,
            "fraction": 0.2571428571428571
          },
          "2-4": {
            "count": 230,
            "fraction": 0.6571428571428571
          },
          "5+": {
            "count": 30,
            "fraction": 0.08571428571428572
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 15.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 21.307353999884647,
          "p05": 29.528801474885924,
          "p25": 46.5532749998132,
          "median": 54.105814999968814,
          "p75": 70.63136074993334,
          "p95": 162.9608918500028,
          "max": 1594.1907430021104
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 2,
          "2022": 348
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 348
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 483,
        "city_counts": {
          "Arnhem": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 251,
            "fraction": 0.251
          },
          "2-4": {
            "count": 662,
            "fraction": 0.662
          },
          "5+": {
            "count": 87,
            "fraction": 0.087
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.270590999980662,
          "p05": 28.164345550158405,
          "p25": 46.5224008750024,
          "median": 54.07481250015557,
          "p75": 69.85009325016046,
          "p95": 161.63403595001827,
          "max": 1963.1499109998858
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 14,
          "2022": 986
        },
        "source_ahn_family_counts": {
          "ahn3": 14,
          "ahn4": 986
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 726,
        "city_counts": {
          "Arnhem": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 504,
            "fraction": 0.252
          },
          "2-4": {
            "count": 1315,
            "fraction": 0.6575
          },
          "5+": {
            "count": 181,
            "fraction": 0.0905
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 1.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 16.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.037496500015138,
          "p05": 27.34834869972945,
          "p25": 46.40620612493685,
          "median": 53.97401500005844,
          "p75": 68.54529825005562,
          "p95": 160.8163178750576,
          "max": 2039.7588225010902
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2018": 27,
          "2022": 1973
        },
        "source_ahn_family_counts": {
          "ahn3": 27,
          "ahn4": 1973
        }
      }
    },
    "Nijmegen": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 252,
        "city_counts": {
          "Nijmegen": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 69,
            "fraction": 0.19714285714285715
          },
          "2-4": {
            "count": 261,
            "fraction": 0.7457142857142857
          },
          "5+": {
            "count": 20,
            "fraction": 0.05714285714285714
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 9.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.06113499991678,
          "p05": 23.03579822503002,
          "p25": 48.9579161249987,
          "median": 53.632342000052084,
          "p75": 79.91384799989464,
          "p95": 380.8102494003445,
          "max": 1879.7075675001338
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2021": 1,
          "2024": 349
        },
        "source_ahn_family_counts": {
          "ahn4": 1,
          "ahn5": 349
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 462,
        "city_counts": {
          "Nijmegen": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 177,
            "fraction": 0.177
          },
          "2-4": {
            "count": 760,
            "fraction": 0.76
          },
          "5+": {
            "count": 63,
            "fraction": 0.063
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 13.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.06113499991678,
          "p05": 22.41770297504465,
          "p25": 48.673528624942264,
          "median": 52.00572800001822,
          "p75": 72.55005037492614,
          "p95": 369.58682885037166,
          "max": 2016.591077999238
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2021": 3,
          "2024": 997
        },
        "source_ahn_family_counts": {
          "ahn4": 3,
          "ahn5": 997
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 655,
        "city_counts": {
          "Nijmegen": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 359,
            "fraction": 0.1795
          },
          "2-4": {
            "count": 1526,
            "fraction": 0.763
          },
          "5+": {
            "count": 115,
            "fraction": 0.0575
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 14.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.05108550005162,
          "p05": 21.857490699963435,
          "p25": 48.514506374963545,
          "median": 51.546359749947655,
          "p75": 72.2266854999983,
          "p95": 428.25761545040217,
          "max": 2480.681709499998
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2015": 2,
          "2021": 6,
          "2024": 1992
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 6,
          "ahn5": 1992
        }
      }
    },
    "Zwolle": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 280,
        "city_counts": {
          "Zwolle": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 67,
            "fraction": 0.19142857142857142
          },
          "2-4": {
            "count": 228,
            "fraction": 0.6514285714285715
          },
          "5+": {
            "count": 55,
            "fraction": 0.15714285714285714
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.000019499969504,
          "p05": 21.378253400014056,
          "p25": 45.83039599992369,
          "median": 59.50395874994216,
          "p75": 76.39914412496779,
          "p95": 193.63484540012513,
          "max": 1368.9895005007265
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 5,
          "2022": 345
        },
        "source_ahn_family_counts": {
          "ahn3": 5,
          "ahn4": 345
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 650,
        "city_counts": {
          "Zwolle": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 217,
            "fraction": 0.217
          },
          "2-4": {
            "count": 642,
            "fraction": 0.642
          },
          "5+": {
            "count": 141,
            "fraction": 0.141
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.000019499969504,
          "p05": 21.249008174926175,
          "p25": 45.26615087485482,
          "median": 57.91744499984637,
          "p75": 79.79807762520531,
          "p95": 202.3981841249039,
          "max": 2374.2006175007596
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 14,
          "2022": 986
        },
        "source_ahn_family_counts": {
          "ahn3": 14,
          "ahn4": 986
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 1026,
        "city_counts": {
          "Zwolle": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 428,
            "fraction": 0.214
          },
          "2-4": {
            "count": 1297,
            "fraction": 0.6485
          },
          "5+": {
            "count": 275,
            "fraction": 0.1375
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 12.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.000019499969504,
          "p05": 21.308132424943494,
          "p25": 46.16520162484938,
          "median": 57.76817349996152,
          "p75": 80.2250986248672,
          "p95": 209.5081589252911,
          "max": 2374.2006175007596
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 24,
          "2022": 1976
        },
        "source_ahn_family_counts": {
          "ahn3": 24,
          "ahn4": 1976
        }
      }
    },
    "Tilburg": {
      "3500": {
        "n": 350,
        "unique_parent_buildings": 350,
        "adjacency_groups": 242,
        "city_counts": {
          "Tilburg": 350
        },
        "plane_group_bins": {
          "1": {
            "count": 68,
            "fraction": 0.19428571428571428
          },
          "2-4": {
            "count": 231,
            "fraction": 0.66
          },
          "5+": {
            "count": 51,
            "fraction": 0.1457142857142857
          }
        },
        "plane_group_count": {
          "n": 350,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 2.0,
          "p75": 4.0,
          "p95": 6.0,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 350,
          "min": 20.121880500129237,
          "p05": 21.95394702504599,
          "p25": 43.154978125081996,
          "median": 52.70656100017574,
          "p75": 72.58353900002393,
          "p95": 130.5181601498332,
          "max": 332.23425599978816
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 1,
          "2020": 1,
          "2024": 348
        },
        "source_ahn_family_counts": {
          "ahn3": 1,
          "ahn4": 1,
          "ahn5": 348
        }
      },
      "10000": {
        "n": 1000,
        "unique_parent_buildings": 1000,
        "adjacency_groups": 494,
        "city_counts": {
          "Tilburg": 1000
        },
        "plane_group_bins": {
          "1": {
            "count": 190,
            "fraction": 0.19
          },
          "2-4": {
            "count": 689,
            "fraction": 0.689
          },
          "5+": {
            "count": 121,
            "fraction": 0.121
          }
        },
        "plane_group_count": {
          "n": 1000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0499999999999545,
          "max": 11.0
        },
        "projected_roof_area_m2": {
          "n": 1000,
          "min": 20.09695249989985,
          "p05": 21.862001649992212,
          "p25": 43.556429875055485,
          "median": 53.24853599998281,
          "p75": 73.10876150008251,
          "p95": 132.396159424886,
          "max": 1147.8311140000465
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 2,
          "2020": 2,
          "2024": 996
        },
        "source_ahn_family_counts": {
          "ahn3": 2,
          "ahn4": 2,
          "ahn5": 996
        }
      },
      "20000": {
        "n": 2000,
        "unique_parent_buildings": 2000,
        "adjacency_groups": 719,
        "city_counts": {
          "Tilburg": 2000
        },
        "plane_group_bins": {
          "1": {
            "count": 374,
            "fraction": 0.187
          },
          "2-4": {
            "count": 1400,
            "fraction": 0.7
          },
          "5+": {
            "count": 226,
            "fraction": 0.113
          }
        },
        "plane_group_count": {
          "n": 2000,
          "min": 1.0,
          "p05": 1.0,
          "p25": 2.0,
          "median": 3.0,
          "p75": 3.0,
          "p95": 5.0,
          "max": 13.0
        },
        "projected_roof_area_m2": {
          "n": 2000,
          "min": 20.0768540002289,
          "p05": 22.033964024989324,
          "p25": 43.631886125124055,
          "median": 53.855493999901114,
          "p75": 73.66416012507011,
          "p95": 130.43463572503006,
          "max": 1147.8311140000465
        },
        "roof_height_above_ground_m": {
          "available": false,
          "n": 0,
          "reason": "Source manifest has ground_m and XY-only bbox, but no roof Z range/height. No mesh was opened; ground elevation and CityJSON translation are not building height."
        },
        "source_ahn_year_counts": {
          "2016": 4,
          "2020": 8,
          "2024": 1988
        },
        "source_ahn_family_counts": {
          "ahn3": 4,
          "ahn4": 8,
          "ahn5": 1988
        }
      }
    }
  },
  "ahn_year_by_city_and_split": {
    "train": {
      "Utrecht": {
        "2014": 2,
        "2020": 19,
        "2023": 1979
      },
      "Leiden": {
        "2020": 18,
        "2023": 1982
      },
      "Haarlem": {
        "2014": 6,
        "2020": 43,
        "2023": 1951
      },
      "Delft": {
        "2014": 5,
        "2020": 22,
        "2023": 1973
      },
      "Rotterdam": {
        "2011": 6,
        "2020": 26,
        "2023": 1968
      },
      "Amersfoort": {
        "2018": 13,
        "2020": 42,
        "2023": 1945
      },
      "Arnhem": {
        "2018": 27,
        "2022": 1973
      },
      "Nijmegen": {
        "2015": 2,
        "2021": 6,
        "2024": 1992
      },
      "Zwolle": {
        "2016": 24,
        "2022": 1976
      },
      "Tilburg": {
        "2016": 4,
        "2020": 8,
        "2024": 1988
      }
    },
    "calibration": {
      "Utrecht": {
        "2020": 2,
        "2023": 48
      },
      "Leiden": {
        "2023": 50
      },
      "Haarlem": {
        "2023": 50
      },
      "Delft": {
        "2020": 2,
        "2023": 48
      },
      "Rotterdam": {
        "2020": 2,
        "2023": 48
      },
      "Amersfoort": {
        "2023": 50
      },
      "Arnhem": {
        "2022": 50
      },
      "Nijmegen": {
        "2021": 2,
        "2024": 48
      },
      "Zwolle": {
        "2016": 3,
        "2022": 47
      },
      "Tilburg": {
        "2024": 50
      }
    },
    "validation": {
      "Utrecht": {
        "2020": 3,
        "2023": 47
      },
      "Leiden": {
        "2023": 50
      },
      "Haarlem": {
        "2020": 1,
        "2023": 49
      },
      "Delft": {
        "2023": 50
      },
      "Rotterdam": {
        "2011": 2,
        "2020": 1,
        "2022": 25,
        "2023": 22
      },
      "Amersfoort": {
        "2023": 50
      },
      "Arnhem": {
        "2022": 10,
        "2024": 40
      },
      "Nijmegen": {
        "2024": 50
      },
      "Zwolle": {
        "2022": 50
      },
      "Tilburg": {
        "2021": 1,
        "2024": 49
      }
    }
  },
  "conclusions_zh": [
    "每个训练规模都由同10座城市等额构成：3500/10000/20000分别为每城350/1000/2000栋；城市数量组成没有失衡。",
    "3500→20000新增16500栋中，近似共面组2–4的有11467栋、5+的有1851栋；多组屋面合计13318栋（80.7%），因此增加并非全部来自单组屋面。",
    "单组屋面占比由3500规模的19.00%变为20000规模的19.23%，变化+0.23个百分点。",
    "近似共面组数不是坡度、人工屋面片或屋脊样式标签；单组既可能水平也可能倾斜，仅凭本报告不能判断平屋顶占比。",
    "城市等额不代表屋面形状、面积、年代或空间分布相同；固定API首个合格样本与v2网格补采不是人口随机抽样。",
    "建筑高度未存入manifest，不能在不打开网格的约束下报告高度分位数；地面绝对高程不能替代建筑高度。"
  ],
  "changes_to_frozen_data_code_or_selection": false,
  "_publication": {
    "original_source_sha256": "16ea96d85fb8d75ebb9d2128574d0784a1ebeee9a1092808eded0610e4725502",
    "original_source": "source:scaling/reports/source_data_composition.json",
    "published_sha256_location": "https://feng96.github.io/research-daily/lod2/studies/report_package_manifest.json (artifact entry by href)",
    "notice": "All pre-existing scientific hash values remain original-source hashes. Paths are public provenance labels; published-copy SHA is in the package manifest. Metrics/numeric values were not changed."
  }
}
