From bb894ee6add90901ffe7190627e5eff2762a2a89 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 14:48:24 +0530 Subject: [PATCH 01/26] Initial commit for SparkFun Tristimulus Color Sensor - OPT4048DTSR board, including schematic components, jumpers, connectors, and configuration files. Added README and manual edits for PCB placements. --- .../README.md | 5 + ...lus Color Sensor - OPT4048DTSR.circuit.tsx | 14 ++ ... Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 1 + ...r - OPT4048DTSR.circuit-schematic.snap.svg | 146 ++++++++++++++++++ .../address.tsx | 50 ++++++ .../color-sensor.tsx | 91 +++++++++++ .../connectors.tsx | 77 +++++++++ .../index.tsx | 21 +++ .../jumpers.tsx | 86 +++++++++++ .../manual-edits.json | 132 ++++++++++++++++ .../tscircuit.config.json | 3 + .../tsconfig.json | 20 +++ .../types.d.ts | 4 + 13 files changed, 650 insertions(+) create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/README.md create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tscircuit.config.json create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/types.d.ts diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/README.md b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/README.md new file mode 100644 index 00000000..7ff8e859 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/README.md @@ -0,0 +1,5 @@ +# SparkFun Tristimulus Color Sensor - OPT4048DTSR + +For more information about this board, visit the official SparkFun product page: + +[https://www.sparkfun.com/sparkfun-tristimulus-color-sensor-opt4048dtsr-qwiic.html](https://www.sparkfun.com/sparkfun-tristimulus-color-sensor-opt4048dtsr-qwiic.html) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx new file mode 100644 index 00000000..44f56ef7 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx @@ -0,0 +1,14 @@ +import manualEdits from "./manual-edits.json"; +import Jumpers from "./jumpers" +import Sensor from "./color-sensor" +import Address from "./address" +import Connectors from "./connectors" + +export default () => ( + + + +
+ + +) \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg new file mode 100644 index 00000000..1f63bcce --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg @@ -0,0 +1 @@ +U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg new file mode 100644 index 00000000..fdeb0ef1 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -0,0 +1,146 @@ +OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDAADDRADDRADDRINTSCLSDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx new file mode 100644 index 00000000..93a5079f --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx @@ -0,0 +1,50 @@ +export default ({ x = 0, y = 0 }: DisplacementProps) => ( + + + + + + + + + + + + +) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx new file mode 100644 index 00000000..5fbcb08b --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx @@ -0,0 +1,91 @@ +import { ChipProps } from "@tscircuit/props" +import { sel } from "@tscircuit/core" + +const pinLabels: Record<`pin${number}`, string> = { + pin1: "VDD", + pin2: "ADDR", + pin3: "NC", + pin4: "GND", + pin5: "SCL", + pin6: "NC", + pin7: "INT", + pin8: "SDA", +} + +const OPT4048DTSR = (props: ChipProps) => ( + +) +export default ({ x = 0, y = 0 }: DisplacementProps) => ( + + + + + + + + +) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx new file mode 100644 index 00000000..d7862086 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx @@ -0,0 +1,77 @@ +import { ChipProps } from "@tscircuit/props" +import { sel } from "@tscircuit/core" + +const pinLabelsJ2: Record<`pin${number}`, string> = { + pin4: "SCL", + pin3: "SDA", + pin2: "VCC", + pin1: "GND", +} +const pinLabelsJ3: Record<`pin${number}`, string> = { + pin4: "SCL", + pin3: "SDA", + pin2: "VCC", + pin1: "GND", +} + +export default ({ x = 0, y = 0 }: DisplacementProps) => ( + + + + + + + + + + + + + + + + .pin1", ".J2 > .pin1"]} + anchorSide="top" + /> + .pin2", ".J2 > .pin2"]} + anchorSide="bottom" + /> + +) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx new file mode 100644 index 00000000..7f3ea321 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx @@ -0,0 +1,21 @@ +import manualEdits from "./manual-edits.json"; +import Jumpers from "./jumpers" +import Sensor from "./color-sensor" +import Address from "./address" +import Connectors from "./connectors" + +export default () => ( + + + +
+ + +) + +export { + Jumpers, + Sensor, + Address, + Connectors +} diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx new file mode 100644 index 00000000..0efca722 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx @@ -0,0 +1,86 @@ +export default ({ x = 0, y = 0 }: DisplacementProps) => ( + + + + + + + + + + + + + + + + + + + + + + + +) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json new file mode 100644 index 00000000..29e54620 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json @@ -0,0 +1,132 @@ +{ + "pcb_placements": [ + { + "selector": "U1", + "center": { + "x": -4.271595397714835, + "y": 5.489940467407534 + }, + "relative_to": "group_center" + }, + { + "selector": "J3", + "center": { + "x": -9.7924038088105, + "y": -4.66635641732182 + }, + "relative_to": "group_center" + }, + { + "selector": "R3", + "center": { + "x": -0.7428201996109323, + "y": 10.268075769661783 + }, + "relative_to": "group_center" + }, + { + "selector": "I2C_PU", + "center": { + "x": 4.313605873343384, + "y": 9.102196869514735 + }, + "relative_to": "group_center" + }, + { + "selector": "C1", + "center": { + "x": -9.97045563897699, + "y": 5.3760595657787995 + }, + "relative_to": "group_center" + }, + { + "selector": "R1", + "center": { + "x": 2.067744559807096, + "y": 6.097195496867082 + }, + "relative_to": "group_center" + }, + { + "selector": "J2", + "center": { + "x": 0.5832100040481549, + "y": -2.7569927464094697 + }, + "relative_to": "group_center" + }, + { + "selector": "J1", + "center": { + "x": 0.4241527302168393, + "y": -7.104558231132076 + }, + "relative_to": "group_center" + }, + { + "selector": "D1", + "center": { + "x": 10.237398247324702, + "y": 7.316634596240499 + }, + "relative_to": "group_center" + }, + { + "selector": "R2", + "center": { + "x": 6.5213482270839265, + "y": 5.832100040481555 + }, + "relative_to": "group_center" + }, + { + "selector": "R4", + "center": { + "x": 10.391741890312588, + "y": 10.550799164143909 + }, + "relative_to": "group_center" + }, + { + "selector": "LED", + "center": { + "x": 10.396455521156014, + "y": 3.97643184578288 + }, + "relative_to": "group_center" + }, + { + "selector": "R5", + "center": { + "x": 11.080990076914958, + "y": -1.1134009168192094 + }, + "relative_to": "group_center" + }, + { + "selector": "OX45", + "center": { + "x": 8.063615504963398, + "y": -3.6052982068431447 + }, + "relative_to": "group_center" + }, + { + "selector": "OX46", + "center": { + "x": 8.010596413686283, + "y": -6.6804055009152385 + }, + "relative_to": "group_center" + }, + { + "selector": "OX44", + "center": { + "x": 8.01059641368629, + "y": -9.914570068818648 + }, + "relative_to": "group_center" + } + ] +} \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tscircuit.config.json b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tscircuit.config.json new file mode 100644 index 00000000..1ccfd369 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tscircuit.config.json @@ -0,0 +1,3 @@ +{ + "mainEntrypoint": "index.tsx" +} diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json new file mode 100644 index 00000000..3cf142c9 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "ES6", + "module": "ESNext", + "jsx": "react-jsx", + "outDir": "dist", + "strict": true, + "esModuleInterop": true, + "moduleResolution": "node", + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "sourceMap": true, + "allowSyntheticDefaultImports": true, + "experimentalDecorators": true, + "types": [ + "@tscircuit/core" + ] + } +} \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/types.d.ts b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/types.d.ts new file mode 100644 index 00000000..3439f008 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/types.d.ts @@ -0,0 +1,4 @@ +interface DisplacementProps { + x: number + y: number +} From f50940de0cd609ed63cb9c65570c6ad43f438d20 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:01:24 +0530 Subject: [PATCH 02/26] format --- ...un Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx | 4 ++-- .../index.tsx | 9 ++------- .../manual-edits.json | 2 +- .../tsconfig.json | 6 ++---- 4 files changed, 7 insertions(+), 14 deletions(-) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx index 44f56ef7..fa39b124 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit.tsx @@ -1,4 +1,4 @@ -import manualEdits from "./manual-edits.json"; +import manualEdits from "./manual-edits.json" import Jumpers from "./jumpers" import Sensor from "./color-sensor" import Address from "./address" @@ -11,4 +11,4 @@ export default () => (
-) \ No newline at end of file +) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx index 7f3ea321..3864f7b1 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx @@ -1,4 +1,4 @@ -import manualEdits from "./manual-edits.json"; +import manualEdits from "./manual-edits.json" import Jumpers from "./jumpers" import Sensor from "./color-sensor" import Address from "./address" @@ -13,9 +13,4 @@ export default () => ( ) -export { - Jumpers, - Sensor, - Address, - Connectors -} +export { Jumpers, Sensor, Address, Connectors } diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json index 29e54620..63e0ce84 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json @@ -129,4 +129,4 @@ "relative_to": "group_center" } ] -} \ No newline at end of file +} diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json index 3cf142c9..e44135af 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/tsconfig.json @@ -13,8 +13,6 @@ "sourceMap": true, "allowSyntheticDefaultImports": true, "experimentalDecorators": true, - "types": [ - "@tscircuit/core" - ] + "types": ["@tscircuit/core"] } -} \ No newline at end of file +} From 4d1e8f3557edcb8fba62bcea1c1a87a7d13fa808 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:05:09 +0530 Subject: [PATCH 03/26] c --- .../color-sensor.tsx | 2 +- .../connectors.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx index 5fbcb08b..ad96de45 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx @@ -1,4 +1,4 @@ -import { ChipProps } from "@tscircuit/props" +import type { ChipProps } from "@tscircuit/props" import { sel } from "@tscircuit/core" const pinLabels: Record<`pin${number}`, string> = { diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx index d7862086..265566e6 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx @@ -1,4 +1,4 @@ -import { ChipProps } from "@tscircuit/props" +import type { ChipProps } from "@tscircuit/props" import { sel } from "@tscircuit/core" const pinLabelsJ2: Record<`pin${number}`, string> = { From c49f98d29b08347a5d1b368a855b197cf712012f Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:10:22 +0530 Subject: [PATCH 04/26] d --- .../SparkFun-HMC6343-Breakout.circuit.tsx | 11 +++++++++++ .../color-sensor.tsx | 5 +++++ .../connectors.tsx | 6 +++++- .../jumpers.tsx | 5 +++++ 4 files changed, 26 insertions(+), 1 deletion(-) diff --git a/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx b/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx index 6311a2a9..6e844179 100644 --- a/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx +++ b/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx @@ -78,6 +78,11 @@ const HMC6343Breakout = () => ( ( = { pin1: "VDD", pin2: "ADDR", diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx index 265566e6..8df5d6e5 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx @@ -1,6 +1,10 @@ -import type { ChipProps } from "@tscircuit/props" import { sel } from "@tscircuit/core" +interface DisplacementProps { + x?: number + y?: number +} + const pinLabelsJ2: Record<`pin${number}`, string> = { pin4: "SCL", pin3: "SDA", diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx index 0efca722..a5081fd7 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx @@ -1,3 +1,8 @@ +interface DisplacementProps { + x?: number + y?: number +} + export default ({ x = 0, y = 0 }: DisplacementProps) => ( Date: Wed, 2 Jul 2025 15:13:09 +0530 Subject: [PATCH 05/26] f --- ...Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx | 17 +++++++++++++++++ ...rkFun I2C DAC Breakout - MCP4725.circuit.tsx | 10 ++++++++++ .../address.tsx | 17 +++++++++++++++++ .../jumpers.tsx | 9 +++++++++ 4 files changed, 53 insertions(+) diff --git a/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx b/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx index 92873344..70ce127b 100644 --- a/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx +++ b/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx @@ -62,6 +62,11 @@ const MotionSensor = () => ( ( /> ( /> ( /> ( ( ( ( ( /> ( ( ( Date: Wed, 2 Jul 2025 15:15:30 +0530 Subject: [PATCH 06/26] Discard changes to boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx --- .../SparkFun-HMC6343-Breakout.circuit.tsx | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx b/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx index 6e844179..6311a2a9 100644 --- a/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx +++ b/boards/SparkFun HMC6343 Breakout/SparkFun-HMC6343-Breakout.circuit.tsx @@ -78,11 +78,6 @@ const HMC6343Breakout = () => ( ( Date: Wed, 2 Jul 2025 15:17:17 +0530 Subject: [PATCH 07/26] Discard changes to boards/SparkFun I2C DAC Breakout - MCP4725/SparkFun I2C DAC Breakout - MCP4725.circuit.tsx --- .../SparkFun I2C DAC Breakout - MCP4725.circuit.tsx | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/boards/SparkFun I2C DAC Breakout - MCP4725/SparkFun I2C DAC Breakout - MCP4725.circuit.tsx b/boards/SparkFun I2C DAC Breakout - MCP4725/SparkFun I2C DAC Breakout - MCP4725.circuit.tsx index a655ed9c..1e422205 100644 --- a/boards/SparkFun I2C DAC Breakout - MCP4725/SparkFun I2C DAC Breakout - MCP4725.circuit.tsx +++ b/boards/SparkFun I2C DAC Breakout - MCP4725/SparkFun I2C DAC Breakout - MCP4725.circuit.tsx @@ -175,11 +175,6 @@ const I2CDACBREAKOUT = () => ( ( Date: Wed, 2 Jul 2025 15:18:59 +0530 Subject: [PATCH 08/26] revert --- ...Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx | 17 ----------------- .../address.tsx | 6 +++--- .../jumpers.tsx | 4 ++-- 3 files changed, 5 insertions(+), 22 deletions(-) diff --git a/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx b/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx index 70ce127b..92873344 100644 --- a/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx +++ b/boards/SparkFun Human Presence and Motion Sensor - STHS34PF80 (Qwiic)/SparkFun-Human-Presence-and-Motion-Sensor-STHS34PF80-(Qwiic).circuit.tsx @@ -62,11 +62,6 @@ const MotionSensor = () => ( ( /> ( /> ( /> ( name="OX45" pinLabels={{ pin1: "ADDR_1", - pin2: "VCC" + pin2: "VCC", }} pinCount={2} footprint="solderjumper3_p0.8_pw0.635_ph1.270" @@ -32,7 +32,7 @@ export default ({ x = 0, y = 0 }: DisplacementProps) => ( name="OX46" pinLabels={{ pin1: "ADDR_2", - pin2: "SDA" + pin2: "SDA", }} pinCount={2} footprint="solderjumper3_p0.8_pw0.635_ph1.270" @@ -45,7 +45,7 @@ export default ({ x = 0, y = 0 }: DisplacementProps) => ( name="OX44" pinLabels={{ pin1: "GND", - pin2: "ADDR_0" + pin2: "ADDR_0", }} pinCount={2} footprint="solderjumper3_p0.8_pw0.635_ph1.270" diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx index 2d4475bd..1da2fa96 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx @@ -10,7 +10,7 @@ export default ({ x = 0, y = 0 }: DisplacementProps) => ( pinLabels={{ pin1: "SDA_PU", pin2: "VCC", - pin3: "SCL_PU" + pin3: "SCL_PU", }} pinCount={3} footprint="solderjumper3_p0.8_pw0.635_ph1.270" @@ -81,7 +81,7 @@ export default ({ x = 0, y = 0 }: DisplacementProps) => ( name="LED" pinLabels={{ pin1: "LED_GND", - pin2: "NC" + pin2: "NC", }} pinCount={2} footprint="solderjumper3_p0.8_pw0.635_ph1.270" From aa47b6a3098414c4780e2ec33cddf6d02d3316c0 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:22:13 +0530 Subject: [PATCH 09/26] delete snapsjots --- ... Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 1 - ...r - OPT4048DTSR.circuit-schematic.snap.svg | 146 ------------------ 2 files changed, 147 deletions(-) delete mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg delete mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg deleted file mode 100644 index 1f63bcce..00000000 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg +++ /dev/null @@ -1 +0,0 @@ -U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg deleted file mode 100644 index fdeb0ef1..00000000 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ /dev/null @@ -1,146 +0,0 @@ -OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDAADDRADDRADDRINTSCLSDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file From 1e45877f7fc3ad047fe7788b897d050e94c01af7 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:27:11 +0530 Subject: [PATCH 10/26] use latest cli to avoid snapshot er --- ... Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 1 + ...r - OPT4048DTSR.circuit-schematic.snap.svg | 146 ++++++++++++++++++ package.json | 2 +- 3 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg new file mode 100644 index 00000000..1f63bcce --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg @@ -0,0 +1 @@ +U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg new file mode 100644 index 00000000..fdeb0ef1 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -0,0 +1,146 @@ +OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDAADDRADDRADDRINTSCLSDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file diff --git a/package.json b/package.json index 9587a9ab..4f9deb9e 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ }, "devDependencies": { "@biomejs/biome": "^1.9.4", - "@tscircuit/cli": "^0.1.154", + "@tscircuit/cli": "latest", "@tscircuit/props": "^0.0.245", "@types/bun": "latest" }, From a601f154b83e89a11f27b7d88c5cb0a5b56d7eef Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:34:50 +0530 Subject: [PATCH 11/26] remove napshots --- ... Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 1 - ...r - OPT4048DTSR.circuit-schematic.snap.svg | 146 ------------------ 2 files changed, 147 deletions(-) delete mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg delete mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg deleted file mode 100644 index 1f63bcce..00000000 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg +++ /dev/null @@ -1 +0,0 @@ -U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg deleted file mode 100644 index fdeb0ef1..00000000 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ /dev/null @@ -1,146 +0,0 @@ -OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDAADDRADDRADDRINTSCLSDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file From 87011ccfe8a7e722ae821a9c3a457f3c3fe6272b Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:56:48 +0530 Subject: [PATCH 12/26] deps update --- package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 4f9deb9e..931f3ca7 100644 --- a/package.json +++ b/package.json @@ -11,15 +11,15 @@ "snapshot:update": "tsci snapshot --update" }, "devDependencies": { - "@biomejs/biome": "^1.9.4", + "@biomejs/biome": "^2.0.6", "@tscircuit/cli": "latest", - "@tscircuit/props": "^0.0.245", + "@tscircuit/props": "^0.0.247", "@types/bun": "latest" }, "peerDependencies": { - "typescript": "^5" + "typescript": "^5.8.3" }, "dependencies": { - "tscircuit": "^0.0.508" + "tscircuit": "^0.0.514" } } From 39ec416396ad218188d4aa8f2bb74ad126f79ec0 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 15:56:55 +0530 Subject: [PATCH 13/26] ds --- bun.lock | 58 ++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 23 deletions(-) diff --git a/bun.lock b/bun.lock index f781e9fc..ae4ac449 100644 --- a/bun.lock +++ b/bun.lock @@ -4,16 +4,16 @@ "": { "name": "sparkfun-boards", "dependencies": { - "tscircuit": "^0.0.508", + "tscircuit": "^0.0.514", }, "devDependencies": { - "@biomejs/biome": "^1.9.4", - "@tscircuit/cli": "^0.1.154", - "@tscircuit/props": "^0.0.245", + "@biomejs/biome": "^2.0.6", + "@tscircuit/cli": "latest", + "@tscircuit/props": "^0.0.247", "@types/bun": "latest", }, "peerDependencies": { - "typescript": "^5", + "typescript": "^5.8.3", }, }, }, @@ -22,23 +22,23 @@ "@babel/standalone": ["@babel/standalone@7.27.6", "", {}, "sha512-OHuaAM2Sh2SCt+yzP44J7nHt69Bx5Jos8t0NaeEwyK4IqInxKxkhDGIPq5UmSDhkrc6Od28wBHRI/qN10ufuPA=="], - "@biomejs/biome": ["@biomejs/biome@1.9.4", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "1.9.4", "@biomejs/cli-darwin-x64": "1.9.4", "@biomejs/cli-linux-arm64": "1.9.4", "@biomejs/cli-linux-arm64-musl": "1.9.4", "@biomejs/cli-linux-x64": "1.9.4", "@biomejs/cli-linux-x64-musl": "1.9.4", "@biomejs/cli-win32-arm64": "1.9.4", "@biomejs/cli-win32-x64": "1.9.4" }, "bin": { "biome": "bin/biome" } }, "sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog=="], + "@biomejs/biome": ["@biomejs/biome@2.0.6", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.0.6", "@biomejs/cli-darwin-x64": "2.0.6", "@biomejs/cli-linux-arm64": "2.0.6", "@biomejs/cli-linux-arm64-musl": "2.0.6", "@biomejs/cli-linux-x64": "2.0.6", "@biomejs/cli-linux-x64-musl": "2.0.6", "@biomejs/cli-win32-arm64": "2.0.6", "@biomejs/cli-win32-x64": "2.0.6" }, "bin": { "biome": "bin/biome" } }, "sha512-RRP+9cdh5qwe2t0gORwXaa27oTOiQRQvrFf49x2PA1tnpsyU7FIHX4ZOFMtBC4QNtyWsN7Dqkf5EDbg4X+9iqA=="], - "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@1.9.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw=="], + "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.0.6", "", { "os": "darwin", "cpu": "arm64" }, "sha512-AzdiNNjNzsE6LfqWyBvcL29uWoIuZUkndu+wwlXW13EKcBHbbKjNQEZIJKYDc6IL+p7bmWGx3v9ZtcRyIoIz5A=="], - "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@1.9.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg=="], + "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.0.6", "", { "os": "darwin", "cpu": "x64" }, "sha512-wJjjP4E7bO4WJmiQaLnsdXMa516dbtC6542qeRkyJg0MqMXP0fvs4gdsHhZ7p9XWTAmGIjZHFKXdsjBvKGIJJQ=="], - "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@1.9.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g=="], + "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.0.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-ZSVf6TYo5rNMUHIW1tww+rs/krol7U5A1Is/yzWyHVZguuB0lBnIodqyFuwCNqG9aJGyk7xIMS8HG0qGUPz0SA=="], - "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@1.9.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA=="], + "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.0.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-CVPEMlin3bW49sBqLBg2x016Pws7eUXA27XYDFlEtponD0luYjg2zQaMJ2nOqlkKG9fqzzkamdYxHdMDc2gZFw=="], - "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@1.9.4", "", { "os": "linux", "cpu": "x64" }, "sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg=="], + "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.0.6", "", { "os": "linux", "cpu": "x64" }, "sha512-geM1MkHTV1Kh2Cs/Xzot9BOF3WBacihw6bkEmxkz4nSga8B9/hWy5BDiOG3gHDGIBa8WxT0nzsJs2f/hPqQIQw=="], - "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@1.9.4", "", { "os": "linux", "cpu": "x64" }, "sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg=="], + "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.0.6", "", { "os": "linux", "cpu": "x64" }, "sha512-mKHE/e954hR/hSnAcJSjkf4xGqZc/53Kh39HVW1EgO5iFi0JutTN07TSjEMg616julRtfSNJi0KNyxvc30Y4rQ=="], - "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@1.9.4", "", { "os": "win32", "cpu": "arm64" }, "sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg=="], + "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.0.6", "", { "os": "win32", "cpu": "arm64" }, "sha512-290V4oSFoKaprKE1zkYVsDfAdn0An5DowZ+GIABgjoq1ndhvNxkJcpxPsiYtT7slbVe3xmlT0ncdfOsN7KruzA=="], - "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@1.9.4", "", { "os": "win32", "cpu": "x64" }, "sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA=="], + "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.0.6", "", { "os": "win32", "cpu": "x64" }, "sha512-bfM1Bce0d69Ao7pjTjUS+AWSZ02+5UHdiAP85Th8e9yV5xzw6JrHXbL5YWlcEKQ84FIZMdDc7ncuti1wd2sdbw=="], "@emotion/is-prop-valid": ["@emotion/is-prop-valid@1.2.2", "", { "dependencies": { "@emotion/memoize": "^0.8.1" } }, "sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw=="], @@ -56,15 +56,15 @@ "@tscircuit/checks": ["@tscircuit/checks@0.0.52", "", { "peerDependencies": { "@tscircuit/math-utils": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "typescript": "^5.5.3" } }, "sha512-vPHwaHdjdeJlD9bcBl2krb5StRCLhh1ueKOgLOdBjAtM75BGNffHnxiwvOJH3jDzeJrh2XIwMJEJTmuK84AQZA=="], - "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.49", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-yHZSpFmndtbLKzbJpKunle9yhOdzg+qChuapWIXHmCl7d+Q1gfvjdK5hjW2c5tTsioprXXHW0lFsEVDRlnESXw=="], + "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.50", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-+ygl/enzpe9RvIstg+EXl6aeGIDJKaFyQDCBbvWh8/PI68BtoElqArUq/FUFVcXhY/wyVNExd+HyYnsbHXw+gw=="], "@tscircuit/cli": ["@tscircuit/cli@0.1.154", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-ymEeAj4KUlYJ1ylLc1D4ehpRz3KsbPOLYNjUv8YCEO8QBaUwJxZi5h8u4IdLhUasGHSmJkhlp5ezW8/JxcyLVQ=="], - "@tscircuit/core": ["@tscircuit/core@0.0.518", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "^5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-match-adapt": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-lPUKHQbt6OY9r3artUXp3IllSngHN9LD4cuWMW4L4ZWKsKlJZ/l/TA8L4jetfiDSaLY1qWD5KuEqvutyMGZvzg=="], + "@tscircuit/core": ["@tscircuit/core@0.0.534", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-corpus": "*", "@tscircuit/schematic-match-adapt": "*", "bpc-graph": "*", "circuit-json": "*", "circuit-json-to-bpc": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-ZOcyXXWQ5wK7P1iODKWI08F+SNplaWKqG2DV/2f6aYOW7CFNkQF9dMR4xpML/PP9MLEQvqEmNhQwYIQjDX3otg=="], - "@tscircuit/eval": ["@tscircuit/eval@0.0.239", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-Kg4gVAuImpx/inLnbw/Uze6ZYD2tGcMoZxYi2fiIcRK83OsPw1oCbt9acvkYD6T63p+bODZ3pxYKK6fb+S8zcg=="], + "@tscircuit/eval": ["@tscircuit/eval@0.0.242", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-BRVNnv+8LY2ebRWRpSJtRy01pu0c/tgC9aT57yJr0F2Z9JwTCDHtWJ1ZfKzNGX44UUtlGEXoViRqhNUcJDXRag=="], - "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.182", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-bYw7lv+BKwisRqFwvtupmelTwDK9e6gm5DFPugHD4J43wHG7gC1gNiPntazipy1oitVXjtlewoNNHzW5q3rNdw=="], + "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.186", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-LNBujeGtUANzvVpSp7AQOG/KWQG6vWe24NEeCn7zokzWCehQlT+1jKdhSHAQHRhFXXRjTsn8uxApxKzsSraj1Q=="], "@tscircuit/infgrid-ijump-astar": ["@tscircuit/infgrid-ijump-astar@0.0.33", "", {}, "sha512-tmX4Esp+HqyIGCUD43steVUH8pKRuyBNs21r4NlApGGLu+K1XSrK9FinhVJyMiEsuwJdajLnMTzmVt8vSYSafA=="], @@ -76,10 +76,12 @@ "@tscircuit/mm": ["@tscircuit/mm@0.0.8", "", { "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-nl7nxE7AhARbKuobflI0LUzoir7+wJyvwfPw6bzA/O0Q3YTcH3vBkU/Of+V/fp6ht+AofiCXj7YAH9E446138Q=="], - "@tscircuit/props": ["@tscircuit/props@0.0.245", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-yg7eI/Tsh0NGoWuTPSE+lzlIOXXemspNs1W1csdjTr/mMT6vXGjhxr9z2nBS3eCkkqOB4LWVDLtU85iDr0ha2g=="], + "@tscircuit/props": ["@tscircuit/props@0.0.247", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-LFVafyb3sNBLlytGMOSvMMXAzZqjkmy2Oz3kO4MdCeohf6pPAHwveKIewAsA16TTXzVsAr8yynzuFkrdbst5JQ=="], "@tscircuit/schematic-autolayout": ["@tscircuit/schematic-autolayout@0.0.6", "", { "dependencies": { "@tscircuit/soup-util": "^0.0.38", "transformation-matrix": "^2.16.1" } }, "sha512-34cQxtlSylBKyHkzaMBCynaWJgN9c/mWm7cz63StTYIafKmfFs383K8Xoc4QX8HXCvVrHYl1aK15onZua9MxeA=="], + "@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.30", "", { "dependencies": { "bpc-graph": "^0.0.17" }, "peerDependencies": { "typescript": "^5" } }, "sha512-aXgROULjY+WJgKJWILKvzLz41v+puz33M52z46jXtLgHKpTAZnk1r2C/GkOyVehgkAg/NkxIX1HXpJc9RMgM2g=="], + "@tscircuit/schematic-match-adapt": ["@tscircuit/schematic-match-adapt@0.0.16", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-85e6Pq58zrhZqivyW4bPVZfGfg8xLBCj3yjHl5LZslwfsDRgtWVob4bjJMhCfNL/mLsPUQKnpiDNnFKl9ugUZw=="], "@tscircuit/soup-util": ["@tscircuit/soup-util@0.0.38", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-GdcuFxk+qnJZv+eI7ZoJ1MJEseFgRyaztMtQ/OXA2SUnxyPEH0UTy9vkhKTm+8GTePryEgdXcc65TgUyrr44ww=="], @@ -104,6 +106,8 @@ "boolbase": ["boolbase@1.0.0", "", {}, "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="], + "bpc-graph": ["bpc-graph@0.0.30", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.8" }, "peerDependencies": { "typescript": "^5" } }, "sha512-rI0FdeCmM7F96J9vhvHsaqkWn8PysJixB+fJjEpxZhhcEVEUYObhA5MO3JK0Txx9no0fx/y3Jka9bg4i+g3zGQ=="], + "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="], "bun-types": ["bun-types@1.2.17", "", { "dependencies": { "@types/node": "*" } }, "sha512-ElC7ItwT3SCQwYZDYoAH+q6KT4Fxjl8DtZ6qDulUFBmXA8YB4xo+l54J9ZJN+k2pphfn9vk7kfubeSd5QfTVJQ=="], @@ -118,6 +122,8 @@ "circuit-json": ["circuit-json@0.0.212", "", { "dependencies": { "nanoid": "^5.0.7", "zod": "*" } }, "sha512-gA07y76H55nFjlckmDVl6ZWCqSu6alDMYIm0vWp7cK/NPXlObB90QHdGq/YLxL0CtDihqLD9ZTbTr2viIOMUfg=="], + "circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.8", "", { "peerDependencies": { "bpc-graph": "*", "circuit-json": "*", "typescript": "^5" } }, "sha512-+xDdl61KIx9AzfPSGQphX07gFKhLMJO/Esv8372yq6pCiv+zTyGBZLao1ZtQqMLuulkBJGWXc4ulAq6RBv1kUA=="], + "circuit-json-to-connectivity-map": ["circuit-json-to-connectivity-map@0.0.22", "", { "dependencies": { "@tscircuit/math-utils": "^0.0.9" }, "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-HN8DiISjZZLTglGEkYNRpKeQ/DMG4dDo5j4Hck0UGSJbpux9aFwtJOGszMf06Inh/gu5oKBrpZJIeWxaNacKUg=="], "color": ["color@4.2.3", "", { "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" } }, "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A=="], @@ -236,7 +242,7 @@ "scheduler": ["scheduler@0.25.0", "", {}, "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA=="], - "schematic-symbols": ["schematic-symbols@0.0.163", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-/MOlqM8BdMSzGRobxFSiVXCYAJc26FK489lgDxfSR1j6tvs7FE9SIB1EVhR2ghMO+P5Lu1scWDzYyen9zK20lQ=="], + "schematic-symbols": ["schematic-symbols@0.0.165", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-yrtKG+Ll3PFa4L+9LP2C3FVWQqfIwqyGe7ALtE3wY4LMV+oT2tAZ/gj8pHMUaSk+VZG3fws3OoOewsmvJZzx6Q=="], "shallowequal": ["shallowequal@1.1.0", "", {}, "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ=="], @@ -256,7 +262,7 @@ "transformation-matrix": ["transformation-matrix@2.16.1", "", {}, "sha512-tdtC3wxVEuzU7X/ydL131Q3JU5cPMEn37oqVLITjRDSDsnSHVFzW2JiCLfZLIQEgWzZHdSy3J6bZzvKEN24jGA=="], - "tscircuit": ["tscircuit@0.0.508", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.49", "@tscircuit/cli": "^0.1.147", "@tscircuit/core": "^0.0.518", "@tscircuit/eval": "^0.0.239", "@tscircuit/footprinter": "^0.0.182", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.243", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.163" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-TlAocAxsHWu089SJkWtL7/z4LPZ49RhptneCP+RXfQKrI1+4uqoPueEVcx8bBh7cp2oP/L7Qxm/oRpsTN1tIyg=="], + "tscircuit": ["tscircuit@0.0.514", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.50", "@tscircuit/cli": "^0.1.153", "@tscircuit/core": "^0.0.534", "@tscircuit/eval": "^0.0.242", "@tscircuit/footprinter": "^0.0.186", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.246", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.165" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-/7Eb9fJ8drgkI+62q3BRPyiwo2044SwvAjY8CiEBbses3tQbgK2JGtiZU0m5nabIfVKn7fKLoHiruDunTJD4qw=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], @@ -272,6 +278,10 @@ "zustand": ["zustand@5.0.5", "", { "peerDependencies": { "@types/react": ">=18.0.0", "immer": ">=9.0.6", "react": ">=18.0.0", "use-sync-external-store": ">=1.2.0" }, "optionalPeers": ["@types/react", "immer", "react", "use-sync-external-store"] }, "sha512-mILtRfKW9xM47hqxGIxCv12gXusoY/xTSHBYApXozR0HmQv299whhBeeAcRy+KrPPybzosvJBCOmVjq6x12fCg=="], + "@tscircuit/schematic-corpus/bpc-graph": ["bpc-graph@0.0.17", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.6" }, "peerDependencies": { "typescript": "^5" } }, "sha512-r8jz1ZRRnY99UMooyeYDT7LUzvYs8b0zQihpQtHtqE/AZ9bkc+JVgG43Dty0IqdI5jLZpgmgLR1OeDA0fxGRIQ=="], + + "bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], + "circuit-json-to-connectivity-map/@tscircuit/math-utils": ["@tscircuit/math-utils@0.0.9", "", { "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-sPzfXndijet8z29X6f5vnSZddiso2tRg7m6rB+268bVj60mxnxUMD14rKuMlLn6n84fMOpD/X7pRTZUfi6M+Tg=="], "jscad-fiber/react-reconciler": ["react-reconciler@0.29.2", "", { "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" }, "peerDependencies": { "react": "^18.3.1" } }, "sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg=="], @@ -286,9 +296,11 @@ "styled-components/tslib": ["tslib@2.6.2", "", {}, "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="], - "tscircuit/@tscircuit/cli": ["@tscircuit/cli@0.1.149", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-sgCsl557VTjaqUYXLmPwRD6PN2wOv18sd8G44UwDlm0nKQFKY4cMhc4tbM1PamTN2PI655YgOqL1+C0GKF8AHQ=="], + "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.246", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-HHY51vYBVPMW8K3yx3DiyFIpFM5mJRU7g8/e6ZXz0Uhu1HIhtV2Z1HQrA0uwGXQKVXwE1Zez4NBqr+vGI8fLcg=="], + + "@tscircuit/schematic-corpus/bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], - "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.243", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-UB3rcCnwBO/aqQpr/U0SZgGug4f3pDqBev7xowKnlZx2kzo0XXSEWrFc2uZotysGfRSKL8YFwQmSiUJOpgjgew=="], + "@tscircuit/schematic-corpus/bpc-graph/circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.6", "", { "peerDependencies": { "circuit-json": "*", "typescript": "^5" } }, "sha512-ydxhzEVimgqsr9R6Uh7ze77U2hrz0Gg3zBDJscvkylFXH6N8t+Jqo2cEQ5OBwsNppMq2jfMTfJ+gkBi4c0TUoQ=="], "jscad-fiber/react-reconciler/scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], } From 9535570139a0ad8a8faf8ec3d31da081fefc2e1d Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 16:23:41 +0530 Subject: [PATCH 14/26] Discard changes to package.json --- package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 931f3ca7..9587a9ab 100644 --- a/package.json +++ b/package.json @@ -11,15 +11,15 @@ "snapshot:update": "tsci snapshot --update" }, "devDependencies": { - "@biomejs/biome": "^2.0.6", - "@tscircuit/cli": "latest", - "@tscircuit/props": "^0.0.247", + "@biomejs/biome": "^1.9.4", + "@tscircuit/cli": "^0.1.154", + "@tscircuit/props": "^0.0.245", "@types/bun": "latest" }, "peerDependencies": { - "typescript": "^5.8.3" + "typescript": "^5" }, "dependencies": { - "tscircuit": "^0.0.514" + "tscircuit": "^0.0.508" } } From 478941e98ed2aa1bbaf53362227c5831cab9293a Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 16:23:48 +0530 Subject: [PATCH 15/26] Discard changes to bun.lock --- bun.lock | 58 ++++++++++++++++++++++---------------------------------- 1 file changed, 23 insertions(+), 35 deletions(-) diff --git a/bun.lock b/bun.lock index ae4ac449..f781e9fc 100644 --- a/bun.lock +++ b/bun.lock @@ -4,16 +4,16 @@ "": { "name": "sparkfun-boards", "dependencies": { - "tscircuit": "^0.0.514", + "tscircuit": "^0.0.508", }, "devDependencies": { - "@biomejs/biome": "^2.0.6", - "@tscircuit/cli": "latest", - "@tscircuit/props": "^0.0.247", + "@biomejs/biome": "^1.9.4", + "@tscircuit/cli": "^0.1.154", + "@tscircuit/props": "^0.0.245", "@types/bun": "latest", }, "peerDependencies": { - "typescript": "^5.8.3", + "typescript": "^5", }, }, }, @@ -22,23 +22,23 @@ "@babel/standalone": ["@babel/standalone@7.27.6", "", {}, "sha512-OHuaAM2Sh2SCt+yzP44J7nHt69Bx5Jos8t0NaeEwyK4IqInxKxkhDGIPq5UmSDhkrc6Od28wBHRI/qN10ufuPA=="], - "@biomejs/biome": ["@biomejs/biome@2.0.6", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.0.6", "@biomejs/cli-darwin-x64": "2.0.6", "@biomejs/cli-linux-arm64": "2.0.6", "@biomejs/cli-linux-arm64-musl": "2.0.6", "@biomejs/cli-linux-x64": "2.0.6", "@biomejs/cli-linux-x64-musl": "2.0.6", "@biomejs/cli-win32-arm64": "2.0.6", "@biomejs/cli-win32-x64": "2.0.6" }, "bin": { "biome": "bin/biome" } }, "sha512-RRP+9cdh5qwe2t0gORwXaa27oTOiQRQvrFf49x2PA1tnpsyU7FIHX4ZOFMtBC4QNtyWsN7Dqkf5EDbg4X+9iqA=="], + "@biomejs/biome": ["@biomejs/biome@1.9.4", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "1.9.4", "@biomejs/cli-darwin-x64": "1.9.4", "@biomejs/cli-linux-arm64": "1.9.4", "@biomejs/cli-linux-arm64-musl": "1.9.4", "@biomejs/cli-linux-x64": "1.9.4", "@biomejs/cli-linux-x64-musl": "1.9.4", "@biomejs/cli-win32-arm64": "1.9.4", "@biomejs/cli-win32-x64": "1.9.4" }, "bin": { "biome": "bin/biome" } }, "sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog=="], - "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.0.6", "", { "os": "darwin", "cpu": "arm64" }, "sha512-AzdiNNjNzsE6LfqWyBvcL29uWoIuZUkndu+wwlXW13EKcBHbbKjNQEZIJKYDc6IL+p7bmWGx3v9ZtcRyIoIz5A=="], + "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@1.9.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw=="], - "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.0.6", "", { "os": "darwin", "cpu": "x64" }, "sha512-wJjjP4E7bO4WJmiQaLnsdXMa516dbtC6542qeRkyJg0MqMXP0fvs4gdsHhZ7p9XWTAmGIjZHFKXdsjBvKGIJJQ=="], + "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@1.9.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg=="], - "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.0.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-ZSVf6TYo5rNMUHIW1tww+rs/krol7U5A1Is/yzWyHVZguuB0lBnIodqyFuwCNqG9aJGyk7xIMS8HG0qGUPz0SA=="], + "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@1.9.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g=="], - "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.0.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-CVPEMlin3bW49sBqLBg2x016Pws7eUXA27XYDFlEtponD0luYjg2zQaMJ2nOqlkKG9fqzzkamdYxHdMDc2gZFw=="], + "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@1.9.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA=="], - "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.0.6", "", { "os": "linux", "cpu": "x64" }, "sha512-geM1MkHTV1Kh2Cs/Xzot9BOF3WBacihw6bkEmxkz4nSga8B9/hWy5BDiOG3gHDGIBa8WxT0nzsJs2f/hPqQIQw=="], + "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@1.9.4", "", { "os": "linux", "cpu": "x64" }, "sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg=="], - "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.0.6", "", { "os": "linux", "cpu": "x64" }, "sha512-mKHE/e954hR/hSnAcJSjkf4xGqZc/53Kh39HVW1EgO5iFi0JutTN07TSjEMg616julRtfSNJi0KNyxvc30Y4rQ=="], + "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@1.9.4", "", { "os": "linux", "cpu": "x64" }, "sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg=="], - "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.0.6", "", { "os": "win32", "cpu": "arm64" }, "sha512-290V4oSFoKaprKE1zkYVsDfAdn0An5DowZ+GIABgjoq1ndhvNxkJcpxPsiYtT7slbVe3xmlT0ncdfOsN7KruzA=="], + "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@1.9.4", "", { "os": "win32", "cpu": "arm64" }, "sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg=="], - "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.0.6", "", { "os": "win32", "cpu": "x64" }, "sha512-bfM1Bce0d69Ao7pjTjUS+AWSZ02+5UHdiAP85Th8e9yV5xzw6JrHXbL5YWlcEKQ84FIZMdDc7ncuti1wd2sdbw=="], + "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@1.9.4", "", { "os": "win32", "cpu": "x64" }, "sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA=="], "@emotion/is-prop-valid": ["@emotion/is-prop-valid@1.2.2", "", { "dependencies": { "@emotion/memoize": "^0.8.1" } }, "sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw=="], @@ -56,15 +56,15 @@ "@tscircuit/checks": ["@tscircuit/checks@0.0.52", "", { "peerDependencies": { "@tscircuit/math-utils": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "typescript": "^5.5.3" } }, "sha512-vPHwaHdjdeJlD9bcBl2krb5StRCLhh1ueKOgLOdBjAtM75BGNffHnxiwvOJH3jDzeJrh2XIwMJEJTmuK84AQZA=="], - "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.50", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-+ygl/enzpe9RvIstg+EXl6aeGIDJKaFyQDCBbvWh8/PI68BtoElqArUq/FUFVcXhY/wyVNExd+HyYnsbHXw+gw=="], + "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.49", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-yHZSpFmndtbLKzbJpKunle9yhOdzg+qChuapWIXHmCl7d+Q1gfvjdK5hjW2c5tTsioprXXHW0lFsEVDRlnESXw=="], "@tscircuit/cli": ["@tscircuit/cli@0.1.154", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-ymEeAj4KUlYJ1ylLc1D4ehpRz3KsbPOLYNjUv8YCEO8QBaUwJxZi5h8u4IdLhUasGHSmJkhlp5ezW8/JxcyLVQ=="], - "@tscircuit/core": ["@tscircuit/core@0.0.534", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-corpus": "*", "@tscircuit/schematic-match-adapt": "*", "bpc-graph": "*", "circuit-json": "*", "circuit-json-to-bpc": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-ZOcyXXWQ5wK7P1iODKWI08F+SNplaWKqG2DV/2f6aYOW7CFNkQF9dMR4xpML/PP9MLEQvqEmNhQwYIQjDX3otg=="], + "@tscircuit/core": ["@tscircuit/core@0.0.518", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "^5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-match-adapt": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-lPUKHQbt6OY9r3artUXp3IllSngHN9LD4cuWMW4L4ZWKsKlJZ/l/TA8L4jetfiDSaLY1qWD5KuEqvutyMGZvzg=="], - "@tscircuit/eval": ["@tscircuit/eval@0.0.242", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-BRVNnv+8LY2ebRWRpSJtRy01pu0c/tgC9aT57yJr0F2Z9JwTCDHtWJ1ZfKzNGX44UUtlGEXoViRqhNUcJDXRag=="], + "@tscircuit/eval": ["@tscircuit/eval@0.0.239", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-Kg4gVAuImpx/inLnbw/Uze6ZYD2tGcMoZxYi2fiIcRK83OsPw1oCbt9acvkYD6T63p+bODZ3pxYKK6fb+S8zcg=="], - "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.186", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-LNBujeGtUANzvVpSp7AQOG/KWQG6vWe24NEeCn7zokzWCehQlT+1jKdhSHAQHRhFXXRjTsn8uxApxKzsSraj1Q=="], + "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.182", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-bYw7lv+BKwisRqFwvtupmelTwDK9e6gm5DFPugHD4J43wHG7gC1gNiPntazipy1oitVXjtlewoNNHzW5q3rNdw=="], "@tscircuit/infgrid-ijump-astar": ["@tscircuit/infgrid-ijump-astar@0.0.33", "", {}, "sha512-tmX4Esp+HqyIGCUD43steVUH8pKRuyBNs21r4NlApGGLu+K1XSrK9FinhVJyMiEsuwJdajLnMTzmVt8vSYSafA=="], @@ -76,12 +76,10 @@ "@tscircuit/mm": ["@tscircuit/mm@0.0.8", "", { "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-nl7nxE7AhARbKuobflI0LUzoir7+wJyvwfPw6bzA/O0Q3YTcH3vBkU/Of+V/fp6ht+AofiCXj7YAH9E446138Q=="], - "@tscircuit/props": ["@tscircuit/props@0.0.247", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-LFVafyb3sNBLlytGMOSvMMXAzZqjkmy2Oz3kO4MdCeohf6pPAHwveKIewAsA16TTXzVsAr8yynzuFkrdbst5JQ=="], + "@tscircuit/props": ["@tscircuit/props@0.0.245", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-yg7eI/Tsh0NGoWuTPSE+lzlIOXXemspNs1W1csdjTr/mMT6vXGjhxr9z2nBS3eCkkqOB4LWVDLtU85iDr0ha2g=="], "@tscircuit/schematic-autolayout": ["@tscircuit/schematic-autolayout@0.0.6", "", { "dependencies": { "@tscircuit/soup-util": "^0.0.38", "transformation-matrix": "^2.16.1" } }, "sha512-34cQxtlSylBKyHkzaMBCynaWJgN9c/mWm7cz63StTYIafKmfFs383K8Xoc4QX8HXCvVrHYl1aK15onZua9MxeA=="], - "@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.30", "", { "dependencies": { "bpc-graph": "^0.0.17" }, "peerDependencies": { "typescript": "^5" } }, "sha512-aXgROULjY+WJgKJWILKvzLz41v+puz33M52z46jXtLgHKpTAZnk1r2C/GkOyVehgkAg/NkxIX1HXpJc9RMgM2g=="], - "@tscircuit/schematic-match-adapt": ["@tscircuit/schematic-match-adapt@0.0.16", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-85e6Pq58zrhZqivyW4bPVZfGfg8xLBCj3yjHl5LZslwfsDRgtWVob4bjJMhCfNL/mLsPUQKnpiDNnFKl9ugUZw=="], "@tscircuit/soup-util": ["@tscircuit/soup-util@0.0.38", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-GdcuFxk+qnJZv+eI7ZoJ1MJEseFgRyaztMtQ/OXA2SUnxyPEH0UTy9vkhKTm+8GTePryEgdXcc65TgUyrr44ww=="], @@ -106,8 +104,6 @@ "boolbase": ["boolbase@1.0.0", "", {}, "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="], - "bpc-graph": ["bpc-graph@0.0.30", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.8" }, "peerDependencies": { "typescript": "^5" } }, "sha512-rI0FdeCmM7F96J9vhvHsaqkWn8PysJixB+fJjEpxZhhcEVEUYObhA5MO3JK0Txx9no0fx/y3Jka9bg4i+g3zGQ=="], - "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="], "bun-types": ["bun-types@1.2.17", "", { "dependencies": { "@types/node": "*" } }, "sha512-ElC7ItwT3SCQwYZDYoAH+q6KT4Fxjl8DtZ6qDulUFBmXA8YB4xo+l54J9ZJN+k2pphfn9vk7kfubeSd5QfTVJQ=="], @@ -122,8 +118,6 @@ "circuit-json": ["circuit-json@0.0.212", "", { "dependencies": { "nanoid": "^5.0.7", "zod": "*" } }, "sha512-gA07y76H55nFjlckmDVl6ZWCqSu6alDMYIm0vWp7cK/NPXlObB90QHdGq/YLxL0CtDihqLD9ZTbTr2viIOMUfg=="], - "circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.8", "", { "peerDependencies": { "bpc-graph": "*", "circuit-json": "*", "typescript": "^5" } }, "sha512-+xDdl61KIx9AzfPSGQphX07gFKhLMJO/Esv8372yq6pCiv+zTyGBZLao1ZtQqMLuulkBJGWXc4ulAq6RBv1kUA=="], - "circuit-json-to-connectivity-map": ["circuit-json-to-connectivity-map@0.0.22", "", { "dependencies": { "@tscircuit/math-utils": "^0.0.9" }, "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-HN8DiISjZZLTglGEkYNRpKeQ/DMG4dDo5j4Hck0UGSJbpux9aFwtJOGszMf06Inh/gu5oKBrpZJIeWxaNacKUg=="], "color": ["color@4.2.3", "", { "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" } }, "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A=="], @@ -242,7 +236,7 @@ "scheduler": ["scheduler@0.25.0", "", {}, "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA=="], - "schematic-symbols": ["schematic-symbols@0.0.165", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-yrtKG+Ll3PFa4L+9LP2C3FVWQqfIwqyGe7ALtE3wY4LMV+oT2tAZ/gj8pHMUaSk+VZG3fws3OoOewsmvJZzx6Q=="], + "schematic-symbols": ["schematic-symbols@0.0.163", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-/MOlqM8BdMSzGRobxFSiVXCYAJc26FK489lgDxfSR1j6tvs7FE9SIB1EVhR2ghMO+P5Lu1scWDzYyen9zK20lQ=="], "shallowequal": ["shallowequal@1.1.0", "", {}, "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ=="], @@ -262,7 +256,7 @@ "transformation-matrix": ["transformation-matrix@2.16.1", "", {}, "sha512-tdtC3wxVEuzU7X/ydL131Q3JU5cPMEn37oqVLITjRDSDsnSHVFzW2JiCLfZLIQEgWzZHdSy3J6bZzvKEN24jGA=="], - "tscircuit": ["tscircuit@0.0.514", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.50", "@tscircuit/cli": "^0.1.153", "@tscircuit/core": "^0.0.534", "@tscircuit/eval": "^0.0.242", "@tscircuit/footprinter": "^0.0.186", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.246", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.165" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-/7Eb9fJ8drgkI+62q3BRPyiwo2044SwvAjY8CiEBbses3tQbgK2JGtiZU0m5nabIfVKn7fKLoHiruDunTJD4qw=="], + "tscircuit": ["tscircuit@0.0.508", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.49", "@tscircuit/cli": "^0.1.147", "@tscircuit/core": "^0.0.518", "@tscircuit/eval": "^0.0.239", "@tscircuit/footprinter": "^0.0.182", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.243", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.163" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-TlAocAxsHWu089SJkWtL7/z4LPZ49RhptneCP+RXfQKrI1+4uqoPueEVcx8bBh7cp2oP/L7Qxm/oRpsTN1tIyg=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], @@ -278,10 +272,6 @@ "zustand": ["zustand@5.0.5", "", { "peerDependencies": { "@types/react": ">=18.0.0", "immer": ">=9.0.6", "react": ">=18.0.0", "use-sync-external-store": ">=1.2.0" }, "optionalPeers": ["@types/react", "immer", "react", "use-sync-external-store"] }, "sha512-mILtRfKW9xM47hqxGIxCv12gXusoY/xTSHBYApXozR0HmQv299whhBeeAcRy+KrPPybzosvJBCOmVjq6x12fCg=="], - "@tscircuit/schematic-corpus/bpc-graph": ["bpc-graph@0.0.17", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.6" }, "peerDependencies": { "typescript": "^5" } }, "sha512-r8jz1ZRRnY99UMooyeYDT7LUzvYs8b0zQihpQtHtqE/AZ9bkc+JVgG43Dty0IqdI5jLZpgmgLR1OeDA0fxGRIQ=="], - - "bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], - "circuit-json-to-connectivity-map/@tscircuit/math-utils": ["@tscircuit/math-utils@0.0.9", "", { "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-sPzfXndijet8z29X6f5vnSZddiso2tRg7m6rB+268bVj60mxnxUMD14rKuMlLn6n84fMOpD/X7pRTZUfi6M+Tg=="], "jscad-fiber/react-reconciler": ["react-reconciler@0.29.2", "", { "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" }, "peerDependencies": { "react": "^18.3.1" } }, "sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg=="], @@ -296,11 +286,9 @@ "styled-components/tslib": ["tslib@2.6.2", "", {}, "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="], - "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.246", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-HHY51vYBVPMW8K3yx3DiyFIpFM5mJRU7g8/e6ZXz0Uhu1HIhtV2Z1HQrA0uwGXQKVXwE1Zez4NBqr+vGI8fLcg=="], - - "@tscircuit/schematic-corpus/bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], + "tscircuit/@tscircuit/cli": ["@tscircuit/cli@0.1.149", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-sgCsl557VTjaqUYXLmPwRD6PN2wOv18sd8G44UwDlm0nKQFKY4cMhc4tbM1PamTN2PI655YgOqL1+C0GKF8AHQ=="], - "@tscircuit/schematic-corpus/bpc-graph/circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.6", "", { "peerDependencies": { "circuit-json": "*", "typescript": "^5" } }, "sha512-ydxhzEVimgqsr9R6Uh7ze77U2hrz0Gg3zBDJscvkylFXH6N8t+Jqo2cEQ5OBwsNppMq2jfMTfJ+gkBi4c0TUoQ=="], + "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.243", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-UB3rcCnwBO/aqQpr/U0SZgGug4f3pDqBev7xowKnlZx2kzo0XXSEWrFc2uZotysGfRSKL8YFwQmSiUJOpgjgew=="], "jscad-fiber/react-reconciler/scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], } From 530b805da34fe27d58e906d8bf86899e11e8a320 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 16:26:03 +0530 Subject: [PATCH 16/26] sd --- ... Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 1 + ...r - OPT4048DTSR.circuit-schematic.snap.svg | 146 ++++++++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg create mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg new file mode 100644 index 00000000..e0e40468 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg @@ -0,0 +1 @@ +U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg new file mode 100644 index 00000000..9feaf88b --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -0,0 +1,146 @@ +OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDAADDRADDRADDRINTSCLSDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file From 22831fdd7eae245be3e20acdc87bfb1e00782105 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 16:51:42 +0530 Subject: [PATCH 17/26] update tscircuit to test for build --- bun.lock | 30 +++++++++++++++++++++--------- package.json | 2 +- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/bun.lock b/bun.lock index f781e9fc..53fa2bf0 100644 --- a/bun.lock +++ b/bun.lock @@ -4,7 +4,7 @@ "": { "name": "sparkfun-boards", "dependencies": { - "tscircuit": "^0.0.508", + "tscircuit": "^0.0.514", }, "devDependencies": { "@biomejs/biome": "^1.9.4", @@ -56,15 +56,15 @@ "@tscircuit/checks": ["@tscircuit/checks@0.0.52", "", { "peerDependencies": { "@tscircuit/math-utils": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "typescript": "^5.5.3" } }, "sha512-vPHwaHdjdeJlD9bcBl2krb5StRCLhh1ueKOgLOdBjAtM75BGNffHnxiwvOJH3jDzeJrh2XIwMJEJTmuK84AQZA=="], - "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.49", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-yHZSpFmndtbLKzbJpKunle9yhOdzg+qChuapWIXHmCl7d+Q1gfvjdK5hjW2c5tTsioprXXHW0lFsEVDRlnESXw=="], + "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.50", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-+ygl/enzpe9RvIstg+EXl6aeGIDJKaFyQDCBbvWh8/PI68BtoElqArUq/FUFVcXhY/wyVNExd+HyYnsbHXw+gw=="], "@tscircuit/cli": ["@tscircuit/cli@0.1.154", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-ymEeAj4KUlYJ1ylLc1D4ehpRz3KsbPOLYNjUv8YCEO8QBaUwJxZi5h8u4IdLhUasGHSmJkhlp5ezW8/JxcyLVQ=="], - "@tscircuit/core": ["@tscircuit/core@0.0.518", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "^5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-match-adapt": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-lPUKHQbt6OY9r3artUXp3IllSngHN9LD4cuWMW4L4ZWKsKlJZ/l/TA8L4jetfiDSaLY1qWD5KuEqvutyMGZvzg=="], + "@tscircuit/core": ["@tscircuit/core@0.0.534", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-corpus": "*", "@tscircuit/schematic-match-adapt": "*", "bpc-graph": "*", "circuit-json": "*", "circuit-json-to-bpc": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-ZOcyXXWQ5wK7P1iODKWI08F+SNplaWKqG2DV/2f6aYOW7CFNkQF9dMR4xpML/PP9MLEQvqEmNhQwYIQjDX3otg=="], - "@tscircuit/eval": ["@tscircuit/eval@0.0.239", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-Kg4gVAuImpx/inLnbw/Uze6ZYD2tGcMoZxYi2fiIcRK83OsPw1oCbt9acvkYD6T63p+bODZ3pxYKK6fb+S8zcg=="], + "@tscircuit/eval": ["@tscircuit/eval@0.0.242", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-BRVNnv+8LY2ebRWRpSJtRy01pu0c/tgC9aT57yJr0F2Z9JwTCDHtWJ1ZfKzNGX44UUtlGEXoViRqhNUcJDXRag=="], - "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.182", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-bYw7lv+BKwisRqFwvtupmelTwDK9e6gm5DFPugHD4J43wHG7gC1gNiPntazipy1oitVXjtlewoNNHzW5q3rNdw=="], + "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.186", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-LNBujeGtUANzvVpSp7AQOG/KWQG6vWe24NEeCn7zokzWCehQlT+1jKdhSHAQHRhFXXRjTsn8uxApxKzsSraj1Q=="], "@tscircuit/infgrid-ijump-astar": ["@tscircuit/infgrid-ijump-astar@0.0.33", "", {}, "sha512-tmX4Esp+HqyIGCUD43steVUH8pKRuyBNs21r4NlApGGLu+K1XSrK9FinhVJyMiEsuwJdajLnMTzmVt8vSYSafA=="], @@ -80,6 +80,8 @@ "@tscircuit/schematic-autolayout": ["@tscircuit/schematic-autolayout@0.0.6", "", { "dependencies": { "@tscircuit/soup-util": "^0.0.38", "transformation-matrix": "^2.16.1" } }, "sha512-34cQxtlSylBKyHkzaMBCynaWJgN9c/mWm7cz63StTYIafKmfFs383K8Xoc4QX8HXCvVrHYl1aK15onZua9MxeA=="], + "@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.30", "", { "dependencies": { "bpc-graph": "^0.0.17" }, "peerDependencies": { "typescript": "^5" } }, "sha512-aXgROULjY+WJgKJWILKvzLz41v+puz33M52z46jXtLgHKpTAZnk1r2C/GkOyVehgkAg/NkxIX1HXpJc9RMgM2g=="], + "@tscircuit/schematic-match-adapt": ["@tscircuit/schematic-match-adapt@0.0.16", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-85e6Pq58zrhZqivyW4bPVZfGfg8xLBCj3yjHl5LZslwfsDRgtWVob4bjJMhCfNL/mLsPUQKnpiDNnFKl9ugUZw=="], "@tscircuit/soup-util": ["@tscircuit/soup-util@0.0.38", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-GdcuFxk+qnJZv+eI7ZoJ1MJEseFgRyaztMtQ/OXA2SUnxyPEH0UTy9vkhKTm+8GTePryEgdXcc65TgUyrr44ww=="], @@ -104,6 +106,8 @@ "boolbase": ["boolbase@1.0.0", "", {}, "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="], + "bpc-graph": ["bpc-graph@0.0.30", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.8" }, "peerDependencies": { "typescript": "^5" } }, "sha512-rI0FdeCmM7F96J9vhvHsaqkWn8PysJixB+fJjEpxZhhcEVEUYObhA5MO3JK0Txx9no0fx/y3Jka9bg4i+g3zGQ=="], + "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="], "bun-types": ["bun-types@1.2.17", "", { "dependencies": { "@types/node": "*" } }, "sha512-ElC7ItwT3SCQwYZDYoAH+q6KT4Fxjl8DtZ6qDulUFBmXA8YB4xo+l54J9ZJN+k2pphfn9vk7kfubeSd5QfTVJQ=="], @@ -118,6 +122,8 @@ "circuit-json": ["circuit-json@0.0.212", "", { "dependencies": { "nanoid": "^5.0.7", "zod": "*" } }, "sha512-gA07y76H55nFjlckmDVl6ZWCqSu6alDMYIm0vWp7cK/NPXlObB90QHdGq/YLxL0CtDihqLD9ZTbTr2viIOMUfg=="], + "circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.8", "", { "peerDependencies": { "bpc-graph": "*", "circuit-json": "*", "typescript": "^5" } }, "sha512-+xDdl61KIx9AzfPSGQphX07gFKhLMJO/Esv8372yq6pCiv+zTyGBZLao1ZtQqMLuulkBJGWXc4ulAq6RBv1kUA=="], + "circuit-json-to-connectivity-map": ["circuit-json-to-connectivity-map@0.0.22", "", { "dependencies": { "@tscircuit/math-utils": "^0.0.9" }, "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-HN8DiISjZZLTglGEkYNRpKeQ/DMG4dDo5j4Hck0UGSJbpux9aFwtJOGszMf06Inh/gu5oKBrpZJIeWxaNacKUg=="], "color": ["color@4.2.3", "", { "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" } }, "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A=="], @@ -236,7 +242,7 @@ "scheduler": ["scheduler@0.25.0", "", {}, "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA=="], - "schematic-symbols": ["schematic-symbols@0.0.163", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-/MOlqM8BdMSzGRobxFSiVXCYAJc26FK489lgDxfSR1j6tvs7FE9SIB1EVhR2ghMO+P5Lu1scWDzYyen9zK20lQ=="], + "schematic-symbols": ["schematic-symbols@0.0.165", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-yrtKG+Ll3PFa4L+9LP2C3FVWQqfIwqyGe7ALtE3wY4LMV+oT2tAZ/gj8pHMUaSk+VZG3fws3OoOewsmvJZzx6Q=="], "shallowequal": ["shallowequal@1.1.0", "", {}, "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ=="], @@ -256,7 +262,7 @@ "transformation-matrix": ["transformation-matrix@2.16.1", "", {}, "sha512-tdtC3wxVEuzU7X/ydL131Q3JU5cPMEn37oqVLITjRDSDsnSHVFzW2JiCLfZLIQEgWzZHdSy3J6bZzvKEN24jGA=="], - "tscircuit": ["tscircuit@0.0.508", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.49", "@tscircuit/cli": "^0.1.147", "@tscircuit/core": "^0.0.518", "@tscircuit/eval": "^0.0.239", "@tscircuit/footprinter": "^0.0.182", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.243", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.163" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-TlAocAxsHWu089SJkWtL7/z4LPZ49RhptneCP+RXfQKrI1+4uqoPueEVcx8bBh7cp2oP/L7Qxm/oRpsTN1tIyg=="], + "tscircuit": ["tscircuit@0.0.514", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.50", "@tscircuit/cli": "^0.1.153", "@tscircuit/core": "^0.0.534", "@tscircuit/eval": "^0.0.242", "@tscircuit/footprinter": "^0.0.186", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.246", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.165" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-/7Eb9fJ8drgkI+62q3BRPyiwo2044SwvAjY8CiEBbses3tQbgK2JGtiZU0m5nabIfVKn7fKLoHiruDunTJD4qw=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], @@ -272,6 +278,10 @@ "zustand": ["zustand@5.0.5", "", { "peerDependencies": { "@types/react": ">=18.0.0", "immer": ">=9.0.6", "react": ">=18.0.0", "use-sync-external-store": ">=1.2.0" }, "optionalPeers": ["@types/react", "immer", "react", "use-sync-external-store"] }, "sha512-mILtRfKW9xM47hqxGIxCv12gXusoY/xTSHBYApXozR0HmQv299whhBeeAcRy+KrPPybzosvJBCOmVjq6x12fCg=="], + "@tscircuit/schematic-corpus/bpc-graph": ["bpc-graph@0.0.17", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.6" }, "peerDependencies": { "typescript": "^5" } }, "sha512-r8jz1ZRRnY99UMooyeYDT7LUzvYs8b0zQihpQtHtqE/AZ9bkc+JVgG43Dty0IqdI5jLZpgmgLR1OeDA0fxGRIQ=="], + + "bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], + "circuit-json-to-connectivity-map/@tscircuit/math-utils": ["@tscircuit/math-utils@0.0.9", "", { "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-sPzfXndijet8z29X6f5vnSZddiso2tRg7m6rB+268bVj60mxnxUMD14rKuMlLn6n84fMOpD/X7pRTZUfi6M+Tg=="], "jscad-fiber/react-reconciler": ["react-reconciler@0.29.2", "", { "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" }, "peerDependencies": { "react": "^18.3.1" } }, "sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg=="], @@ -286,9 +296,11 @@ "styled-components/tslib": ["tslib@2.6.2", "", {}, "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="], - "tscircuit/@tscircuit/cli": ["@tscircuit/cli@0.1.149", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-sgCsl557VTjaqUYXLmPwRD6PN2wOv18sd8G44UwDlm0nKQFKY4cMhc4tbM1PamTN2PI655YgOqL1+C0GKF8AHQ=="], + "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.246", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-HHY51vYBVPMW8K3yx3DiyFIpFM5mJRU7g8/e6ZXz0Uhu1HIhtV2Z1HQrA0uwGXQKVXwE1Zez4NBqr+vGI8fLcg=="], + + "@tscircuit/schematic-corpus/bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], - "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.243", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-UB3rcCnwBO/aqQpr/U0SZgGug4f3pDqBev7xowKnlZx2kzo0XXSEWrFc2uZotysGfRSKL8YFwQmSiUJOpgjgew=="], + "@tscircuit/schematic-corpus/bpc-graph/circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.6", "", { "peerDependencies": { "circuit-json": "*", "typescript": "^5" } }, "sha512-ydxhzEVimgqsr9R6Uh7ze77U2hrz0Gg3zBDJscvkylFXH6N8t+Jqo2cEQ5OBwsNppMq2jfMTfJ+gkBi4c0TUoQ=="], "jscad-fiber/react-reconciler/scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], } diff --git a/package.json b/package.json index 9587a9ab..a615febf 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,6 @@ "typescript": "^5" }, "dependencies": { - "tscircuit": "^0.0.508" + "tscircuit": "^0.0.514" } } From c7376633af5a1e8b8873d6c929cdeba5106ce835 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 16:54:55 +0530 Subject: [PATCH 18/26] test --- bun.lock | 24 +++++------------------- package.json | 2 +- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/bun.lock b/bun.lock index 53fa2bf0..563c3b2f 100644 --- a/bun.lock +++ b/bun.lock @@ -4,7 +4,7 @@ "": { "name": "sparkfun-boards", "dependencies": { - "tscircuit": "^0.0.514", + "tscircuit": "0.0.513", }, "devDependencies": { "@biomejs/biome": "^1.9.4", @@ -56,13 +56,13 @@ "@tscircuit/checks": ["@tscircuit/checks@0.0.52", "", { "peerDependencies": { "@tscircuit/math-utils": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "typescript": "^5.5.3" } }, "sha512-vPHwaHdjdeJlD9bcBl2krb5StRCLhh1ueKOgLOdBjAtM75BGNffHnxiwvOJH3jDzeJrh2XIwMJEJTmuK84AQZA=="], - "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.50", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-+ygl/enzpe9RvIstg+EXl6aeGIDJKaFyQDCBbvWh8/PI68BtoElqArUq/FUFVcXhY/wyVNExd+HyYnsbHXw+gw=="], + "@tscircuit/circuit-json-util": ["@tscircuit/circuit-json-util@0.0.49", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-yHZSpFmndtbLKzbJpKunle9yhOdzg+qChuapWIXHmCl7d+Q1gfvjdK5hjW2c5tTsioprXXHW0lFsEVDRlnESXw=="], "@tscircuit/cli": ["@tscircuit/cli@0.1.154", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-ymEeAj4KUlYJ1ylLc1D4ehpRz3KsbPOLYNjUv8YCEO8QBaUwJxZi5h8u4IdLhUasGHSmJkhlp5ezW8/JxcyLVQ=="], - "@tscircuit/core": ["@tscircuit/core@0.0.534", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-corpus": "*", "@tscircuit/schematic-match-adapt": "*", "bpc-graph": "*", "circuit-json": "*", "circuit-json-to-bpc": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-ZOcyXXWQ5wK7P1iODKWI08F+SNplaWKqG2DV/2f6aYOW7CFNkQF9dMR4xpML/PP9MLEQvqEmNhQwYIQjDX3otg=="], + "@tscircuit/core": ["@tscircuit/core@0.0.533", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-match-adapt": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-rBwTlAuMYBdx/12YKfbfCyfclD4bSWb+T/0EcG85pwET6D+4KSIeWDXi4bec4eH0/Kz7qSx5IFx3M347tX6nmg=="], - "@tscircuit/eval": ["@tscircuit/eval@0.0.242", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-BRVNnv+8LY2ebRWRpSJtRy01pu0c/tgC9aT57yJr0F2Z9JwTCDHtWJ1ZfKzNGX44UUtlGEXoViRqhNUcJDXRag=="], + "@tscircuit/eval": ["@tscircuit/eval@0.0.241", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-sAsmHRaWcZniuuim/I+DwIuBL1rQFxIgn14NPMEFfsyQoIzR8VhmU9q/WBEtXss7z7WeN7ivJkFVtAeq7BRhbQ=="], "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.186", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-LNBujeGtUANzvVpSp7AQOG/KWQG6vWe24NEeCn7zokzWCehQlT+1jKdhSHAQHRhFXXRjTsn8uxApxKzsSraj1Q=="], @@ -80,8 +80,6 @@ "@tscircuit/schematic-autolayout": ["@tscircuit/schematic-autolayout@0.0.6", "", { "dependencies": { "@tscircuit/soup-util": "^0.0.38", "transformation-matrix": "^2.16.1" } }, "sha512-34cQxtlSylBKyHkzaMBCynaWJgN9c/mWm7cz63StTYIafKmfFs383K8Xoc4QX8HXCvVrHYl1aK15onZua9MxeA=="], - "@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.30", "", { "dependencies": { "bpc-graph": "^0.0.17" }, "peerDependencies": { "typescript": "^5" } }, "sha512-aXgROULjY+WJgKJWILKvzLz41v+puz33M52z46jXtLgHKpTAZnk1r2C/GkOyVehgkAg/NkxIX1HXpJc9RMgM2g=="], - "@tscircuit/schematic-match-adapt": ["@tscircuit/schematic-match-adapt@0.0.16", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-85e6Pq58zrhZqivyW4bPVZfGfg8xLBCj3yjHl5LZslwfsDRgtWVob4bjJMhCfNL/mLsPUQKnpiDNnFKl9ugUZw=="], "@tscircuit/soup-util": ["@tscircuit/soup-util@0.0.38", "", { "dependencies": { "parsel-js": "^1.1.2" }, "peerDependencies": { "circuit-json": "*", "transformation-matrix": "*", "zod": "*" } }, "sha512-GdcuFxk+qnJZv+eI7ZoJ1MJEseFgRyaztMtQ/OXA2SUnxyPEH0UTy9vkhKTm+8GTePryEgdXcc65TgUyrr44ww=="], @@ -106,8 +104,6 @@ "boolbase": ["boolbase@1.0.0", "", {}, "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="], - "bpc-graph": ["bpc-graph@0.0.30", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.8" }, "peerDependencies": { "typescript": "^5" } }, "sha512-rI0FdeCmM7F96J9vhvHsaqkWn8PysJixB+fJjEpxZhhcEVEUYObhA5MO3JK0Txx9no0fx/y3Jka9bg4i+g3zGQ=="], - "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="], "bun-types": ["bun-types@1.2.17", "", { "dependencies": { "@types/node": "*" } }, "sha512-ElC7ItwT3SCQwYZDYoAH+q6KT4Fxjl8DtZ6qDulUFBmXA8YB4xo+l54J9ZJN+k2pphfn9vk7kfubeSd5QfTVJQ=="], @@ -122,8 +118,6 @@ "circuit-json": ["circuit-json@0.0.212", "", { "dependencies": { "nanoid": "^5.0.7", "zod": "*" } }, "sha512-gA07y76H55nFjlckmDVl6ZWCqSu6alDMYIm0vWp7cK/NPXlObB90QHdGq/YLxL0CtDihqLD9ZTbTr2viIOMUfg=="], - "circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.8", "", { "peerDependencies": { "bpc-graph": "*", "circuit-json": "*", "typescript": "^5" } }, "sha512-+xDdl61KIx9AzfPSGQphX07gFKhLMJO/Esv8372yq6pCiv+zTyGBZLao1ZtQqMLuulkBJGWXc4ulAq6RBv1kUA=="], - "circuit-json-to-connectivity-map": ["circuit-json-to-connectivity-map@0.0.22", "", { "dependencies": { "@tscircuit/math-utils": "^0.0.9" }, "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-HN8DiISjZZLTglGEkYNRpKeQ/DMG4dDo5j4Hck0UGSJbpux9aFwtJOGszMf06Inh/gu5oKBrpZJIeWxaNacKUg=="], "color": ["color@4.2.3", "", { "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" } }, "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A=="], @@ -262,7 +256,7 @@ "transformation-matrix": ["transformation-matrix@2.16.1", "", {}, "sha512-tdtC3wxVEuzU7X/ydL131Q3JU5cPMEn37oqVLITjRDSDsnSHVFzW2JiCLfZLIQEgWzZHdSy3J6bZzvKEN24jGA=="], - "tscircuit": ["tscircuit@0.0.514", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.50", "@tscircuit/cli": "^0.1.153", "@tscircuit/core": "^0.0.534", "@tscircuit/eval": "^0.0.242", "@tscircuit/footprinter": "^0.0.186", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.246", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.165" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-/7Eb9fJ8drgkI+62q3BRPyiwo2044SwvAjY8CiEBbses3tQbgK2JGtiZU0m5nabIfVKn7fKLoHiruDunTJD4qw=="], + "tscircuit": ["tscircuit@0.0.513", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.49", "@tscircuit/cli": "^0.1.153", "@tscircuit/core": "^0.0.533", "@tscircuit/eval": "^0.0.241", "@tscircuit/footprinter": "^0.0.186", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.246", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.165" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-cVNboNMTvlnfIND0jFOLfO5SDLVipXA//dGIjfmn+Dj632CvDjYi/hZJltlEhNFest7Gfk+w3eaf2gOPIGMmHQ=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], @@ -278,10 +272,6 @@ "zustand": ["zustand@5.0.5", "", { "peerDependencies": { "@types/react": ">=18.0.0", "immer": ">=9.0.6", "react": ">=18.0.0", "use-sync-external-store": ">=1.2.0" }, "optionalPeers": ["@types/react", "immer", "react", "use-sync-external-store"] }, "sha512-mILtRfKW9xM47hqxGIxCv12gXusoY/xTSHBYApXozR0HmQv299whhBeeAcRy+KrPPybzosvJBCOmVjq6x12fCg=="], - "@tscircuit/schematic-corpus/bpc-graph": ["bpc-graph@0.0.17", "", { "dependencies": { "@tscircuit/schematic-corpus": "^0.0.29", "circuit-json-to-bpc": "^0.0.6" }, "peerDependencies": { "typescript": "^5" } }, "sha512-r8jz1ZRRnY99UMooyeYDT7LUzvYs8b0zQihpQtHtqE/AZ9bkc+JVgG43Dty0IqdI5jLZpgmgLR1OeDA0fxGRIQ=="], - - "bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], - "circuit-json-to-connectivity-map/@tscircuit/math-utils": ["@tscircuit/math-utils@0.0.9", "", { "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-sPzfXndijet8z29X6f5vnSZddiso2tRg7m6rB+268bVj60mxnxUMD14rKuMlLn6n84fMOpD/X7pRTZUfi6M+Tg=="], "jscad-fiber/react-reconciler": ["react-reconciler@0.29.2", "", { "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" }, "peerDependencies": { "react": "^18.3.1" } }, "sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg=="], @@ -298,10 +288,6 @@ "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.246", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-HHY51vYBVPMW8K3yx3DiyFIpFM5mJRU7g8/e6ZXz0Uhu1HIhtV2Z1HQrA0uwGXQKVXwE1Zez4NBqr+vGI8fLcg=="], - "@tscircuit/schematic-corpus/bpc-graph/@tscircuit/schematic-corpus": ["@tscircuit/schematic-corpus@0.0.29", "", { "peerDependencies": { "typescript": "^5" } }, "sha512-S8K7PTtRGWolJLE1YJRuvApupDS2py+IFSj2nBmXpwckb/mw+Uv1/FldymrV8PYYe8ZK1E5rKnSV/KtZHNEpuA=="], - - "@tscircuit/schematic-corpus/bpc-graph/circuit-json-to-bpc": ["circuit-json-to-bpc@0.0.6", "", { "peerDependencies": { "circuit-json": "*", "typescript": "^5" } }, "sha512-ydxhzEVimgqsr9R6Uh7ze77U2hrz0Gg3zBDJscvkylFXH6N8t+Jqo2cEQ5OBwsNppMq2jfMTfJ+gkBi4c0TUoQ=="], - "jscad-fiber/react-reconciler/scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], } } diff --git a/package.json b/package.json index a615febf..1b798cc3 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,6 @@ "typescript": "^5" }, "dependencies": { - "tscircuit": "^0.0.514" + "tscircuit": "0.0.513" } } From dba105db554980bea74dad9e2af4bd9c537375fa Mon Sep 17 00:00:00 2001 From: Arnav K Date: Wed, 2 Jul 2025 16:58:01 +0530 Subject: [PATCH 19/26] fix --- ... Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 2 +- ...r - OPT4048DTSR.circuit-schematic.snap.svg | 256 +++++++++--------- 2 files changed, 129 insertions(+), 129 deletions(-) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg index e0e40468..1eee77ba 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg @@ -1 +1 @@ -U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file +U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg index 9feaf88b..712a5eac 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -1,4 +1,4 @@ -OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDAADDRADDRADDRINTSCLSDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file From 51fb0f8eb28367550fa9f7e90457821b4a0da258 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Thu, 3 Jul 2025 13:34:15 +0530 Subject: [PATCH 20/26] Discard changes to package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 1b798cc3..9587a9ab 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,6 @@ "typescript": "^5" }, "dependencies": { - "tscircuit": "0.0.513" + "tscircuit": "^0.0.508" } } From 3d79b3306fb216c4b838656bae0570975185a102 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Thu, 3 Jul 2025 13:34:30 +0530 Subject: [PATCH 21/26] Discard changes to bun.lock --- bun.lock | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/bun.lock b/bun.lock index 563c3b2f..f781e9fc 100644 --- a/bun.lock +++ b/bun.lock @@ -4,7 +4,7 @@ "": { "name": "sparkfun-boards", "dependencies": { - "tscircuit": "0.0.513", + "tscircuit": "^0.0.508", }, "devDependencies": { "@biomejs/biome": "^1.9.4", @@ -60,11 +60,11 @@ "@tscircuit/cli": ["@tscircuit/cli@0.1.154", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-ymEeAj4KUlYJ1ylLc1D4ehpRz3KsbPOLYNjUv8YCEO8QBaUwJxZi5h8u4IdLhUasGHSmJkhlp5ezW8/JxcyLVQ=="], - "@tscircuit/core": ["@tscircuit/core@0.0.533", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-match-adapt": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-rBwTlAuMYBdx/12YKfbfCyfclD4bSWb+T/0EcG85pwET6D+4KSIeWDXi4bec4eH0/Kz7qSx5IFx3M347tX6nmg=="], + "@tscircuit/core": ["@tscircuit/core@0.0.518", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "css-select": "^5.1.0", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "transformation-matrix": "^2.16.1", "zod": "^3.25.67" }, "peerDependencies": { "@tscircuit/capacity-autorouter": "*", "@tscircuit/checks": "*", "@tscircuit/circuit-json-util": "*", "@tscircuit/footprinter": "*", "@tscircuit/infgrid-ijump-astar": "*", "@tscircuit/math-utils": "*", "@tscircuit/props": "*", "@tscircuit/schematic-autolayout": "*", "@tscircuit/schematic-match-adapt": "*", "circuit-json": "*", "circuit-json-to-connectivity-map": "*", "schematic-symbols": "*", "typescript": "^5.0.0" } }, "sha512-lPUKHQbt6OY9r3artUXp3IllSngHN9LD4cuWMW4L4ZWKsKlJZ/l/TA8L4jetfiDSaLY1qWD5KuEqvutyMGZvzg=="], - "@tscircuit/eval": ["@tscircuit/eval@0.0.241", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-sAsmHRaWcZniuuim/I+DwIuBL1rQFxIgn14NPMEFfsyQoIzR8VhmU9q/WBEtXss7z7WeN7ivJkFVtAeq7BRhbQ=="], + "@tscircuit/eval": ["@tscircuit/eval@0.0.239", "", { "peerDependencies": { "@tscircuit/core": "*", "circuit-json": "*", "jscad-fiber": "*", "typescript": "^5.0.0" } }, "sha512-Kg4gVAuImpx/inLnbw/Uze6ZYD2tGcMoZxYi2fiIcRK83OsPw1oCbt9acvkYD6T63p+bODZ3pxYKK6fb+S8zcg=="], - "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.186", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-LNBujeGtUANzvVpSp7AQOG/KWQG6vWe24NEeCn7zokzWCehQlT+1jKdhSHAQHRhFXXRjTsn8uxApxKzsSraj1Q=="], + "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.182", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-bYw7lv+BKwisRqFwvtupmelTwDK9e6gm5DFPugHD4J43wHG7gC1gNiPntazipy1oitVXjtlewoNNHzW5q3rNdw=="], "@tscircuit/infgrid-ijump-astar": ["@tscircuit/infgrid-ijump-astar@0.0.33", "", {}, "sha512-tmX4Esp+HqyIGCUD43steVUH8pKRuyBNs21r4NlApGGLu+K1XSrK9FinhVJyMiEsuwJdajLnMTzmVt8vSYSafA=="], @@ -236,7 +236,7 @@ "scheduler": ["scheduler@0.25.0", "", {}, "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA=="], - "schematic-symbols": ["schematic-symbols@0.0.165", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-yrtKG+Ll3PFa4L+9LP2C3FVWQqfIwqyGe7ALtE3wY4LMV+oT2tAZ/gj8pHMUaSk+VZG3fws3OoOewsmvJZzx6Q=="], + "schematic-symbols": ["schematic-symbols@0.0.163", "", { "peerDependencies": { "typescript": "^5.5.4" } }, "sha512-/MOlqM8BdMSzGRobxFSiVXCYAJc26FK489lgDxfSR1j6tvs7FE9SIB1EVhR2ghMO+P5Lu1scWDzYyen9zK20lQ=="], "shallowequal": ["shallowequal@1.1.0", "", {}, "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ=="], @@ -256,7 +256,7 @@ "transformation-matrix": ["transformation-matrix@2.16.1", "", {}, "sha512-tdtC3wxVEuzU7X/ydL131Q3JU5cPMEn37oqVLITjRDSDsnSHVFzW2JiCLfZLIQEgWzZHdSy3J6bZzvKEN24jGA=="], - "tscircuit": ["tscircuit@0.0.513", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.49", "@tscircuit/cli": "^0.1.153", "@tscircuit/core": "^0.0.533", "@tscircuit/eval": "^0.0.241", "@tscircuit/footprinter": "^0.0.186", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.246", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.165" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-cVNboNMTvlnfIND0jFOLfO5SDLVipXA//dGIjfmn+Dj632CvDjYi/hZJltlEhNFest7Gfk+w3eaf2gOPIGMmHQ=="], + "tscircuit": ["tscircuit@0.0.508", "", { "dependencies": { "@babel/standalone": "^7.27.2", "@tscircuit/capacity-autorouter": "^0.0.75", "@tscircuit/checks": "^0.0.52", "@tscircuit/circuit-json-util": "^0.0.49", "@tscircuit/cli": "^0.1.147", "@tscircuit/core": "^0.0.518", "@tscircuit/eval": "^0.0.239", "@tscircuit/footprinter": "^0.0.182", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.18", "@tscircuit/props": "^0.0.243", "@tscircuit/schematic-match-adapt": "^0.0.16", "circuit-json": "^0.0.212", "circuit-json-to-connectivity-map": "^0.0.22", "comlink": "^4.4.2", "debug": "^4.3.6", "performance-now": "^2.1.0", "schematic-symbols": "^0.0.163" }, "peerDependencies": { "typescript": "^5.0.0" }, "bin": { "tsci": "cli.mjs", "tscircuit": "cli.mjs" } }, "sha512-TlAocAxsHWu089SJkWtL7/z4LPZ49RhptneCP+RXfQKrI1+4uqoPueEVcx8bBh7cp2oP/L7Qxm/oRpsTN1tIyg=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], @@ -286,7 +286,9 @@ "styled-components/tslib": ["tslib@2.6.2", "", {}, "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="], - "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.246", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-HHY51vYBVPMW8K3yx3DiyFIpFM5mJRU7g8/e6ZXz0Uhu1HIhtV2Z1HQrA0uwGXQKVXwE1Zez4NBqr+vGI8fLcg=="], + "tscircuit/@tscircuit/cli": ["@tscircuit/cli@0.1.149", "", { "peerDependencies": { "@tscircuit/props": "*", "tscircuit": "*", "typescript": "^5.0.0" }, "bin": { "tsci": "dist/main.js" } }, "sha512-sgCsl557VTjaqUYXLmPwRD6PN2wOv18sd8G44UwDlm0nKQFKY4cMhc4tbM1PamTN2PI655YgOqL1+C0GKF8AHQ=="], + + "tscircuit/@tscircuit/props": ["@tscircuit/props@0.0.243", "", { "peerDependencies": { "@tscircuit/layout": "*", "circuit-json": "*", "react": "*", "zod": "*" } }, "sha512-UB3rcCnwBO/aqQpr/U0SZgGug4f3pDqBev7xowKnlZx2kzo0XXSEWrFc2uZotysGfRSKL8YFwQmSiUJOpgjgew=="], "jscad-fiber/react-reconciler/scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], } From c77163a893385a16e43a0edf2d9eb2351128f36b Mon Sep 17 00:00:00 2001 From: Arnav K Date: Thu, 3 Jul 2025 13:36:42 +0530 Subject: [PATCH 22/26] done --- ... Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg | 2 +- ...imulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg index 1eee77ba..8ade7795 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg @@ -1 +1 @@ -U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file +U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg index 712a5eac..69139147 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -1,4 +1,4 @@ -$J9-9NJJo z_#Yx7^vy5uL-1nny|Q7lydONZ=v!K!M&rsa{5`y4ZfG$mnMsnSHj#IWAUsM-bNG7U z&WFsOo?G}3>%$92>+iq<`PSmxWM!5$IBI2Q^T~S)vz%iw>gzp}iC<&ubMwjrcf->< zrIQ)*)>?|ZPi5XGn;BM=A#Dbe-MW8J7s0OK)eWx~?|FV}T**oLXTAXJ0w?PTj0Y^$ z8!leVTFn-*^l0hmm}c`;kmMcy8sr-?Kv-R`vBqws&ykQwGB7mr4e#-j1@Ias+!-SuY|LIPAo;cWJr_3T0qnO4ZimiMRNi^p zcbZnHmOc)lYvF{Je)JoMA$e%Ve+j^a7mgaMI8RM=dLfHqZ=@#N@9h}|hl{E;%)c$8 zArjwDy1O)|9o6WyEHa2q!+2*r=8m*-B3c;(gHYXhN*R&w^62nP*xSxilV1ORWRdq~ zdz~bl&tZhSLWXNOgfSaC_w^_wH(aeh*p?Hf@zif*bNx%Bucnd!eetrZ@2V zrHzFapI~ATl|narlvJzQh2XHyuCCy4=A!38gY4T0hexJk|_%InrI^C_=P2?qWE zO>az+Fui%LPvuOo(OBf+4*e6#hWY#lbaV?lJEdQ{*RqoqCHB*vmCz^nv2YQI2-;)Q z9qS?@fEvNMv>fX=QK4l(PyLANgg0<6Z>!e(H0iRu#Q2D@yg60CRFl3<%3_EnELKQLft<7@mH|kA?j=Yq;Ho%4IpTW5uZ5`^9B+65@ z)akj@%DPjS@-=2n;=dbhot9jUe6KF?0;!(CG+BNl8n0 z*LU#wJ@5N{*Y#bOf8xwN_u1#{z1LoAohr0&;_)ZY6nOSCWaY4o1zJJ(GCf8wr?O9y+T%rI9)t ziy|(i0shsy#XhFiD8arjv1hmv2z-3u{OG*(-+}r3aC(MnMH1pTm@*g~jlwFRGWMlr zqxc~@#(=p*VqrN&a1sQ6{^-#(rH#89wnXBZrG+O&6jTp^T^{xokjgy#>BqGu>)1{; z*@psNa0w&w!-$)q!oCr#B3A2{j3W1#Qp|_F4Mp<);1$t}v~-}zeKEqM81Kz?vX)@s zfnTU3`Vf0Y|1d&v-?uusF=86=j z)dw)oJztl4g-C~ zo69>S;cK+7d zgLpvz7XF)`M50N1E7$Jq8du!tI3(I!A*=XXi<>X6zpsFjY6CTFgij!;g`ze(Q=QeS zoK8wg!G&n&966%9b&(>>}88f!vv?lz{-)COBX{TDpH>B>0R}ALQpC;K6nG-by7p{*3_q1>xnfZ zm_cT530}J-gPFz>>Ny~pSiMWoJ8VX{bh&6bSmtVm*Oc@cWw}Z%-e(MphuqtgY?sQ; zgca!2G><6VrMpyTL0VO<`oMBAP*tt?)eJ)ELcERDv12+n0e+&Oj ze_r+1;nIc8b*C^&{TFtDe&v<%*mm^GbA;bh@Qa>e~D6{U^jghqCcvohJSPd;|WNLtdV{{r6G)~)QRw|?t(%XdbX z>);t3Lku*1r7}m<2`pnF!!(zdBKPd6wV8gWy+*JCF8w2*;0BGWIx#Dsmr9G|A}TwV zm!@-2=jIElTq*2~#n7ryl(`HEjK)R@^k|)wf&Nds5#x`SIP!@beJukPTmJApc#cc7 zekpZBSn&_!E*Coex*)`{ah2AdyIM<}+E<_7P#Y&qf8T)X>`c1k`5mrd z;Dr!W_eko$`ID1;zKTU0rkU_kZ@U})45lrdLqdP~ z@L27)yeob>C5$ke)4{uWK)q^A&OBhY%pY4uco(e4z{%q`DYJ(!a75@QV14t>Fk53W z@!RzD86FTZ(7Wt%D3H*wK%&bdi8QOql%5hVEopcro}6xspLwh)`^~ldo$(TZ561yV zE>hAW@Q;Zpq)8g2V#N;d@>uPP`W08AcpX>3uj~vXL}Bqp34;)9&ilvcvAT+!4s#kR z$qQJ=KF@D$8E9;r)3;-yT22>Y029O}x8MHzrt4(PciVUqdwhDK6)XSgN)w?bd7eZF@!tkA@0?k33Hmb~vlPdqnpw*M|;AnP#4y zBnhkF#`#y8K_LtftAkH7?6cm{cS=&Q%3XM?pdx3gD*+|>av45;>AM!+yw;0{48KMN;K%S$Bp$o=0|wkqpxp21uPH zr=wB4bD|`QTwBY30d9fedh>Q_6KiW@EvDnLLxc))N2c}dnnTe6mOR&Hi$tcJ{`PR( zv_}dOA5K~c4y(xR){dx85Kc_7-id`ESex~bEF1^(8B_=A9t!Op+@J`ad;@#h{tQ>= zO0JJ`1#6trf}9fR4^;-Tz9=Z~%~ouVD$B;(W}js~LsLSb_#>Urw-s!0!A0+I0*OF; zNV(nTn5bMQ*(4*sTNyZp`jRIuFZV~`?VZ~#&`Bbq018dvz^@F0$jWJP`zMJNL{2_K zrKhs=7@h3}qPzWEM-4m>u4kr-PzaH|4mJA@@XotaaCb!r7{&adG_JU=z3Njc zNoXN|M##;90x-6EXaw0*jz>K~lPBUljkKMR*kn`;DF9#H_7UZVa+~UW=3DS08*<}U9I!dB5;*M^@J2|_hE9y0#>%l8>Z)q92 zywN{L;91FE{}6c^`wV z+ptZ)$&jS=T>tKO5)+n!hQ&{-<|hZP)$kklm*B4f`B8>-Xi=v6;j@;mKal*dU;p&= zzKe@_bhO#0K;Q_5Iy;+F3fKDqcZ={EQAPMa5T8$(9K;7K!Z$yfe>VT8c{5_UqS9kOLAB}qF7pUfI z7?_F!Z zDF8tL@eX{?fDQr(E;p}l>fcZ$+rNDQgIQ0{8) z{`~vgjaM%Ac<0qsORC0?%7mNeU&IS)c*>+RF|T0_rnlWF7<-o&mrAPvn2M?1m194o};4Y8Qr+(_64Z!_4I7YOcj43KUhE*V<=v z%C+oK!>9%=zlht*hSK}0)vq28@NYjCG*ULS5R^z9n~2i;G=v(>fmM?Xt!2gxZ)oUQ zNjT=+pGnt%FpeAmAB-KwdZ!TO&N8DSd{)2z;%%U}q`Gm!-A^c`5<6kY=TAUyv3{yx z1pln!$NAKS<5n_^_eFwu8^>xZX}7Gi$3|0;s{Ewn*QHd?^mb3dXb^k#vBzE`?%EGH zfN^&PPMs^@!Bm4l4+}=L%z=uOmFs?v8}-hme__qu%Y&v$zy#0rJ%1N!u`ns{LOM-X zpR4ciYAe(^^*XN;)0i9ZTDbTb4;=VTwzcvBeQHH;e;vY%I`HnlFdwlNsNSAnOt5Us~PExh$ z<_B5DQa_Bh4w`Ec;yMe>8YN07I`~+~VbfIW{^HjqplwW!q&IJTyvD5%=CTOv^fSC? z{}-}>I`HzpCs6VH@|DYz0BOEZM{}&ST~acytI_7M+}*uE%x7-(uX{CQm~jYf4KOL-pp!3^8VdqMqPXA!ja$5|}0>M}UA! zs@g}dHkoZB&t6~FT-)%~>bQ+6f~&i7()!?ltVamUNAXyV6VOJFyEtXu!zi8#r!)Tw z*#IU?AXh>Q#jc$oic3a%i%hG^(~UXl?6Hpojrt`oE)RQ~n|V9&1aTWXEquF7ZtE7Q zT+UDO^koG8cH+oC{;q>ymQ_6Awv(v{`&y?m8`-ptMNzc9Y+gv1>w6KSFJ7VLB(PYt$WM4 zKtygGuZ*~dBYK^?i(yagjxk>T{#_C@g#Q(s0@Sf+C@fXepDOF(b>}EITwcAj@@XK4 zuf|bav+LDJXj-OtDDXF^+PgIqt-ZZ2^RD^cP-Lm~8!&dF*#Ya2m7h~N+o-G5?4o;{ zg~Ba6)0z0X+Sz;jSeswL!_Ky5e5nk7#&!KS6{ki?zaEYOpOw#1c4HWlOe~0MFec*k zrT;pwbD4oJk!C*dmn$zc$I?uWR9I`fNT9Dc4Nqz8d;npiFvX7VJxBYWoZ*mnR(f%v ze-&|v4K&z`)f;hJ7cAQK>f^sbVvUYt{zQ_6Txt~N*uAN$nxFV(RZ(t&;RuwhM{i{b zdMa~2{F<3ay)<=Dc_5LP8*Ae0=4Kg=Us~)fK_($<(G(|BukV7iPN?wu2?#VyFgdN? z*3X4n@o`3SULK~m&?Jbcy4{4IcySaxciRqd#lHIa1@aI(F!yc(HpuV;RW4WQ0v0cJ z;m};SKSwN)2*}TB>IKK%y(P1-d+e{;s$~(O=5n0RSxlrx({E_G0Mb)B^9%vDeK&^s zyg|pBSZhLpEO^u&FqfBDD?SnB;t3ZKsb92;^fGp{C$ z&_1-5QZ=n(cy^L1AQLk~<~&JGT1)=qd)znlw{;s4QLP|{Wp76|+^rHq^%B{76`n-a zghS4t^4vB8=n0_jGeV-gmSyBuSIL~0B(Qf|C@UtU(_?W z`F30rR=f_UpzD4Pj)4tCU}MJ7!uQK!7{|r&f)tBKc$|?cF!j237@`D*%nV*SEnn+b zB^5@Ii$I;Lu30fIL|fsq^zdb7*ot6$|6bE+G5%CwefLwuf$N~Q>!yF#=^VH9Ch1|7 zo|AzF;0q(DHeW$Y7e5VlEiUxkIc}YIWy8vTFgh#YlRqW(^ zgEFa7CkzaQeZ3yNKr_0=7{iF~RK*5TQE_e{YB6*n2ep(dn%@>$5U?V(%m-amrKKJ= zO4SpB598(TVjsqAik?P2R{JI#sYvt;)(If>#-}MZ06fbHN4aAmwJ##@Jq!QeOd&tO+gwyBBPU z0D>W)CK)mxHA$Oq%WJ+`FD^#!AK2ZyB&o3$DwGOK?d&uorE?*_=Hi|Y5AP%>t|TO9op{!8_h~x{5R}rJ`szbSbcRDW7#3i-Seb4p}Aj?BxQpM z7M5LyBb}{k@;m2&A<|z)fs_>Z$?-lH+#*ifwNZN2oRyoaB#pLf>RrXYZ;-KD6zq1M zURa7F*>>@csvHFrXM1iee;t&SBMp4%T$RZ6tqpft;ZEf74eruv& zF$Q0x!P25QEb!6!@xVyE>p5^$%QxTq4wVN0#ef7%e8zwTVUd#BOtrZ3dC}a`%}vUJ zd8qsk^OAF;dv1Xe3nS#i2cELbOb_=ajbRS-C3P4*yS~WMT!C9H$F$2NI2CHEBgj)l zs{mTSGw`cGv?>;gOG$Gjn~Ltu4GcU~=1Hqb8|fg$DG9;q!*ehPP&QxgqUwMHUkv}GifH>(R?M2~6CYOxoTLHiK82r+ZKcK4)@>P)w3Ym%XBV2|?tNLy ziMp90u~|9_Oos4WK?ls<+voP}P$%}NhJi3SF~c@3%mY{}Z9cl`hHJ^i^D0>?T4s2x z*@okYFW#J_wdGk%9@)&w-kCwq-lQ5MrCB2Gb|N$DplHKwe(y1NKJG7B7|(e!tBzgw zJMEe@Y8P>@?>W*ZXInXNW)|;jg~6$ZWb@K^Samr*bKcWuUbeGeV^Sx9U-2|G%%JV(6j<1tSlz6MC@a<1RM zu18Vw?u)-GvLCL(bn*j6(~1fTJEG3l=k+ZsmTJ$+80W~0?!skR#+2LN4fqDLP1hM= zIF1!z{+)KE%npH?J3Ebxs8D#Bjb8@Yrg2-oq*`uvv}8Nujg9P2oCof}&e%bR>Y`WQ z2P0hdWfD?&U|tlRzZ75k+J$nVW!zvM;9@Vo~~^Vm1{=^?R$@ny0P#;7a$IbADEhn{xg zb$^>Y`eeoAp>B zHgXXrLUDTPb3OzDb+s%*@ch}%7G^E4g6)7!Qp%5VtF#Ov&E4jy2(Ig!1#Q=Do&7Z= ze)hw^K(6^KC)@ydL`cu#l z2zg%Yz)GRD3W|}QI~Mv41Az1Gy^r1eIUuFAyurt(5Z!hq-43!$(%X$!?@Kp;#+v@g zBiF=qY)wU7xu&_Zu^@v9;d8JM$eH7@uU@Xhcd#iY!4=ca}+en4+ zHm>Ur=4H2(ZnC1ZkXA>|vd4z&_>9oqvpe zr=-GEk@DTGj?dvGY84zg+Fcp6I9stQ7?TV7BCt zJiKK7tZ2h|gCQuOuTRP0S11ca-}BQN5isAMV2dD~W#Q&lvw0}3{rC>8O!g%@IHwj0 z0o1&{4UAj0x-~#hw_W+OrN5SipW9P|Ys%*7Z<9KkwJ#RztKr}IE8L}vZOX7-tor*V z(I-0wuAGqP;gSe0`gI1sje`CBbuiMDyZ~IORXE;9tL`b>pq_r<5}@_uIpD zHdZhbxoUy2W=)g+T$ws%n zB|W`6AUj&)bD!{HjqAufUMo@}AJ?aw_9?i2 zH4E#8<$Xi$8i~Hs+I^QLy=p$b8}!PTLTnXYDKQTEO%)BfMw;f9`Zi0BKbvDbP6$|% z3~kUmHYt`}`jVmj+z{XUg;B3_vtr$%e04%u7O{vqQ6Bza$KH|h)?1CgEbzKiThdl& z6Li}JI=zAd{+y^vN+G8KW1|Z@{y8UPEN}&S#W_4s-e}R^2pn79B&ezo@Y`B>YK$;Y z+Drmd1+woz0itN_c_Z@j1|E8AyDR)Xm;U!XVYr7!3;#~T5|(Ryi)oRH6ce=q3b`&J zVRUxpi_k(0&>CQ6Q~RoH6G=(EUU=n>zWyT9(6$Y=_jYRqqp>f3%ce@G&wKY!L>S&^ zb+ApF;+7{pRnN-4atz4H2X34fJtOKB>^Nt)Cs0CeHt(r6*bLQ ziT6c@16}=8g9?2gV2N}uAko4;JY>!`He{!I2ECmyl=4!>rR7Lu4*OA(0 zvz#_I5Mrf;{XR8_RQBkfC5_JeOW{ zH~~sW+i5?~l}2SIX_}zsf9gk2r|TZCc4XQ2n&0M*jzy0W5pR^f)z3Re^MWBrkVNF_yCDGnnf(XQ|V z38nXmS_$|qXFgcWB1CWc$RhTju2dg+SDk&EY_i4q)R<%+N|dOedQ!Y`@m0GuC2G|6 zw}@lTy4kz`?&j;Bb8=pRe)G@u$A;+F{?2HJhFL}BmYz<4oq6}&n<2%_JI03a(Mz8C zcB2fVr>EOoVO?#|q7TKHC~{@$eabLND(-SUkMzG^j=PBY-FEn}7nd$q*OV#>AqJJ6 z&I^x@wL-NlDupK-_SM|n1hmQ~qR?lm#MKB6n0Vj(sHxEo75+Bv_16xT)~7Cz#_=@5 zh>W)>*QHy&Lg=6xB}AcEdQ^a6ZLX>+fPQpsj=s@i>yob}Jh;hdJ?7gKiZ{P^DA9rU zCB|wOs~O_K=R)yJXp0rs*hEfBdui_D>79jE-Ib#$mTFjyaxWVskX{sB-6UjZ1;Xyz z_3q)NOF9DYi+23|C6-Y4+^P{LgNr>3Z1rp{FKa(ETdlI0m<5+fQ=_~Ndq-tu>FcG% zDj*l=ZwM1GlxEN&y4uW;cv z)_c4+%S0W6BD|gTO(>HGgRs>2xW`GrjFQ|Wz^i?gR4y>0Ha0=|@@Z&^lcT7vh}rMv z5NtiTcYkVF{m6%6#pl}z08iG9iBA%^S{>MRcj_-gw(zeOxk>2HO)if-y5B~Ip^gz` zn~va~j3OlL>_IMzRBVWi!)H$u5=^_@(hox+wZG}P53N%oES150$9lAhnIo#PCj_%Z z($pwhOQcwtrfy#e+6?7Ur}IcJ{>CxvT)I#@lqA1pcYHH`FcY=9^49tre}jmT_|IUy zZHIkw{hSB??E>t5;!=11vp2ysbuu&c8D};KLmT|SuZ{^pqQLm-fS^>4i%Yb1uk9AP zBm$pJPbT{!$g7w~rmscjFg)~UoyK*E+Tyjj;i6%+Kn?9ggO0|^3YEYUsUBIClKI9O zc*f#3h1qgjFaSq8pP^uls|r3peNfrq=A6iTjmlB>6ZBH)X^X+B;d>ZgL(20?rHc#$zlpXRL-!~#g3?@HwdmO8TI>^Ije^}lj`XqJwcB;E zYhX?&kW%z05z6^ko=5(jIKj*8hDl5FE$6wTlzk&D*Vx;FHXMD5nt6na^=kKEzwAxo zlZ6Z%84KQVqnHpf*ODjWZ^7BNbi1B<^Am*HbXv=qkJheB{m`JK1AR~* z)few!4z*gPUkux4x4Yr7ws$5&tzC7G6AZk*8y)$b$AOOpjK5Ub z+D>hatem>OD+7PntCD%2pWf*75T5KcG92n~q%NhY)^B$`@@aZkA*xaP8v{tom@}%6 z8^4}@>Yh@dM}PmB(C?*ZR~6nK--W?TK1@Lqb9j}Aj6 zt2B=fKLXdUJ+{5C*X#?oBo|#rinwb09h~H@3Gvhi@7@K&oj(;YogNbr1ZA|O;eMgS zWY)X>Yi)yZ`{zukX>B!MsszU?&34P-uOBKSE*ENvg7v9^&9C=tw=cbkV|A~~=EG;l zv+!s6i(5pE-rj{aRy_;7H-A~Nef?KO*y7m6>6VMt(mccj?e_gfOCq$zq_(&#(IhfU zLY=s-C*s3q8_uy7E6S^J8}EwJ*T+Hv0d8EvKQ=$NP1qa3*oMTC6V%`-b_t#`$^j!Y z&bUFB^Z}QJxK#VUM=FPzCG^+G;m=U8-;;gBipR=I2$$X(fpv}TE76F~$5)(bwRhI1q#XBiNr@lTpH?PA9m0x?=)cS1ErO@qZ-py_P zZtQT?4B^heJ*D$d=jnJynnI*aar%$t$Kbx9Xg>(z4F>LlZfDZuO7jiFA^F-7$yxw( zNn`2qN^e_Uo)ueIG47YYYTo%gt1=tJhn!EJuyn6f5sEUXTB2g`ZP6{cqJ5HPTC_iQ z&BF!Gc!~jET{V=bnc&q&Eh?6Oc{plc-;Hzi{AMbcx7ymN{?S?N=Zsf|75s!RBh1zV zpT5k`EjT2OS+(LeoJ-iGG;r;fN;$DFP?zl#{+XcsX_*mgHQ?p(Rt7WXa}W!2;`XkCUXb(3RbR8Om&jj5 z&*n-cOFbjK=5x0{S-rVoU)x>*ou}me1Jp1?Qv9lO@H?^n_#xtBz3rz9`ix%I;2m9z zb8*NcelI;`ZG!6dkl)`-y%B$P9JZD%(|0bL^uVq#4+T%V*m zWgktm3ivv=3)09V+Pf$4q+sR!105#^^>blVn2+;sU-3&;x{cqHTn|C+irs{al6uEP zxUoS@2gBM2s{<|iyo8#RX=v{w$4=G`f0x}*b`YN&2S;;!qlXxH+XKKp_yHFIYkX*K zE;$xfzQzYu&J+!SG)pFnxY5QL!z4{jfd<%5!j>ev2h`&$F>QB?^3~cC;+rSb6m3D% z1lS!*qXaCVdG*Zk%M)2=`??Ri;LS?xp_30fIz4 zRB%niTNpLpqw(E*H7e|J&S^gtjQG$slxbZNiKpFZ;Kc5j%!v#eGT{t;QoCAPlU5~6 zTGep%u^3+2)s0JCizA}amRD9s#Jq=sY&C2%LOI=buh(v3$|%tPyY>TRTxVmTvXiK^ zR|rUEL7?HWN@2xM{Ptym+&JPvI4%fE!;D%EPzQEtY;QMQt#Y-hNkbVS7+HPIoMRxO zF%>Y*jLaff*@@};2qRX*E+piw^950aN|pk$MFT~mWN4b~Rbm+3PW~L53mJBJ@M4CG zMOcCctx;~3JmMXf3Qsc0r%^l3%J^)-y}&~ZMo5~YgQ#nxf2TrfB?Iid`P!3t{f+*} ziKgZQS10maE8to78C=FhBx5KEvj_@t?J-@aLa= zatfRTX(^hPKUxX4TeyCs91Qd8KYYBj#`}wIvORKYih5O`JQrp9M!i@LmJ`O=;bgx= z6GS6G-SMEOWNfFVrd&V(q)9S*TBuJ~)dK_;rGA@&i-7zI4kIpJ={o`;Uo{~axdgEY zeb7bOvK@jVRfZX?oH{A#74PH8x7ev~cT2q~^?Sz~XS2l`LXV#qN^|1vK-x$(4yGrG zljK`XxE@6`pMAQ?^%hFi@OVx&DEBw=06ixg-%HmIEf}XkGtIN!=ElJcfz>AL#fFY} z5Q_$0LkJV%!0Zcr%yo4QxfyweU+Qx#^k}NvASYXn7NR#BKq@5qXHcLmN!`Zv_zwrA zzE)^w{tMBYZx{TqM3>T>x=ZB7>4nTe>dsFlG?Zw|FSSc!8U!Avbcg(|JF>e6}i)eW+vHY$S22>ZXHz0 zx+P8ZB&G0V9%6cB4jE7dhWczs!=CTXr=8%EhG<$7)RI>7^TT2c3}Wu70in6ymHs{C>XtO?Dca@c zKfhZF#qTxLH|x;sE7bEu1g81Y*Fd%%Y6pA8Q96iNt)2?tv3>z{1}8dL{`&|5GmX37 z!zd;y`jPEZbFpkw^h?g)#>Qof$2|lDmQ2OA-rgStdFTqqp0E$Td1A#{4PlldOOq3v zEWn6jdlr-i%*h}8!&E>RKk$``gi`tcVpf~Ky2?CS@q)KlDk}QJ4c5AP#C|o{zgN&y z+B{ytua74tB^_WRUXUrbZww?MqKn~Yg5x0!k(~dZXQP&dJq2gZ4JzuugCqp?w<0C) zR!QC80q>Jyd5TK6RNDj_;w-K8r^0wl%!f*GtRXw-|(yaC!{U;*U zRi1|k0`Ri%904Rnu!5gk(-Lj?$y=)v90s0 zrpky2e|;i9o^j2)_a!O0fDXdC{OIh)PO57!J6k;|i3y)HTNR^G%X%#}RXKueXn9cU zRb}bc1sZNR6BCzNb@5}@Oyw>4|NGTUDj+jVRr{QEci3iPA->WQu!@;~3t^3kRZjQ* zF6}^aCWglfEq+!}a9>;W<)eRl17wrzMcm09YO7CKfWWBiMm^P@!HkZ=0?9UMT81a%TAs?|Z)X)C^KJ0-nk?0GE_#l{E%NSZGqTQ(a z|L>>KYKz0#fgeY(z(+PnqgEM}z*KUw#XCjz;HaoQ6naTabrkB@)9_qVLAs# z5C8j)pe+=Zwni%oYc}Vej*G15oa0_rB`$GG&%W?H#W|9?pyl#jvng;AK3!;d> z>#7w|MeTR%dk>uW|2lmg*umlwC}$1k#4f(uRJ@aYg93hskgpU?G7BUGQ_F-3BmUX_ z|NU!C*a%N@mr1pTDQHnA*BaJijZYr0(zPYdT@E*I)foSnIGMJXDQhmjO`p}n^c z^cCFcqkwP_7?{EZPlf-#Kh_XcF5u@;C>Do>l&%9nUo@}vDyW?mefDCHixhTTuEd7; z$!d!kqn5$Lr1(0IMm(oi*uwP<09Mn!)>kG-h{Z9wi%|Ys`16N9Hcqj(T%Gk?mp^+E*6m>@ zuyFj0cw?=SoVQjeXXBAyEFtz`dao!6K99=Z{n+fHeP-dw?oM1r0@bpI^^VJW zYshu|QS&n?KMb9ofVIyUXu$3FK(Y!Ig~jvV4(cT=Z9P9vB)4{UKG$ed&D7Ox(EVhV zaOiHe@K-wGYPV^u*K{gQBr@P*bEeB0MX<>m=wq>1d5EW&4@;Zu2b0MFvYr%ak+0RWWRZgM+ar z)xeTlI=ULhanIO19H#QqsQg3P-Wt*+{$0Z$hA=1;G4V6_*WL?eOeH z>dpIJurJ(GN`y|gtKC~FbT#;ng$DTm4?P%|C8WH)czwDolxg2H&iI zuNLA%F0X0orAOtWXu)#X3tPRkUS?d}{K9@L_9-pYl{;DbXxZa3IGur-ym6VS33|Le zy0~{!U@mEU);}up2Y?@@rUmZZnaV|T5bw3iUHSJVBBt*Ej@cMy`Y}l)r`$j+B{5UC z&4t;cu5hgQZNc%O&JdqSQ{F1RUn^tb6}Wis1r`{hIBqJ1R}W~qYO^iBf>I87T}BSA zT22@flb9&K0ZPY^9Q@fv+ltTn)|+E#W|CmmaRQL7mA5wKYkiXI;Di=`4Mq`x0h%%) z(ND+J*%zr3gu94XPqK)+s}CJU%_S?&twPmHUSsg~A~W$tOg?D%{|sDJNaAg@o*tz* z5YFttBDQ=d@7Bukr-+RGUvq*%$XXh7>3tde5_L0i`~J@K7`q0{3wGwK_I{*ytIB?2 z(Ao<3Y^-?J=I^qix2~LT2-a(2nSMqkdsIu+<0GLSrzLiSIy;5=_?h|{C~Aq9_F+PX zST9lOSP8x3^Z=8_Qsx1uD?c-WQ3YF>Sk3)mxX^mv7O`=qr*YnX^PAB>4cMQ&&6MrYl_d(J4(+7PO)3(4u7pL z9sWr5TsX@T5ULlZr^V%q^xSS##iVI`C|-&^?wJ#<-LY-|2ul?Pie&qF09;;St78aY zyM?~5usj<@2&8kixO;?0tc*qpBL(VgNhXnme{hwR#Mx2lQ2u4D0B{qvQIAO?Gx|M4 z2n@!AQQsgKMB4n3lKbBAVjMA zmuVX+;nUN0-W?QPaFebsH$hXzY4Ys!&pKGL7*+37q}?tSB8N4kXCovrtuE*Z6d$^{ z8PpVTJ-oMqJr1Krro94}EJ2p!9cW#g9;u5s*-7O!`7rUVXH`_p z^ywi&=85o=pn0Ln`aRFYhJ~ha8JXx$SM4l!Wyb4FD6hh)uuVtA(s&c+Pl@1NRt~6~ z`|=8=j6?)pTs&Vc%uYT>S^^6@&D`Ai+i@XhCbP1V>1N-f^U#eIXDrKN;q!@w;+ zYlo@d%0j8y-s0Vei`m-Q>&n`fVp)!iO-Vv!;tgI>C`H8QfYh9)LhPYyHMj4ys| zs;Y`~7~AuYt!)qs)ekN|e(>hif6vubGFFnRXhWy5WOEF_bPN}eQ}N&(4UyRnwZA_L zOsc4o9OiGjjal&({31V9!kA(6tU8!$o^e8+l+pD(7J=JNl#;AIqMU5o?xB>w_>EZ1N(vAl0#LGd2Emi-?+Cn)~h8Xhyo|nqMJ0aeXB=+Hna?K6| zT-ZIxN2GlqsiyY5rM|xxA~zOc;Mb)UYO&*y|6FtiNzBtb)3iVQo6iUNL>h@CU3H4( zmYef2_5C%Zfq#f*a@mpbsi^0t!9;j5`Il1j6k^Du5xN&I`_h#>1)%*;FwHdwJ8)Gg z8{)m*?qZKi`YRp&Uix2Un&hh%`*n{<$zD;*6xCQm zEK$G6g&#pIIQjr*HK}CGyW3oB`i=9<(zBX?jZc+C{p*9oKhaie(-jpJpYmkRN~o4^ zPZyw0=jm>=ZhId@n~`jnZ-lWuJKZRNJYp<96EuBkAL5>FkJ+aXByZ_6!GapEZfxw< zdLa3cCP6p{RbVY8_rK=|z-y|`MJc%gcuC}R{zy~Ko2?C@fiTFt3-ZO62gw!PJQkfh zJ2fjwO(xv4!>Z#`TP`-IA}LgTBtyZN#QEVfA_OY*E$+V}(#jNM^YCXE(v1hFwQY9g zepMbiyO;b*C!nX5K{m6Kx{a4~|79otPCLHy12y6CDUN9SRa~lYpMUD1g35ozm+Yw7 zT-6vkb6QACB$W@@_=R#w8*Ylo=@UQm%>%L^tEEah^ljId9CI+Ol}}yaV8q3ta!6MD z{F3_cqMK+QD)27$^B!%Z0F+MR$HJkbH-Snb#RujJ(jPiE%qMKwsSHJ59b09v{>|E0 zAQ)7Dvp3QDerzXSf7({a$a_Wq`jN|mPm>53iBQ(eYc7?i*zpgZ^vr{EoAk~% zz3242{{p!R>bAPv-@oYEy(k?4?*d~xvf?~O6*Z*-d1t|{?x_4Ga+%GUomZ5;Qd_kn zB|DPPw>;TFY_r_!Mdp+Gd2%mmXfX*{8*8BF{dS#IB9mCdL*F310`s(}cby9c39JA6 z&A~yWZuwV{zP60>kcTIg&2-ML6#9quVP7Y)jXSrnrV|=_-jNMAMUt%b(B*peYr6$n zEO!@B&h{u~%KfnaML(9}<+*oYn@A!PlDB`hrp{XKQ z+UxB%WZOKL0h4k;4R@g%#ELR-sP7hM0X3lFyH}KPHnY-H*6>R6$q@#IroBC-(6cQU zJ{4eW`eb0VgEz2nmPj4hQeF9XZ|RFSH{X9 zqQS73M*DRt*ZR$K9|HR*Fk;vl89A=~MsL4_ov_JFS&dByXFqj!@1gt3EB{ceLr$oE z;g+{pAO^cqJSRzz+T{N@mD5FL48d0enNEg;72tZOX}hKYE(z! zOWoc#azBN{C@(QC3uNR($qvp&sG>NY3*G8I(1v+><@l=vVO z2g0x~Jj^mKX{sU<`q6%WHZL!SjF$`onG|JVQJS2M|NJ-R+ZuTUBw)W8@jl7_v82pa z7pGRE!DW|pAwzDduu(=U?1A>8xs}HjY6x>Pzzt_ih5?GEq@8Yzegmb)WR!jPr@#qW zGkg_*f~CGIFfFLy2A_(Es%g%%5&vT>*S+tE=1G*f7>4n$#b$=!iwAt=q+9uohHJyb z+?4#TK0#C5b3DH??)rz--#M z{YldAf^myS-y0YfYgr{-Zp0A&BccfMS6jveU3Ht~P>H4%LXtJfdK@71 zPJD>M^6_eBCuHa^-??1HfUTZ)?04awmX?a?YklXGD?0L#?Mh^4)P#Ow?RvNy{>eng z3Fcs!6#bK16idfhHa(=ELuWwW>l|exIU9XxogVnlr~Gvuzm$IOEhTVcU+C!a)0utP zb0&igU}IzF#FE{62Vep-$!iB0=-zYVGjKsv+iH@f*<`2@?OLDoEvaSh`@$rW%x^$36nh)ZK=xGOE{g*F5L9i`g9W;U<7nLwM0 zdHuZqiJZ)lMCqHqY1mIJckFS>Q(iaofezWm-q}!3>}NwIlCAKUMMMD$d38R$Xmo1( zky<)PzmxjWgQ%OJ5;QT%52hfWt~Znj-4;9Ug#Mf0ynysqmoTobnp~ZH3U@N=@ws|&OI16zCtqt4u>`}7!n+#khZl86cO@9aU^ z{&(+*0D}rmqDq&uZ>Hv|A;W;Rw{O(aV=S*;n02<2T}Iwh;3_kpJpxI z*ze9~f8yDVDRFOG_-!@N--Yw$%f!&snW+Mi3u~}(-JOBqt!t^uKv)}H}!;Sv1+(}w;GYzMaPZUf^>1V7N zAEEaME~-QD z_AT>`nf0E8zL${2!B_cl3UH?jVFdW$B*Te6J2HzRE&5>^m*Y#gRRQ=$Le8(OZcEND zjS7IFV!YZP33^;4U=8p2VARq=hTbqKGYFmMAgEVtNqvzxpTL1oGQqTLaE{kCNkOhx zmKsk&9A@IOZvaTApPU2%)FkBmly?2sP<+)t%Y&%gn*!Bj;$&h}QX7DwVA~s5UbvI4 zfm2fRew<%2lTdLgtF9DxA@+YRfkOCQm-@~xk)y6kyBhGG{TRfNz5v@@+yUq1Y4G3T zgUab<-m=hl&9ztNduEn>K~wqQfuPp`IR5g-GBuz~pcdLlrThm^tn~pl3Xnt=x$?2E za!n!(G>rDI6AG%T)J8@uRUTR`x{;`6eS&o3#)m$Ndv9T_Z84==x-b7B_L0^HEf!oQ zoqPb_p|x~w*Jn;~e2C@gvEKInK`aaf2vfZ&aKndjTqFpG+Q){QfK5YE0!+7|>H%Ag zm%_`BW*PDdZC7=5m$|$AIfeQ7Fm*42Srx!C-IyMrP85n@CX-`T(n;3dqD|dc>dHJ4|H4Vql zuU_*cafR}Na1M{=9~@j#&NuNBdxgDyy|gI9nC*f9r+qj)NuD}m7)EQVlaN#N?l+gv zj7>QZ2o{rN-88E-Gd2U%%q zL&3F9PsZExmMMv0lM}-T?+!BYDqD#;8s?R!m5o1 z%sBgfh85m0M0xO1)tJ~s!0|57^1{W6e=RsMP&aF_xJ66V+SOo2?9-;R@OJy2GsuD| zTd(%ro}rhIEl*s;(cWIAgQ!{UxKjD}Y?XQA^k6YV3vc76 zmn%R-URcBj^hONG=y7YNivE$xHcX3t>Q-bM`_vc;bd}>@%-BBJK~n%&Uwa;2{8|eO zlU3@pBT<&>GLuVG1+;myfCl%!rq^F%S+;f;$ZlQ%IY{*{7yBRr`={m^Lky13cJ{t) zPBk7dpxJFP8~)p44dp#!OEoRa*#}C`if?Kb`VBbjRat=MEhLjY)$9Na1)tVSU^V9=8{XHwMvlAL1tELxCMNE34Mb+1oUzp{fU ziGw5f2EK?+xU;}BELqwK!gC;Fj0cD=vbX3HH_w4s4N=2f$Jt}kQoU)ae4^T>h8Un-V@3Se+;Ifmv2T~kSM368 zM*!=|)T46RziveXWQnJpM{O*JCL%g2#c+26xF{>-$VeiHN;jpM?U8&u=j4OpAxg2JL*We0R;QcMgNu zy-fXqfb$_fdRA>b9Sg`0Je@st} zmyhhFmi69Rx$#+C>Z{J_wF-Kmg)}=!?!W$&{8a~=V(sP)C@$Y9i3cg!nwu$GF3i2- z+gv3`-E_pBBjGRXSJsT7A5+^JUGufLm7hmEcH%UDdEV_6qH7E3h+7d`=_p$0IjtrV z5^dIPPjUpLGdb+11M9<6OA(HbJvAx*w?J!x068vH4syyg|gI_G(_5ki|^GW4KkdziOaG! z^QtK|Rn&cUFK_P)R0m}t8nks_kPj8{JOIMDmF2Vw2|7db6T1WQ!>(w3-O#v?#2FsT zQj<{G@}qX7NSOrL=z7zpLt0{R2na;}D`BnYSAD`&%fJ#o&M2d7a~0eQ@fn@FHgc7W zJMWty1-WF#Ds19V;G{G0qAu`_dMA@_b6-7qad$}LwGs=|cXJB`oCgAz#d_DjZlMZI zVzuW-CP5fHdvKN6DRY$I`Lh^0Fea<8^9btq(h_M7rD##uET>->}=^ z+99OEEI6%Jn^4xlQu>)jAG%Kp8qCAz_x<4ag@vCq(?t*E4u`!iDZS5jsV}5qX+$7! zekj7*s;{h4GK1p2&G_4(pQ?|1EY@>XoJ~q16}Cl$$9uT*!YFDtd7&8?4@*3{st3Ts zpYAg4Eg-lC!99$49tm`;C@$i4$mdIx19k<^4}rjCl4_2pyB}(9sHN4?yOmcbv66mj zcf|Z&qO!JV%E>Xe74et@`oJW7h7YP`cD8oN0FYB%z1{BzSAjcC6?u#H#*o>Mc#jJf zot?^-gMBtvZRDgRp0Uf=%oriOeV@EGu=rB62k4Ol=g(PBmqwihdP4=F&~6RDRJ4oT zea~(yx9&Eu94Dn%{5tc=LWGz3U9S^cXrLo9|C)f~2Re}!hk;XOnhSW(S6l?-ZA0D@ zj^@J%p0mW|!sI8;0vZS~Xn;Ysn}5>1r`v&W*K70$tiA5hna~!AM+`YE)z1}4^%rqL ztB}H5DFmTiNIqu)=%bbbdw-#N!C;uV@5>g4>zid|BZ^P&RH;TNytZ0g9QGh9eX>yC zcY_lOv|Mt|SJ1%RVr8CMAra`ip~^~VKLOx$8dfo4y~jo86O9HE5d2U52aJq&);5C4 z0WDbNO!HQ?0d6u-P(LJ)qhn_V4#QY~G4v(GWP`w-Z9ufAX4hkymj~ZI5vYPzZjIrY z&xJ+?HWlK^W<9dv+{K&<`CQjaEw^lSsq`wn7RW4NXwZq7Q=1nths<5y;v1&9!S2jV z-2e-QQ^%#i5>b?=KShfH{ zhh)gGYyPS~VD|>bXrhevQmwxiv|r@lv@vL=by3OAf90(cZ4ie^m;N+(x41TYnJo={ zgjO8-hFMTVQd#K(;LnV=34Qm4p>acL9XDt;?ZZ`f(#zeK$m_dZ@H_&0!*8Y5z8E50 zCfu5Ox_Q)%G!5H8qi&(?b5!uJjI8qksMGZhfV<`Buj&#vA9ycmth_2v0+P7%a2EIr z@~wpb%-8?A#j4sYZuhRmw{~=P^B00z=9>xQLDOp(Pj6A3r2HOGwm81k~90BDqb&y*8=~`B}L-~VX0{9EaC6Jon;of z>9(dkrn4t!s=K`yJnRAb6{1u}4B6tUCec$cHm)rw7~kJFadmx2dG&+q--;9&f=!&X zc!(8~0YYckdA`AS%%d?mhM;>$Kt_HvaVVRp5sqdoF-aL>0I^b{4Dx`63a0kEba6E% zI32z)>TNWwZ^a_b=AGNxf?0v&S=xNa5JL58I#10PbMqQp?NY_NmXtuXvdmN|Nx%8v zRI%|gU61cWFR{2#7|I{Snoqv8Vzl*k6DvDS*?j&jRc=AVAzN{VpjfsPc@)g?nfr8u zuR?_4a&Wp%?dB+=ycyFYtoZSouZtWwJCKOzIX#{%^=r%Fve0FW6UwTRUfUl(Xf&1< z5}Y)j)+X|%Dnuv=UqRAvv+BpA;FyRI9Z??y^2mMHhkx-uI2O=L5g0aNn&eZ#No&^@$pZ2egsJh1}A<1RJmpwk`!E616 z8YyH_f!q|i3hX&yaV#<&U+n3@ge{hRD2`8pp1v00*wx$Q49?ytqZ-@0wH(MYJa9@% zhkRF6*q{MJeA3G`%{yi8gXk+d@YA7A=9%&TSr=xNmEWWQ zc@>EP5=36+DuNWbb5RDhn;g&qr$4sc!Vd<@=XVqV#IaGymI>RLij-;ywfiIW`DHq` zzdNxFTpUwV+~CyQ73bLj>?zEdYSY^NsAH0R_Jmp1z=BnD!Kb`d8Cgn}GO+qH!>UAX^D^L;V-UkT`vES zUVhTLovKm$V|{G7ieju~UQqwV`lW(Qg2Ss(nXup^CKac;-4UanaFKVW(}KU&YPz<1 z2(7W<_FSu7>|8PF(lSlhtv5tCWii*bO8JW^ zf}nPj4eDMQ=|JXL^L4+_=2X;Se062ro`jVci0E{WUt|fES(+S_E*1vJ{Qlr|y>Znp zWlW&!nb%30*JF!fOPeN^n*ilvs(3Wx56^97J@Dt+oSv2{l=9*0$6HT$0+*&a>aVh@ z%_o%VeK0dnfHrf{0hmfTSgn~Va_PP<)7fL{@*R%MkKX&57#?bvV~>`lB1uLhrt39Y zS6WJ)V7~c*061tgaqauiZtQRi0R4@56on!vYKgg_sq+)Y42{B4r)hq7OuGj~`4~&@ z2e>!K>LBajj21hyz&tR&vzJl@AbOz58CktHv7-%?XKa_0qQjr(pP(gGe`>s@uasOV z?_4!I{s#O+M`{kB*U`RKdHtSWK9!-Qv>pO9_t8u}#i;{c$!dpW(=>pcL5}}X?de-q zeup4GWI24hVi1P$dL(V!e2}v<+hf#w`S`%z+bPA&)1-OP;s(!IM6QiQM&UX*c&1P?@eiJ#1%tV-GX zTCfegJbyJp~1-F;&iC0wM#^mX~fwE33=v zu99n*a{@g&i{s{lVyPJ=;v_14a18K0k3(Qn^JM&(<9nRHD7)LW@Ak2+1P~4hq@9Sw zyuP}Y<<)OrE_###O(&N?>9;pD#}?jyzzV3HG;+B5**+)9bjZKms{3^Tjbp(G*wu&I zw%2sG*S7?q##b2!ax@=1StW9D2uwx_vfPw(y9;E_igQ7Ayf>U9yQvLR)tB6o>nPr3 zh8Hurmf@=utXd)x3;ODM7XwgV2aW@Ldz`GLb}3qRez@HVrGDIxgF}5;S?+<(HbEIc zWr80!TeNL_&f+9x8802{=2%uI4}^1=HCx!kCoh)g$EN{z>TMNuMGAK1LPi7QBMy0j z#QDHTy3%@5wr7TV>>OXGFW;P$l5`P2oS9c#pb)v`*HHiyFq5$A$til!ns9h1=)G9+ zBwSJI_-72@^E>(LELAJBtuI%fHc0l20sfxh{jHUSaLee1n^xns>$h$J7XMY2@z%ug z5RC5qQ~lm{Yf>WKSGr7UEf;CsKW2d_-^b*pv%~OBUJf#K3fzZ*Pn#{W+&mSE$wrER za`^}5Wyqu2un3s4Vd^D2_q3xU>K(3}4O*3+IYuw9zPCYD+$@uTI2w3i7~1eLXOWs3 zK&dO!v0`GnMCIRl-rL`V3G;4F>z;x`cIe0tCTyCq8oSfrztKmOHqZTeIq!0E8)-Sefu#4BY~o)~Cva^Grcy`+Lj zn(FS<40LV#7|yyCA)!`!dRO@Qf2wRzfs^NQ2VPq}iR9x+w!Y~DtMs3AE&P;|c%@xM zVY+^H*5ui?fse5);9tW~iPUOiqhVzunX78VXb^!VMf^d_dw zu0Nbutwv~dFZ#=|DQ#k&uGJh6pk;|VNo16jJ$DlHkW9l`MY#bM1d%nDY57u8QtoHX z^~54&?D(mC@W<%u?IkA4mlF!zW_dQVET|5Q@PDZN~)4M<2D6e1oy?YJb7q_x8V~kQ>ZfmH(UdG`=s>6+? z;;fUW2d($-F`k~xkTi2{?Q{LP;j>sVWkG5E9BBNh!XrSc4>rNIyt=yN#6%`B`r+0M z?d&a{l(m-#+{J@Z;eZQDmlKd@MVpOq%Qo<;w$6F{u8_*;WMw6T#FV~S9X9=`aG1V| z=TSo?S!tHS2P+zR7>oh}mc{*d>8z(0uT+QusOJ95Cn#48%^&^&Z zTX!4owvoHj(a!YKbFX=M*cZz|)&5z^dh~_{h**kjQ3&^;l>5WMKnKN4285}xge$}k zjT+?Y$;eSG-kLNb+Y#|A$k!;9IJTf z*x3-svx$Cg_u)P?{jnLbAsyGZua$pl;{V)^VsOz;HXi~MfWC8_yAT$YXeTFd6fVvt zK;Vfq+7)TI{iWfm`8mIDK*<_w;tb+VTvrk|&;m~nVW{l|&Q<>SSVBVpSOOt0c@9Py zCkmIDZPdzYP~@S>LjAXB(d6WwuAZ^T)f*$|RV`}k93&cDR>1G`dw6ChDD&lr(gQ#o z1B}00N~1U)kDf$YP~ubnt?XqGd#!mLruos-&M2ou8Hfp0@`nOOU4x$)>K8zpa(f~K zrz9W+J_YtS@E;{AK;iplke8f43m?dyrELRX`?yQ4LNBIq$<^Wxrqa{FlKT1Eu-PNP zvn8WIl0MKEp5P*8sdHMDFGgLFzWW_eOW>=yA>{m$8vgNQ^lSl-Q)jlD57ZmO`w8vu zj1k&Hwwv?*DZw?3XWayMwQx{n)xW7&rlHva&-_Fh{6~dejm_7)A7>K*6Z`g=EdoN5 zQ#wmPed}to%Gt0a=f9YfJxfA= zFMxjUL#WU*3ZZEsiQIma$HjU-{8q;E)Xw=r}N9iR-xE|^a(OQ;UoAdZzH0IP)k z2Ak86jp+^(F;V-wO;U!1S=N6z0|_gxQXa0;bp$o-R5M*#(tgky;O972S^9K-l7$c( z-+rlry)fYk{T{_xD>O_!k(ix&jUH)~$Zr8=b9_dNvr9^_mqe3C@pw{Cq(v@g%VTGn z+3fnIqs-ELBvOjN~r%J#tb zq33%E@z6XX;l`qEG;dVVF!h@bUfmI-b8L2rT|l5T7QK7s@ zOAxRiT>vxC)*jk8Fu}T>V5YRcB`2`3u=eYX*JkjH-h1TT0hSjmE)6=iw&LF7GLDV^ z?8C11iE=O2!$B0TC`%_wwU=w^?~qcW;%!@Yi6}#5%m~P~yW}hodL^4U zau?}I$ghCrY!Z->MgcWA(4HfCkuUA`U%8Y^*XBLrKdulciW+WNroH{UaoI|i>52Xz zXZCXjvd*pSkGFM?PeZe^xs(mq13JK0-~vSbyheGTy$d_g<3IKLpVC+I)=V=NeH}XA z>E(C*@hdmHJZslegl_st$?`KR@>54&GbUGG(?I!f&7=nIB2r?K8P#uL1O(;^B_RR7 zL0-(Df4hYSR?CkX*H3-tTl0a12okvfJU+ve_Ic`8yE>Jp^=oiF5=^W@9mFoM;zSYP z1B~^&KcvIlzjij~)eFxBXN&-wz%Nxk6bGo)|k8$Gu6{9)RGXm%k;40$AB7GHV`s*j@rRsO# zKyiI$JY3ex2a0PEdv!K(K{YlFWKo^F#MT4aKHrzdG%s434TqFI+wZd_&vXv(%aI1r zWDTK-dW7i#C3H65;uAwerSTfC>LRfk^gpXyYT3mm^D|k`>*WDggosnXI9I(?aO*X% z#7Jxfzvxz@S)h-DgwwYM&(uKp6cmt3e5PIuZXY%Nd*Gl@c(Bn2`m*TD+DNrw!KgX_ zya>qekGiX=jTSMen|gIu8CeV1{HkOsMV?~*uqEc%#y>PFt*N+7+t-=PlS)Wh3$I!2 z+`pst=ILx%A_Z3E%=TgkE-A<8L$W>k>q_i}7d$R3Vs|wE4n+Ve-xzXk9$mghn+0P4 zdr**bC7U3Bm#2l?b#3!IVJy)73c44rY;Nyx$>GRxOjG+^XC(k+?)kK#flSTGn;LvN zW|A5;Klue%jnS3e{F0BjIXGOpe0^m*Mt*GVCeWvmakUwms5B4>?RDMk*?LsdERTv|G9tmD zs&R_Ee6bGZjRdUJCoIx(Q&OLE^p_l>pBELtoRx`+c_`jkW7AD0o3UcOcc2qpsq=DG zGnxzXaXA9wyo!%z4=%*fvHu~TlJ!g-R-$i+i*Wk%E$aHDdo@2j-%@BOH8}qElrb4> zq7yE@KqNBKR3>ebVmjL(`t8pS@G^|)-P_?}PE8O!_D=U7(zs9L8@zf;q3o2^`%B36ab4Vr7lBHK%-M zO(f0baX!l?BW6`U&*K-s?;MW={aV>#@~3Ugaj9&9z&kr1xGF%X-x%{6j&NM^QXu#{ zF((5w(YxftbM1EK9j!v(WZ?K-baKPQG<~IbUiapm13B zX^xxp8ju+t%sl=`Rp+NDcgQU9<+q5~U@Z93Nal zN9vj$duQg^0l_yzX=&-yRE#T&840w*`A1U;YpDdvN>nI5LB;&##lH`U0@)vM$Z!3f zN5Hy;gOhP7iI}DQAqRU^^eE9$i1-S_t)4gI(Px1TKBEmb5CIVd4o(m!v;-s+1bGjD z-x?=?3Hy-qxEVZi;@_tF@1N(vE_efQe4Q^oXV2LK4B*+^52oAyy-_phW`?^41!f%) zg1;Hj+(JtHxBZDAn%vSzB4sw_7;939)f>dl>^xb6gn!VA#aNc2dAcUB;4?$zSnQiw zd9Qa|CDwLpj(gsuw1z{jDUA$~X+X%s9M-ldAtW4 zo>Y@MDt&naa-G^?UvSrc_WFJJL~y3=xfDZ&U7D~j524#PV`)K9JEY1;UfW?mE?_o^ zbLCN$swJ8HnRr`W8gjmW2 z)|o`@MODj+@<_xZA)x`syUULi!Zuo{V=O zl#K1vMz`R%hdmj7hI0UNxB*!gw_JfeM`7ESM_R00F}CJiGWbA=D-B1^gJf%1_j8EM z7jacVkmlejKL2Iz9&QLHngbu%4>}!IttH1o(o9(iAmXs*mV~lTmt(+D>DX-{E9fN_ zDL8NOK>W`0x6B7gEt0PYjHohSSZJ&;s0dUJoH^6ZV0b z^Na3^>>(ti{midhf+V3R((?wS;)gaAg#VUkeF&mP4zD^vBp=SbV({?u5~p)r%57q& z=0~Ahhq68@QD$|8#V9h4oa~745^Jfw@CnF5CmmEH;YN5A%W*6<( z`=}8yWHqP7JnpHu@exN42xmaPuCv#&26^Ak$rHrAL~_I$TVNwAs4BC`o_F*34ZUXY zr4FznoPT(e6;7z6px(D5YFthpc?5X?&cR zS3R_ZSX8-sM%gcJX6CxHov`P*`@<7!wIg z<6OeG2eTaxjvOASrevG)QJJ$Vcnu3hM|W7TzyE*v%Sk%Lo9}5QSQb|Qg)Nh^yqa8* I3=Hvq09jRWDF6Tf literal 0 HcmV?d00001 diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg index 8ade7795..834a712a 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-pcb.snap.svg @@ -1 +1 @@ -U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file +U1R3C1I2C_PUR1R2R4D1LEDR5OX45OX46OX44pin1pin1pin2pin2pin3pin3pin4pin4pin5pin5J3GNDGNDVCCVCCSDASDASCLSCLJ2GNDGNDVCCVCCSDASDASCLSCLJ1 \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.diff.png b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.diff.png new file mode 100644 index 0000000000000000000000000000000000000000..74d23586f4b6d45e9eecddc01e092f295533dc98 GIT binary patch literal 56921 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

f8%HL+~i78rf0uDY$p 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 literal 0 HcmV?d00001 diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg index 69139147..4b956610 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -17,7 +17,7 @@ .pin-number { fill: rgb(169, 0, 0); } .port-label { fill: rgb(0, 100, 100); } .component-name { fill: rgb(0, 100, 100); } - OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SCLGNDV3_3GNDGNDV3_3SCLGNDINTSCLSDAV3_3GNDGNDV3_3ADDRINTSCLSDASDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file + M 649.38560181236,492.69969314077997 + L 652.2859972123424,486.8989023408152 + L 676.2984065361474,486.8989023408152 + L 676.2984065361474,498.50048394074474 + L 652.2859972123424,498.50048394074474 + Z + " fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="1.074220518512px"/>SCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx index ac3595ba..50f2e376 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/address.tsx @@ -1,8 +1,3 @@ -interface DisplacementProps { - x?: number - y?: number -} - export default ({ x = 0, y = 0 }: DisplacementProps) => ( ( ( /> ( = { pin1: "VDD", pin2: "ADDR", diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx index 8df5d6e5..35b6b152 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx @@ -1,10 +1,6 @@ +import { ChipProps } from "@tscircuit/props" import { sel } from "@tscircuit/core" -interface DisplacementProps { - x?: number - y?: number -} - const pinLabelsJ2: Record<`pin${number}`, string> = { pin4: "SCL", pin3: "SDA", @@ -23,12 +19,12 @@ export default ({ x = 0, y = 0 }: DisplacementProps) => ( - - - + + + ( manufacturerPartNumber="QWIIC_RIGHT_ANGLE" name="J1" schY={-1} + schPinSpacing={0.3} pinLabels={pinLabelsJ2} footprint="pinrow4_pinlabeltextalignright_pinlabelorthogonal_pinlabelverticallyinverted_doublesidedpinlabel" /> diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/holes.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/holes.tsx new file mode 100644 index 00000000..092dd588 --- /dev/null +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/holes.tsx @@ -0,0 +1,8 @@ +export default () => ( + <> + + + + + +) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx index 3864f7b1..4b8fb270 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/index.tsx @@ -3,6 +3,7 @@ import Jumpers from "./jumpers" import Sensor from "./color-sensor" import Address from "./address" import Connectors from "./connectors" +import Holes from "./holes" export default () => ( @@ -13,4 +14,4 @@ export default () => ( ) -export { Jumpers, Sensor, Address, Connectors } +export { Holes, Jumpers, Sensor, Address, Connectors } diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx index 1da2fa96..6ac25570 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/jumpers.tsx @@ -1,17 +1,8 @@ -interface DisplacementProps { - x?: number - y?: number -} - export default ({ x = 0, y = 0 }: DisplacementProps) => ( ( ( /> + ) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json index 63e0ce84..3943d369 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/manual-edits.json @@ -3,56 +3,56 @@ { "selector": "U1", "center": { - "x": -4.271595397714835, - "y": 5.489940467407534 + "x": 2.2502030804364352, + "y": 5.428163256457495 }, "relative_to": "group_center" }, { "selector": "J3", "center": { - "x": -9.7924038088105, - "y": -4.66635641732182 + "x": -0.8549000017833226, + "y": -11.64908172761491 }, "relative_to": "group_center" }, { "selector": "R3", "center": { - "x": -0.7428201996109323, - "y": 10.268075769661783 + "x": -3.727199484458084, + "y": -2.686270449273035 }, "relative_to": "group_center" }, { "selector": "I2C_PU", "center": { - "x": 4.313605873343384, - "y": 9.102196869514735 + "x": 6.066815645927074, + "y": 1.2023315019129175 }, "relative_to": "group_center" }, { "selector": "C1", "center": { - "x": -9.97045563897699, - "y": 5.3760595657787995 + "x": -2.339094944882282, + "y": 4.9953968003498925 }, "relative_to": "group_center" }, { "selector": "R1", "center": { - "x": 2.067744559807096, - "y": 6.097195496867082 + "x": 7.825594654506169, + "y": 4.352000978683465 }, "relative_to": "group_center" }, { "selector": "J2", "center": { - "x": 0.5832100040481549, - "y": -2.7569927464094697 + "x": -5.787064804323586, + "y": 1.4325424571519605 }, "relative_to": "group_center" }, @@ -67,24 +67,24 @@ { "selector": "D1", "center": { - "x": 10.237398247324702, - "y": 7.316634596240499 + "x": 10.55082732453246, + "y": 7.686068441327448 }, "relative_to": "group_center" }, { "selector": "R2", "center": { - "x": 6.5213482270839265, - "y": 5.832100040481555 + "x": 5.613915167767244, + "y": 4.277551319413394 }, "relative_to": "group_center" }, { "selector": "R4", "center": { - "x": 10.391741890312588, - "y": 10.550799164143909 + "x": 8.226742748762582, + "y": 7.844550237206402 }, "relative_to": "group_center" }, @@ -99,32 +99,32 @@ { "selector": "R5", "center": { - "x": 11.080990076914958, - "y": -1.1134009168192094 + "x": -5.458969271752315, + "y": -2.6766936034683457 }, "relative_to": "group_center" }, { "selector": "OX45", "center": { - "x": 8.063615504963398, - "y": -3.6052982068431447 + "x": -1.905596850327476, + "y": -0.6276070354743863 }, "relative_to": "group_center" }, { "selector": "OX46", "center": { - "x": 8.010596413686283, - "y": -6.6804055009152385 + "x": 0.356835322373815, + "y": 1.5708702947969293 }, "relative_to": "group_center" }, { "selector": "OX44", "center": { - "x": 8.01059641368629, - "y": -9.914570068818648 + "x": -1.078496780801587, + "y": -3.1897513495254888 }, "relative_to": "group_center" } From c2ab7b36de4900f50bec96da4e0682701210d218 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Mon, 28 Jul 2025 22:53:52 +0530 Subject: [PATCH 24/26] chore: remove LICENSE file from OPT4048DTSR board --- .../LICENSE | 21 ------------------- 1 file changed, 21 deletions(-) delete mode 100644 boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/LICENSE diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/LICENSE b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/LICENSE deleted file mode 100644 index f1b30a79..00000000 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 ArnavK-09 - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file From 330c65a1db30f130c0fde2e9afb60ff0b8a74f66 Mon Sep 17 00:00:00 2001 From: Arnav K Date: Mon, 28 Jul 2025 23:01:29 +0530 Subject: [PATCH 25/26] refactor(OPT4048DTSR): improve type imports and simplify connectors - Use type-only imports for ChipProps to optimize bundle size - Remove duplicate pin labels in connectors.tsx - Replace manual traces with netlabel for better readability in address.tsx --- ...r - OPT4048DTSR.circuit-schematic.snap.svg | 30 +++++-------------- .../address.tsx | 11 +++++-- .../color-sensor.tsx | 2 +- .../connectors.tsx | 9 ------ 4 files changed, 17 insertions(+), 35 deletions(-) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg index 4b956610..bba3edbf 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -17,7 +17,7 @@ .pin-number { fill: rgb(169, 0, 0); } .port-label { fill: rgb(0, 100, 100); } .component-name { fill: rgb(0, 100, 100); } - OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SCLGNDADDRSDAADDRADDRADDR - - - + + .pin2", ".OX45 > .pin2", ".OX46 > .pin2"]} + /> ) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx index 5fbcb08b..ad96de45 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/color-sensor.tsx @@ -1,4 +1,4 @@ -import { ChipProps } from "@tscircuit/props" +import type { ChipProps } from "@tscircuit/props" import { sel } from "@tscircuit/core" const pinLabels: Record<`pin${number}`, string> = { diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx index 35b6b152..a30ccd3c 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/connectors.tsx @@ -1,18 +1,9 @@ -import { ChipProps } from "@tscircuit/props" -import { sel } from "@tscircuit/core" - const pinLabelsJ2: Record<`pin${number}`, string> = { pin4: "SCL", pin3: "SDA", pin2: "VCC", pin1: "GND", } -const pinLabelsJ3: Record<`pin${number}`, string> = { - pin4: "SCL", - pin3: "SDA", - pin2: "VCC", - pin1: "GND", -} export default ({ x = 0, y = 0 }: DisplacementProps) => ( From 938ddff480b414db4ca86588af1b1a73fc291cca Mon Sep 17 00:00:00 2001 From: Arnav K Date: Mon, 28 Jul 2025 23:13:37 +0530 Subject: [PATCH 26/26] chore: update circuit schematic diff image for OPT4048DTSR sensor --- ...r - OPT4048DTSR.circuit-schematic.diff.png | Bin 56921 -> 54026 bytes ...r - OPT4048DTSR.circuit-schematic.snap.svg | 228 +++++++++--------- 2 files changed, 114 insertions(+), 114 deletions(-) diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.diff.png b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.diff.png index 74d23586f4b6d45e9eecddc01e092f295533dc98..007bda5014e2aa3f1a005ac746fe3cc5e702a1ee 100644 GIT binary patch literal 54026 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

f8%HL+~i78rf0uDY$p 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 diff --git a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg index bba3edbf..02eef560 100644 --- a/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg +++ b/boards/SparkFun Tristimulus Color Sensor - OPT4048DTSR/__snapshots__/SparkFun Tristimulus Color Sensor - OPT4048DTSR.circuit-schematic.snap.svg @@ -1,4 +1,4 @@ -OPT4048U11VDD2ADDR4GND5SCL7INT8SDAR310ΩC1100nFI2C_PUR12.2ΩR22.2ΩR44.7ΩREDD1LEDR510kΩOX45OX46OX44J312345QWIIC_RIGHT_ANGLEJ24SCL3SDA2VCC1GNDQWIIC_RIGHT_ANGLEJ14SCL3SDA2VCC1GNDGNDV3_3SDASCLGNDADDRINTSCLSDAV3_3GNDGNDV3_3SCLSDAADDRINTV3_3INTGNDV3_3V3_3V3_3GNDV3_3SDASCLSDASCLSDAVDD Range: 1.71V - 3.6VCut traces to remove I2C pull-up resistors.Cut trace to disconnect Power LED. \ No newline at end of file