(kicad_sch (version 20211123) (generator eeschema)

  (uuid 406d491e-5b01-46dc-a768-fd0992cdb346)

  (paper "A4")

  (title_block
    (title "icE1usb - FPGA and related digital")
    (date "2020-08-26")
    (rev "1.0")
    (comment 1 "CERN-OHL-S")
    (comment 2 "(C) 2020 Sylvain Munaut")
  )

  (lib_symbols
    (symbol "74xx:74HC595" (in_bom yes) (on_board yes)
      (property "Reference" "U" (id 0) (at -7.62 13.97 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Value" "74HC595" (id 1) (at -7.62 -16.51 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "http://www.ti.com/lit/ds/symlink/sn74hc595.pdf" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "HCMOS SR 3State" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "8-bit serial in/out Shift Register 3-State Outputs" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "DIP*W7.62mm* SOIC*3.9x9.9mm*P1.27mm* TSSOP*4.4x5mm*P0.65mm* SOIC*5.3x10.2mm*P1.27mm* SOIC*7.5x10.3mm*P1.27mm*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "74HC595_1_0"
        (pin tri_state line (at 10.16 7.62 180) (length 2.54)
          (name "QB" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 2.54 0) (length 2.54)
          (name "~{SRCLR}" (effects (font (size 1.27 1.27))))
          (number "10" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 5.08 0) (length 2.54)
          (name "SRCLK" (effects (font (size 1.27 1.27))))
          (number "11" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 -2.54 0) (length 2.54)
          (name "RCLK" (effects (font (size 1.27 1.27))))
          (number "12" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 -5.08 0) (length 2.54)
          (name "~{OE}" (effects (font (size 1.27 1.27))))
          (number "13" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 10.16 0) (length 2.54)
          (name "SER" (effects (font (size 1.27 1.27))))
          (number "14" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 10.16 180) (length 2.54)
          (name "QA" (effects (font (size 1.27 1.27))))
          (number "15" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 0 15.24 270) (length 2.54)
          (name "VCC" (effects (font (size 1.27 1.27))))
          (number "16" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 5.08 180) (length 2.54)
          (name "QC" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 2.54 180) (length 2.54)
          (name "QD" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 0 180) (length 2.54)
          (name "QE" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 -2.54 180) (length 2.54)
          (name "QF" (effects (font (size 1.27 1.27))))
          (number "5" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 -5.08 180) (length 2.54)
          (name "QG" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
        (pin tri_state line (at 10.16 -7.62 180) (length 2.54)
          (name "QH" (effects (font (size 1.27 1.27))))
          (number "7" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 0 -17.78 90) (length 2.54)
          (name "GND" (effects (font (size 1.27 1.27))))
          (number "8" (effects (font (size 1.27 1.27))))
        )
        (pin output line (at 10.16 -12.7 180) (length 2.54)
          (name "QH'" (effects (font (size 1.27 1.27))))
          (number "9" (effects (font (size 1.27 1.27))))
        )
      )
      (symbol "74HC595_1_1"
        (rectangle (start -7.62 12.7) (end 7.62 -15.24)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
      )
    )
    (symbol "Connector_Generic:Conn_02x04_Odd_Even" (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes)
      (property "Reference" "J" (id 0) (at 1.27 5.08 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Value" "Conn_02x04_Odd_Even" (id 1) (at 1.27 -7.62 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "connector" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Generic connector, double row, 02x04, odd/even pin numbering scheme (row 1 odd numbers, row 2 even numbers), script generated (kicad-library-utils/schlib/autogen/connector/)" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "Connector*:*_2x??_*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "Conn_02x04_Odd_Even_1_1"
        (rectangle (start -1.27 -4.953) (end 0 -5.207)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start -1.27 -2.413) (end 0 -2.667)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start -1.27 0.127) (end 0 -0.127)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start -1.27 2.667) (end 0 2.413)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start -1.27 3.81) (end 3.81 -6.35)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
        (rectangle (start 3.81 -4.953) (end 2.54 -5.207)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 3.81 -2.413) (end 2.54 -2.667)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 3.81 0.127) (end 2.54 -0.127)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 3.81 2.667) (end 2.54 2.413)
          (stroke (width 0.1524) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (pin passive line (at -5.08 2.54 0) (length 3.81)
          (name "Pin_1" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 7.62 2.54 180) (length 3.81)
          (name "Pin_2" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -5.08 0 0) (length 3.81)
          (name "Pin_3" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 7.62 0 180) (length 3.81)
          (name "Pin_4" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -5.08 -2.54 0) (length 3.81)
          (name "Pin_5" (effects (font (size 1.27 1.27))))
          (number "5" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 7.62 -2.54 180) (length 3.81)
          (name "Pin_6" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -5.08 -5.08 0) (length 3.81)
          (name "Pin_7" (effects (font (size 1.27 1.27))))
          (number "7" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 7.62 -5.08 180) (length 3.81)
          (name "Pin_8" (effects (font (size 1.27 1.27))))
          (number "8" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "Device:C_Small" (pin_numbers hide) (pin_names (offset 0.254) hide) (in_bom yes) (on_board yes)
      (property "Reference" "C" (id 0) (at 0.254 1.778 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "C_Small" (id 1) (at 0.254 -2.032 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "capacitor cap" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Unpolarized capacitor, small symbol" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "C_*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "C_Small_0_1"
        (polyline
          (pts
            (xy -1.524 -0.508)
            (xy 1.524 -0.508)
          )
          (stroke (width 0.3302) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.524 0.508)
            (xy 1.524 0.508)
          )
          (stroke (width 0.3048) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "C_Small_1_1"
        (pin passive line (at 0 2.54 270) (length 2.032)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 -2.54 90) (length 2.032)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "Device:LED_Small" (pin_numbers hide) (pin_names (offset 0.254) hide) (in_bom yes) (on_board yes)
      (property "Reference" "D" (id 0) (at -1.27 3.175 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "LED_Small" (id 1) (at -4.445 -2.54 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 90)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 90)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "LED diode light-emitting-diode" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Light emitting diode, small symbol" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "LED* LED_SMD:* LED_THT:*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "LED_Small_0_1"
        (polyline
          (pts
            (xy -0.762 -1.016)
            (xy -0.762 1.016)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.016 0)
            (xy -0.762 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.762 -1.016)
            (xy -0.762 0)
            (xy 0.762 1.016)
            (xy 0.762 -1.016)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 0.762)
            (xy -0.508 1.27)
            (xy -0.254 1.27)
            (xy -0.508 1.27)
            (xy -0.508 1.016)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.508 1.27)
            (xy 0 1.778)
            (xy 0.254 1.778)
            (xy 0 1.778)
            (xy 0 1.524)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "LED_Small_1_1"
        (pin passive line (at -2.54 0 0) (length 1.778)
          (name "K" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 2.54 0 180) (length 1.778)
          (name "A" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "Device:R_Pack04" (pin_names (offset 0) hide) (in_bom yes) (on_board yes)
      (property "Reference" "RN" (id 0) (at -7.62 0 90)
        (effects (font (size 1.27 1.27)))
      )
      (property "Value" "R_Pack04" (id 1) (at 5.08 0 90)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 6.985 0 90)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "R network parallel topology isolated" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "4 resistor network, parallel topology" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "DIP* SOIC* R*Array*Concave* R*Array*Convex*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "R_Pack04_0_1"
        (rectangle (start -6.35 -2.413) (end 3.81 2.413)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
        (rectangle (start -5.715 1.905) (end -4.445 -1.905)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start -3.175 1.905) (end -1.905 -1.905)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start -0.635 1.905) (end 0.635 -1.905)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -5.08 -2.54)
            (xy -5.08 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -5.08 1.905)
            (xy -5.08 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -2.54 -2.54)
            (xy -2.54 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -2.54 1.905)
            (xy -2.54 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 -2.54)
            (xy 0 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 1.905)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 -2.54)
            (xy 2.54 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 1.905)
            (xy 2.54 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 1.905 1.905) (end 3.175 -1.905)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "R_Pack04_1_1"
        (pin passive line (at -5.08 -5.08 90) (length 2.54)
          (name "R1.1" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -2.54 -5.08 90) (length 2.54)
          (name "R2.1" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 -5.08 90) (length 2.54)
          (name "R3.1" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 2.54 -5.08 90) (length 2.54)
          (name "R4.1" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 2.54 5.08 270) (length 2.54)
          (name "R4.2" (effects (font (size 1.27 1.27))))
          (number "5" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 5.08 270) (length 2.54)
          (name "R3.2" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -2.54 5.08 270) (length 2.54)
          (name "R2.2" (effects (font (size 1.27 1.27))))
          (number "7" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -5.08 5.08 270) (length 2.54)
          (name "R1.2" (effects (font (size 1.27 1.27))))
          (number "8" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "Device:R_Small" (pin_numbers hide) (pin_names (offset 0.254) hide) (in_bom yes) (on_board yes)
      (property "Reference" "R" (id 0) (at 0.762 0.508 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "R_Small" (id 1) (at 0.762 -1.016 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "R resistor" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Resistor, small symbol" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "R_*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "R_Small_0_1"
        (rectangle (start -0.762 1.778) (end 0.762 -1.778)
          (stroke (width 0.2032) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "R_Small_1_1"
        (pin passive line (at 0 2.54 270) (length 0.762)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 -2.54 90) (length 0.762)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "Switch:SW_Push" (pin_numbers hide) (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes)
      (property "Reference" "SW" (id 0) (at 1.27 2.54 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "SW_Push" (id 1) (at 0 -1.524 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 5.08 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 5.08 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "switch normally-open pushbutton push-button" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Push button switch, generic, two pins" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "SW_Push_0_1"
        (circle (center -2.032 0) (radius 0.508)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 1.27)
            (xy 0 3.048)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 1.27)
            (xy -2.54 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 2.032 0) (radius 0.508)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (pin passive line (at -5.08 0 0) (length 2.54)
          (name "1" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 5.08 0 180) (length 2.54)
          (name "2" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:+1V2" (power) (pin_names (offset 0)) (in_bom yes) (on_board yes)
      (property "Reference" "#PWR" (id 0) (at 0 -3.81 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "+1V2" (id 1) (at 0 3.556 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Power symbol creates a global label with name \"+1V2\"" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "+1V2_0_1"
        (polyline
          (pts
            (xy -0.762 1.27)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 0)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 2.54)
            (xy 0.762 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "+1V2_1_1"
        (pin power_in line (at 0 0 90) (length 0) hide
          (name "+1V2" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:+3V3" (power) (pin_names (offset 0)) (in_bom yes) (on_board yes)
      (property "Reference" "#PWR" (id 0) (at 0 -3.81 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "+3V3" (id 1) (at 0 3.556 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Power symbol creates a global label with name \"+3V3\"" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "+3V3_0_1"
        (polyline
          (pts
            (xy -0.762 1.27)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 0)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 2.54)
            (xy 0.762 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "+3V3_1_1"
        (pin power_in line (at 0 0 90) (length 0) hide
          (name "+3V3" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:+5V" (power) (pin_names (offset 0)) (in_bom yes) (on_board yes)
      (property "Reference" "#PWR" (id 0) (at 0 -3.81 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "+5V" (id 1) (at 0 3.556 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Power symbol creates a global label with name \"+5V\"" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "+5V_0_1"
        (polyline
          (pts
            (xy -0.762 1.27)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 0)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 2.54)
            (xy 0.762 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "+5V_1_1"
        (pin power_in line (at 0 0 90) (length 0) hide
          (name "+5V" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:GND" (power) (pin_names (offset 0)) (in_bom yes) (on_board yes)
      (property "Reference" "#PWR" (id 0) (at 0 -6.35 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "GND" (id 1) (at 0 -3.81 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Power symbol creates a global label with name \"GND\" , ground" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "GND_0_1"
        (polyline
          (pts
            (xy 0 0)
            (xy 0 -1.27)
            (xy 1.27 -1.27)
            (xy 0 -2.54)
            (xy -1.27 -1.27)
            (xy 0 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "GND_1_1"
        (pin power_in line (at 0 0 270) (length 0) hide
          (name "GND" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:PWR_FLAG" (power) (pin_numbers hide) (pin_names (offset 0) hide) (in_bom yes) (on_board yes)
      (property "Reference" "#FLG" (id 0) (at 0 1.905 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "PWR_FLAG" (id 1) (at 0 3.81 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Special symbol for telling ERC where power comes from" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "PWR_FLAG_0_0"
        (pin power_out line (at 0 0 90) (length 0)
          (name "pwr" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
      (symbol "PWR_FLAG_0_1"
        (polyline
          (pts
            (xy 0 0)
            (xy 0 1.27)
            (xy -1.016 1.905)
            (xy 0 2.54)
            (xy 1.016 1.905)
            (xy 0 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
    )
    (symbol "s47-chips:ICE40UP5K-SG48" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
      (property "Reference" "U" (id 0) (at -27.94 71.12 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "s47-chips_ICE40UP5K-SG48" (id 1) (at -27.94 68.58 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.3x5.3mm" (id 2) (at 0 -77.47 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 7.62 38.1 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "QFN*48*7x7mm*" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "ICE40UP5K-SG48_0_0"
        (text "Bank 0" (at 0 -36.83 900)
          (effects (font (size 1.27 1.27)))
        )
        (text "Bank 0" (at 0 -36.83 900)
          (effects (font (size 1.27 1.27)))
        )
        (text "Bank 1" (at 0 13.97 900)
          (effects (font (size 1.27 1.27)))
        )
        (text "Bank 1" (at 0 13.97 900)
          (effects (font (size 1.27 1.27)))
        )
        (text "Bank 2" (at 0 49.53 900)
          (effects (font (size 1.27 1.27)))
        )
        (text "Bank 2" (at 0 49.53 900)
          (effects (font (size 1.27 1.27)))
        )
      )
      (symbol "ICE40UP5K-SG48_0_1"
        (rectangle (start -20.32 66.04) (end 20.32 -66.04)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
        (polyline
          (pts
            (xy 19.685 -45.72)
            (xy 19.685 -48.26)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -45.72)
            (xy 19.685 -48.26)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -40.64)
            (xy 19.685 -43.18)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -40.64)
            (xy 19.685 -43.18)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -33.02)
            (xy 19.685 -35.56)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -33.02)
            (xy 19.685 -35.56)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -27.94)
            (xy 19.685 -30.48)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -27.94)
            (xy 19.685 -30.48)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -20.32)
            (xy 19.685 -22.86)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -20.32)
            (xy 19.685 -22.86)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -15.24)
            (xy 19.685 -17.78)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 -15.24)
            (xy 19.685 -17.78)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 10.16)
            (xy 19.685 7.62)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 10.16)
            (xy 19.685 7.62)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 15.24)
            (xy 19.685 12.7)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 15.24)
            (xy 19.685 12.7)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 43.18)
            (xy 19.685 40.64)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 43.18)
            (xy 19.685 40.64)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 50.8)
            (xy 19.685 48.26)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 50.8)
            (xy 19.685 48.26)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 55.88)
            (xy 19.685 53.34)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 19.685 55.88)
            (xy 19.685 53.34)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 -13.97)
            (xy 1.27 -15.24)
            (xy 1.27 -58.42)
            (xy 2.54 -59.69)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 -13.97)
            (xy 1.27 -15.24)
            (xy 1.27 -58.42)
            (xy 2.54 -59.69)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 34.29)
            (xy 1.27 33.02)
            (xy 1.27 -7.62)
            (xy 2.54 -8.89)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 34.29)
            (xy 1.27 33.02)
            (xy 1.27 -7.62)
            (xy 2.54 -8.89)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 39.37)
            (xy 1.27 40.64)
            (xy 1.27 58.42)
            (xy 2.54 59.69)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 39.37)
            (xy 1.27 40.64)
            (xy 1.27 58.42)
            (xy 2.54 59.69)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "ICE40UP5K-SG48_1_1"
        (pin power_in line (at -22.86 58.42 0) (length 2.54)
          (name "VCC_IO2" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 20.32 180) (length 2.54)
          (name "IOB_18A" (effects (font (size 1.27 1.27))))
          (number "10" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 17.78 180) (length 2.54)
          (name "IOB_20A" (effects (font (size 1.27 1.27))))
          (number "11" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 15.24 180) (length 2.54)
          (name "IOB_22A" (effects (font (size 1.27 1.27))))
          (number "12" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 10.16 180) (length 2.54)
          (name "IOB_24A" (effects (font (size 1.27 1.27))))
          (number "13" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 0 180) (length 2.54)
          (name "SPI_SDO/IOB_32A" (effects (font (size 1.27 1.27))))
          (number "14" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -5.08 180) (length 2.54)
          (name "SPI_SCK/IOB_34A" (effects (font (size 1.27 1.27))))
          (number "15" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -7.62 180) (length 2.54)
          (name "~{SPI_CSn}/IOB_35B" (effects (font (size 1.27 1.27))))
          (number "16" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -2.54 180) (length 2.54)
          (name "SPI_SDI/IOB_33B" (effects (font (size 1.27 1.27))))
          (number "17" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 2.54 180) (length 2.54)
          (name "IOB_31B" (effects (font (size 1.27 1.27))))
          (number "18" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 5.08 180) (length 2.54)
          (name "IOB_29B" (effects (font (size 1.27 1.27))))
          (number "19" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 45.72 180) (length 2.54)
          (name "IOB_6A" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 7.62 180) (length 2.54)
          (name "G3/IOB_25B" (effects (font (size 1.27 1.27))))
          (number "20" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 12.7 180) (length 2.54)
          (name "IOB_23B" (effects (font (size 1.27 1.27))))
          (number "21" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at -22.86 33.02 0) (length 2.54)
          (name "VCC_IO1" (effects (font (size 1.27 1.27))))
          (number "22" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -17.78 180) (length 2.54)
          (name "IOT_37A" (effects (font (size 1.27 1.27))))
          (number "23" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at -7.62 68.58 270) (length 2.54)
          (name "VPP_2V5" (effects (font (size 1.27 1.27))))
          (number "24" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -15.24 180) (length 2.54)
          (name "IOT_36B" (effects (font (size 1.27 1.27))))
          (number "25" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -22.86 180) (length 2.54)
          (name "IOT_39A" (effects (font (size 1.27 1.27))))
          (number "26" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -20.32 180) (length 2.54)
          (name "IOT_38B" (effects (font (size 1.27 1.27))))
          (number "27" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -25.4 180) (length 2.54)
          (name "IOT_41A" (effects (font (size 1.27 1.27))))
          (number "28" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at -2.54 68.58 270) (length 2.54)
          (name "VCC_PLL" (effects (font (size 1.27 1.27))))
          (number "29" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 40.64 180) (length 2.54)
          (name "IOB_9B" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 7.62 68.58 270) (length 2.54)
          (name "VCC" (effects (font (size 1.27 1.27))))
          (number "30" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -27.94 180) (length 2.54)
          (name "IOT_42B" (effects (font (size 1.27 1.27))))
          (number "31" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -30.48 180) (length 2.54)
          (name "IOT_43A" (effects (font (size 1.27 1.27))))
          (number "32" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at -22.86 -15.24 0) (length 2.54)
          (name "VCC_IO0" (effects (font (size 1.27 1.27))))
          (number "33" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -33.02 180) (length 2.54)
          (name "IOT_44B" (effects (font (size 1.27 1.27))))
          (number "34" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -38.1 180) (length 2.54)
          (name "G0/IOT_46B" (effects (font (size 1.27 1.27))))
          (number "35" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -40.64 180) (length 2.54)
          (name "IOT_48B" (effects (font (size 1.27 1.27))))
          (number "36" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -35.56 180) (length 2.54)
          (name "G1/IOT_45A" (effects (font (size 1.27 1.27))))
          (number "37" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -45.72 180) (length 2.54)
          (name "IOT_50B" (effects (font (size 1.27 1.27))))
          (number "38" (effects (font (size 1.27 1.27))))
        )
        (pin open_collector line (at 22.86 -58.42 180) (length 2.54)
          (name "RGB0" (effects (font (size 1.27 1.27))))
          (number "39" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 43.18 180) (length 2.54)
          (name "IOB_8A" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin open_collector line (at 22.86 -55.88 180) (length 2.54)
          (name "RGB1" (effects (font (size 1.27 1.27))))
          (number "40" (effects (font (size 1.27 1.27))))
        )
        (pin open_collector line (at 22.86 -53.34 180) (length 2.54)
          (name "RGB2" (effects (font (size 1.27 1.27))))
          (number "41" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -48.26 180) (length 2.54)
          (name "IOT_51A" (effects (font (size 1.27 1.27))))
          (number "42" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 -43.18 180) (length 2.54)
          (name "IOT_49A" (effects (font (size 1.27 1.27))))
          (number "43" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 53.34 180) (length 2.54)
          (name "G6/IOB_3B" (effects (font (size 1.27 1.27))))
          (number "44" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 48.26 180) (length 2.54)
          (name "IOB_5B" (effects (font (size 1.27 1.27))))
          (number "45" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 58.42 180) (length 2.54)
          (name "IOB_0A" (effects (font (size 1.27 1.27))))
          (number "46" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 55.88 180) (length 2.54)
          (name "IOB_2A" (effects (font (size 1.27 1.27))))
          (number "47" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 50.8 180) (length 2.54)
          (name "IOB_4A" (effects (font (size 1.27 1.27))))
          (number "48" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 0 -68.58 90) (length 2.54)
          (name "GND" (effects (font (size 1.27 1.27))))
          (number "49" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 2.54 68.58 270) (length 2.54)
          (name "VCC" (effects (font (size 1.27 1.27))))
          (number "5" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 25.4 180) (length 2.54)
          (name "IOB_13B" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
        (pin open_collector line (at 22.86 33.02 180) (length 2.54)
          (name "CDONE" (effects (font (size 1.27 1.27))))
          (number "7" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at 22.86 30.48 180) (length 2.54)
          (name "~{CRESET_B}" (effects (font (size 1.27 1.27))))
          (number "8" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at 22.86 22.86 180) (length 2.54)
          (name "IOB_16A" (effects (font (size 1.27 1.27))))
          (number "9" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "s47-chips:IP4220CZ6" (in_bom yes) (on_board yes)
      (property "Reference" "U" (id 0) (at -6.985 -2.54 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Value" "s47-chips_IP4220CZ6" (id 1) (at 6.35 1.27 90)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "Package_SO:TSOP-6_1.65x3.05mm_P0.95mm" (id 2) (at 1.27 1.905 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 1.27 1.905 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "TSOP?6*" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "IP4220CZ6_0_1"
        (rectangle (start -5.334 3.048) (end 5.08 -3.048)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
        (circle (center -3.81 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -3.81 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -1.27 -2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -1.27 -2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -1.27 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -1.27 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -1.27 2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center -1.27 2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 0 -2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 0 -2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -4.445 -1.27)
            (xy -3.175 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -4.445 -1.27)
            (xy -3.175 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -4.445 1.905)
            (xy -3.175 1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 -2.54)
            (xy -3.81 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 -2.54)
            (xy 3.81 -2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 -0.635)
            (xy -3.81 0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 0.635)
            (xy -3.81 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 2.54)
            (xy 3.81 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 2.54)
            (xy 3.81 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.905 -1.27)
            (xy -0.635 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.905 -1.27)
            (xy -0.635 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.905 1.905)
            (xy -0.635 1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 -2.54)
            (xy -1.27 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 -2.54)
            (xy -1.27 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 0.635)
            (xy -1.27 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 0.635)
            (xy -1.27 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 -0.889)
            (xy 0 -3.81)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 -0.889)
            (xy 0 1.016)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 -0.889)
            (xy 0 1.016)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 1.016)
            (xy 0 3.81)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.635 -1.27)
            (xy 1.905 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.635 -1.27)
            (xy 1.905 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.635 1.905)
            (xy 1.905 1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 -2.54)
            (xy 1.27 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 -2.54)
            (xy 1.27 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 0.635)
            (xy 1.27 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 0.635)
            (xy 1.27 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.175 -1.27)
            (xy 4.445 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.175 -1.27)
            (xy 4.445 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.175 1.905)
            (xy 4.445 1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.81 -2.54)
            (xy 3.81 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.81 0.635)
            (xy 3.81 -0.635)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.81 0.635)
            (xy 3.81 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.762 0.254)
            (xy -0.762 0.254)
            (xy -0.762 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -4.445 -1.905)
            (xy -3.175 -1.905)
            (xy -3.81 -1.27)
            (xy -4.445 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -4.445 1.27)
            (xy -3.175 1.27)
            (xy -3.81 1.905)
            (xy -4.445 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -2.54 -2.54)
            (xy -2.54 -0.635)
            (xy -3.048 0)
            (xy -3.937 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -2.54 2.54)
            (xy -2.54 0.762)
            (xy -1.905 0)
            (xy -1.27 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.905 -1.905)
            (xy -0.635 -1.905)
            (xy -1.27 -1.27)
            (xy -1.905 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.905 1.27)
            (xy -0.635 1.27)
            (xy -1.27 1.905)
            (xy -1.905 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -0.762 -0.508)
            (xy 0.762 -0.508)
            (xy 0 0.254)
            (xy -0.762 -0.508)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -0.762 -0.508)
            (xy 0.762 -0.508)
            (xy 0 0.254)
            (xy -0.762 -0.508)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.635 -1.905)
            (xy 1.905 -1.905)
            (xy 1.27 -1.27)
            (xy 0.635 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0.635 1.27)
            (xy 1.905 1.27)
            (xy 1.27 1.905)
            (xy 0.635 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 -2.54)
            (xy 2.54 -0.508)
            (xy 2.921 0)
            (xy 3.81 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 2.54)
            (xy 2.54 0.762)
            (xy 1.905 0)
            (xy 1.143 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.175 -1.905)
            (xy 4.445 -1.905)
            (xy 3.81 -1.27)
            (xy 3.175 -1.905)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.175 1.27)
            (xy 4.445 1.27)
            (xy 3.81 1.905)
            (xy 3.175 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 0 2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 0 2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 1.27 -2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 1.27 -2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 1.27 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 1.27 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 1.27 2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 1.27 2.54) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 3.81 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 3.81 0) (radius 0.127)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "IP4220CZ6_1_1"
        (pin passive line (at -2.54 -5.08 90) (length 2.54)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 -5.08 90) (length 2.54)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 2.54 -5.08 90) (length 2.54)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 2.54 5.08 270) (length 2.54)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 5.08 270) (length 2.54)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "5" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -2.54 5.08 270) (length 2.54)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "s47-chips:SPI_FLASH_8P" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
      (property "Reference" "U" (id 0) (at -7.62 11.43 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "s47-chips_SPI_FLASH_8P" (id 1) (at -7.62 8.89 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "SPI_FLASH_8P_0_0"
        (rectangle (start -7.62 7.62) (end 7.62 -10.16)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
      )
      (symbol "SPI_FLASH_8P_1_1"
        (pin input line (at -10.16 -7.62 0) (length 2.54)
          (name "~{CS}" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at -10.16 2.54 0) (length 2.54)
          (name "SIO1/SO" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at -10.16 0 0) (length 2.54)
          (name "SIO2/~{W}" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 10.16 -7.62 180) (length 2.54)
          (name "VSS" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at -10.16 5.08 0) (length 2.54)
          (name "SIO0/SI" (effects (font (size 1.27 1.27))))
          (number "5" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 -5.08 0) (length 2.54)
          (name "SCK" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
        (pin bidirectional line (at -10.16 -2.54 0) (length 2.54)
          (name "SIO3/~{HOLD}" (effects (font (size 1.27 1.27))))
          (number "7" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 10.16 5.08 180) (length 2.54)
          (name "VCC" (effects (font (size 1.27 1.27))))
          (number "8" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "s47-device:LED_RBAG" (pin_names (offset 0) hide) (in_bom yes) (on_board yes)
      (property "Reference" "D" (id 0) (at 0 9.398 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Value" "s47-device_LED_RBAG" (id 1) (at 0 -8.89 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 -1.27 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 -1.27 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "LED* LED_SMD:* LED_THT:*" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "LED_RBAG_0_0"
        (text "B" (at -1.905 -6.35 0)
          (effects (font (size 1.27 1.27)))
        )
        (text "G" (at -1.905 -1.27 0)
          (effects (font (size 1.27 1.27)))
        )
        (text "R" (at -1.905 3.81 0)
          (effects (font (size 1.27 1.27)))
        )
      )
      (symbol "LED_RBAG_0_1"
        (polyline
          (pts
            (xy -1.27 -5.08)
            (xy -2.54 -5.08)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 -5.08)
            (xy 1.27 -5.08)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 -3.81)
            (xy -1.27 -6.35)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 0)
            (xy -2.54 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 1.27)
            (xy -1.27 -1.27)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 5.08)
            (xy -2.54 5.08)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 5.08)
            (xy 1.27 5.08)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 6.35)
            (xy -1.27 3.81)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 0)
            (xy -1.27 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 0)
            (xy 2.54 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 1.27)
            (xy -1.27 -1.27)
            (xy -1.27 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 6.35)
            (xy -1.27 3.81)
            (xy -1.27 3.81)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 -5.08)
            (xy 2.032 -5.08)
            (xy 2.032 5.08)
            (xy 1.27 5.08)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 -3.81)
            (xy 1.27 -6.35)
            (xy -1.27 -5.08)
            (xy 1.27 -3.81)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 1.27)
            (xy 1.27 -1.27)
            (xy -1.27 0)
            (xy 1.27 1.27)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 1.27 6.35)
            (xy 1.27 3.81)
            (xy -1.27 5.08)
            (xy 1.27 6.35)
          )
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.016 -3.81)
            (xy 0.508 -2.286)
            (xy -0.254 -2.286)
            (xy 0.508 -2.286)
            (xy 0.508 -3.048)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.016 1.27)
            (xy 0.508 2.794)
            (xy -0.254 2.794)
            (xy 0.508 2.794)
            (xy 0.508 2.032)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.016 6.35)
            (xy 0.508 7.874)
            (xy -0.254 7.874)
            (xy 0.508 7.874)
            (xy 0.508 7.112)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 -3.81)
            (xy 1.524 -2.286)
            (xy 0.762 -2.286)
            (xy 1.524 -2.286)
            (xy 1.524 -3.048)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 1.27)
            (xy 1.524 2.794)
            (xy 0.762 2.794)
            (xy 1.524 2.794)
            (xy 1.524 2.032)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 6.35)
            (xy 1.524 7.874)
            (xy 0.762 7.874)
            (xy 1.524 7.874)
            (xy 1.524 7.112)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 1.27 -1.27) (end 1.27 1.27)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 1.27 1.27) (end 1.27 1.27)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 1.27 3.81) (end 1.27 6.35)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (rectangle (start 1.27 6.35) (end 1.27 6.35)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (circle (center 2.032 0) (radius 0.254)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type outline))
        )
        (rectangle (start 2.794 8.382) (end -2.794 -7.62)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
      )
      (symbol "LED_RBAG_1_1"
        (pin passive line (at -5.08 5.08 0) (length 2.54)
          (name "RK" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -5.08 -5.08 0) (length 2.54)
          (name "BK" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 5.08 0 180) (length 2.54)
          (name "A" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at -5.08 0 0) (length 2.54)
          (name "GK" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "s47-device:VCXO_6_TUNE_OE" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
      (property "Reference" "U" (id 0) (at 1.27 11.43 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "s47-device_VCXO_6_TUNE_OE" (id 1) (at 1.27 8.89 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "s47-misc:Oscillator_SMD_VCXO-6Pin_7.0x5.0mm_P2.54mm" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "VCXO_6_TUNE_OE_1_1"
        (rectangle (start -7.62 7.62) (end 7.62 -7.62)
          (stroke (width 0.254) (type default) (color 0 0 0 0))
          (fill (type background))
        )
        (polyline
          (pts
            (xy -1.27 -0.762)
            (xy -1.016 -0.762)
            (xy -1.016 0.762)
            (xy -0.508 0.762)
            (xy -0.508 -0.762)
            (xy 0 -0.762)
            (xy 0 0.762)
            (xy 0.508 0.762)
            (xy 0.508 -0.762)
            (xy 0.762 -0.762)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (pin input line (at -10.16 -2.54 0) (length 2.54)
          (name "Vctrl" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin input line (at -10.16 2.54 0) (length 2.54)
          (name "OE" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 0 -10.16 90) (length 2.54)
          (name "GND" (effects (font (size 1.27 1.27))))
          (number "3" (effects (font (size 1.27 1.27))))
        )
        (pin output line (at 10.16 0 180) (length 2.54)
          (name "OUT" (effects (font (size 1.27 1.27))))
          (number "4" (effects (font (size 1.27 1.27))))
        )
        (pin power_in line (at 0 10.16 270) (length 2.54)
          (name "Vcc" (effects (font (size 1.27 1.27))))
          (number "6" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "s47-misc:LightPipe" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
      (property "Reference" "LP" (id 0) (at 0 5.08 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Value" "s47-misc_LightPipe" (id 1) (at 0 -5.08 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "LightPipe_0_1"
        (rectangle (start -5.08 -3.81) (end 5.08 3.81)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type background))
        )
        (arc (start -1.27 1.27) (mid -2.1627 0.8927) (end -2.54 0)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (arc (start -1.27 2.54) (mid -3.0713 1.8013) (end -3.81 0)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.556 -2.667)
            (xy -3.81 -2.667)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -2.921 -2.667)
            (xy -2.54 -2.667)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -2.794 -2.286)
            (xy -2.794 -3.048)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.27 1.27)
            (xy 2.54 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 2.54 2.54)
            (xy -1.27 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.81 0)
            (xy -3.81 -1.27)
            (xy -2.54 -1.27)
            (xy -2.54 0)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.556 -2.286)
            (xy -3.556 -3.048)
            (xy -2.921 -2.667)
            (xy -3.556 -2.286)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.556 -2.032)
            (xy -3.302 -1.778)
            (xy -3.429 -1.778)
            (xy -3.302 -1.905)
            (xy -3.302 -1.778)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -3.048 -2.032)
            (xy -2.794 -1.778)
            (xy -2.921 -1.778)
            (xy -2.794 -1.905)
            (xy -2.794 -1.778)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.302 1.651)
            (xy 3.937 1.651)
            (xy 3.81 1.778)
            (xy 3.81 1.524)
            (xy 3.937 1.651)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 3.302 2.286)
            (xy 3.937 2.286)
            (xy 3.81 2.413)
            (xy 3.81 2.159)
            (xy 3.937 2.286)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (arc (start 2.54 1.27) (mid 2.803 1.905) (end 2.54 2.54)
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
    )
  )

  (junction (at 96.52 45.72) (diameter 0) (color 0 0 0 0)
    (uuid 003974b6-cb8f-491b-a226-fc7891eb9a62)
  )
  (junction (at 25.4 58.42) (diameter 0) (color 0 0 0 0)
    (uuid 09c6ca89-863f-42d4-867e-9a769c316610)
  )
  (junction (at 236.22 40.64) (diameter 0) (color 0 0 0 0)
    (uuid 0fc912fd-5036-4a55-b598-a9af40810824)
  )
  (junction (at 33.02 83.82) (diameter 0) (color 0 0 0 0)
    (uuid 11c7c8d4-4c4b-4330-bb59-1eec2e98b255)
  )
  (junction (at 231.14 109.22) (diameter 0) (color 0 0 0 0)
    (uuid 1a7e7b16-fc7c-4e64-9ace-48cc78112437)
  )
  (junction (at 66.04 30.48) (diameter 0) (color 0 0 0 0)
    (uuid 1b98de85-f9de-4825-baf2-c96991615275)
  )
  (junction (at 86.36 45.72) (diameter 0) (color 0 0 0 0)
    (uuid 2522909e-6f5c-4f36-9c3a-869dca14e50f)
  )
  (junction (at 218.44 129.54) (diameter 0) (color 0 0 0 0)
    (uuid 26296271-780a-4da9-8e69-910d9240bca1)
  )
  (junction (at 226.06 45.72) (diameter 0) (color 0 0 0 0)
    (uuid 2938bf2d-2d32-4cb0-9d4d-563ea28ffffa)
  )
  (junction (at 218.44 88.9) (diameter 0) (color 0 0 0 0)
    (uuid 3f43c2dc-daa2-45ba-b8ca-7ae5aebed882)
  )
  (junction (at 55.88 25.4) (diameter 0) (color 0 0 0 0)
    (uuid 444b2eaf-241d-42e5-8717-27a83d099c5b)
  )
  (junction (at 256.54 147.32) (diameter 0) (color 0 0 0 0)
    (uuid 4e7a230a-c1a4-4455-81ee-277835acf4a2)
  )
  (junction (at 144.78 30.48) (diameter 0) (color 0 0 0 0)
    (uuid 54d76293-1ce2-46f8-9be7-a3d7f9f28112)
  )
  (junction (at 228.6 111.76) (diameter 0) (color 0 0 0 0)
    (uuid 5641be26-f5e9-482f-8616-297f17f4eae2)
  )
  (junction (at 25.4 83.82) (diameter 0) (color 0 0 0 0)
    (uuid 5bbde4f9-fcdb-4d27-a2d6-3847fcdd87ba)
  )
  (junction (at 25.4 45.72) (diameter 0) (color 0 0 0 0)
    (uuid 5cff09b0-b3d4-41a7-a6a4-7f917b40eda9)
  )
  (junction (at 157.48 76.2) (diameter 0) (color 0 0 0 0)
    (uuid 617498ce-8469-4f4b-9f2b-09a2437561eb)
  )
  (junction (at 261.62 121.92) (diameter 0) (color 0 0 0 0)
    (uuid 64256223-cf3b-4a78-97d3-f1dca769968f)
  )
  (junction (at 55.88 35.56) (diameter 0) (color 0 0 0 0)
    (uuid 653e74f0-0a40-4ab5-8f5c-787bbaf1d723)
  )
  (junction (at 223.52 88.9) (diameter 0) (color 0 0 0 0)
    (uuid 665081dc-8354-4d41-8855-bde8901aee4c)
  )
  (junction (at 134.62 30.48) (diameter 0) (color 0 0 0 0)
    (uuid 7a6d9a4e-fe6a-4427-9f0c-a10fd3ceb923)
  )
  (junction (at 60.96 33.02) (diameter 0) (color 0 0 0 0)
    (uuid 8220ba36-5fda-4461-95e2-49a5bc0c76af)
  )
  (junction (at 147.32 175.26) (diameter 0) (color 0 0 0 0)
    (uuid 84d5cf13-52aa-4648-82e7-8be6e886a6b2)
  )
  (junction (at 81.28 35.56) (diameter 0) (color 0 0 0 0)
    (uuid 8ef1307e-4e79-474d-a93c-be38f714571c)
  )
  (junction (at 236.22 114.3) (diameter 0) (color 0 0 0 0)
    (uuid a09cb1c4-cc63-49c7-a35f-4b80c3ba2217)
  )
  (junction (at 33.02 132.08) (diameter 0) (color 0 0 0 0)
    (uuid a150f0c9-1a23-4200-b489-18791f6d5ce5)
  )
  (junction (at 33.02 58.42) (diameter 0) (color 0 0 0 0)
    (uuid a323243c-4cab-4689-aa04-1e663cf86177)
  )
  (junction (at 220.98 88.9) (diameter 0) (color 0 0 0 0)
    (uuid a4911204-1308-4d17-90a9-1ff5f9c57c9b)
  )
  (junction (at 261.62 109.22) (diameter 0) (color 0 0 0 0)
    (uuid a6891c49-3648-41ce-811e-fccb4c4653af)
  )
  (junction (at 139.7 33.02) (diameter 0) (color 0 0 0 0)
    (uuid b5ffe018-0d06-4a1b-95ee-b5763a35798d)
  )
  (junction (at 218.44 104.14) (diameter 0) (color 0 0 0 0)
    (uuid bab3431c-ede6-417b-8033-763748a11a9f)
  )
  (junction (at 226.06 119.38) (diameter 0) (color 0 0 0 0)
    (uuid cd2580a0-9e4c-4895-a13c-3b2ee33bafc4)
  )
  (junction (at 144.78 50.8) (diameter 0) (color 0 0 0 0)
    (uuid ce55d4e5-cb2b-4927-9979-4a7fc840f632)
  )
  (junction (at 91.44 45.72) (diameter 0) (color 0 0 0 0)
    (uuid d1817a81-d444-4cd9-95f6-174ec9e2a60e)
  )
  (junction (at 60.96 25.4) (diameter 0) (color 0 0 0 0)
    (uuid d4e4ffa8-e3e2-4590-b9df-630d1880f3e4)
  )
  (junction (at 139.7 48.26) (diameter 0) (color 0 0 0 0)
    (uuid dbbbcbf5-ed09-4c20-902c-70f108158aba)
  )
  (junction (at 223.52 121.92) (diameter 0) (color 0 0 0 0)
    (uuid e002a979-85bc-451a-a77b-29ce2a8f19f9)
  )
  (junction (at 215.9 132.08) (diameter 0) (color 0 0 0 0)
    (uuid e29e8d7d-cee8-47d4-8444-1d7032daf03c)
  )
  (junction (at 215.9 45.72) (diameter 0) (color 0 0 0 0)
    (uuid f030cfe8-f922-4a12-a58d-2ff6e60a9bb9)
  )
  (junction (at 248.92 30.48) (diameter 0) (color 0 0 0 0)
    (uuid f2392fe0-54af-4e02-8793-9ba2471944b5)
  )

  (no_connect (at 167.64 116.84) (uuid 27e3c71f-5a63-4710-8adf-b600b805ce02))

  (bus_entry (at 177.8 96.52) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 19a5aacd-255a-4bf3-89c1-efd2ab61016c)
  )
  (bus_entry (at 104.14 106.68) (size 2.54 2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2b7c4f37-42c0-4571-a44b-b808484d3d74)
  )
  (bus_entry (at 177.8 93.98) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2ba21493-929b-4122-ac0f-7aeaf8602cef)
  )
  (bus_entry (at 177.8 106.68) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3dbc1b14-20e2-4dcb-8347-d33c13d3f0e0)
  )
  (bus_entry (at 177.8 109.22) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4b534cd1-c414-4029-9164-e46766faf60e)
  )
  (bus_entry (at 104.14 109.22) (size 2.54 2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4c717b47-484c-4d70-8fcd-83c406ff2d17)
  )
  (bus_entry (at 177.8 104.14) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5fba7ff8-02f1-4ac0-93c4-5bd7becbcf63)
  )
  (bus_entry (at 177.8 99.06) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 60960af7-b938-44a8-82b5-e9c36f2e6817)
  )
  (bus_entry (at 104.14 111.76) (size 2.54 2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6fddc16f-ccc1-4ade-884c-d6efda461da8)
  )
  (bus_entry (at 177.8 101.6) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9c2a29da-c83f-4ec8-bbcf-9d775812af04)
  )
  (bus_entry (at 177.8 111.76) (size 2.54 -2.54)
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d33c6077-a8ec-48ca-b0e0-97f3539ef54c)
  )

  (wire (pts (xy 96.52 139.7) (xy 81.28 139.7))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 009b0d62-e9ea-4825-9fdf-befd291c76ce)
  )
  (wire (pts (xy 220.98 88.9) (xy 223.52 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 01c59306-91a3-452b-92b5-9af8f8f257d6)
  )
  (wire (pts (xy 81.28 160.02) (xy 96.52 160.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 02491520-945f-40c4-9160-4e5db9ac115d)
  )
  (bus (pts (xy 180.34 101.6) (xy 180.34 104.14))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0712d78b-cb2c-4203-af63-c9b8323491e9)
  )

  (wire (pts (xy 81.28 111.76) (xy 104.14 111.76))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 08ac4c42-16f0-4513-b91e-bf0b3a111257)
  )
  (wire (pts (xy 55.88 22.86) (xy 55.88 25.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 08da8f18-02c3-4a28-a400-670f01755980)
  )
  (wire (pts (xy 66.04 30.48) (xy 66.04 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0938c137-668b-4d2f-b92b-cadb1df72bdb)
  )
  (wire (pts (xy 81.28 106.68) (xy 104.14 106.68))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 09ab0b5c-3dee-42c8-b9e5-de0673874ccd)
  )
  (wire (pts (xy 137.16 185.42) (xy 147.32 185.42))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0ab1512b-eb91-4574-b11f-326e0ff10082)
  )
  (wire (pts (xy 58.42 187.96) (xy 58.42 185.42))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0e0f9829-27a5-43b2-a0ae-121d3ce72ef4)
  )
  (wire (pts (xy 48.26 33.02) (xy 48.26 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0e416ef5-3e03-4fa4-b2a6-3ab634a5ee03)
  )
  (wire (pts (xy 25.4 83.82) (xy 33.02 83.82))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0e592cd4-1950-44ef-9727-8e526f4c4e12)
  )
  (wire (pts (xy 215.9 45.72) (xy 215.9 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0f62e92c-dce6-45dc-a560-b9db10f66ff3)
  )
  (wire (pts (xy 215.9 53.34) (xy 215.9 55.88))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0ff398d7-e6e2-4972-a7a4-438407886f34)
  )
  (wire (pts (xy 81.28 152.4) (xy 96.52 152.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 100847e3-630c-4c13-ba45-180e92370805)
  )
  (wire (pts (xy 180.34 147.32) (xy 180.34 149.86))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 105d44ff-63b9-4299-9078-473af583971a)
  )
  (wire (pts (xy 96.52 45.72) (xy 96.52 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 122b5574-57fe-4d2d-80bf-3cabd28e7128)
  )
  (bus (pts (xy 180.34 88.9) (xy 180.34 91.44))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 133d5403-9be3-4603-824b-d3b76147e745)
  )

  (wire (pts (xy 205.74 40.64) (xy 193.04 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 153169ce-9fac-4868-bc4e-e1381c5bb726)
  )
  (bus (pts (xy 180.34 104.14) (xy 180.34 106.68))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 161b1717-b29c-4bd9-8a62-3aa7a05da5be)
  )

  (wire (pts (xy 220.98 101.6) (xy 220.98 104.14))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 173fd4a7-b485-4e9d-8724-470865466784)
  )
  (wire (pts (xy 248.92 53.34) (xy 248.92 55.88))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 1765d6b9-ca0e-49c2-8c3c-8ab35eb3909b)
  )
  (wire (pts (xy 226.06 53.34) (xy 226.06 55.88))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 18dee026-9999-4f10-8c36-736131349406)
  )
  (wire (pts (xy 81.28 116.84) (xy 96.52 116.84))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 19515fa4-c166-4b6e-837d-c01a89e98000)
  )
  (wire (pts (xy 251.46 149.86) (xy 254 149.86))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 1a813eeb-ee58-4579-81e1-3f9a7227213c)
  )
  (bus (pts (xy 180.34 96.52) (xy 180.34 99.06))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 1b4ca270-6596-4a93-b287-4785196155b9)
  )

  (wire (pts (xy 139.7 35.56) (xy 139.7 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 1d1a7683-c090-4798-9b40-7ed0d9f3ce3b)
  )
  (wire (pts (xy 238.76 121.92) (xy 223.52 121.92))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2151a218-87ec-4d43-b5fa-736242c52602)
  )
  (wire (pts (xy 33.02 91.44) (xy 33.02 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2295a793-dfca-4b86-a3e5-abf1834e2790)
  )
  (wire (pts (xy 215.9 154.94) (xy 259.08 154.94))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 24fd922c-d488-4d61-b6dc-9d3e359ccc82)
  )
  (wire (pts (xy 167.64 99.06) (xy 177.8 99.06))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 278deae2-fb37-4957-b2cb-afac30cacb12)
  )
  (wire (pts (xy 25.4 58.42) (xy 25.4 83.82))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 28b01cd2-da3a-46ec-8825-b0f31a0b8987)
  )
  (wire (pts (xy 248.92 30.48) (xy 248.92 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2a6ee718-8cdf-4fa6-be7c-8fe885d98fd7)
  )
  (wire (pts (xy 226.06 147.32) (xy 226.06 119.38))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2ad4b4ba-3abd-4313-bed9-1edce936a95e)
  )
  (wire (pts (xy 264.16 154.94) (xy 264.16 157.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2bbd6c26-4114-4518-8f4a-c6fdadc046b6)
  )
  (wire (pts (xy 261.62 109.22) (xy 261.62 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2d4d8c24-5b38-445b-8733-2a81ba21d33e)
  )
  (wire (pts (xy 81.28 149.86) (xy 96.52 149.86))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2edc487e-09a5-4e4e-9675-a7b323f56380)
  )
  (wire (pts (xy 25.4 83.82) (xy 25.4 132.08))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 300aa512-2f66-4c26-a530-50c091b3a099)
  )
  (wire (pts (xy 167.64 106.68) (xy 177.8 106.68))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 31070a40-077c-4123-96dd-e39f8a0007ce)
  )
  (wire (pts (xy 132.08 25.4) (xy 134.62 25.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 312474c5-a081-4cd1-b2e6-730f0718514a)
  )
  (wire (pts (xy 81.28 134.62) (xy 96.52 134.62))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3273ec61-4a33-41c2-82bf-cde7c8587c1b)
  )
  (wire (pts (xy 35.56 58.42) (xy 33.02 58.42))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 34ddb753-e57c-4ca8-a67b-d7cdf62cae93)
  )
  (bus (pts (xy 106.68 116.84) (xy 111.76 116.84))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 35431843-170f-401f-88d7-da91172bed86)
  )

  (wire (pts (xy 91.44 38.1) (xy 91.44 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 37728c8e-efcc-462c-a749-47b6bfcbaf37)
  )
  (wire (pts (xy 86.36 43.18) (xy 86.36 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3a45fb3b-7899-44f2-a78a-f676359df67b)
  )
  (wire (pts (xy 218.44 129.54) (xy 218.44 152.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3bb9c3d4-9a6f-41ac-8d1e-92ed4fe334c0)
  )
  (wire (pts (xy 248.92 27.94) (xy 248.92 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3c66e6e2-f12d-4b23-910e-e478d272dfd5)
  )
  (wire (pts (xy 172.72 45.72) (xy 177.8 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3d2a15cb-c492-4d9a-b1dd-7d5f099d2d31)
  )
  (wire (pts (xy 83.82 175.26) (xy 83.82 180.34))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3d416885-b8b5-4f5c-bc29-39c6376095e8)
  )
  (wire (pts (xy 160.02 30.48) (xy 144.78 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3d70e675-48ae-4edd-b95d-3ca51e634018)
  )
  (wire (pts (xy 81.28 114.3) (xy 96.52 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3e011a46-81bd-4ecd-b93e-57dffb1143e5)
  )
  (wire (pts (xy 144.78 109.22) (xy 147.32 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3e147ce1-21a6-4e77-a3db-fd00d575cd22)
  )
  (wire (pts (xy 81.28 76.2) (xy 96.52 76.2))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4198eb99-d244-457e-8768-395280df1a66)
  )
  (wire (pts (xy 81.28 119.38) (xy 96.52 119.38))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 43f341b3-06e9-4e7a-a26e-5365b89d76bf)
  )
  (wire (pts (xy 200.66 129.54) (xy 218.44 129.54))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 45484f82-420e-44d0-a58e-382bb939dac5)
  )
  (wire (pts (xy 96.52 144.78) (xy 81.28 144.78))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 45836d49-cd5f-417d-b0f6-c8b43d196a36)
  )
  (wire (pts (xy 228.6 144.78) (xy 228.6 111.76))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 45a58c23-3e6d-4df0-af01-6d5948b0075c)
  )
  (wire (pts (xy 116.84 30.48) (xy 134.62 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4648968b-aa58-4f57-8f45-54b088364670)
  )
  (wire (pts (xy 35.56 83.82) (xy 33.02 83.82))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 46491a9d-8b3d-4c74-b09a-70c876f162e5)
  )
  (wire (pts (xy 55.88 25.4) (xy 55.88 27.94))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 469f89fd-f629-46b7-b106-a0088168c9ec)
  )
  (wire (pts (xy 231.14 142.24) (xy 231.14 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 48034820-9d25-4020-8e74-d44c1441e803)
  )
  (wire (pts (xy 81.28 58.42) (xy 96.52 58.42))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4b042b6c-c042-4cf1-ba6e-bd77c51dbedb)
  )
  (wire (pts (xy 81.28 91.44) (xy 96.52 91.44))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4c6a1dad-7acf-4a52-99b0-316025d1ab04)
  )
  (wire (pts (xy 81.28 121.92) (xy 96.52 121.92))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4d51bc15-1f84-46be-8e16-e836b10f854e)
  )
  (wire (pts (xy 86.36 175.26) (xy 88.9 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4d967454-338c-4b89-8534-9457e15bf2f2)
  )
  (wire (pts (xy 256.54 147.32) (xy 251.46 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4ef07d45-f940-4cb6-bb96-2ddec13fd099)
  )
  (wire (pts (xy 96.52 63.5) (xy 81.28 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4f3dc5bc-04e8-4dcc-91dd-8782e84f321d)
  )
  (wire (pts (xy 81.28 45.72) (xy 86.36 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 4f4bd227-fa4c-47f4-ad05-ee16ad4c58c2)
  )
  (wire (pts (xy 81.28 86.36) (xy 96.52 86.36))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 50a799a7-f8f3-4f13-9288-b10696e9a7da)
  )
  (wire (pts (xy 215.9 91.44) (xy 215.9 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 524d7aa8-362f-459a-b2ae-4ca2a0b1612b)
  )
  (wire (pts (xy 81.28 66.04) (xy 96.52 66.04))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 53ae21b8-f187-4817-8c27-1f06278d249b)
  )
  (wire (pts (xy 218.44 45.72) (xy 215.9 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 53fda1fb-12bd-4536-80e1-aab5c0e3fc58)
  )
  (wire (pts (xy 238.76 40.64) (xy 236.22 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 55cff608-ab38-48d9-ac09-2d0a877ceca1)
  )
  (wire (pts (xy 96.52 38.1) (xy 96.52 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5698a460-6e24-4857-84d8-4a43acd2325d)
  )
  (wire (pts (xy 147.32 172.72) (xy 147.32 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5778dc8c-60fe-435e-b75a-362eae1b81ab)
  )
  (wire (pts (xy 81.28 73.66) (xy 96.52 73.66))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 586ec748-563a-478a-82db-706fb951336a)
  )
  (wire (pts (xy 259.08 154.94) (xy 259.08 144.78))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 59ee13a4-660e-47e2-a73a-01cfe11439e9)
  )
  (wire (pts (xy 160.02 50.8) (xy 144.78 50.8))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5a010660-4a0b-4680-b361-32d4c3b60537)
  )
  (wire (pts (xy 25.4 45.72) (xy 25.4 58.42))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5a397f61-35c4-4c18-9dcd-73a2d44cc9af)
  )
  (wire (pts (xy 144.78 124.46) (xy 144.78 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5bb32dcb-8a97-4374-8a16-bc17822d4db3)
  )
  (bus (pts (xy 180.34 99.06) (xy 180.34 101.6))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5c79db56-ad3d-42b9-b371-90b0967edd70)
  )

  (wire (pts (xy 264.16 149.86) (xy 264.16 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5cc7655c-62f2-43d2-a7a5-eaa4635dada8)
  )
  (wire (pts (xy 101.6 172.72) (xy 101.6 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5eedf685-0df3-4da8-aded-0e6ed1cb2507)
  )
  (wire (pts (xy 218.44 104.14) (xy 218.44 129.54))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5f059fcf-8990-4db3-9058-7f232d9600e1)
  )
  (wire (pts (xy 259.08 109.22) (xy 261.62 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5fe7a4eb-9f04-4df6-a1fa-36c071e280d7)
  )
  (wire (pts (xy 116.84 50.8) (xy 144.78 50.8))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 61a18b62-4111-4a9d-8fca-04c4c6f90cc3)
  )
  (wire (pts (xy 96.52 137.16) (xy 81.28 137.16))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 62cbcc21-2cec-41ab-be06-499e1a78d7e7)
  )
  (wire (pts (xy 81.28 157.48) (xy 96.52 157.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 64269ac3-771b-4c0d-91e0-eafc3dc4a07f)
  )
  (wire (pts (xy 50.8 48.26) (xy 50.8 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 64d1d0fe-4fd6-4a55-8314-56a651e1ccab)
  )
  (wire (pts (xy 238.76 119.38) (xy 226.06 119.38))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6aa022fb-09ce-49d9-86b1-c73b3ee817e2)
  )
  (wire (pts (xy 236.22 30.48) (xy 236.22 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6b69fc79-c78f-4df1-9a05-c51d4173705f)
  )
  (wire (pts (xy 83.82 180.34) (xy 88.9 180.34))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6b8ac91e-9d2b-49db-8a80-1da009ad1c5e)
  )
  (wire (pts (xy 33.02 139.7) (xy 33.02 142.24))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6ea0f2f7-b064-4b8f-bd17-48195d1c83d1)
  )
  (wire (pts (xy 215.9 45.72) (xy 210.82 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6fd21292-6577-40e1-bbda-18906b5e9f6f)
  )
  (wire (pts (xy 167.64 109.22) (xy 177.8 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 70186eba-dcad-4878-bf16-887f6eee49df)
  )
  (wire (pts (xy 33.02 58.42) (xy 25.4 58.42))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 70cda344-73be-4466-a097-1fd56f3b19e2)
  )
  (wire (pts (xy 81.28 83.82) (xy 96.52 83.82))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 71a9f036-1f13-462e-ac9e-81caaaa7f807)
  )
  (wire (pts (xy 139.7 33.02) (xy 157.48 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7247fe96-7885-4063-8282-ea2fd2b28b0d)
  )
  (wire (pts (xy 55.88 25.4) (xy 60.96 25.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7255cbd1-8d38-4545-be9a-7fc5488ef942)
  )
  (wire (pts (xy 144.78 45.72) (xy 144.78 50.8))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 72f9157b-77da-4a6d-9880-0711b21f6e23)
  )
  (wire (pts (xy 25.4 22.86) (xy 25.4 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 74096bdc-b668-408c-af3a-b048c20bd605)
  )
  (wire (pts (xy 162.56 45.72) (xy 160.02 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 771cb5c1-62ba-4cca-999e-cdcbe417213c)
  )
  (wire (pts (xy 218.44 101.6) (xy 218.44 104.14))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7ac1ccc5-26c5-4b73-8425-7bbec927bf24)
  )
  (wire (pts (xy 91.44 43.18) (xy 91.44 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7c0866b5-b180-4be6-9e62-43f5b191d6d4)
  )
  (wire (pts (xy 215.9 132.08) (xy 215.9 154.94))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7ce4aab5-8271-4432-a4b1-bff168293b45)
  )
  (wire (pts (xy 238.76 111.76) (xy 228.6 111.76))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7e498af5-a41b-4f8f-8a13-10c00a9160aa)
  )
  (wire (pts (xy 157.48 76.2) (xy 157.48 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7e90deb5-aef9-4d2b-a440-4cb0dbfaaa93)
  )
  (wire (pts (xy 81.28 175.26) (xy 83.82 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7eb32ed1-4320-49ba-8487-1c88e4824fe3)
  )
  (bus (pts (xy 106.68 111.76) (xy 106.68 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7f5acd82-8f90-4e1e-999e-ece40b8ba212)
  )

  (wire (pts (xy 139.7 45.72) (xy 139.7 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 81ab7ed7-7160-4650-b711-4daa2902dc8b)
  )
  (wire (pts (xy 55.88 33.02) (xy 55.88 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 81b95d0d-8967-4ed1-8d40-39925d015ae8)
  )
  (wire (pts (xy 236.22 116.84) (xy 238.76 116.84))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 82907d2e-4560-49c2-9cfc-01b127317195)
  )
  (wire (pts (xy 157.48 48.26) (xy 157.48 43.18))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 830aee7f-dfce-42cd-85ef-6370f6dc02f5)
  )
  (wire (pts (xy 223.52 121.92) (xy 200.66 121.92))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8313e187-c805-4927-8002-313a51839243)
  )
  (wire (pts (xy 81.28 35.56) (xy 81.28 38.1))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 83a363ef-2850-4113-853b-2966af02d72d)
  )
  (wire (pts (xy 81.28 68.58) (xy 96.52 68.58))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 83d85a81-e014-4ee9-9433-a9a045c80893)
  )
  (wire (pts (xy 157.48 33.02) (xy 157.48 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 848901d5-fdee-4920-a04d-fbc03c912e79)
  )
  (wire (pts (xy 66.04 25.4) (xy 66.04 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 848c6095-3966-404d-9f2a-51150fd8dc54)
  )
  (wire (pts (xy 147.32 147.32) (xy 134.62 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 85d211d4-76e7-4e49-a9c8-2e1cc8ab5805)
  )
  (wire (pts (xy 238.76 147.32) (xy 226.06 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 86143bb0-7899-4df8-b1df-baa3c0ac7889)
  )
  (wire (pts (xy 177.8 43.18) (xy 172.72 43.18))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 868b5d0d-f911-4724-9580-d9e69eb9f709)
  )
  (wire (pts (xy 147.32 93.98) (xy 134.62 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 87a32952-c8e5-40ba-af1d-1a8829a6c906)
  )
  (wire (pts (xy 226.06 45.72) (xy 226.06 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 89bd1fdd-6a91-474e-8495-7a2ba7eb6260)
  )
  (wire (pts (xy 256.54 152.4) (xy 256.54 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 89fb4a63-a18d-4c7e-be12-f061ef4bf0c0)
  )
  (bus (pts (xy 180.34 88.9) (xy 185.42 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8aa8d47e-f495-4049-8ac9-7f2ac3205412)
  )

  (wire (pts (xy 276.86 43.18) (xy 266.7 43.18))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8ade7975-64a0-440a-8545-11958836bf48)
  )
  (wire (pts (xy 238.76 45.72) (xy 226.06 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8b022692-69b7-4bd6-bf38-57edecf356fa)
  )
  (wire (pts (xy 160.02 45.72) (xy 160.02 50.8))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8e75264b-b45e-45ec-b230-7e1dce7d68b3)
  )
  (wire (pts (xy 264.16 147.32) (xy 256.54 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8efe6411-1919-4082-b5b8-393585e068c8)
  )
  (wire (pts (xy 215.9 88.9) (xy 218.44 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8fd0b33a-45bf-4216-9d7e-a62e1c071730)
  )
  (wire (pts (xy 167.64 93.98) (xy 177.8 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 900cb6c8-1d05-4537-a4f0-9a7cc1a2ea1c)
  )
  (wire (pts (xy 81.28 93.98) (xy 96.52 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 909d0bdd-8a15-40f2-9dfd-be4a5d2d6b25)
  )
  (wire (pts (xy 228.6 111.76) (xy 200.66 111.76))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 90d503cf-92b2-4120-a4b0-03a2eddde893)
  )
  (wire (pts (xy 86.36 172.72) (xy 86.36 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 90fd611c-300b-48cf-a7c4-0d604953cd00)
  )
  (wire (pts (xy 157.48 40.64) (xy 162.56 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 926b329f-cd0d-410a-bc4a-e36446f8965a)
  )
  (wire (pts (xy 226.06 45.72) (xy 223.52 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 929c74c0-78bf-4efe-a778-fa328e951865)
  )
  (wire (pts (xy 96.52 162.56) (xy 81.28 162.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 92d17eb0-c75d-48d9-ae9e-ea0c7f723be4)
  )
  (wire (pts (xy 236.22 114.3) (xy 236.22 116.84))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 93afd2e8-e16c-4e06-b872-cf0e624aee35)
  )
  (wire (pts (xy 81.28 170.18) (xy 88.9 170.18))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 94c3d0e3-d7fb-421d-bbb4-5c800d76c809)
  )
  (wire (pts (xy 220.98 104.14) (xy 218.44 104.14))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 96ee9b8e-4543-4639-b9ea-44b8baaaf94e)
  )
  (wire (pts (xy 60.96 25.4) (xy 60.96 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 971d1932-4a99-4265-9c76-26e554bde4fe)
  )
  (wire (pts (xy 127 25.4) (xy 116.84 25.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 97693043-81ba-44a2-b87b-aca6193e0970)
  )
  (wire (pts (xy 236.22 86.36) (xy 236.22 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 97cc05bf-4ed5-449c-b0c8-131e5126a7ac)
  )
  (wire (pts (xy 147.32 185.42) (xy 147.32 182.88))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9a458d6a-a84c-4faf-913e-90bab231d3f8)
  )
  (bus (pts (xy 106.68 109.22) (xy 106.68 111.76))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9b315454-a4a0-4952-bdbe-d4a8e96c16f9)
  )

  (wire (pts (xy 248.92 30.48) (xy 236.22 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9c8eae28-a7c3-4e6a-bd81-98cf70031070)
  )
  (wire (pts (xy 215.9 40.64) (xy 215.9 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9e427954-2486-4c91-89b5-6af73a073442)
  )
  (wire (pts (xy 142.24 45.72) (xy 142.24 53.34))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a04f8542-6c38-4d5c-bdbb-c8e0311a0936)
  )
  (wire (pts (xy 259.08 121.92) (xy 261.62 121.92))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a10b569c-d672-485d-9c05-2cb4795deeca)
  )
  (wire (pts (xy 149.86 187.96) (xy 149.86 182.88))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a1d977e9-aa2c-4b7a-b2e3-8ff3b816e1f2)
  )
  (wire (pts (xy 147.32 175.26) (xy 149.86 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a2a4b1ad-c51a-492d-9e99-410eec4f55a3)
  )
  (bus (pts (xy 180.34 106.68) (xy 180.34 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a2db5db7-5865-46a7-aee9-882a62db9f60)
  )
  (bus (pts (xy 180.34 93.98) (xy 180.34 96.52))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a3a60959-b205-41c8-aa96-8fa3c8a3c6d5)
  )

  (wire (pts (xy 81.28 154.94) (xy 96.52 154.94))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a43f2e19-4e11-4e86-a12a-58a691d6df28)
  )
  (wire (pts (xy 81.28 96.52) (xy 96.52 96.52))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a46a2b22-69cf-45fb-b1d2-32ac89bbd3c8)
  )
  (wire (pts (xy 33.02 58.42) (xy 33.02 60.96))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a49e8613-3cd2-48ed-8977-6bb5023f7722)
  )
  (wire (pts (xy 137.16 187.96) (xy 149.86 187.96))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a4a80e68-9a9c-4dac-84a7-a9f3c47a0961)
  )
  (wire (pts (xy 86.36 45.72) (xy 91.44 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a647641f-bf16-4177-91ee-b01f347ff91c)
  )
  (wire (pts (xy 116.84 48.26) (xy 139.7 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a6dd3322-fcf5-4e4f-88bb-77a3d82a4d05)
  )
  (wire (pts (xy 215.9 101.6) (xy 215.9 132.08))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a819bf9a-0c8b-443a-b488-e5f1395d77ad)
  )
  (wire (pts (xy 147.32 99.06) (xy 134.62 99.06))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a8a389df-8d18-4e17-a74f-f60d5d77371e)
  )
  (wire (pts (xy 147.32 106.68) (xy 134.62 106.68))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid aa0e7fe7-e9c2-477f-bcb2-53a1ebd9e3a6)
  )
  (wire (pts (xy 238.76 114.3) (xy 236.22 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ab34b936-8ca5-4be1-8599-504cb86609fc)
  )
  (wire (pts (xy 259.08 144.78) (xy 251.46 144.78))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ac8576da-4e00-41a0-9609-eb655e96e10b)
  )
  (wire (pts (xy 35.56 132.08) (xy 33.02 132.08))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid acb0068c-c0e7-44cf-a209-296716acb6a2)
  )
  (bus (pts (xy 180.34 91.44) (xy 180.34 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid af3f1241-d491-47f9-b1cb-a669aeb88c77)
  )

  (wire (pts (xy 193.04 45.72) (xy 205.74 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b121f1ff-8472-460b-ab2d-5110ddd1ca28)
  )
  (wire (pts (xy 81.28 104.14) (xy 96.52 104.14))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b1240f00-ec43-4c0b-9a41-43264db8a893)
  )
  (wire (pts (xy 261.62 121.92) (xy 261.62 124.46))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b21625e3-a75b-41d7-9f13-4c0e12ba16cb)
  )
  (wire (pts (xy 81.28 35.56) (xy 55.88 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b24c67bf-acb7-486e-9d7b-fb513b8c7fc6)
  )
  (wire (pts (xy 116.84 33.02) (xy 139.7 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b31ebd25-cf4c-4c3e-b83d-0ec793b65cd9)
  )
  (wire (pts (xy 167.64 104.14) (xy 177.8 104.14))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b4fbe1fb-a9a3-4020-9a82-d3fa1900cd85)
  )
  (wire (pts (xy 167.64 96.52) (xy 177.8 96.52))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b500fd76-a613-4f44-aac4-99213e86ff44)
  )
  (wire (pts (xy 223.52 101.6) (xy 223.52 121.92))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b5cea0b5-192f-476b-a3c8-0c26e2231699)
  )
  (wire (pts (xy 81.28 101.6) (xy 96.52 101.6))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b5d84bc0-4d9a-4d1d-a476-5c6b51309fca)
  )
  (wire (pts (xy 254 149.86) (xy 254 157.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b754bfb3-a198-47be-8e7b-61bec885a5db)
  )
  (wire (pts (xy 139.7 48.26) (xy 157.48 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b7dfd91c-6180-48d0-832a-f6a5a032a686)
  )
  (wire (pts (xy 134.62 25.4) (xy 134.62 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b8382866-f10b-4adc-84fc-f6e5dd44681b)
  )
  (wire (pts (xy 149.86 175.26) (xy 149.86 177.8))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b9f8b708-1745-43ec-9646-59495cbc6e07)
  )
  (wire (pts (xy 238.76 149.86) (xy 223.52 149.86))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid bc01f3e7-a131-4f66-8abc-cc13e855d5e5)
  )
  (wire (pts (xy 167.64 101.6) (xy 177.8 101.6))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid bc05cdd5-f72f-4c21-b397-0fa889871114)
  )
  (wire (pts (xy 261.62 43.18) (xy 259.08 43.18))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid bcacf97a-a49b-480c-96ed-a857f56faeb2)
  )
  (wire (pts (xy 231.14 109.22) (xy 200.66 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid be118b00-015b-445a-8fc5-7bf35350fda8)
  )
  (wire (pts (xy 50.8 45.72) (xy 25.4 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid bf4036b4-c410-489a-b46c-abee2c31db09)
  )
  (wire (pts (xy 81.28 60.96) (xy 96.52 60.96))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid c0c62e93-8e84-4f2b-96ae-e90b55e0550a)
  )
  (wire (pts (xy 81.28 71.12) (xy 96.52 71.12))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid c1c05ce7-1c25-4382-b3b9-d3ec327783d4)
  )
  (wire (pts (xy 96.52 132.08) (xy 81.28 132.08))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid c2211bf7-6ed0-4800-9f21-d6a078bedba2)
  )
  (wire (pts (xy 142.24 25.4) (xy 142.24 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid c7db4903-f95a-49f5-bcce-c52f0ca8defc)
  )
  (wire (pts (xy 91.44 45.72) (xy 96.52 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid c81031ca-cd56-4ea3-b0db-833cbbdd7b2e)
  )
  (wire (pts (xy 81.28 124.46) (xy 96.52 124.46))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid cd48b13f-c989-4ac1-a7f0-053afcd77527)
  )
  (wire (pts (xy 33.02 132.08) (xy 33.02 134.62))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid cdfb661b-489b-4b76-99f4-62b92bb1ab18)
  )
  (wire (pts (xy 134.62 30.48) (xy 144.78 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d1422f38-9fce-4f5e-878a-341530beaf9c)
  )
  (wire (pts (xy 81.28 142.24) (xy 96.52 142.24))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d23840a6-3c61-45ca-968a-bc57332fd7a4)
  )
  (wire (pts (xy 33.02 66.04) (xy 33.02 68.58))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d2db53d0-2821-4ebe-bf21-b864eac8ca44)
  )
  (wire (pts (xy 226.06 119.38) (xy 200.66 119.38))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d337c492-7429-4618-b378-df29f72737e3)
  )
  (wire (pts (xy 218.44 152.4) (xy 256.54 152.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d554632b-6dd0-47f8-b59b-3ce25177ca3e)
  )
  (wire (pts (xy 223.52 86.36) (xy 223.52 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d7df1f01-3f56-437b-a452-e88ad90a9805)
  )
  (wire (pts (xy 177.8 147.32) (xy 180.34 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d8d71ad3-6fd1-4a98-9c1f-70c4fbf3d1d1)
  )
  (wire (pts (xy 60.96 25.4) (xy 66.04 25.4))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d8dc9b6c-67d0-4a0d-a791-6f7d43ef3652)
  )
  (wire (pts (xy 210.82 40.64) (xy 215.9 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid db532ed2-914c-41b4-b389-de2bf235d0a7)
  )
  (wire (pts (xy 261.62 121.92) (xy 261.62 119.38))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid db902262-2864-4997-aeff-8abaa132424a)
  )
  (wire (pts (xy 238.76 142.24) (xy 231.14 142.24))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid dd3da890-32ef-4a5a-aea4-e5d2141f1ff1)
  )
  (wire (pts (xy 96.52 30.48) (xy 66.04 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid dde4c43d-f33e-48ba-86f3-779fdfce00c2)
  )
  (wire (pts (xy 147.32 175.26) (xy 147.32 177.8))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid de2abbd8-9b48-47ba-b77e-4c65ca048af6)
  )
  (wire (pts (xy 167.64 111.76) (xy 177.8 111.76))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid de588ed9-a530-46f0-aa03-e0307ff72286)
  )
  (wire (pts (xy 238.76 109.22) (xy 231.14 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid df93f76b-86da-45ae-87e2-4b691af12b00)
  )
  (wire (pts (xy 81.28 109.22) (xy 104.14 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e0781b80-6f1b-4d08-b53f-b7d3f582e2ea)
  )
  (wire (pts (xy 86.36 35.56) (xy 81.28 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e07c4b69-e0b4-4217-9b28-38d44f166b31)
  )
  (wire (pts (xy 236.22 40.64) (xy 236.22 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e0b36e60-bb2b-489c-a764-1b81e551ce62)
  )
  (wire (pts (xy 152.4 83.82) (xy 152.4 86.36))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e1c71a89-4e45-4a56-a6ef-342af5f92d5c)
  )
  (wire (pts (xy 218.44 88.9) (xy 220.98 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e1fe6230-75c5-4750-aaea-24a9b80589d8)
  )
  (wire (pts (xy 152.4 78.74) (xy 152.4 76.2))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e20929e2-2c15-4a75-b1ed-9caa9bd27df7)
  )
  (wire (pts (xy 96.52 43.18) (xy 96.52 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e42fd0d4-9927-4308-81d9-4cca814c8ea9)
  )
  (wire (pts (xy 48.26 35.56) (xy 55.88 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e463ba2a-1cbc-4995-82d8-59710b3fcd2f)
  )
  (wire (pts (xy 261.62 86.36) (xy 261.62 109.22))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e6e468d8-2bb7-49d5-a4d0-fde0f6bbe8c6)
  )
  (wire (pts (xy 25.4 132.08) (xy 33.02 132.08))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e77c17df-b20e-4e7d-b937-f281c75a0014)
  )
  (wire (pts (xy 33.02 83.82) (xy 33.02 86.36))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e80b0e91-f15f-4e36-9a9c-b2cfd5a01d2a)
  )
  (wire (pts (xy 238.76 144.78) (xy 228.6 144.78))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e8312cc4-6502-4783-b578-55c01e0393af)
  )
  (wire (pts (xy 157.48 121.92) (xy 157.48 124.46))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e8e598ff-c991-433d-8dd6-c9fce2fe1eaa)
  )
  (wire (pts (xy 81.28 172.72) (xy 86.36 172.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ea28e946-b74f-4ba8-ac7b-b1884c5e7296)
  )
  (wire (pts (xy 157.48 73.66) (xy 157.48 76.2))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ebadfd51-5a1d-4821-b341-8a1acb4abb01)
  )
  (wire (pts (xy 55.88 35.56) (xy 55.88 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ec2e3d8a-128c-4be8-b432-9738bca934ae)
  )
  (wire (pts (xy 160.02 38.1) (xy 160.02 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ed247857-b2a3-4b23-90ad-758c01ae5e8e)
  )
  (wire (pts (xy 81.28 43.18) (xy 81.28 45.72))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ed952427-2217-4500-9bbc-0c2746b198ad)
  )
  (wire (pts (xy 152.4 147.32) (xy 167.64 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ed9596e5-f4f2-4fc2-bb34-16ad21b3b120)
  )
  (wire (pts (xy 157.48 43.18) (xy 162.56 43.18))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ee9a2826-2513-480e-a552-3d07af5bf8a5)
  )
  (wire (pts (xy 218.44 88.9) (xy 218.44 91.44))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ef3a2f4c-5879-4e98-ad30-6b8614410fba)
  )
  (wire (pts (xy 96.52 147.32) (xy 81.28 147.32))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ef400389-7e37-4c93-8647-76318089d59f)
  )
  (wire (pts (xy 177.8 38.1) (xy 172.72 38.1))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f2044410-03ac-4994-9652-9e5f480320f0)
  )
  (wire (pts (xy 220.98 88.9) (xy 220.98 91.44))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f240e733-157e-4a15-812f-78f42d8a8322)
  )
  (wire (pts (xy 144.78 35.56) (xy 144.78 30.48))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f321809c-ab7a-4356-9b11-4c0d46c421ba)
  )
  (wire (pts (xy 236.22 53.34) (xy 236.22 55.88))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f47374c3-cb2a-4769-880f-830c9b19222e)
  )
  (wire (pts (xy 162.56 38.1) (xy 160.02 38.1))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f5a3f95b-1a53-41b4-b208-bf168c9d9c6d)
  )
  (wire (pts (xy 177.8 40.64) (xy 172.72 40.64))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f7758f2a-e5c9-405c-960a-353b36eaf72d)
  )
  (wire (pts (xy 152.4 76.2) (xy 157.48 76.2))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid faa605d9-8c1c-4d31-b7c1-3dc31a22eb34)
  )
  (wire (pts (xy 254 142.24) (xy 251.46 142.24))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fab1abc4-c49d-4b88-8c7f-939d7feb7b6c)
  )
  (wire (pts (xy 254 139.7) (xy 254 142.24))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fb191df4-267d-4797-80dd-be346b8eeb99)
  )
  (wire (pts (xy 91.44 33.02) (xy 60.96 33.02))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fbb5e77c-4b41-4796-ad13-1b9e2bbc3c81)
  )
  (wire (pts (xy 96.52 165.1) (xy 81.28 165.1))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fc12372f-6e31-40f9-8043-b00b861f0171)
  )
  (wire (pts (xy 223.52 88.9) (xy 223.52 91.44))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fc13962a-a464-4fa2-b9a6-4c26667104ee)
  )
  (wire (pts (xy 101.6 175.26) (xy 99.06 175.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fc4f0835-889b-4d2e-876e-ca524c79ae62)
  )
  (bus (pts (xy 106.68 114.3) (xy 106.68 116.84))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fd20ceba-8af0-4db6-83d9-138e4b6a10f8)
  )

  (wire (pts (xy 223.52 149.86) (xy 223.52 121.92))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fd34aa56-ded2-4e97-965a-a39457716f0c)
  )
  (wire (pts (xy 86.36 38.1) (xy 86.36 35.56))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fd4dd248-3e78-4985-a4fc-58bc05b74cbf)
  )
  (wire (pts (xy 60.96 33.02) (xy 60.96 48.26))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fdc57161-f7f8-4584-b0ec-8c1aa24339c6)
  )
  (wire (pts (xy 200.66 132.08) (xy 215.9 132.08))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fe1ad3bd-92cc-4e1c-8cc9-a77278095945)
  )
  (wire (pts (xy 147.32 101.6) (xy 134.62 101.6))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fe431a80-868e-482d-aa91-c96eb8387d6a)
  )
  (wire (pts (xy 81.28 99.06) (xy 96.52 99.06))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid fe9bdc33-eab1-4bdc-9603-57decb38d2a2)
  )

  (text "Must be Blue !\nNeed High Vf !" (at 269.24 160.02 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 36210d52-4f9a-42bc-a022-019a63c67fc2)
  )
  (text "f_c_lo = 13.6 Hz\nf_c_hi = 106 Hz\n\n(Dual pole RC with different first resistor)"
    (at 198.12 25.4 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 4fc3183f-297c-42b7-b3bd-25a9ea18c844)
  )

  (label "clk_tune_hi" (at 96.52 66.04 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 073c8287-235c-4712-a9a0-60a07a1119d5)
  )
  (label "gpio1" (at 96.52 109.22 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 094dc71e-7ea9-4e30-8ba7-749216ec2a8b)
  )
  (label "~{creset}" (at 200.66 132.08 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 0f9b475c-adb7-41fc-b827-33d4eaa86b99)
  )
  (label "flash_miso" (at 96.52 119.38 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 10fa1a8c-62cb-4b8f-b916-b18d737ff71b)
  )
  (label "i2c_sda" (at 96.52 76.2 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 18208121-3872-4be3-a687-40854be3e1c8)
  )
  (label "gpio0" (at 96.52 106.68 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 186c3f1e-1c94-498e-abf2-1069980f6633)
  )
  (label "flash_sck" (at 200.66 119.38 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 188eabba-12a3-47b7-9be1-03f0c5a948eb)
  )
  (label "e1_led_rclk" (at 134.62 147.32 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 19264aae-fe9e-4afc-84ac-56ec33a3b20d)
  )
  (label "cdone" (at 134.62 101.6 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 1c92f382-4ec3-478f-a1ca-afadd3087787)
  )
  (label "usb_pu_i" (at 96.52 99.06 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 25625d99-d45f-4b2f-9e62-009a122611f4)
  )
  (label "e1_led0" (at 177.8 93.98 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 28d267fd-6d61-43bb-9705-8d59d7a44e81)
  )
  (label "i2c_scl" (at 137.16 187.96 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 2cd2fee2-51b2-4fcd-8c94-c435e6791358)
  )
  (label "~{boot_sw}" (at 154.94 147.32 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 341e67eb-d5e1-4cb7-9d11-5aa4ab832a2a)
  )
  (label "i2c_scl" (at 96.52 73.66 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 3768cce7-1e64-480e-bb38-0c6794a852ac)
  )
  (label "dbg_tx_i" (at 96.52 101.6 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 44e77d57-d16f-4723-a95f-1ac45276c458)
  )
  (label "clk_30m72" (at 96.52 63.5 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 47484446-e64c-4a82-88af-15de92cf6ad4)
  )
  (label "e1_led4" (at 177.8 104.14 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 4be2b882-65e4-4552-9482-9d622928de2f)
  )
  (label "dbg_rx_i" (at 96.52 104.14 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 5626e5e1-59f4-4773-828e-16057ddc3518)
  )
  (label "gpio2" (at 96.52 111.76 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 583b0bf3-0699-44db-b975-a241ad040fa4)
  )
  (label "flash_mosi" (at 134.62 93.98 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 67d6d490-a9a4-4ec7-8744-7c7abc821282)
  )
  (label "e1_led2" (at 177.8 99.06 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 6d1e2df9-cc89-4e18-a541-699f0d20dd45)
  )
  (label "usb_pu_i" (at 116.84 25.4 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 717b25a7-c9c2-4f6f-b744-a96113325c99)
  )
  (label "~{flash_cs}" (at 96.52 124.46 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 750e60a2-e808-4253-8275-b79930fb2714)
  )
  (label "dbg_rx_i" (at 116.84 50.8 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 7700fef1-de5b-4197-be2d-18385e1e18f9)
  )
  (label "cdone" (at 96.52 83.82 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 78a228c9-bbf0-49cf-b917-2dec23b390df)
  )
  (label "~{flash_cs}" (at 200.66 121.92 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 7df9ce6f-7f38-4582-a049-7f92faf1abc9)
  )
  (label "clk_tune_lo" (at 193.04 40.64 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 87a0ffb1-5477-4b20-a3ac-fef5af129a33)
  )
  (label "e1_led6" (at 177.8 109.22 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 8fbab3d0-cb5e-47c7-8764-6fa3c0e4e5f7)
  )
  (label "usb_dp_i" (at 116.84 30.48 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 9404ce4c-2ce6-4f88-8062-13577800d257)
  )
  (label "cdone" (at 200.66 129.54 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 9600911d-0df3-419b-8d4a-8d1432a7daf2)
  )
  (label "flash_mosi" (at 96.52 116.84 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 9e18f8b3-9e1a-4022-9224-10c12ca8a28d)
  )
  (label "e1_led7" (at 177.8 111.76 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid a25ec672-f935-4d0c-ae67-7c3ebe078d85)
  )
  (label "flash_mosi" (at 200.66 109.22 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid a311f3c6-42e3-4584-9725-4a62ff91b6e3)
  )
  (label "e1_led_rclk" (at 96.52 114.3 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid a7cad282-51c3-4f24-be5e-311c2c5e959b)
  )
  (label "~{creset}" (at 96.52 86.36 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid b83b087e-7ec9-44e7-a1c9-81d5d26bbf79)
  )
  (label "usb_dn_i" (at 96.52 93.98 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid bcfbc157-43ce-49f7-bd18-6a9e2f2f30a3)
  )
  (label "flash_miso" (at 200.66 111.76 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid c38f28b6-5bd4-4cf9-b273-1e7b230f6b42)
  )
  (label "clk_tune_hi" (at 193.04 45.72 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid c62adb8b-b306-48da-b0ae-f6a287e54f62)
  )
  (label "flash_sck" (at 134.62 99.06 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid c860c4e9-3ddd-4065-857c-b9aedc01e6ad)
  )
  (label "e1_led5" (at 177.8 106.68 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid ce3f834f-337d-4957-8d02-e900d7024614)
  )
  (label "clk_30m72" (at 276.86 43.18 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid d396ce56-1974-47b7-a41b-ae2b20ef835c)
  )
  (label "clk_tune_lo" (at 96.52 68.58 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid d3dd0ba2-2496-4e95-8d54-12ee57bcbce2)
  )
  (label "i2c_sda" (at 137.16 185.42 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid e5889358-36b5-4652-9d71-4d4aa652a144)
  )
  (label "flash_sck" (at 96.52 121.92 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid e7376da1-2f59-4570-81e8-46fca0289df0)
  )
  (label "e1_led_rclk" (at 134.62 106.68 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid ed1f5df2-cfb6-4083-a9e5-5d196546ef9b)
  )
  (label "usb_dn_i" (at 116.84 33.02 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid f2c43eeb-76da-49f4-b8e6-cd74ebb3190b)
  )
  (label "dbg_tx_i" (at 116.84 48.26 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid f87a4771-a0a7-489f-9d85-4574dbea71cc)
  )
  (label "e1_led3" (at 177.8 101.6 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid f8e92727-5789-4ef6-9dc3-be888ad72e45)
  )
  (label "usb_dp_i" (at 96.52 96.52 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid f931f973-5615-451c-bb04-9a02aede6e6f)
  )
  (label "e1_led1" (at 177.8 96.52 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid ffb86135-b43f-4a42-9aa6-73aa7ba972a9)
  )

  (hierarchical_label "dbg_rx" (shape input) (at 177.8 45.72 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 017667a9-f5de-49c7-af53-4f9af2f3a311)
  )
  (hierarchical_label "e1B_rx_hi_p" (shape input) (at 96.52 134.62 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 0d095387-710d-4633-a6c3-04eab60b585a)
  )
  (hierarchical_label "e1A_tx_hi" (shape output) (at 96.52 160.02 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 2276ec6c-cdcc-4369-86b4-8267d991001e)
  )
  (hierarchical_label "e1A_rx_lo_n" (shape input) (at 96.52 144.78 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 23345f3e-d08d-4834-b1dc-64de02569916)
  )
  (hierarchical_label "e1A_tx_lo" (shape output) (at 96.52 157.48 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 29987966-1d19-4068-93f6-a61cdfb40ffa)
  )
  (hierarchical_label "usb_dn" (shape bidirectional) (at 177.8 40.64 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 3382bf79-b686-4aeb-9419-c8ab591662bb)
  )
  (hierarchical_label "dbg_tx" (shape output) (at 177.8 43.18 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 4c144ffa-02d0-42da-aef1-f5175cbde9c0)
  )
  (hierarchical_label "e1B_rx_lo_n" (shape input) (at 96.52 137.16 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 5099f397-6fe7-454f-899c-34e2b5f22ca7)
  )
  (hierarchical_label "e1_rx_bias0" (shape output) (at 96.52 142.24 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 6474aa6c-825c-4f0f-9938-759b68df02a5)
  )
  (hierarchical_label "e1B_tx_hi" (shape output) (at 96.52 149.86 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 6ba19f6c-fa3a-4bf3-8c57-119de0f02b65)
  )
  (hierarchical_label "gpio[0..2]" (shape bidirectional) (at 111.76 116.84 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 761492e2-a989-4596-80c3-fcd6943df072)
  )
  (hierarchical_label "gps_rx" (shape input) (at 96.52 60.96 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 778b0e81-d70b-4705-ae45-b4c475c88dab)
  )
  (hierarchical_label "e1A_rx_hi_n" (shape input) (at 96.52 162.56 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 799d9f4a-bb6b-44d5-9f4c-3a30db59943d)
  )
  (hierarchical_label "i2c_scl" (shape bidirectional) (at 96.52 73.66 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 905b154b-e92b-469d-b2e2-340d67daddb7)
  )
  (hierarchical_label "gps_pps" (shape input) (at 96.52 71.12 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 92d938cc-f8b1-437d-8914-3d97a0938f67)
  )
  (hierarchical_label "e1B_tx_lo" (shape output) (at 96.52 152.4 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 9f95f1fc-aa31-4ce6-996a-4b385731d8eb)
  )
  (hierarchical_label "e1B_rx_lo_p" (shape input) (at 96.52 139.7 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid a12b751e-ae7a-468c-af3d-31ed4d501b01)
  )
  (hierarchical_label "e1A_rx_hi_p" (shape input) (at 96.52 165.1 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid ab0ea55a-63b3-4ece-836d-2844713a821f)
  )
  (hierarchical_label "usb_dp" (shape bidirectional) (at 177.8 38.1 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid bc204c79-0619-4b16-889d-335bfdd71ce0)
  )
  (hierarchical_label "e1A_rx_lo_p" (shape input) (at 96.52 147.32 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid c220da05-2a98-47be-9327-0c73c5263c41)
  )
  (hierarchical_label "e1_led[0..7]" (shape output) (at 185.42 88.9 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid d04eabf5-018b-4006-a739-ce16277681b7)
  )
  (hierarchical_label "gps_tx" (shape output) (at 96.52 58.42 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid dfba7148-cad3-4f40-9835-b1394bd30a2c)
  )
  (hierarchical_label "e1B_rx_hi_n" (shape input) (at 96.52 132.08 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid ea7c53f9-3aa8-4198-9879-de95a5257915)
  )
  (hierarchical_label "e1_rx_bias1" (shape output) (at 96.52 154.94 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid f48f1d12-9008-4743-81e2-bdec45db64a1)
  )
  (hierarchical_label "~{gps_reset}" (shape tri_state) (at 96.52 91.44 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid f565cf54-67ba-4424-8d47-087433645499)
  )
  (hierarchical_label "i2c_sda" (shape bidirectional) (at 96.52 76.2 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid fab985e9-e679-4dd8-a59c-e3195d08506a)
  )

  (symbol (lib_id "power:GND") (at 58.42 187.96 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f135107)
    (property "Reference" "#PWR014" (id 0) (at 58.42 194.31 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 58.547 192.3542 0))
    (property "Footprint" "" (id 2) (at 58.42 187.96 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 58.42 187.96 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid d2529171-92fc-4895-8aba-ac4e112a2c6d))
  )

  (symbol (lib_id "s47-chips:ICE40UP5K-SG48") (at 58.42 116.84 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f1398c4)
    (property "Reference" "U1" (id 0) (at 38.1 187.96 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "ICE40UP5K-SG48" (id 1) (at 38.1 185.42 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.3x5.3mm" (id 2) (at 58.42 194.31 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 66.04 78.74 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid b0d0023b-21e3-425d-a324-5058d039801c))
    (pin "10" (uuid 3a8eaeea-fcba-43ab-976a-2d1631dbbff2))
    (pin "11" (uuid b2d479c5-92cf-41b8-90c1-1d151f984588))
    (pin "12" (uuid 5d6084dc-8c7d-4039-9528-2c6a7d6b2ec1))
    (pin "13" (uuid 14b2e3ca-7f1b-4dff-9aa1-437ac3c920d3))
    (pin "14" (uuid c4e8951c-0312-4256-8fac-a4a86ce43872))
    (pin "15" (uuid e4c47344-a274-408b-aee5-2be4a6ab6524))
    (pin "16" (uuid de59c335-2cc5-45bf-a7a0-f47433d6f80d))
    (pin "17" (uuid 31d41d9d-4db7-4415-bdf1-3091beb81007))
    (pin "18" (uuid dadf267e-ab6f-4654-b68f-fe217a00c451))
    (pin "19" (uuid 993dd75a-1d3f-490e-ba51-5e4aadc0fcf0))
    (pin "2" (uuid f7a595a5-90dd-442b-9e08-85895f8f0d60))
    (pin "20" (uuid 4c2fe49b-46a1-462e-ad24-998a590fc76e))
    (pin "21" (uuid 5f0f9c43-ed23-4223-82ae-baf9dba12269))
    (pin "22" (uuid 666dca55-a12c-405c-9cb8-6e3263091851))
    (pin "23" (uuid 821fb47e-f58c-422e-8adf-e5def4020103))
    (pin "24" (uuid be590c45-397e-4713-ab7b-dfeb96ed023c))
    (pin "25" (uuid 119e386f-2970-4b5a-9bf8-34d606641c7d))
    (pin "26" (uuid 8f7e02f1-c956-42da-b9f1-81b75586d3f5))
    (pin "27" (uuid 8d9ab5ad-365c-455e-9ab3-f697ea7d27f7))
    (pin "28" (uuid 1f3540ae-5b32-4756-a094-a5628c38337b))
    (pin "29" (uuid b900a165-39b0-41a3-9dac-9aef86670168))
    (pin "3" (uuid cff59a90-d0f3-4049-9401-463aa311d97a))
    (pin "30" (uuid 0ac6818f-1c59-4c71-93e7-afda37d2619d))
    (pin "31" (uuid 93174279-064f-4941-98e5-10bdcfb6809e))
    (pin "32" (uuid 2fd5bea9-5004-4968-83fc-3ac212c5f01f))
    (pin "33" (uuid ad2f5925-c375-43cb-9438-c9932ed9bedb))
    (pin "34" (uuid d5b482eb-bee0-4b16-afca-c4f9240e49a5))
    (pin "35" (uuid ac7177a9-58f0-4dbd-8287-2781f561b109))
    (pin "36" (uuid 36644518-7c5a-4027-99af-ffcc89dd92e2))
    (pin "37" (uuid 7ede1098-542b-4e44-9964-58f299ec9395))
    (pin "38" (uuid 068273b4-e195-4a2a-9566-2be9af5f49ac))
    (pin "39" (uuid 0e613a1e-7c3f-4454-90f7-da9c8f9e1705))
    (pin "4" (uuid f0c8c156-f122-4b3d-a69d-8a5f61e5f5ee))
    (pin "40" (uuid ddfd6b21-4c57-4366-98e7-48745925c8e7))
    (pin "41" (uuid f3377bb6-4812-4a49-9f66-4e1307c85488))
    (pin "42" (uuid 00097dc4-064f-42a9-8a01-9642dde9cef9))
    (pin "43" (uuid 4895824f-2ab2-4a7c-9d2b-c176b9fab1a0))
    (pin "44" (uuid 3b11cc75-0840-4216-8a85-83de50c4f7f5))
    (pin "45" (uuid e0f06675-d0cb-4a29-9e08-344938f71664))
    (pin "46" (uuid 6c2f941f-e877-4380-b8ef-fe060dde7eea))
    (pin "47" (uuid df440f8f-e76b-4c22-9352-88fd2466bd38))
    (pin "48" (uuid 109ae2fd-9c2f-4613-acf9-8f0987ebbe93))
    (pin "49" (uuid bdb93d46-a69c-4502-9275-2814dbc9b82e))
    (pin "5" (uuid 2c28d1a6-ebbf-42f3-a466-f27bd79cd88b))
    (pin "6" (uuid 39695876-a65d-45be-a945-857edfadd27b))
    (pin "7" (uuid 5e0c8dba-8b7d-469d-8e15-b8977b3e1636))
    (pin "8" (uuid 24a03fb1-dea1-4f18-b754-bfa9babfaba2))
    (pin "9" (uuid 6731d9a2-9a8a-4c09-a4d2-0df2f0b2d256))
  )

  (symbol (lib_id "s47-chips:SPI_FLASH_8P") (at 248.92 114.3 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f13e7e1)
    (property "Reference" "U5" (id 0) (at 248.92 102.4382 0))
    (property "Value" "W25Q80" (id 1) (at 248.92 104.7496 0))
    (property "Footprint" "Package_SO:SOIC-8_3.9x4.9mm_P1.27mm" (id 2) (at 248.92 114.3 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 248.92 114.3 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "MPN" "W25Q80DVSNIG" (id 4) (at 248.92 114.3 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 5d82c14a-ad31-4a09-95fd-94d6651b7a76))
    (pin "2" (uuid 55adb7ab-e144-4620-af66-5319dd17be5a))
    (pin "3" (uuid 807a8e69-b2ae-4aa7-903e-678465f162dc))
    (pin "4" (uuid 738faab0-cec6-40e5-9886-7395f617b836))
    (pin "5" (uuid b36d581d-a163-423a-a1f9-62125e53f8b5))
    (pin "6" (uuid a7f23649-8838-4d14-a615-791a0d88909c))
    (pin "7" (uuid 68151cee-0909-41b4-b240-4275b1e97a8a))
    (pin "8" (uuid 380cbb4c-d0af-4cce-954c-56c3b5fc2254))
  )

  (symbol (lib_id "s47-device:LED_RBAG") (at 93.98 175.26 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f27ace7)
    (property "Reference" "D1" (id 0) (at 93.98 185.42 0))
    (property "Value" "STATUS" (id 1) (at 93.98 187.96 0))
    (property "Footprint" "s47-device:LED_RGB_2020" (id 2) (at 93.98 176.53 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 93.98 176.53 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid e364fa32-8f24-4b95-99e7-02e6bfb8ffcb))
    (pin "2" (uuid ecfd3893-6893-44e1-9057-adfb616abef4))
    (pin "3" (uuid e1af355d-dbcc-4212-9725-3fd8da24c158))
    (pin "4" (uuid cca3a0a8-de60-4682-925b-54eb2a1f8544))
  )

  (symbol (lib_id "s47-misc:LightPipe") (at 111.76 180.34 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f27bdd2)
    (property "Reference" "LP1" (id 0) (at 117.5512 179.1716 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "LightPipe" (id 1) (at 117.5512 181.483 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "s47-misc:LUMEX_LPF-C011303S" (id 2) (at 111.76 180.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 111.76 180.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
  )

  (symbol (lib_id "Switch:SW_Push") (at 172.72 147.32 0) (mirror y) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f27d351)
    (property "Reference" "SW1" (id 0) (at 172.72 140.081 0))
    (property "Value" "SW_Push" (id 1) (at 172.72 142.3924 0))
    (property "Footprint" "s47-misc:SW_HYP_1TS003B" (id 2) (at 172.72 142.24 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 172.72 142.24 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 906e14b4-a894-4fb8-92ce-dc27c4d28378))
    (pin "2" (uuid ac998646-16d3-4146-971c-4cb50e1f3fdb))
  )

  (symbol (lib_id "s47-device:VCXO_6_TUNE_OE") (at 248.92 43.18 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f27df04)
    (property "Reference" "U4" (id 0) (at 254 30.48 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "30M72" (id 1) (at 254 33.02 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "s47-misc:Oscillator_SMD_VCXO-6Pin_7.0x5.0mm_P2.54mm" (id 2) (at 248.92 43.18 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 248.92 43.18 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 629d43c1-9248-4504-bcc8-0325e1994502))
    (pin "2" (uuid 71c421cf-b82d-4b3a-b6f7-ad75b4b97b86))
    (pin "3" (uuid 121a20b0-ed40-482c-8ad3-5ff84667baa9))
    (pin "4" (uuid 39dfcc95-5a6d-4987-a05e-ce056d625d10))
    (pin "6" (uuid b0896365-9965-4303-b601-ab1270a33206))
  )

  (symbol (lib_id "power:+3V3") (at 101.6 172.72 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2e8e75)
    (property "Reference" "#PWR016" (id 0) (at 101.6 176.53 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 101.981 168.3258 0))
    (property "Footprint" "" (id 2) (at 101.6 172.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 101.6 172.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 7898a9ec-a084-4ac0-bcee-1022662a0a90))
  )

  (symbol (lib_id "power:+3V3") (at 25.4 22.86 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2ee21d)
    (property "Reference" "#PWR09" (id 0) (at 25.4 26.67 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 25.781 18.4658 0))
    (property "Footprint" "" (id 2) (at 25.4 22.86 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 25.4 22.86 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 2ecc4758-c242-4de1-a835-0af9c459499c))
  )

  (symbol (lib_id "Device:C_Small") (at 33.02 63.5 0) (mirror y) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f0378)
    (property "Reference" "C2" (id 0) (at 30.6832 62.3316 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 30.6832 64.643 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 33.02 63.5 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 33.02 63.5 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 5d3ff19e-15b3-4f14-8294-94992773fd2a))
    (pin "2" (uuid 5532708a-05e7-4329-aed1-76b51ef542d5))
  )

  (symbol (lib_id "power:GND") (at 33.02 68.58 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f4516)
    (property "Reference" "#PWR010" (id 0) (at 33.02 74.93 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 33.147 72.9742 0))
    (property "Footprint" "" (id 2) (at 33.02 68.58 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 33.02 68.58 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 36eb5f5a-9377-4b04-bd23-17bf4778db09))
  )

  (symbol (lib_id "Device:C_Small") (at 33.02 88.9 0) (mirror y) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f4a0a)
    (property "Reference" "C3" (id 0) (at 30.6832 87.7316 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 30.6832 90.043 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 33.02 88.9 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 33.02 88.9 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid c1fd4d5f-15e1-4c5c-b900-8132874343e8))
    (pin "2" (uuid 035348ed-447a-4b01-ad3c-e86d14879b32))
  )

  (symbol (lib_id "Device:C_Small") (at 33.02 137.16 0) (mirror y) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f4d71)
    (property "Reference" "C4" (id 0) (at 30.6832 135.9916 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 30.6832 138.303 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 33.02 137.16 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 33.02 137.16 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 39e5e203-bf99-4dc3-a007-bd6e032467a2))
    (pin "2" (uuid 496c2a81-d5aa-4c30-b8c7-3198f4d6f74a))
  )

  (symbol (lib_id "power:GND") (at 33.02 93.98 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f503e)
    (property "Reference" "#PWR011" (id 0) (at 33.02 100.33 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 33.147 98.3742 0))
    (property "Footprint" "" (id 2) (at 33.02 93.98 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 33.02 93.98 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 92e395cb-433f-4ee2-a305-9cedecf7b3b8))
  )

  (symbol (lib_id "power:GND") (at 33.02 142.24 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f521f)
    (property "Reference" "#PWR012" (id 0) (at 33.02 148.59 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 33.147 146.6342 0))
    (property "Footprint" "" (id 2) (at 33.02 142.24 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 33.02 142.24 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 3d1c4293-8f4e-447a-8785-0f9263d6eb26))
  )

  (symbol (lib_id "power:+1V2") (at 55.88 22.86 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f821b)
    (property "Reference" "#PWR013" (id 0) (at 55.88 26.67 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+1V2" (id 1) (at 56.261 18.4658 0))
    (property "Footprint" "" (id 2) (at 55.88 22.86 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 55.88 22.86 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid abfbeee5-7ba5-451d-b146-bd6f6dc9da81))
  )

  (symbol (lib_id "Device:C_Small") (at 81.28 40.64 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f8b03)
    (property "Reference" "C5" (id 0) (at 81.28 43.18 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "1u" (id 1) (at 83.82 39.37 90)
      (effects (font (size 1.27 1.27)) (justify left bottom))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 81.28 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 81.28 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 15758638-c691-4c62-8b08-61d87b1ccc27))
    (pin "2" (uuid e9293a23-ae37-4858-b68d-736c95a45886))
  )

  (symbol (lib_id "Device:C_Small") (at 86.36 40.64 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f9078)
    (property "Reference" "C6" (id 0) (at 86.36 43.18 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 88.9 39.37 90)
      (effects (font (size 1.27 1.27)) (justify left bottom))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 86.36 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 86.36 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 717862fa-5144-4912-9440-96b09eef69c3))
    (pin "2" (uuid 19c444a3-4077-465c-af63-96ee70f996bf))
  )

  (symbol (lib_id "Device:C_Small") (at 91.44 40.64 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f926f)
    (property "Reference" "C7" (id 0) (at 91.44 43.18 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 93.98 39.37 90)
      (effects (font (size 1.27 1.27)) (justify left bottom))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 91.44 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 91.44 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 6f4d1f5b-e0f5-4a65-9c91-c0adcff6efbb))
    (pin "2" (uuid cf417086-1185-4ddc-a84c-6a6f1249dadd))
  )

  (symbol (lib_id "Device:C_Small") (at 96.52 40.64 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f95b4)
    (property "Reference" "C8" (id 0) (at 96.52 43.18 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 99.06 39.37 90)
      (effects (font (size 1.27 1.27)) (justify left bottom))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 96.52 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 96.52 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 8c7acaed-0251-4c71-9f04-03bd96509aa0))
    (pin "2" (uuid 5c9b1681-ebcc-4306-a420-726592749307))
  )

  (symbol (lib_id "Device:R_Small") (at 55.88 30.48 0) (mirror x) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f2f9a9c)
    (property "Reference" "R4" (id 0) (at 54.4068 29.3116 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "120R" (id 1) (at 54.4068 31.623 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 55.88 30.48 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 55.88 30.48 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid e8b5c5d9-d60c-4724-b9a5-af84330c1894))
    (pin "2" (uuid 61e9e0b0-400d-4252-8838-4ceaeb2af32d))
  )

  (symbol (lib_id "power:GND") (at 96.52 48.26 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f30269a)
    (property "Reference" "#PWR015" (id 0) (at 96.52 54.61 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 96.647 52.6542 0))
    (property "Footprint" "" (id 2) (at 96.52 48.26 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 96.52 48.26 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid b725b143-482a-4d89-b1a6-7a3144269640))
  )

  (symbol (lib_id "power:GND") (at 248.92 55.88 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f319485)
    (property "Reference" "#PWR031" (id 0) (at 248.92 62.23 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 249.047 60.2742 0))
    (property "Footprint" "" (id 2) (at 248.92 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 248.92 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid d06fe529-a442-4ff7-a730-cd9a2739e88b))
  )

  (symbol (lib_id "power:+3V3") (at 248.92 27.94 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f31974e)
    (property "Reference" "#PWR030" (id 0) (at 248.92 31.75 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 249.301 23.5458 0))
    (property "Footprint" "" (id 2) (at 248.92 27.94 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 248.92 27.94 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid ed2deac8-7d0b-4ff4-86dc-16aa3ae9a9e8))
  )

  (symbol (lib_id "power:+3V3") (at 261.62 86.36 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f31a810)
    (property "Reference" "#PWR034" (id 0) (at 261.62 90.17 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 262.001 81.9658 0))
    (property "Footprint" "" (id 2) (at 261.62 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 261.62 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f5435e42-c1ee-4a96-ab1d-cf405c5546eb))
  )

  (symbol (lib_id "power:GND") (at 261.62 124.46 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f31a9ca)
    (property "Reference" "#PWR035" (id 0) (at 261.62 130.81 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 261.747 128.8542 0))
    (property "Footprint" "" (id 2) (at 261.62 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 261.62 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid fd45327f-95dd-4537-a9ac-eeb736948811))
  )

  (symbol (lib_id "Device:C_Small") (at 261.62 116.84 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f31bf37)
    (property "Reference" "C13" (id 0) (at 263.9568 115.6716 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "100n" (id 1) (at 263.9568 117.983 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 261.62 116.84 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 261.62 116.84 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid fe0a67b8-3050-4ee1-a114-c559f37bfe66))
    (pin "2" (uuid 45148b85-ebd2-4c0d-9fb4-ebab108c56bf))
  )

  (symbol (lib_id "Connector_Generic:Conn_02x04_Odd_Even") (at 246.38 147.32 180) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f328580)
    (property "Reference" "J3" (id 0) (at 245.11 136.525 0))
    (property "Value" "SPI" (id 1) (at 245.11 138.8364 0))
    (property "Footprint" "Connector_PinHeader_2.54mm:PinHeader_2x04_P2.54mm_Vertical" (id 2) (at 246.38 147.32 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 246.38 147.32 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 22646f31-830b-43fc-b4d0-214f3300c5b1))
    (pin "2" (uuid 0500d533-67c8-4641-b218-8d3e101a63d0))
    (pin "3" (uuid 24250b88-7945-461d-a4ea-c96c80d0a803))
    (pin "4" (uuid be7b6fc0-680b-422c-9cd2-a6357a97bdaa))
    (pin "5" (uuid 8809c3ea-b088-4032-bf7e-7caf91ba4f7e))
    (pin "6" (uuid 3b372845-4759-42d5-830a-f270191537ca))
    (pin "7" (uuid d81eea24-2b7b-4a6a-8089-0a0a2675bce1))
    (pin "8" (uuid bf22b7f3-b9b2-4a3e-bac4-d93f45a58e8d))
  )

  (symbol (lib_id "power:GND") (at 254 157.48 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f3295ea)
    (property "Reference" "#PWR033" (id 0) (at 254 163.83 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 254.127 161.8742 0))
    (property "Footprint" "" (id 2) (at 254 157.48 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 254 157.48 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 11e27ff1-17fb-4c4c-b07d-21bf6793dce5))
  )

  (symbol (lib_id "power:+3V3") (at 254 139.7 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f3298fe)
    (property "Reference" "#PWR032" (id 0) (at 254 143.51 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 254.381 135.3058 0))
    (property "Footprint" "" (id 2) (at 254 139.7 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 254 139.7 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 5ceb0e80-7d98-4e66-aa31-ce51c35f043e))
  )

  (symbol (lib_id "s47-chips:IP4220CZ6") (at 142.24 40.64 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f348d74)
    (property "Reference" "U2" (id 0) (at 148.082 39.4716 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "IP4220CZ6" (id 1) (at 148.082 41.783 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Package_SO:TSOP-6_1.65x3.05mm_P0.95mm" (id 2) (at 143.51 38.735 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "https://assets.nexperia.com/documents/data-sheet/IP4220CZ6.pdf" (id 3) (at 143.51 38.735 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 983c6d62-15d1-480b-a2fc-acaf13df4ae6))
    (pin "2" (uuid 5d32eb95-0e5f-4a14-af68-b7c3b78cc087))
    (pin "3" (uuid d621b50b-fd46-4c94-aa82-1b6ec75db009))
    (pin "4" (uuid 2bfb8005-90a3-4655-8baa-ef3ded9c9054))
    (pin "5" (uuid a69f2926-b1d8-4e03-b832-8fa11684c953))
    (pin "6" (uuid 40b41889-6a63-4a79-9c9c-034f8585b0bf))
  )

  (symbol (lib_id "power:GND") (at 236.22 55.88 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f369b3a)
    (property "Reference" "#PWR028" (id 0) (at 236.22 62.23 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 236.347 60.2742 0))
    (property "Footprint" "" (id 2) (at 236.22 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 236.22 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 8008fd95-2ead-4570-aaf2-1b2754a0eff4))
  )

  (symbol (lib_id "Device:C_Small") (at 236.22 50.8 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f36a640)
    (property "Reference" "C12" (id 0) (at 233.8832 49.6316 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "100n" (id 1) (at 233.8832 51.943 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 236.22 50.8 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 236.22 50.8 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 58f79080-a2db-443e-abd7-e29ff51f3e5e))
    (pin "2" (uuid 2f37f3dc-36be-4679-8db3-c12ae68c2315))
  )

  (symbol (lib_id "Device:C_Small") (at 215.9 50.8 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f37b51c)
    (property "Reference" "C10" (id 0) (at 213.5632 49.6316 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "1u" (id 1) (at 213.5632 51.943 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 215.9 50.8 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 215.9 50.8 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f023d9d0-da83-4807-bbab-3cebdaa3671b))
    (pin "2" (uuid c18786e1-cb25-48dd-81cc-bf7c7fdf476f))
  )

  (symbol (lib_id "Device:C_Small") (at 226.06 50.8 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f37ba68)
    (property "Reference" "C11" (id 0) (at 223.7486 49.6316 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "1u" (id 1) (at 223.7486 51.943 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 226.06 50.8 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 226.06 50.8 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 070365ef-242a-4d41-bc0a-b8ed9b91feca))
    (pin "2" (uuid 76011dd7-642b-438a-bb90-b324383a7851))
  )

  (symbol (lib_id "Device:R_Small") (at 220.98 45.72 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f37c202)
    (property "Reference" "R11" (id 0) (at 220.98 40.7416 90))
    (property "Value" "1k5" (id 1) (at 220.98 43.053 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 220.98 45.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 220.98 45.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f12847bd-98ae-41f9-b585-95021b3ae723))
    (pin "2" (uuid d539fbf6-d474-41de-bda0-19ba022ca66a))
  )

  (symbol (lib_id "Device:R_Small") (at 208.28 40.64 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f37c857)
    (property "Reference" "R9" (id 0) (at 208.28 35.6616 90))
    (property "Value" "91k" (id 1) (at 208.28 37.973 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 208.28 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 208.28 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 36d86338-5245-4fce-a77d-39b4b2942f4f))
    (pin "2" (uuid 8cc51c4c-4a41-4ae7-8b11-5c3ed2de1af6))
  )

  (symbol (lib_id "Device:R_Small") (at 208.28 45.72 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f37c982)
    (property "Reference" "R10" (id 0) (at 205.74 48.26 90))
    (property "Value" "1k5" (id 1) (at 205.74 50.8 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 208.28 45.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 208.28 45.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid b38e22d6-f40d-4eb3-8957-82a8d71d0482))
    (pin "2" (uuid c2657ae5-f3a3-4ac5-92e0-3e1e4911e798))
  )

  (symbol (lib_id "power:GND") (at 226.06 55.88 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f385c23)
    (property "Reference" "#PWR027" (id 0) (at 226.06 62.23 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 226.187 60.2742 0))
    (property "Footprint" "" (id 2) (at 226.06 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 226.06 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid b20b1fe3-061e-4fb3-8bbe-55568e413bad))
  )

  (symbol (lib_id "power:GND") (at 215.9 55.88 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f385dad)
    (property "Reference" "#PWR025" (id 0) (at 215.9 62.23 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 216.027 60.2742 0))
    (property "Footprint" "" (id 2) (at 215.9 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 215.9 55.88 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 611c198d-f7ee-4608-9443-22adf493b46c))
  )

  (symbol (lib_id "power:PWR_FLAG") (at 48.26 33.02 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f39c045)
    (property "Reference" "#FLG01" (id 0) (at 48.26 31.115 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "PWR_FLAG" (id 1) (at 48.26 28.6258 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Footprint" "" (id 2) (at 48.26 33.02 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 48.26 33.02 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid a8298e23-82a1-42fd-9c31-abdfc83076ed))
  )

  (symbol (lib_id "Device:R_Small") (at 147.32 180.34 0) (mirror x) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f39dc9a)
    (property "Reference" "R6" (id 0) (at 145.8468 179.1716 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "5k1" (id 1) (at 145.8468 181.483 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 147.32 180.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 147.32 180.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid a7cbf3ab-685a-48fb-b5f0-6b3e0a12818c))
    (pin "2" (uuid 94b94673-6f1f-4d04-a857-ed7a71833674))
  )

  (symbol (lib_id "Device:R_Small") (at 149.86 180.34 0) (mirror x) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f39e0b2)
    (property "Reference" "R8" (id 0) (at 151.3586 179.1716 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "5k1" (id 1) (at 151.3586 181.483 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 149.86 180.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 149.86 180.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 2f19c82e-5397-4ffe-917f-0401bfc386c8))
    (pin "2" (uuid bb9a1252-79cb-4913-9fb8-71465cfc4d8e))
  )

  (symbol (lib_id "power:+3V3") (at 147.32 172.72 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f39e1c8)
    (property "Reference" "#PWR020" (id 0) (at 147.32 176.53 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 147.701 168.3258 0))
    (property "Footprint" "" (id 2) (at 147.32 172.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 147.32 172.72 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 841bb909-c209-4e91-b75e-953d665f9305))
  )

  (symbol (lib_id "Device:R_Pack04") (at 220.98 96.52 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f3c8d1c)
    (property "Reference" "RN4" (id 0) (at 225.7552 95.3516 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "10k" (id 1) (at 225.7552 97.663 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Resistor_SMD:R_Array_Convex_4x0603" (id 2) (at 227.965 96.52 90)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 220.98 96.52 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f56aef97-cf59-4bec-9147-39c83585e6e6))
    (pin "2" (uuid 78ddbef3-8398-4316-b4e7-4703caa8ca04))
    (pin "3" (uuid 069b1988-19e7-4214-9905-de9d8ad293c8))
    (pin "4" (uuid fb7e8f26-7381-4b70-9ac7-a6d9d49f6672))
    (pin "5" (uuid 133696af-8bcb-4f2a-918a-966f6f31bafd))
    (pin "6" (uuid 9b86eb10-9f20-4c99-95e9-2380fe3f9b14))
    (pin "7" (uuid 1dd65e06-1b19-42b2-9e48-aa593ac50db3))
    (pin "8" (uuid 9a2a4879-e6b7-4350-b86b-5104d34e2a80))
  )

  (symbol (lib_id "Device:R_Small") (at 264.16 43.18 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f3ccc5e)
    (property "Reference" "R12" (id 0) (at 264.16 38.2016 90))
    (property "Value" "27R" (id 1) (at 264.16 40.513 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 264.16 43.18 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 264.16 43.18 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid a96926a0-932a-4907-aecc-0b46506674fc))
    (pin "2" (uuid 97550abf-a4e2-491b-8c4b-fc5bcb83e111))
  )

  (symbol (lib_id "power:+3V3") (at 236.22 86.36 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f3f147c)
    (property "Reference" "#PWR029" (id 0) (at 236.22 90.17 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 236.601 81.9658 0))
    (property "Footprint" "" (id 2) (at 236.22 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 236.22 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 44d072f9-64e1-459e-80d1-c82fa5b6cb3e))
  )

  (symbol (lib_id "power:+3V3") (at 223.52 86.36 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4108cd)
    (property "Reference" "#PWR026" (id 0) (at 223.52 90.17 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 223.901 81.9658 0))
    (property "Footprint" "" (id 2) (at 223.52 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 223.52 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 3634acc5-1d40-409a-b593-f224d9318583))
  )

  (symbol (lib_id "Device:LED_Small") (at 264.16 152.4 90) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f442b7a)
    (property "Reference" "D2" (id 0) (at 265.8872 151.2316 90)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "DONE" (id 1) (at 265.8872 153.543 90)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "LED_SMD:LED_0603_1608Metric" (id 2) (at 264.16 152.4 90)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 264.16 152.4 90)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 2b501b9e-53d2-49f0-a457-9439856ad92d))
    (pin "2" (uuid 56101d6e-ac4a-44da-9c84-8faacaf7937d))
  )

  (symbol (lib_id "power:GND") (at 264.16 157.48 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4ade15)
    (property "Reference" "#PWR036" (id 0) (at 264.16 163.83 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 264.287 161.8742 0))
    (property "Footprint" "" (id 2) (at 264.16 157.48 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 264.16 157.48 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 2048d097-ef2b-4021-8662-a347a31469d5))
  )

  (symbol (lib_id "power:GND") (at 180.34 149.86 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4e85e7)
    (property "Reference" "#PWR024" (id 0) (at 180.34 156.21 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 180.467 154.2542 0))
    (property "Footprint" "" (id 2) (at 180.34 149.86 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 180.34 149.86 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 7bb67499-9a91-41e1-afe8-7eef34869d71))
  )

  (symbol (lib_id "Device:R_Small") (at 149.86 147.32 90) (mirror x) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4eade8)
    (property "Reference" "R7" (id 0) (at 149.86 142.3416 90))
    (property "Value" "1k5" (id 1) (at 149.86 144.653 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 149.86 147.32 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 149.86 147.32 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid d5e04fce-8909-465e-bb59-dc60487f6cff))
    (pin "2" (uuid 1b8e1adc-7f25-4d14-bb59-2234667c7f99))
  )

  (symbol (lib_id "power:GND") (at 142.24 53.34 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f516168)
    (property "Reference" "#PWR018" (id 0) (at 142.24 59.69 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 142.367 57.7342 0))
    (property "Footprint" "" (id 2) (at 142.24 53.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 142.24 53.34 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid de971551-43ad-43bd-8081-6fcf1c734150))
  )

  (symbol (lib_id "power:+5V") (at 142.24 25.4 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f51c59b)
    (property "Reference" "#PWR017" (id 0) (at 142.24 29.21 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+5V" (id 1) (at 142.621 21.0058 0))
    (property "Footprint" "" (id 2) (at 142.24 25.4 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 142.24 25.4 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid ededb624-8f44-483d-8828-91861caf0e63))
  )

  (symbol (lib_id "Device:R_Pack04") (at 167.64 40.64 90) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f522437)
    (property "Reference" "RN3" (id 0) (at 167.64 51.2318 90))
    (property "Value" "33R" (id 1) (at 167.64 48.9204 90))
    (property "Footprint" "Resistor_SMD:R_Array_Convex_4x0603" (id 2) (at 167.64 33.655 90)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 167.64 40.64 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 29a10a05-416a-4888-a6e0-92b205ae8297))
    (pin "2" (uuid 85a17aa4-afbf-41ec-b7be-bcd9419a2abd))
    (pin "3" (uuid 3b9d14ad-81c0-42fa-a13b-7c041e56e41e))
    (pin "4" (uuid e127ebe2-c37a-4730-a294-12216fd9fca6))
    (pin "5" (uuid f26fd1b7-1c7d-4d8f-86bc-ba359fe8d895))
    (pin "6" (uuid 5f5726fa-d010-43d8-9010-03009489e22a))
    (pin "7" (uuid 29aa2b60-0893-45b8-8560-92b066599752))
    (pin "8" (uuid f0b9232d-3b99-4d23-ba60-0811aa74af16))
  )

  (symbol (lib_id "Device:R_Small") (at 129.54 25.4 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f5242f9)
    (property "Reference" "R5" (id 0) (at 129.54 20.4216 90))
    (property "Value" "1k5" (id 1) (at 129.54 22.733 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 129.54 25.4 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 129.54 25.4 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 6444bb23-0ebe-48eb-9095-52a982393ace))
    (pin "2" (uuid a8563c98-faad-4464-a335-f62beab26c94))
  )

  (symbol (lib_id "74xx:74HC595") (at 157.48 104.14 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f7cc4ca)
    (property "Reference" "U3" (id 0) (at 165.1 86.36 0))
    (property "Value" "74HC595" (id 1) (at 165.1 88.9 0))
    (property "Footprint" "Package_SO:TSSOP-16_4.4x5mm_P0.65mm" (id 2) (at 157.48 104.14 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "http://www.ti.com/lit/ds/symlink/sn74hc595.pdf" (id 3) (at 157.48 104.14 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid eb97f50e-7ea5-4f23-a809-258cd91d8cb4))
    (pin "10" (uuid b816cf44-b143-4bb0-9e18-31190b642439))
    (pin "11" (uuid e11f9def-80cb-43fa-ad6f-fc6bb07bd769))
    (pin "12" (uuid cb837139-feb1-4a13-84f9-937b54a64fda))
    (pin "13" (uuid d41f6d20-2d0e-4eb3-957d-63168efd43d6))
    (pin "14" (uuid bad3f4cd-f4b4-440a-8ce3-799f4386ec24))
    (pin "15" (uuid 556aa9c1-5295-4580-8dd4-72f53823247e))
    (pin "16" (uuid d4e796dc-ad9d-497f-8f2d-f53f94bdbd8e))
    (pin "2" (uuid aa6645c3-e92a-4bdd-8a25-516645bff813))
    (pin "3" (uuid 288fe286-076e-4deb-a3cf-9c595ca6ab4a))
    (pin "4" (uuid 001d5023-e996-4772-90e3-b27e4ee71659))
    (pin "5" (uuid b33ec27e-eb35-40f9-81fa-0b3f3661143d))
    (pin "6" (uuid 59fe2c40-c820-452a-8eb0-125be8c6e1f8))
    (pin "7" (uuid 05aef3cc-870b-49e2-b685-d6fe68bb7acc))
    (pin "8" (uuid cfe5ef13-4f5f-4cde-96c0-e6f51e0d4fe3))
    (pin "9" (uuid 61f28f83-92aa-4876-b571-a6e369e8dc21))
  )

  (symbol (lib_id "power:GND") (at 157.48 124.46 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f89f281)
    (property "Reference" "#PWR023" (id 0) (at 157.48 130.81 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 157.607 128.8542 0))
    (property "Footprint" "" (id 2) (at 157.48 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 157.48 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid a6dcca40-5066-4b54-acc8-d2925a9cf8ef))
  )

  (symbol (lib_id "power:+3V3") (at 157.48 73.66 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f8acc60)
    (property "Reference" "#PWR022" (id 0) (at 157.48 77.47 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 157.861 69.2658 0))
    (property "Footprint" "" (id 2) (at 157.48 73.66 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 157.48 73.66 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid e28ab256-8537-4d6d-a8e7-a6d75705cb93))
  )

  (symbol (lib_id "Device:C_Small") (at 152.4 81.28 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f90011b)
    (property "Reference" "C9" (id 0) (at 150.0632 80.1116 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "100n" (id 1) (at 150.0632 82.423 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 152.4 81.28 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 152.4 81.28 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid a5e50e08-8f0c-4e43-bd30-906da172c79e))
    (pin "2" (uuid d8c595e1-ec68-47fa-969e-04fb7da46150))
  )

  (symbol (lib_id "power:GND") (at 152.4 86.36 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f901b54)
    (property "Reference" "#PWR021" (id 0) (at 152.4 92.71 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 149.86 88.9 0))
    (property "Footprint" "" (id 2) (at 152.4 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 152.4 86.36 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 5e006390-dc81-4c4a-9a68-cf2a0b88e782))
  )

  (symbol (lib_id "power:GND") (at 144.78 124.46 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f98fc74)
    (property "Reference" "#PWR019" (id 0) (at 144.78 130.81 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 144.907 128.8542 0))
    (property "Footprint" "" (id 2) (at 144.78 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 144.78 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid ca9bb915-47ca-410c-b9ed-acb1df0a2e2d))
  )
)
