0hmX/simplified-am62l-computer

This code defines components and scripts for physically representing and routing high-speed DDR memory signals, power lines, and ground planes on an 8-layer PCB with detailed pin assignments, copper pours, and precise via and trace layouts based on TI EVM reference data.

Version
1.0.16
License
unset
Stars
0

dist/index.js

import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
import { TPS6521401VAFR } from '@tsci/0hmX.tps6521401vafr-pmic';
import { AM62L32 } from '@tsci/tscircuit.ti';
import { ballMap, MT53E1G16D1ZW } from '@tsci/0hmX.mt53e1g16d1zw-footprint';
import { Fragment as Fragment$1 } from 'react';
import { AutoroutingPipelineSolver7_MultiGraph, AutoroutingPipelineSolver9_PreloadedTraceGraph } from '@tscircuit/capacity-autorouter';
import { FixedTargetBgaFanoutSolver } from '@tscircuit/bga-fanout-solver';
import objPath from '././assets/USB4125_GF_A_0190-36242f33.obj';
import objPath$1 from '././assets/TPS259470LRPWR-65e31479.obj';
import objPath$2 from '././assets/TPS62A02DRLR-d36598cf.obj';
import objPath$3 from '././assets/DFE201612PD_1R0M_P2-26e59cbf.obj';
import objPath$4 from '././assets/XRCGB25M000F3A00R0-6a5f0644.obj';
import objPath$5 from '././assets/DM3AT_SF_PEJM5-c928d38a.obj';
import objPath$6 from '././assets/TPS22918DBVR-8ef67822.obj';
import objPath$7 from '././assets/TPD4E02B04DQAR-057af539.obj';
import objPath$8 from '././assets/SN74AXC1T45DBVR-a0745699.obj';
import objPath$9 from '././assets/TPD2E2U06DCKR-df64531a.obj';
import objPath$a from '././assets/S4B_PH_SM4_K_TB_LF__SN_-f5627100.obj';
import objPath$b from '././assets/SKRPACE010-a0147366.obj';
import objPath$c from '././assets/SN74LVC1G08DBVR-14340306.obj';
import objPath$d from '././assets/LTST_C190KGKT-61d0164a.obj';

const connectedSignals = new Set([
    ...Array.from({ length: 16 }, (_, bit) => `DQ${bit}`),
    "DMI0", "DMI1", "DQS0_t", "DQS0_c", "DQS1_t", "DQS1_c",
    "CA0", "CA1", "CA2", "CA3", "CA4", "CA5",
    "CS", "CKE", "ODT_CA", "CK_t", "CK_c", "RESET_n", "ZQ",
    "VSS", "VDD1", "VDD2", "VDDQ",
]);
const memoryNoConnects = ballMap
    .map(({ signal }, index) => ({ signal, pin: `pin${index + 1}` }))
    .filter(({ signal }) => !connectedSignals.has(signal))
    .map(({ pin }) => pin);
/**
 * Uses the registry component directly so its published pin labels,
 * pinAttributes, footprint, and datasheet metadata remain authoritative.
 */
const RegistryMt53e1g16 = (props) => {
    const name = props.name ?? "U2";
    const railConnections = ballMap.flatMap(({ ball, signal }) => {
        const net = signal === "VSS"
            ? "GND"
            : signal === "VDD1"
                ? "VDD_1V8"
                : signal === "VDD2" || signal === "VDDQ"
                    ? "VDD_DDR_1V1"
                    : undefined;
        return net ? [{ ball, net }] : [];
    });
    return (jsxs(Fragment, { children: [jsx(MT53E1G16D1ZW, { ...props, noConnect: memoryNoConnects }), railConnections.map(({ ball, net }, index) => (jsx(Fragment$1, { children: jsx("trace", { name: `MEM_RAIL_${index + 1}`, from: `${name}.${ball}`, to: `net.${net}` }) }, `${ball}-${net}`)))] }));
};

// Generated from TI TMDS62LEVM SPRCAL6D Altium ASCII board data.
// Coordinates are millimetres relative to U28 (AM62L) centre.
const TI_AM62L_EVM_MEMORY_OFFSET = { "y": -0.050917 };
const TI_AM62L_EVM_DDR_ROUTES = {
    "DDR0_DQ0": {
        "tiNet": "LPDDR4_DQ0",
        "socBall": "F4",
        "memoryBall": "B2",
        "route": [
            {
                "route_type": "wire",
                "x": 4,
                "y": -2.999999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.010635,
                "y": -2.999999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.470517,
                "y": -2.540117,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 4.470517,
                "y": -2.540117,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 4.470517,
                "y": -2.540117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.080117,
                "y": -2.540117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.181717,
                "y": -2.641717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.181717,
                "y": -3.048625,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.301097,
                "y": -3.168005,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.468737,
                "y": -3.168005,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.562717,
                "y": -3.074025,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.562717,
                "y": -2.735697,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.656697,
                "y": -2.641717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.849737,
                "y": -2.641717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.943717,
                "y": -2.735697,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.943717,
                "y": -3.436737,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.063097,
                "y": -3.556117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.264263,
                "y": -3.556117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.619863,
                "y": -3.200517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.194917,
                "y": -3.200517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.779117,
                "y": -3.784717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.049117,
                "y": -3.784717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.353917,
                "y": -4.089517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.678783,
                "y": -4.089517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.811117,
                "y": -3.957183,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.811117,
                "y": -3.276463,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.912463,
                "y": -3.175117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.189323,
                "y": -3.175117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.283303,
                "y": -3.269097,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.283303,
                "y": -3.957183,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.377283,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.638903,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.732883,
                "y": -3.957183,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.732883,
                "y": -3.751697,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.826863,
                "y": -3.657717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.037683,
                "y": -3.657717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.131663,
                "y": -3.751697,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.131663,
                "y": -3.957183,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.225643,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 13.615279,
                "y": -4.051163,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": -4.051163,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 13.941928,
                "y": -3.65091,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ1": {
        "tiNet": "LPDDR4_DQ1",
        "socBall": "F3",
        "memoryBall": "C2",
        "route": [
            {
                "route_type": "wire",
                "x": 4.500001,
                "y": -2.999999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.000617,
                "y": -3.454517,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 4.000617,
                "y": -3.454517,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 4.000617,
                "y": -3.454517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.407017,
                "y": -3.048117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.724263,
                "y": -3.048117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.924923,
                "y": -3.248777,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.924923,
                "y": -3.502523,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.613517,
                "y": -4.191117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.841863,
                "y": -4.191117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.151489,
                "y": -3.881491,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.157837,
                "y": -3.881491,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.566269,
                "y": -4.289923,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.765151,
                "y": -4.289923,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.241147,
                "y": -3.813927,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.918565,
                "y": -3.813927,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.525117,
                "y": -4.419717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.592171,
                "y": -4.419717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.922371,
                "y": -4.749917,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.115917,
                "y": -4.749917,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.268317,
                "y": -4.902317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.665317,
                "y": -4.902317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.516471,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.915505,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 14.915505,
                "y": -4.051163,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 14.915505,
                "y": -4.051163,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 14.591929,
                "y": -3.65091,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ2": {
        "tiNet": "LPDDR4_DQ2",
        "socBall": "F1",
        "memoryBall": "E2",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -2.999999,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.500111,
                "y": -3.000111,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.763377,
                "y": -3.000111,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.090529,
                "y": -3.327263,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.222861,
                "y": -3.327263,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.288647,
                "y": -3.261477,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.087731,
                "y": -3.261477,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.397611,
                "y": -3.571357,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.397611,
                "y": -4.277477,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 8.397611,
                "y": -4.277477,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 8.397611,
                "y": -4.277477,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.001877,
                "y": -4.277477,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.474317,
                "y": -4.749917,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.490317,
                "y": -4.749917,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.922117,
                "y": -5.181717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.760317,
                "y": -5.181717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.861917,
                "y": -5.283317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.716371,
                "y": -5.283317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.571335,
                "y": -4.428353,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.838287,
                "y": -4.428353,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.215477,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 16.215477,
                "y": -4.051163,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 16.215477,
                "y": -4.051163,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.891924,
                "y": -3.65091,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ3": {
        "tiNet": "LPDDR4_DQ3",
        "socBall": "E1",
        "memoryBall": "F2",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -3.500001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -3.500003,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.731627,
                "y": -3.731631,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.413871,
                "y": -3.731631,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.959717,
                "y": -4.277477,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.959717,
                "y": -4.277477,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.959717,
                "y": -4.277477,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.355957,
                "y": -4.673717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.016863,
                "y": -4.673717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.851253,
                "y": -5.508107,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.528161,
                "y": -5.508107,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.684371,
                "y": -5.664317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.951317,
                "y": -5.664317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.592667,
                "y": -5.022967,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.592667,
                "y": -4.324213,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.865717,
                "y": -4.051163,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 16.865717,
                "y": -4.051163,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 16.865717,
                "y": -4.051163,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 16.541923,
                "y": -3.65091,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ4": {
        "tiNet": "LPDDR4_DQ4",
        "socBall": "G4",
        "memoryBall": "F4",
        "route": [
            {
                "route_type": "wire",
                "x": 4,
                "y": -2.5,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.542909,
                "y": -2.500239,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 3.542909,
                "y": -2.500239,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 3.542909,
                "y": -2.500239,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.368917,
                "y": -2.159117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.572117,
                "y": -2.159117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.892917,
                "y": -2.311517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.807317,
                "y": -2.311517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.139803,
                "y": -2.159117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.580536,
                "y": -2.159117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.682136,
                "y": -2.260717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.732117,
                "y": -2.260717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.367117,
                "y": -2.057517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.697317,
                "y": -2.057517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.867241,
                "y": -2.451217,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 16.867241,
                "y": -2.451217,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 16.867241,
                "y": -2.451217,
                "width": 0.2032,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 16.542375,
                "y": -2.050913,
                "width": 0.2032,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 16.541923,
                "y": -2.050913,
                "width": 0.2032,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ5": {
        "tiNet": "LPDDR4_DQ5",
        "socBall": "H4",
        "memoryBall": "E4",
        "route": [
            {
                "route_type": "wire",
                "x": 4,
                "y": -2.000001,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.988679,
                "y": -1.587363,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 3.988679,
                "y": -1.587363,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 3.988679,
                "y": -1.587363,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.166225,
                "y": -1.409817,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.166225,
                "y": -0.825617,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.428861,
                "y": -0.562981,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.111357,
                "y": -0.562981,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.244453,
                "y": -0.696077,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.557381,
                "y": -0.696077,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.796141,
                "y": -0.457317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.758293,
                "y": -0.457317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.997053,
                "y": -0.696077,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.346303,
                "y": -0.696077,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.581253,
                "y": -0.461127,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.456527,
                "y": -0.461127,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.144105,
                "y": -1.148705,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.144105,
                "y": -1.228207,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.567015,
                "y": -1.651117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 15.567015,
                "y": -1.651117,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 15.567015,
                "y": -1.651117,
                "width": 0.2032,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.891924,
                "y": -2.050913,
                "width": 0.2032,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ6": {
        "tiNet": "LPDDR4_DQ6",
        "socBall": "H2",
        "memoryBall": "C4",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": -2.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.24892,
                "y": -2.248921,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.834639,
                "y": -2.248921,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.871835,
                "y": -2.286117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.350117,
                "y": -2.286117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.705717,
                "y": -1.930517,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.705717,
                "y": -1.930517,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.705717,
                "y": -1.930517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.972671,
                "y": -1.663563,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.420471,
                "y": -1.663563,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.585317,
                "y": -1.498717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.575917,
                "y": -1.498717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.931517,
                "y": -1.143117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.947517,
                "y": -1.143117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.074517,
                "y": -1.270117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.074517,
                "y": -1.404737,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.168497,
                "y": -1.498717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.313277,
                "y": -1.498717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.407257,
                "y": -1.404737,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.407257,
                "y": -1.237097,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.501237,
                "y": -1.143117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.712057,
                "y": -1.143117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.806037,
                "y": -1.237097,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.806037,
                "y": -1.404737,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.900017,
                "y": -1.498717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.110837,
                "y": -1.498717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.204817,
                "y": -1.404737,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.204817,
                "y": -1.237097,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.298797,
                "y": -1.143117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.494377,
                "y": -1.143117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.588611,
                "y": -1.237351,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.588611,
                "y": -1.818757,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.798161,
                "y": -2.028307,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.890615,
                "y": -2.028307,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.268313,
                "y": -1.650609,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 14.268313,
                "y": -1.650609,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 14.268313,
                "y": -1.650609,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 14.591929,
                "y": -2.050913,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ7": {
        "tiNet": "LPDDR4_DQ7",
        "socBall": "H3",
        "memoryBall": "B4",
        "route": [
            {
                "route_type": "wire",
                "x": 4.500001,
                "y": -2.000001,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.546209,
                "y": -1.534023,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 4.546209,
                "y": -1.534023,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 4.546209,
                "y": -1.534023,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.038715,
                "y": -1.041517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.367137,
                "y": -1.041517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.461117,
                "y": -1.135497,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.461117,
                "y": -1.625717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.555605,
                "y": -1.720205,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.792841,
                "y": -1.720205,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.892917,
                "y": -1.620129,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.892917,
                "y": -1.160897,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.986897,
                "y": -1.066917,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.248517,
                "y": -1.066917,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.527917,
                "y": -1.346317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.102717,
                "y": -1.346317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.233527,
                "y": -1.215507,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.351381,
                "y": -1.215507,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.779371,
                "y": -0.787517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.106771,
                "y": -0.787517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.238597,
                "y": -0.919343,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.238597,
                "y": -1.270879,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.618327,
                "y": -1.650609,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 13.618327,
                "y": -1.650609,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 13.618327,
                "y": -1.650609,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 13.941928,
                "y": -2.050913,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ8": {
        "tiNet": "LPDDR4_DQ8",
        "socBall": "V4",
        "memoryBall": "B11",
        "route": [
            {
                "route_type": "wire",
                "x": 4,
                "y": 2.999999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.039987,
                "y": 3.402213,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 4.039987,
                "y": 3.402213,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 4.039987,
                "y": 3.402213,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.039987,
                "y": 2.491369,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.345295,
                "y": 2.186061,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.700895,
                "y": 2.186061,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.950323,
                "y": 2.435489,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.950323,
                "y": 3.858143,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.334117,
                "y": 4.241937,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.334117,
                "y": 4.546483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.950323,
                "y": 4.930277,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.950323,
                "y": 5.178689,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.130917,
                "y": 5.359283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.451463,
                "y": 5.359283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.260453,
                "y": 4.550293,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.391759,
                "y": 4.550293,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": 4.326773,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": 3.949329,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 13.615279,
                "y": 3.949329,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": 3.949329,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 13.941928,
                "y": 3.549076,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ9": {
        "tiNet": "LPDDR4_DQ9",
        "socBall": "T3",
        "memoryBall": "C11",
        "route": [
            {
                "route_type": "wire",
                "x": 4.500001,
                "y": 2.000001,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.564497,
                "y": 1.535059,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 4.564497,
                "y": 1.535059,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 4.564497,
                "y": 1.535059,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.015093,
                "y": 1.535059,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.308717,
                "y": 1.828683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.308717,
                "y": 3.327283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.892917,
                "y": 3.911483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.604117,
                "y": 3.911483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.934317,
                "y": 4.241683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.700117,
                "y": 4.241683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.369661,
                "y": 3.572139,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.859373,
                "y": 3.572139,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.236563,
                "y": 3.949329,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.915759,
                "y": 3.949329,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 14.915759,
                "y": 3.949329,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 14.915759,
                "y": 3.949329,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 14.591929,
                "y": 3.549076,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ10": {
        "tiNet": "LPDDR4_DQ10",
        "socBall": "T1",
        "memoryBall": "E11",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": 2.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.848871,
                "y": 2.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.848993,
                "y": 1.999879,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.376277,
                "y": 1.999879,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.966317,
                "y": 3.589919,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 8.966317,
                "y": 3.589919,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 8.966317,
                "y": 3.589919,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.287881,
                "y": 3.911483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.420717,
                "y": 3.911483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.055717,
                "y": 3.276483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.173317,
                "y": 3.276483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.423507,
                "y": 3.526673,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.058759,
                "y": 3.526673,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.059013,
                "y": 3.526419,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.619337,
                "y": 3.526419,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.713317,
                "y": 3.432439,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.713317,
                "y": 3.243209,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.619337,
                "y": 3.149229,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.215477,
                "y": 3.149229,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 16.215477,
                "y": 3.149229,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 16.215477,
                "y": 3.149229,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.891924,
                "y": 3.549076,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ11": {
        "tiNet": "LPDDR4_DQ11",
        "socBall": "U1",
        "memoryBall": "F11",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": 2.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.500004,
                "y": 2.500005,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.148439,
                "y": 2.500005,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.407517,
                "y": 3.759083,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.407517,
                "y": 4.927483,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 8.407517,
                "y": 4.927483,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 8.407517,
                "y": 4.927483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.784961,
                "y": 4.927483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.911961,
                "y": 5.054483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.690971,
                "y": 5.054483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.888329,
                "y": 4.857125,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.888329,
                "y": 4.501525,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.044031,
                "y": 4.345823,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.818729,
                "y": 4.345823,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.215223,
                "y": 3.949329,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 16.215223,
                "y": 3.949329,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 16.215223,
                "y": 3.949329,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 16.541923,
                "y": 3.549076,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ12": {
        "tiNet": "LPDDR4_DQ12",
        "socBall": "U4",
        "memoryBall": "F9",
        "route": [
            {
                "route_type": "wire",
                "x": 4,
                "y": 2.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.748921,
                "y": 2.248921,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.748921,
                "y": 1.839079,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.964295,
                "y": 1.623705,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.964295,
                "y": 1.068461,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 3.964295,
                "y": 1.068461,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 3.964295,
                "y": 1.068461,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 4.855073,
                "y": 0.177683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.509117,
                "y": 0.177683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.628497,
                "y": 0.058303,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.706209,
                "y": 0.058303,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 16.215223,
                "y": 1.549283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 16.215223,
                "y": 1.549283,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 16.215223,
                "y": 1.549283,
                "width": 0.3048,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 16.541923,
                "y": 1.949079,
                "width": 0.3048,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ13": {
        "tiNet": "LPDDR4_DQ13",
        "socBall": "V5",
        "memoryBall": "E9",
        "route": [
            {
                "route_type": "wire",
                "x": 3.500001,
                "y": 2.999999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.438515,
                "y": 3.427613,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 3.438515,
                "y": 3.427613,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 3.438515,
                "y": 3.427613,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 3.438515,
                "y": 2.127895,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.083927,
                "y": 0.482483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.966317,
                "y": 0.482483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.076807,
                "y": 0.371993,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.420205,
                "y": 0.371993,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.640931,
                "y": 0.592719,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.640931,
                "y": 0.621421,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.568285,
                "y": 1.548775,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 15.568285,
                "y": 1.548775,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 15.568285,
                "y": 1.548775,
                "width": 0.3048,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.891924,
                "y": 1.949079,
                "width": 0.3048,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ14": {
        "tiNet": "LPDDR4_DQ14",
        "socBall": "U2",
        "memoryBall": "C9",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": 2.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.251079,
                "y": 2.248921,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.251079,
                "y": 1.896882,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.39688,
                "y": 1.751081,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.396987,
                "y": 1.751081,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.399141,
                "y": 1.748927,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.683873,
                "y": 1.748927,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.518517,
                "y": 0.914283,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 7.518517,
                "y": 0.914283,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 7.518517,
                "y": 0.914283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.950317,
                "y": 0.914283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.356717,
                "y": 1.320683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.608937,
                "y": 1.320683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.702917,
                "y": 1.226703,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.702917,
                "y": 0.881517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.797151,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.989937,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.083917,
                "y": 0.881263,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.083917,
                "y": 1.175649,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.178151,
                "y": 1.269883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.373731,
                "y": 1.269883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.467711,
                "y": 1.175903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.467711,
                "y": 0.881263,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.561691,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.772511,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.866491,
                "y": 0.881263,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.866491,
                "y": 1.175903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.960471,
                "y": 1.269883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.691737,
                "y": 1.269883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.785717,
                "y": 1.175903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.785717,
                "y": 0.881263,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.879697,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.098137,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.192117,
                "y": 0.881263,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.192117,
                "y": 1.150503,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.286097,
                "y": 1.244483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.479137,
                "y": 1.244483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.573117,
                "y": 1.150503,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.573117,
                "y": 0.932063,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.717897,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.119979,
                "y": 0.787283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.459069,
                "y": 1.126373,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.842609,
                "y": 1.126373,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.265519,
                "y": 1.549283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 14.265519,
                "y": 1.549283,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 14.265519,
                "y": 1.549283,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 14.591929,
                "y": 1.949079,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQ15": {
        "tiNet": "LPDDR4_DQ15",
        "socBall": "W1",
        "memoryBall": "B9",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": 3.500001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.500002,
                "y": 3.500003,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.943717,
                "y": 3.500003,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.045317,
                "y": 3.398403,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.045317,
                "y": 3.398403,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.045317,
                "y": 3.398403,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.778363,
                "y": 3.131449,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.778363,
                "y": 1.898787,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 5.961497,
                "y": 1.715653,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.179937,
                "y": 1.715653,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.273917,
                "y": 1.809633,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.273917,
                "y": 2.108337,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.400663,
                "y": 2.235083,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.600307,
                "y": 2.235083,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.719687,
                "y": 2.115703,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.719687,
                "y": 1.428633,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.827637,
                "y": 1.320683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.010517,
                "y": 1.320683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.118467,
                "y": 1.428633,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.118467,
                "y": 1.988703,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.212447,
                "y": 2.082683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.423267,
                "y": 2.082683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.517247,
                "y": 1.988703,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.517247,
                "y": 1.389517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.611481,
                "y": 1.295283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.798171,
                "y": 1.295283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.102971,
                "y": 1.600083,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.483709,
                "y": 1.600083,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.813909,
                "y": 1.930283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.234279,
                "y": 1.930283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": 1.549283,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 13.615279,
                "y": 1.549283,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 13.615279,
                "y": 1.549283,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 13.941928,
                "y": 1.949079,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DM0": {
        "tiNet": "LPDDR4_DMI0",
        "socBall": "F2",
        "memoryBall": "C3",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": -2.999999,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.251064,
                "y": -3.251063,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.613263,
                "y": -3.251063,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.892917,
                "y": -3.530717,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.969877,
                "y": -3.530717,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.198477,
                "y": -3.759317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.594717,
                "y": -3.759317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 7.594717,
                "y": -3.759317,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 7.594717,
                "y": -3.759317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.861671,
                "y": -3.492363,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.029817,
                "y": -3.492363,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.626971,
                "y": -4.089517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.845663,
                "y": -4.089517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.201263,
                "y": -4.445117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.754979,
                "y": -4.445117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.992469,
                "y": -4.207627,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 13.992469,
                "y": -3.356219,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.173571,
                "y": -3.175117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.462115,
                "y": -3.175117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.538315,
                "y": -3.251317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.915759,
                "y": -3.251317,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 14.915759,
                "y": -3.251317,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 14.915759,
                "y": -3.251317,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 14.591929,
                "y": -2.850911,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DM1": {
        "tiNet": "LPDDR4_DMI1",
        "socBall": "W2",
        "memoryBall": "C10",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": 3.500001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.248923,
                "y": 3.748923,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.416157,
                "y": 3.748923,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.527917,
                "y": 3.860683,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.975717,
                "y": 3.860683,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 7.975717,
                "y": 3.860683,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 7.975717,
                "y": 3.860683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.839317,
                "y": 2.997083,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.245463,
                "y": 2.997083,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.435963,
                "y": 3.187583,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.435963,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.529943,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.740763,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.834743,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.834743,
                "y": 3.192663,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.928723,
                "y": 3.098683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.139543,
                "y": 3.098683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.233523,
                "y": 3.192663,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.233523,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.327503,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.538323,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.632303,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.632303,
                "y": 3.141863,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.726283,
                "y": 3.047883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.937103,
                "y": 3.047883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.031083,
                "y": 3.141863,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.031083,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.125063,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.335883,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.429863,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.429863,
                "y": 3.243463,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.523843,
                "y": 3.149483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.734663,
                "y": 3.149483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.828643,
                "y": 3.243463,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.828643,
                "y": 3.461903,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.922623,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.293971,
                "y": 3.555883,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 12.878171,
                "y": 2.971683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.360515,
                "y": 2.971683,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.538315,
                "y": 3.149483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.915759,
                "y": 3.149483,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 14.915759,
                "y": 3.149483,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 14.915759,
                "y": 3.149483,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 14.591929,
                "y": 2.749078,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQS0": {
        "tiNet": "LPDDR4_DQS0_P",
        "socBall": "G1",
        "memoryBall": "D3",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -2.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.870839,
                "y": -2.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.956422,
                "y": -2.585583,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.592433,
                "y": -2.585583,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.963273,
                "y": -2.956423,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.963273,
                "y": -2.956423,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.963273,
                "y": -2.956423,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.963273,
                "y": -3.000873,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.145899,
                "y": -3.183499,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.260707,
                "y": -3.183499,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.396597,
                "y": -3.047609,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.396597,
                "y": -2.931277,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.477877,
                "y": -2.849997,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.006183,
                "y": -2.849997,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.069683,
                "y": -2.786497,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.377023,
                "y": -2.786497,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.566507,
                "y": -2.975981,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.566507,
                "y": -3.251317,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 15.566507,
                "y": -3.251317,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 15.566507,
                "y": -3.251317,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.241925,
                "y": -2.850911,
                "width": 0.0889,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQS0_n": {
        "tiNet": "LPDDR4_DQS0_N",
        "socBall": "G2",
        "memoryBall": "E3",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": -2.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.24892,
                "y": -2.74892,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.752978,
                "y": -2.74892,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.818241,
                "y": -2.814183,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.182477,
                "y": -2.814183,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.324717,
                "y": -2.956423,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.324717,
                "y": -2.956423,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.324717,
                "y": -2.956423,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 6.695303,
                "y": -2.585583,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.268073,
                "y": -2.585583,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.338939,
                "y": -2.514717,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.867245,
                "y": -2.514717,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.930745,
                "y": -2.451217,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.566253,
                "y": -2.451217,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 15.566253,
                "y": -2.451217,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 15.566253,
                "y": -2.451217,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.891924,
                "y": -2.850911,
                "width": 0.0889,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQS1": {
        "tiNet": "LPDDR4_DQS1_P",
        "socBall": "V1",
        "memoryBall": "D10",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": 2.999999,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.680715,
                "y": 2.819283,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.394059,
                "y": 2.819283,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.597259,
                "y": 3.022483,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.934571,
                "y": 3.022483,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.315571,
                "y": 3.403483,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 7.315571,
                "y": 3.403483,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 7.315571,
                "y": 3.403483,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.578715,
                "y": 3.140339,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.578715,
                "y": 3.025531,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.324969,
                "y": 2.772039,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.324969,
                "y": 2.657231,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.483211,
                "y": 2.498989,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.598019,
                "y": 2.498989,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.851765,
                "y": 2.752481,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.966573,
                "y": 2.752481,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.483971,
                "y": 2.235083,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.757771,
                "y": 2.235083,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.955891,
                "y": 2.433203,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.138009,
                "y": 2.433203,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.221829,
                "y": 2.349383,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.565237,
                "y": 2.349383,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 15.565237,
                "y": 2.349383,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 15.565237,
                "y": 2.349383,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.241925,
                "y": 2.749078,
                "width": 0.0889,
                "layer": "top"
            }
        ]
    },
    "DDR0_DQS1_n": {
        "tiNet": "LPDDR4_DQS1_N",
        "socBall": "V2",
        "memoryBall": "E10",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": 2.999999,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.251082,
                "y": 3.251081,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.696831,
                "y": 3.251081,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.900029,
                "y": 3.047883,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.299317,
                "y": 3.047883,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.680317,
                "y": 3.428883,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.680317,
                "y": 3.428883,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.680317,
                "y": 3.428883,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.025757,
                "y": 3.774323,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.469241,
                "y": 3.774323,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.686411,
                "y": 3.557153,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.686411,
                "y": 3.527943,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.686665,
                "y": 3.527689,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 7.686665,
                "y": 3.506607,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 8.622909,
                "y": 2.570363,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.618833,
                "y": 2.570363,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 14.816953,
                "y": 2.768483,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.184491,
                "y": 2.768483,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 15.565491,
                "y": 3.149483,
                "width": 0.08128,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 15.565491,
                "y": 3.149483,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 15.565491,
                "y": 3.149483,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 15.891924,
                "y": 2.749078,
                "width": 0.0889,
                "layer": "top"
            }
        ]
    },
    "DDR0_A0": {
        "tiNet": "LPDDR4_CA0",
        "socBall": "L5",
        "memoryBall": "H2",
        "route": [
            {
                "route_type": "wire",
                "x": 3.500001,
                "y": -0.499999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.500001,
                "y": -0.552859,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.796518,
                "y": -0.849376,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.796518,
                "y": -0.8866,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 3.796518,
                "y": -0.8866,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 3.796518,
                "y": -0.8866,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.796518,
                "y": -1.219454,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.592693,
                "y": -1.423279,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.592693,
                "y": -1.751447,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.898763,
                "y": -2.057517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.511917,
                "y": -2.057517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.994517,
                "y": -2.540117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.908917,
                "y": -2.540117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.386945,
                "y": -2.062089,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.792837,
                "y": -2.062089,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.924917,
                "y": -2.194169,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.924917,
                "y": -3.048117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.991717,
                "y": -4.114917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.990947,
                "y": -4.114917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.458307,
                "y": -3.647557,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.779363,
                "y": -3.647557,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.997803,
                "y": -3.429117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.532981,
                "y": -3.429117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.751421,
                "y": -3.647557,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.768687,
                "y": -3.647557,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.165181,
                "y": -3.251063,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.165181,
                "y": -3.251063,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.165181,
                "y": -3.251063,
                "width": 0.3048,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 17.84192,
                "y": -3.65091,
                "width": 0.3048,
                "layer": "top"
            }
        ]
    },
    "DDR0_A1": {
        "tiNet": "LPDDR4_CA1",
        "socBall": "H6",
        "memoryBall": "J2",
        "route": [
            {
                "route_type": "wire",
                "x": 2.999999,
                "y": -2.000001,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 2.942453,
                "y": -2.057547,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 2.942453,
                "y": -2.455027,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 2.942453,
                "y": -2.455027,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 2.942453,
                "y": -2.455027,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 2.942453,
                "y": -2.845171,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.094599,
                "y": -2.997317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 4.866757,
                "y": -2.997317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 4.989185,
                "y": -2.874889,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 4.989185,
                "y": -2.560945,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.111613,
                "y": -2.438517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.284587,
                "y": -2.438517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.511917,
                "y": -2.665847,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.511917,
                "y": -4.023223,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.162411,
                "y": -4.673717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.610717,
                "y": -4.673717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.661517,
                "y": -4.622917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.055463,
                "y": -4.622917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.334863,
                "y": -4.902317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.655919,
                "y": -4.902317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.103213,
                "y": -4.455023,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.762337,
                "y": -4.455023,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.166197,
                "y": -4.051163,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.166197,
                "y": -4.051163,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.166197,
                "y": -4.051163,
                "width": 0.3175,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 18.491919,
                "y": -3.65091,
                "width": 0.3175,
                "layer": "top"
            }
        ]
    },
    "DDR0_A2": {
        "tiNet": "LPDDR4_CA2",
        "socBall": "L6",
        "memoryBall": "H9",
        "route": [
            {
                "route_type": "wire",
                "x": 2.999999,
                "y": -0.499999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.000111,
                "y": -0.500111,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.000111,
                "y": -0.917311,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 2.997317,
                "y": -0.965317,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 2.997317,
                "y": -0.965317,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 2.997317,
                "y": -0.965317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.048117,
                "y": -0.575173,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.477373,
                "y": 1.854083,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.261971,
                "y": 1.854083,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.953357,
                "y": 3.545469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.072481,
                "y": 3.545469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.204561,
                "y": 3.413389,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.204561,
                "y": 3.002163,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.336641,
                "y": 2.870083,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.585561,
                "y": 2.870083,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.717641,
                "y": 3.002163,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.717641,
                "y": 3.413389,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.849721,
                "y": 3.545469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.751167,
                "y": 3.545469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.751421,
                "y": 3.545723,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 15.729829,
                "y": 3.545723,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 15.730083,
                "y": 3.545469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 16.936837,
                "y": 3.545469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.068917,
                "y": 3.413389,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.068917,
                "y": 2.795661,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.515195,
                "y": 2.349383,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 17.515195,
                "y": 2.349383,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 17.515195,
                "y": 2.349383,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 17.84192,
                "y": 1.949079,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_A3": {
        "tiNet": "LPDDR4_CA3",
        "socBall": "K2",
        "memoryBall": "H10",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": -1.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5,
                "y": -1.000008,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.249027,
                "y": -1.249035,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.634599,
                "y": -1.249035,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.791317,
                "y": -1.092317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.264517,
                "y": -1.092317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.467717,
                "y": -1.295517,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.873863,
                "y": -1.295517,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.153517,
                "y": -1.015863,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.153517,
                "y": -0.318887,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 8.153517,
                "y": -0.318887,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 8.153517,
                "y": -0.318887,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.148433,
                "y": -0.318887,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.642463,
                "y": -0.812917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.065117,
                "y": -0.812917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.522317,
                "y": -0.355717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.373463,
                "y": -0.355717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.551263,
                "y": -0.177917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.301071,
                "y": -0.177917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 19.863933,
                "y": 1.384945,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 19.863933,
                "y": 2.538613,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 19.149959,
                "y": 3.252587,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.668335,
                "y": 3.252587,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.564723,
                "y": 3.148975,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.168483,
                "y": 3.148975,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.168483,
                "y": 3.148975,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.168483,
                "y": 3.148975,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 17.84192,
                "y": 2.749078,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_A4": {
        "tiNet": "LPDDR4_CA4",
        "socBall": "J1",
        "memoryBall": "H11",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -1.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -1.500007,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.500233,
                "y": -1.500241,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.763123,
                "y": -1.500241,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.906887,
                "y": -1.356477,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.907141,
                "y": -1.356477,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.968101,
                "y": -1.295517,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.061571,
                "y": -1.295517,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.366371,
                "y": -1.600317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.077317,
                "y": -1.600317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.839317,
                "y": -0.838317,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 8.839317,
                "y": -0.838317,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 8.839317,
                "y": -0.838317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.956917,
                "y": -0.838317,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.365857,
                "y": -1.247257,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.066631,
                "y": -1.247257,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.780371,
                "y": -0.533517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.491317,
                "y": -0.533517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 20.243917,
                "y": 1.219083,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 20.243917,
                "y": 2.590683,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.489031,
                "y": 4.345569,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.911689,
                "y": 4.345569,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.515449,
                "y": 3.949329,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 17.515449,
                "y": 3.949329,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 17.515449,
                "y": 3.949329,
                "width": 0.3048,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 17.84192,
                "y": 3.549076,
                "width": 0.3048,
                "layer": "top"
            }
        ]
    },
    "DDR0_A5": {
        "tiNet": "LPDDR4_CA5",
        "socBall": "H5",
        "memoryBall": "J11",
        "route": [
            {
                "route_type": "wire",
                "x": 3.500001,
                "y": -2.000001,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.074787,
                "y": -1.574787,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 3.074787,
                "y": -1.525387,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 3.074787,
                "y": -1.525387,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 3.074787,
                "y": -1.525387,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.393303,
                "y": -1.206871,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 3.393303,
                "y": -0.747131,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.562717,
                "y": 1.422283,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.871317,
                "y": 1.422283,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.400399,
                "y": 1.951365,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.677755,
                "y": 1.951365,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.911435,
                "y": 2.185045,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.911435,
                "y": 2.845445,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.772243,
                "y": 2.984637,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.772243,
                "y": 3.556137,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.165435,
                "y": 3.949329,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.165435,
                "y": 3.949329,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.165435,
                "y": 3.949329,
                "width": 0.3048,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 18.491919,
                "y": 3.549076,
                "width": 0.3048,
                "layer": "top"
            }
        ]
    },
    "DDR0_CS0_n": {
        "tiNet": "LPDDR4_CS0",
        "socBall": "L3",
        "memoryBall": "H4",
        "route": [
            {
                "route_type": "wire",
                "x": 4.500001,
                "y": -0.499999,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 4.549765,
                "y": -0.975223,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 4.549765,
                "y": -0.975223,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 4.549765,
                "y": -0.975223,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 4.549765,
                "y": -0.403215,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 4.851263,
                "y": -0.101717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.506837,
                "y": -0.101717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.638917,
                "y": -0.233797,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.638917,
                "y": -1.315837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 5.770997,
                "y": -1.447917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.609197,
                "y": -1.447917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.741277,
                "y": -1.315837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.741277,
                "y": -1.046597,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.873357,
                "y": -0.914517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.122277,
                "y": -0.914517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.254357,
                "y": -1.046597,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.254357,
                "y": -1.315837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.488037,
                "y": -1.549517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.229717,
                "y": -1.549517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.458317,
                "y": -1.778117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.458317,
                "y": -2.768463,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.414647,
                "y": -3.724793,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.870787,
                "y": -3.724793,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.372711,
                "y": -3.222869,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.372711,
                "y": -2.570597,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.504791,
                "y": -2.438517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.753711,
                "y": -2.438517,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.885791,
                "y": -2.570597,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.885791,
                "y": -2.715377,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.017871,
                "y": -2.847457,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.117685,
                "y": -2.847457,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.514433,
                "y": -2.450709,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 17.514433,
                "y": -2.450709,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 17.514433,
                "y": -2.450709,
                "width": 0.3048,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 17.84192,
                "y": -2.050913,
                "width": 0.3048,
                "layer": "top"
            }
        ]
    },
    "DDR0_CKE0": {
        "tiNet": "LPDDR4_CKE0",
        "socBall": "K1",
        "memoryBall": "J4",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": -1.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.610837,
                "y": -1.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.721721,
                "y": -0.889117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 7.645517,
                "y": -0.889117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 7.645517,
                "y": -0.889117,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 7.645517,
                "y": -0.889117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 8.255371,
                "y": -0.889117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.042517,
                "y": -1.676263,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.042517,
                "y": -2.208647,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.221587,
                "y": -2.387717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.472793,
                "y": -2.387717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.652117,
                "y": -2.208393,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.652117,
                "y": -1.550533,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.784197,
                "y": -1.418453,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 9.971141,
                "y": -1.418453,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.134717,
                "y": -1.582029,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.134717,
                "y": -2.687437,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.275199,
                "y": -2.827919,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.913461,
                "y": -2.827919,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.099917,
                "y": -2.641463,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.099917,
                "y": -2.213493,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.231997,
                "y": -2.081413,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.366613,
                "y": -2.081413,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.498693,
                "y": -2.213493,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.498693,
                "y": -2.331837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.630773,
                "y": -2.463917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 13.879693,
                "y": -2.463917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.011773,
                "y": -2.331837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.011773,
                "y": -2.186549,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.143853,
                "y": -2.054469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.392773,
                "y": -2.054469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.524853,
                "y": -2.186549,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.524853,
                "y": -2.331837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.656933,
                "y": -2.463917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 14.905853,
                "y": -2.463917,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 15.037933,
                "y": -2.331837,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 15.037933,
                "y": -2.186549,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 15.170013,
                "y": -2.054469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.678771,
                "y": -2.054469,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 17.885019,
                "y": -2.260717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.603077,
                "y": -2.260717,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.816437,
                "y": -2.047357,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.816437,
                "y": -1.651117,
                "width": 0.13208,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.816437,
                "y": -1.651117,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.816437,
                "y": -1.651117,
                "width": 0.2286,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 18.491919,
                "y": -2.050913,
                "width": 0.2286,
                "layer": "top"
            }
        ]
    },
    "DDR0_CK0": {
        "tiNet": "LPDDR4_CK_P",
        "socBall": "P1",
        "memoryBall": "J8",
        "route": [
            {
                "route_type": "wire",
                "x": 5.499999,
                "y": 1.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.72755,
                "y": 1.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.043793,
                "y": 1.315857,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.456543,
                "y": 1.315857,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.884787,
                "y": 0.887613,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.884787,
                "y": 0.887613,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.884787,
                "y": 0.887613,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.505311,
                "y": 0.508137,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.505311,
                "y": 0.432953,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.646281,
                "y": 0.291983,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.862181,
                "y": 0.291983,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.052681,
                "y": 0.482483,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.289917,
                "y": 0.482483,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.480417,
                "y": 0.291983,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.734417,
                "y": 0.291983,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.874117,
                "y": 0.431683,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.500477,
                "y": 0.431683,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.784703,
                "y": 0.147457,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.784703,
                "y": -0.036693,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.969107,
                "y": -0.221097,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.637127,
                "y": -0.221097,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.785717,
                "y": -0.072507,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.785717,
                "y": 1.143137,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.064863,
                "y": 1.422283,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.532731,
                "y": 1.422283,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.810607,
                "y": 1.144407,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.810607,
                "y": 0.463433,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.899507,
                "y": 0.374533,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.049103,
                "y": 0.374533,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.581487,
                "y": 0.906917,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.581487,
                "y": 1.255405,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.288117,
                "y": 1.548775,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.165943,
                "y": 1.548775,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.165943,
                "y": 1.548775,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.165943,
                "y": 1.548775,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 18.491919,
                "y": 1.149081,
                "width": 0.0889,
                "layer": "top"
            }
        ]
    },
    "DDR0_CK0_n": {
        "tiNet": "LPDDR4_CK_N",
        "socBall": "P2",
        "memoryBall": "J9",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": 1.000001,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5,
                "y": 0.999988,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.250297,
                "y": 0.749691,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.112119,
                "y": 0.749691,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.269091,
                "y": 0.906663,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 6.269091,
                "y": 0.906663,
                "from_layer": "top",
                "to_layer": "bottom",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 6.269091,
                "y": 0.906663,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.269091,
                "y": 0.334909,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 6.548237,
                "y": 0.055763,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.832461,
                "y": 0.055763,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 7.972161,
                "y": 0.195463,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.402433,
                "y": 0.195463,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.548483,
                "y": 0.049413,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.548483,
                "y": -0.134737,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 10.871063,
                "y": -0.457317,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 11.735171,
                "y": -0.457317,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.021937,
                "y": -0.170551,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.021937,
                "y": 1.045093,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.162907,
                "y": 1.186063,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.434687,
                "y": 1.186063,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.574387,
                "y": 1.046363,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.574387,
                "y": 0.365389,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 12.801463,
                "y": 0.138313,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.147147,
                "y": 0.138313,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.817707,
                "y": 0.808873,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "wire",
                "x": 18.817707,
                "y": 1.549283,
                "width": 0.0889,
                "layer": "bottom"
            },
            {
                "route_type": "via",
                "x": 18.817707,
                "y": 1.549283,
                "from_layer": "bottom",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 18.817707,
                "y": 1.549283,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 18.492333,
                "y": 1.949079,
                "width": 0.0889,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 18.491919,
                "y": 1.949079,
                "width": 0.0889,
                "layer": "top"
            }
        ]
    },
    "DDR0_RESET0_n": {
        "tiNet": "LPDDR4_RESET_N|N29950535",
        "socBall": "J2",
        "memoryBall": "T11",
        "route": [
            {
                "route_type": "wire",
                "x": 5,
                "y": -1.5,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5,
                "y": -1.500134,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.249027,
                "y": -1.749161,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.772521,
                "y": -1.749161,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.982579,
                "y": -1.539103,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.982833,
                "y": -1.539103,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 5.997819,
                "y": -1.524117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 6.934317,
                "y": -1.524117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.839317,
                "y": -3.429117,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 8.839317,
                "y": -5.054717,
                "width": 0.08128,
                "layer": "top"
            },
            {
                "route_type": "via",
                "x": 8.839317,
                "y": -5.054717,
                "from_layer": "top",
                "to_layer": "inner2",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 8.839317,
                "y": -5.054717,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 9.499717,
                "y": -5.715117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 10.287371,
                "y": -5.715117,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 11.074771,
                "y": -6.502517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 18.389717,
                "y": -6.502517,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 20.064613,
                "y": -4.827621,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 20.064613,
                "y": -0.405013,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 22.072717,
                "y": 1.603091,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 22.072717,
                "y": 2.644491,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 23.163413,
                "y": 3.735187,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 23.163413,
                "y": 5.157587,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "wire",
                "x": 22.299813,
                "y": 6.021187,
                "width": 0.09398,
                "layer": "inner2"
            },
            {
                "route_type": "via",
                "x": 22.299813,
                "y": 6.021187,
                "from_layer": "inner2",
                "to_layer": "top",
                "via_diameter": 0.4572,
                "via_hole_diameter": 0.2032
            },
            {
                "route_type": "wire",
                "x": 22.299813,
                "y": 6.021187,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 22.579213,
                "y": 5.741787,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 23.024318,
                "y": 5.741787,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 23.684316,
                "y": 5.741787,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 23.684316,
                "y": 5.272087,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 23.366613,
                "y": 4.954384,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 23.366613,
                "y": 3.873779,
                "width": 0.13208,
                "layer": "top"
            },
            {
                "route_type": "wire",
                "x": 23.04191,
                "y": 3.549076,
                "width": 0.13208,
                "layer": "top"
            }
        ]
    }
};

// Extracted from TI TMDS62LEVM Rev E1-1A board database (SPRCAL6D).
// Coordinates are millimetres relative to U28 (AM62L) / U29 (LPDDR4).
// Only the package-local TOP-layer DGND fanout and its 18/8 mil PTH vias are
// retained; the reference-board global plane geometry is intentionally omitted.
const TI_AM62L_EVM_GROUND_FANOUT = {
    "segments": [
        {
            "component": "U1",
            "width": 0.127,
            "x1": 0.412867,
            "y1": 6.686433,
            "x2": 0.412867,
            "y2": 5.884555
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 0.412867,
            "y1": 5.884555,
            "x2": 0.502674,
            "y2": 5.794748
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 0.502674,
            "y1": 5.794748,
            "x2": 0.502674,
            "y2": 5.502674
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 0.502674,
            "y1": 5.502674,
            "x2": 0.499999,
            "y2": 5.499999
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.146421,
            "y1": 3.498733,
            "x2": 0.395341,
            "y2": 3.747653
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.395341,
            "y1": 3.747653,
            "x2": 0.395849,
            "y2": 3.747653
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.395849,
            "y1": 3.747653,
            "x2": 0.397119,
            "y2": 3.748923
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.397119,
            "y1": 3.748923,
            "x2": 0.603367,
            "y2": 3.748923
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.603367,
            "y1": 3.748923,
            "x2": 0.604637,
            "y2": 3.747653
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.604637,
            "y1": 3.747653,
            "x2": 0.752465,
            "y2": 3.747653
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.752465,
            "y1": 3.747653,
            "x2": 1.000001,
            "y2": 3.500117
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 1.000001,
            "y1": 3.500117,
            "x2": 1.000001,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 5,
            "y1": 1.8834,
            "x2": 5.3834,
            "y2": 1.5
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 5.3834,
            "y1": 1.5,
            "x2": 5.499999,
            "y2": 1.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 3.041533,
            "y1": 1.068187,
            "x2": 2.825915,
            "y2": 1.068187
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.825915,
            "y1": 1.068187,
            "x2": 2.5,
            "y2": 0.742272
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": 0.742272,
            "x2": 2.5,
            "y2": 0.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.500002,
            "y1": 1.000001,
            "x2": 1.5,
            "y2": 1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": -0.907136,
            "x2": 2.432421,
            "y2": -0.974715
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.248921,
            "y1": 0.251079,
            "x2": -2.248921,
            "y2": -0.103119
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.248921,
            "y1": -0.103119,
            "x2": -2.248799,
            "y2": -0.103241
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.248799,
            "y1": -0.103241,
            "x2": -2.248799,
            "y2": -0.251323
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -0.755736,
            "y1": -3.038963,
            "x2": -0.491094,
            "y2": -2.77432
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -0.491094,
            "y1": -2.77432,
            "x2": -0.386359,
            "y2": -2.77432
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -0.386359,
            "y1": -2.77432,
            "x2": -0.356304,
            "y2": -2.744264
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -0.356304,
            "y1": -2.744264,
            "x2": -0.244264,
            "y2": -2.744264
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -0.244264,
            "y1": -2.744264,
            "x2": 0,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.1016,
            "x1": 1.041517,
            "y1": -6.780393,
            "x2": 0.582813,
            "y2": -7.239097
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 3.37692,
            "y1": 4.75108,
            "x2": 2.89688,
            "y2": 4.75108
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 2.89688,
            "y1": 4.75108,
            "x2": 2.64796,
            "y2": 5
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 2.64796,
            "y1": 5,
            "x2": 2.5,
            "y2": 5
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.24892,
            "y1": -4.748921,
            "x2": -0.600959,
            "y2": -4.748921
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.600959,
            "y1": -4.748921,
            "x2": -0.748919,
            "y2": -4.896881
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.748919,
            "y1": -4.896881,
            "x2": -0.748919,
            "y2": -5.103119
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.748919,
            "y1": -5.103119,
            "x2": -0.499999,
            "y2": -5.352039
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.499999,
            "y1": -5.352039,
            "x2": -0.499999,
            "y2": -5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.248799,
            "y1": -0.251323,
            "x2": -2.000123,
            "y2": -0.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.000123,
            "y1": -0.499999,
            "x2": -2.000001,
            "y2": -0.499999
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.000001,
            "y1": 0.499999,
            "x2": -2.248921,
            "y2": 0.251079
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500007,
            "y1": 3.500003,
            "x2": -1.50001,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500005,
            "y1": 3.500001,
            "x2": -1.500007,
            "y2": 3.500003
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.50001,
            "y1": 3.500001,
            "x2": -2.000001,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0,
            "y1": -4.500001,
            "x2": -0.24892,
            "y2": -4.748921
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 3.568817,
            "y1": 4.559183,
            "x2": 3.37692,
            "y2": 4.75108
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 0.965317,
            "y1": 7.238883,
            "x2": 0.412867,
            "y2": 6.686433
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 0.045075,
            "y1": 3.962283,
            "x2": 0.045075,
            "y2": 3.956441
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 0.045075,
            "y1": 3.956441,
            "x2": 0.000117,
            "y2": 3.911483
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 0.000117,
            "y1": 3.911483,
            "x2": 0.000117,
            "y2": 3.500003
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 0.000117,
            "y1": 3.500003,
            "x2": 0.001387,
            "y2": 3.498733
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 0.001387,
            "y1": 3.498733,
            "x2": 0.146421,
            "y2": 3.498733
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 5,
            "y1": 2.000001,
            "x2": 5,
            "y2": 1.8834
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 3.427613,
            "y1": 1.454267,
            "x2": 3.041533,
            "y2": 1.068187
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": 1.5,
            "x2": 1.500002,
            "y2": 1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": -0.499999,
            "x2": 2.5,
            "y2": -0.907136
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.000001,
            "y1": -3.500001,
            "x2": -0.755736,
            "y2": -3.255736
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -0.755736,
            "y1": -3.255736,
            "x2": -0.755736,
            "y2": -3.038963
        },
        {
            "component": "U1",
            "width": 0.1016,
            "x1": 1.000001,
            "y1": -5.499999,
            "x2": 1.000001,
            "y2": -5.749801
        },
        {
            "component": "U1",
            "width": 0.1016,
            "x1": 1.000001,
            "y1": -5.749801,
            "x2": 1.041517,
            "y2": -5.791317
        },
        {
            "component": "U1",
            "width": 0.1016,
            "x1": 1.041517,
            "y1": -5.791317,
            "x2": 1.041517,
            "y2": -6.780393
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 6.069213,
            "y1": -5.459613,
            "x2": 5.6096,
            "y2": -5
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 5.6096,
            "y1": -5,
            "x2": 5.499999,
            "y2": -5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.5,
            "y1": 0.499999,
            "x2": 1.5,
            "y2": 1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": 2.000001,
            "x2": 2.5,
            "y2": 2.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": 1.5,
            "x2": 2.000001,
            "y2": 2.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": 2.000001,
            "x2": 2.5,
            "y2": 2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": 2.5,
            "x2": 2.000001,
            "y2": 2.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": 2.5,
            "x2": 2.000001,
            "y2": 2.5
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": 2.000001,
            "y1": 2.5,
            "x2": 1.920288,
            "y2": 2.5
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": 1.920288,
            "y1": 2.5,
            "x2": 1.623108,
            "y2": 2.79718
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": 1.623108,
            "y1": 2.79718,
            "x2": 1.297181,
            "y2": 2.79718
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": 1.297181,
            "y1": 2.79718,
            "x2": 1.000001,
            "y2": 2.5
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 6.824985,
            "y1": 2.799994,
            "x2": 7.362952,
            "y2": 2.797556
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 6.824985,
            "y1": 1.199998,
            "x2": 7.304532,
            "y2": 0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 6.824985,
            "y1": -1.199998,
            "x2": 7.15137,
            "y2": -0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 7.152386,
            "y1": -3.2004,
            "x2": 6.824985,
            "y2": -2.799994
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 5.524988,
            "y1": 4.399991,
            "x2": 5.851906,
            "y2": 4.800346
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.22499,
            "y1": 4.399991,
            "x2": 4.551934,
            "y2": 3.999738
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.874989,
            "y1": 3.599993,
            "x2": 4.551934,
            "y2": 3.999738
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 5.524988,
            "y1": 1.199998,
            "x2": 5.850382,
            "y2": 0.799592
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.22499,
            "y1": 1.199998,
            "x2": 4.551934,
            "y2": 1.599692
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.874989,
            "y1": 1.999996,
            "x2": 4.551934,
            "y2": 1.599692
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.874989,
            "y1": -1.999996,
            "x2": 5.524988,
            "y2": -1.199998
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 5.524988,
            "y1": -1.199998,
            "x2": 5.851398,
            "y2": -0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.22499,
            "y1": -1.199998,
            "x2": 4.551172,
            "y2": -0.79756
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 5.774436,
            "y1": -5.291836,
            "x2": 5.774436,
            "y2": -4.64944
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 5.774436,
            "y1": -4.64944,
            "x2": 5.524988,
            "y2": -4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.874989,
            "y1": -3.599993,
            "x2": 5.202428,
            "y2": -4.000246
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 5.524988,
            "y1": -4.399991,
            "x2": 5.202428,
            "y2": -4.000246
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 2.601468,
            "y1": 4.800346,
            "x2": 2.924993,
            "y2": 4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 2.924993,
            "y1": 1.199998,
            "x2": 2.601468,
            "y2": 0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 2.924993,
            "y1": 2.799994,
            "x2": 2.600198,
            "y2": 2.399792
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 2.924993,
            "y1": -1.199998,
            "x2": 3.251454,
            "y2": -0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 4.22499,
            "y1": -4.399991,
            "x2": 3.901948,
            "y2": -4.800346
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 2.924993,
            "y1": -4.399991,
            "x2": 2.601976,
            "y2": -4.800346
        },
        {
            "component": "U2",
            "width": 0.1016,
            "x1": 2.924993,
            "y1": -2.799994,
            "x2": 3.248914,
            "y2": -3.123916
        },
        {
            "component": "U2",
            "width": 0.1016,
            "x1": 3.248914,
            "y1": -3.123916,
            "x2": 3.248914,
            "y2": -4.07607
        },
        {
            "component": "U2",
            "width": 0.1016,
            "x1": 3.248914,
            "y1": -4.07607,
            "x2": 2.924993,
            "y2": -4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 1.624995,
            "y1": 4.399991,
            "x2": 1.300988,
            "y2": 4.800346
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 0.974997,
            "y1": 3.599993,
            "x2": 1.300988,
            "y2": 3.2004
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 1.624995,
            "y1": 2.799994,
            "x2": 1.300988,
            "y2": 3.2004
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 0.974997,
            "y1": 1.999996,
            "x2": 1.300988,
            "y2": 1.6002
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 0.974997,
            "y1": -3.599993,
            "x2": 1.300988,
            "y2": -3.2004
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 1.624995,
            "y1": -2.799994,
            "x2": 1.300988,
            "y2": -3.2004
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 0.974997,
            "y1": -1.999996,
            "x2": 0.65024,
            "y2": -2.399792
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": 1.624995,
            "y1": -4.399991,
            "x2": 1.302004,
            "y2": -4.800346
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -1.299693,
            "y1": 4.799838,
            "x2": -1.624998,
            "y2": 4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -0.974999,
            "y1": 3.599993,
            "x2": -0.649732,
            "y2": 3.999738
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -0.649224,
            "y1": 1.6002,
            "x2": -0.974598,
            "y2": 1.999996
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -0.974598,
            "y1": 1.999996,
            "x2": -0.974999,
            "y2": 1.999996
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -0.974999,
            "y1": 1.999996,
            "x2": -1.624998,
            "y2": 2.799994
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -1.30048,
            "y1": -3.2004,
            "x2": -0.974999,
            "y2": -3.599993
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -1.624998,
            "y1": -2.799994,
            "x2": -1.30048,
            "y2": -3.2004
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -0.974999,
            "y1": -1.999996,
            "x2": -0.649732,
            "y2": -1.6002
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -1.624998,
            "y1": -4.399991,
            "x2": -1.30048,
            "y2": -4.800346
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -2.59969,
            "y1": 4.799838,
            "x2": -2.924995,
            "y2": 4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -2.598928,
            "y1": 0.8001,
            "x2": -2.924995,
            "y2": 1.199998
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.224993,
            "y1": 1.199998,
            "x2": -3.90144,
            "y2": 0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -2.924995,
            "y1": 2.799994,
            "x2": -3.249168,
            "y2": 2.4003
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -2.924995,
            "y1": -1.199998,
            "x2": -3.2512,
            "y2": -0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -2.924995,
            "y1": -2.799994,
            "x2": -3.25247,
            "y2": -3.199892
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -2.924995,
            "y1": -4.399991,
            "x2": -3.070606,
            "y2": -4.873752
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -5.524988,
            "y1": 4.399991,
            "x2": -5.851398,
            "y2": 4.800346
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.551426,
            "y1": 4.800346,
            "x2": -4.224993,
            "y2": 4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.874992,
            "y1": 3.599993,
            "x2": -4.55168,
            "y2": 4.000246
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -5.524988,
            "y1": 1.199998,
            "x2": -5.853176,
            "y2": 0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.874992,
            "y1": 1.999996,
            "x2": -5.524988,
            "y2": 1.199998
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -5.524988,
            "y1": -1.199998,
            "x2": -5.851144,
            "y2": -0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.224993,
            "y1": -1.199998,
            "x2": -4.551172,
            "y2": -0.8001
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -5.204968,
            "y1": -1.599692,
            "x2": -4.874992,
            "y2": -1.999996
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.224993,
            "y1": -4.399991,
            "x2": -4.55168,
            "y2": -4.825746
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -5.8166,
            "y1": -5.207,
            "x2": -5.8166,
            "y2": -4.691604
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -5.8166,
            "y1": -4.691604,
            "x2": -5.524988,
            "y2": -4.399991
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -4.874992,
            "y1": -3.599993,
            "x2": -4.551172,
            "y2": -4.000246
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -6.824985,
            "y1": 2.799994,
            "x2": -7.651394,
            "y2": 2.799994
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -7.651394,
            "y1": 2.799994,
            "x2": -7.8994,
            "y2": 3.048
        },
        {
            "component": "U2",
            "width": 0.3048,
            "x1": -6.824985,
            "y1": -2.799994,
            "x2": -7.152132,
            "y2": -3.2004
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5,
            "y1": 5.499999,
            "x2": 5,
            "y2": 6.220236
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5,
            "y1": 6.220236,
            "x2": 5.306177,
            "y2": 6.526413
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.306177,
            "y1": 6.526413,
            "x2": 5.332847,
            "y2": 6.526413
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.332847,
            "y1": 6.526413,
            "x2": 5.511917,
            "y2": 6.705483
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.499999,
            "y1": 5,
            "x2": 5.499999,
            "y2": 5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.499999,
            "y1": 5.499999,
            "x2": 5.779633,
            "y2": 5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.779633,
            "y1": 5.499999,
            "x2": 6.045317,
            "y2": 5.765683
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.499999,
            "y1": 4,
            "x2": 6.100051,
            "y2": 4
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 6.100051,
            "y1": 4,
            "x2": 6.474831,
            "y2": 4.374779
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 5.499999,
            "y1": 0,
            "x2": 5.500116,
            "y2": -117e-6
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": 5.500116,
            "y1": -117e-6,
            "x2": 5.500233,
            "y2": -117e-6
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.500233,
            "y1": -117e-6,
            "x2": 6.074273,
            "y2": -117e-6
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 6.074273,
            "y1": -117e-6,
            "x2": 6.275695,
            "y2": -0.201539
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.499999,
            "y1": -2.000001,
            "x2": 6.046191,
            "y2": -2.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 6.046191,
            "y1": -2.000001,
            "x2": 6.136249,
            "y2": -1.909943
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 5.499999,
            "y1": -4,
            "x2": 5,
            "y2": -3.500001
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 5.499999,
            "y1": -4,
            "x2": 6.049272,
            "y2": -4
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 6.049272,
            "y1": -4,
            "x2": 6.307953,
            "y2": -4.258681
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5,
            "y1": -5.499999,
            "x2": 5.499999,
            "y2": -5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.499999,
            "y1": -5.499999,
            "x2": 5.499999,
            "y2": -5.967613
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 5.499999,
            "y1": -5.967613,
            "x2": 5.501503,
            "y2": -5.969117
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 4.500001,
            "y1": 2.999999,
            "x2": 4.500001,
            "y2": 2.564501
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 4.500001,
            "y1": 2.564501,
            "x2": 4.501505,
            "y2": 2.562997
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 4.501505,
            "y1": 2.562997,
            "x2": 4.501505,
            "y2": 2.498496
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 4.501505,
            "y1": 2.498496,
            "x2": 5,
            "y2": 2.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 4,
            "y1": 4.500001,
            "x2": 3.627999,
            "y2": 4.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 3.627999,
            "y1": 4.500001,
            "x2": 3.568817,
            "y2": 4.559183
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 4,
            "y1": -5.499999,
            "x2": 4,
            "y2": -5.966468
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 4,
            "y1": -5.966468,
            "x2": 4.044305,
            "y2": -6.010773
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 4.044305,
            "y1": -6.010773,
            "x2": 4.044305,
            "y2": -6.268329
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": 4.044305,
            "y1": -6.268329,
            "x2": 3.632317,
            "y2": -6.680317
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 4,
            "y1": -5.499999,
            "x2": 3.500001,
            "y2": -5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.5,
            "y1": -0.499999,
            "x2": 1.5,
            "y2": -1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.5,
            "y1": -1.000001,
            "x2": 2.000001,
            "y2": -1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": -1.000001,
            "x2": 2.407135,
            "y2": -1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.407135,
            "y1": -1.000001,
            "x2": 2.432421,
            "y2": -0.974715
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.5,
            "y1": -2.5,
            "x2": 2.000001,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": -2.000001,
            "x2": 2.5,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": -2.5,
            "x2": 2.5,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": -2.5,
            "x2": 2.5,
            "y2": -2.74479
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.5,
            "y1": -2.74479,
            "x2": 2.755209,
            "y2": -2.999999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.755209,
            "y1": -2.999999,
            "x2": 2.999999,
            "y2": -2.999999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.999999,
            "y1": -2.999999,
            "x2": 3.500001,
            "y2": -2.999999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.5,
            "y1": -3.500001,
            "x2": 1.000001,
            "y2": -3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.5,
            "y1": -3.500001,
            "x2": 2.000001,
            "y2": -3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": -3.500001,
            "x2": 2.000001,
            "y2": -3.297149
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": -3.297149,
            "x2": 2.220839,
            "y2": -3.076311
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": -2.5,
            "x2": 2.000001,
            "y2": -2.855473
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.000001,
            "y1": -2.855473,
            "x2": 2.220839,
            "y2": -3.076311
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.566787,
            "y1": -3.552307,
            "x2": 2.947693,
            "y2": -3.552307
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 2.947693,
            "y1": -3.552307,
            "x2": 2.999999,
            "y2": -3.500001
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -1.000001,
            "y1": 5.499999,
            "x2": -0.999881,
            "y2": 5.499999
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.999881,
            "y1": 5.499999,
            "x2": -0.999881,
            "y2": 5.673481
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.999881,
            "y1": 5.673481,
            "x2": -1.117483,
            "y2": 5.791083
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -1.117483,
            "y1": 5.791083,
            "x2": -1.117483,
            "y2": 6.446657
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -1.117483,
            "y1": 6.446657,
            "x2": -0.915787,
            "y2": 6.648353
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.915787,
            "y1": 6.648353,
            "x2": -0.915787,
            "y2": 6.927499
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -0.915787,
            "y1": 6.927499,
            "x2": -0.553603,
            "y2": 7.289683
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 1.000001,
            "y1": 3.500001,
            "x2": 1.5,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 0.499999,
            "y1": 0.499999,
            "x2": 0.855833,
            "y2": 0.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": 0.855833,
            "y1": 0.499999,
            "x2": 0.914517,
            "y2": 0.558683
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 0,
            "y1": -4.500001,
            "x2": 0,
            "y2": -4.002273
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": 0,
            "y1": -4.002273,
            "x2": -0.068105,
            "y2": -3.934168
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": 3.500001,
            "x2": -1.500005,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.000001,
            "y1": 3.500001,
            "x2": -1.5,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": 2.5,
            "x2": -1.000001,
            "y2": 2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.000001,
            "y1": 2.5,
            "x2": -0.499999,
            "y2": 2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": 2.5,
            "x2": -1.500007,
            "y2": 2.500008
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500007,
            "y1": 2.500008,
            "x2": -1.500007,
            "y2": 2.843159
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500007,
            "y1": 2.843159,
            "x2": -1.396883,
            "y2": 2.946283
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500007,
            "y1": 3.500003,
            "x2": -1.500007,
            "y2": 3.049407
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500007,
            "y1": 3.049407,
            "x2": -1.396883,
            "y2": 2.946283
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.500005,
            "y1": 3.500001,
            "x2": -1.50001,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.295412,
            "y1": 0,
            "x2": 0,
            "y2": 0
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.474599,
            "y1": 0.179187,
            "x2": -0.295412,
            "y2": 0
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.487299,
            "y1": 0.179187,
            "x2": -0.474599,
            "y2": 0.179187
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.499999,
            "y1": 0.166487,
            "x2": -0.499999,
            "y2": 0.499999
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.499999,
            "y1": 0.166487,
            "x2": -0.487299,
            "y2": 0.179187
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.499999,
            "y1": 0.153787,
            "x2": -0.499999,
            "y2": 0.166487
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.914283,
            "y1": -0.558917,
            "x2": -0.558917,
            "y2": -0.558917
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.558917,
            "y1": -0.558917,
            "x2": -0.499999,
            "y2": -0.499999
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.248799,
            "y1": -0.251323,
            "x2": -2.490587,
            "y2": -0.251079
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.490587,
            "y1": -0.251079,
            "x2": -2.542705,
            "y2": -0.251079
        },
        {
            "component": "U1",
            "width": 0.08128,
            "x1": -2.542705,
            "y1": -0.251079,
            "x2": -2.803987,
            "y2": -0.343444
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -2.803987,
            "y1": -0.343444,
            "x2": -2.999999,
            "y2": -0.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -0.499999,
            "y1": 1.5,
            "x2": -0.431683,
            "y2": 1.092083
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": 1.5,
            "x2": -1.0936,
            "y2": 1.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.0936,
            "y1": 1.5,
            "x2": -1.041283,
            "y2": 1.447683
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": 1.000001,
            "x2": -1.5,
            "y2": 1.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.000001,
            "y1": 0.499999,
            "x2": -1.5,
            "y2": 1.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": -1.000001,
            "x2": -2.000001,
            "y2": -0.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": -1.000001,
            "x2": -1.058916,
            "y2": -0.558917
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.058916,
            "y1": -0.558917,
            "x2": -0.914283,
            "y2": -0.558917
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -0.499999,
            "y1": -0.499999,
            "x2": -0.499999,
            "y2": 0.153787
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.5,
            "y1": -5,
            "x2": -2.5,
            "y2": -4.564502
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.5,
            "y1": -4.564502,
            "x2": -2.562997,
            "y2": -4.501505
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.999999,
            "y1": -4.500001,
            "x2": -2.564501,
            "y2": -4.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.564501,
            "y1": -4.500001,
            "x2": -2.562997,
            "y2": -4.501505
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.906387,
            "y1": -5.789813,
            "x2": -2.000001,
            "y2": -5.696199
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -2.000001,
            "y1": -5.696199,
            "x2": -2.000001,
            "y2": -5.499999
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -3.500001,
            "y1": 5.499999,
            "x2": -3.500001,
            "y2": 5.966849
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -3.500001,
            "y1": 5.966849,
            "x2": -3.502035,
            "y2": 5.968883
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -4,
            "y1": 4.500001,
            "x2": -4,
            "y2": 4
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -4,
            "y1": 4,
            "x2": -4.500001,
            "y2": 4
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -4.500001,
            "y1": 5,
            "x2": -4.500001,
            "y2": 4.564517
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -4.500001,
            "y1": 4.564517,
            "x2": -4.434215,
            "y2": 4.498731
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -4,
            "y1": 4.500001,
            "x2": -4.432945,
            "y2": 4.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -4.432945,
            "y1": 4.500001,
            "x2": -4.434215,
            "y2": 4.498731
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.999999,
            "y1": 2.999999,
            "x2": -2.695199,
            "y2": 2.999999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.695199,
            "y1": 2.999999,
            "x2": -2.5,
            "y2": 2.8048
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.5,
            "y1": 2.8048,
            "x2": -2.5,
            "y2": 2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -3.500001,
            "y1": 2.999999,
            "x2": -2.999999,
            "y2": 2.999999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -3.500001,
            "y1": 2.999999,
            "x2": -3.500001,
            "y2": 3.329826
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -3.500001,
            "y1": 3.329826,
            "x2": -3.402213,
            "y2": 3.427613
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": -4,
            "y1": 2.5,
            "x2": -4,
            "y2": 2.544432
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": -4,
            "y1": 2.544432,
            "x2": -3.544433,
            "y2": 2.999999
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": -3.544433,
            "y1": 2.999999,
            "x2": -3.500001,
            "y2": 2.999999
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": -4,
            "y1": 2.5,
            "x2": -4,
            "y2": 2.420526
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": -4,
            "y1": 2.420526,
            "x2": -3.579475,
            "y2": 2.000001
        },
        {
            "component": "U1",
            "width": 0.1778,
            "x1": -3.579475,
            "y1": 2.000001,
            "x2": -3.500001,
            "y2": 2.000001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.999999,
            "y1": 3.500001,
            "x2": -3.329826,
            "y2": 3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -3.329826,
            "y1": 3.500001,
            "x2": -3.402213,
            "y2": 3.427613
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.000001,
            "y1": -3.500001,
            "x2": -1.5,
            "y2": -3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.000001,
            "y1": -2.000001,
            "x2": -1.000001,
            "y2": -2.002772
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.000001,
            "y1": -2.002772,
            "x2": -1.497228,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.497228,
            "y1": -2.5,
            "x2": -1.5,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.5,
            "y1": -2.5,
            "x2": -1.499987,
            "y2": -2.500013
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.499987,
            "y1": -2.500013,
            "x2": -1.499987,
            "y2": -2.741813
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.499987,
            "y1": -2.741813,
            "x2": -1.595003,
            "y2": -2.836829
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.595003,
            "y1": -2.836829,
            "x2": -1.595003,
            "y2": -3.404997
        },
        {
            "component": "U1",
            "width": 0.13208,
            "x1": -1.595003,
            "y1": -3.404997,
            "x2": -1.5,
            "y2": -3.500001
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -1.5,
            "y1": -2.5,
            "x2": -2.000001,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.000001,
            "y1": -2.5,
            "x2": -2.5,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.5,
            "y1": -2.000001,
            "x2": -2.5,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.5,
            "y1": -2.5,
            "x2": -2.865526,
            "y2": -2.5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -2.865526,
            "y1": -2.5,
            "x2": -2.945013,
            "y2": -2.579487
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -2.999999,
            "y1": -2.999999,
            "x2": -2.999999,
            "y2": -2.634473
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -2.999999,
            "y1": -2.634473,
            "x2": -2.945013,
            "y2": -2.579487
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -6.125093,
            "y1": 5.917321,
            "x2": -5.917321,
            "y2": 5.917321
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.917321,
            "y1": 5.917321,
            "x2": -5.499999,
            "y2": 5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.499999,
            "y1": 5.499999,
            "x2": -5.499999,
            "y2": 5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5,
            "y1": 5.499999,
            "x2": -5.00127,
            "y2": 5.501269
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.00127,
            "y1": 5.501269,
            "x2": -5.498729,
            "y2": 5.501269
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.498729,
            "y1": 5.501269,
            "x2": -5.499999,
            "y2": 5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.499999,
            "y1": -5,
            "x2": -5.917174,
            "y2": -5
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.917174,
            "y1": -5,
            "x2": -6.097387,
            "y2": -5.180213
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -6.097387,
            "y1": -6.297813,
            "x2": -6.097387,
            "y2": -6.094613
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -6.097387,
            "y1": -6.094613,
            "x2": -5.502773,
            "y2": -5.499999
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -5.502773,
            "y1": -5.499999,
            "x2": -5.499999,
            "y2": -5.499999
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": -5,
            "y1": -5.499999,
            "x2": -5.055987,
            "y2": -5.555986
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": -5.055987,
            "y1": -5.555986,
            "x2": -5.055987,
            "y2": -5.764413
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": -5.055987,
            "y1": -5.764413,
            "x2": -5.121793,
            "y2": -5.830219
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": -5.121793,
            "y1": -5.830219,
            "x2": -5.121793,
            "y2": -6.097387
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": -5.121793,
            "y1": -6.097387,
            "x2": -5.316865,
            "y2": -6.292459
        },
        {
            "component": "U1",
            "width": 0.127,
            "x1": -5.316865,
            "y1": -6.292459,
            "x2": -5.330581,
            "y2": -6.292459
        },
        {
            "component": "U1",
            "width": 0.2032,
            "x1": -3.500001,
            "y1": -5.499999,
            "x2": -4,
            "y2": -5
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -3.500001,
            "y1": -5.499999,
            "x2": -3.633587,
            "y2": -5.633585
        },
        {
            "component": "U1",
            "width": 0.254,
            "x1": -3.633587,
            "y1": -5.633585,
            "x2": -3.633587,
            "y2": -6.831213
        }
    ],
    "vias": [
        {
            "component": "U2",
            "x": 7.362952,
            "y": 2.797556,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 7.304532,
            "y": 0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 7.15137,
            "y": -0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 7.152386,
            "y": -3.2004,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 5.851906,
            "y": 4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 4.551934,
            "y": 3.999738,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 5.850382,
            "y": 0.799592,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 4.551934,
            "y": 1.599692,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 5.851398,
            "y": -0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 4.551172,
            "y": -0.79756,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 5.774436,
            "y": -5.291836,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 5.202428,
            "y": -4.000246,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 2.601468,
            "y": 4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 2.601468,
            "y": 0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 2.600198,
            "y": 2.399792,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 3.251454,
            "y": -0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 3.901948,
            "y": -4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 2.601976,
            "y": -4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 1.300988,
            "y": 4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 1.300988,
            "y": 3.2004,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 1.300988,
            "y": 1.6002,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 1.300988,
            "y": -3.2004,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 0.65024,
            "y": -2.399792,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": 1.302004,
            "y": -4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -1.299693,
            "y": 4.799838,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -0.649732,
            "y": 3.999738,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -0.649224,
            "y": 1.6002,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -1.30048,
            "y": -3.2004,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -0.649732,
            "y": -1.6002,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -1.30048,
            "y": -4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -2.59969,
            "y": 4.799838,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -2.598928,
            "y": 0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -3.90144,
            "y": 0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -3.249168,
            "y": 2.4003,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -3.2512,
            "y": -0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -3.25247,
            "y": -3.199892,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -3.070606,
            "y": -4.873752,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -5.851398,
            "y": 4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -4.551426,
            "y": 4.800346,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -4.55168,
            "y": 4.000246,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -5.853176,
            "y": 0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -5.851144,
            "y": -0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -4.551172,
            "y": -0.8001,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -5.204968,
            "y": -1.599692,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -4.55168,
            "y": -4.825746,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -5.8166,
            "y": -5.207,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -4.551172,
            "y": -4.000246,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -4.47294,
            "y": -6.071108,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -7.8994,
            "y": 3.048,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U2",
            "x": -7.152132,
            "y": -3.2004,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 5.511917,
            "y": 6.705483,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 6.045317,
            "y": 5.765683,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 6.474831,
            "y": 4.374779,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 6.275695,
            "y": -0.201539,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 6.136249,
            "y": -1.909943,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 6.307953,
            "y": -4.258681,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 5.501503,
            "y": -5.969117,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 4.392813,
            "y": 7.062587,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 4.501505,
            "y": 2.562997,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 3.568817,
            "y": 4.559183,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 3.427613,
            "y": 1.454267,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 3.632317,
            "y": -6.680317,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 2.432421,
            "y": -0.974715,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 2.566787,
            "y": -3.552307,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 2.220839,
            "y": -3.076311,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -0.553603,
            "y": 7.289683,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 0.965317,
            "y": 7.238883,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 0.045075,
            "y": 3.962283,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": 0.914517,
            "y": 0.558683,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -0.068105,
            "y": -3.934168,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -1.396883,
            "y": 2.946283,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -0.499999,
            "y": 0.153787,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -0.914283,
            "y": -0.558917,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -1.041283,
            "y": 1.447683,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -0.431683,
            "y": 1.092083,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -2.562997,
            "y": -4.501505,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -3.502035,
            "y": 5.968883,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -4.434215,
            "y": 4.498731,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -3.402213,
            "y": 3.427613,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -2.945013,
            "y": -2.579487,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -6.125093,
            "y": 5.917321,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -6.681587,
            "y": 3.582787,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -6.097387,
            "y": -5.180213,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -6.097387,
            "y": -6.297813,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        },
        {
            "component": "U1",
            "x": -5.330581,
            "y": -6.292459,
            "diameter": 0.4572,
            "holeDiameter": 0.2032
        }
    ]
};

// Extracted from TI TMDS62LEVM SPRCAL6D Altium ASCII board data.
// Coordinates are millimetres relative to U28 (AM62L) centre. These routes
// intentionally stop at the first clean point outside the 12 mm BGA body so
// the board-level router can continue without searching inside the ball field.
const wire = (layer, width, points) => points.map(([x, y]) => ({ route_type: "wire", x, y, width, layer }));
const via = (x, y, from_layer, to_layer) => ({
    route_type: "via",
    x,
    y,
    from_layer,
    to_layer,
    via_diameter: 0.4572,
    via_hole_diameter: 0.2032,
});
const TI_AM62L_EVM_MMC1_ESCAPES = {
    MMC1_SDCD: {
        ball: "B6",
        route: [
            ...wire("top", 0.08128, [[2.999999, -5], [3.00229, -5], [3.251063, -5.248773], [3.251063, -6.983613]]),
            ...wire("top", 0.13208, [[3.251063, -6.983613], [3.251063, -7.111863], [3.554613, -7.415413]]),
            via(3.554613, -7.415413, "top", "inner2"),
            ...wire("inner2", 0.09398, [[3.554613, -7.415413], [3.554613, -9.085669]]),
        ],
    },
    MMC1_SDWP: {
        ball: "D6",
        route: [
            ...wire("top", 0.08128, [[2.999999, -4], [2.999999, -3.874237], [3.441055, -3.433181]]),
            via(3.441055, -3.433181, "top", "bottom"),
            ...wire("bottom", 0.13208, [[3.441055, -3.433181], [3.098917, -3.775319], [3.098917, -4.673717], [3.656305, -5.231105], [5.535905, -5.231105], [6.094613, -5.789813], [7.999613, -5.789813]]),
        ],
    },
    MMC1_CLK: {
        ball: "Y2",
        route: [
            ...wire("top", 0.08128, [[5, 4], [5.24892, 4.24892], [5.846346, 4.24892], [6.424813, 4.827387], [6.628013, 4.827387]]),
        ],
    },
    MMC1_CMD: {
        ball: "Y3",
        route: [
            ...wire("top", 0.13208, [[4.500001, 4], [4.573387, 3.605413]]),
            via(4.573387, 3.605413, "top", "inner2"),
            ...wire("inner2", 0.09398, [[4.573387, 3.605413], [4.573387, 4.037467], [4.827133, 4.291213], [4.827133, 4.603633], [4.664827, 4.766193], [4.664827, 5.937601], [5.078613, 6.351387]]),
        ],
    },
    MMC1_DAT0: {
        ball: "AA1",
        route: [
            ...wire("top", 0.13208, [[5.499999, 4.500001], [5.765917, 4.500001], [6.347303, 5.081387], [7.266021, 5.081387], [7.772517, 5.587883]]),
            via(7.772517, 5.587883, "top", "inner2"),
            ...wire("inner2", 0.09398, [[7.772517, 5.587883], [8.074309, 5.587883]]),
        ],
    },
    MMC1_DAT1: {
        ball: "Y4",
        route: [
            ...wire("top", 0.13208, [[4, 4], [4.450197, 4.447423]]),
            via(4.450197, 4.447423, "top", "inner2"),
            ...wire("inner2", 0.09398, [[4.450197, 4.447423], [4.450197, 6.078571], [4.824613, 6.452987]]),
        ],
    },
    MMC1_DAT2: {
        ball: "AA2",
        route: [
            ...wire("top", 0.08128, [[5, 4.500001], [5.249682, 4.749683], [5.638663, 4.749683], [5.81659, 4.92761]]),
            ...wire("top", 0.13208, [[5.81659, 4.92761], [6.461623, 5.572643], [7.101703, 5.572643]]),
            via(7.101703, 5.572643, "top", "inner2"),
            ...wire("inner2", 0.09398, [[7.101703, 5.572643], [7.252566, 5.572643]]),
        ],
    },
    MMC1_DAT3: {
        ball: "AB2",
        route: [
            ...wire("top", 0.08128, [[5, 5], [5.249027, 5.248793], [5.249027, 5.858393], [5.485247, 6.094613]]),
            via(5.485247, 6.094613, "top", "inner2"),
            ...wire("inner2", 0.09398, [[5.485247, 6.094613], [6.018413, 6.627779]]),
        ],
    },
};

const getLayerZ = (layer, layerCount) => {
    if (layer === "top")
        return 0;
    if (layer === "bottom")
        return layerCount - 1;
    return Number(layer.slice(5));
};
const getLayerName = (z, layerCount) => {
    if (z === 0)
        return "top";
    if (z === layerCount - 1)
        return "bottom";
    return `inner${z}`;
};
const getLayersBetween = (fromLayer, toLayer, layerCount) => {
    const fromZ = getLayerZ(fromLayer, layerCount);
    const toZ = getLayerZ(toLayer, layerCount);
    const minZ = Math.min(fromZ, toZ);
    const maxZ = Math.max(fromZ, toZ);
    return Array.from({ length: maxZ - minZ + 1 }, (_, index) => getLayerName(minZ + index, layerCount));
};
/** Materialize committed copper as geometric obstacles for Pipeline1. */
const getTraceObstacles = (traces, layerCount) => {
    const obstacles = [];
    for (const [traceIndex, trace] of traces.entries()) {
        const connectedTo = [
            trace.pcb_trace_id,
            trace.connection_name,
            ...(trace.connectsTo ?? []),
        ].filter((id) => Boolean(id));
        for (const [pointIndex, point] of trace.route.entries()) {
            if (point.route_type !== "via")
                continue;
            obstacles.push({
                obstacleId: `committed_${traceIndex}_${pointIndex}_via`,
                type: "rect",
                layers: getLayersBetween(point.from_layer, point.to_layer, layerCount),
                center: { x: point.x, y: point.y },
                width: point.via_diameter ?? 0.4572,
                height: point.via_diameter ?? 0.4572,
                connectedTo,
            });
        }
        for (let pointIndex = 0; pointIndex < trace.route.length - 1; pointIndex++) {
            const start = trace.route[pointIndex];
            const end = trace.route[pointIndex + 1];
            if (start.route_type !== "wire" ||
                end.route_type !== "wire" ||
                start.layer !== end.layer)
                continue;
            const dx = end.x - start.x;
            const dy = end.y - start.y;
            const length = Math.hypot(dx, dy);
            if (length <= 0.001)
                continue;
            obstacles.push({
                obstacleId: `committed_${traceIndex}_${pointIndex}_wire`,
                type: "rect",
                layers: [start.layer],
                center: { x: (start.x + end.x) / 2, y: (start.y + end.y) / 2 },
                width: length,
                height: Math.max(start.width, 0.001),
                ccwRotationDegrees: (Math.atan2(dy, dx) * 180) / Math.PI,
                connectedTo,
            });
        }
    }
    return obstacles;
};
const isPointInsideObstacle = (point, obstacle, layer, margin) => {
    if (!obstacle.layers?.includes(layer) || !obstacle.center)
        return false;
    const angle = -((obstacle.ccwRotationDegrees ?? 0) * Math.PI) / 180;
    const dx = point.x - obstacle.center.x;
    const dy = point.y - obstacle.center.y;
    const localX = dx * Math.cos(angle) - dy * Math.sin(angle);
    const localY = dx * Math.sin(angle) + dy * Math.cos(angle);
    return (Math.abs(localX) <= (obstacle.width ?? 0) / 2 + margin &&
        Math.abs(localY) <= (obstacle.height ?? 0) / 2 + margin);
};
class MinHeap {
    entries = [];
    push(value, priority) {
        this.entries.push({ value, priority });
        let index = this.entries.length - 1;
        while (index > 0) {
            const parent = Math.floor((index - 1) / 2);
            if (this.entries[parent].priority <= priority)
                break;
            this.entries[index] = this.entries[parent];
            index = parent;
        }
        this.entries[index] = { value, priority };
    }
    pop() {
        if (this.entries.length === 0)
            return undefined;
        const first = this.entries[0].value;
        const last = this.entries.pop();
        if (!last || this.entries.length === 0)
            return first;
        let index = 0;
        while (true) {
            const left = index * 2 + 1;
            const right = left + 1;
            if (left >= this.entries.length)
                break;
            const child = right < this.entries.length &&
                this.entries[right].priority < this.entries[left].priority
                ? right
                : left;
            if (this.entries[child].priority >= last.priority)
                break;
            this.entries[index] = this.entries[child];
            index = child;
        }
        this.entries[index] = last;
        return first;
    }
    get size() {
        return this.entries.length;
    }
}
const simplifyGridPath = (points) => {
    if (points.length < 3)
        return points;
    const result = [points[0]];
    for (let index = 1; index < points.length - 1; index++) {
        const previous = result[result.length - 1];
        const current = points[index];
        const next = points[index + 1];
        const firstDx = Math.sign(current.x - previous.x);
        const firstDy = Math.sign(current.y - previous.y);
        const nextDx = Math.sign(next.x - current.x);
        const nextDy = Math.sign(next.y - current.y);
        if (firstDx !== nextDx || firstDy !== nextDy)
            result.push(current);
    }
    result.push(points[points.length - 1]);
    return result;
};
const findSignalLayerPath = (input, start, end, obstacles, layer = "inner5") => {
    const step = 0.25;
    const bounds = input.bounds;
    const minX = bounds.minX + 0.75;
    const minY = bounds.minY + 0.75;
    const maxIx = Math.floor((bounds.maxX - 0.75 - minX) / step);
    const maxIy = Math.floor((bounds.maxY - 0.75 - minY) / step);
    const toGrid = (point) => ({
        ix: Math.round((point.x - minX) / step),
        iy: Math.round((point.y - minY) / step),
    });
    const toPoint = ({ ix, iy }) => ({
        x: minX + ix * step,
        y: minY + iy * step,
    });
    const startGrid = toGrid(start);
    const endGrid = toGrid(end);
    const key = (ix, iy) => `${ix}:${iy}`;
    const startKey = key(startGrid.ix, startGrid.iy);
    const endKey = key(endGrid.ix, endGrid.iy);
    const blockedCache = new Map();
    const isBlocked = (ix, iy) => {
        const cellKey = key(ix, iy);
        if (cellKey === startKey || cellKey === endKey)
            return false;
        const cached = blockedCache.get(cellKey);
        if (cached !== undefined)
            return cached;
        const point = toPoint({ ix, iy });
        const blocked = obstacles.some((obstacle) => isPointInsideObstacle(point, obstacle, layer, 0.13));
        blockedCache.set(cellKey, blocked);
        return blocked;
    };
    const open = new MinHeap();
    const cost = new Map([[startKey, 0]]);
    const previous = new Map();
    open.push(startGrid, 0);
    const directions = [
        [1, 0], [-1, 0], [0, 1], [0, -1],
        [1, 1], [1, -1], [-1, 1], [-1, -1],
    ];
    let iterations = 0;
    while (open.size > 0 && iterations++ < 250_000) {
        const current = open.pop();
        const currentKey = key(current.ix, current.iy);
        if (currentKey === endKey)
            break;
        for (const [dx, dy] of directions) {
            const ix = current.ix + dx;
            const iy = current.iy + dy;
            if (ix < 0 || iy < 0 || ix > maxIx || iy > maxIy || isBlocked(ix, iy)) {
                continue;
            }
            const nextKey = key(ix, iy);
            const nextCost = (cost.get(currentKey) ?? Infinity) + (dx !== 0 && dy !== 0 ? Math.SQRT2 : 1);
            if (nextCost >= (cost.get(nextKey) ?? Infinity))
                continue;
            cost.set(nextKey, nextCost);
            previous.set(nextKey, currentKey);
            const heuristic = Math.hypot(endGrid.ix - ix, endGrid.iy - iy);
            open.push({ ix, iy }, nextCost + heuristic);
        }
    }
    if (!previous.has(endKey) && startKey !== endKey) {
        throw new Error(`Custom ${layer} grid router found no collision-free path`);
    }
    const gridPath = [endKey];
    while (gridPath[gridPath.length - 1] !== startKey) {
        const parent = previous.get(gridPath[gridPath.length - 1]);
        if (!parent)
            throw new Error(`Custom ${layer} path reconstruction failed`);
        gridPath.push(parent);
    }
    return simplifyGridPath(gridPath.reverse().map((cellKey) => {
        const [ix, iy] = cellKey.split(":").map(Number);
        return toPoint({ ix, iy });
    }));
};
const CLASS_PRIORITY = {
    ddr: 0,
    clock: 1,
    sd: 2,
    "reset-control": 3,
    "usb-power": 4,
    power: 5,
    ground: 6,
    general: 7,
};
const connectionSearchText = (connection) => [
    connection.name,
    connection.rootConnectionName,
    connection.netConnectionName,
    connection.__netConnectionName,
    ...(connection.mergedConnectionNames ?? []),
    ...(connection.__rootConnectionNames ?? []),
]
    .filter(Boolean)
    .join(" ")
    .toUpperCase();
const classifyAm62lConnection = (connection) => {
    const text = connectionSearchText(connection);
    if (/DDR0_|LPDDR|VDD_DDR/.test(text))
        return "ddr";
    if (/OSC_|XRCGB|_CK0|_DQS/.test(text))
        return "clock";
    if (/SD_PWR/.test(text))
        return "reset-control";
    if (/SD_3V3|SD_IO|SD_LOADSW|CAP_VDDS_MMC1/.test(text))
        return "power";
    if (/SD_|MMC1/.test(text))
        return "sd";
    if (/USB_|VBUS|TUSB|EFUSE|PROTECTED_5V|AON_3V3/.test(text)) {
        return "usb-power";
    }
    if (/POR|RESET|BOOTMODE|PMIC_|WAKEUP|UART|I2C/.test(text)) {
        return "reset-control";
    }
    if (/GND|VSS/.test(text))
        return "ground";
    if (/VDD|VDDA|CAP_|3V3|1V8|0V75|_SW|_LX/.test(text))
        return "power";
    return "general";
};
const getBounds = (connection) => {
    const points = connection.pointsToConnect;
    return {
        minX: Math.min(...points.map((point) => point.x)),
        maxX: Math.max(...points.map((point) => point.x)),
        minY: Math.min(...points.map((point) => point.y)),
        maxY: Math.max(...points.map((point) => point.y)),
    };
};
const boundsOverlap = (first, second) => first.minX <= second.maxX &&
    first.maxX >= second.minX &&
    first.minY <= second.maxY &&
    first.maxY >= second.minY;
const manhattanSpan = (connection) => {
    const bounds = getBounds(connection);
    return bounds.maxX - bounds.minX + bounds.maxY - bounds.minY;
};
/**
 * Estimate route contention before invoking the geometric solver. Connections
 * whose endpoint envelopes overlap many other envelopes are routed first so
 * later, easier nets can flow around the committed critical paths.
 */
const conflictScore = (connection, allConnections) => {
    const bounds = getBounds(connection);
    let score = 0;
    for (const candidate of allConnections) {
        if (candidate === connection)
            continue;
        if (boundsOverlap(bounds, getBounds(candidate)))
            score += 1;
    }
    return score;
};
const orderAm62lConnections = (connections) => {
    const scoreByConnection = new Map(connections.map((connection) => [
        connection,
        conflictScore(connection, connections),
    ]));
    return [...connections].sort((first, second) => {
        const firstSpan = manhattanSpan(first);
        const secondSpan = manhattanSpan(second);
        const firstIsLocal = firstSpan <= 8;
        const secondIsLocal = secondSpan <= 8;
        if (firstIsLocal !== secondIsLocal)
            return firstIsLocal ? -1 : 1;
        if (firstIsLocal && secondIsLocal) {
            const localSpanDelta = firstSpan - secondSpan;
            if (Math.abs(localSpanDelta) > 1e-9)
                return localSpanDelta;
        }
        const classDelta = CLASS_PRIORITY[classifyAm62lConnection(first)] -
            CLASS_PRIORITY[classifyAm62lConnection(second)];
        if (classDelta !== 0)
            return classDelta;
        const conflictDelta = (scoreByConnection.get(second) ?? 0) -
            (scoreByConnection.get(first) ?? 0);
        if (conflictDelta !== 0)
            return conflictDelta;
        const spanDelta = secondSpan - firstSpan;
        if (Math.abs(spanDelta) > 1e-9)
            return spanDelta;
        return first.name.localeCompare(second.name);
    });
};
/**
 * Convert a multi-terminal electrical net into a deterministic minimum-span
 * tree of two-point routing branches.  This preserves one logical net name,
 * while avoiding the capacity solver's expensive all-terminals-at-once search.
 */
const expandConnectionsIntoMinimumSpanBranches = (connections) => {
    const expanded = [];
    for (const connection of connections) {
        const points = connection.pointsToConnect;
        if (points.length <= 2) {
            expanded.push({
                ...connection,
                __originalConnectionName: connection.name,
                __originalPointCount: points.length,
                mergedConnectionNames: [
                    connection.name,
                    ...(connection.mergedConnectionNames ?? []),
                ],
            });
            continue;
        }
        const edges = [];
        const inTree = new Set([0]);
        while (inTree.size < points.length) {
            let best;
            for (const from of inTree) {
                for (let to = 0; to < points.length; to++) {
                    if (inTree.has(to))
                        continue;
                    const layerPenalty = points[from].layer === points[to].layer ? 0 : 2;
                    const cost = Math.abs(points[from].x - points[to].x) +
                        Math.abs(points[from].y - points[to].y) +
                        layerPenalty;
                    if (!best ||
                        cost < best.cost - 1e-9 ||
                        (Math.abs(cost - best.cost) < 1e-9 &&
                            `${from}:${to}` < `${best.from}:${best.to}`))
                        best = { from, to, cost };
                }
            }
            if (!best)
                throw new Error(`Could not branch net ${connection.name}`);
            edges.push([best.from, best.to]);
            inTree.add(best.to);
        }
        const branchNames = edges.map((_, index) => `${connection.name}__branch_${index + 1}`);
        for (const [index, [from, to]] of edges.entries()) {
            expanded.push({
                ...connection,
                name: branchNames[index],
                rootConnectionName: connection.rootConnectionName ?? connection.name,
                __originalConnectionName: connection.name,
                __originalPointCount: points.length,
                mergedConnectionNames: [
                    connection.name,
                    ...branchNames,
                    ...(connection.mergedConnectionNames ?? []),
                ],
                pointsToConnect: [points[from], points[to]],
            });
        }
    }
    return expanded;
};
const distance = (first, second) => Math.hypot(first.x - second.x, first.y - second.y);
const getComponentCenterForPort = (input, point) => {
    if (!point.pointId)
        return undefined;
    const obstacles = (input.obstacles ?? []);
    const portObstacle = obstacles.find((obstacle) => obstacle.center &&
        distance(obstacle.center, point) < 0.03 &&
        obstacle.connectedTo?.includes(point.pointId));
    if (!portObstacle?.componentId)
        return undefined;
    const componentObstacles = obstacles.filter((obstacle) => obstacle.componentId === portObstacle.componentId && obstacle.center);
    // The AM62L package contributes hundreds of ball obstacles. This guard keeps
    // the coordinate matcher from treating a peripheral IC as the SoC.
    if (componentObstacles.length < 300)
        return undefined;
    const xs = componentObstacles.map((obstacle) => obstacle.center.x);
    const ys = componentObstacles.map((obstacle) => obstacle.center.y);
    return {
        x: (Math.min(...xs) + Math.max(...xs)) / 2,
        y: (Math.min(...ys) + Math.max(...ys)) / 2,
    };
};
const prepareTiMmc1Escapes = (input) => {
    const escapeTraces = [];
    const connections = input.connections.map((connection) => {
        let match;
        const points = connection.pointsToConnect;
        for (const [pointIndex, point] of points.entries()) {
            const center = getComponentCenterForPort(input, point);
            if (!center)
                continue;
            for (const [signal, escape] of Object.entries(TI_AM62L_EVM_MMC1_ESCAPES)) {
                const start = escape.route.find((candidate) => candidate.route_type === "wire");
                if (!start)
                    continue;
                if (distance(point, { x: center.x + start.x, y: center.y + start.y }) <
                    0.03) {
                    match = { pointIndex, center, signal, escape };
                    break;
                }
            }
            if (match)
                break;
        }
        if (!match)
            return connection;
        const alignedRoute = match.escape.route.map((point) => ({
            ...point,
            x: point.x + match.center.x,
            y: point.y + match.center.y,
        }));
        const finalWire = [...alignedRoute]
            .reverse()
            .find((point) => point.route_type === "wire");
        if (!finalWire || finalWire.route_type !== "wire") {
            throw new Error(`TI ${match.signal} escape has no wire exit`);
        }
        const originalPoint = points[match.pointIndex];
        const syntheticPointId = `ti_mmc1_escape:${match.signal}:${connection.name}:${originalPoint.pointId}`;
        const transformedPoints = [...points];
        transformedPoints[match.pointIndex] = {
            x: finalWire.x,
            y: finalWire.y,
            layer: finalWire.layer,
            pointId: syntheticPointId,
        };
        const connectedTo = [
            connection.name,
            connection.rootConnectionName,
            connection.netConnectionName,
            connection.__netConnectionName,
            originalPoint.pointId,
            originalPoint.pcb_port_id,
            syntheticPointId,
        ].filter((id) => Boolean(id));
        const firstWire = alignedRoute.find((point) => point.route_type === "wire");
        const lastWire = [...alignedRoute]
            .reverse()
            .find((point) => point.route_type === "wire");
        if (firstWire?.route_type === "wire" && originalPoint.pcb_port_id) {
            firstWire.start_pcb_port_id =
                originalPoint.pcb_port_id;
        }
        if (lastWire?.route_type === "wire") {
            lastWire.end_pcb_port_id =
                syntheticPointId;
        }
        escapeTraces.push({
            type: "pcb_trace",
            pcb_trace_id: `ti_mmc1_escape_${match.signal}_${connection.name}`,
            connection_name: connection.name,
            connectsTo: connectedTo,
            route: alignedRoute,
        });
        return { ...connection, pointsToConnect: transformedPoints };
    });
    return {
        input: { ...input, connections: connections },
        escapeTraces,
    };
};
/**
 * Dense BGAs are escaped before the global route. Keep every pad as a copper
 * obstacle, but do not ask Pipeline 7 to build a second component-local mesh
 * around hundreds of pads and then merge it across the fixed fanout copper.
 */
const useGlobalTopologyForDenseComponents = (input) => {
    const obstacleCountByComponent = new Map();
    for (const obstacle of input.obstacles) {
        if (!obstacle.componentId)
            continue;
        obstacleCountByComponent.set(obstacle.componentId, (obstacleCountByComponent.get(obstacle.componentId) ?? 0) + 1);
    }
    const denseComponentIds = new Set([...obstacleCountByComponent.entries()]
        .filter(([, obstacleCount]) => obstacleCount >= 64)
        .map(([componentId]) => componentId));
    return {
        ...input,
        obstacles: input.obstacles.map((obstacle) => {
            if (!obstacle.componentId || !denseComponentIds.has(obstacle.componentId)) {
                return obstacle;
            }
            const globalObstacle = { ...obstacle };
            delete globalObstacle.componentId;
            return globalObstacle;
        }),
    };
};
const prepareSdInner5Trunks = (input, connections, initialTraces) => {
    const remaining = [];
    const trunkConnections = [];
    for (const connection of connections) {
        const points = connection.pointsToConnect;
        const hasTiEscape = points.some((point) => point.pointId?.startsWith("ti_mmc1_escape:"));
        if (hasTiEscape && points.length === 2 && manhattanSpan(connection) > 8) {
            trunkConnections.push(connection);
        }
        else {
            remaining.push(connection);
        }
    }
    trunkConnections.sort((first, second) => first.name.localeCompare(second.name));
    const traces = [...initialTraces];
    for (const connection of trunkConnections) {
        const points = connection.pointsToConnect;
        const start = points.find((point) => point.pointId?.startsWith("ti_mmc1_escape:"));
        const end = points.find((point) => point !== start);
        const startAccess = { x: start.x, y: start.y };
        const endAccess = { x: end.x, y: end.y + (end.y >= 0 ? -1 : 1) };
        const logicalName = connection.__originalConnectionName ?? connection.name;
        const committed = [
            ...(input.traces ?? []),
            ...traces,
        ].filter((trace) => trace.connection_name !== logicalName);
        const obstacles = [
            ...(input.obstacles ?? []),
            ...getTraceObstacles(committed, input.layerCount),
        ];
        let signalLayer = "inner5";
        let gridPath;
        try {
            gridPath = findSignalLayerPath(input, startAccess, endAccess, obstacles, signalLayer);
        }
        catch {
            signalLayer = "inner2";
            try {
                gridPath = findSignalLayerPath(input, startAccess, endAccess, obstacles, signalLayer);
            }
            catch (caught) {
                const message = caught instanceof Error ? caught.message : String(caught);
                throw new Error(`${connection.name}: ${message}`);
            }
        }
        const route = [
            {
                route_type: "wire",
                x: start.x,
                y: start.y,
                width: 0.09398,
                layer: start.layer,
            },
        ];
        if (start.layer !== signalLayer) {
            route.push({
                route_type: "via",
                x: startAccess.x,
                y: startAccess.y,
                from_layer: "top",
                to_layer: "bottom",
                via_diameter: 0.4572,
                via_hole_diameter: 0.2032,
            });
        }
        route.push(...gridPath.map((point) => ({
            route_type: "wire",
            x: point.x,
            y: point.y,
            width: 0.09398,
            layer: signalLayer,
        })));
        if (end.layer !== signalLayer) {
            route.push({
                route_type: "via",
                x: endAccess.x,
                y: endAccess.y,
                from_layer: "top",
                to_layer: "bottom",
                via_diameter: 0.4572,
                via_hole_diameter: 0.2032,
            });
        }
        route.push({
            route_type: "wire",
            x: endAccess.x,
            y: endAccess.y,
            width: 0.08128,
            layer: end.layer,
        }, {
            route_type: "wire",
            x: end.x,
            y: end.y,
            width: 0.08128,
            layer: end.layer,
        });
        traces.push({
            type: "pcb_trace",
            pcb_trace_id: `custom_sd_trunk_${connection.name}`,
            connection_name: logicalName,
            connectsTo: [
                connection.name,
                logicalName,
                ...(connection.mergedConnectionNames ?? []),
                ...points.flatMap((point) => [point.pointId, point.pcb_port_id]),
            ].filter((id) => Boolean(id)),
            route,
        });
    }
    return { connections: remaining, traces };
};
const getPortComponentGeometry = (input, point) => {
    const pointIds = [point.pointId, point.pcb_port_id].filter((id) => Boolean(id));
    const obstacles = (input.obstacles ?? []);
    const portObstacle = obstacles.find((obstacle) => obstacle.center &&
        distance(obstacle.center, point) < 0.04 &&
        obstacle.connectedTo?.some((id) => pointIds.includes(id))) ?? obstacles.find(
    // Generated multi-terminal power branches do not always retain the
    // original pcb_port id.  Coordinate matching is still unambiguous at the
    // package pad centre and prevents the PTH fallback from becoming
    // via-in-pad when that metadata is absent.
    (obstacle) => obstacle.componentId &&
        obstacle.center &&
        distance(obstacle.center, point) < 0.04);
    if (!portObstacle?.componentId)
        return undefined;
    const componentObstacles = obstacles.filter((obstacle) => obstacle.componentId === portObstacle.componentId && obstacle.center);
    if (componentObstacles.length === 0)
        return undefined;
    const minX = Math.min(...componentObstacles.map((obstacle) => obstacle.center.x - (obstacle.width ?? 0) / 2));
    const maxX = Math.max(...componentObstacles.map((obstacle) => obstacle.center.x + (obstacle.width ?? 0) / 2));
    const minY = Math.min(...componentObstacles.map((obstacle) => obstacle.center.y - (obstacle.height ?? 0) / 2));
    const maxY = Math.max(...componentObstacles.map((obstacle) => obstacle.center.y + (obstacle.height ?? 0) / 2));
    return {
        componentId: portObstacle.componentId,
        center: { x: (minX + maxX) / 2, y: (minY + maxY) / 2 },
        obstacleCount: componentObstacles.length,
    };
};
const getDogboneAccessPoint = (input, point, otherPoint, obstacles, requireAllLayerPth = false) => {
    const geometry = getPortComponentGeometry(input, point);
    if (!geometry)
        return { x: point.x, y: point.y };
    const rawDirection = {
        x: point.x - geometry.center.x,
        y: point.y - geometry.center.y,
    };
    const fallbackDirection = {
        x: point.x - otherPoint.x,
        y: point.y - otherPoint.y,
    };
    const magnitude = Math.hypot(rawDirection.x, rawDirection.y);
    const fallbackMagnitude = Math.hypot(fallbackDirection.x, fallbackDirection.y);
    const direction = magnitude > 0.05
        ? { x: rawDirection.x / magnitude, y: rawDirection.y / magnitude }
        : fallbackMagnitude > 0.05
            ? {
                x: fallbackDirection.x / fallbackMagnitude,
                y: fallbackDirection.y / fallbackMagnitude,
            }
            : { x: 1, y: 0 };
    const ownIds = [point.pointId, point.pcb_port_id].filter((id) => Boolean(id));
    let leastConflictingCandidate;
    const angularStep = 10;
    const angleOffsets = Array.from({ length: Math.ceil(360 / angularStep) }, (_, index) => {
        if (index === 0)
            return 0;
        const magnitude = Math.ceil(index / 2) * angularStep;
        return index % 2 === 1 ? magnitude : -magnitude;
    });
    // A 0.4572 mm PTH plus the 0.08128 mm manufacturing clearance needs about
    // 0.31 mm of radial keepout.  Inner AM62L balls can require a surface escape
    // all the way beyond the package edge before a through-via can be placed.
    for (const distanceFromPad of [
        0.6, 0.8, 1, 1.25, 1.5, 2, 2.5, 3, 4, 5, 6, 7, 8, 10, 12, 15,
    ]) {
        for (const angleOffset of angleOffsets) {
            const angle = (angleOffset * Math.PI) / 180;
            const rotated = {
                x: direction.x * Math.cos(angle) - direction.y * Math.sin(angle),
                y: direction.x * Math.sin(angle) + direction.y * Math.cos(angle),
            };
            const candidate = {
                x: point.x + rotated.x * distanceFromPad,
                y: point.y + rotated.y * distanceFromPad,
            };
            const blockerCount = obstacles.reduce((count, obstacle) => {
                if (obstacle.connectedTo?.some((id) => ownIds.includes(id))) {
                    return count;
                }
                const blocked = requireAllLayerPth
                    ? (obstacle.layers ?? []).some((layer) => isPointInsideObstacle(candidate, obstacle, layer, 0.31))
                    : isPointInsideObstacle(candidate, obstacle, point.layer, 0.13);
                return count + (blocked ? 1 : 0);
            }, 0);
            if (blockerCount === 0)
                return candidate;
            if (requireAllLayerPth &&
                (!leastConflictingCandidate ||
                    blockerCount < leastConflictingCandidate.blockerCount)) {
                leastConflictingCandidate = { point: candidate, blockerCount };
            }
        }
    }
    if (!requireAllLayerPth) {
        return {
            x: point.x + direction.x,
            y: point.y + direction.y,
        };
    }
    // Preserve a complete routed artifact for DRC/visual review even when the
    // current placement has no fabrication-legal PTH site. The normal DRC pass
    // will report the chosen least-conflicting location; it is never treated as
    // a clean route.
    if (leastConflictingCandidate)
        return leastConflictingCandidate.point;
    throw new Error(`No PTH candidate generated near (${point.x}, ${point.y})`);
};
/**
 * Complete deterministic point-to-point peripheral branches. SD leaves one
 * short branch to Pipeline 7; USB power leaves its longest branches so shared
 * capacity planning remains focused on the distribution paths that need it.
 */
const prepareCustomBranches = (input, connections, initialTraces, phase) => {
    // Pipeline 7's final short SD branch is nondeterministic on this dense
    // placement and can exhaust iterations. Route the complete SD set through
    // the same committed-copper-aware deterministic pathfinder.
    const pipelineConnections = [];
    const customConnections = phase === "power"
        ? [...connections].sort((first, second) => {
            const firstHasBottom = first.pointsToConnect.some((point) => point.layer === "bottom");
            const secondHasBottom = second.pointsToConnect.some((point) => point.layer === "bottom");
            if (firstHasBottom !== secondHasBottom)
                return firstHasBottom ? -1 : 1;
            return (manhattanSpan(first) - manhattanSpan(second) ||
                first.name.localeCompare(second.name));
        })
        : connections;
    const traces = [...initialTraces];
    for (const connection of customConnections) {
        const points = connection.pointsToConnect;
        if (points.length <= 1)
            continue;
        if (points.length !== 2) {
            throw new Error(`Custom ${phase} branch ${connection.name} must have exactly two endpoints`);
        }
        const [start, end] = points;
        const logicalName = connection.__originalConnectionName ?? connection.name;
        const committed = [
            ...(input.traces ?? []),
            ...traces,
        ].filter((trace) => trace.connection_name !== logicalName);
        const obstacles = [
            ...(input.obstacles ?? []),
            ...getTraceObstacles(committed, input.layerCount),
        ];
        const hasDenseBgaEndpoint = phase === "power" &&
            [start, end].some((point) => (getPortComponentGeometry(input, point)?.obstacleCount ?? 0) >= 64);
        const surfaceSpanLimit = hasDenseBgaEndpoint ? 15 : Number.POSITIVE_INFINITY;
        const localSurfaceLayer = start.layer === end.layer &&
            (start.layer === "top" || start.layer === "bottom") &&
            manhattanSpan(connection) <= surfaceSpanLimit
            ? start.layer
            : undefined;
        const requiresAllLayerPth = phase === "power" && !localSurfaceLayer;
        const startAccess = getDogboneAccessPoint(input, start, end, obstacles, requiresAllLayerPth);
        const endAccess = getDogboneAccessPoint(input, end, start, obstacles, requiresAllLayerPth);
        let selected;
        let lastError;
        const candidateLayers = [];
        if (localSurfaceLayer)
            candidateLayers.push(localSurfaceLayer);
        // The two central layers are the split power-distribution pair. Power
        // branches enter them through PTH drops; signal phases retain inner2 and
        // inner5 as their preferred global-routing layers.
        if (phase === "power") {
            candidateLayers.push("inner3", "inner4", "bottom", "top", "inner5", "inner2");
        }
        else {
            candidateLayers.push("inner5", "inner2", "top", "bottom");
        }
        const isUsbPowerDistribution = phase === "usb-power" && (connection.__originalPointCount ?? 0) >= 8;
        if (isUsbPowerDistribution)
            candidateLayers.push("inner3");
        if (!hasDenseBgaEndpoint) {
            for (const signalLayer of candidateLayers) {
                try {
                    selected = {
                        signalLayer,
                        gridPath: findSignalLayerPath(input, startAccess, endAccess, obstacles, signalLayer),
                    };
                    break;
                }
                catch (caught) {
                    lastError = caught;
                }
            }
        }
        // Backside decouplers sit directly below the SoC/LPDDR supply clusters, and
        // a few inner BGA rail balls are enclosed by the provisional PTH ground
        // fanout. Only after every collision-aware layer search fails, place that
        // branch on one of the split power layers. Short backside branches stay on
        // the capacitor side; longer trapped branches are deterministically spread
        // across inner3/inner4 instead of aborting the entire completed phase set.
        if (!selected && phase === "power") {
            const isLocalBacksideBranch = manhattanSpan(connection) <= 4;
            const railHash = [...logicalName].reduce((hash, character) => (hash * 33 + character.charCodeAt(0)) >>> 0, 5381);
            const signalLayer = isLocalBacksideBranch
                ? start.layer === "bottom" || end.layer === "bottom"
                    ? "bottom"
                    : "inner4"
                : railHash % 2 === 0
                    ? "inner3"
                    : "inner4";
            const elbow = railHash % 2 === 0
                ? { x: endAccess.x, y: startAccess.y }
                : { x: startAccess.x, y: endAccess.y };
            selected = {
                signalLayer,
                gridPath: [
                    startAccess,
                    elbow,
                    endAccess,
                ],
            };
        }
        if (!selected) {
            const message = lastError instanceof Error ? lastError.message : String(lastError);
            throw new Error(`${connection.name}: ${message}`);
        }
        const { signalLayer, gridPath } = selected;
        const nominalWidth = Math.max(connection.nominalTraceWidth ?? 0.08128, isUsbPowerDistribution ? 0.3 : 0, phase === "power"
            ? (connection.__originalPointCount ?? 0) >= 8
                ? 0.25
                : 0.15
            : 0, 0.08128);
        const route = [
            {
                route_type: "wire",
                x: start.x,
                y: start.y,
                width: nominalWidth,
                layer: start.layer,
            },
            {
                route_type: "wire",
                x: startAccess.x,
                y: startAccess.y,
                width: nominalWidth,
                layer: start.layer,
            },
        ];
        if (start.layer !== signalLayer) {
            route.push({
                route_type: "via",
                x: startAccess.x,
                y: startAccess.y,
                from_layer: "top",
                to_layer: "bottom",
                via_diameter: 0.4572,
                via_hole_diameter: 0.2032,
            });
        }
        route.push(...gridPath.map((point) => ({
            route_type: "wire",
            x: point.x,
            y: point.y,
            width: Math.max(nominalWidth, 0.09398),
            layer: signalLayer,
        })));
        if (end.layer !== signalLayer) {
            route.push({
                route_type: "via",
                x: endAccess.x,
                y: endAccess.y,
                from_layer: "top",
                to_layer: "bottom",
                via_diameter: 0.4572,
                via_hole_diameter: 0.2032,
            });
        }
        route.push({
            route_type: "wire",
            x: endAccess.x,
            y: endAccess.y,
            width: nominalWidth,
            layer: end.layer,
        }, {
            route_type: "wire",
            x: end.x,
            y: end.y,
            width: nominalWidth,
            layer: end.layer,
        });
        const firstWire = route.find((point) => point.route_type === "wire");
        const lastWire = [...route]
            .reverse()
            .find((point) => point.route_type === "wire");
        if (firstWire?.route_type === "wire" && start.pcb_port_id) {
            firstWire
                .start_pcb_port_id = start.pcb_port_id;
        }
        if (lastWire?.route_type === "wire" && end.pcb_port_id) {
            lastWire
                .end_pcb_port_id = end.pcb_port_id;
        }
        traces.push({
            type: "pcb_trace",
            pcb_trace_id: `custom_${phase}_branch_${connection.name}`,
            connection_name: logicalName,
            connectsTo: [
                connection.name,
                logicalName,
                ...(connection.mergedConnectionNames ?? []),
                ...points.flatMap((point) => [point.pointId, point.pcb_port_id]),
            ].filter((id) => Boolean(id)),
            route,
        });
    }
    return {
        connections: pipelineConnections,
        traces,
    };
};
/**
 * Replays TI's shared package-local DGND breakout for U1/U2, then converts
 * every remaining peripheral ground pad into a small independent plane-drop
 * connection. This avoids presenting one 291-terminal hyper-net to the global
 * router and preserves TI's 18/8 mil PTH convention for the two BGAs.
 */
const prepareTiGroundPlaneFanout = (input, options = {}) => {
    const { denseBga = true, peripheral = true } = options;
    const groundConnection = input.connections.find((connection) => connection.pointsToConnect.length >= 200);
    if (!groundConnection)
        return { input, traces: [] };
    const obstacles = (input.obstacles ?? []);
    const groups = new Map();
    for (const obstacle of obstacles) {
        if (!obstacle.componentId || !obstacle.center)
            continue;
        const members = groups.get(obstacle.componentId) ?? [];
        members.push(obstacle);
        groups.set(obstacle.componentId, members);
    }
    const denseComponents = [...groups.entries()]
        .filter(([, members]) => members.length >= 150)
        .map(([componentId, members]) => {
        const xs = members.map((member) => member.center.x);
        const ys = members.map((member) => member.center.y);
        return {
            componentId,
            obstacleCount: members.length,
            center: {
                x: (Math.min(...xs) + Math.max(...xs)) / 2,
                y: (Math.min(...ys) + Math.max(...ys)) / 2,
            },
        };
    })
        .sort((first, second) => second.obstacleCount - first.obstacleCount);
    const componentCenters = {
        U1: denseComponents[0]?.center ?? { x: 2, y: 1 },
        U2: denseComponents[1]?.center ?? { x: 22.117, y: 0.949 },
    };
    const planeAnchor = `${groundConnection.name}:inner1-ground-plane`;
    const fanoutTraces = [];
    if (denseBga) {
        for (const [segmentIndex, segment] of TI_AM62L_EVM_GROUND_FANOUT.segments.entries()) {
            const center = componentCenters[segment.component];
            fanoutTraces.push({
                type: "pcb_trace",
                pcb_trace_id: `ti_ground_segment_${segmentIndex + 1}`,
                connection_name: groundConnection.name,
                connectsTo: [groundConnection.name, planeAnchor],
                route: [
                    {
                        route_type: "wire",
                        x: center.x + segment.x1,
                        y: center.y + segment.y1,
                        width: segment.width,
                        layer: "top",
                    },
                    {
                        route_type: "wire",
                        x: center.x + segment.x2,
                        y: center.y + segment.y2,
                        width: segment.width,
                        layer: "top",
                    },
                ],
            });
        }
        for (const [viaIndex, via] of TI_AM62L_EVM_GROUND_FANOUT.vias.entries()) {
            const center = componentCenters[via.component];
            const x = center.x + via.x;
            const y = center.y + via.y;
            fanoutTraces.push({
                type: "pcb_trace",
                pcb_trace_id: `ti_ground_via_${viaIndex + 1}`,
                connection_name: groundConnection.name,
                connectsTo: [groundConnection.name, planeAnchor],
                route: [
                    {
                        route_type: "wire",
                        x,
                        y,
                        width: 0.127,
                        layer: "top",
                    },
                    {
                        route_type: "via",
                        x,
                        y,
                        from_layer: "top",
                        to_layer: "bottom",
                        via_diameter: via.diameter,
                        via_hole_diameter: via.holeDiameter,
                    },
                    {
                        route_type: "wire",
                        x,
                        y,
                        width: 0.127,
                        layer: "inner1",
                    },
                ],
            });
        }
    }
    const committedObstacles = [
        ...obstacles,
        ...getTraceObstacles([...(input.traces ?? []), ...fanoutTraces], input.layerCount),
    ];
    if (peripheral)
        for (const [pointIndex, point] of groundConnection.pointsToConnect.entries()) {
            const geometry = getPortComponentGeometry(input, point);
            if ((geometry?.obstacleCount ?? 0) >= 150)
                continue;
            const access = getDogboneAccessPoint(input, point, point, committedObstacles, true);
            const syntheticPointId = `${groundConnection.name}:plane-drop:${pointIndex + 1}`;
            const width = Math.max(groundConnection.nominalTraceWidth ?? 0.08128, 0.2);
            const route = [
                {
                    route_type: "wire",
                    x: point.x,
                    y: point.y,
                    width,
                    layer: point.layer,
                },
                {
                    route_type: "wire",
                    x: access.x,
                    y: access.y,
                    width,
                    layer: point.layer,
                },
                {
                    route_type: "via",
                    x: access.x,
                    y: access.y,
                    from_layer: "top",
                    to_layer: "bottom",
                    via_diameter: 0.4572,
                    via_hole_diameter: 0.2032,
                },
                {
                    route_type: "wire",
                    x: access.x,
                    y: access.y,
                    width,
                    layer: "inner1",
                },
            ];
            const firstWire = route[0];
            if (firstWire.route_type === "wire" && point.pcb_port_id) {
                firstWire
                    .start_pcb_port_id = point.pcb_port_id;
            }
            fanoutTraces.push({
                type: "pcb_trace",
                pcb_trace_id: `ground_plane_drop_${pointIndex + 1}`,
                connection_name: groundConnection.name,
                connectsTo: [
                    groundConnection.name,
                    planeAnchor,
                    point.pointId,
                    point.pcb_port_id,
                    syntheticPointId,
                ].filter((id) => Boolean(id)),
                route,
            });
        }
    return {
        input: {
            ...input,
            connections: input.connections.filter((connection) => connection !== groundConnection),
            traces: [
                ...(input.traces ?? []),
                ...fanoutTraces,
            ],
        },
        traces: fanoutTraces,
    };
};
const getWireEndpoint = (route, fromStart) => {
    const ordered = fromStart ? route : [...route].reverse();
    const point = ordered.find((candidate) => candidate.route_type === "wire");
    if (!point || point.route_type !== "wire") {
        throw new Error("TI EVM DDR route has no wire endpoint");
    }
    return point;
};
const reverseTiRoute = (route) => [...route].reverse().map((point) => point.route_type === "via"
    ? {
        ...point,
        from_layer: point.to_layer,
        to_layer: point.from_layer,
    }
    : point);
const findTiSignal = (connection) => {
    const text = connectionSearchText(connection);
    for (const signal of Object.keys(TI_AM62L_EVM_DDR_ROUTES).sort((first, second) => second.length - first.length)) {
        if (text.includes(signal.toUpperCase()))
            return signal;
    }
    if (text.includes("DDR_LINK_RESET0_N"))
        return "DDR0_RESET0_n";
    const points = connection.pointsToConnect;
    if (points.length !== 2)
        return undefined;
    const actualForward = {
        x: points[1].x - points[0].x,
        y: points[1].y - points[0].y,
    };
    const actualReverse = { x: -actualForward.x, y: -actualForward.y };
    const candidates = Object.entries(TI_AM62L_EVM_DDR_ROUTES)
        .map(([signal, reference]) => {
        const start = getWireEndpoint(reference.route, true);
        const end = getWireEndpoint(reference.route, false);
        const expected = { x: end.x - start.x, y: end.y - start.y };
        return {
            signal,
            error: Math.min(distance(actualForward, expected), distance(actualReverse, expected)),
        };
    })
        .sort((first, second) => first.error - second.error);
    return candidates[0]?.error < 0.03 ? candidates[0].signal : undefined;
};
/**
 * Replays TI's released TMDS62LEVM U28-to-U29 escape topology after aligning
 * it to this board's two package endpoints.  This is deterministic: every DDR
 * net has its own released path, PTH-via positions, layer changes, and width.
 */
class TiEvmDdrAutorouter {
    input;
    isRouting = false;
    handlers = {
        complete: [],
        error: [],
        progress: [],
    };
    traces = [];
    constructor(input) {
        this.input = input;
    }
    solve() {
        const traces = [];
        const seenSignals = new Set();
        for (const connection of this.input.connections) {
            const signal = findTiSignal(connection);
            if (!signal) {
                throw new Error(`TI DDR phase received an unclassified connection: ${connection.name}`);
            }
            if (seenSignals.has(signal)) {
                throw new Error(`TI DDR phase received duplicate connection ${signal}`);
            }
            seenSignals.add(signal);
            const reference = TI_AM62L_EVM_DDR_ROUTES[signal];
            const points = connection.pointsToConnect;
            if (points.length !== 2) {
                throw new Error(`${signal} must be point-to-point; got ${points.length} endpoints`);
            }
            const referenceStart = getWireEndpoint(reference.route, true);
            const referenceEnd = getWireEndpoint(reference.route, false);
            const directError = distance({
                x: points[1].x - points[0].x,
                y: points[1].y - points[0].y,
            }, {
                x: referenceEnd.x - referenceStart.x,
                y: referenceEnd.y - referenceStart.y,
            });
            const reverseError = distance({
                x: points[0].x - points[1].x,
                y: points[0].y - points[1].y,
            }, {
                x: referenceEnd.x - referenceStart.x,
                y: referenceEnd.y - referenceStart.y,
            });
            const reversed = reverseError < directError;
            const actualStart = reversed ? points[1] : points[0];
            const actualEnd = reversed ? points[0] : points[1];
            const alignedRoute = reversed
                ? reverseTiRoute(reference.route)
                : [...reference.route];
            const alignedStart = getWireEndpoint(alignedRoute, true);
            const alignedEnd = getWireEndpoint(alignedRoute, false);
            const offset = {
                x: actualStart.x - alignedStart.x,
                y: actualStart.y - alignedStart.y,
            };
            const endpointError = distance(actualEnd, {
                x: alignedEnd.x + offset.x,
                y: alignedEnd.y + offset.y,
            });
            if (endpointError > 0.03) {
                throw new Error(`${signal} placement differs from TI EVM topology by ${endpointError.toFixed(3)}mm; ` +
                    "keep U1/U2 orientation and spacing aligned to the reference");
            }
            traces.push({
                type: "pcb_trace",
                pcb_trace_id: connection.name,
                connection_name: connection.name,
                connectsTo: points
                    .map((point) => point.pointId)
                    .filter((pointId) => Boolean(pointId)),
                route: alignedRoute.map((point) => point.route_type === "via"
                    ? {
                        ...point,
                        x: point.x + offset.x,
                        y: point.y + offset.y,
                        // TI specifies conventional PTH escape vias. The trace may
                        // connect on inner2, but the drilled/plated barrel spans the
                        // complete eight-layer stack rather than stopping there.
                        from_layer: "top",
                        to_layer: "bottom",
                    }
                    : {
                        ...point,
                        x: point.x + offset.x,
                        y: point.y + offset.y,
                    }),
            });
        }
        if (traces.length !== Object.keys(TI_AM62L_EVM_DDR_ROUTES).length) {
            throw new Error(`TI DDR phase routed ${traces.length}/` +
                `${Object.keys(TI_AM62L_EVM_DDR_ROUTES).length} released DDR nets`);
        }
        this.traces = traces;
        return traces;
    }
    start() {
        if (this.isRouting)
            return;
        this.isRouting = true;
        queueMicrotask(() => {
            try {
                const traces = this.solve();
                this.isRouting = false;
                for (const handler of this.handlers.progress) {
                    handler({
                        type: "progress",
                        steps: traces.length,
                        progress: 1,
                        phase: "ddr:ti-vca-reference",
                    });
                }
                for (const handler of this.handlers.complete) {
                    handler({ type: "complete", traces });
                }
            }
            catch (caught) {
                this.isRouting = false;
                const error = caught instanceof Error ? caught : new Error(String(caught));
                for (const handler of this.handlers.error)
                    handler({ type: "error", error });
            }
        });
    }
    stop() {
        this.isRouting = false;
    }
    on(event, callback) {
        this.handlers[event].push(callback);
    }
    solveSync() {
        return this.solve();
    }
    getOutputSimpleRouteJson() {
        if (this.traces.length === 0)
            return undefined;
        return {
            ...this.input,
            traces: [...(this.input.traces ?? []), ...this.traces],
        };
    }
}
class Am62lClassifiedAutorouter {
    input;
    phase;
    effort;
    isRouting = false;
    timer;
    solver;
    handlers = {
        complete: [],
        error: [],
        progress: [],
    };
    steps = 0;
    routedTraces;
    connectionBatches;
    batchIndex = 0;
    constructor(input, phase, effort, initialTraces = []) {
        this.input = input;
        this.phase = phase;
        this.effort = effort;
        this.routedTraces = [...initialTraces];
        const batchSize = this.phase === "usb-power" ? 1 : Infinity;
        this.connectionBatches = [];
        for (let startIndex = 0; startIndex < this.input.connections.length; startIndex += batchSize) {
            this.connectionBatches.push(this.input.connections.slice(startIndex, startIndex + batchSize));
        }
        this.startPipelineBatch();
    }
    startPipelineBatch() {
        const connections = this.connectionBatches[this.batchIndex];
        if (!connections || connections.length === 0) {
            this.solver = undefined;
            return;
        }
        this.solver = new AutoroutingPipelineSolver7_MultiGraph({
            ...this.input,
            connections,
            buses: [
                ...(this.input.buses ?? []),
                {
                    busId: `am62l_${this.phase}_batch_${this.batchIndex}`,
                    name: `${this.phase} signal-layer reservation`,
                    connectionNames: connections.map((connection) => connection.name),
                    allowedLayers: ["top", "inner2", "inner5", "bottom"],
                },
            ],
            traces: [
                ...(this.input.traces ?? []),
                ...this.routedTraces,
            ],
        }, {
            // Custom escape/trunk copper has already reduced the search space.
            // Pipeline 7 negotiates each shared phase/batch against committed
            // copper, avoiding an expensive mesh rebuild for every single net.
            effort: Math.min(this.effort, 1),
        });
    }
    acceptPipelineOutput() {
        if (!this.solver)
            return;
        const output = this.solver.getOutputSimpleRouteJson();
        const existingTraceIds = new Set([
            ...(this.input.traces ?? []).map((trace) => trace.pcb_trace_id),
            ...this.routedTraces.map((trace) => trace.pcb_trace_id),
        ]);
        const activeConnections = this.connectionBatches[this.batchIndex];
        const activeEndpointAliases = activeConnections.map((connection) => connection.pointsToConnect.map((point) => [point.pointId, point.pcb_port_id].filter((id) => Boolean(id))));
        const generatedTraces = (output.traces ?? [])
            .filter((trace) => {
            if (existingTraceIds.has(trace.pcb_trace_id))
                return false;
            const connectedIds = new Set(trace.connectsTo ?? []);
            return activeEndpointAliases.some((connectionEndpoints) => connectionEndpoints.every((endpointAliases) => endpointAliases.some((id) => connectedIds.has(id))));
        });
        if (generatedTraces.length === 0) {
            throw new Error(`Pipeline 7 batch ${this.batchIndex + 1} during ${this.phase} ` +
                "emitted no new traces");
        }
        this.routedTraces.push(...generatedTraces.map((trace, traceIndex) => ({
            ...trace,
            pcb_trace_id: `${trace.pcb_trace_id}_pipeline7_${this.phase}_` +
                `${this.batchIndex}_${traceIndex}`,
            connectsTo: [
                trace.connection_name,
                ...(trace.connectsTo ?? []),
            ].filter((id) => Boolean(id)),
        })));
        this.batchIndex += 1;
        this.solver = undefined;
        this.startPipelineBatch();
    }
    emitError(caught) {
        const error = caught instanceof Error ? caught : new Error(String(caught));
        for (const handler of this.handlers.error) {
            handler({ type: "error", error });
        }
    }
    async runChunk() {
        if (!this.isRouting)
            return;
        try {
            if (!this.solver) {
                this.isRouting = false;
                for (const handler of this.handlers.complete) {
                    handler({ type: "complete", traces: this.routedTraces });
                }
                return;
            }
            const startedAt = performance.now();
            while (performance.now() - startedAt < 150 &&
                !this.solver.solved &&
                !this.solver.failed) {
                const asyncSolver = this.solver;
                if (typeof asyncSolver.stepAsync === "function") {
                    await asyncSolver.stepAsync();
                }
                else {
                    this.solver.step();
                }
            }
            this.steps += 1;
            if (this.solver.failed) {
                this.isRouting = false;
                this.emitError(this.solver.error ??
                    `Pipeline 7 failed during ${this.phase}`);
                return;
            }
            if (this.solver.solved) {
                this.acceptPipelineOutput();
                this.timer = setTimeout(() => void this.runChunk(), 0);
                return;
            }
            for (const handler of this.handlers.progress) {
                const batchProgress = this.solver.progress ?? 0;
                handler({
                    type: "progress",
                    steps: this.steps,
                    progress: (this.batchIndex + batchProgress) /
                        Math.max(this.connectionBatches.length, 1),
                    phase: `${this.phase}:pipeline7:batch-${this.batchIndex + 1}/` +
                        `${this.connectionBatches.length}:` +
                        `${this.connectionBatches[this.batchIndex]?.length ?? 0}-branches:` +
                        this.solver.getCurrentPhase(),
                    debugGraphics: this.solver.preview?.(),
                });
            }
            this.timer = setTimeout(() => void this.runChunk(), 0);
        }
        catch (error) {
            this.isRouting = false;
            this.emitError(error);
        }
    }
    start() {
        if (this.isRouting)
            return;
        this.isRouting = true;
        void this.runChunk();
    }
    stop() {
        this.isRouting = false;
        this.solver?.stop?.();
        if (this.timer)
            clearTimeout(this.timer);
        this.timer = undefined;
    }
    on(event, callback) {
        this.handlers[event].push(callback);
    }
    solveSync() {
        while (this.solver) {
            this.solver.solve();
            if (this.solver.failed) {
                throw new Error(this.solver.error ?? `Pipeline 7 failed during ${this.phase}`);
            }
            this.acceptPipelineOutput();
        }
        return this.routedTraces;
    }
    getOutputSimpleRouteJson() {
        if (this.solver || this.batchIndex < this.connectionBatches.length) {
            return undefined;
        }
        return {
            ...this.input,
            traces: [...(this.input.traces ?? []), ...this.routedTraces],
        };
    }
}
/**
 * Final selective reroute pass. Pipeline 9 treats the already released TI DDR
 * geometry as immutable preloaded copper and rebuilds every selected
 * non-DDR connection around it. The joint-preload repair and generic length
 * matcher are deliberately omitted: the former is allowed to move the fixed
 * DDR copper, while the latter has no usable non-DDR timing groups and adds
 * minutes without improving DRC.
 */
class Am62lPipeline9RerouteAutorouter {
    input;
    fixedPhaseTraces;
    isRouting = false;
    timer;
    solver;
    inputConnectionNames;
    handlers = {
        complete: [],
        error: [],
        progress: [],
    };
    steps = 0;
    constructor(input, effort, fixedPhaseTraces = []) {
        this.input = input;
        this.fixedPhaseTraces = fixedPhaseTraces;
        this.inputConnectionNames = new Set(input.connections.flatMap((connection) => {
            const extended = connection;
            return [
                connection.name,
                connection.rootConnectionName,
                connection.netConnectionName,
                extended.__netConnectionName,
                ...(connection.mergedConnectionNames ?? []),
                ...(extended.__rootConnectionNames ?? []),
            ];
        }).filter((name) => Boolean(name)));
        this.solver = new AutoroutingPipelineSolver9_PreloadedTraceGraph(input, {
            effort: Math.max(1, effort),
        });
        this.solver.pipelineDef = this.solver.pipelineDef.filter((step) => step.solverName !== "pipeline9JointDrcRepairSolver" &&
            step.solverName !== "lengthMatchingPostProcessingSolver");
    }
    getSelectedOutputTraces() {
        return this.solver.getOutputSimplifiedPcbTraces().filter((trace) => {
            const aliases = [
                trace.connection_name,
                trace.pcb_trace_id,
                ...(trace.connectsTo ?? []),
            ];
            return aliases.some((alias) => alias ? this.inputConnectionNames.has(alias) : false);
        });
    }
    emitError(caught) {
        const error = caught instanceof Error ? caught : new Error(String(caught));
        for (const handler of this.handlers.error) {
            handler({ type: "error", error });
        }
    }
    async runChunk() {
        if (!this.isRouting)
            return;
        try {
            const startedAt = performance.now();
            while (performance.now() - startedAt < 150 &&
                !this.solver.solved &&
                !this.solver.failed) {
                const asyncSolver = this.solver;
                if (typeof asyncSolver.stepAsync === "function") {
                    await asyncSolver.stepAsync();
                }
                else {
                    this.solver.step();
                }
            }
            this.steps += 1;
            if (this.solver.failed) {
                this.isRouting = false;
                this.emitError(this.solver.error ?? "Pipeline 9 final reroute failed");
                return;
            }
            if (this.solver.solved) {
                this.isRouting = false;
                const traces = [
                    ...this.fixedPhaseTraces,
                    ...this.getSelectedOutputTraces(),
                ];
                for (const handler of this.handlers.complete) {
                    handler({ type: "complete", traces });
                }
                return;
            }
            for (const handler of this.handlers.progress) {
                handler({
                    type: "progress",
                    steps: this.steps,
                    progress: this.solver.progress ?? 0,
                    phase: `mixed:pipeline9:${this.solver.getCurrentPhase()}`,
                    debugGraphics: this.solver.preview?.(),
                });
            }
            this.timer = setTimeout(() => void this.runChunk(), 0);
        }
        catch (caught) {
            this.isRouting = false;
            this.emitError(caught);
        }
    }
    start() {
        if (this.isRouting)
            return;
        this.isRouting = true;
        void this.runChunk();
    }
    stop() {
        this.isRouting = false;
        if (this.timer)
            clearTimeout(this.timer);
        this.timer = undefined;
    }
    on(event, callback) {
        this.handlers[event].push(callback);
    }
    solveSync() {
        this.solver.solve();
        if (this.solver.failed) {
            throw new Error(this.solver.error ?? "Pipeline 9 final reroute failed");
        }
        return [...this.fixedPhaseTraces, ...this.getSelectedOutputTraces()];
    }
    getOutputSimpleRouteJson() {
        if (!this.solver.solved)
            return undefined;
        return {
            ...this.input,
            traces: [
                ...(this.input.traces ?? []),
                ...this.getSelectedOutputTraces(),
            ],
        };
    }
}
const createAm62lClassifiedAutorouter = ({ phase, effort = 2, }) => async (simpleRouteJson) => {
    if (phase === "ddr")
        return new TiEvmDdrAutorouter(simpleRouteJson);
    if (phase === "power") {
        const denseGroundPrepared = prepareTiGroundPlaneFanout(simpleRouteJson, {
            denseBga: true,
            peripheral: false,
        });
        const routingInput = {
            ...denseGroundPrepared.input,
            // The TI/peripheral ground fanout is emitted by this phase. Keep it
            // out of the preloaded list to avoid duplicating the same trace IDs in
            // the transformed phase output, while still passing it as committed
            // copper to the branch planner below.
            traces: simpleRouteJson.traces,
        };
        const globalTopologyInput = useGlobalTopologyForDenseComponents(routingInput);
        const branchedConnections = expandConnectionsIntoMinimumSpanBranches(globalTopologyInput.connections);
        const customPrepared = prepareCustomBranches(globalTopologyInput, branchedConnections, denseGroundPrepared.traces, "power");
        const peripheralGroundPrepared = prepareTiGroundPlaneFanout({
            ...simpleRouteJson,
            traces: [
                ...(simpleRouteJson.traces ?? []),
                ...customPrepared.traces,
            ],
        }, { denseBga: false, peripheral: true });
        const preparedInput = {
            ...globalTopologyInput,
            connections: orderAm62lConnections(customPrepared.connections),
        };
        return new Am62lClassifiedAutorouter(preparedInput, phase, effort, [...customPrepared.traces, ...peripheralGroundPrepared.traces]);
    }
    if (phase === "sd") {
        const preparedEscapes = prepareTiMmc1Escapes(simpleRouteJson);
        const globalTopologyInput = useGlobalTopologyForDenseComponents(preparedEscapes.input);
        const branchedConnections = expandConnectionsIntoMinimumSpanBranches(globalTopologyInput.connections);
        const branchNamesByLogical = new Map();
        for (const connection of branchedConnections) {
            const logical = connection.__originalConnectionName ?? connection.name;
            const branchNames = branchNamesByLogical.get(logical) ?? [];
            branchNames.push(connection.name);
            branchNamesByLogical.set(logical, branchNames);
        }
        const escapeTraces = preparedEscapes.escapeTraces.map((trace) => ({
            ...trace,
            connectsTo: [
                ...(trace.connectsTo ?? []),
                ...(branchNamesByLogical.get(trace.connection_name ?? "") ?? []),
            ],
        }));
        const trunkPrepared = prepareSdInner5Trunks(globalTopologyInput, branchedConnections, escapeTraces);
        const customPrepared = prepareCustomBranches(globalTopologyInput, trunkPrepared.connections, trunkPrepared.traces, "sd");
        const preparedInput = {
            ...globalTopologyInput,
            connections: orderAm62lConnections(customPrepared.connections),
        };
        return new Am62lClassifiedAutorouter(preparedInput, phase, effort, customPrepared.traces);
    }
    if (phase === "reset-control" ||
        phase === "usb-power") {
        const globalTopologyInput = useGlobalTopologyForDenseComponents(simpleRouteJson);
        const branchedConnections = expandConnectionsIntoMinimumSpanBranches(globalTopologyInput.connections);
        const customPrepared = prepareCustomBranches(globalTopologyInput, branchedConnections, [], phase);
        const preparedInput = {
            ...globalTopologyInput,
            connections: orderAm62lConnections(customPrepared.connections),
        };
        return new Am62lClassifiedAutorouter(preparedInput, phase, effort, customPrepared.traces);
    }
    return new Am62lPipeline9RerouteAutorouter(simpleRouteJson, effort);
};

/** Adapts the synchronous fixed-target BGA solver to Core's autorouter API. */
class FixedTargetBgaFanoutAutorouter {
    input;
    isRouting = false;
    stopped = false;
    outputSimpleRouteJson;
    listeners = {
        complete: [],
        error: [],
        progress: [],
    };
    constructor(input) {
        this.input = input;
    }
    solve() {
        const solver = new FixedTargetBgaFanoutSolver(this.input);
        solver.solve();
        if (solver.failed || !solver.solved) {
            throw new Error(solver.error ?? "Fixed-target BGA fanout failed");
        }
        const output = solver.getOutput();
        this.outputSimpleRouteJson = output.outputSimpleRouteJson;
        return output.traces;
    }
    start() {
        if (this.isRouting) {
            throw new Error("Fixed-target BGA fanout is already running");
        }
        this.isRouting = true;
        this.stopped = false;
        queueMicrotask(() => {
            if (this.stopped)
                return;
            try {
                const traces = this.solve();
                if (this.stopped)
                    return;
                this.isRouting = false;
                for (const listener of this.listeners.progress) {
                    listener({
                        type: "progress",
                        steps: traces.length,
                        progress: 1,
                        phase: "fixed-target-bga-fanout",
                    });
                }
                for (const listener of this.listeners.complete) {
                    listener({ type: "complete", traces });
                }
            }
            catch (error) {
                this.isRouting = false;
                const normalizedError = error instanceof Error ? error : new Error(String(error));
                for (const listener of this.listeners.error) {
                    listener({ type: "error", error: normalizedError });
                }
            }
        });
    }
    stop() {
        this.stopped = true;
        this.isRouting = false;
    }
    on(event, callback) {
        this.listeners[event].push(callback);
    }
    solveSync() {
        return this.solve();
    }
    getOutputSimpleRouteJson() {
        return this.outputSimpleRouteJson;
    }
}
const createFixedTargetBgaFanoutAutorouter = async (input) => new FixedTargetBgaFanoutAutorouter(input);

const GRM155R71C104KA88D = (props) => {
    return (jsx("capacitor", { capacitance: "100nF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C71629"
            ]
        }, manufacturerPartNumber: "GRM155R71C104KA88D", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C71629.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C71629.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const CL05A105KP5NNNC = (props) => {
    return (jsx("capacitor", { capacitance: "1uF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C14445"
            ]
        }, manufacturerPartNumber: "CL05A105KP5NNNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C14445.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C14445.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

/** Exact JLC C318541 copper with a compact 0201 assembly courtyard. */
const CL03A105KQ3CSNC = (props) => (jsx("capacitor", { capacitance: "1uF", supplierPartNumbers: { jlcpcb: ["C318541"] }, manufacturerPartNumber: "CL03A105KQ3CSNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.27432mm", pcbY: "0mm", width: "0.368427mm", height: "0.3240024mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.27432mm", pcbY: "0mm", width: "0.368427mm", height: "0.3240024mm", shape: "rect" }), jsx("courtyardoutline", { outline: [
                    { x: -0.55, y: -0.35 },
                    { x: 0.55, y: -0.35 },
                    { x: 0.55, y: 0.35 },
                    { x: -0.55, y: 0.35 },
                ] })] }), cadModel: {
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C318541.obj?uuid=c3e75c3d90204c70b153866ab54c789f",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C318541.step?uuid=c3e75c3d90204c70b153866ab54c789f",
        pcbRotationOffset: 0,
        modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.15 },
    }, ...props }));

/** Exact JLC C18164586 copper with a compact 0201 assembly courtyard. */
const TCC0201X7R104K160ZT = (props) => (jsx("capacitor", { capacitance: "100nF", supplierPartNumbers: { jlcpcb: ["C18164586"] }, manufacturerPartNumber: "TCC0201X7R104K160ZT", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.27432mm", pcbY: "0mm", width: "0.368427mm", height: "0.3240024mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.27432mm", pcbY: "0mm", width: "0.368427mm", height: "0.3240024mm", shape: "rect" }), jsx("courtyardoutline", { outline: [
                    { x: -0.55, y: -0.35 },
                    { x: 0.55, y: -0.35 },
                    { x: 0.55, y: 0.35 },
                    { x: -0.55, y: 0.35 },
                ] })] }), cadModel: {
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C18164586.obj?uuid=c3e75c3d90204c70b153866ab54c789f",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C18164586.step?uuid=c3e75c3d90204c70b153866ab54c789f",
        pcbRotationOffset: 0,
        modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.15 },
    }, ...props }));

const CL10A106KP8NNNC = (props) => {
    return (jsx("capacitor", { capacitance: "10uF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C19702"
            ]
        }, manufacturerPartNumber: "CL10A106KP8NNNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.700024mm", pcbY: "0mm", width: "0.7999984mm", height: "0.8999982mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.700024mm", pcbY: "0mm", width: "0.7999984mm", height: "0.8999982mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.2801873999999316, "y": -0.7095743999998376 }, { "x": -1.080160400000068, "y": -0.7095743999998376 }] }), jsx("silkscreenpath", { route: [{ "x": 0.28026359999989836, "y": -0.7100315999998656 }, { "x": 1.080236599999921, "y": -0.7100315999998656 }] }), jsx("silkscreenpath", { route: [{ "x": -0.2801873999999316, "y": 0.7101078000000598 }, { "x": -1.080160400000068, "y": 0.7101078000000598 }] }), jsx("silkscreenpath", { route: [{ "x": 0.28026359999989836, "y": 0.7096252000001186 }, { "x": 1.080236599999921, "y": 0.7096252000001186 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3899134000000686, "y": -0.3997452000000976 }, { "x": -1.3899134000000686, "y": 0.40030400000000554 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3900149999998348, "y": 0.39977060000001075 }, { "x": 1.3900149999998348, "y": -0.4002531999999519 }] }), jsx("silkscreenpath", { route: [{ "x": 1.080185799999981, "y": 0.7096252000001186 }, { "x": 1.299277109074751, "y": 0.6188693482574763 }, { "x": 1.3900149999998348, "y": 0.39977060000001075 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3900149999998348, "y": -0.40020240000012564 }, { "x": 1.2992681283295724, "y": -0.6192847283296032 }, { "x": 1.080185799999981, "y": -0.7100315999998656 }] }), jsx("silkscreenpath", { route: [{ "x": -1.0801096000000143, "y": -0.7095743999998376 }, { "x": -1.2991755087698493, "y": -0.6188185485625581 }, { "x": -1.3899134000000686, "y": -0.3997452000000976 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3899134000000686, "y": 0.40022780000003877 }, { "x": -1.2991934705021322, "y": 0.6193339880503572 }, { "x": -1.0801096000000143, "y": 0.7101078000000598 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.0127mm", pcbY: "1.7112mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.647000000000162, "y": 0.9612000000000762 }, { "x": 1.6216000000000577, "y": 0.9612000000000762 }, { "x": 1.6216000000000577, "y": -0.9611999999999625 }, { "x": -1.647000000000162, "y": -0.9611999999999625 }, { "x": -1.647000000000162, "y": 0.9612000000000762 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C19702.obj?uuid=ac9b32e974bc448eab36b1293f859dcb",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C19702.step?uuid=ac9b32e974bc448eab36b1293f859dcb",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 0, z: -0.4 },
        }, ...props }));
};

const CL10A226MP8NUNE = (props) => {
    return (jsx("capacitor", { capacitance: "22uF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C86295"
            ]
        }, manufacturerPartNumber: "CL10A226MP8NUNE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.700024mm", pcbY: "0mm", width: "0.7999984mm", height: "0.8999982mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.700024mm", pcbY: "0mm", width: "0.7999984mm", height: "0.8999982mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.2801873999999316, "y": -0.7095743999998376 }, { "x": -1.080160400000068, "y": -0.7095743999998376 }] }), jsx("silkscreenpath", { route: [{ "x": 0.28026359999989836, "y": -0.7100315999998656 }, { "x": 1.080236599999921, "y": -0.7100315999998656 }] }), jsx("silkscreenpath", { route: [{ "x": -0.2801873999999316, "y": 0.7101078000000598 }, { "x": -1.080160400000068, "y": 0.7101078000000598 }] }), jsx("silkscreenpath", { route: [{ "x": 0.28026359999989836, "y": 0.7096252000001186 }, { "x": 1.080236599999921, "y": 0.7096252000001186 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3899134000000686, "y": -0.3997452000000976 }, { "x": -1.3899134000000686, "y": 0.40030400000000554 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3900149999998348, "y": 0.39977060000001075 }, { "x": 1.3900149999998348, "y": -0.4002531999999519 }] }), jsx("silkscreenpath", { route: [{ "x": 1.080185799999981, "y": 0.7096252000001186 }, { "x": 1.299277109074751, "y": 0.6188693482574763 }, { "x": 1.3900149999998348, "y": 0.39977060000001075 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3900149999998348, "y": -0.40020240000012564 }, { "x": 1.2992681283295724, "y": -0.6192847283296032 }, { "x": 1.080185799999981, "y": -0.7100315999998656 }] }), jsx("silkscreenpath", { route: [{ "x": -1.0801096000000143, "y": -0.7095743999998376 }, { "x": -1.2991755087698493, "y": -0.6188185485625581 }, { "x": -1.3899134000000686, "y": -0.3997452000000976 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3899134000000686, "y": 0.40022780000003877 }, { "x": -1.2991934705021322, "y": 0.6193339880503572 }, { "x": -1.0801096000000143, "y": 0.7101078000000598 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.0127mm", pcbY: "1.7112mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.647000000000162, "y": 0.9612000000000762 }, { "x": 1.6216000000000577, "y": 0.9612000000000762 }, { "x": 1.6216000000000577, "y": -0.9611999999999625 }, { "x": -1.647000000000162, "y": -0.9611999999999625 }, { "x": -1.647000000000162, "y": 0.9612000000000762 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C86295.obj?uuid=ac9b32e974bc448eab36b1293f859dcb",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C86295.step?uuid=ac9b32e974bc448eab36b1293f859dcb",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 0, z: -0.4 },
        }, ...props }));
};

const GRM155R61A225KE95D = (props) => {
    return (jsx("capacitor", { capacitance: "2.2uF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C77002"
            ]
        }, manufacturerPartNumber: "GRM155R61A225KE95D", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C77002.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C77002.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const CL05C100JB5NNNC = (props) => {
    return (jsx("capacitor", { capacitance: "10pF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C32949"
            ]
        }, manufacturerPartNumber: "CL05C100JB5NNNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C32949.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C32949.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const A_0402WGF5101TCE = (props) => {
    return (jsx("resistor", { resistance: "5.1k", supplierPartNumbers: {
            "jlcpcb": [
                "C25905"
            ]
        }, manufacturerPartNumber: "A_0402WGF5101TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25905.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25905.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF1001TCE = (props) => {
    return (jsx("resistor", { resistance: "1k", supplierPartNumbers: {
            "jlcpcb": [
                "C11702"
            ]
        }, manufacturerPartNumber: "A_0402WGF1001TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C11702.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C11702.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF1002TCE = (props) => {
    return (jsx("resistor", { resistance: "10k", supplierPartNumbers: {
            "jlcpcb": [
                "C25744"
            ]
        }, manufacturerPartNumber: "A_0402WGF1002TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25744.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25744.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF1003TCE = (props) => {
    return (jsx("resistor", { resistance: "100k", supplierPartNumbers: {
            "jlcpcb": [
                "C25741"
            ]
        }, manufacturerPartNumber: "A_0402WGF1003TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25741.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25741.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF2400TCE = (props) => {
    return (jsx("resistor", { resistance: "240", supplierPartNumbers: {
            "jlcpcb": [
                "C25094"
            ]
        }, manufacturerPartNumber: "A_0402WGF2400TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25094.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25094.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF2201TCE = (props) => {
    return (jsx("resistor", { resistance: "2.2k", supplierPartNumbers: {
            "jlcpcb": [
                "C25879"
            ]
        }, manufacturerPartNumber: "A_0402WGF2201TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25879.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25879.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF4702TCE = (props) => {
    return (jsx("resistor", { resistance: "47k", supplierPartNumbers: {
            "jlcpcb": [
                "C25792"
            ]
        }, manufacturerPartNumber: "A_0402WGF4702TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25792.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25792.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF4701TCE = (props) => {
    return (jsx("resistor", { resistance: "4.7k", supplierPartNumbers: {
            "jlcpcb": [
                "C25900"
            ]
        }, manufacturerPartNumber: "A_0402WGF4701TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25900.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25900.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF0000TCE = (props) => {
    return (jsx("resistor", { resistance: "0", supplierPartNumbers: {
            "jlcpcb": [
                "C17168"
            ]
        }, manufacturerPartNumber: "A_0402WGF0000TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C17168.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C17168.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF1000TCE = (props) => {
    return (jsx("resistor", { resistance: "100", supplierPartNumbers: {
            "jlcpcb": [
                "C25076"
            ]
        }, manufacturerPartNumber: "A_0402WGF1000TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25076.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25076.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF4533TCE = (props) => {
    return (jsx("resistor", { resistance: "453k", supplierPartNumbers: {
            "jlcpcb": [
                "C27009"
            ]
        }, manufacturerPartNumber: "A_0402WGF4533TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C27009.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C27009.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF6651TCE = (props) => {
    return (jsx("resistor", { resistance: "6.65k", supplierPartNumbers: {
            "jlcpcb": [
                "C45194"
            ]
        }, manufacturerPartNumber: "A_0402WGF6651TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C45194.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C45194.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF2491TCE = (props) => {
    return (jsx("resistor", { resistance: "2.49k", supplierPartNumbers: {
            "jlcpcb": [
                "C25884"
            ]
        }, manufacturerPartNumber: "A_0402WGF2491TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25884.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25884.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const A_0402WGF9093TCE = (props) => {
    return (jsx("resistor", { resistance: "909k", supplierPartNumbers: {
            "jlcpcb": [
                "C25799"
            ]
        }, manufacturerPartNumber: "A_0402WGF9093TCE", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.432816mm", pcbY: "0mm", width: "0.565658mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.22621240000012222, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": -0.4986020000000053 }, { "x": -0.9442450000001372, "y": 0.498602000000119 }, { "x": -0.22621240000012222, "y": 0.498602000000119 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22621240000000853, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": -0.4986020000000053 }, { "x": 0.9442449999999099, "y": 0.498602000000119 }, { "x": 0.22621240000000853, "y": 0.498602000000119 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1897999999998774, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": 0.7580000000000382 }, { "x": 1.189799999999991, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": -0.7326000000000477 }, { "x": -1.1897999999998774, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25799.obj?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C25799.step?uuid=026a4a15ab5c4a92ac0e421d6d013717",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: 0 },
        }, ...props }));
};

const C1005X5R1A335KTJ00E = (props) => {
    return (jsx("capacitor", { capacitance: "3.3uF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C695126"
            ]
        }, manufacturerPartNumber: "C1005X5R1A335KTJ00E", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C695126.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C695126.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const A_0402B472K500NT = (props) => {
    return (jsx("capacitor", { capacitance: "4.7nF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C1538"
            ]
        }, manufacturerPartNumber: "A_0402B472K500NT", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C1538.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C1538.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const CL05C220JB5NNNC = (props) => {
    return (jsx("capacitor", { capacitance: "22pF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C70464"
            ]
        }, manufacturerPartNumber: "CL05C220JB5NNNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C70464.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C70464.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const CL05A475MP5NRNC = (props) => {
    return (jsx("capacitor", { capacitance: "4.7uF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C23733"
            ]
        }, manufacturerPartNumber: "CL05A475MP5NRNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.420116mm", pcbY: "0mm", width: "0.499999mm", height: "0.540004mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": 0.49753519999990203 }, { "x": -0.22138640000002852, "y": 0.49753519999990203 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8738108000000011, "y": -0.34724340000002485 }, { "x": -0.8738108000000011, "y": 0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": -0.22138640000002852, "y": -0.4996433999999681 }, { "x": -0.721385400000031, "y": -0.4996433999999681 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": -0.4975097999999889 }, { "x": 0.22138639999991483, "y": -0.4975097999999889 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22138639999991483, "y": 0.49961800000005496 }, { "x": 0.7213853999999174, "y": 0.49961800000005496 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8738108000000011, "y": 0.34726880000005167 }, { "x": 0.8738108000000011, "y": -0.3451606000000993 }] }), jsx("silkscreenpath", { route: [{ "x": 0.7213853999999174, "y": 0.4996433999998544 }, { "x": 0.829148473452733, "y": 0.4550064734527268 }, { "x": 0.8737853999998606, "y": 0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8737853999998606, "y": -0.3451606000000993 }, { "x": 0.829148473452733, "y": -0.4529236734526876 }, { "x": 0.7213853999999174, "y": -0.49756059999992885 }] }), jsx("silkscreenpath", { route: [{ "x": -0.721385400000031, "y": -0.4996433999997407 }, { "x": -0.829148473452733, "y": -0.45500647345261314 }, { "x": -0.8737853999999743, "y": -0.34724340000002485 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8737853999999743, "y": 0.3451606000000993 }, { "x": -0.829148473452733, "y": 0.45292367345280127 }, { "x": -0.721385400000031, "y": 0.49756060000004254 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "1.508mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.1136000000000195, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": 0.7580000000000382 }, { "x": 1.1389999999998963, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": -0.7326000000000477 }, { "x": -1.1136000000000195, "y": 0.7580000000000382 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C23733.obj?uuid=32fe2cf9314f444ca2785a33c2db7189",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C23733.step?uuid=32fe2cf9314f444ca2785a33c2db7189",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.25 },
        }, ...props }));
};

const CL10B221KB8NNNC = (props) => {
    return (jsx("capacitor", { capacitance: "220pF", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C1603"
            ]
        }, manufacturerPartNumber: "CL10B221KB8NNNC", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.700024mm", pcbY: "0mm", width: "0.7999984mm", height: "0.8999982mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.700024mm", pcbY: "0mm", width: "0.7999984mm", height: "0.8999982mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.2801873999999316, "y": -0.7095743999998376 }, { "x": -1.080160400000068, "y": -0.7095743999998376 }] }), jsx("silkscreenpath", { route: [{ "x": 0.28026359999989836, "y": -0.7100315999998656 }, { "x": 1.080236599999921, "y": -0.7100315999998656 }] }), jsx("silkscreenpath", { route: [{ "x": -0.2801873999999316, "y": 0.7101078000000598 }, { "x": -1.080160400000068, "y": 0.7101078000000598 }] }), jsx("silkscreenpath", { route: [{ "x": 0.28026359999989836, "y": 0.7096252000001186 }, { "x": 1.080236599999921, "y": 0.7096252000001186 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3899134000000686, "y": -0.3997452000000976 }, { "x": -1.3899134000000686, "y": 0.40030400000000554 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3900149999998348, "y": 0.39977060000001075 }, { "x": 1.3900149999998348, "y": -0.4002531999999519 }] }), jsx("silkscreenpath", { route: [{ "x": 1.080185799999981, "y": 0.7096252000001186 }, { "x": 1.299277109074751, "y": 0.6188693482574763 }, { "x": 1.3900149999998348, "y": 0.39977060000001075 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3900149999998348, "y": -0.40020240000012564 }, { "x": 1.2992681283295724, "y": -0.6192847283296032 }, { "x": 1.080185799999981, "y": -0.7100315999998656 }] }), jsx("silkscreenpath", { route: [{ "x": -1.0801096000000143, "y": -0.7095743999998376 }, { "x": -1.2991755087698493, "y": -0.6188185485625581 }, { "x": -1.3899134000000686, "y": -0.3997452000000976 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3899134000000686, "y": 0.40022780000003877 }, { "x": -1.2991934705021322, "y": 0.6193339880503572 }, { "x": -1.0801096000000143, "y": 0.7101078000000598 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.0127mm", pcbY: "1.7112mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.647000000000162, "y": 0.9612000000000762 }, { "x": 1.6216000000000577, "y": 0.9612000000000762 }, { "x": 1.6216000000000577, "y": -0.9611999999999625 }, { "x": -1.647000000000162, "y": -0.9611999999999625 }, { "x": -1.647000000000162, "y": 0.9612000000000762 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C1603.obj?uuid=ac9b32e974bc448eab36b1293f859dcb",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C1603.step?uuid=ac9b32e974bc448eab36b1293f859dcb",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 0, z: -0.4 },
        }, ...props }));
};

const SMF5_0A = (props) => {
    return (jsx("diode", { symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C19077497"
            ]
        }, manufacturerPartNumber: "SMF5_0A", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "1.634998mm", pcbY: "0mm", width: "1.1999976mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-1.634998mm", pcbY: "0mm", width: "1.1999976mm", height: "1.1999976mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.7167625999999245, "y": 0.8762238000001616 }, { "x": -0.7167625999999245, "y": -0.876223800000048 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3762228000000505, "y": -0.9262363999999934 }, { "x": 1.3762227999999368, "y": -0.9262363999999934 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3762228000000505, "y": 0.9262364000001071 }, { "x": 1.3762227999999368, "y": 0.9262364000001071 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3762227999999368, "y": 0.9262364000001071 }, { "x": 1.3762227999999368, "y": 0.7331963999999971 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3762227999999368, "y": -0.9262363999999934 }, { "x": 1.3762227999999368, "y": -0.7331963999999971 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.9906mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.485200000000077, "y": 1.2406000000000859 }, { "x": 2.4851999999998498, "y": 1.2406000000000859 }, { "x": 2.4851999999998498, "y": -1.2659999999999627 }, { "x": -2.485200000000077, "y": -1.2659999999999627 }, { "x": -2.485200000000077, "y": 1.2406000000000859 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C19077497.obj?uuid=d3ea67013c27406dbdf25a993737fb84",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C19077497.step?uuid=d3ea67013c27406dbdf25a993737fb84",
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: 0, z: 0.09 },
        }, ...props }));
};

const pinLabels$f = {
    pin1: ["cathode", "neg"],
    pin2: ["anode", "pos"]
};
const LTST_C190KRKT = (props) => {
    const { name = "LED1", ...restProps } = props;
    return (jsx("led", { name: name, pinLabels: pinLabels$f, supplierPartNumbers: {
            "jlcpcb": [
                "C94869"
            ]
        }, manufacturerPartNumber: "LTST_C190KRKT", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1", "cathode", "neg"], pcbX: "-0.7489952mm", pcbY: "-0.003429mm", width: "0.7999984mm", height: "0.7999984mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2", "anode", "pos"], pcbX: "0.7489952mm", pcbY: "0.003429mm", width: "0.7999984mm", height: "0.7999984mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.2203958000000057, "y": -0.3235452000000123 }, { "x": 0.21048979999989115, "y": -0.3235452000000123 }, { "x": -0.11960860000010598, "y": 0.006477000000018052 }] }), jsx("silkscreenpath", { route: [{ "x": 0.2203958000000057, "y": 0.3564890000001242 }, { "x": 0.2203958000000057, "y": 0.3464814000001297 }, { "x": -0.11960860000010598, "y": 0.006477000000018052 }] }), jsx("silkscreenpath", { route: [{ "x": 0.2203958000000057, "y": 0.3564890000001242 }, { "x": 0.2203958000000057, "y": -0.3235452000000123 }] }), jsx("silkscreenpath", { route: [{ "x": 0.24043639999990774, "y": 0.7565136000000621 }, { "x": 1.3904975999998896, "y": 0.7565136000000621 }] }), jsx("silkscreenpath", { route: [{ "x": 0.24043639999990774, "y": -0.7436103999999659 }, { "x": 1.3904975999998896, "y": -0.7436103999999659 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3904975999998896, "y": 0.7564628000000084 }, { "x": 1.3904975999998896, "y": -0.7235189999998966 }] }), jsx("silkscreenpath", { route: [{ "x": -0.13957299999992756, "y": -0.7458963999999924 }, { "x": -1.189685200000099, "y": -0.7458963999999924 }] }), jsx("silkscreenpath", { route: [{ "x": -1.4896337999999787, "y": -0.345795599999974 }, { "x": -1.4896337999999787, "y": -0.4458207999998649 }, { "x": -1.189685200000099, "y": -0.7458963999999924 }] }), jsx("silkscreenpath", { route: [{ "x": -1.4896337999999787, "y": 0.3541268000000173 }, { "x": -1.4896337999999787, "y": -0.345795599999974 }] }), jsx("silkscreenpath", { route: [{ "x": -1.4896337999999787, "y": 0.3541268000000173 }, { "x": -1.4896337999999787, "y": 0.4542790000000423 }, { "x": -1.189685200000099, "y": 0.7542276000000356 }] }), jsx("silkscreenpath", { route: [{ "x": -0.13957299999992756, "y": 0.7542276000000356 }, { "x": -1.189685200000099, "y": 0.7542276000000356 }] }), jsx("silkscreenpath", { route: [{ "x": 0.2203958000000057, "y": 0.006477000000018052 }, { "x": -0.11960860000010598, "y": 0.006477000000018052 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.0653542mm", pcbY: "1.768477mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.7504542000001493, "y": 1.0184769999999617 }, { "x": 1.6197458000000324, "y": 1.0184769999999617 }, { "x": 1.6197458000000324, "y": -0.980122999999935 }, { "x": -1.7504542000001493, "y": -0.980122999999935 }, { "x": -1.7504542000001493, "y": 1.0184769999999617 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C94869.obj?uuid=d0740cb8891c49a88b6949cb978926f3",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C94869.step?uuid=d0740cb8891c49a88b6949cb978926f3",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: -12700000070253736e-21, y: 0.00005079999993995443, z: -0.01 },
        }, ...restProps }));
};

const pinLabels$e = {
    pin1: ["pin1"],
    pin2: ["A"],
    pin3: ["GND"],
    pin4: ["Y"],
    pin5: ["VCC"]
};
const SN74LVC1G04DBVR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$e, supplierPartNumbers: {
            "jlcpcb": [
                "C7827"
            ]
        }, manufacturerPartNumber: "SN74LVC1G04DBVR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin5"], pcbX: "-1.300099mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-1.300099mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "1.300099mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "1.300099mm", pcbY: "-0mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "1.300099mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": -1.404111999999941 }, { "x": 0.8999728000000005, "y": -1.5500604000000067 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": -0.45412660000010874 }, { "x": 0.8999728000000005, "y": -0.4958079999998972 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": 0.4958079999998972 }, { "x": 0.8999728000000005, "y": 0.45415200000002187 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": 1.5499587999998994 }, { "x": 0.8999728000000005, "y": 1.404111999999941 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": -1.404111999999941 }, { "x": -0.9000489999999672, "y": -1.5500604000000067 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 0.4958079999998972 }, { "x": -0.9000489999999672, "y": -0.4958334000000377 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 1.5499587999998994 }, { "x": -0.9000489999999672, "y": 1.4040866000000278 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 1.5499587999998994 }, { "x": 0.8999728000000005, "y": 1.5499587999998994 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": -1.5500604000000067 }, { "x": 0.8999728000000005, "y": -1.5500604000000067 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.012319mm", pcbY: "2.562354mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.091880999999944, "y": 1.8123540000000276 }, { "x": 2.1165190000000393, "y": 1.8123540000000276 }, { "x": 2.1165190000000393, "y": -1.786446000000069 }, { "x": -2.091880999999944, "y": -1.786446000000069 }, { "x": -2.091880999999944, "y": 1.8123540000000276 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C7827.obj?uuid=460193f9bf2d42e58cf3c2f675b07dc6",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C7827.step?uuid=460193f9bf2d42e58cf3c2f675b07dc6",
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.049083 },
        }, ...props }));
};

const pinLabels$d = {
    pin1: ["IN"],
    pin2: ["GND"],
    pin3: ["EN"],
    pin4: ["NC"],
    pin5: ["OUT"]
};
const TLV75533PDBVR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$d, supplierPartNumbers: {
            "jlcpcb": [
                "C404027"
            ]
        }, manufacturerPartNumber: "TLV75533PDBVR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin5"], pcbX: "-1.300099mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-1.300099mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "1.300099mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "1.300099mm", pcbY: "-0mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "1.300099mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": -1.404111999999941 }, { "x": 0.8999728000000005, "y": -1.5500604000000067 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": -0.45412660000010874 }, { "x": 0.8999728000000005, "y": -0.4958079999998972 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": 0.4958079999998972 }, { "x": 0.8999728000000005, "y": 0.45415200000002187 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": 1.5499587999998994 }, { "x": 0.8999728000000005, "y": 1.404111999999941 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": -1.404111999999941 }, { "x": -0.9000489999999672, "y": -1.5500604000000067 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 0.4958079999998972 }, { "x": -0.9000489999999672, "y": -0.4958334000000377 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 1.5499587999998994 }, { "x": -0.9000489999999672, "y": 1.4040866000000278 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 1.5499587999998994 }, { "x": 0.8999728000000005, "y": 1.5499587999998994 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": -1.5500604000000067 }, { "x": 0.8999728000000005, "y": -1.5500604000000067 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.012319mm", pcbY: "2.562354mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.091880999999944, "y": 1.8123540000000276 }, { "x": 2.1165190000000393, "y": 1.8123540000000276 }, { "x": 2.1165190000000393, "y": -1.786446000000069 }, { "x": -2.091880999999944, "y": -1.786446000000069 }, { "x": -2.091880999999944, "y": 1.8123540000000276 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C404027.obj?uuid=460193f9bf2d42e58cf3c2f675b07dc6",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C404027.step?uuid=460193f9bf2d42e58cf3c2f675b07dc6",
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.049083 },
        }, ...props }));
};

const pinLabels$c = {
    pin1: ["CC1"],
    pin2: ["CC2"],
    pin3: ["PORT"],
    pin4: ["VBUS_DET"],
    pin5: ["ADDR"],
    pin6: ["INT_N_OUT3", "OUT3"],
    pin7: ["SDA_OUT1", "OUT1"],
    pin8: ["SCL_OUT2", "OUT2"],
    pin9: ["ID"],
    pin10: ["GND"],
    pin11: ["EN_N"],
    pin12: ["VDD"]
};
const TUSB320LAIRWBR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$c, supplierPartNumbers: {
            "jlcpcb": [
                "C132554"
            ]
        }, manufacturerPartNumber: "TUSB320LAIRWBR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin12"], pcbX: "-0.5999861mm", pcbY: "0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin11"], pcbX: "-0.1998853mm", pcbY: "0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin10"], pcbX: "0.1998599mm", pcbY: "0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin9"], pcbX: "0.5999607mm", pcbY: "0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin8"], pcbX: "0.7500493mm", pcbY: "0.1998726mm", width: "0.5050028mm", height: "0.1999996mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin7"], pcbX: "0.7500493mm", pcbY: "-0.1998726mm", width: "0.5050028mm", height: "0.1999996mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin6"], pcbX: "0.5999607mm", pcbY: "-0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "0.1998599mm", pcbY: "-0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-0.1998853mm", pcbY: "-0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "-0.5999861mm", pcbY: "-0.7500366mm", width: "0.1999996mm", height: "0.5050028mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "-0.7500493mm", pcbY: "-0.1998726mm", width: "0.5050028mm", height: "0.1999996mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.7500493mm", pcbY: "0.1998726mm", width: "0.5050028mm", height: "0.1999996mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.8598788999999982, "y": -0.8699753999999871 }, { "x": 0.8098662999999959, "y": -0.8699753999999871 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8598788999999982, "y": -0.8698991999999919 }, { "x": 0.8598788999999982, "y": -0.5099558000000002 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8598281000000014, "y": 0.8700262000000123 }, { "x": -0.8598281000000014, "y": 0.5099558000000002 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8598281000000014, "y": 0.8700262000000123 }, { "x": -0.8098662999999959, "y": 0.8700262000000123 }] }), jsx("silkscreenpath", { route: [{ "x": -0.859980500000006, "y": -0.8698991999999919 }, { "x": -0.859980500000006, "y": -0.5099558000000002 }] }), jsx("silkscreenpath", { route: [{ "x": -0.859980500000006, "y": -0.8698991999999919 }, { "x": -0.8100440999999989, "y": -0.8698991999999919 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8598788999999982, "y": 0.8700262000000123 }, { "x": 0.8099424999999911, "y": 0.8700262000000123 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8598788999999982, "y": 0.8700262000000123 }, { "x": 0.8598788999999982, "y": 0.5099558000000002 }] }), jsx("silkscreenpath", { route: [{ "x": -1.2049887000000012, "y": 0.20005040000000918 }, { "x": -1.2075418778361637, "y": 0.1806570889504684 }, { "x": -1.2150274164944364, "y": 0.16258540000001176 }, { "x": -1.2269351888856903, "y": 0.1470668888857034 }, { "x": -1.2424537000000129, "y": 0.13515911649443524 }, { "x": -1.2605253889504695, "y": 0.12767357783617683 }, { "x": -1.2799187000000103, "y": 0.12512040000000013 }, { "x": -1.2993120110495369, "y": 0.12767357783617683 }, { "x": -1.3173836999999935, "y": 0.13515911649443524 }, { "x": -1.3329022111143018, "y": 0.1470668888857034 }, { "x": -1.3448099835055842, "y": 0.16258540000001176 }, { "x": -1.3522955221638284, "y": 0.1806570889504684 }, { "x": -1.3548487000000051, "y": 0.20005040000000918 }, { "x": -1.3522955221638284, "y": 0.21944371104953575 }, { "x": -1.3448099835055842, "y": 0.2375154000000066 }, { "x": -1.3329022111143018, "y": 0.25303391111431495 }, { "x": -1.3173836999999935, "y": 0.2649416835055689 }, { "x": -1.2993120110495369, "y": 0.2724272221638415 }, { "x": -1.2799187000000103, "y": 0.2749804000000182 }, { "x": -1.2605253889504695, "y": 0.2724272221638415 }, { "x": -1.2424537000000129, "y": 0.2649416835055689 }, { "x": -1.2269351888856903, "y": 0.25303391111431495 }, { "x": -1.2150274164944364, "y": 0.2375154000000066 }, { "x": -1.2075418778361637, "y": 0.21944371104953575 }, { "x": -1.2049887000000012, "y": 0.20005040000000918 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.1781175mm", pcbY: "1.9945624mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.609217500000014, "y": 1.2445624000000208 }, { "x": 1.2529825000000017, "y": 1.2445624000000208 }, { "x": 1.2529825000000017, "y": -1.262037599999985 }, { "x": -1.609217500000014, "y": -1.262037599999985 }, { "x": -1.609217500000014, "y": 1.2445624000000208 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C132554.obj?uuid=1b341723808e45ea90bc8e964704cc30",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C132554.step?uuid=1b341723808e45ea90bc8e964704cc30",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: -12699999999199463e-21, y: 0, z: 0 },
        }, ...props }));
};

const TFM201208BLE_R47MTCF = (props) => {
    return (jsx("inductor", { inductance: "470nH", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C6284725"
            ]
        }, manufacturerPartNumber: "TFM201208BLE_R47MTCF", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.999998mm", pcbY: "0mm", width: "0.999998mm", height: "1.2999974mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "0.999998mm", pcbY: "0mm", width: "0.999998mm", height: "1.2999974mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.999998000000005, "y": -0.88900000000001 }, { "x": 0.9999979999998914, "y": -0.88900000000001 }] }), jsx("silkscreenpath", { route: [{ "x": -0.999998000000005, "y": 0.8890000000001237 }, { "x": 0.9999979999998914, "y": 0.8890000000001237 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.889mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.748600000000124, "y": 1.1390000000001237 }, { "x": 1.7486000000000104, "y": 1.1390000000001237 }, { "x": 1.7486000000000104, "y": -1.13900000000001 }, { "x": -1.748600000000124, "y": -1.13900000000001 }, { "x": -1.748600000000124, "y": 1.1390000000001237 }] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C6284725.obj?uuid=5a84a84263d446838271f66cdb04aaac",
            stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C6284725.step?uuid=5a84a84263d446838271f66cdb04aaac",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 0, z: 0 },
        }, ...props }));
};

const pinLabels$b = {
    pin7: ["pin7"],
    pin8: ["pin7_alt1"],
    pin9: ["pin7_alt1"],
    pin10: ["pin7_alt1"],
    pin11: ["A12"],
    pin12: ["A9"],
    pin13: ["B5"],
    pin14: ["A5"],
    pin15: ["B9"],
    pin16: ["B12"]
};
const USB4125_GF_A_0190 = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$b, supplierPartNumbers: {
            "jlcpcb": [
                "C5246813"
            ]
        }, manufacturerPartNumber: "USB4125_GF_A_0190", footprint: jsxs("footprint", { children: [jsx("platedhole", { portHints: ["pin7"], pcbX: "-4.319905mm", pcbY: "1.5850426mm", holeWidth: "0.5999988mm", holeHeight: "1.1999976mm", outerWidth: "1.0999978mm", outerHeight: "1.6999966mm", shape: "pill" }), jsx("platedhole", { portHints: ["pin8"], pcbX: "4.319905mm", pcbY: "1.5850426mm", holeWidth: "0.5999988mm", holeHeight: "1.1999976mm", outerWidth: "1.0999978mm", outerHeight: "1.6999966mm", shape: "pill" }), jsx("platedhole", { portHints: ["pin9"], pcbX: "-4.319905mm", pcbY: "-2.2150514mm", holeWidth: "0.5999988mm", holeHeight: "1.1999976mm", outerWidth: "1.0999978mm", outerHeight: "1.6999966mm", shape: "pill" }), jsx("platedhole", { portHints: ["pin10"], pcbX: "4.319905mm", pcbY: "-2.2150514mm", holeWidth: "0.5999988mm", holeHeight: "1.1999976mm", outerWidth: "1.0999978mm", outerHeight: "1.6999966mm", shape: "pill" }), jsx("smtpad", { portHints: ["pin11"], pcbX: "2.750185mm", pcbY: "1.6650526mm", width: "0.7999984mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin12"], pcbX: "1.520063mm", pcbY: "1.6650526mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin13"], pcbX: "0.499999mm", pcbY: "1.6650526mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin14"], pcbX: "-0.499999mm", pcbY: "1.6650526mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin15"], pcbX: "-1.520063mm", pcbY: "1.6650526mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin16"], pcbX: "-2.750185mm", pcbY: "1.6650526mm", width: "0.7999984mm", height: "1.1999976mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -3.381222600000001, "y": 1.9899948000000904 }, { "x": -3.5458653999997978, "y": 1.9899948000000904 }] }), jsx("silkscreenpath", { route: [{ "x": -2.1011387999999442, "y": 1.9899948000000904 }, { "x": -2.1189441999998735, "y": 1.9899948000000904 }] }), jsx("silkscreenpath", { route: [{ "x": 2.1189696000001277, "y": 1.9899948000000904 }, { "x": 2.1011387999999442, "y": 1.9899948000000904 }] }), jsx("silkscreenpath", { route: [{ "x": 3.545865400000025, "y": 1.9899948000000904 }, { "x": 3.381248000000028, "y": 1.9899948000000904 }] }), jsx("silkscreenpath", { route: [{ "x": 4.4699935999999525, "y": -1.14850540000009 }, { "x": 4.4699935999999525, "y": 0.5184965999999349 }] }), jsx("silkscreenpath", { route: [{ "x": -4.4699935999999525, "y": -3.2815974000000097 }, { "x": -4.4699935999999525, "y": -4.8149954000000434 }, { "x": 4.4699935999999525, "y": -4.8149954000000434 }, { "x": 4.4699935999999525, "y": -3.2815974000000097 }] }), jsx("silkscreenpath", { route: [{ "x": -4.4699935999999525, "y": 0.5184965999999349 }, { "x": -4.4699935999999525, "y": -1.14850540000009 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.005207mm", pcbY: "3.4232426mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -5.119306999999935, "y": 2.6732425999999805 }, { "x": 5.108892999999966, "y": 2.6732425999999805 }, { "x": 5.108892999999966, "y": -5.192757400000005 }, { "x": -5.119306999999935, "y": -5.192757400000005 }, { "x": -5.119306999999935, "y": 2.6732425999999805 }] })] }), cadModel: {
            objUrl: objPath,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 1.3629957000000559, z: -20000000000575113e-22 },
        }, ...props }));
};

const pinLabels$a = {
    pin1: ["EN_UVLO", "EN", "UVLO"],
    pin2: ["OVLO"],
    pin3: ["AUXOFF"],
    pin4: ["FLT"],
    pin5: ["IN"],
    pin6: ["OUT"],
    pin7: ["DVDT"],
    pin8: ["GND"],
    pin9: ["ILM"],
    pin10: ["ITIMER"]
};
const TPS259470LRPWR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$a, supplierPartNumbers: {
            "jlcpcb": [
                "C3662793"
            ]
        }, manufacturerPartNumber: "TPS259470LRPWR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1"], points: [{ x: "-0.8650351mm", y: "1.1999976mm" }, { x: "-0.8650351mm", y: "0.8999982mm" }, { x: "-0.8650351mm", y: "0.8999982mm" }, { x: "-1.2149963mm", y: "0.8999982mm" }, { x: "-1.2149963mm", y: "0.8999982mm" }, { x: "-1.2149963mm", y: "0.5999988mm" }, { x: "-1.2149963mm", y: "0.5999988mm" }, { x: "-0.8650351mm", y: "0.5999988mm" }, { x: "-0.8650351mm", y: "0.5999988mm" }, { x: "-0.6150483mm", y: "0.5999988mm" }, { x: "-0.6150483mm", y: "0.5999988mm" }, { x: "-0.6149975mm", y: "0.5999988mm" }, { x: "-0.6149975mm", y: "0.5999988mm" }, { x: "-0.6149975mm", y: "0.8999982mm" }, { x: "-0.6149975mm", y: "0.8999982mm" }, { x: "-0.6150483mm", y: "0.8999982mm" }, { x: "-0.6150483mm", y: "0.8999982mm" }, { x: "-0.6150483mm", y: "1.1999976mm" }, { x: "-0.6150483mm", y: "1.1999976mm" }, { x: "-0.8650351mm", y: "1.1999976mm" }], shape: "polygon" }), jsx("smtpad", { portHints: ["pin4"], points: [{ x: "-0.8553577mm", y: "-1.1999976mm" }, { x: "-0.8553577mm", y: "-0.8999728mm" }, { x: "-0.8553577mm", y: "-0.8999728mm" }, { x: "-1.2053189mm", y: "-0.8999728mm" }, { x: "-1.2053189mm", y: "-0.8999728mm" }, { x: "-1.2053189mm", y: "-0.5999988mm" }, { x: "-1.2053189mm", y: "-0.5999988mm" }, { x: "-0.8553577mm", y: "-0.5999988mm" }, { x: "-0.8553577mm", y: "-0.5999988mm" }, { x: "-0.6053709mm", y: "-0.5999988mm" }, { x: "-0.6053709mm", y: "-0.5999988mm" }, { x: "-0.6053201mm", y: "-0.5999988mm" }, { x: "-0.6053201mm", y: "-0.5999988mm" }, { x: "-0.6053201mm", y: "-0.8999728mm" }, { x: "-0.6053201mm", y: "-0.8999728mm" }, { x: "-0.6053709mm", y: "-0.8999728mm" }, { x: "-0.6053709mm", y: "-0.8999728mm" }, { x: "-0.6053709mm", y: "-1.1999976mm" }, { x: "-0.6053709mm", y: "-1.1999976mm" }, { x: "-0.8553577mm", y: "-1.1999976mm" }], shape: "polygon" }), jsx("smtpad", { portHints: ["pin7"], points: [{ x: "0.8650351mm", y: "-1.1999722mm" }, { x: "0.8650351mm", y: "-0.8999728mm" }, { x: "0.8650351mm", y: "-0.8999728mm" }, { x: "1.2149963mm", y: "-0.8999728mm" }, { x: "1.2149963mm", y: "-0.8999728mm" }, { x: "1.2149963mm", y: "-0.5999734mm" }, { x: "1.2149963mm", y: "-0.5999734mm" }, { x: "0.8650351mm", y: "-0.5999734mm" }, { x: "0.8650351mm", y: "-0.5999734mm" }, { x: "0.6150483mm", y: "-0.5999734mm" }, { x: "0.6150483mm", y: "-0.5999734mm" }, { x: "0.6149975mm", y: "-0.5999734mm" }, { x: "0.6149975mm", y: "-0.5999734mm" }, { x: "0.6149975mm", y: "-0.8999728mm" }, { x: "0.6149975mm", y: "-0.8999728mm" }, { x: "0.6150483mm", y: "-0.8999728mm" }, { x: "0.6150483mm", y: "-0.8999728mm" }, { x: "0.6150483mm", y: "-1.1999722mm" }, { x: "0.6150483mm", y: "-1.1999722mm" }, { x: "0.8650351mm", y: "-1.1999722mm" }], shape: "polygon" }), jsx("smtpad", { portHints: ["pin10"], points: [{ x: "0.8650351mm", y: "1.1999976mm" }, { x: "0.8650351mm", y: "0.8999982mm" }, { x: "0.8650351mm", y: "0.8999982mm" }, { x: "1.2149963mm", y: "0.8999982mm" }, { x: "1.2149963mm", y: "0.8999982mm" }, { x: "1.2149963mm", y: "0.5999988mm" }, { x: "1.2149963mm", y: "0.5999988mm" }, { x: "0.8650351mm", y: "0.5999988mm" }, { x: "0.8650351mm", y: "0.5999988mm" }, { x: "0.6150483mm", y: "0.5999988mm" }, { x: "0.6150483mm", y: "0.5999988mm" }, { x: "0.6149975mm", y: "0.5999988mm" }, { x: "0.6149975mm", y: "0.5999988mm" }, { x: "0.6149975mm", y: "0.8999982mm" }, { x: "0.6149975mm", y: "0.8999982mm" }, { x: "0.6150483mm", y: "0.8999982mm" }, { x: "0.6150483mm", y: "0.8999982mm" }, { x: "0.6150483mm", y: "1.1999976mm" }, { x: "0.6150483mm", y: "1.1999976mm" }, { x: "0.8650351mm", y: "1.1999976mm" }], shape: "polygon" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "-0.2349373mm", pcbY: "0mm", width: "0.2999994mm", height: "2.3999952mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin6"], pcbX: "0.2649347mm", pcbY: "0mm", width: "0.2999994mm", height: "2.3999952mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "-0.9049893mm", pcbY: "0.225044mm", width: "0.5999988mm", height: "0.2500122mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "-0.9052433mm", pcbY: "-0.225044mm", width: "0.5999988mm", height: "0.2500122mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin9"], pcbX: "0.9050147mm", pcbY: "0.225044mm", width: "0.5999988mm", height: "0.2500122mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin8"], pcbX: "0.9050147mm", pcbY: "-0.225044mm", width: "0.5999988mm", height: "0.2500122mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -1.265008899999998, "y": 1.1256010000000742 }, { "x": -1.265008899999998, "y": 1.329994799999895 }] }), jsx("silkscreenpath", { route: [{ "x": -1.0517250999999987, "y": -1.2800075999999763 }, { "x": -1.265008899999998, "y": -1.2800075999999763 }, { "x": -1.265008899999998, "y": -1.116660199999842 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3449934999999869, "y": -1.09054900000001 }, { "x": 1.3449934999999869, "y": -1.2800075999999763 }, { "x": 1.0816971000000422, "y": -1.2800075999999763 }] }), jsx("silkscreenpath", { route: [{ "x": 1.0621644999999944, "y": 1.3199872000001278 }, { "x": 1.3449934999999869, "y": 1.3199872000001278 }, { "x": 1.3449934999999869, "y": 1.0905743999999231 }] }), jsx("silkscreenpath", { route: [{ "x": -1.2250038999998196, "y": 1.3199872000001278 }, { "x": -1.0621644999998807, "y": 1.3199872000001278 }] }), jsx("silkscreenpath", { route: [{ "x": -1.5803752999999006, "y": 1.2298680000000104 }, { "x": -1.584962365265028, "y": 1.1950257801482849 }, { "x": -1.5984109601424734, "y": 1.16255799999999 }, { "x": -1.6198045851166398, "y": 1.1346772851165952 }, { "x": -1.6476853000000347, "y": 1.1132836601425424 }, { "x": -1.6801530801483295, "y": 1.0998350652649833 }, { "x": -1.714995300000055, "y": 1.0952479999999696 }, { "x": -1.749837519851667, "y": 1.0998350652649833 }, { "x": -1.7823052999999618, "y": 1.1132836601425424 }, { "x": -1.8101860148833566, "y": 1.1346772851165952 }, { "x": -1.831579639857523, "y": 1.16255799999999 }, { "x": -1.8450282347349685, "y": 1.1950257801482849 }, { "x": -1.8496153000000959, "y": 1.2298680000000104 }, { "x": -1.8450282347349685, "y": 1.2647102198518496 }, { "x": -1.831579639857523, "y": 1.2971780000000308 }, { "x": -1.8101860148833566, "y": 1.3250587148834256 }, { "x": -1.7823052999999618, "y": 1.3464523398574784 }, { "x": -1.749837519851667, "y": 1.3599009347350375 }, { "x": -1.714995300000055, "y": 1.3644880000000512 }, { "x": -1.6801530801483295, "y": 1.3599009347350375 }, { "x": -1.6476853000000347, "y": 1.3464523398574784 }, { "x": -1.6198045851166398, "y": 1.3250587148834256 }, { "x": -1.5984109601424734, "y": 1.2971780000000308 }, { "x": -1.584962365265028, "y": 1.2647102198518496 }, { "x": -1.5803752999999006, "y": 1.2298680000000104 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.2390013mm", pcbY: "2.3716mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.0892013000000134, "y": 1.6216000000000577 }, { "x": 1.6111987000000454, "y": 1.6216000000000577 }, { "x": 1.6111987000000454, "y": -1.5199999999999818 }, { "x": -2.0892013000000134, "y": -1.5199999999999818 }, { "x": -2.0892013000000134, "y": 1.6216000000000577 }] })] }), cadModel: {
            objUrl: objPath$1,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0.004987299999929751, y: 0, z: -0.05 },
        }, ...props }));
};

const pinLabels$9 = {
    pin1: ["GND"],
    pin2: ["SW"],
    pin3: ["VIN"],
    pin4: ["EN"],
    pin5: ["FB"],
    pin6: ["PG"]
};
const TPS62A02DRLR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$9, supplierPartNumbers: {
            "jlcpcb": [
                "C5350187"
            ]
        }, manufacturerPartNumber: "TPS62A02DRLR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin5"], pcbX: "0.799973mm", pcbY: "0mm", width: "0.499999mm", height: "0.2999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "-0.799973mm", pcbY: "0mm", width: "0.499999mm", height: "0.2999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "-0.799973mm", pcbY: "-0.499999mm", width: "0.499999mm", height: "0.2999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.799973mm", pcbY: "0.499999mm", width: "0.499999mm", height: "0.2999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "0.799973mm", pcbY: "-0.499999mm", width: "0.499999mm", height: "0.2999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin6"], pcbX: "0.799973mm", pcbY: "0.499999mm", width: "0.499999mm", height: "0.2999994mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.47505619999998316, "y": 0.788339800000017 }, { "x": -0.47490379999999277, "y": 0.788339800000017 }] }), jsx("silkscreenpath", { route: [{ "x": 0.47505619999998316, "y": -0.7864602000000076 }, { "x": -0.47490379999999277, "y": -0.7864602000000076 }] }), jsx("silkscreenpath", { route: [{ "x": -0.780161000000021, "y": 0.9308845999999988 }, { "x": -0.7822035422689453, "y": 0.9153699511603861 }, { "x": -0.788191973195552, "y": 0.9009126000000123 }, { "x": -0.797718191108558, "y": 0.8884977911085485 }, { "x": -0.8101330000000075, "y": 0.8789715731955425 }, { "x": -0.8245903511603956, "y": 0.8729831422689358 }, { "x": -0.8401050000000083, "y": 0.8709406000000115 }, { "x": -0.855619648839621, "y": 0.8729831422689358 }, { "x": -0.8700769999999949, "y": 0.8789715731955425 }, { "x": -0.8824918088914586, "y": 0.8884977911085485 }, { "x": -0.8920180268044646, "y": 0.9009126000000123 }, { "x": -0.8980064577310714, "y": 0.9153699511603861 }, { "x": -0.9000490000000099, "y": 0.9308845999999988 }, { "x": -0.8980064577310714, "y": 0.9463992488396258 }, { "x": -0.8920180268044646, "y": 0.9608565999999996 }, { "x": -0.8824918088914586, "y": 0.9732714088914491 }, { "x": -0.8700769999999949, "y": 0.9827976268044551 }, { "x": -0.855619648839621, "y": 0.9887860577310619 }, { "x": -0.8401050000000083, "y": 0.9908286000000004 }, { "x": -0.8245903511603956, "y": 0.9887860577310619 }, { "x": -0.8101330000000075, "y": 0.9827976268044551 }, { "x": -0.797718191108558, "y": 0.9732714088914491 }, { "x": -0.788191973195552, "y": 0.9608565999999996 }, { "x": -0.7822035422689453, "y": 0.9463992488396258 }, { "x": -0.780161000000021, "y": 0.9308845999999988 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.059817mm", pcbY: "1.9954006mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.414716999999996, "y": 1.2454006000000106 }, { "x": 1.2950830000000053, "y": 1.2454006000000106 }, { "x": 1.2950830000000053, "y": -1.0833993999999905 }, { "x": -1.414716999999996, "y": -1.0833993999999905 }, { "x": -1.414716999999996, "y": 1.2454006000000106 }] })] }), cadModel: {
            objUrl: objPath$2,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0.00005079999999679785, y: 0.02905759999998736, z: 0 },
        }, ...props }));
};

const DFE201612PD_1R0M_P2 = (props) => {
    return (jsx("inductor", { inductance: "1uH", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C2043195"
            ]
        }, manufacturerPartNumber: "DFE201612PD_1R0M_P2", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2"], pcbX: "0.999998mm", pcbY: "0mm", width: "1.1999976mm", height: "1.7999964mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.999998mm", pcbY: "0mm", width: "1.1999976mm", height: "1.7999964mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.4999990000000025, "y": 1.1999975999999606 }, { "x": -1.54998420000004, "y": 1.1999975999999606 }] }), jsx("silkscreenpath", { route: [{ "x": -0.4999990000000025, "y": -1.1999976000000743 }, { "x": -1.54998420000004, "y": -1.1999976000000743 }] }), jsx("silkscreenpath", { route: [{ "x": 0.49999899999988884, "y": 1.1999975999999606 }, { "x": 1.54998420000004, "y": 1.1999975999999606 }] }), jsx("silkscreenpath", { route: [{ "x": 0.49999899999988884, "y": -1.1999976000000743 }, { "x": 1.54998420000004, "y": -1.1999976000000743 }] }), jsx("silkscreenpath", { route: [{ "x": -1.8999708000001192, "y": 0.9999979999998914 }, { "x": -1.8999708000001192, "y": -0.9999979999998914 }] }), jsx("silkscreenpath", { route: [{ "x": 1.8999708000000055, "y": 0.9999979999998914 }, { "x": 1.8999708000000055, "y": -0.9999979999998914 }] }), jsx("silkscreenpath", { route: [{ "x": -1.54998420000004, "y": 1.1999975999999606 }, { "x": -1.6999712000001637, "y": 1.1999975999999606 }, { "x": -1.8999708000001192, "y": 0.9999979999998914 }] }), jsx("silkscreenpath", { route: [{ "x": -1.54998420000004, "y": -1.1999976000000743 }, { "x": -1.6999712000001637, "y": -1.1999976000000743 }, { "x": -1.8999708000001192, "y": -0.9999979999998914 }] }), jsx("silkscreenpath", { route: [{ "x": 1.54998420000004, "y": 1.1999975999999606 }, { "x": 1.6999711999999363, "y": 1.1999975999999606 }, { "x": 1.8999708000000055, "y": 0.9999979999998914 }] }), jsx("silkscreenpath", { route: [{ "x": 1.54998420000004, "y": -1.1999976000000743 }, { "x": 1.6999711999999363, "y": -1.1999976000000743 }, { "x": 1.8999708000000055, "y": -0.9999979999998914 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.009398mm", pcbY: "2.1938mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.1456020000000535, "y": 1.4437999999998965 }, { "x": 2.164397999999892, "y": 1.4437999999998965 }, { "x": 2.164397999999892, "y": -1.4438000000001239 }, { "x": -2.1456020000000535, "y": -1.4438000000001239 }, { "x": -2.1456020000000535, "y": 1.4437999999998965 }] })] }), cadModel: {
            objUrl: objPath$3,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 0, z: -0.475 },
        }, ...props }));
};

const XRCGB25M000F3A00R0 = (props) => {
    return (jsx("crystal", { frequency: "25MHz", loadCapacitance: "6pF", pinVariant: "four_pin", symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C467842"
            ]
        }, manufacturerPartNumber: "XRCGB25M000F3A00R0", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.650113mm", pcbY: "-0.450088mm", width: "0.850011mm", height: "0.6999986mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "0.650113mm", pcbY: "-0.450088mm", width: "0.850011mm", height: "0.6999986mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "0.650113mm", pcbY: "0.449834mm", width: "0.850011mm", height: "0.6999986mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-0.649859mm", pcbY: "0.450088mm", width: "0.850011mm", height: "0.6999986mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -1.2698729999999614, "y": 1.0160000000000764 }, { "x": -1.2698729999999614, "y": -1.143000000000029 }, { "x": 1.2701269999998885, "y": -1.143000000000029 }, { "x": 1.2701269999998885, "y": 1.0160000000000764 }, { "x": -1.2698729999999614, "y": 1.0160000000000764 }] }), jsx("silkscreenpath", { route: [{ "x": -1.5238730000000942, "y": -0.2539999999999054 }, { "x": -1.5238730000000942, "y": -1.3969999999999345 }, { "x": -0.5078730000000178, "y": -1.3969999999999345 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.126873mm", pcbY: "2.016mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.7738730000000942, "y": 1.2660000000000764 }, { "x": 1.5201269999998885, "y": 1.2660000000000764 }, { "x": 1.5201269999998885, "y": -1.6469999999999345 }, { "x": -1.7738730000000942, "y": -1.6469999999999345 }, { "x": -1.7738730000000942, "y": 1.2660000000000764 }] })] }), cadModel: {
            objUrl: objPath$4,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0.0050000000000000044, y: 0, z: -0.01 },
        }, ...props }));
};

const pinLabels$8 = {
    pin1: ["DAT2"],
    pin2: ["pin2"],
    pin3: ["CMD"],
    pin4: ["VDD"],
    pin5: ["CLK"],
    pin6: ["VSS"],
    pin7: ["DAT0"],
    pin8: ["DAT1"],
    pin9: ["SW_B"],
    pin10: ["pin10"],
    pin11: ["SW_A"],
    pin12: ["pin12"],
    pin13: ["pin13"],
    pin14: ["pin14"]
};
const DM3AT_SF_PEJM5 = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$8, supplierPartNumbers: {
            "jlcpcb": [
                "C114218"
            ]
        }, manufacturerPartNumber: "DM3AT_SF_PEJM5", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin14"], pcbX: "4.32491515mm", pcbY: "7.72502265mm", width: "0.999998mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin13"], pcbX: "6.67492315mm", pcbY: "-7.37502335mm", width: "1.2999974mm", height: "1.8999962mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin12"], pcbX: "-6.82492285mm", pcbY: "-6.92493535mm", width: "0.999998mm", height: "2.7999944mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin11"], pcbX: "-6.82492285mm", pcbY: "-2.77508335mm", width: "0.999998mm", height: "0.7999984mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin10"], pcbX: "-6.82492285mm", pcbY: "3.42505665mm", width: "0.999998mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin9"], pcbX: "-5.87496285mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin8"], pcbX: "-4.92500285mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin7"], pcbX: "-3.82492885mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin6"], pcbX: "-2.72510885mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "-1.62503485mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-0.52496085mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "0.57511315mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "1.67493315mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "2.77500715mm", pcbY: "7.72502265mm", width: "0.6999986mm", height: "1.1999976mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -6.368992849999927, "y": 7.725022650000028 }, { "x": -7.511992849999842, "y": 7.725022650000028 }, { "x": -7.511992849999842, "y": -8.530977349999944 }, { "x": -7.38499284999989, "y": -8.530977349999944 }, { "x": 7.601007149999987, "y": -8.530977349999944 }, { "x": 7.601007149999987, "y": 7.725022650000028 }, { "x": 5.061007150000137, "y": 7.725022650000028 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.04450715mm", pcbY: "9.33411465mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -7.761992849999842, "y": 8.58411465000006 }, { "x": 7.851007149999987, "y": 8.58411465000006 }, { "x": 7.851007149999987, "y": -8.781485349999912 }, { "x": -7.761992849999842, "y": -8.781485349999912 }, { "x": -7.761992849999842, "y": 8.58411465000006 }] })] }), cadModel: {
            objUrl: objPath$5,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0.004997449999905257, y: 0.16199104999998815, z: -1.89 },
        }, ...props }));
};

const pinLabels$7 = {
    pin1: ["VIN"],
    pin2: ["GND"],
    pin3: ["ON"],
    pin4: ["CT"],
    pin5: ["QOD"],
    pin6: ["VOUT"]
};
const TPS22918DBVR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$7, supplierPartNumbers: {
            "jlcpcb": [
                "C131941"
            ]
        }, manufacturerPartNumber: "TPS22918DBVR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin3"], pcbX: "1.35001mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "1.35001mm", pcbY: "-0mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "1.35001mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin6"], pcbX: "-1.35001mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "-1.35001mm", pcbY: "-0mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-1.35001mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.899998200000141, "y": 1.5499080000000731 }, { "x": 0.9000236000000541, "y": 1.5499080000000731 }] }), jsx("silkscreenpath", { route: [{ "x": -0.899998200000141, "y": -1.5501111999999466 }, { "x": 0.9000236000000541, "y": -1.5501111999999466 }] }), jsx("silkscreenpath", { route: [{ "x": 1.5240000000001146, "y": -1.6510000000000673 }, { "x": 1.5196725799386286, "y": -1.6838700187280438 }, { "x": 1.5069852262805625, "y": -1.7145000000000437 }, { "x": 1.4868025612107658, "y": -1.740802561210785 }, { "x": 1.4604999999999109, "y": -1.7609852262806953 }, { "x": 1.4298700187280247, "y": -1.7736725799387614 }, { "x": 1.3969999999999345, "y": -1.77800000000002 }, { "x": 1.3641299812720717, "y": -1.7736725799387614 }, { "x": 1.3334999999999582, "y": -1.7609852262806953 }, { "x": 1.3071974387893306, "y": -1.740802561210785 }, { "x": 1.2870147737194202, "y": -1.7145000000000437 }, { "x": 1.2743274200612404, "y": -1.6838700187280438 }, { "x": 1.2699999999999818, "y": -1.6510000000000673 }, { "x": 1.2743274200612404, "y": -1.6181299812719772 }, { "x": 1.2870147737194202, "y": -1.5874999999999773 }, { "x": 1.3071974387893306, "y": -1.5611974387893497 }, { "x": 1.3334999999999582, "y": -1.541014773719553 }, { "x": 1.3641299812720717, "y": -1.5283274200613732 }, { "x": 1.3969999999999345, "y": -1.524000000000001 }, { "x": 1.4298700187280247, "y": -1.5283274200613732 }, { "x": 1.4604999999999109, "y": -1.541014773719553 }, { "x": 1.4868025612107658, "y": -1.5611974387893497 }, { "x": 1.5069852262805625, "y": -1.5874999999999773 }, { "x": 1.5196725799386286, "y": -1.6181299812719772 }, { "x": 1.5240000000001146, "y": -1.6510000000000673 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.012446mm", pcbY: "2.562354mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.1425540000000183, "y": 1.8123540000000276 }, { "x": 2.167445999999927, "y": 1.8123540000000276 }, { "x": 2.167445999999927, "y": -2.015045999999984 }, { "x": -2.1425540000000183, "y": -2.015045999999984 }, { "x": -2.1425540000000183, "y": 1.8123540000000276 }] })] }), cadModel: {
            objUrl: objPath$6,
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0.000025399999913133797, y: -889000000370288e-19, z: -0.048939 },
        }, ...props }));
};

const pinLabels$6 = {
    pin1: ["IO1"],
    pin2: ["IO2"],
    pin3: ["GND2"],
    pin4: ["IO3"],
    pin5: ["IO4"],
    pin6: ["NC1"],
    pin7: ["NC2"],
    pin8: ["GND1"],
    pin9: ["NC3"],
    pin10: ["NC4"]
};
const TPD4E02B04DQAR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$6, symbol: undefined, supplierPartNumbers: {
            "jlcpcb": [
                "C106794"
            ]
        }, manufacturerPartNumber: "TPD4E02B04DQAR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin6"], pcbX: "0.999998mm", pcbY: "0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin7"], pcbX: "0.500126mm", pcbY: "0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin8"], pcbX: "0mm", pcbY: "0.3999992mm", width: "0.3999992mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin9"], pcbX: "-0.499872mm", pcbY: "0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin10"], pcbX: "-0.999998mm", pcbY: "0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "0.999998mm", pcbY: "-0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "0.500126mm", pcbY: "-0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "0mm", pcbY: "-0.3999992mm", width: "0.3999992mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "-0.499872mm", pcbY: "-0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.999998mm", pcbY: "-0.3999992mm", width: "0.1999996mm", height: "0.5649976mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -1.3261847999999645, "y": -0.5762243999998873 }, { "x": -1.3261847999999645, "y": 0.576224400000001 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3261848000000782, "y": 0.576224400000001 }, { "x": 1.3261848000000782, "y": -0.5762243999998873 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8999219999999468, "y": -1.019047999999998 }, { "x": -0.9033320070083164, "y": -1.044949574757652 }, { "x": -0.9133296416908934, "y": -1.069086000000084 }, { "x": -0.9292335817659705, "y": -1.0898124182340325 }, { "x": -0.9499600000000328, "y": -1.1057163583091096 }, { "x": -0.9740964252422373, "y": -1.1157139929916866 }, { "x": -0.9999979999998914, "y": -1.1191239999999425 }, { "x": -1.0258995747575455, "y": -1.1157139929916866 }, { "x": -1.050036000000091, "y": -1.1057163583091096 }, { "x": -1.070762418233926, "y": -1.0898124182340325 }, { "x": -1.086666358309003, "y": -1.069086000000084 }, { "x": -1.09666399299158, "y": -1.044949574757652 }, { "x": -1.100073999999836, "y": -1.019047999999998 }, { "x": -1.09666399299158, "y": -0.9931464252423439 }, { "x": -1.086666358309003, "y": -0.9690100000000257 }, { "x": -1.070762418233926, "y": -0.9482835817659634 }, { "x": -1.050036000000091, "y": -0.9323796416908863 }, { "x": -1.0258995747575455, "y": -0.9223820070083093 }, { "x": -0.9999979999998914, "y": -0.9189720000000534 }, { "x": -0.9740964252422373, "y": -0.9223820070083093 }, { "x": -0.9499600000000328, "y": -0.9323796416908863 }, { "x": -0.9292335817659705, "y": -0.9482835817659634 }, { "x": -0.9133296416908934, "y": -0.9690100000000257 }, { "x": -0.9033320070083164, "y": -0.9931464252423439 }, { "x": -0.8999219999999468, "y": -1.019047999999998 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "1.6858mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.5707999999998492, "y": 0.935799999999972 }, { "x": 1.570799999999963, "y": 0.935799999999972 }, { "x": 1.570799999999963, "y": -1.3676000000000386 }, { "x": -1.5707999999998492, "y": -1.3676000000000386 }, { "x": -1.5707999999998492, "y": 0.935799999999972 }] })] }), cadModel: {
            objUrl: objPath$7,
            pcbRotationOffset: 90,
            modelOriginPosition: { x: 0.000012700000070253736, y: 0.000012699999956566899, z: 0 },
        }, ...props }));
};

const pinLabels$5 = {
    pin1: ["VCCA"],
    pin2: ["GND"],
    pin3: ["A"],
    pin4: ["B"],
    pin5: ["DIR"],
    pin6: ["VCCB"]
};
const SN74AXC1T45DBVR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$5, supplierPartNumbers: {
            "jlcpcb": [
                "C2677376"
            ]
        }, manufacturerPartNumber: "SN74AXC1T45DBVR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin6"], pcbX: "-0.94996mm", pcbY: "1.1999976mm", width: "0.5500116mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "0.94996mm", pcbY: "1.1999976mm", width: "0.5500116mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "0.94996mm", pcbY: "-1.1999976mm", width: "0.5500116mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "0mm", pcbY: "-1.1999976mm", width: "0.5500116mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.94996mm", pcbY: "-1.1999976mm", width: "0.5500116mm", height: "1.1999976mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "0mm", pcbY: "1.1999976mm", width: "0.5500116mm", height: "1.1999976mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -1.4999969999999934, "y": -0.7999984000000069 }, { "x": -1.4999969999999934, "y": 0.7999984000000069 }] }), jsx("silkscreenpath", { route: [{ "x": 1.4999970000000076, "y": 0.7999984000000069 }, { "x": 1.4999970000000076, "y": -0.7999984000000069 }] }), jsx("silkscreenpath", { route: [{ "x": -0.8481060000000014, "y": -2.1249639999999914 }, { "x": -0.8524334200612742, "y": -2.1578340187280105 }, { "x": -0.8651207737193829, "y": -2.188463999999996 }, { "x": -0.8853034387893075, "y": -2.2147665612106806 }, { "x": -0.9116059999999919, "y": -2.2349492262806194 }, { "x": -0.9422359812719776, "y": -2.2476365799386997 }, { "x": -0.9751059999999825, "y": -2.2519639999999868 }, { "x": -1.0079760187280158, "y": -2.2476365799386997 }, { "x": -1.0386060000000015, "y": -2.2349492262806194 }, { "x": -1.0649085612107, "y": -2.2147665612106806 }, { "x": -1.0850912262806105, "y": -2.188463999999996 }, { "x": -1.0977785799387192, "y": -2.1578340187280105 }, { "x": -1.102105999999992, "y": -2.1249639999999914 }, { "x": -1.0977785799387192, "y": -2.092093981271958 }, { "x": -1.0850912262806105, "y": -2.0614639999999866 }, { "x": -1.0649085612107, "y": -2.0351614387893022 }, { "x": -1.0386060000000015, "y": -2.0149787737193634 }, { "x": -1.0079760187280158, "y": -2.002291420061283 }, { "x": -0.9751059999999825, "y": -1.997963999999996 }, { "x": -0.9422359812719776, "y": -2.002291420061283 }, { "x": -0.9116059999999919, "y": -2.0149787737193634 }, { "x": -0.8853034387893075, "y": -2.0351614387893022 }, { "x": -0.8651207737193829, "y": -2.0614639999999866 }, { "x": -0.8524334200612742, "y": -2.092093981271958 }, { "x": -0.8481060000000014, "y": -2.1249639999999914 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "2.8034mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.7485999999999962, "y": 2.0534000000000106 }, { "x": 1.7486000000000104, "y": 2.0534000000000106 }, { "x": 1.7486000000000104, "y": -2.5105999999999824 }, { "x": -1.7485999999999962, "y": -2.5105999999999824 }, { "x": -1.7485999999999962, "y": 2.0534000000000106 }] })] }), cadModel: {
            objUrl: objPath$8,
            pcbRotationOffset: 90,
            modelOriginPosition: { x: 0, y: 0.000012700000013410317, z: 0.050795 },
        }, ...props }));
};

const pinLabels$4 = {
    pin1: ["IO1"],
    pin2: ["IO2"],
    pin3: ["GND"]
};
const TPD2E2U06DCKR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$4, supplierPartNumbers: {
            "jlcpcb": [
                "C1855726"
            ]
        }, manufacturerPartNumber: "TPD2E2U06DCKR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1"], pcbX: "-0.65024mm", pcbY: "-0.94996mm", width: "0.6999986mm", height: "0.999998mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "0.65024mm", pcbY: "-0.94996mm", width: "0.6999986mm", height: "0.999998mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "-0.000254mm", pcbY: "0.94996mm", width: "0.6999986mm", height: "0.999998mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 1.1998705999999402, "y": 0.7000239999999849 }, { "x": 1.1998705999999402, "y": -0.6999478000000181 }] }), jsx("silkscreenpath", { route: [{ "x": -1.200124599999981, "y": 0.7000239999999849 }, { "x": -0.5042915999999877, "y": 0.7000239999999849 }] }), jsx("silkscreenpath", { route: [{ "x": 0.5040376000000606, "y": 0.7000239999999849 }, { "x": 1.1936729999999898, "y": 0.7000239999999849 }] }), jsx("silkscreenpath", { route: [{ "x": -1.200124599999981, "y": 0.7000239999999849 }, { "x": -1.200124599999981, "y": -0.6802374000001237 }] }), jsx("silkscreenpath", { route: [{ "x": 1.1998705999999402, "y": -0.6999478000000181 }, { "x": 1.1539728000000196, "y": -0.6999478000000181 }] }), jsx("silkscreenpath", { route: [{ "x": 0.1457198000000517, "y": -0.6999478000000181 }, { "x": -0.14597379999997884, "y": -0.6999478000000181 }] }), jsx("silkscreenpath", { route: [{ "x": -1.1542776000000003, "y": -0.6999478000000181 }, { "x": -1.200124599999981, "y": -0.6999478000000181 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.225552mm", pcbY: "2.438148mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.885251999999923, "y": 1.6881479999999556 }, { "x": 1.4341479999999365, "y": 1.6881479999999556 }, { "x": 1.4341479999999365, "y": -1.7074519999999893 }, { "x": -1.885251999999923, "y": -1.7074519999999893 }, { "x": -1.885251999999923, "y": 1.6881479999999556 }] })] }), cadModel: {
            objUrl: objPath$9,
            pcbRotationOffset: 90,
            modelOriginPosition: { x: 0.000038099999983387534, y: -12699999979304266e-20, z: -0.1 },
        }, ...props }));
};

const pinLabels$3 = {
    pin1: ["pin1"],
    pin2: ["pin2"],
    pin3: ["pin3"],
    pin4: ["pin4"],
    pin5: ["pin5"],
    pin6: ["pin6"]
};
const S4B_PH_SM4_K_TB_LF__SN_ = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$3, supplierPartNumbers: {
            "jlcpcb": [
                "C265332"
            ]
        }, manufacturerPartNumber: "S4B_PH_SM4_K_TB_LF__SN_", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1"], pcbX: "3.002026mm", pcbY: "-3.2503745mm", width: "0.999998mm", height: "2.999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "0.999998mm", pcbY: "-3.2503745mm", width: "0.999998mm", height: "2.999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "-0.999998mm", pcbY: "-3.2503745mm", width: "0.999998mm", height: "2.999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-2.999994mm", pcbY: "-3.2503745mm", width: "0.999998mm", height: "2.999994mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin5"], pcbX: "-5.40004mm", pcbY: "2.7503755mm", width: "1.999996mm", height: "3.999992mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin6"], pcbX: "5.40004mm", pcbY: "2.7503755mm", width: "1.999996mm", height: "3.999992mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -3.7077396000001954, "y": -1.6496411000000535 }, { "x": -5.001260000000002, "y": -1.6496411000000535 }, { "x": -5.001260000000002, "y": -1.6486505000001443 }] }), jsx("silkscreenpath", { route: [{ "x": 6.000013399999943, "y": -1.6496411000000535 }, { "x": 3.70977159999984, "y": -1.6496411000000535 }] }), jsx("silkscreenpath", { route: [{ "x": 3.9999919999999065, "y": -1.6496157000001404 }, { "x": 4.5000164000000495, "y": -0.7496175000001131 }, { "x": 5.000015399999938, "y": -1.6496411000000535 }] }), jsx("silkscreenpath", { route: [{ "x": -5.001260000000002, "y": -1.6486505000001443 }, { "x": -5.001260000000002, "y": -3.248850500000117 }] }), jsx("silkscreenpath", { route: [{ "x": -4.999990000000025, "y": -3.2496125000001257 }, { "x": -5.998209999999972, "y": -3.2496125000001257 }, { "x": -5.998209999999972, "y": -1.6494125000000395 }] }), jsx("silkscreenpath", { route: [{ "x": 6.000013399999943, "y": -3.2496125000001257 }, { "x": 5.000015399999938, "y": -3.2496125000001257 }, { "x": 5.000015399999938, "y": -1.6496157000001404 }] }), jsx("silkscreenpath", { route: [{ "x": 6.000013399999943, "y": -1.6496157000001404 }, { "x": 6.000013399999943, "y": -3.2496125000001257 }] }), jsx("silkscreenpath", { route: [{ "x": -5.998209999999972, "y": -1.6494125000000395 }, { "x": -5.99998800000003, "y": -1.6494125000000395 }, { "x": -5.99998800000003, "y": 0.5192394999999124 }] }), jsx("silkscreenpath", { route: [{ "x": 6.000013399999943, "y": -1.6496411000000535 }, { "x": 5.999987999999917, "y": -1.6496411000000535 }, { "x": 5.999987999999917, "y": 0.5192394999999124 }] }), jsx("silkscreenpath", { route: [{ "x": -4.168902000000003, "y": 4.350372300000004 }, { "x": 4.168901999999889, "y": 4.350372300000004 }] }), jsx("silkscreenpath", { route: [{ "x": 4.20999919999997, "y": -2.4203787000001284 }, { "x": 4.204887651423405, "y": -2.4592047661216156 }, { "x": 4.189901349282536, "y": -2.4953849000002037 }, { "x": 4.166061585301918, "y": -2.5264534853021132 }, { "x": 4.134992999999895, "y": -2.550293249282845 }, { "x": 4.0988128661214205, "y": -2.565279551423714 }, { "x": 4.059986799999933, "y": -2.5703911000000517 }, { "x": 4.021160733878332, "y": -2.565279551423714 }, { "x": 3.984980599999858, "y": -2.550293249282845 }, { "x": 3.953912014697835, "y": -2.5264534853021132 }, { "x": 3.9300722507172168, "y": -2.4953849000002037 }, { "x": 3.9150859485763476, "y": -2.4592047661216156 }, { "x": 3.9099743999998964, "y": -2.4203787000001284 }, { "x": 3.9150859485763476, "y": -2.3815526338786412 }, { "x": 3.9300722507172168, "y": -2.3453724999999395 }, { "x": 3.953912014697835, "y": -2.3143039146981437 }, { "x": 3.984980599999858, "y": -2.290464150717412 }, { "x": 4.021160733878332, "y": -2.275477848576543 }, { "x": 4.059986799999933, "y": -2.2703663000000915 }, { "x": 4.0988128661214205, "y": -2.275477848576543 }, { "x": 4.134992999999895, "y": -2.290464150717412 }, { "x": 4.166061585301918, "y": -2.3143039146981437 }, { "x": 4.189901349282536, "y": -2.3453724999999395 }, { "x": 4.204887651423405, "y": -2.3815526338786412 }, { "x": 4.20999919999997, "y": -2.4203787000001284 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "5.7419895mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -6.650800000000004, "y": 4.9919894999999315 }, { "x": 6.6508000000001175, "y": 4.9919894999999315 }, { "x": 6.6508000000001175, "y": -5.210810500000093 }, { "x": -6.650800000000004, "y": -5.210810500000093 }, { "x": -6.650800000000004, "y": 4.9919894999999315 }] })] }), cadModel: {
            objUrl: objPath$a,
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: 2.6236220999999436, z: 0.05 },
        }, ...props }));
};

const pinLabels$2 = {
    pin1: ["pin1"],
    pin2: ["pin2"],
    pin3: ["pin3"],
    pin4: ["pin4"]
};
const SKRPACE010 = (props) => {
    const { name = "SW1", ...restProps } = props;
    return (jsx("pushbutton", { name: name, pinLabels: pinLabels$2, supplierPartNumbers: {
            "jlcpcb": [
                "C139797"
            ]
        }, manufacturerPartNumber: "SKRPACE010", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin1"], pcbX: "-2.100072mm", pcbY: "1.074928mm", width: "1.0500106mm", height: "0.6999986mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "2.100072mm", pcbY: "1.074928mm", width: "1.0500106mm", height: "0.6999986mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "-2.100072mm", pcbY: "-1.074928mm", width: "1.0500106mm", height: "0.6999986mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "2.100072mm", pcbY: "-1.074928mm", width: "1.0500106mm", height: "0.6999986mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": -0.5080000000000382, "y": 1.0160000000000764 }, { "x": 0.5079999999999245, "y": 1.0160000000000764 }] }), jsx("silkscreenpath", { route: [{ "x": -0.5080000000000382, "y": -1.0159999999999627 }, { "x": 0.5079999999999245, "y": -1.0159999999999627 }] }), jsx("silkscreenpath", { route: [{ "x": 2.199893999999972, "y": 0.5438140000001113 }, { "x": 2.199893999999972, "y": -0.5438139999999976 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3664184000000432, "y": 1.5238729999999805 }, { "x": -1.366418400000157, "y": 1.5238729999999805 }] }), jsx("silkscreenpath", { route: [{ "x": -2.1998940000000857, "y": 0.5438140000001113 }, { "x": -2.1998940000000857, "y": -0.5438139999999976 }] }), jsx("silkscreenpath", { route: [{ "x": -1.3810995999999705, "y": -1.5499079999999594 }, { "x": 1.3810995999998568, "y": -1.5499079999999594 }] }), jsx("silkscreenpath", { route: [{ "x": 0.5079999999999245, "y": 1.0160000000000764 }, { "x": 0.26485528508385414, "y": 0.9864768865048745 }, { "x": 0.035841257203401256, "y": 0.8996233220636896 }, { "x": -0.16573262077258732, "y": 0.7604869201419433 }, { "x": -0.32815160774794094, "y": 0.5771537826788062 }, { "x": -0.4419765025684228, "y": 0.36027856523526225 }, { "x": -0.5005922160837599, "y": 0.1224652671394324 }, { "x": -0.5005922160837599, "y": -0.1224652671394324 }, { "x": -0.4419765025684228, "y": -0.36027856523514856 }, { "x": -0.32815160774794094, "y": -0.5771537826788062 }, { "x": -0.16573262077258732, "y": -0.7604869201418296 }, { "x": 0.035841257203401256, "y": -0.8996233220635759 }, { "x": 0.26485528508385414, "y": -0.9864768865047608 }, { "x": 0.5079999999999245, "y": -1.0159999999999627 }] }), jsx("silkscreenpath", { route: [{ "x": -0.5080000000000382, "y": -1.0159999999999627 }, { "x": -0.26485528508374045, "y": -0.9864768865047608 }, { "x": -0.03584125720362863, "y": -0.8996233220635759 }, { "x": 0.165732620772701, "y": -0.7604869201418296 }, { "x": 0.32815160774794094, "y": -0.5771537826788062 }, { "x": 0.4419765025683091, "y": -0.36027856523514856 }, { "x": 0.5005922160835325, "y": -0.1224652671394324 }, { "x": 0.5005922160835325, "y": 0.1224652671394324 }, { "x": 0.4419765025683091, "y": 0.36027856523526225 }, { "x": 0.32815160774794094, "y": 0.5771537826788062 }, { "x": 0.165732620772701, "y": 0.7604869201419433 }, { "x": -0.03584125720362863, "y": 0.8996233220636896 }, { "x": -0.26485528508374045, "y": 0.9864768865048745 }, { "x": -0.5080000000000382, "y": 1.0160000000000764 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.0127mm", pcbY: "2.6256mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.8662000000001626, "y": 1.8756000000000768 }, { "x": 2.891599999999812, "y": 1.8756000000000768 }, { "x": 2.891599999999812, "y": -1.8501999999998588 }, { "x": -2.8662000000001626, "y": -1.8501999999998588 }, { "x": -2.8662000000001626, "y": 1.8756000000000768 }] })] }), cadModel: {
            objUrl: objPath$b,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0.000012700000070253736, y: 0.00012700000002041634, z: -0.01 },
        }, ...restProps }));
};

const pinLabels$1 = {
    pin1: ["A"],
    pin2: ["B"],
    pin3: ["GND"],
    pin4: ["Y"],
    pin5: ["VCC"]
};
const SN74LVC1G08DBVR = (props) => {
    return (jsx("chip", { pinLabels: pinLabels$1, supplierPartNumbers: {
            "jlcpcb": [
                "C7666"
            ]
        }, manufacturerPartNumber: "SN74LVC1G08DBVR", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin5"], pcbX: "-1.300099mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin4"], pcbX: "-1.300099mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin3"], pcbX: "1.300099mm", pcbY: "0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin2"], pcbX: "1.300099mm", pcbY: "-0mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1"], pcbX: "1.300099mm", pcbY: "-0.94996mm", width: "1.0999978mm", height: "0.5999988mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": -1.404111999999941 }, { "x": 0.8999728000000005, "y": -1.5500604000000067 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": -0.45412660000010874 }, { "x": 0.8999728000000005, "y": -0.4958079999998972 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": 0.4958079999998972 }, { "x": 0.8999728000000005, "y": 0.45415200000002187 }] }), jsx("silkscreenpath", { route: [{ "x": 0.8999728000000005, "y": 1.5499587999998994 }, { "x": 0.8999728000000005, "y": 1.404111999999941 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": -1.404111999999941 }, { "x": -0.9000489999999672, "y": -1.5500604000000067 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 0.4958079999998972 }, { "x": -0.9000489999999672, "y": -0.4958334000000377 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 1.5499587999998994 }, { "x": -0.9000489999999672, "y": 1.4040866000000278 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": 1.5499587999998994 }, { "x": 0.8999728000000005, "y": 1.5499587999998994 }] }), jsx("silkscreenpath", { route: [{ "x": -0.9000489999999672, "y": -1.5500604000000067 }, { "x": 0.8999728000000005, "y": -1.5500604000000067 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "0.012319mm", pcbY: "2.562354mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -2.091880999999944, "y": 1.8123540000000276 }, { "x": 2.1165190000000393, "y": 1.8123540000000276 }, { "x": 2.1165190000000393, "y": -1.786446000000069 }, { "x": -2.091880999999944, "y": -1.786446000000069 }, { "x": -2.091880999999944, "y": 1.8123540000000276 }] })] }), cadModel: {
            objUrl: objPath$c,
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: -12700000070253736e-21, z: -0.049083 },
        }, ...props }));
};

const pinLabels = {
    pin1: ["cathode", "neg"],
    pin2: ["anode", "pos"]
};
const LTST_C190KGKT = (props) => {
    const { name = "LED1", ...restProps } = props;
    return (jsx("led", { name: name, pinLabels: pinLabels, supplierPartNumbers: {
            "jlcpcb": [
                "C125094"
            ]
        }, manufacturerPartNumber: "LTST_C190KGKT", footprint: jsxs("footprint", { children: [jsx("smtpad", { portHints: ["pin2", "anode", "pos"], pcbX: "0.7489952mm", pcbY: "0.000127mm", width: "0.7999984mm", height: "0.7999984mm", shape: "rect" }), jsx("smtpad", { portHints: ["pin1", "cathode", "neg"], pcbX: "-0.7489952mm", pcbY: "-0.000127mm", width: "0.7999984mm", height: "0.7999984mm", shape: "rect" }), jsx("silkscreenpath", { route: [{ "x": 0.22042119999991883, "y": -0.3235197999999855 }, { "x": 0.21046439999986433, "y": -0.3235197999999855 }, { "x": -0.11958320000007916, "y": 0.006527799999958006 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22042119999991883, "y": 0.3565143999999236 }, { "x": 0.22042119999991883, "y": 0.346532199999956 }, { "x": -0.11958320000007916, "y": 0.006527799999958006 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22042119999991883, "y": 0.3565143999999236 }, { "x": 0.22042119999991883, "y": -0.3235197999999855 }] }), jsx("silkscreenpath", { route: [{ "x": 0.24046179999993456, "y": 0.7565898000000288 }, { "x": 1.3904721999999765, "y": 0.7565898000000288 }] }), jsx("silkscreenpath", { route: [{ "x": 0.24046179999993456, "y": -0.7435342000001128 }, { "x": 1.3904721999999765, "y": -0.7435342000001128 }] }), jsx("silkscreenpath", { route: [{ "x": 1.3904721999999765, "y": 0.7564882000000352 }, { "x": 1.3904721999999765, "y": -0.7234428000000435 }] }), jsx("silkscreenpath", { route: [{ "x": -0.13954760000001443, "y": -0.7458455999999387 }, { "x": -1.1896598000000722, "y": -0.7458455999999387 }] }), jsx("silkscreenpath", { route: [{ "x": -1.4896084000000656, "y": -0.3457701999999472 }, { "x": -1.4896084000000656, "y": -0.44579539999995177 }, { "x": -1.1896598000000722, "y": -0.7458455999999387 }] }), jsx("silkscreenpath", { route: [{ "x": -1.4896084000000656, "y": 0.3541776000000709 }, { "x": -1.4896084000000656, "y": -0.3457701999999472 }] }), jsx("silkscreenpath", { route: [{ "x": -1.4896084000000656, "y": 0.3541776000000709 }, { "x": -1.4896084000000656, "y": 0.45432980000009593 }, { "x": -1.1896598000000722, "y": 0.7542784000000893 }] }), jsx("silkscreenpath", { route: [{ "x": -0.13954760000001443, "y": 0.7542784000000893 }, { "x": -1.1896598000000722, "y": 0.7542784000000893 }] }), jsx("silkscreenpath", { route: [{ "x": 0.22042119999991883, "y": 0.006527799999958006 }, { "x": -0.11958320000007916, "y": 0.006527799999958006 }] }), jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.066675mm", pcbY: "1.767715mm", anchorAlignment: "center", fontSize: "1mm" }), jsx("courtyardoutline", { outline: [{ "x": -1.7517750000001797, "y": 1.0177150000000665 }, { "x": 1.618425000000002, "y": 1.0177150000000665 }, { "x": 1.618425000000002, "y": -0.9808849999999438 }, { "x": -1.7517750000001797, "y": -0.9808849999999438 }, { "x": -1.7517750000001797, "y": 1.0177150000000665 }] })] }), cadModel: {
            objUrl: objPath$d,
            pcbRotationOffset: 0,
            modelOriginPosition: { x: -12700000070253736e-21, y: 0.000012699999956566899, z: -0.01 },
        }, ...restProps }));
};

/** Every physical pin is annotated, including deliberately unused pins. */
const pinMetadata = (count, connected, attributes = {}) => ({
    noConnect: Array.from({ length: count }, (_, index) => index + 1)
        .filter((pin) => !connected.includes(pin))
        .map((pin) => `pin${pin}`),
    pinAttributes: Object.fromEntries(Array.from({ length: count }, (_, index) => [
        `pin${index + 1}`,
        attributes[index + 1] ?? {},
    ])),
});
const socVssPins = [1, 2, 4, 10, 13, 16, 19, 22, 23, 24, 28, 40, 43, 46, 53, 56, 60, 77, 78, 79, 80, 81, 85, 86, 95, 96, 97, 106, 107, 108, 111, 114, 115, 116, 120, 126, 130, 132, 151, 152, 156, 166, 168, 170, 172, 174, 180, 187, 201, 203, 204, 205, 207, 218, 222, 226, 228, 231, 232, 237, 242, 243, 250, 258, 259, 261, 264, 265, 266, 268, 269, 274, 278, 279, 288, 289, 291, 293, 294, 295, 296, 299, 311, 312, 317, 325, 328, 334, 348, 350, 351, 352, 361, 364, 369, 372, 373];
const socFunctionalGroundPins = [112, 113, 129, 208, 245, 262, 263, 280, 281, 282, 283, 371];
const socGroundPins = [...socVssPins, ...socFunctionalGroundPins];
const socCore075Pins = [142, 143, 144, 145, 153, 155, 171, 186, 188, 206, 219, 220, 221, 229, 230];
const socRtc075Pins = [248];
const socDdr11Pins = [167, 184, 185, 202, 217];
const socFixed18Pins = [109, 128, 131, 146, 154, 169, 173, 190, 223, 233, 246, 249];
const socFixed33Pins = [127];
const socCapVddsPins = [110, 141, 157, 189, 260];
const socAttributes = Object.fromEntries([
    ...socGroundPins.map((pin) => [pin, { requiresGround: true }]),
    ...[...socCore075Pins, ...socRtc075Pins, ...socDdr11Pins, ...socFixed18Pins, ...socFixed33Pins, 244, 267]
        .map((pin) => [pin, { requiresPower: true }]),
    [247, { providesPower: true }],
    ...socCapVddsPins.map((pin) => [pin, { providesPower: true }]),
]);
const socConnected = Array.from(new Set([
    // MMC1 / microSD
    29, 64, 244, 247, 267, 300, 301, 302, 315, 316, 329,
    // UART0, reset, oscillator, PMIC control
    51, 54, 55, 68, 87, 101, 102, 118, 119, 310, 324, 326, 345, 346, 347, 349, 367, 368,
    // LPDDR4 x16 interface plus the controller calibration resistor pin.
    76, 91, 92, 93, 94, 103, 104, 105, 121, 122, 123, 124, 125, 139, 140,
    149, 150, 162, 164, 165, 182, 215, 216, 236, 238, 255, 256, 257, 272,
    273, 275, 276, 284, 285,
    ...socGroundPins, ...socCore075Pins, ...socRtc075Pins, ...socDdr11Pins,
    ...socFixed18Pins, ...socFixed33Pins, ...socCapVddsPins,
]));
const ddrSignals = [
    ...Array.from({ length: 16 }, (_, bit) => [`DDR0_DQ${bit}`, `DQ${bit}`]),
    ["DDR0_DM0", "DMI0"], ["DDR0_DM1", "DMI1"],
    ["DDR0_DQS0", "DQS0_t"], ["DDR0_DQS0_n", "DQS0_c"],
    ["DDR0_DQS1", "DQS1_t"], ["DDR0_DQS1_n", "DQS1_c"],
    ["DDR0_A0", "CA0"], ["DDR0_A1", "CA1"], ["DDR0_A2", "CA2"],
    ["DDR0_A3", "CA3"], ["DDR0_A4", "CA4"], ["DDR0_A5", "CA5"],
    ["DDR0_CS0_n", "CS"], ["DDR0_CKE0", "CKE"],
    ["DDR0_CK0", "CK_t"], ["DDR0_CK0_n", "CK_c"], ["DDR0_RESET0_n", "RESET_n"],
];
const logicalTraces = [
    // USB-C power-only input. A5/B5 are the independent CC pins; no USB data exists.
    ["U12.A9", "net.VBUS_RAW"], ["U12.B9", "net.VBUS_RAW"],
    ["U12.A12", "net.GND"], ["U12.B12", "net.GND"],
    ["U12.pin7", "net.GND"], ["U12.pin8", "net.GND"], ["U12.pin9", "net.GND"], ["U12.pin10", "net.GND"],
    ["U12.A5", "net.USB_CC1"], ["U12.B5", "net.USB_CC2"],
    ["U4.IN", "net.VBUS_RAW"], ["U4.OUT", "net.PROTECTED_5V"], ["U4.GND", "net.GND"],
    ["U4.EN_UVLO", "net.EFUSE_EN"], ["U4.OVLO", "net.EFUSE_OVLO"],
    ["U4.DVDT", "net.EFUSE_DVDT"], ["U4.ILM", "net.EFUSE_ILM"],
    ["D2.pin1", "net.VBUS_RAW"], ["D2.pin2", "net.GND"],
    // TUSB320LAI UFP/sink-only CC detection. PORT=0 selects UFP, ADDR open selects GPIO mode,
    // and EN_N=0 enables the internal Rd terminations. OUT1 is low only for 1.5A/3A Rp.
    ["U21.CC1", "net.USB_CC1"], ["U21.CC2", "net.USB_CC2"],
    ["U21.PORT", "net.GND"], ["U21.VBUS_DET", "net.TUSB_VBUS_DET"],
    ["U21.OUT1", "net.TUSB_OUT1"], ["U21.OUT2", "net.TUSB_OUT2"],
    ["U21.GND", "net.GND"], ["U21.EN_N", "net.GND"], ["U21.VDD", "net.VBUS_RAW"],
    // Raw-VBUS-powered 3V3 rail keeps TUSB GPIO pull-ups and enable logic alive before U4.
    ["U22.IN", "net.VBUS_RAW"], ["U22.EN", "net.VBUS_RAW"], ["U22.GND", "net.GND"],
    ["U22.OUT", "net.AON_3V3"],
    // OUT1 high -> inverter low -> eFuse off. Only an advertised 1.5A/3A source pulls OUT1 low.
    ["U23.A", "net.TUSB_OUT1"], ["U23.Y", "net.EFUSE_EN"],
    ["U23.VCC", "net.AON_3V3"], ["U23.GND", "net.GND"],
    // Default-current attached state is OUT1=H, OUT2=L. Decode it for the red warning LED.
    ["U24.A", "net.TUSB_OUT2"], ["U24.Y", "net.TUSB_OUT2_N"],
    ["U24.VCC", "net.AON_3V3"], ["U24.GND", "net.GND"],
    ["U25.A", "net.TUSB_OUT1"], ["U25.B", "net.TUSB_OUT2_N"],
    ["U25.Y", "net.WEAK_USB_LED_A"], ["U25.VCC", "net.AON_3V3"], ["U25.GND", "net.GND"],
    ["D3.anode", "net.WEAK_USB_LED_A"], ["D3.cathode", "net.WEAK_USB_LED_K"],
    ["TP_CC1.pin1", "net.USB_CC1"], ["TP_CC2.pin1", "net.USB_CC2"],
    ["TP_TUSB_OUT1.pin1", "net.TUSB_OUT1"], ["TP_EFUSE_EN.pin1", "net.EFUSE_EN"],
    ["TP_PROTECTED_5V.pin1", "net.PROTECTED_5V"],
    // PMIC and external 3V3 supply.
    ["U3.VSYS", "net.PROTECTED_5V"], ["U3.PVIN_B1", "net.PROTECTED_5V"],
    ["U3.PVIN_B2", "net.PROTECTED_5V"], ["U3.PVIN_B3", "net.PROTECTED_5V"],
    ["U3.AGND", "net.GND"], ["U3.pin10", "net.GND"], ["U3.pin22", "net.GND"],
    ["U3.VLDO1", "net.VDDA_1V8"], ["U3.VLDO2", "net.VDD_RTC_0V75"],
    ["U3.FB_B1", "net.VDD_CORE_0V75"], ["U3.FB_B2", "net.VDD_1V8"],
    ["U3.FB_B3", "net.VDD_DDR_1V1"], ["U3.VDD1P8", "net.PMIC_VDD1P8"],
    ["U3.EN", "net.PROTECTED_5V"],
    ["U3.LX_B1", "net.PMIC_BUCK1_SW"], ["U3.LX_B2", "net.PMIC_BUCK2_SW"], ["U3.LX_B3", "net.PMIC_BUCK3_SW"],
    ["U3.SDA", "net.PMIC_I2C_SDA"], ["U3.SCL", "net.PMIC_I2C_SCL"],
    ["U3.nRSTOUT", "net.PMIC_nRSTOUT"], ["U3.GPO", "net.RTC_PORz"], ["U3.nINT", "net.PMIC_nINT"],
    ["U3.GPIO", "net.EXT_3V3_EN"],
    ["U5.VIN", "net.PROTECTED_5V"], ["U5.EN", "net.EXT_3V3_EN"], ["U5.GND", "net.GND"],
    ["U5.SW", "net.EXT_3V3_SW"], ["L1.pin1", "net.EXT_3V3_SW"], ["L1.pin2", "net.VDD_3V3"],
    ["U5.FB", "net.EXT_3V3_FB"], ["U5.PG", "net.EXT_3V3_PG"],
    // Reset/clock/control.
    ["U11.A", "net.PMIC_nRSTOUT"], ["U11.B", "net.EXT_3V3_PG"], ["U11.Y", "net.SOC_PORz"],
    ["U11.VCC", "net.VDD_1V8"], ["U11.GND", "net.GND"], ["U1.PORz", "net.SOC_PORz"],
    ["U1.RTC_PORz", "net.RTC_PORz"], ["U1.RESETz", "net.RESETz"], ["U1.pin55", "net.RESETSTATz"],
    ["U1.pin51", "net.PMIC_nINT"],
    ["SW1.pin1", "net.RESETz"], ["SW1.pin2", "net.GND"], ["SW1.pin3", "net.RESETz"], ["SW1.pin4", "net.GND"],
    ["Y1.pin1", "net.OSC_25M_XI"], ["Y1.pin3", "net.OSC_25M_XO"], ["Y1.pin2", "net.GND"], ["Y1.pin4", "net.GND"],
    ["U1.WKUP_OSC0_XI", "net.OSC_25M_XI"], ["U1.WKUP_OSC0_XO", "net.OSC_25M_XO"],
    ["U1.WKUP_I2C0_SDA", "net.PMIC_I2C_SDA"], ["U1.WKUP_I2C0_SCL", "net.PMIC_I2C_SCL"],
    ["U1.PMIC_LPM_EN0", "net.PMIC_LPM_EN"], ["U3.MODE_STBY", "net.PMIC_LPM_EN"],
    ["U1.pin102", "net.BOOTMODE15"], ["U1.pin101", "net.BOOTMODE14"],
    ["U1.pin118", "net.BOOTMODE13"], ["U1.pin119", "net.BOOTMODE12"],
    ["U1.pin346", "net.EXT_WAKEUP0_UNUSED"], ["U1.pin347", "net.EXT_WAKEUP1_UNUSED"],
    // microSD, supply switch, and two four-channel ESD arrays.
    ["U6.VIN", "net.VDD_3V3"], ["U6.VOUT", "net.SD_3V3"], ["U6.ON", "net.SD_PWR_EN"], ["U6.GND", "net.GND"],
    ["U6.CT", "net.SD_LOADSW_CT"],
    ["U15.VDD", "net.SD_3V3"], ["U15.VSS", "net.GND"], ["U15.CLK", "net.SD_CLK"], ["U15.CMD", "net.SD_CMD"],
    ["U15.DAT0", "net.SD_DAT0"], ["U15.DAT1", "net.SD_DAT1"], ["U15.DAT2", "net.SD_DAT2"], ["U15.pin2", "net.SD_DAT3"],
    ["U15.SW_A", "net.SD_CARD_DETECT"], ["U15.SW_B", "net.GND"],
    ["U1.MMC1_CLK", "net.SD_CLK_SOC"], ["U1.MMC1_CMD", "net.SD_CMD"], ["U1.MMC1_DAT0", "net.SD_DAT0"],
    ["U1.MMC1_DAT1", "net.SD_DAT1"], ["U1.MMC1_DAT2", "net.SD_DAT2"], ["U1.MMC1_DAT3", "net.SD_DAT3"],
    ["U1.MMC1_SDCD", "net.SD_CD_SOC"], ["U1.pin64", "net.SD_PWR_GPIO"],
    ["U7.IO1", "net.SD_CLK"], ["U7.IO2", "net.SD_CMD"], ["U7.IO3", "net.SD_DAT0"], ["U7.IO4", "net.SD_DAT1"],
    ["U7.GND1", "net.GND"], ["U7.GND2", "net.GND"],
    ["U8.IO1", "net.SD_DAT2"], ["U8.IO2", "net.SD_DAT3"], ["U8.IO3", "net.SD_CARD_DETECT"],
    ["U8.GND1", "net.GND"], ["U8.GND2", "net.GND"],
    // UART0: fixed-direction translators, 3V3-safe connector, ESD protection.
    ["U9.VCCA", "net.VDD_1V8"], ["U9.VCCB", "net.VDD_3V3"], ["U9.GND", "net.GND"], ["U9.DIR", "net.VDD_1V8"],
    ["U9.A", "net.UART0_TX_1V8"], ["U9.B", "net.UART_TX_3V3"], ["U1.UART0_TXD", "net.UART0_TX_1V8"],
    ["U10.VCCA", "net.VDD_1V8"], ["U10.VCCB", "net.VDD_3V3"], ["U10.GND", "net.GND"], ["U10.DIR", "net.GND"],
    ["U10.A", "net.UART0_RX_1V8"], ["U10.B", "net.UART_RX_3V3"], ["U1.UART0_RXD", "net.UART0_RX_1V8"],
    ["U16.IO1", "net.UART_TX_3V3"], ["U16.IO2", "net.UART_RX_3V3"], ["U16.GND", "net.GND"],
    ["U17.pin1", "net.UART_TX_3V3"], ["U17.pin2", "net.UART_RX_3V3"], ["U17.pin3", "net.GND"], ["U17.pin4", "net.VDD_3V3"],
    ["D1.anode", "net.VDD_3V3"], ["D1.cathode", "net.POWER_LED_K"],
    // LPDDR4 reference/calibration pins are shunted locally, not routed together.
    ["U1.DDR0_CAL0", "net.DDR0_CAL0"], ["U2.ZQ", "net.LPDDR4_ZQ"],
    ["U2.ODT_CA", "net.LPDDR4_ODT_CA"],
    // SD power defaults on for ROM boot and is released only after RESETSTATz.
    ["U20.A", "net.SD_PWR_GPIO"], ["U20.B", "net.RESETSTATz"],
    ["U20.Y", "net.SD_PWR_EN"], ["U20.VCC", "net.VDD_1V8"], ["U20.GND", "net.GND"],
    ["TP_BOOT15.pin1", "net.BOOTMODE15"], ["TP_BOOT14.pin1", "net.BOOTMODE14"],
    ["TP_BOOT13.pin1", "net.BOOTMODE13"], ["TP_BOOT12.pin1", "net.BOOTMODE12"],
];
const socGroundTraces = socGroundPins.map((pin) => [`U1.pin${pin}`, "net.GND"]);
const socRailTraces = [
    ...socCore075Pins.filter((pin) => pin !== 229).map((pin) => [`U1.pin${pin}`, "net.VDD_CORE_0V75"]),
    ...socRtc075Pins.map((pin) => [`U1.pin${pin}`, "net.VDD_RTC_0V75"]),
    ...socDdr11Pins.map((pin) => [`U1.pin${pin}`, "net.VDD_DDR_1V1"]),
    ...socFixed18Pins.filter((pin) => ![154, 169].includes(pin)).map((pin) => [`U1.pin${pin}`, "net.VDD_1V8"]),
    ...[154, 169].map((pin) => [`U1.pin${pin}`, "net.VDDA_1V8"]),
    ...socFixed33Pins.map((pin) => [`U1.pin${pin}`, "net.VDD_3V3"]),
    ["U1.pin267", "net.SD_3V3"], ["U1.pin247", "net.SD_IO"], ["U1.pin244", "net.SD_IO"],
    ["U1.pin110", "net.CAP_VDDS_GENERAL1"], ["U1.pin141", "net.CAP_VDDS_MMC0"],
    ["U1.pin157", "net.CAP_VDDS_GPMC"], ["U1.pin189", "net.CAP_VDDS_MMC2"],
    ["U1.pin260", "net.CAP_VDDS_MMC1"],
];
const decouplingCapacitors = [
    // TEMP: disable capacitors beneath U1 until the breakout solver models component copper.
    /*
    // AM62L backside decoupling follows the projected supply-ball clusters.
    // These are deliberately staggered to preserve signal escape channels; this
    // is not a cosmetic grid. Bulk capacitors remain outside the package body.
    { name: "C1", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 3.45, y: -1.2, side: "bottom" },
    { name: "C2", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 1.25, y: -0.75, side: "bottom" },
    { name: "C3", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 2.75, y: 0.25, side: "bottom" },
    { name: "C4", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 1.05, y: 0.35, side: "bottom" },
    { name: "C5", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 3.05, y: 1.45, side: "bottom" },
    { name: "C6", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 1.35, y: 1.65, side: "bottom" },
    { name: "C7", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 2.05, y: 2.85, side: "bottom" },
    { name: "C17", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 0.05, y: 3.15, side: "bottom" },
    { name: "C18", value: "100nF", jlc: "C18164586", net: "VDD_CORE_0V75", x: 3.7, y: 2.55, side: "bottom" },
  
    // Fixed 1.8V and 3.3V I/O clusters around the SoC perimeter.
    { name: "C8", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: 3.2, y: -2.7, side: "bottom" },
    { name: "C9", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: -0.1, y: -2.05, side: "bottom" },
    { name: "C10", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: -1.45, y: 0.45, side: "bottom" },
    { name: "C11", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: -1.55, y: 2.55, side: "bottom" },
    { name: "C13", value: "100nF", jlc: "C18164586", net: "VDD_3V3", x: 5.35, y: -1.25, side: "bottom" },
    { name: "C14", value: "100nF", jlc: "C18164586", net: "VDD_3V3", x: -2.75, y: -3.35, side: "bottom" },
    { name: "C15", value: "100nF", jlc: "C18164586", net: "VDD_3V3", x: -2.75, y: 4.05, side: "bottom" },
    { name: "C16", value: "100nF", jlc: "C18164586", net: "VDD_3V3", x: 6.25, y: -3.25, side: "bottom" },
    { name: "C20", value: "100nF", jlc: "C18164586", net: "VDD_3V3", x: 6.3, y: 4.2, side: "bottom" },
  
    // One 100nF capacitor is dedicated to the SoC analog 1.8V pair, and one
    // DDR capacitor is reserved for the SoC VDDS_DDR cluster instead of putting
    // every capacitor beneath the memory package.
    { name: "C19", value: "100nF", jlc: "C18164586", net: "VDDA_1V8", x: 4.2, y: 0.8, side: "bottom" },
    { name: "C22", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 5.15, y: 1.8, side: "bottom" },
    */
    // TEMP: disable capacitors beneath U2 until the breakout solver models component copper.
    /*
    // LPDDR4 backside decoupling is split across the left/right VDD1 groups and
    // the lower/middle/upper VDD2/VDDQ ball clusters.
    { name: "C21", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: 18.7, y: -2.8, side: "bottom" },
    { name: "C25", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: 25.7, y: -2.8, side: "bottom" },
    { name: "C29", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: 18.7, y: 4.7, side: "bottom" },
    { name: "C12", value: "100nF", jlc: "C18164586", net: "VDD_1V8", x: 25.7, y: 4.7, side: "bottom" },
    { name: "C23", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 21.25, y: -2.55, side: "bottom" },
    { name: "C24", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 27.9, y: -2.5, side: "bottom" },
    { name: "C26", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 19.65, y: 0.3, rotation: 90, side: "bottom" },
    { name: "C27", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 24.8, y: 0.2, rotation: 90, side: "bottom" },
    { name: "C28", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 27.8, y: 0.5, rotation: 90, side: "bottom" },
    { name: "C30", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 20.2, y: 4.3, side: "bottom" },
    { name: "C31", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 23.7, y: 4.3, side: "bottom" },
    { name: "C32", value: "100nF", jlc: "C18164586", net: "VDD_DDR_1V1", x: 27.9, y: 4.3, side: "bottom" },
    */
    // Input/output bulk and local peripheral bypass capacitors.
    // Keep total receptacle-side VBUS capacitance within the 1uF-to-10uF UFP range.
    { name: "C33", value: "4.7uF", jlc: "C23733", net: "VBUS_RAW", x: -34.5, y: 2.5 },
    { name: "C34", value: "22uF", jlc: "C86295", net: "PROTECTED_5V", x: -7, y: 13.2 },
    { name: "C35", value: "10uF", jlc: "C19702", net: "PROTECTED_5V", x: -27, y: 2 },
    { name: "C36", value: "22uF", jlc: "C86295", net: "VDD_CORE_0V75", x: -6, y: -11.2 },
    { name: "C37", value: "22uF", jlc: "C86295", net: "VDD_1V8", x: -2, y: -11.2 },
    { name: "C38", value: "22uF", jlc: "C86295", net: "VDD_DDR_1V1", x: 2, y: -11.2 },
    { name: "C39", value: "2.2uF", jlc: "C77002", net: "PMIC_VDD1P8", x: -11, y: 12 },
    { name: "C40", value: "10uF", jlc: "C19702", net: "VDD_3V3", x: -10, y: -10 },
    { name: "C41", value: "22uF", jlc: "C86295", net: "VDD_3V3", x: -14, y: -10 },
    { name: "C42", value: "1uF", jlc: "C14445", net: "SD_3V3", x: -2, y: 24 },
    { name: "C43", value: "10uF", jlc: "C19702", net: "SD_3V3", x: 2.5, y: 27 },
    { name: "C44", value: "100nF", jlc: "C71629", net: "VDD_1V8", x: 19, y: -17 },
    { name: "C45", value: "100nF", jlc: "C71629", net: "VDD_3V3", x: 25, y: -16.5 },
    { name: "C46", value: "100nF", jlc: "C71629", net: "VDD_1V8", x: 24, y: -23 },
    { name: "C47", value: "100nF", jlc: "C71629", net: "VDD_3V3", x: 30, y: -17.5 },
    { name: "C48", value: "100nF", jlc: "C71629", net: "VDD_1V8", x: -7, y: -22 },
    { name: "C49", value: "10pF", jlc: "C32949", net: "OSC_25M_XI", x: -3, y: 13.2 },
    { name: "C50", value: "10pF", jlc: "C32949", net: "OSC_25M_XO", x: 3, y: 13.2 },
    // CAP_VDDS outputs must not share the dense underside PTH escape field.
    // Hand-place them just outside U1 so each gets a short, via-free top route.
    { name: "C51", value: "1uF", jlc: "C318541", net: "CAP_VDDS_GENERAL1", x: 5, y: -10.5 },
    { name: "C52", value: "1uF", jlc: "C318541", net: "CAP_VDDS_MMC0", x: 7, y: -10.5 },
    { name: "C53", value: "1uF", jlc: "C318541", net: "CAP_VDDS_GPMC", x: -8.9, y: 0, rotation: 90 },
    { name: "C54", value: "1uF", jlc: "C318541", net: "CAP_VDDS_MMC2", x: -8.9, y: 2, rotation: 90 },
    { name: "C55", value: "1uF", jlc: "C318541", net: "CAP_VDDS_MMC1", x: 6, y: 13.2 },
    { name: "C56", value: "3.3uF", jlc: "C695126", net: "SD_IO", x: 8.5, y: 13.2, side: "top" },
    // PMIC pin-local input and output capacitors.
    { name: "C57", value: "4.7uF", jlc: "C23733", net: "PROTECTED_5V", x: -18, y: 6, side: "bottom" },
    { name: "C58", value: "4.7uF", jlc: "C23733", net: "PROTECTED_5V", x: -18, y: 9, side: "bottom" },
    { name: "C59", value: "4.7uF", jlc: "C23733", net: "PROTECTED_5V", x: -14, y: 9, side: "bottom" },
    { name: "C60", value: "4.7uF", jlc: "C23733", net: "PROTECTED_5V", x: -11, y: 9, side: "bottom" },
    { name: "C61", value: "2.2uF", jlc: "C77002", net: "VDDA_1V8", x: -18, y: 2, side: "bottom" },
    { name: "C62", value: "2.2uF", jlc: "C77002", net: "VDD_RTC_0V75", x: -21, y: 0, side: "bottom" },
    { name: "C63", value: "220pF", jlc: "C1603", net: "SD_LOADSW_CT", x: -1, y: 29, side: "bottom" },
    { name: "C64", value: "22pF", jlc: "C70464", net: "SOC_PORz", x: -5, y: -20, side: "bottom" },
    { name: "C65", value: "4.7nF", jlc: "C1538", net: "EFUSE_DVDT", x: -31, y: -5, side: "bottom" },
    { name: "C66", value: "100nF", jlc: "C71629", net: "VDD_1V8", x: 5, y: 31, side: "bottom" },
    // Raw-VBUS always-on CC detection and fail-safe enable logic.
    { name: "C67", value: "1uF", jlc: "C14445", net: "VBUS_RAW", x: -43, y: -2, side: "bottom" },
    { name: "C68", value: "1uF", jlc: "C14445", net: "AON_3V3", x: -41, y: -8, side: "bottom" },
    { name: "C69", value: "100nF", jlc: "C71629", net: "VBUS_RAW", x: -31, y: -7 },
    { name: "C70", value: "100nF", jlc: "C71629", net: "AON_3V3", x: -34.5, y: -14.5, side: "bottom" },
    { name: "C71", value: "100nF", jlc: "C71629", net: "AON_3V3", x: -24, y: -16, side: "bottom" },
    { name: "C72", value: "100nF", jlc: "C71629", net: "AON_3V3", x: -19, y: -10, side: "bottom" },
];
const supportResistors = [
    { name: "R3", value: "1k", jlc: "C11702", from: "POWER_LED_K", to: "GND", x: -34, y: -27 },
    { name: "R4", value: "10k", jlc: "C25744", from: "RESETz", to: "VDD_1V8", x: -2, y: -24 },
    // Hand-aligned under the socket's non-numeric contact order: DAT2, DAT3,
    // CMD, DAT0, DAT1. This prevents the five short pull-up branches crossing.
    { name: "R5", value: "47k", jlc: "C25792", from: "SD_CMD", to: "SD_IO", x: -15.575, y: 18.5, rotation: 90 },
    { name: "R6", value: "47k", jlc: "C25792", from: "SD_DAT0", to: "SD_IO", x: -11.175, y: 18.5, rotation: 90 },
    { name: "R7", value: "47k", jlc: "C25792", from: "SD_DAT1", to: "SD_IO", x: -10.075, y: 15.7, rotation: 90 },
    { name: "R8", value: "47k", jlc: "C25792", from: "SD_DAT2", to: "SD_IO", x: -17.775, y: 18.5, rotation: 90 },
    { name: "R9", value: "47k", jlc: "C25792", from: "SD_DAT3", to: "SD_IO", x: -16.675, y: 15.7, rotation: 90 },
    { name: "R10", value: "10k", jlc: "C25744", from: "SD_CARD_DETECT", to: "VDD_1V8", x: 1.5, y: 19 },
    { name: "R11", value: "100k", jlc: "C25741", from: "SD_PWR_EN", to: "GND", x: 4, y: 19 },
    { name: "R12", value: "10k", jlc: "C25744", from: "DDR0_RESET0_n", to: "GND", x: 43.25, y: 5 },
    { name: "R13", value: "2.2k", jlc: "C25879", from: "LPDDR4_ODT_CA", to: "VDD_DDR_1V1", x: 43.25, y: 2 },
    { name: "R14", value: "240", jlc: "C25094", from: "LPDDR4_ZQ", to: "GND", x: 43.25, y: -1 },
    { name: "R15", value: "240", jlc: "C25094", from: "DDR0_CAL0", to: "GND", x: 9.5, y: -10.5 },
    // USB eFuse enable is fail-safe low; TUSB320 detection must actively drive it high.
    { name: "R16", value: "100k", jlc: "C25741", from: "EFUSE_EN", to: "GND", x: -31, y: -3, side: "bottom" },
    { name: "R17", value: "0", jlc: "C17168", from: "EFUSE_OVLO", to: "GND", x: -34, y: -3 },
    { name: "R18", value: "2.49k", jlc: "C25884", from: "EFUSE_ILM", to: "GND", x: -28, y: -3 },
    // PMIC open-drain buses/status and 3V3 sequencing.
    { name: "R19", value: "4.7k", jlc: "C25900", from: "PMIC_I2C_SDA", to: "VDD_1V8", x: -21, y: 8 },
    { name: "R20", value: "4.7k", jlc: "C25900", from: "PMIC_I2C_SCL", to: "VDD_1V8", x: -21, y: 10 },
    { name: "R21", value: "10k", jlc: "C25744", from: "PMIC_nRSTOUT", to: "VDD_1V8", x: -21, y: 12 },
    { name: "R22", value: "10k", jlc: "C25744", from: "RTC_PORz", to: "VDD_1V8", x: -21, y: 14 },
    { name: "R23", value: "10k", jlc: "C25744", from: "PMIC_nINT", to: "VDD_1V8", x: -21, y: 16 },
    { name: "R24", value: "100k", jlc: "C25741", from: "EXT_3V3_EN", to: "VDD_1V8", x: -13, y: -2.8, side: "top" },
    // TPS62A02 3.3V feedback and open-drain PG pull-up.
    { name: "R25", value: "453k", jlc: "C27009", from: "VDD_3V3", to: "EXT_3V3_FB", x: -14.8, y: -4.5, side: "top" },
    { name: "R26", value: "100k", jlc: "C25741", from: "EXT_3V3_FB", to: "GND", x: -12.2, y: -4.5, side: "top" },
    { name: "R27", value: "10k", jlc: "C25744", from: "EXT_3V3_PG", to: "VDD_1V8", x: -9.5, y: -4.76, side: "top" },
    // SD default-on/reset gating and protected clock/card-detect paths.
    { name: "R28", value: "10k", jlc: "C25744", from: "SD_PWR_GPIO", to: "VDD_1V8", x: 6, y: 34 },
    // TI recommends placing the MMC clock source-termination option at the SoC.
    { name: "R29", value: "0", jlc: "C17168", from: "SD_CLK_SOC", to: "SD_CLK", x: 11.25, y: 13.2, side: "top" },
    { name: "R30", value: "10k", jlc: "C25744", from: "SD_CLK", to: "GND", x: -2, y: 16 },
    { name: "R31", value: "100", jlc: "C25076", from: "SD_CARD_DETECT", to: "SD_CD_SOC", x: 3.8, y: 16 },
    // Reduced BOOTMODE[15:12] = 1010 and unused wake input bias.
    { name: "R32", value: "10k", jlc: "C25744", from: "BOOTMODE15", to: "VDD_1V8", x: 10, y: 15.8, side: "bottom" },
    { name: "R33", value: "10k", jlc: "C25744", from: "BOOTMODE14", to: "GND", x: 12.5, y: 15.8, side: "bottom" },
    { name: "R34", value: "10k", jlc: "C25744", from: "BOOTMODE13", to: "VDD_1V8", x: 15, y: 12.5, side: "bottom" },
    { name: "R35", value: "10k", jlc: "C25744", from: "BOOTMODE12", to: "GND", x: 17.5, y: 12.5, side: "bottom" },
    { name: "R36", value: "10k", jlc: "C25744", from: "EXT_WAKEUP0_UNUSED", to: "GND", x: 20, y: 12.5, side: "bottom" },
    { name: "R37", value: "10k", jlc: "C25744", from: "EXT_WAKEUP1_UNUSED", to: "GND", x: 22.5, y: 12.5, side: "bottom" },
    { name: "R38", value: "47k", jlc: "C25792", from: "UART0_TX_1V8", to: "VDD_1V8", x: 19, y: -20 },
    { name: "R39", value: "47k", jlc: "C25792", from: "UART0_RX_1V8", to: "VDD_1V8", x: 23, y: -21.5 },
    // TUSB320 GPIO pull-ups, VBUS_DET input resistor, and weak-supply LED current limit.
    { name: "R40", value: "4.7k", jlc: "C25900", from: "TUSB_OUT1", to: "AON_3V3", x: -36.5, y: -1, side: "bottom" },
    { name: "R41", value: "4.7k", jlc: "C25900", from: "TUSB_OUT2", to: "AON_3V3", x: -33.5, y: -1, side: "bottom" },
    { name: "R42", value: "909k", jlc: "C25799", from: "VBUS_RAW", to: "TUSB_VBUS_DET", x: -34, y: -7, side: "top" },
    { name: "R43", value: "1k", jlc: "C11702", from: "WEAK_USB_LED_K", to: "GND", x: -37.5, y: -12.5 },
];
const capacitorParts = {
    C71629: GRM155R71C104KA88D,
    C14445: CL05A105KP5NNNC,
    C318541: CL03A105KQ3CSNC,
    C18164586: TCC0201X7R104K160ZT,
    C19702: CL10A106KP8NNNC,
    C86295: CL10A226MP8NUNE,
    C77002: GRM155R61A225KE95D,
    C32949: CL05C100JB5NNNC,
    C695126: C1005X5R1A335KTJ00E,
    C23733: CL05A475MP5NRNC,
    C1603: CL10B221KB8NNNC,
    C70464: CL05C220JB5NNNC,
    C1538: A_0402B472K500NT,
};
const resistorParts = {
    C25905: A_0402WGF5101TCE,
    C11702: A_0402WGF1001TCE,
    C25744: A_0402WGF1002TCE,
    C25741: A_0402WGF1003TCE,
    C25094: A_0402WGF2400TCE,
    C25879: A_0402WGF2201TCE,
    C25792: A_0402WGF4702TCE,
    C25900: A_0402WGF4701TCE,
    C17168: A_0402WGF0000TCE,
    C25076: A_0402WGF1000TCE,
    C27009: A_0402WGF4533TCE,
    C45194: A_0402WGF6651TCE,
    C25884: A_0402WGF2491TCE,
    C25799: A_0402WGF9093TCE,
};
const ROUTING_PHASE = {
    ddr: 1,
    sd: 2,
    control: 3,
    usbPower: 4,
    powerAndGround: 5};
const getRoutingPhase = (from, to) => {
    const connection = `${from} ${to}`.toUpperCase();
    if (/DDR0_(DQ\d+|DM\d+|DQS\d|DQS\d_N|A[0-5]\b|CS0_N|CKE0|CK0|CK0_N)/.test(connection)) {
        return ROUTING_PHASE.ddr;
    }
    if (/SD_PWR/.test(connection))
        return ROUTING_PHASE.control;
    if (/SD_3V3|SD_IO|SD_LOADSW|CAP_VDDS_MMC1/.test(connection)) {
        return ROUTING_PHASE.powerAndGround;
    }
    if (/SD_|MMC1/.test(connection))
        return ROUTING_PHASE.sd;
    if (/USB_|VBUS|TUSB|EFUSE|PROTECTED_5V|AON_3V3/.test(connection)) {
        return ROUTING_PHASE.usbPower;
    }
    if (/GND|VSS|VDD|VDDA|CAP_|3V3|1V8|0V75|_SW|_LX/.test(connection)) {
        return ROUTING_PHASE.powerAndGround;
    }
    return ROUTING_PHASE.control;
};
const explicitRoutingNets = Array.from(new Set([
    ...logicalTraces.flatMap(([from, to]) => [from, to]),
    ...socGroundTraces.flatMap(([from, to]) => [from, to]),
    ...socRailTraces.flatMap(([from, to]) => [from, to]),
    ...decouplingCapacitors.map(({ net }) => `net.${net}`),
    ...supportResistors.flatMap(({ from, to }) => [`net.${from}`, `net.${to}`]),
]
    .filter((selector) => selector.startsWith("net."))
    .map((selector) => selector.slice(4)))).sort();
const ddrByte0Connections = [
    ...Array.from({ length: 8 }, (_, bit) => `DDR0_DQ${bit}`),
    "DDR0_DM0",
    "DDR0_DQS0",
    "DDR0_DQS0_n",
];
const ddrByte1Connections = [
    ...Array.from({ length: 8 }, (_, bit) => `DDR0_DQ${bit + 8}`),
    "DDR0_DM1",
    "DDR0_DQS1",
    "DDR0_DQS1_n",
];
const ddrCommandConnections = [
    ...Array.from({ length: 6 }, (_, bit) => `DDR0_A${bit}`),
    "DDR0_CS0_n",
    "DDR0_CKE0",
    "DDR0_CK0",
    "DDR0_CK0_n",
    "DDR_LINK_RESET0_n",
];
const ddrFanoutLayers = ["inner2", "inner5", "bottom"];
const fixedTargetBgaBreakoutAutorouter = {
    local: true,
    groupMode: "subcircuit",
    algorithmFn: createFixedTargetBgaFanoutAutorouter,
};
const classifiedAutorouter = (phase, effort = 2) => ({
    local: true,
    groupMode: "subcircuit",
    algorithmFn: createAm62lClassifiedAutorouter({ phase, effort }),
});
var index_circuit = () => (jsxs("board", { width: "90mm", height: "75mm", layers: 8, defaultTraceWidth: "0.08128mm", minTraceWidth: "0.08128mm", minTraceToPadEdgeClearance: "0.08128mm", minViaEdgeToPadEdgeClearance: "0.08128mm", minViaHoleEdgeToViaHoleEdgeClearance: "0.1016mm", minViaHoleDiameter: "0.2032mm", minViaPadDiameter: "0.4572mm", minPadEdgeToPadEdgeClearance: "0mm", pcbStyle: { viaHoleDiameter: "0.2032mm", viaPadDiameter: "0.4572mm" }, children: [explicitRoutingNets.map((name) => (jsx(Fragment$1, { children: jsx("net", { name: name, routingPhaseIndex: getRoutingPhase(`net.${name}`, "") }) }, name))), jsx("autoroutingphase", { name: "ddr-critical", phaseIndex: ROUTING_PHASE.ddr, autorouter: "default" }), jsx("autoroutingphase", { name: "microsd", phaseIndex: ROUTING_PHASE.sd, autorouter: classifiedAutorouter("sd", 3) }), jsx("autoroutingphase", { name: "clock-reset-control", phaseIndex: ROUTING_PHASE.control, autorouter: classifiedAutorouter("reset-control", 5) }), jsx("autoroutingphase", { name: "usb-power-entry", phaseIndex: ROUTING_PHASE.usbPower, autorouter: classifiedAutorouter("usb-power", 1) }), jsx("autoroutingphase", { name: "power-ground-local", phaseIndex: ROUTING_PHASE.powerAndGround, autorouter: classifiedAutorouter("power", 3) }), jsx("copperpour", { name: "GND_PLANE_L2", layer: "inner1", connectsTo: "net.GND", unbroken: true }), jsx("copperpour", { name: "GND_PLANE_L7", layer: "inner6", connectsTo: "net.GND", unbroken: true }), jsx("bus", { name: "DDR_BYTE0", connections: ddrByte0Connections, routingPhaseIndex: ROUTING_PHASE.ddr, maxLengthSkew: "0.25mm", pcbTraceWidth: "0.08128mm", pcbAllowedLayers: ["inner2"], preferredLayer: "inner2" }), jsx("bus", { name: "DDR_BYTE1", connections: ddrByte1Connections, routingPhaseIndex: ROUTING_PHASE.ddr, maxLengthSkew: "0.25mm", pcbTraceWidth: "0.08128mm", pcbAllowedLayers: ["bottom"], preferredLayer: "bottom" }), jsx("bus", { name: "DDR_COMMAND", connections: ddrCommandConnections, routingPhaseIndex: ROUTING_PHASE.ddr, maxLengthSkew: "0.5mm", pcbTraceWidth: "0.09398mm", pcbAllowedLayers: ["inner5"], preferredLayer: "inner5" }), jsx("breakout", { name: "SOC_BREAKOUT", pcbX: 2, pcbY: 1, padding: "5mm", autorouter: fixedTargetBgaBreakoutAutorouter, fanoutBoundaryPadding: {
                top: "5mm",
                right: "2mm",
                bottom: "5mm",
                left: "1mm",
            }, fanoutRoutingLayers: [...ddrFanoutLayers], busFanoutDirections: {
                DDR_BYTE1: "top_right",
                DDR_COMMAND: "center_right",
                DDR_BYTE0: "bottom_right",
            }, children: jsx(AM62L32, { name: "U1", footprintVariant: "fccsp_373_anb", pcbX: 0, pcbY: 0, pcbRotation: 180, noSchematicRepresentation: true, ...pinMetadata(373, socConnected, socAttributes) }) }), jsx("breakout", { name: "RAM_BREAKOUT", pcbX: 29.675, pcbY: 1 + TI_AM62L_EVM_MEMORY_OFFSET.y, padding: "5mm", autorouter: fixedTargetBgaBreakoutAutorouter, fanoutBoundaryPadding: {
                top: "5mm",
                right: "1mm",
                bottom: "5mm",
                left: "2mm",
            }, fanoutRoutingLayers: [...ddrFanoutLayers], busFanoutDirections: {
                DDR_BYTE1: "top_left",
                DDR_COMMAND: "center_left",
                DDR_BYTE0: "bottom_left",
            }, children: jsx(RegistryMt53e1g16, { name: "U2", pcbX: 0, pcbY: 0, pcbRotation: 90, noSchematicRepresentation: true }) }), jsx(TPS6521401VAFR, { name: "U3", pcbX: -15, pcbY: 4, noSchematicRepresentation: true, noConnect: pinMetadata(24, Array.from({ length: 24 }, (_, index) => index + 1)).noConnect }), jsx(USB4125_GF_A_0190, { name: "U12", pcbX: -42, pcbY: 0, pcbRotation: -90, noSchematicRepresentation: true, ...pinMetadata(16, [7, 8, 9, 10, 11, 12, 13, 14, 15, 16], {
                7: { requiresGround: true }, 8: { requiresGround: true }, 9: { requiresGround: true }, 10: { requiresGround: true },
                11: { requiresGround: true }, 12: { requiresPower: true, providesPower: true },
                15: { requiresPower: true, providesPower: true }, 16: { requiresGround: true },
            }) }), jsx(TPS259470LRPWR, { name: "U4", pcbX: -31, pcbY: 0, noSchematicRepresentation: true, ...pinMetadata(10, [1, 2, 5, 6, 7, 8, 9], { 5: { requiresPower: true }, 6: { providesPower: true }, 8: { requiresGround: true } }) }), jsx(TUSB320LAIRWBR, { name: "U21", pcbX: -37, pcbY: -5, noSchematicRepresentation: true, ...pinMetadata(12, [1, 2, 3, 4, 7, 8, 10, 11, 12], {
                10: { requiresGround: true }, 12: { requiresPower: true },
            }) }), jsx(TLV75533PDBVR, { name: "U22", pcbX: -40, pcbY: -5, layer: "bottom", noSchematicRepresentation: true, ...pinMetadata(5, [1, 2, 3, 5], {
                1: { requiresPower: true }, 2: { requiresGround: true }, 5: { providesPower: true },
            }) }), jsx(SN74LVC1G04DBVR, { name: "U23", pcbX: -35, pcbY: -9, layer: "bottom", noSchematicRepresentation: true, ...pinMetadata(5, [2, 3, 4, 5], { 3: { requiresGround: true }, 5: { requiresPower: true } }) }), jsx(SN74LVC1G04DBVR, { name: "U24", pcbX: -29, pcbY: -13, layer: "bottom", noSchematicRepresentation: true, ...pinMetadata(5, [2, 3, 4, 5], { 3: { requiresGround: true }, 5: { requiresPower: true } }) }), jsx(SN74LVC1G08DBVR, { name: "U25", pcbX: -24, pcbY: -10, layer: "bottom", noSchematicRepresentation: true, ...pinMetadata(5, [1, 2, 3, 4, 5], { 3: { requiresGround: true }, 5: { requiresPower: true } }) }), jsx(TPS62A02DRLR, { name: "U5", pcbX: -14, pcbY: -7, noSchematicRepresentation: true, ...pinMetadata(6, [1, 2, 3, 4, 5, 6], { 1: { requiresGround: true }, 2: { providesPower: true }, 3: { requiresPower: true } }) }), jsx(DFE201612PD_1R0M_P2, { name: "L1", pcbX: -10.4, pcbY: -7 }), jsx(XRCGB25M000F3A00R0, { name: "Y1", pcbX: 0, pcbY: 13.2 }), jsx(DM3AT_SF_PEJM5, { name: "U15", pcbX: -15, pcbY: 29, pcbRotation: 180, noSchematicRepresentation: true, ...pinMetadata(14, [1, 2, 3, 4, 5, 6, 7, 8, 9, 11], { 4: { requiresPower: true }, 6: { requiresGround: true } }) }), jsx(TPS22918DBVR, { name: "U6", pcbX: -2, pcbY: 27, noSchematicRepresentation: true, ...pinMetadata(6, [1, 2, 3, 4, 6], { 1: { requiresPower: true }, 2: { requiresGround: true }, 6: { providesPower: true } }) }), jsx(TPD4E02B04DQAR, { name: "U7", pcbX: -5, pcbY: 23, noSchematicRepresentation: true, ...pinMetadata(10, [1, 2, 3, 4, 5, 8], { 1: { requiresPower: true }, 3: { requiresGround: true }, 8: { requiresGround: true } }) }), jsx(TPD4E02B04DQAR, { name: "U8", pcbX: 1, pcbY: 16, noSchematicRepresentation: true, ...pinMetadata(10, [1, 2, 3, 4, 8], { 1: { requiresPower: true }, 3: { requiresGround: true }, 8: { requiresGround: true } }) }), jsx(SN74AXC1T45DBVR, { name: "U9", pcbX: 22, pcbY: -17, noSchematicRepresentation: true, ...pinMetadata(6, [1, 2, 3, 4, 5, 6], { 1: { requiresPower: true }, 2: { requiresGround: true }, 6: { requiresPower: true } }) }), jsx(SN74AXC1T45DBVR, { name: "U10", pcbX: 27, pcbY: -21, noSchematicRepresentation: true, ...pinMetadata(6, [1, 2, 3, 4, 5, 6], { 1: { requiresPower: true }, 2: { requiresGround: true }, 6: { requiresPower: true } }) }), jsx(TPD2E2U06DCKR, { name: "U16", pcbX: 31.5, pcbY: -24, pcbRotation: 90, noSchematicRepresentation: true, ...pinMetadata(3, [1, 2, 3], { 1: { requiresPower: true }, 3: { requiresGround: true } }) }), jsx(S4B_PH_SM4_K_TB_LF__SN_, { name: "U17", pcbX: 40, pcbY: -20, pcbRotation: -90, noSchematicRepresentation: true, ...pinMetadata(6, [1, 2, 3, 4], { 3: { requiresGround: true }, 4: { requiresPower: true } }) }), jsx(SKRPACE010, { name: "SW1", pcbX: -2, pcbY: -28, schMarginY: "2mm", noSchematicRepresentation: true, ...pinMetadata(4, [1, 2, 3, 4]) }), jsx(SN74LVC1G08DBVR, { name: "U11", pcbX: -8, pcbY: -18, noSchematicRepresentation: true, ...pinMetadata(5, [1, 2, 3, 4, 5], { 3: { requiresGround: true }, 5: { requiresPower: true } }) }), jsx(SN74LVC1G08DBVR, { name: "U20", pcbX: 0, pcbY: 32, layer: "bottom", noSchematicRepresentation: true, ...pinMetadata(5, [1, 2, 3, 4, 5], { 3: { requiresGround: true }, 5: { requiresPower: true } }) }), jsx(SMF5_0A, { name: "D2", pcbX: -38, pcbY: 2.5, pcbRotation: 90 }), jsx("testpoint", { name: "TP_BOOT15", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: 15, pcbY: 33, schX: 50, schY: 16 }), jsx("testpoint", { name: "TP_BOOT14", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: 21, pcbY: 33, schX: 50, schY: 12 }), jsx("testpoint", { name: "TP_BOOT13", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: 27, pcbY: 33, schX: 50, schY: 8 }), jsx("testpoint", { name: "TP_BOOT12", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: 33, pcbY: 33, schX: 50, schY: 4 }), jsx("testpoint", { name: "TP_CC1", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: -40, pcbY: -32, layer: "bottom", schX: 50, schY: 0 }), jsx("testpoint", { name: "TP_CC2", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: -36, pcbY: -32, layer: "bottom", schX: 50, schY: -4 }), jsx("testpoint", { name: "TP_TUSB_OUT1", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: -32, pcbY: -32, layer: "bottom", schX: 50, schY: -8 }), jsx("testpoint", { name: "TP_EFUSE_EN", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: -28, pcbY: -32, layer: "bottom", schX: 50, schY: -12 }), jsx("testpoint", { name: "TP_PROTECTED_5V", footprintVariant: "pad", padShape: "circle", padDiameter: "1mm", pcbX: -24, pcbY: -32, layer: "bottom", schX: 50, schY: -16 }), jsx(TFM201208BLE_R47MTCF, { name: "L2", pcbX: -11, pcbY: 0 }), jsx(TFM201208BLE_R47MTCF, { name: "L3", pcbX: -11, pcbY: 3.5 }), jsx(TFM201208BLE_R47MTCF, { name: "L4", pcbX: -11, pcbY: 7 }), jsx("trace", { name: "PMIC_B1_LX", from: "L2.pin1", to: "net.PMIC_BUCK1_SW", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), jsx("trace", { name: "PMIC_B1_OUT", from: "L2.pin2", to: "net.VDD_CORE_0V75", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), jsx("trace", { name: "PMIC_B2_LX", from: "L3.pin1", to: "net.PMIC_BUCK2_SW", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), jsx("trace", { name: "PMIC_B2_OUT", from: "L3.pin2", to: "net.VDD_1V8", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), jsx("trace", { name: "PMIC_B3_LX", from: "L4.pin1", to: "net.PMIC_BUCK3_SW", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), jsx("trace", { name: "PMIC_B3_OUT", from: "L4.pin2", to: "net.VDD_DDR_1V1", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), decouplingCapacitors.map(({ name, jlc, net, x, y, rotation, side }) => {
            const Part = capacitorParts[jlc];
            return jsxs(Fragment$1, { children: [jsx(Part, { name: name, pcbX: x, pcbY: y, pcbRotation: rotation, layer: side }), jsx("trace", { name: `${name}_${net}`, from: `${name}.pin1`, to: `net.${net}`, routingPhaseIndex: ROUTING_PHASE.powerAndGround }), jsx("trace", { name: `${name}_GND`, from: `${name}.pin2`, to: "net.GND", routingPhaseIndex: ROUTING_PHASE.powerAndGround })] }, name);
        }), jsx(LTST_C190KGKT, { name: "D1", pcbX: -38, pcbY: -27, ...pinMetadata(2, [1, 2]) }), jsx(LTST_C190KRKT, { name: "D3", pcbX: -40, pcbY: -8, ...pinMetadata(2, [1, 2]) }), supportResistors.map(({ name, jlc, from, to, x, y, rotation, side }) => {
            const Part = resistorParts[jlc];
            return jsxs(Fragment$1, { children: [jsx(Part, { name: name, pcbX: x, pcbY: y, pcbRotation: rotation, layer: side }), jsx("trace", { name: `${name}_${from}`, from: `${name}.pin1`, to: `net.${from}`, routingPhaseIndex: getRoutingPhase(`${name}.pin1`, `net.${from}`) }), jsx("trace", { name: `${name}_${to}`, from: `${name}.pin2`, to: `net.${to}`, routingPhaseIndex: getRoutingPhase(`${name}.pin2`, `net.${to}`) })] }, name);
        }), [...logicalTraces, ...socGroundTraces, ...socRailTraces].map(([from, to], index) => (jsx(Fragment$1, { children: jsx("trace", { name: `N${index + 1}`, from: from, to: to, routingPhaseIndex: getRoutingPhase(from, to) }) }, `${from}-${to}-${index}`))), jsx("trace", { name: "U1_R9_DIRECT_VDD_CORE_0V75", from: "U1.pin229", to: "net.VDD_CORE_0V75", routingPhaseIndex: ROUTING_PHASE.powerAndGround }), ddrSignals.map(([soc, memory]) => (jsx(Fragment$1, { children: jsx("trace", { name: soc === "DDR0_RESET0_n" ? "DDR_LINK_RESET0_n" : soc, from: `U1.${soc}`, to: `U2.${memory}`, routingPhaseIndex: ROUTING_PHASE.ddr }) }, soc))), jsx("silkscreentext", { text: "J1 5V POWER ONLY", pcbX: -39, pcbY: 6, fontSize: 0.7 }), jsx("silkscreentext", { text: "J2 microSD", pcbX: -31, pcbY: 35, fontSize: 0.7 }), jsx("silkscreentext", { text: "J3 UART 3V3", pcbX: 38, pcbY: -27, fontSize: 0.7 }), jsx("silkscreentext", { text: "WEAK USB SUPPLY", pcbX: -39, pcbY: -11, fontSize: 0.55 }), jsx("silkscreentext", { text: "SIMPLIFIED AM62L COMPUTER - 8 LAYER 90x75 - LOGICAL NETLIST DRAFT", pcbX: 0, pcbY: -34, fontSize: 0.7 })] }));

export { index_circuit as default };