|  | function makeVehicle(name, sides, mass) {
    views = {
    }
    Object.entries(sides).forEach(([key, val]) => {
        views[key] = {
            attributes: {
                height: {
                    name: "Height",
                    power: 1,
                    type: "length",
                    base: val.height
                }
            },
            image: val.image,
            name: val.name
        }
        if (mass !== undefined) {
            views[key].attributes.mass = {
                name: "Mass",
                power: 3,
                type: "mass",
                base: mass
            }
        }
    });
    return makeEntity({ name: name }, views);
}
function makeMultiVehicle(name, sides) {
    views = {
    }
    Object.entries(sides).forEach(([key, val]) => {
        views[key] = {
            attributes: {
                height: {
                    name: "Height",
                    power: 1,
                    type: "length",
                    base: val.height
                }
            },
            image: val.image,
            name: val.name,
            rename: val.rename
        }
        if (val.mass) {
            views[key].attributes.mass = {
                name: "Mass",
                power: 3,
                type: "mass",
                base: val.mass
            }
        }
    });
    return makeEntity({ name: name }, views);
}
function makeAircraft() {
    const options = [
        ["Antonov An-225", 84, 18.1, 285000],
        ["Airbus A380-800", 72.7, 24.1, 277000],
        ["Stratolaunch", 73, 16.5, 540000],
        ["Boeing 747-8", 76.3, 19.4, 220128],
        ["Hughes H-4 Hercules", 66.6, 24.2, 136077],
        ["Cessena 172", 8.28, 2.72, 757, 2.72]
    ],
        sides = {}
    const sorted = options.sort((a, b) => a[1] - b[1])
    sorted.forEach(plane => {
        sides[plane[0] + " (Side)"] = {
            name: plane[0] + " (Side)",
            rename: true,
            height: math.unit(plane[2], "meters"),
            mass: math.unit(plane[3], "kg"),
            image: { source: "./media/vehicles/planes/plane_" + plane[0].replace(/ /g, "-").toLowerCase() + "-side.svg" }
        };
        sides[plane[0] + " (Top)"] = {
            name: plane[0] + " (Top)",
            rename: true,
            height: math.unit(plane[1], "meters"),
            mass: math.unit(plane[3], "kg"),
            image: { source: "./media/vehicles/planes/plane_" + plane[0].replace(/ /g, "-").toLowerCase() + "-top.svg" }
        };
        if (plane.length > 4) {
            sides[plane[0] + " (Front)"] = {
                name: plane[0] + " (Front)",
                rename: true,
                height: math.unit(plane[4], "meters"),
                mass: math.unit(plane[3], "kg"),
                image: { source: "./media/vehicles/planes/plane_" + plane[0].replace(/ /g, "-").toLowerCase() + "-front.svg" }
            };
        }
    });
    const entity = makeMultiVehicle("Aircraft", sides);
    entity.sizes.push({
        name: "1:72",
        height: math.unit(sorted[0][2] / 72, "meters")
    });
    entity.sizes.push({
        name: "1:24",
        height: math.unit(sorted[0][2] / 24, "meters")
    });
    entity.sizes.push({
        name: "1:16",
        height: math.unit(sorted[0][2] / 16, "meters")
    });
    entity.sizes.push({
        name: "1:8",
        height: math.unit(sorted[0][2] / 8, "meters")
    });
    entity.sizes.push({
        name: "1:4",
        height: math.unit(sorted[0][2] / 4, "meters")
    });
    entity.sizes.push({
        name: "1",
        height: math.unit(sorted[0][2], "meters")
    });
    return entity;
}
function makeCars() {
    const options = [
        ["Toyota Prius C", 3.99, 1.45, 1134, 1, 1.07, 1],
        ["VW New Beetle", 4.13, 1.57, 1230, 1, 1, 1],
        ["Honda Civic", 4.55, 1.42, 1303, 1, 1, 1],
        ["Lamborghini Aventador", 4.78, 1.136, 1575, 1, 1, 1],
        ["Ford F-150", 5.89, 1.92, 1950, 1, 1, 1]
    ]
    sides = {}
    const sorted = options.sort((a, b) => a[1] - b[1])
    sorted.forEach(car => {
        sides[car[0] + " (Front)"] = {
            name: car[0] + " (Front)",
            rename: true,
            height: math.unit(car[2], "meters"),
            mass: math.unit(car[3], "kg"),
            image: { source: "./media/vehicles/cars/car_" + car[0].replace(/ /g, "-").toLowerCase() + "-front.svg", extra: car[4] }
        };
        sides[car[0] + " (Side)"] = {
            name: car[0] + " (Side)",
            rename: true,
            height: math.unit(car[2], "meters"),
            mass: math.unit(car[3], "kg"),
            image: { source: "./media/vehicles/cars/car_" + car[0].replace(/ /g, "-").toLowerCase() + "-side.svg", extra: car[5] }
        };
        sides[car[0] + " (Top)"] = {
            name: car[0] + " (Top)",
            rename: true,
            height: math.unit(car[1], "meters"),
            mass: math.unit(car[3], "kg"),
            image: { source: "./media/vehicles/cars/car_" + car[0].replace(/ /g, "-").toLowerCase() + "-top.svg", extra: car[6] }
        };
    });
    const entity = makeMultiVehicle("Cars", sides);
    entity.sizes.push({
        name: "1:72",
        height: math.unit(sorted[0][2] / 72, "meters")
    });
    entity.sizes.push({
        name: "1:24",
        height: math.unit(sorted[0][2] / 24, "meters")
    });
    entity.sizes.push({
        name: "1:16",
        height: math.unit(sorted[0][2] / 16, "meters")
    });
    entity.sizes.push({
        name: "1:8",
        height: math.unit(sorted[0][2] / 8, "meters")
    });
    entity.sizes.push({
        name: "1:4",
        height: math.unit(sorted[0][2] / 4, "meters")
    });
    entity.sizes.push({
        name: "1",
        height: math.unit(sorted[0][2], "meters")
    });
    return entity;
}
function makeBuses() {
    const options = [
        ["City Bus", 11.95, 2.99, 14000, 1, 1, 1],
        ["Articulated Bus", 18, 3.13, 25000, 1, 1, 1],
        ["Coach Bus", 12, 3.81, 18000, 1, 1, 1],
        ["Shuttle Bus", 7.01, 2.67, 6000, 1, 1, 1],
    ]
    sides = {}
    options.forEach(bus => {
        sides[bus[0] + " (Front)"] = {
            name: bus[0] + " (Front)",
            rename: true,
            height: math.unit(bus[2], "meters"),
            mass: math.unit(bus[3], "kg"),
            image: { source: "./media/vehicles/buses/bus_" + bus[0].replace(/ /g, "-").toLowerCase() + "-front.svg", extra: bus[4] }
        };
        sides[bus[0] + " (Side)"] = {
            name: bus[0] + " (Side)",
            rename: true,
            height: math.unit(bus[2], "meters"),
            mass: math.unit(bus[3], "kg"),
            image: { source: "./media/vehicles/buses/bus_" + bus[0].replace(/ /g, "-").toLowerCase() + "-side.svg", extra: bus[5] }
        };
        sides[bus[0] + " (Top)"] = {
            name: bus[0] + " (Top)",
            rename: true,
            height: math.unit(bus[1], "meters"),
            mass: math.unit(bus[3], "kg"),
            image: { source: "./media/vehicles/buses/bus_" + bus[0].replace(/ /g, "-").toLowerCase() + "-top.svg", extra: bus[6] }
        };
    });
    const entity = makeMultiVehicle("Buses", sides);
    entity.sizes.push({
        name: "1:72",
        height: math.unit(options[0][2] / 72, "meters")
    });
    entity.sizes.push({
        name: "1:24",
        height: math.unit(options[0][2] / 24, "meters")
    });
    entity.sizes.push({
        name: "1:16",
        height: math.unit(options[0][2] / 16, "meters")
    });
    entity.sizes.push({
        name: "1:8",
        height: math.unit(options[0][2] / 8, "meters")
    });
    entity.sizes.push({
        name: "1:4",
        height: math.unit(options[0][2] / 4, "meters")
    });
    entity.sizes.push({
        name: "1",
        height: math.unit(options[0][2], "meters")
    });
    return entity;
}
// TODO this should be named something more generic and put in objects.js
function makeVehicleGroup(info, name, prefix, directory="vehicles") {
    sides = {}
    let defaultHeight;
    info.forEach(vehicle => {
        Object.entries(vehicle.sides).forEach(([sideName, data]) => {
            if (!defaultHeight) {
                defaultHeight = data.height;
            }
            sides[vehicle.name + " (" + sideName + ")"] = {
                name: vehicle.name + " (" + sideName + ")",
                rename: true,
                height: data.height,
                mass: vehicle.mass,
                image: { source: "./media/" + directory + "/" + name.replace(/ /g, "-").toLowerCase() + "/" + (prefix == "" ? "" : prefix + "_") + vehicle.name.replace(/ /g, "-").toLowerCase() + "-" + sideName.replace(/ /g, "-").toLowerCase() + ".svg", extra: (data.extra ? data.extra : 1) }
            };
        });
    });
    const entity = makeMultiVehicle(name, sides);
    entity.sizes.push({
        name: "1:72",
        height: math.unit(math.divide(defaultHeight, 72))
    });
    entity.sizes.push({
        name: "1:24",
        height: math.unit(math.divide(defaultHeight, 24))
    });
    entity.sizes.push({
        name: "1:16",
        height: math.unit(math.divide(defaultHeight, 16))
    });
    entity.sizes.push({
        name: "1:8",
        height: math.unit(math.divide(defaultHeight, 8))
    });
    entity.sizes.push({
        name: "1:4",
        height: math.unit(math.divide(defaultHeight, 4))
    });
    return entity;
}
function makeAutoVehicleGroup(info, name, directory = "vehicles") {
    sides = {}
    let defaultHeight;
    info.forEach(vehicle => {
        Object.entries(vehicle.sides).forEach(([sideName, data]) => {
            if (!defaultHeight) {
                defaultHeight = data.height;
            }
            sides[vehicle.name + " (" + sideName + ")"] = {
                name: vehicle.name + " (" + sideName + ")",
                rename: true,
                height: data.height,
                image: { source: "./media/" + directory + "/" + name + "/" + vehicle.name + "-" + sideName + ".svg" }
            };
        });
    });
    const entity = makeMultiVehicle(name, sides);
    if (directory == "vehicles") {
        entity.sizes.push({
            name: "1:72",
            height: math.unit(math.divide(defaultHeight, 72))
        });
        entity.sizes.push({
            name: "1:24",
            height: math.unit(math.divide(defaultHeight, 24))
        });
        entity.sizes.push({
            name: "1:16",
            height: math.unit(math.divide(defaultHeight, 16))
        });
        entity.sizes.push({
            name: "1:8",
            height: math.unit(math.divide(defaultHeight, 8))
        });
        entity.sizes.push({
            name: "1:4",
            height: math.unit(math.divide(defaultHeight, 4))
        });
    }
    return entity;
}
function makeVehicles() {
    const results = [];
    results.push({
        name: "Titanic",
        constructor: () => makeVehicle(
            "Titanic",
            {
                side: {
                    name: "Side",
                    height: math.unit(883 * 1114 / 4250, "feet"),
                    image: { source: "./media/vehicles/titanic.svg" },
                },
                sideVertical: {
                    name: "Side (Vertical)",
                    height: math.unit(883, "feet"),
                    image: { source: "./media/vehicles/vertical-titanic.svg" },
                },
            },
            math.unit(52310, "tons")
        )
    });
    results.push({
        name: "18-Wheeler",
        constructor: () => makeVehicle(
            "18-Wheeler",
            {
                side: {
                    name: "Side",
                    height: math.unit(13.6, "feet"),
                    image: { source: "./media/vehicles/18-wheeler.svg" },
                },
                sideVertical: {
                    name: "Side (Vertical)",
                    height: math.unit(54, "feet"),
                    image: { source: "./media/vehicles/18-wheeler-vertical.svg" },
                },
            },
            math.unit(52310, "tons")
        )
    });
    results.push({
        name: "Spacecraft",
        constructor: () => makeMultiVehicle(
            "Spacecraft",
            {
                "n-1": {
                    name: "N-1",
                    rename: true,
                    height: math.unit(105, "meters"),
                    mass: math.unit(95, "tons"),
                    image: { source: "./media/vehicles/spacecraft/n-1.svg" }
                },
                "saturn-v": {
                    name: "Saturn V",
                    rename: true,
                    height: math.unit(110.6, "meters"),
                    mass: math.unit(140, "tons"),
                    image: { source: "./media/vehicles/spacecraft/saturn-v.svg" }
                },
                "starship": {
                    name: "Starship",
                    rename: true,
                    height: math.unit(118, "m"),
                    mass: math.unit(150, "tons"),
                    image: { source: "./media/vehicles/spacecraft/saturn-v.svg" }
                },
            }
        )
    });
    results.push({
        name: "Aircraft",
        constructor: () => makeAircraft()
    });
    results.push({
        name: "Cars",
        constructor: () => makeCars()
    });
    results.push({
        name: "Buses",
        constructor: () => makeBuses()
    });
    results.push({
        name: "Trains",
        constructor: () => makeVehicleGroup([
            {
                name: "60' Boxcar",
                mass: math.unit(80900, "lbs"),
                sides: {
                    "Side": { height: math.unit(17, "feet") },
                    "Front": { height: math.unit(17, "feet") }
                }
            },
            {
                name: "64' Flatcar",
                mass: math.unit(66000, "lbs"),
                sides: {
                    "Side": { height: math.unit(5.03, "feet") },
                    "Front": { height: math.unit(5.03, "feet") },
                }
            },
            {
                name: "3250 Cubic Ft Hopper",
                mass: math.unit(52000, "lbs"),
                sides: {
                    "Side": { height: math.unit(15 + 3 / 12, "feet") },
                    "Front": { height: math.unit(15 + 3 / 12, "feet") },
                }
            },
            {
                name: "28600 Gallon Tank Car",
                mass: math.unit(93000, "lbs"),
                sides: {
                    "Side": { height: math.unit(15 + 5.7 / 12, "feet") },
                    "Front": { height: math.unit(15 + 5.7 / 12, "feet") },
                }
            }
        ],
            "Trains",
            "train")
    });
    const dataWarships = [
        {
            name: "Balao",
            sides: {
                "Side": { height: math.unit(13.346937056812138, "meters") },
                "Front": { height: math.unit(13.346937056812138, "meters") },
                "Top": { height: math.unit(95.35877787338985, "meters") },
            }
        },
        {
            name: "Bismarck",
            sides: {
                "Side": { height: math.unit(54.69636677864504, "meters") },
                "Front": { height: math.unit(54.69636677864504, "meters") },
                "Top": { height: math.unit(255.13670261140695, "meters") },
            }
        },
        {
            name: "Charleston",
            sides: {
                "Side": { height: math.unit(43.84541411294146, "meters") },
                "Front": { height: math.unit(45.62719791691388, "meters") },
                "Top": { height: math.unit(129.98356198199832, "meters") },
            }
        },
        {
            name: "Enterprise",
            sides: {
                "Side": { height: math.unit(48.51854022788899, "meters") },
                "Front": { height: math.unit(48.51854022788899, "meters") },
                "Top": { height: math.unit(253.1778795587282, "meters") },
            }
        },
        {
            name: "Erie",
            sides: {
                "Side": { height: math.unit(32.059378464959345, "meters") },
                "Front": { height: math.unit(32.059378464959345, "meters") },
                "Top": { height: math.unit(101.90240111970473, "meters") },
            }
        },
        {
            name: "Fusō",
            sides: {
                "Side": { height: math.unit(57.714804802509974, "meters") },
                "Front": { height: math.unit(57.714804802509974, "meters") },
                "Top": { height: math.unit(213.5157104361463, "meters") },
            }
        },
        {
            name: "Hood",
            sides: {
                "Side": { height: math.unit(51.230756762367264, "meters") },
                "Front": { height: math.unit(51.230756762367264, "meters") },
                "Top": { height: math.unit(263.41015261022113, "meters") },
            }
        },
        {
            name: "Hōshō",
            sides: {
                "Side": { height: math.unit(32.758064912151085, "meters") },
                "Front": { height: math.unit(32.758064912151085, "meters") },
                "Top": { height: math.unit(185.00137927141287, "meters") },
            }
        },
        {
            name: "Iowa",
            sides: {
                "Side": { height: math.unit(49.127098508478305, "meters") },
                "Front": { height: math.unit(49.127098508478305, "meters") },
                "Top": { height: math.unit(271.8477422138651, "meters") },
            }
        },
        {
            name: "König",
            sides: {
                "Side": { height: math.unit(45.404394789902064, "meters") },
                "Front": { height: math.unit(45.72006845008677, "meters") },
                "Top": { height: math.unit(178.61867938785338, "meters") },
            }
        },
        {
            name: "New Mexico",
            sides: {
                "Side": { height: math.unit(41.32890317041514, "meters") },
                "Front": { height: math.unit(41.32890317041514, "meters") },
                "Top": { height: math.unit(190.75114403153, "meters") },
            }
        },
        {
            name: "Shōkaku",
            sides: {
                "Side": { height: math.unit(41.67455523006811, "meters") },
                "Front": { height: math.unit(41.67455523006811, "meters") },
                "Top": { height: math.unit(260.7137969911492, "meters") },
            }
        },
        {
            name: "Texas",
            sides: {
                "Side": { height: math.unit(48.903111190282694, "meters") },
                "Front": { height: math.unit(48.903111190282694, "meters") },
                "Top": { height: math.unit(195.24415882424861, "meters") },
            }
        },
        {
            name: "U-2501",
            sides: {
                "Side": { height: math.unit(11.361271301409108, "meters") },
                "Front": { height: math.unit(11.361271301409108, "meters") },
                "Top": { height: math.unit(77.06816292937421, "meters") },
            }
        },
        {
            name: "Yamato",
            sides: {
                "Side": { height: math.unit(49.20849004806329, "meters") },
                "Front": { height: math.unit(49.20849004806329, "meters") },
                "Top": { height: math.unit(265.94789907523005, "meters") },
            }
        }
    ];
    results.push({
        name: "Warships",
        constructor: () => makeAutoVehicleGroup(dataWarships,
            "Warships")
    });
    const dataTanks = [
        {
            name: "Bishop",
            sides: {
                "Side": { height: math.unit(3.410661831364902, "meters") },
                "Front": { height: math.unit(3.410661831364902, "meters") },
                "Top": { height: math.unit(5.672872756986482, "meters") },
            }
        },
        {
            name: "Churchill I",
            sides: {
                "Side": { height: math.unit(3.106923773821576, "meters") },
                "Front": { height: math.unit(3.122615308032796, "meters") },
                "Top": { height: math.unit(7.2584553965615175, "meters") },
            }
        },
        {
            name: "Crusader",
            sides: {
                "Side": { height: math.unit(2.6101422524871567, "meters") },
                "Front": { height: math.unit(2.6101422524871567, "meters") },
                "Top": { height: math.unit(6.307843776843961, "meters") },
            }
        },
        {
            name: "Emil II",
            sides: {
                "Side": { height: math.unit(3.8108011655820206, "meters") },
                "Front": { height: math.unit(3.824251052048781, "meters") },
                "Top": { height: math.unit(10.773359059874819, "meters") },
            }
        },
        {
            name: "Fiat 3000",
            sides: {
                "Side": { height: math.unit(1.9496277856164035, "meters") },
                "Front": { height: math.unit(1.9496277856164035, "meters") },
                "Top": { height: math.unit(4.27912077145522, "meters") },
            }
        },
        {
            name: "Jagdtiger",
            sides: {
                "Side": { height: math.unit(3.9193441089979792, "meters") },
                "Front": { height: math.unit(3.9193441089979792, "meters") },
                "Top": { height: math.unit(10.649006600787407, "meters") },
            }
        },
        {
            name: "KV-2",
            sides: {
                "Side": { height: math.unit(2.9868332366529167, "meters") },
                "Front": { height: math.unit(2.9868332366529167, "meters") },
                "Top": { height: math.unit(6.812734929724053, "meters") },
            }
        },
        {
            name: "L6_40",
            sides: {
                "Side": { height: math.unit(1.9358306214396919, "meters") },
                "Front": { height: math.unit(1.9358306214396919, "meters") },
                "Top": { height: math.unit(3.808310562671325, "meters") },
            }
        },
        {
            name: "Leopard 1",
            sides: {
                "Side": { height: math.unit(3.8225993116054964, "meters") },
                "Front": { height: math.unit(3.8225993116054964, "meters") },
                "Top": { height: math.unit(9.539980874580879, "meters") },
            }
        },
        {
            name: "M4A3E8 Sherman",
            sides: {
                "Side": { height: math.unit(2.8079437256982533, "meters") },
                "Front": { height: math.unit(2.8117875911680663, "meters") },
                "Top": { height: math.unit(6.238593657506183, "meters") },
            }
        },
        {
            name: "Maus",
            sides: {
                "Side": { height: math.unit(3.2167645133001166, "meters") },
                "Front": { height: math.unit(3.2167645133001166, "meters") },
                "Top": { height: math.unit(10.116556270748033, "meters") },
            }
        },
        {
            name: "MS-1",
            sides: {
                "Side": { height: math.unit(1.8993136516336966, "meters") },
                "Front": { height: math.unit(1.8993136516336966, "meters") },
                "Top": { height: math.unit(4.40306449214827, "meters") },
            }
        },
        {
            name: "O-I",
            sides: {
                "Side": { height: math.unit(3.5245408857493157, "meters") },
                "Front": { height: math.unit(3.5245408857493157, "meters") },
                "Top": { height: math.unit(10.290467152684577, "meters") },
            }
        },
        {
            name: "P26_40",
            sides: {
                "Side": { height: math.unit(2.2198610818302003, "meters") },
                "Front": { height: math.unit(2.2198610818302003, "meters") },
                "Top": { height: math.unit(5.945555556906504, "meters") },
            }
        },
        {
            name: "Panther II",
            sides: {
                "Side": { height: math.unit(2.7322022370149734, "meters") },
                "Front": { height: math.unit(2.7322022370149734, "meters") },
                "Top": { height: math.unit(8.993913000210199, "meters") },
            }
        },
        {
            name: "Pz.Kpfw. II",
            sides: {
                "Side": { height: math.unit(1.895973799129121, "meters") },
                "Front": { height: math.unit(1.895973799129121, "meters") },
                "Top": { height: math.unit(4.940551695644215, "meters") },
            }
        },
        {
            name: "Pz.Kpfw. III_IV",
            sides: {
                "Side": { height: math.unit(2.474235510305821, "meters") },
                "Front": { height: math.unit(2.474235510305821, "meters") },
                "Top": { height: math.unit(6.593240824273646, "meters") },
            }
        },
        {
            name: "Somua S35",
            sides: {
                "Side": { height: math.unit(2.747352267371468, "meters") },
                "Front": { height: math.unit(2.747352267371468, "meters") },
                "Top": { height: math.unit(5.419850312436055, "meters") },
            }
        },
        {
            name: "Strv 103B",
            sides: {
                "Side": { height: math.unit(2.6925331064166755, "meters") },
                "Front": { height: math.unit(2.6925331064166755, "meters") },
                "Top": { height: math.unit(8.955885822138697, "meters") },
            }
        },
        {
            name: "StuG IV",
            sides: {
                "Side": { height: math.unit(3.4493634873846486, "meters") },
                "Front": { height: math.unit(3.4493634873846486, "meters") },
                "Top": { height: math.unit(6.73890309470866, "meters") },
            }
        },
        {
            name: "Sturmpanzer II",
            sides: {
                "Side": { height: math.unit(2.884547159679786, "meters") },
                "Front": { height: math.unit(2.884547159679786, "meters") },
                "Top": { height: math.unit(5.479425422386316, "meters") },
            }
        },
        {
            name: "Super Hellcat",
            sides: {
                "Side": { height: math.unit(2.584518696915076, "meters") },
                "Front": { height: math.unit(2.584518696915076, "meters") },
                "Top": { height: math.unit(7.096077076387668, "meters") },
            }
        },
        {
            name: "T-26",
            sides: {
                "Side": { height: math.unit(2.2802546287588683, "meters") },
                "Front": { height: math.unit(2.2802546287588683, "meters") },
                "Top": { height: math.unit(4.590177998040621, "meters") },
            }
        },
        {
            name: "T-34",
            sides: {
                "Side": { height: math.unit(2.11028214292723, "meters") },
                "Front": { height: math.unit(2.11028214292723, "meters") },
                "Top": { height: math.unit(6.203998868277867, "meters") },
            }
        },
        {
            name: "T28",
            sides: {
                "Side": { height: math.unit(3.5677593574984616, "meters") },
                "Front": { height: math.unit(3.5677593574984616, "meters") },
                "Top": { height: math.unit(11.550384956980801, "meters") },
            }
        },
        {
            name: "Tiger I",
            sides: {
                "Side": { height: math.unit(2.6487011721261715, "meters") },
                "Front": { height: math.unit(2.6487011721261715, "meters") },
                "Top": { height: math.unit(8.46739044919058, "meters") },
            }
        },
        {
            name: "Tiger II",
            sides: {
                "Side": { height: math.unit(2.0016641144139946, "meters") },
                "Front": { height: math.unit(2.0016641144139946, "meters") },
                "Top": { height: math.unit(7.550471308530432, "meters") },
            }
        },
        {
            name: "Type 59",
            sides: {
                "Side": { height: math.unit(2.5160021432659714, "meters") },
                "Front": { height: math.unit(2.5160021432659714, "meters") },
                "Top": { height: math.unit(8.948422717087464, "meters") },
            }
        }
    ];
    results.push({
        name: "Tanks",
        constructor: () => makeAutoVehicleGroup(
            dataTanks,
            "Tanks")
    });
    const dataEveOnline = [
        {
            name: "Archon",
            sides: {
                "Side": { height: math.unit(447.54522705078125, "meters") },
                "Front": { height: math.unit(447.54522705078125, "meters") },
                "Top": { height: math.unit(3154.529052734375, "meters") },
            }
        },
        {
            name: "Avatar",
            sides: {
                "Side": { height: math.unit(6176.2001953125, "meters") },
                "Front": { height: math.unit(6176.2001953125, "meters") },
                "Top": { height: math.unit(13831.8583984375, "meters") },
            }
        },
        {
            name: "Capsule",
            sides: {
                "Side": { height: math.unit(2.4739999771118164, "meters") },
                "Front": { height: math.unit(2.4739999771118164, "meters") },
                "Top": { height: math.unit(3.822000026702881, "meters") },
            }
        },
        {
            name: "Chimera",
            sides: {
                "Side": { height: math.unit(475.55010986328125, "meters") },
                "Front": { height: math.unit(475.55010986328125, "meters") },
                "Top": { height: math.unit(2696.60009765625, "meters") },
            }
        },
        {
            name: "Erebus",
            sides: {
                "Side": { height: math.unit(4789.970703125, "meters") },
                "Front": { height: math.unit(4789.970703125, "meters") },
                "Top": { height: math.unit(14785.546875, "meters") },
            }
        },
        {
            name: "Ibis",
            sides: {
                "Side": { height: math.unit(29.632003784179688, "meters") },
                "Front": { height: math.unit(29.632003784179688, "meters") },
                "Top": { height: math.unit(64.61199951171875, "meters") },
            }
        },
        {
            name: "Impairor",
            sides: {
                "Side": { height: math.unit(13.158005714416504, "meters") },
                "Front": { height: math.unit(13.158005714416504, "meters") },
                "Top": { height: math.unit(53.68499755859375, "meters") },
            }
        },
        {
            name: "Leviathan",
            sides: {
                "Side": { height: math.unit(3544.030029296875, "meters") },
                "Front": { height: math.unit(3544.030029296875, "meters") },
                "Top": { height: math.unit(18055.015625, "meters") },
            }
        },
        {
            name: "Nidhoggur",
            sides: {
                "Side": { height: math.unit(263.20928955078125, "meters") },
                "Front": { height: math.unit(263.20928955078125, "meters") },
                "Top": { height: math.unit(2153.196044921875, "meters") },
            }
        },
        {
            name: "Ragnarok",
            sides: {
                "Side": { height: math.unit(3152.279541015625, "meters") },
                "Front": { height: math.unit(3152.279541015625, "meters") },
                "Top": { height: math.unit(18139.9765625, "meters") },
            }
        },
        {
            name: "Reaper",
            sides: {
                "Side": { height: math.unit(31.324996948242188, "meters") },
                "Front": { height: math.unit(31.324996948242188, "meters") },
                "Top": { height: math.unit(55.847999572753906, "meters") },
            }
        },
        {
            name: "Thanatos",
            sides: {
                "Side": { height: math.unit(296.2213134765625, "meters") },
                "Front": { height: math.unit(296.2213134765625, "meters") },
                "Top": { height: math.unit(2266.876953125, "meters") },
            }
        },
        {
            name: "Vanguard",
            sides: {
                "Side": { height: math.unit(296.2213134765625, "meters") },
                "Front": { height: math.unit(296.2213134765625, "meters") },
                "Top": { height: math.unit(2266.876953125, "meters") },
            }
        },
        {
            name: "Velator",
            sides: {
                "Side": { height: math.unit(38.00899887084961, "meters") },
                "Front": { height: math.unit(38.00899887084961, "meters") },
                "Top": { height: math.unit(35.28599548339844, "meters") },
            }
        }
    ];
    results.push({
        name: "Eve Online",
        constructor: () => makeAutoVehicleGroup(
            dataEveOnline,
            "Eve Online")
    });
    results.push({
        name: "Helicopters",
        constructor: () => makeVehicleGroup([
            {
                name: "Mil Mi-26",
                mass: math.unit(109349, "lbs"),
                sides: {
                    "Side": { height: math.unit(12.2, "meters") },
                    "Front": { height: math.unit(12.2, "meters") },
                    "Bottom": { height: math.unit(40.025, "meters") },
                }
            }
        ],
            "Helicopters",
            "")
    })
    results.push(makeHeight(
        [
            ["Oil Tanker", 75.8, "meters"],
            ["Container Ship", 78.8, "meters"],
            ["Bulk Carrier", 70.04, "meters"],
            ["Passenger Ship", 80.9, "meters"]
        ],
        "Ships",
        "",
        "vehicles",
        false
    ));
    results.push(makeModel({
        "name": "Aircraft Cabins",
        "kind": "vehicles",
        "forms": [
            {
                "name": "737",
                "views": [
                    {
                        "name": "Cross Section",
                        "height": 4.02691801469
                    }
                ]
            },
            {
                "name": "777",
                "views": [
                    {
                        "name": "Cross Section",
                        "height": 6.19751351351
                    }
                ]
            }
        ]
    }))
    return results;
}
 |