text:
ACK" x="25" y="21.875" rot="R180">
<attribute name="DESC" value="2: C" x="25" y="21.875" size="1.778" layer="27" rot="R180" display="off"/>
<attribute name="VALUE" value="JACK" x="25" y="21.875" size="1.778" layer="27" rot="R180" display="off"/>
</element>
<element name="U$29" library="EurorackModularParts" package="ALPS_POT_SQUAREHOLES" value="10KB" x="18.75" y="37.5" rot="R180">
<attribute name="DESC" value="2: Offset" x="18.75" y="37.5" size="1.778" layer="27" rot="R180" display="off"/>
</element>
<element name="R57" library="OPL" package="R0603" value="49.9K" x="9.271" y="17.399" rot="R270"/>
<element name="R58" library="OPL" package="R0603" value="100K 0.1%" x="7.874" y="78.105" rot="R90"/>
<element name="R59" library="OPL" package="R0603" value="100K 0.1%" x="9.525" y="78.105" rot="R90"/>
<element name="R60" library="OPL" package="R0603" value="100K 0.1%" x="4.064" y="82.296" rot="R180"/>
<element name="R61" library="OPL" package="R0603" value="100K 0.1%" x="18.288" y="82.423"/>
<element name="R62" library="OPL" package="R0603" value="56" x="4.064" y="80.772" rot="R180"/>
<element name="R63" library="OPL" package="R0603" value="56" x="18.292" y="80.873"/>
<element name="R64" library="OPL" package="R0603" value="100K 0.1%" x="13.208" y="92.964"/>
<element name="R65" library="OPL" package="R0603" value="100K 0.1%" x="18.288" y="88.392" rot="R180"/>
<element name="R66" library="OPL" package="R0603" value="56" x="18.288" y="89.916"/>
<element name="U$30" library="EurorackModularParts" package="3.5MM-JACK-SWITCH-13MM-NOHOLES" value="JACK" x="12.5" y="68.75" rot="R180">
<attribute name="DESC" value="2: Inverted" x="12.5" y="68.75" size="1.778" layer="27" rot="R180" display="off"/>
<attribute name="VALUE" value="JACK" x="12.5" y="68.75" size="1.778" layer="27" rot="R180" display="off"/>
</element>
<element name="D_2NEG" library="EurorackModularParts" package="3MMLED" value="3mm YELLOW" x="12.5" y="76.5625" rot="R180"/>
<element name="D_2POS" library="EurorackModularParts" package="3MMLED" value="3mm YELLOW" x="25" y="76.5625" rot="R180"/>
<element name="R68" library="OPL" package="R0603" value="1.2K" x="3.429" y="76.073" rot="R180"/>
<element name="C29" library="OPL" package="C0603" value="22pf" x="18.288" y="29.337"/>
<element name="C30" library="OPL" package="C0603" value="22pf" x="5.969" y="89.281" rot="R90"/>
<element name="C31" library="OPL" package="C0603" value="22pf" x="6.35" y="81.534" rot="R270"/>
<element name="C32" library="OPL" package="C0603" value="22pf" x="16.002" y="81.661" rot="R270"/>
<element name="C33" library="OPL" package="C0603" value="22pf" x="16.002" y="89.154" rot="R90"/>
<element name="R71" library="OPL" package="R0603" value="100K" x="11.557" y="18.161" rot="R180"/>
<element name="R72" library="OPL" package="R0603" value="100K" x="11.049" y="14.224" rot="R90"/>
<element name="U$31" library="EurorackModularParts" package="ALPS_POT_SQUAREHOLES" value="10KB" x="3.125" y="21.875" rot="R180">
<attribute name="DESC" value="2: C Amp" x="3.125" y="21.875" size="1.778" layer="27" rot="R180" display="off"/>
</element>
<element name="R149" library="OPL" package="R0603" value="100K" x="18.034" y="18.161"/>
<element name="R147" library="OPL" package="R0603" value="100K" x="-9.779" y="80.264" rot="R270"/>
<element name="U2" library="FarnellThings" package="SOT95P237X112-3N" value="LM4040DIM3-5.0" x="5.08" y="57.404" rot="R90">
<attribute name="MPN" value="LM4040DIM3-5.0" x="15.875" y="42.799" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="OC_FARNELL" value="9778330" x="15.875" y="42.799" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="OC_NEWARK" value="97K3489" x="15.875" y="42.799" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="PACKAGE" value="SOT-23-3" x="15.875" y="42.799" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="SUPPLIER" value="TEXAS INSTRUMENTS" x="15.875" y="42.799" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="MF" value="TEXAS INSTRUMENTS" x="15.875" y="42.799" size="1.778" layer="27" rot="R90" display="off"/>
</element>
<element name="R148" library="OPL" package="R0603" value="10k" x="5.08" y="60.452">
<attribute name="MPN" value="" x="-13.0175" y="49.9745" size="1.778" layer="27" display="off"/>
<attribute name="OC_FARNELL" value="unknown" x="-13.0175" y="49.9745" size="1.778" layer="27" display="off"/>
<attribute name="MF" value="" x="-13.0175" y="49.9745" size="1.778" layer="27" display="off"/>
</element>
<element name="C49" library="OPL" package="C0603" value="100nF" x="-11.684" y="80.264" rot="R90">
<attribute name="MPN" value="06035C104KAT2A" x="-1.524" y="56.4515" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="OC_FARNELL" value="1301804" x="-1.524" y="56.4515" size="1.778" layer="27" rot="R90" display="off"/>
<attribute name="MF" value="AVX" x="-1.524" y="56.4515" size="1.778" layer="27" rot="R90" display="off"/>
</element>
<element name="IC4" library="EurorackModularParts" package="SO14" value="TL074D" x="3.048" y="39.116" rot="R180"/>
<element name="C23" library="OPL" package="C0603" value="100nF" x="3.048" y="45.212" rot="R270"/>
<element name="C24" library="OPL" package="C0603" value="100nF" x="3.048" y="33.782" rot="R270"/>
<element name="IC11" library="EurorackModularParts" package="SO14" value="TL074D" x="11.176" y="85.344" rot="R270"/>
<element name="C37" library="OPL" package="C0603" value="100nF" x="5.207" y="85.344"/>
<element name="C38" library="OPL" package="C0603" value="100nF" x="-4.318" y="10.922" rot="R180"/>
<element name="IC2" library="EurorackModularParts" package="SO14" value="TL074D" x="-13.716" y="86.36" rot="R180"/>
<element name="C1" library="OPL" package="C0603" value="100nF" x="-13.716" y="92.075" rot="R270"/>
<element name="C2" library="OPL" package="C0603" value="100nF" x="-13.208" y="80.264" rot="R270"/>
<element name="IC3" library="EurorackModularParts" package="SO14" value="TL074D" x="14.732" y="22.86" rot="R180"/>
<element name="C3" library="OPL" package="C0603" value="100nF" x="14.732" y="28.575" rot="R270"/>
<element name="C4" library="OPL" package="C0603" value="100nF" x="14.732" y="17.399" rot="R270"/>
<element name="IC1" library="EurorackModularParts" package="SO14" value="TL074D" x="1.27" y="10.922" rot="R90"/>
<element name="C5" library="OPL" package="C0603" value="100n" x="-10.668" y="26.924"/>
<element name="C6" library="OPL" package="C0603" value="100n" x="17.018" y="85.344"/>
<element name="C21" library="OPL" package="C0603" value="100n" x="6.604" y="10.922" rot="R180"/>
<element name="C22" library="OPL" package="C0603" value="100n" x="-14.478" y="13.589" rot="R180"/>
<element name="R79" library="OPL" package="R0603" value="30k" x="-1.397" y="19.939"/>
<element name="R80" library="OPL" package="R0603" value="100" x="-2.032" y="17.399" rot="R270"/>
<element name="C25" library="OPL" package="C0603" value="33p" x="-3.556" y="14.605" rot="R90"/>
<element name="R81" library="OPL" package="R0603" value="30k" x="-5.842" y="8.255"/>
<element name="R82" library="OPL" package="R0603" value="100" x="-5.842" y="6.731"/>
<element name="C26" library="OPL" package="C0603" value="33p" x="-3.429" y="7.493" rot="R270"/>
<element name="R83" library="OPL" package="R0603" value="30k" x="-4.318" y="12.192" rot="R180"/>
<element name="R84" library="OPL" package="R0603" value="30k" x="-4.318" y="9.652" rot="R180"/>
<element name="C27" library="OPL" package="C0603" value="100p" x="-19.304" y="19.304" rot="R270"/>
<element name="R85" library="OPL" package="R0603" value="100k" x="-11.43" y="13.589"/>
<element name="C28" library="OPL" package="C0603" value="100p" x="6.096" y="14.097" rot="R90"/>
<element name="R86" library="OPL" package="R0603" value="100k" x="8.509" y="13.335" rot="R180"/>
<element name="U$32" library="EurorackModularParts" package="SO16" value="V2164" x="-14.224" y="20.447" rot="R270"/>
<element name="R87" library="OPL" package="R0603" value="7.5k" x="-15.24" y="26.924"/>
<element name="R88" library="OPL" package="R0603" value="30k" x="-20.32" y="26.416"/>
<element name="R89" library="OPL" package="R0603" value="500" x="-20.32" y="29.464" rot="R180"/>
<element name="C35" library="OPL" package="C0603" value="560p" x="-20.32" y="27.94"/>
<element name="R91" library="OPL" package="R0603" value="100k" x="-19.304" y="22.352" rot="R90"/>
<element name="R92" library="OPL" package="R0603" value="500" x="-17.526" y="13.589" rot="R180"/>
<element name="C36" library="OPL" package="C0603" value="560p" x="-19.812" y="14.351" rot="R90"/>
<element name="R93" library="OPL" package="R0603" value="100k" x="-5.08" y="22.86"/>
<element name="R94" library="OPL" package="R0603" value="500" x="-5.08" y="25.908"/>
<element name="C39" library="OPL" package="C0603" value="560p" x="-5.08" y="24.384" rot="R180"/>
<element name="R95" library="OPL" package="R0603" value="30k" x="-5.08" y="17.272" rot="R180"/>
<element name="R96" library="OPL" package="R0603" value="500" x="-5.08" y="20.193"/>
<element name="C40" library="OPL" package="C0603" value="560p" x="-5.08" y="18.669" rot="R180"/>
<element name="R24" library="OPL" package="R0603" value="51k" x="5.207" y="86.614" rot="R180"/>
<element name="R25" library="OPL" package="R0603" value="51k" x="16.002" y="28.575" rot="R90"/>
<element name="R26" library="OPL" package="R0603" value="51k" x="5.207" y="84.074"/>
<element name="R27" library="OPL" package="R0603" value="51k" x="17.018" y="84.074" rot="R180"/>
<element name="R28" library="OPL" package="R0603" value="51k" x="17.018" y="86.614" rot="R180"/>
<element name="R29" library="OPL" package="R0603" value="51k" x="4.318" y="45.212" rot="R90"/>
<element name="R30" library="OPL" package="R0603" value="51k" x="-12.446" y="92.075" rot="R90"/>
<element name="R31" library="OPL" package="R0603" value="51k" x="1.778" y="45.212" rot="R270"/>
<element name="R32" library="OPL" package="R0603" value="51k" x="1.778" y="33.782" rot="R90"/>
<element name="R33" library="OPL" package="R0603" value="51k" x="4.318" y="33.782" rot="R90"/>
<element name="IC5" library="EurorackModularParts" package="SO08" value="TL072" x="0.381" y="3.175" rot="R270"/>
<element name="C15" library="OPL" package="C0603" value="33p" x="-4.953" y="4.318" rot="R90"/>
<element name="R34" library="OPL" package="R0603" value="100k" x="-19.05" y="8.636" rot="R270"/>
<element name="R35" library="OPL" package="R0603" value="100k" x="-6.477" y="4.318" rot="R90"/>
<element name="C16" library="OPL" package="C0603" value="100n" x="-5.334" y="1.27"/>
<element name="C17" library="OPL" package="C0603" value="100n" x="5.842" y="5.207"/>
<element name="C18" library="OPL" package="C0603" value="33p" x="6.477" y="3.048" rot="R90"/>
<element name="R37" library="OPL" package="R0603" value="100k" x="5.08" y="2.921" rot="R90"/>
<element name="R36" library="OPL" package="R0603" value="100k" x="27.94" y="93.091"/>
<element name="R40" library="OPL" package="R0603" value="1.2K" x="-18.796" y="33.02" rot="R90"/>
<element name="D3" library="dp_devices" package="DO-214AC" value="SS34" x="-7.239" y="14.859" rot="R180"/>
</elements>
<signals>
<signal name="GND">
<contactref element="C12" pad="+"/>
<contactref element="C11" pad="-"/>
<polygon width="0.4064" layer="16">
<vertex x="35.0615" y="112.1545"/>
<vertex x="-41.31" y="108.712"/>
<vertex x="-40.675" y="-4.318"/>
<vertex x="39.1485" y="-8.5725"/>
</polygon>
<contactref element="U$2" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$2" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$13" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$13" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$6" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$6" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$4" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$3" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$5" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$17" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="J1" pad="3"/>
<contactref element="J1" pad="5"/>
<contactref element="J1" pad="7"/>
<contactref element="J1" pad="8"/>
<contactref element="J1" pad="6"/>
<contactref element="J1" pad="4"/>
<contactref element="U$12" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$14" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$12" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$18" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$15" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$15" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$16" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$19" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$9" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$9" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$25" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$25" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$28" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$28" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$20" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$26" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$27" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U$30" pad="RING_B@1" route="any" routetag="G$1.RING"/>
<contactref element="U2" pad="1"/>
<contactref element="C49" pad="1"/>
<contactref element="C23" pad="1"/>
<contactref element="C24" pad="2"/>
<contactref element="C37" pad="1"/>
<contactref element="C38" pad="2"/>
<contactref element="C1" pad="1"/>
<contactref element="C2" pad="2"/>
<contactref element="C3" pad="1"/>
<contactref element="C4" pad="2"/>
<contactref element="U$2" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$2" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$13" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$13" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$6" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$6" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$4" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$3" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$5" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$17" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$28" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$28" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$25" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$25" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$9" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$9" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$30" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$27" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$26" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$20" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$15" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$15" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$12" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$12" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<contactref element="U$19" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$18" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$16" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="U$14" pad="RING_T@3" route="any" routetag="G$1.RING"/>
<contactref element="C6" pad="2"/>
<contactref element="C21" pad="1"/>
<contactref element="C5" pad="1"/>
<contactref element="C22" pad="2"/>
<contactref element="R84" pad="2"/>
<contactref element="R83" pad="2"/>
<contactref element="IC1" pad="3"/>
<contactref element="IC1" pad="5"/>
<contactref element="U$32" pad="8"/>
<contactref element="R89" pad="1"/>
<contactref element="R92" pad="1"/>
<contactref element="R94" pad="1"/>
<contactref element="R96" pad="1"/>
<contactref element="IC3" pad="12"/>
<contactref element="R24" pad="2"/>
<contactref element="R25" pad="2"/>
<contactref element="R26" pad="1"/>
<contactref element="R27" pad="1"/>
<contactref element="R28" pad="1"/>
<contactref element="R30" pad="2"/>
<contactref element="R29" pad="2"/>
<contactref element="R31" pad="1"/>
<contactref element="R32" pad="1"/>
<contactref element="R33" pad="1"/>
<contactref element="IC5" pad="3"/>
<contactref element="C17" pad="2"/>
<contactref element="C16" pad="1"/>
<contactref element="IC5" pad="5"/>
<contactref element="R68" pad="2"/>
<contactref element="R40" pad="2"/>
<contactref element="U$7" pad="P$1"/>
<contactref element="U$31" pad="P$1"/>
<contactref element="D3" pad="1"/>
<wire x1="17.78" y1="85.344" x2="17.78" y2="86.614" width="0" layer="19" extent="1-1"/>
<wire x1="17.78" y1="84.074" x2="17.78" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="28.7" y1="87.5" x2="17.78" y2="86.614" width="0" layer="19" extent="1-16"/>
<wire x1="6.604" y1="5.207" x2="8.8" y2="6.25" width="0" layer="19" extent="1-16"/>
<wire x1="4.318" y1="33.02" x2="5.625" y2="29.375" width="0" layer="19" extent="1-1"/>
<wire x1="3.048" y1="33.02" x2="4.318" y2="33.02" width="0" layer="19" extent="1-1"/>
<wire x1="1.778" y1="33.02" x2="3.048" y2="33.02" width="0" layer="19" extent="1-1"/>
<wire x1="-18.796" y1="33.782" x2="-16.2" y2="37.5" width="0" layer="19" extent="1-16"/>
<wire x1="-19.558" y1="29.464" x2="-18.796" y2="33.782" width="0" layer="19" extent="1-1"/>
<wire x1="7.366" y1="10.922" x2="8.8" y2="6.25" width="0" layer="19" extent="1-16"/>
<wire x1="3.87" y1="12.192" x2="7.366" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="3.87" y1="9.652" x2="3.87" y2="12.192" width="0" layer="19" extent="1-1"/>
<wire x1="2.981" y1="1.27" x2="6.604" y2="5.207" width="0" layer="19" extent="1-1"/>
<wire x1="-2.219" y1="2.54" x2="2.981" y2="1.27" width="0" layer="19" extent="1-1"/>
<wire x1="-6.096" y1="1.27" x2="-2.219" y2="2.54" width="0" layer="19" extent="1-1"/>
<wire x1="16.002" y1="20.26" x2="21.3" y2="21.875" width="0" layer="19" extent="1-16"/>
<wire x1="14.732" y1="16.637" x2="16.002" y2="20.26" width="0" layer="19" extent="1-1"/>
<wire x1="4.572" y1="65.786" x2="-1.855" y2="65.725" width="0" layer="19" extent="1-1"/>
<wire x1="-11.684" y1="79.502" x2="-5.625" y2="76.875" width="0" layer="19" extent="1-1"/>
<wire x1="-13.208" y1="79.502" x2="-11.684" y2="79.502" width="0" layer="19" extent="1-1"/>
<wire x1="4.1402" y1="56.388" x2="-1.855" y2="60.645" width="0" layer="19" extent="1-1"/>
<wire x1="4.572" y1="53.086" x2="4.1402" y2="56.388" width="0" layer="19" extent="1-1"/>
<wire x1="4.318" y1="45.974" x2="4.572" y2="53.086" width="0" layer="19" extent="1-1"/>
<wire x1="3.048" y1="45.974" x2="4.318" y2="45.974" width="0" layer="19" extent="1-1"/>
<wire x1="1.778" y1="45.974" x2="3.048" y2="45.974" width="0" layer="19" extent="1-1"/>
<wire x1="-16.764" y1="13.589" x2="-16.2" y2="6.25" width="0" layer="19" extent="1-16"/>
<wire x1="-15.24" y1="13.589" x2="-16.764" y2="13.589" width="0" layer="19" extent="1-1"/>
<wire x1="-16.824" y1="16.002" x2="-16.764" y2="13.589" width="0" layer="19" extent="1-1"/>
<wire x1="-13.716" y1="92.837" x2="-16.2" y2="100" width="0" layer="19" extent="1-16"/>
<wire x1="-12.446" y1="92.837" x2="-13.716" y2="92.837" width="0" layer="19" extent="1-1"/>
<wire x1="-5.08" y1="9.652" x2="-2.219" y2="2.54" width="0" layer="19" extent="1-1"/>
<wire x1="-5.08" y1="10.922" x2="-5.08" y2="9.652" width="0" layer="19" extent="1-1"/>
<wire x1="-5.08" y1="12.192" x2="-5.08" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="-5.259" y1="14.859" x2="-5.08" y2="12.192" width="0" layer="19" extent="1-1"/>
<wire x1="-5.842" y1="20.193" x2="-5.259" y2="14.859" width="0" layer="19" extent="1-1"/>
<wire x1="-5.842" y1="25.908" x2="-5.842" y2="20.193" width="0" layer="19" extent="1-1"/>
<wire x1="-11.43" y1="26.924" x2="-5.842" y2="25.908" width="0" layer="19" extent="1-1"/>
<wire x1="2.667" y1="76.073" x2="-5.625" y2="76.875" width="0" layer="19" extent="1-1"/>
<wire x1="4.445" y1="84.074" x2="2.667" y2="76.073" width="0" layer="19" extent="1-1"/>
<wire x1="4.445" y1="85.344" x2="4.445" y2="84.074" width="0" layer="19" extent="1-1"/>
<wire x1="4.445" y1="86.614" x2="4.445" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="16.002" y1="29.337" x2="16.002" y2="20.26" width="0" layer="19" extent="1-1"/>
<wire x1="14.732" y1="29.337" x2="16.002" y2="29.337" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="12V" class="1">
<contactref element="D1" pad="2"/>
<contactref element="C11" pad="+"/>
<contactref element="C23" pad="2"/>
<contactref element="IC4" pad="4"/>
<contactref element="C37" pad="2"/>
<contactref element="IC11" pad="4"/>
<contactref element="C1" pad="2"/>
<contactref element="IC2" pad="4"/>
<contactref element="C3" pad="2"/>
<contactref element="IC3" pad="4"/>
<contactref element="IC1" pad="4"/>
<contactref element="C5" pad="2"/>
<contactref element="C21" pad="2"/>
<contactref element="U$32" pad="16"/>
<contactref element="R87" pad="2"/>
<contactref element="IC5" pad="8"/>
<contactref element="C17" pad="1"/>
<wire x1="5.969" y1="85.344" x2="8.576" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="-13.716" y1="88.96" x2="5.969" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="-13.716" y1="91.313" x2="-13.716" y2="88.96" width="0" layer="19" extent="1-1"/>
<wire x1="4.572" y1="50.546" x2="5.969" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="2.032" y1="49.308" x2="4.572" y2="50.546" width="0" layer="19" extent="1-1"/>
<wire x1="3.048" y1="44.45" x2="2.032" y2="49.308" width="0" layer="19" extent="1-1"/>
<wire x1="3.048" y1="41.716" x2="3.048" y2="44.45" width="0" layer="19" extent="1-1"/>
<wire x1="14.732" y1="27.813" x2="3.048" y2="41.716" width="0" layer="19" extent="1-1"/>
<wire x1="14.732" y1="25.46" x2="14.732" y2="27.813" width="0" layer="19" extent="1-1"/>
<wire x1="5.842" y1="10.922" x2="14.732" y2="25.46" width="0" layer="19" extent="1-1"/>
<wire x1="3.87" y1="10.922" x2="5.842" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="5.08" y1="5.207" x2="5.842" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="2.981" y1="5.08" x2="5.08" y2="5.207" width="0" layer="19" extent="1-1"/>
<wire x1="-9.906" y1="26.924" x2="3.048" y2="41.716" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="24.892" x2="-9.906" y2="26.924" width="0" layer="19" extent="1-1"/>
<wire x1="-14.478" y1="26.924" x2="-11.624" y2="24.892" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="-12V" class="1">
<contactref element="D2" pad="1"/>
<contactref element="C12" pad="-"/>
<contactref element="R148" pad="1"/>
<contactref element="C24" pad="1"/>
<contactref element="IC4" pad="11"/>
<contactref element="C38" pad="1"/>
<contactref element="IC11" pad="11"/>
<contactref element="C2" pad="1"/>
<contactref element="IC2" pad="11"/>
<contactref element="C4" pad="1"/>
<contactref element="IC3" pad="11"/>
<contactref element="IC1" pad="11"/>
<contactref element="C6" pad="1"/>
<contactref element="C22" pad="1"/>
<contactref element="U$32" pad="9"/>
<contactref element="IC5" pad="4"/>
<contactref element="C16" pad="2"/>
<contactref element="D3" pad="2"/>
<wire x1="13.776" y1="85.344" x2="16.256" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="4.572" y1="63.246" x2="13.776" y2="85.344" width="0" layer="19" extent="1-1"/>
<wire x1="2.032" y1="63.532" x2="4.572" y2="63.246" width="0" layer="19" extent="1-1"/>
<wire x1="4.318" y1="60.452" x2="4.572" y2="63.246" width="0" layer="19" extent="1-1"/>
<wire x1="-13.208" y1="81.026" x2="2.032" y2="63.532" width="0" layer="19" extent="1-1"/>
<wire x1="-13.716" y1="83.76" x2="-13.208" y2="81.026" width="0" layer="19" extent="1-1"/>
<wire x1="3.048" y1="36.516" x2="4.318" y2="60.452" width="0" layer="19" extent="1-1"/>
<wire x1="3.048" y1="34.544" x2="3.048" y2="36.516" width="0" layer="19" extent="1-1"/>
<wire x1="14.732" y1="20.26" x2="3.048" y2="34.544" width="0" layer="19" extent="1-1"/>
<wire x1="14.732" y1="18.161" x2="14.732" y2="20.26" width="0" layer="19" extent="1-1"/>
<wire x1="-1.33" y1="10.922" x2="14.732" y2="18.161" width="0" layer="19" extent="1-1"/>
<wire x1="-3.556" y1="10.922" x2="-1.33" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="-9.219" y1="14.859" x2="-3.556" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="16.002" x2="-9.219" y2="14.859" width="0" layer="19" extent="1-1"/>
<wire x1="-13.716" y1="13.589" x2="-11.624" y2="16.002" width="0" layer="19" extent="1-1"/>
<wire x1="-2.219" y1="1.27" x2="-1.33" y2="10.922" width="0" layer="19" extent="1-1"/>
<wire x1="-4.572" y1="1.27" x2="-2.219" y2="1.27" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$64" class="1">
<contactref element="D2" pad="2"/>
<contactref element="J1" pad="1"/>
<contactref element="J1" pad="2"/>
<wire x1="-1.855" y1="68.265" x2="2.032" y2="67.532" width="0" layer="19" extent="1-1"/>
<wire x1="-4.395" y1="68.265" x2="-1.855" y2="68.265" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$28" class="1">
<contactref element="D1" pad="1"/>
<contactref element="J1" pad="9"/>
<contactref element="J1" pad="10"/>
<wire x1="-4.395" y1="58.105" x2="-1.855" y2="58.105" width="0" layer="19" extent="1-1"/>
<wire x1="2.032" y1="53.308" x2="-1.855" y2="58.105" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$2">
<contactref element="R10" pad="1"/>
<contactref element="C8" pad="2"/>
<contactref element="IC4" pad="1"/>
<wire x1="7.747" y1="44.069" x2="9.398" y2="44.323" width="0" layer="19" extent="1-1"/>
<wire x1="6.858" y1="41.716" x2="7.747" y2="44.069" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$6">
<contactref element="R3" pad="1"/>
<contactref element="U$8" pad="P$2"/>
<wire x1="-18.75" y1="61.25" x2="-19.558" y2="77.47" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$12">
<contactref element="U$13" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R4" pad="1"/>
<contactref element="U$13" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<wire x1="-13.716" y1="94.488" x2="-12.5" y2="104.5" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$14">
<contactref element="R1" pad="1"/>
<contactref element="R5" pad="2"/>
<contactref element="R4" pad="2"/>
<contactref element="R3" pad="2"/>
<contactref element="R2" pad="2"/>
<contactref element="C7" pad="1"/>
<contactref element="IC2" pad="2"/>
<wire x1="-10.541" y1="92.583" x2="-12.192" y2="94.488" width="0" layer="19" extent="1-1"/>
<wire x1="-10.541" y1="91.059" x2="-10.541" y2="92.583" width="0" layer="19" extent="1-1"/>
<wire x1="-11.176" y1="88.96" x2="-10.541" y2="91.059" width="0" layer="19" extent="1-1"/>
<wire x1="-18.923" y1="87.376" x2="-11.176" y2="88.96" width="0" layer="19" extent="1-1"/>
<wire x1="-18.923" y1="84.963" x2="-18.923" y2="87.376" width="0" layer="19" extent="1-1"/>
<wire x1="-19.558" y1="78.994" x2="-18.923" y2="84.963" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$22">
<contactref element="R10" pad="2"/>
<contactref element="U$4" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="U$4" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="R12" pad="2"/>
<wire x1="7.874" y1="45.847" x2="9.398" y2="45.847" width="0" layer="19" extent="1-1"/>
<wire x1="-25" y1="54.5" x2="7.874" y2="45.847" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$7">
<contactref element="R1" pad="2"/>
<contactref element="R11" pad="1"/>
<contactref element="R6" pad="1"/>
<contactref element="R7" pad="1"/>
<contactref element="C7" pad="2"/>
<contactref element="IC2" pad="1"/>
<contactref element="IC3" pad="5"/>
<wire x1="-9.017" y1="91.059" x2="-9.017" y2="92.583" width="0" layer="19" extent="1-1"/>
<wire x1="-9.906" y1="88.96" x2="-9.017" y2="91.059" width="0" layer="19" extent="1-1"/>
<wire x1="6.477" y1="49.149" x2="-9.906" y2="88.96" width="0" layer="19" extent="1-1"/>
<wire x1="-4.318" y1="39.751" x2="6.477" y2="49.149" width="0" layer="19" extent="1-1"/>
<wire x1="-4.953" y1="30.861" x2="-4.318" y2="39.751" width="0" layer="19" extent="1-1"/>
<wire x1="13.462" y1="25.46" x2="-4.953" y2="30.861" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$8">
<contactref element="R11" pad="2"/>
<contactref element="R12" pad="1"/>
<contactref element="C8" pad="1"/>
<contactref element="IC4" pad="2"/>
<wire x1="6.35" y1="45.847" x2="6.477" y2="47.625" width="0" layer="19" extent="1-1"/>
<wire x1="6.223" y1="44.069" x2="6.35" y2="45.847" width="0" layer="19" extent="1-1"/>
<wire x1="5.588" y1="41.716" x2="6.223" y2="44.069" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$20">
<contactref element="U$2" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R5" pad="1"/>
<contactref element="U$2" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<wire x1="-18.923" y1="88.9" x2="-25" y2="104.5" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$4">
<contactref element="U$6" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R23" pad="1"/>
<contactref element="U$6" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$7" pad="P$3"/>
<wire x1="-15.367" y1="78.105" x2="-0.545" y2="76.875" width="0" layer="19" extent="1-1"/>
<wire x1="-25" y1="88.875" x2="-15.367" y2="78.105" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$5">
<contactref element="R6" pad="2"/>
<contactref element="R8" pad="1"/>
<contactref element="C9" pad="1"/>
<contactref element="IC4" pad="6"/>
<wire x1="0.254" y1="44.069" x2="0.254" y2="45.593" width="0" layer="19" extent="1-1"/>
<wire x1="0.508" y1="41.716" x2="0.254" y2="44.069" width="0" layer="19" extent="1-1"/>
<wire x1="-2.794" y1="39.751" x2="0.508" y2="41.716" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$9">
<contactref element="R7" pad="2"/>
<contactref element="R9" pad="1"/>
<contactref element="C10" pad="1"/>
<contactref element="IC4" pad="9"/>
<wire x1="0.127" y1="34.417" x2="0.508" y2="36.516" width="0" layer="19" extent="1-1"/>
<wire x1="0.127" y1="32.893" x2="0.127" y2="34.417" width="0" layer="19" extent="1-1"/>
<wire x1="-3.429" y1="30.861" x2="0.127" y2="32.893" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$11">
<contactref element="R13" pad="1"/>
<contactref element="C9" pad="2"/>
<contactref element="IC4" pad="7"/>
<wire x1="-2.794" y1="44.069" x2="-1.27" y2="44.069" width="0" layer="19" extent="1-1"/>
<wire x1="-0.762" y1="41.716" x2="-1.27" y2="44.069" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$15">
<contactref element="U$3" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R13" pad="2"/>
<contactref element="U$3" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="R8" pad="2"/>
<wire x1="-2.794" y1="45.593" x2="-12.5" y2="54.5" width="0" layer="19" extent="1-16"/>
<wire x1="-1.27" y1="45.593" x2="-2.794" y2="45.593" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$16">
<contactref element="U$5" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R14" pad="2"/>
<contactref element="U$5" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="R9" pad="2"/>
<wire x1="-3.048" y1="32.893" x2="-1.397" y2="32.893" width="0" layer="19" extent="1-1"/>
<wire x1="-25" y1="42" x2="-3.048" y2="32.893" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$17">
<contactref element="R15" pad="1"/>
<contactref element="R16" pad="2"/>
<contactref element="C13" pad="1"/>
<contactref element="IC4" pad="13"/>
<wire x1="5.969" y1="34.417" x2="5.588" y2="36.516" width="0" layer="19" extent="1-1"/>
<wire x1="5.969" y1="32.766" x2="5.969" y2="34.417" width="0" layer="19" extent="1-1"/>
<wire x1="8.001" y1="31.115" x2="5.969" y2="32.766" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$18">
<contactref element="R17" pad="1"/>
<contactref element="C13" pad="2"/>
<contactref element="IC4" pad="14"/>
<wire x1="7.493" y1="34.417" x2="9.398" y2="34.544" width="0" layer="19" extent="1-1"/>
<wire x1="6.858" y1="36.516" x2="7.493" y2="34.417" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$19">
<contactref element="R17" pad="2"/>
<contactref element="U$17" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="U$17" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="R16" pad="1"/>
<wire x1="7.493" y1="32.766" x2="9.398" y2="33.02" width="0" layer="19" extent="1-1"/>
<wire x1="-12.5" y1="42" x2="7.493" y2="32.766" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$1">
<contactref element="U$7" pad="P$2"/>
<contactref element="IC2" pad="10"/>
<wire x1="-14.986" y1="83.76" x2="-3.125" y2="76.875" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$3">
<contactref element="R2" pad="1"/>
<contactref element="R22" pad="2"/>
<contactref element="IC2" pad="8"/>
<wire x1="-17.526" y1="83.76" x2="-17.399" y2="81.661" width="0" layer="19" extent="1-1"/>
<wire x1="-18.923" y1="83.439" x2="-17.526" y2="83.76" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$10">
<contactref element="R23" pad="2"/>
<contactref element="R22" pad="1"/>
<contactref element="IC2" pad="9"/>
<wire x1="-15.367" y1="79.629" x2="-15.875" y2="81.661" width="0" layer="19" extent="1-1"/>
<wire x1="-16.256" y1="83.76" x2="-15.875" y2="81.661" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$53">
<contactref element="R54" pad="1"/>
<contactref element="C30" pad="2"/>
<contactref element="IC11" pad="1"/>
<wire x1="5.969" y1="90.043" x2="5.969" y2="91.948" width="0" layer="19" extent="1-1"/>
<wire x1="8.576" y1="89.154" x2="5.969" y2="90.043" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$54">
<contactref element="R51" pad="1"/>
<contactref element="U$29" pad="P$2"/>
<wire x1="12.446" y1="33.401" x2="18.75" y2="45" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$63">
<contactref element="U$25" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R52" pad="1"/>
<contactref element="U$25" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<wire x1="12.5" y1="1.75" x2="12.573" y2="13.462" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$65">
<contactref element="R50" pad="1"/>
<contactref element="R53" pad="2"/>
<contactref element="R52" pad="2"/>
<contactref element="R51" pad="2"/>
<contactref element="R57" pad="2"/>
<contactref element="C29" pad="1"/>
<contactref element="IC3" pad="2"/>
<wire x1="17.526" y1="27.813" x2="17.526" y2="29.337" width="0" layer="19" extent="1-1"/>
<wire x1="17.272" y1="25.46" x2="17.526" y2="27.813" width="0" layer="19" extent="1-1"/>
<wire x1="12.446" y1="31.877" x2="17.526" y2="29.337" width="0" layer="19" extent="1-1"/>
<wire x1="14.097" y1="14.986" x2="17.272" y2="25.46" width="0" layer="19" extent="1-1"/>
<wire x1="12.573" y1="14.986" x2="14.097" y2="14.986" width="0" layer="19" extent="1-1"/>
<wire x1="9.271" y1="16.637" x2="12.573" y2="14.986" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$66">
<contactref element="R54" pad="2"/>
<contactref element="U$20" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="U$20" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="R56" pad="2"/>
<wire x1="4.445" y1="90.043" x2="4.445" y2="91.948" width="0" layer="19" extent="1-1"/>
<wire x1="25" y1="51.75" x2="4.445" y2="90.043" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$67">
<contactref element="R55" pad="1"/>
<contactref element="R50" pad="2"/>
<contactref element="R58" pad="1"/>
<contactref element="R59" pad="1"/>
<contactref element="C29" pad="2"/>
<contactref element="IC3" pad="1"/>
<contactref element="IC2" pad="5"/>
<wire x1="7.874" y1="77.343" x2="2.667" y2="90.043" width="0" layer="19" extent="1-1"/>
<wire x1="9.525" y1="77.343" x2="7.874" y2="77.343" width="0" layer="19" extent="1-1"/>
<wire x1="-14.986" y1="88.96" x2="2.667" y2="90.043" width="0" layer="19" extent="1-1"/>
<wire x1="19.05" y1="29.337" x2="9.525" y2="77.343" width="0" layer="19" extent="1-1"/>
<wire x1="19.05" y1="27.813" x2="19.05" y2="29.337" width="0" layer="19" extent="1-1"/>
<wire x1="18.542" y1="25.46" x2="19.05" y2="27.813" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$68">
<contactref element="R56" pad="1"/>
<contactref element="R55" pad="2"/>
<contactref element="C30" pad="1"/>
<contactref element="IC11" pad="2"/>
<wire x1="5.969" y1="88.519" x2="8.576" y2="87.884" width="0" layer="19" extent="1-1"/>
<wire x1="4.445" y1="88.519" x2="5.969" y2="88.519" width="0" layer="19" extent="1-1"/>
<wire x1="2.667" y1="88.519" x2="4.445" y2="88.519" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$69">
<contactref element="U$9" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R53" pad="1"/>
<contactref element="U$9" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<wire x1="25" y1="1.75" x2="14.097" y2="13.462" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$70">
<contactref element="U$28" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R72" pad="1"/>
<contactref element="U$28" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$31" pad="P$3"/>
<wire x1="11.049" y1="13.462" x2="25" y2="17.375" width="0" layer="19" extent="1-16"/>
<wire x1="0.545" y1="29.375" x2="11.049" y2="13.462" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$71">
<contactref element="R58" pad="2"/>
<contactref element="R60" pad="1"/>
<contactref element="C31" pad="1"/>
<contactref element="IC11" pad="6"/>
<wire x1="6.35" y1="82.296" x2="8.576" y2="82.804" width="0" layer="19" extent="1-1"/>
<wire x1="4.826" y1="82.296" x2="6.35" y2="82.296" width="0" layer="19" extent="1-1"/>
<wire x1="7.874" y1="78.867" x2="6.35" y2="82.296" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$72">
<contactref element="R59" pad="2"/>
<contactref element="R61" pad="1"/>
<contactref element="C32" pad="1"/>
<contactref element="IC11" pad="9"/>
<wire x1="16.002" y1="82.423" x2="17.526" y2="82.423" width="0" layer="19" extent="1-1"/>
<wire x1="13.776" y1="82.804" x2="16.002" y2="82.423" width="0" layer="19" extent="1-1"/>
<wire x1="9.525" y1="78.867" x2="13.776" y2="82.804" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$73">
<contactref element="R62" pad="1"/>
<contactref element="C31" pad="2"/>
<contactref element="IC11" pad="7"/>
<wire x1="6.35" y1="80.772" x2="8.576" y2="81.534" width="0" layer="19" extent="1-1"/>
<wire x1="4.826" y1="80.772" x2="6.35" y2="80.772" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="OUTPUT2_SUM_TO_VCA2">
<contactref element="R63" pad="1"/>
<contactref element="R64" pad="2"/>
<contactref element="C32" pad="2"/>
<contactref element="U$16" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="IC11" pad="8"/>
<contactref element="U$16" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<wire x1="17.53" y1="80.873" x2="21.3" y2="87.5" width="0" layer="19" extent="1-16"/>
<wire x1="16.002" y1="80.899" x2="17.53" y2="80.873" width="0" layer="19" extent="1-1"/>
<wire x1="13.776" y1="81.534" x2="16.002" y2="80.899" width="0" layer="19" extent="1-1"/>
<wire x1="13.97" y1="92.964" x2="21.3" y2="87.5" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$76">
<contactref element="U$27" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R63" pad="2"/>
<contactref element="U$27" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="R61" pad="2"/>
<wire x1="19.054" y1="80.873" x2="19.05" y2="82.423" width="0" layer="19" extent="1-1"/>
<wire x1="25" y1="64.25" x2="19.054" y2="80.873" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$77">
<contactref element="R64" pad="1"/>
<contactref element="R65" pad="2"/>
<contactref element="C33" pad="1"/>
<contactref element="IC11" pad="13"/>
<wire x1="13.776" y1="87.884" x2="12.446" y2="92.964" width="0" layer="19" extent="1-1"/>
<wire x1="16.002" y1="88.392" x2="13.776" y2="87.884" width="0" layer="19" extent="1-1"/>
<wire x1="17.526" y1="88.392" x2="16.002" y2="88.392" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$78">
<contactref element="R66" pad="1"/>
<contactref element="C33" pad="2"/>
<contactref element="IC11" pad="14"/>
<wire x1="16.002" y1="89.916" x2="17.526" y2="89.916" width="0" layer="19" extent="1-1"/>
<wire x1="13.776" y1="89.154" x2="16.002" y2="89.916" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$80">
<contactref element="D_2NEG" pad="-"/>
<contactref element="D_2POS" pad="+"/>
<contactref element="R68" pad="1"/>
<contactref element="IC2" pad="6"/>
<wire x1="11.23" y1="76.5625" x2="26.27" y2="76.5625" width="0" layer="19" extent="1-1"/>
<wire x1="4.191" y1="76.073" x2="11.23" y2="76.5625" width="0" layer="19" extent="1-1"/>
<wire x1="-16.256" y1="88.96" x2="4.191" y2="76.073" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$81">
<contactref element="IC2" pad="7"/>
<contactref element="D_2NEG" pad="+"/>
<contactref element="D_2POS" pad="-"/>
<wire x1="13.77" y1="76.5625" x2="23.73" y2="76.5625" width="0" layer="19" extent="1-1"/>
<wire x1="-17.526" y1="88.96" x2="13.77" y2="76.5625" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$84">
<contactref element="U$31" pad="P$2"/>
<contactref element="IC3" pad="10"/>
<wire x1="13.462" y1="20.26" x2="3.125" y2="29.375" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$85">
<contactref element="R57" pad="1"/>
<contactref element="R71" pad="2"/>
<contactref element="IC3" pad="8"/>
<wire x1="9.271" y1="18.161" x2="10.795" y2="18.161" width="0" layer="19" extent="1-1"/>
<wire x1="10.922" y1="20.26" x2="10.795" y2="18.161" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$86">
<contactref element="R72" pad="2"/>
<contactref element="R71" pad="1"/>
<contactref element="IC3" pad="9"/>
<wire x1="12.192" y1="20.26" x2="12.319" y2="18.161" width="0" layer="19" extent="1-1"/>
<wire x1="11.049" y1="14.986" x2="12.319" y2="18.161" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="OUTPUT1_SUM_TO_VCA1">
<contactref element="U$14" pad="SWITCH_B@1" route="any" routetag="G$1.SWITCH"/>
<contactref element="R14" pad="1"/>
<contactref element="R15" pad="2"/>
<contactref element="C10" pad="2"/>
<contactref element="IC4" pad="8"/>
<contactref element="U$14" pad="SWITCH_T@3" route="any" routetag="G$1.SWITCH"/>
<wire x1="-1.397" y1="34.417" x2="9.525" y2="31.115" width="0" layer="19" extent="1-1"/>
<wire x1="-3.048" y1="34.417" x2="-1.397" y2="34.417" width="0" layer="19" extent="1-1"/>
<wire x1="-0.762" y1="36.516" x2="-1.397" y2="34.417" width="0" layer="19" extent="1-1"/>
<wire x1="-21.3" y1="18.75" x2="-3.048" y2="34.417" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="-5V" class="1">
<contactref element="R147" pad="1"/>
<contactref element="U$8" pad="P$1"/>
<contactref element="U$29" pad="P$1"/>
<contactref element="R91" pad="2"/>
<contactref element="R93" pad="2"/>
<contactref element="IC2" pad="13"/>
<contactref element="IC2" pad="14"/>
<wire x1="-11.176" y1="83.76" x2="-9.906" y2="83.76" width="0" layer="19" extent="1-1"/>
<wire x1="-9.779" y1="81.026" x2="-9.906" y2="83.76" width="0" layer="19" extent="1-1"/>
<wire x1="-21.25" y1="61.25" x2="-9.779" y2="81.026" width="0" layer="19" extent="1-1"/>
<wire x1="-19.304" y1="23.114" x2="-21.25" y2="61.25" width="0" layer="19" extent="1-1"/>
<wire x1="-4.318" y1="22.86" x2="-19.304" y2="23.114" width="0" layer="19" extent="1-1"/>
<wire x1="21.25" y1="45" x2="-4.318" y2="22.86" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="5V" class="1">
<contactref element="R149" pad="2"/>
<contactref element="U$8" pad="P$3"/>
<contactref element="U$29" pad="P$3"/>
<contactref element="IC3" pad="14"/>
<wire x1="18.542" y1="20.26" x2="16.17" y2="45" width="0" layer="19" extent="1-1"/>
<wire x1="18.796" y1="18.161" x2="18.542" y2="20.26" width="0" layer="19" extent="1-1"/>
<wire x1="-16.17" y1="61.25" x2="16.17" y2="45" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="-5V_TO_5V">
<contactref element="R147" pad="2"/>
<contactref element="R149" pad="1"/>
<contactref element="IC3" pad="13"/>
<wire x1="17.272" y1="20.26" x2="-9.779" y2="79.502" width="0" layer="19" extent="1-1"/>
<wire x1="17.272" y1="18.161" x2="17.272" y2="20.26" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="-5VIN" class="1">
<contactref element="U2" pad="2"/>
<contactref element="R148" pad="2"/>
<contactref element="C49" pad="2"/>
<contactref element="IC2" pad="12"/>
<wire x1="-11.684" y1="81.026" x2="-12.446" y2="83.76" width="0" layer="19" extent="1-1"/>
<wire x1="5.842" y1="60.452" x2="-11.684" y2="81.026" width="0" layer="19" extent="1-1"/>
<wire x1="6.0198" y1="56.388" x2="5.842" y2="60.452" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$61">
<contactref element="IC1" pad="8"/>
<contactref element="C25" pad="2"/>
<contactref element="R80" pad="2"/>
<wire x1="-3.556" y1="15.367" x2="-2.032" y2="16.637" width="0" layer="19" extent="1-1"/>
<wire x1="-1.33" y1="14.732" x2="-2.032" y2="16.637" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$74">
<contactref element="IC1" pad="9"/>
<contactref element="C25" pad="1"/>
<contactref element="R79" pad="2"/>
<contactref element="U$32" pad="12"/>
<wire x1="-1.33" y1="13.462" x2="-0.635" y2="19.939" width="0" layer="19" extent="1-1"/>
<wire x1="-3.556" y1="13.843" x2="-1.33" y2="13.462" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="19.812" x2="-3.556" y2="13.843" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA1_CV">
<contactref element="R85" pad="1"/>
<contactref element="U$14" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$14" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<wire x1="-25" y1="23.25" x2="-12.192" y2="13.589" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA2_IN">
<contactref element="U$15" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$15" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R36" pad="1"/>
<wire x1="27.178" y1="93.091" x2="25" y2="95.5" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA2_CV">
<contactref element="R86" pad="1"/>
<contactref element="U$16" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$16" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<wire x1="9.271" y1="13.335" x2="25" y2="83" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA1_OUT">
<contactref element="R81" pad="1"/>
<contactref element="R82" pad="1"/>
<contactref element="U$18" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$18" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<wire x1="-6.604" y1="6.731" x2="-6.604" y2="8.255" width="0" layer="19" extent="1-1"/>
<wire x1="-12.5" y1="10.75" x2="-6.604" y2="8.255" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA2_OUT">
<contactref element="R79" pad="1"/>
<contactref element="R80" pad="1"/>
<contactref element="U$19" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$19" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<wire x1="-2.159" y1="19.939" x2="12.5" y2="95.5" width="0" layer="19" extent="1-1"/>
<wire x1="-2.032" y1="18.161" x2="-2.159" y2="19.939" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$87">
<contactref element="C26" pad="2"/>
<contactref element="R82" pad="2"/>
<contactref element="IC1" pad="14"/>
<wire x1="-3.429" y1="6.731" x2="-1.33" y2="7.112" width="0" layer="19" extent="1-1"/>
<wire x1="-5.08" y1="6.731" x2="-3.429" y2="6.731" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$88">
<contactref element="C26" pad="1"/>
<contactref element="R81" pad="2"/>
<contactref element="IC1" pad="13"/>
<contactref element="U$32" pad="4"/>
<wire x1="-3.429" y1="8.255" x2="-1.33" y2="8.382" width="0" layer="19" extent="1-1"/>
<wire x1="-5.08" y1="8.255" x2="-3.429" y2="8.255" width="0" layer="19" extent="1-1"/>
<wire x1="-16.824" y1="21.082" x2="-5.08" y2="8.255" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA2_SUMIN">
<contactref element="IC1" pad="10"/>
<contactref element="R83" pad="1"/>
<wire x1="-3.556" y1="12.192" x2="-1.33" y2="12.192" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA1_SUMIN">
<contactref element="IC1" pad="12"/>
<contactref element="R84" pad="1"/>
<wire x1="-3.556" y1="9.652" x2="-1.33" y2="9.652" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$89">
<contactref element="IC1" pad="1"/>
<contactref element="C27" pad="2"/>
<contactref element="U$32" pad="6"/>
<contactref element="U$32" pad="3"/>
<wire x1="-16.824" y1="18.542" x2="3.87" y2="7.112" width="0" layer="19" extent="1-1"/>
<wire x1="-19.304" y1="18.542" x2="-16.824" y2="18.542" width="0" layer="19" extent="1-1"/>
<wire x1="-16.824" y1="22.352" x2="-16.824" y2="18.542" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$90">
<contactref element="R86" pad="2"/>
<contactref element="IC1" pad="6"/>
<contactref element="C28" pad="1"/>
<contactref element="U$32" pad="13"/>
<wire x1="6.096" y1="13.335" x2="7.747" y2="13.335" width="0" layer="19" extent="1-1"/>
<wire x1="3.87" y1="13.462" x2="6.096" y2="13.335" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="21.082" x2="3.87" y2="13.462" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$91">
<contactref element="IC1" pad="7"/>
<contactref element="C28" pad="2"/>
<contactref element="U$32" pad="11"/>
<contactref element="U$32" pad="14"/>
<wire x1="3.87" y1="14.732" x2="6.096" y2="14.859" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="18.542" x2="3.87" y2="14.732" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="22.352" x2="-11.624" y2="18.542" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$92">
<contactref element="U$32" pad="1"/>
<contactref element="R87" pad="1"/>
<wire x1="-16.824" y1="24.892" x2="-16.002" y2="26.924" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$93">
<contactref element="R89" pad="2"/>
<contactref element="C35" pad="1"/>
<wire x1="-21.082" y1="27.94" x2="-21.082" y2="29.464" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$94">
<contactref element="C35" pad="2"/>
<contactref element="R88" pad="2"/>
<contactref element="U$32" pad="2"/>
<wire x1="-19.558" y1="26.416" x2="-19.558" y2="27.94" width="0" layer="19" extent="1-1"/>
<wire x1="-16.824" y1="23.622" x2="-19.558" y2="26.416" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA1_IN">
<contactref element="U$12" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<contactref element="U$12" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R34" pad="1"/>
<wire x1="-19.05" y1="9.398" x2="-25" y2="10.75" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="VCA1_FB">
<contactref element="IC1" pad="2"/>
<contactref element="C27" pad="1"/>
<contactref element="R85" pad="2"/>
<contactref element="U$32" pad="5"/>
<wire x1="-10.668" y1="13.589" x2="3.87" y2="8.382" width="0" layer="19" extent="1-1"/>
<wire x1="-16.824" y1="19.812" x2="-10.668" y2="13.589" width="0" layer="19" extent="1-1"/>
<wire x1="-19.304" y1="20.066" x2="-16.824" y2="19.812" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$95">
<contactref element="U$32" pad="7"/>
<contactref element="C36" pad="2"/>
<contactref element="R91" pad="1"/>
<wire x1="-16.824" y1="17.272" x2="-19.812" y2="15.113" width="0" layer="19" extent="1-1"/>
<wire x1="-19.304" y1="21.59" x2="-16.824" y2="17.272" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$96">
<contactref element="C36" pad="1"/>
<contactref element="R92" pad="2"/>
<wire x1="-18.288" y1="13.589" x2="-19.812" y2="13.589" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$97">
<contactref element="C39" pad="2"/>
<contactref element="R93" pad="1"/>
<contactref element="U$32" pad="15"/>
<wire x1="-5.842" y1="22.86" x2="-5.842" y2="24.384" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="23.622" x2="-5.842" y2="24.384" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$98">
<contactref element="C39" pad="1"/>
<contactref element="R94" pad="2"/>
<wire x1="-4.318" y1="24.384" x2="-4.318" y2="25.908" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$99">
<contactref element="R96" pad="2"/>
<contactref element="C40" pad="1"/>
<wire x1="-4.318" y1="18.669" x2="-4.318" y2="20.193" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$100">
<contactref element="C40" pad="2"/>
<contactref element="R95" pad="2"/>
<contactref element="U$32" pad="10"/>
<wire x1="-5.842" y1="17.272" x2="-5.842" y2="18.669" width="0" layer="19" extent="1-1"/>
<wire x1="-11.624" y1="17.272" x2="-5.842" y2="17.272" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$13">
<contactref element="R60" pad="2"/>
<contactref element="U$26" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="R62" pad="2"/>
<contactref element="U$26" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<wire x1="3.302" y1="80.772" x2="3.302" y2="82.296" width="0" layer="19" extent="1-1"/>
<wire x1="12.5" y1="51.75" x2="3.302" y2="80.772" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$26">
<contactref element="IC11" pad="3"/>
<contactref element="R24" pad="1"/>
<wire x1="5.969" y1="86.614" x2="8.576" y2="86.614" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$27">
<contactref element="IC3" pad="3"/>
<contactref element="R25" pad="1"/>
<wire x1="16.002" y1="27.813" x2="16.002" y2="25.46" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$29">
<contactref element="IC11" pad="5"/>
<contactref element="R26" pad="2"/>
<wire x1="5.969" y1="84.074" x2="8.576" y2="84.074" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$30">
<contactref element="IC11" pad="10"/>
<contactref element="R27" pad="2"/>
<wire x1="13.776" y1="84.074" x2="16.256" y2="84.074" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$31">
<contactref element="R65" pad="1"/>
<contactref element="R66" pad="2"/>
<contactref element="U$30" pad="TIP_B@1" route="any" routetag="G$1.TIP"/>
<contactref element="U$30" pad="TIP_T@3" route="any" routetag="G$1.TIP"/>
<wire x1="19.05" y1="88.392" x2="19.05" y2="89.916" width="0" layer="19" extent="1-1"/>
<wire x1="12.5" y1="64.25" x2="19.05" y2="88.392" width="0" layer="19" extent="1-16"/>
</signal>
<signal name="N$32">
<contactref element="IC11" pad="12"/>
<contactref element="R28" pad="2"/>
<wire x1="13.776" y1="86.614" x2="16.256" y2="86.614" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$33">
<contactref element="IC4" pad="3"/>
<contactref element="R29" pad="1"/>
<wire x1="4.318" y1="41.716" x2="4.318" y2="44.45" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$34">
<contactref element="IC2" pad="3"/>
<contactref element="R30" pad="1"/>
<wire x1="-12.446" y1="91.313" x2="-12.446" y2="88.96" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$35">
<contactref element="IC4" pad="5"/>
<contactref element="R31" pad="2"/>
<wire x1="1.778" y1="41.716" x2="1.778" y2="44.45" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$36">
<contactref element="IC4" pad="10"/>
<contactref element="R32" pad="2"/>
<wire x1="1.778" y1="34.544" x2="1.778" y2="36.516" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$37">
<contactref element="IC4" pad="12"/>
<contactref element="R33" pad="2"/>
<wire x1="4.318" y1="34.544" x2="4.318" y2="36.516" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$38">
<contactref element="IC5" pad="2"/>
<contactref element="R34" pad="2"/>
<contactref element="R35" pad="1"/>
<contactref element="C15" pad="1"/>
<wire x1="-6.477" y1="3.556" x2="-19.05" y2="7.874" width="0" layer="19" extent="1-1"/>
<wire x1="-4.953" y1="3.556" x2="-6.477" y2="3.556" width="0" layer="19" extent="1-1"/>
<wire x1="-2.219" y1="3.81" x2="-4.953" y2="3.556" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$39">
<contactref element="R35" pad="2"/>
<contactref element="R88" pad="1"/>
<contactref element="C15" pad="2"/>
<contactref element="IC5" pad="1"/>
<wire x1="-6.477" y1="5.08" x2="-21.082" y2="26.416" width="0" layer="19" extent="1-1"/>
<wire x1="-4.953" y1="5.08" x2="-6.477" y2="5.08" width="0" layer="19" extent="1-1"/>
<wire x1="-2.219" y1="5.08" x2="-4.953" y2="5.08" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$40">
<contactref element="R37" pad="1"/>
<contactref element="C18" pad="1"/>
<contactref element="R36" pad="2"/>
<contactref element="IC5" pad="6"/>
<wire x1="6.477" y1="2.286" x2="28.702" y2="93.091" width="0" layer="19" extent="1-1"/>
<wire x1="5.08" y1="2.159" x2="6.477" y2="2.286" width="0" layer="19" extent="1-1"/>
<wire x1="2.981" y1="2.54" x2="5.08" y2="2.159" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$41">
<contactref element="R37" pad="2"/>
<contactref element="C18" pad="2"/>
<contactref element="R95" pad="1"/>
<contactref element="IC5" pad="7"/>
<wire x1="2.981" y1="3.81" x2="-4.318" y2="17.272" width="0" layer="19" extent="1-1"/>
<wire x1="5.08" y1="3.683" x2="2.981" y2="3.81" width="0" layer="19" extent="1-1"/>
<wire x1="6.477" y1="3.81" x2="5.08" y2="3.683" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$44">
<contactref element="R40" pad="1"/>
<contactref element="D_1NEG" pad="-"/>
<contactref element="D_1POS" pad="+"/>
<contactref element="IC3" pad="6"/>
<wire x1="-13.77" y1="29.6875" x2="12.192" y2="25.46" width="0" layer="19" extent="1-1"/>
<wire x1="-18.796" y1="32.258" x2="-13.77" y2="29.6875" width="0" layer="19" extent="1-1"/>
<wire x1="-23.73" y1="29.6875" x2="-18.796" y2="32.258" width="0" layer="19" extent="1-1"/>
</signal>
<signal name="N$45">
<contactref element="D_1NEG" pad="+"/>
<contactref element="D_1POS" pad="-"/>
<contactref element="IC3" pad="7"/>
<wire x1="-11.23" y1="29.6875" x2="10.922" y2="25.46" width="0" layer="19" extent="1-1"/>
<wire x1="-26.27" y1="29.6875" x2="-11.23" y2="29.6875" width="0" layer="19" extent="1-1"/>
</signal>
</signals>
<errors>
<approved hash="4,1,848b7d5277bf8bd6"/>
<approved hash="4,1,84337c0271db8aaa"/>
<approved hash="4,16,848b7d5277bf8bd6"/>
<approved hash="4,16,84337c0271db8aaa"/>
<approved hash="4,1,cea54c4f51543d9d"/>
<approved hash="4,1,9f2354474fc46e2f"/>
<approved hash="4,1,dd334ec755c50ebe"/>
<approved hash="4,1,84537ca270fb8aca"/>
<approved hash="4,16,dd334ec755c50ebe"/>
<approved hash="4,16,9f2354474fc46e2f"/>
<approved hash="4,16,cea54c4f51543d9d"/>
<approved hash="4,16,f6813b240dbcdf2a"/>
<approved hash="4,16,67479ad500f0677b"/>
<approved hash="4,16,84537ca270fb8aca"/>
<approved hash="4,16,657fb7160151ce80"/>
<approved hash="4,16,d90a03b2eeec5d4e"/>
<approved hash="4,16,01ecd2f0defd7f2f"/>
<approved hash="4,16,5d675bd185b19e18"/>
<approved hash="4,16,d274dfed874e92bf"/>
<approved hash="4,16,de900bb1fd5db755"/>
<approved hash="4,16,eb1cc2e1cc47e942"/>
<approved hash="4,16,ee5cc6b3cbf7ea75"/>
<approved hash="4,16,ec8ac599ca28eed6"/>
<approved hash="4,1,de3c796582fd2b84"/>
<approved hash="4,1,9fad01f4e38c6d35"/>
<approved hash="4,1,93820cefef075e2a"/>
<approved hash="4,1,c9274f8ab3e23c8f"/>
<approved hash="4,1,52c840c24e529abb"/>
<approved hash="4,1,7179498166b4ba83"/>
<approved hash="4,16,de3c796582fd2b84"/>
<approved hash="4,16,93820cefef075e2a"/>
<approved hash="4,16,c9274f8ab3e23c8f"/>
<approved hash="4,16,9fad01f4e38c6d35"/>
<approved hash="4,16,7179498166b4ba83"/>
<approved hash="4,16,52c840c24e529abb"/>
<approved hash="4,1,6210c0a953cd1b16"/>
<approved hash="4,1,c16dd4cf49aeae6a"/>
<approved hash="4,1,a84170d753cd43b8"/>
<approved hash="4,1,8444734570c88acf"/>
<approved hash="4,1,85487c5971da89d9"/>
<approved hash="4,1,a4037c5a70c7abee"/>
<approved hash="4,16,c16dd4cf49aeae6a"/>
<approved hash="4,16,6210c0a953cd1b16"/>
<approved hash="4,16,a84170d753cd43b8"/>
<approved hash="4,16,85487c5971da89d9"/>
<approved hash="4,16,a4037c5a70c7abee"/>
<approved hash="4,16,8444734570c88acf"/>
</errors>
</board>
</drawing>
<compatibility>
<note version="6.3" minversion="6.2.2" severity="warning">
Since Version 6.2.2 text objects can contain more than one line,
which will not be processed correctly with this version.
</note>
</compatibility>
</eagle>

license: MIT

license_type: permissive

branch_name: refs/heads/master

extension: brd


text:
# The set of languages for which implicit dependencies are needed:
set(CMAKE_DEPENDS_LANGUAGES
  "CXX"
  )
# The set of files for implicit dependencies of each language:
set(CMAKE_DEPENDS_CHECK_CXX
  "E:/GitHub/MiniSQL/code/API/API.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/API/API.cpp.obj"
  "E:/GitHub/MiniSQL/code/BufferManager/BufferManager.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/BufferManager/BufferManager.cpp.obj"
  "E:/GitHub/MiniSQL/code/CatalogManager/CatalogManager.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/CatalogManager/CatalogManager.cpp.obj"
  "E:/GitHub/MiniSQL/code/IndexManager/IndexManager.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/IndexManager/IndexManager.cpp.obj"
  "E:/GitHub/MiniSQL/code/Interpreter/Interpreter.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/Interpreter/Interpreter.cpp.obj"
  "E:/GitHub/MiniSQL/code/Minisql.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/Minisql.cpp.obj"
  "E:/GitHub/MiniSQL/code/RecordManager/RecordManager.cpp" "E:/GitHub/MiniSQL/buildgcc/CMakeFiles/minisql.dir/code/RecordManager/RecordManager.cpp.obj"
  )
set(CMAKE_CXX_COMPILER_ID "GNU")

# The include file search paths:
set(CMAKE_CXX_TARGET_INCLUDE_PATH
  )

# Targets to which this target links.
set(CMAKE_TARGET_LINKED_INFO_FILES
  )

# Fortran module output directory.
set(CMAKE_Fortran_TARGET_MODULE_DIR "")

repository: DatabasesWorks/MiniSQL

repo_name: DatabasesWorks/MiniSQL

extension: cmake


text:
package utils

import (
	"crypto/tls"
	"encoding/json"
	"errors"
	"fmt"
	"io/ioutil"
	"net/http"
	"net/url"
	"strings"
	"sync"
)

var (
	GET_METHOD    = "GET"
	POST_METHOD   = "POST"
	SENDTYPE_FROM = "from"
	SENDTYPE_JSON = "json"
)

type HttpSend struct {
	Link     string
	SendType string
	Header   map[string]string
	Body     map[string]string
	sync.RWMutex
}

func NewHttpSend(link string) *HttpSend {
	return &HttpSend{
		Link:     link,
		SendType: SENDTYPE_FROM,
	}
}

func (h *HttpSend) SetBody(body map[string]string) {
	h.Lock()
	defer h.Unlock()
	h.Body = body
}

func (h *HttpSend) SetHeader(header map[string]string) {
	h.Lock()
	defer h.Unlock()
	h.Header = header
}

func (h *HttpSend) SetSendType(send_type string) {
	h.Lock()
	defer h.Unlock()
	h.SendType = send_type
}

func (h *HttpSend) Get() ([]byte, error) {
	return h.send(GET_METHOD)
}

func (h *HttpSend) Post() ([]byte, error) {
	return h.send(POST_METHOD)
}

func GetUrlBuild(link string, data map[string]string) string {
	u, _ := url.Parse(link)
	q := u.Query()
	for k, v := range data {
		q.Set(k, v)
	}
	u.RawQuery = q.Encode()
	return u.String()
}

func (h *HttpSend) send(method string) ([]byte, error) {
	var (
		req       *http.Request
		resp      *http.Response
		client    http.Client
		send_data string
		err       error
	)

	if len(h.Body) > 0 {
		if strings.ToLower(h.SendType) == SENDTYPE_JSON {
			send_body, json_err := json.Marshal(h.Body)
			if json_err != nil {
				return nil, json_err
			}
			send_data = string(send_body)
		} else {
			send_body := http.Request{}
			send_body.ParseForm()
			for k, v := range h.Body {
				send_body.Form.Add(k, v)
			}
			send_data = send_body.Form.Encode()
		}
	}

	//忽略https的证书
	client.Transport = &http.Transport{
		TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
	}

	req, err = http.NewRequest(method, h.Link, strings.NewReader(send_data))
	if err != nil {
		return nil, err
	}
	defer req.Body.Close()

	//设置默认header
	if len(h.Header) == 0 {
		//json
		if strings.ToLower(h.SendType) == SENDTYPE_JSON {
			h.Header = map[string]string{
				"Content-Type": "application/json; charset=utf-8",
			}
		} else { //form
			h.Header = map[string]string{
				"Content-Type": "application/x-www-form-urlencoded",
			}
		}
	}

	for k, v := range h.Header {
		if strings.ToLower(k) == "host" {
			req.Host = v
		} else {
			req.Header.Add(k, v)
		}
	}

	resp, err = client.Do(req)
	if err != nil {
		return nil, err
	}
	defer resp.Body.Close()

	if resp.StatusCode != http.StatusOK {
		return nil, errors.New(fmt.Sprintf("error http code :%d", resp.StatusCode))
	}

	return ioutil.ReadAll(resp.Body)
}

gha_language: Go

extension: go


text:
package elbv2

import (
	"context"
	"github.com/go-logr/logr"
	"k8s.io/apimachinery/pkg/util/sets"
	elbv2api "sigs.k8s.io/aws-load-balancer-controller/apis/elbv2/v1beta1"
	"sigs.k8s.io/aws-load-balancer-controller/pkg/deploy/tracking"
	"sigs.k8s.io/aws-load-balancer-controller/pkg/model/core"
	elbv2model "sigs.k8s.io/aws-load-balancer-controller/pkg/model/elbv2"
	"sigs.k8s.io/controller-runtime/pkg/client"
)

// NewTargetGroupBindingSynthesizer constructs new targetGroupBindingSynthesizer
func NewTargetGroupBindingSynthesizer(k8sClient client.Client, trackingProvider tracking.Provider, tgbManager TargetGroupBindingManager, logger logr.Logger, stack core.Stack) *targetGroupBindingSynthesizer {
	return &targetGroupBindingSynthesizer{
		k8sClient:        k8sClient,
		trackingProvider: trackingProvider,
		tgbManager:       tgbManager,
		logger:           logger,
		stack:            stack,

		unmatchedK8sTGBs: nil,
	}
}

// targetGroupBindingSynthesizer is responsible for synthesize TargetGroupBinding resources types for certain stack.
type targetGroupBindingSynthesizer struct {
	k8sClient        client.Client
	trackingProvider tracking.Provider
	tgbManager       TargetGroupBindingManager
	logger           logr.Logger
	stack            core.Stack

	unmatchedK8sTGBs []*elbv2api.TargetGroupBinding
}

func (s *targetGroupBindingSynthesizer) Synthesize(ctx context.Context) error {
	var resTGBs []*elbv2model.TargetGroupBindingResource
	s.stack.ListResources(&resTGBs)
	k8sTGBs, err := s.findK8sTargetGroupBindings(ctx)
	if err != nil {
		return err
	}

	matchedResAndK8sTGBs, unmatchedResTGBs, unmatchedK8sTGBs, err := matchResAndK8sTargetGroupBindings(resTGBs, k8sTGBs)
	if err != nil {
		return err
	}
	s.unmatchedK8sTGBs = unmatchedK8sTGBs

	for _, resTGB := range unmatchedResTGBs {
		tgbStatus, err := s.tgbManager.Create(ctx, resTGB)
		if err != nil {
			return err
		}
		resTGB.SetStatus(tgbStatus)
	}
	for _, resAndK8sTGB := range matchedResAndK8sTGBs {
		tgbStatus, err := s.tgbManager.Update(ctx, resAndK8sTGB.resTGB, resAndK8sTGB.k8sTGB)
		if err != nil {
			return err
		}
		resAndK8sTGB.resTGB.SetStatus(tgbStatus)
	}
	return nil
}

func (s *targetGroupBindingSynthesizer) PostSynthesize(ctx context.Context) error {
	for _, k8sTGB := range s.unmatchedK8sTGBs {
		if err := s.tgbManager.Delete(ctx, k8sTGB); err != nil {
			return err
		}
	}
	return nil
}

func (s *targetGroupBindingSynthesizer) findK8sTargetGroupBindings(ctx context.Context) ([]*elbv2api.TargetGroupBinding, error) {
	stackLabels := s.trackingProvider.StackLabels(s.stack)

	tgbList := &elbv2api.TargetGroupBindingList{}
	if err := s.k8sClient.List(ctx, tgbList, client.MatchingLabels(stackLabels)); err != nil {
		return nil, err
	}

	tgbs := make([]*elbv2api.TargetGroupBinding, 0, len(tgbList.Items))
	for i := range tgbList.Items {
		tgbs = append(tgbs, &tgbList.Items[i])
	}
	return tgbs, nil
}

type resAndK8sTargetGroupBindingPair struct {
	resTGB *elbv2model.TargetGroupBindingResource
	k8sTGB *elbv2api.TargetGroupBinding
}

func matchResAndK8sTargetGroupBindings(resTGBs []*elbv2model.TargetGroupBindingResource, k8sTGBs []*elbv2api.TargetGroupBinding) ([]resAndK8sTargetGroupBindingPair, []*elbv2model.TargetGroupBindingResource, []*elbv2api.TargetGroupBinding, error) {
	var matchedResAndK8sTGBs []resAndK8sTargetGroupBindingPair
	var unmatchedResTGBs []*elbv2model.TargetGroupBindingResource
	var unmatchedK8sTGBs []*elbv2api.TargetGroupBinding
	resTGBsByARN, err := mapResTargetGroupBindingByARN(resTGBs)
	if err != nil {
		return nil, nil, nil, err
	}
	k8sTGBsByARN := mapK8sTargetGroupBindingByARN(k8sTGBs)

	resTGBARNs := sets.StringKeySet(resTGBsByARN)
	k8sTGBARNs := sets.StringKeySet(k8sTGBsByARN)
	for _, tgARN := range resTGBARNs.Intersection(k8sTGBARNs).List() {
		resTGB := resTGBsByARN[tgARN]
		k8sTGB := k8sTGBsByARN[tgARN]
		matchedResAndK8sTGBs = append(matchedResAndK8sTGBs, resAndK8sTargetGroupBindingPair{
			resTGB: resTGB,
			k8sTGB: k8sTGB,
		})
	}

	for _, tgARN := range resTGBARNs.Difference(k8sTGBARNs).List() {
		unmatchedResTGBs = append(unmatchedResTGBs, resTGBsByARN[tgARN])
	}
	for _, tgARN := range k8sTGBARNs.Difference(resTGBARNs).List() {
		unmatchedK8sTGBs = append(unmatchedK8sTGBs, k8sTGBsByARN[tgARN])
	}

	return matchedResAndK8sTGBs, unmatchedResTGBs, unmatchedK8sTGBs, nil
}

func mapResTargetGroupBindingByARN(resTGBs []*elbv2model.TargetGroupBindingResource) (map[string]*elbv2model.TargetGroupBindingResource, error) {
	ctx := context.Background()
	resTGBsByARN := make(map[string]*elbv2model.TargetGroupBindingResource, len(resTGBs))
	for _, resTGB := range resTGBs {
		tgARN, err := resTGB.Spec.Template.Spec.TargetGroupARN.Resolve(ctx)
		if err != nil {
			return nil, err
		}
		resTGBsByARN[tgARN] = resTGB
	}
	return resTGBsByARN, nil
}

func mapK8sTargetGroupBindingByARN(k8sTGBs []*elbv2api.TargetGroupBinding) map[string]*elbv2api.TargetGroupBinding {
	k8sTGBsByARN := make(map[string]*elbv2api.TargetGroupBinding, len(k8sTGBs))
	for _, k8sTGB := range k8sTGBs {
		tgARN := k8sTGB.Spec.TargetGroupARN
		k8sTGBsByARN[tgARN] = k8sTGB
	}
	return k8sTGBsByARN
}

branch_name: refs/heads/main


text:
cmake_minimum_required(VERSION 2.8.2)

find_package(BISON ${BISON_VERSION_REQUIRED})
find_package(FLEX ${FLEX_VERSION_REQUIRED})
find_program(M4 m4)

if(NOT M4_FOUND AND (NOT BISON_FOUND OR NOT FLEX_FOUND))

    message(WARNING "m4 not found on your system. trying to build from source...")
    set(M4_VERSION_REQUIRED 1.4.6)

    configure_file(
        "${CMAKE_CURRENT_SOURCE_DIR}/cmake/m4-download.cmake"
        "${CMAKE_CURRENT_BINARY_DIR}/m4-download/CMakeLists.txt"
    )

    execute_process(
        COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/m4-download"
    )
    if(result)
        message(FATAL_ERROR "download step for m4 ${M4_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND ${CMAKE_COMMAND} --build .
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/m4-download"
    )
    if(result)
        message(FATAL_ERROR "download step for m4 ${M4_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND ./configure --prefix "${CMAKE_CURRENT_BINARY_DIR}/m4-install"
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/m4-build"
    )
    if(result)
        message(FATAL_ERROR "configure step for m4 ${M4_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND make -j8
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/m4-build"
    )
    if(result)
        message(FATAL_ERROR "build step for m4 ${M4_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND make install
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/m4-build"
    )
    if(result)
        message(FATAL_ERROR "install step for m4 ${M4_VERSION_REQUIRED} failed: ${result}")
    endif()

    # Add the new m4 binary in front of the system path, so the configure
    # script of flex/bison should find it.
    set(ENV{PATH} ${CMAKE_CURRENT_BINARY_DIR}/m4-install/bin:$ENV{PATH})

endif()

if(NOT BISON_FOUND)

    message(WARNING "bison ${BISON_VERSION_REQUIRED} not found on your system. trying to build from source...")

    configure_file(
        "${CMAKE_CURRENT_SOURCE_DIR}/cmake/bison-download.cmake"
        "${CMAKE_CURRENT_BINARY_DIR}/bison-download/CMakeLists.txt"
    )

    execute_process(
        COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bison-download"
    )
    if(result)
        message(FATAL_ERROR "download step for bison ${BISON_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND ${CMAKE_COMMAND} --build .
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bison-download"
    )
    if(result)
        message(FATAL_ERROR "download step for bison ${BISON_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND ./configure --prefix "${CMAKE_CURRENT_BINARY_DIR}/bison-install"
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bison-build"
    )
    if(result)
        message(FATAL_ERROR "configure step for bison ${BISON_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND make -j8
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bison-build"
    )
    if(result)
        message(FATAL_ERROR "build step for bison ${BISON_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND make install
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bison-build"
    )
    if(result)
        message(FATAL_ERROR "install step for bison ${BISON_VERSION_REQUIRED} failed: ${result}")
    endif()

    # Add the binary directory to the system environment path. Not sure if this
    # is necessary.
    set(ENV{PATH} ${CMAKE_CURRENT_BINARY_DIR}/bison-install/bin:$ENV{PATH})

    # Unset cached variables which may have been set by the previous invocation
    # of FindBISON.cmake, preventing it from searching again.
    unset(BISON_EXECUTABLE CACHE)

    # Set the path for FIND_*() so FindBISON.cmake hopefully finds the new one,
    # even if an older version of bison is already installed on the system.
    set(CMAKE_PREFIX_PATH "${CMAKE_CURRENT_BINARY_DIR}/bison-install")

    # Find again.
    find_package(
        BISON ${BISON_VERSION_REQUIRED} EXACT
        REQUIRED
    )

    # Clear the prefix path.
    unset(CMAKE_PREFIX_PATH)

endif()

if(NOT FLEX_FOUND)

    message(WARNING "flex ${FLEX_VERSION_REQUIRED} not found on your system. trying to build from source...")

    configure_file(
        "${CMAKE_CURRENT_SOURCE_DIR}/cmake/flex-download.cmake"
        "${CMAKE_CURRENT_BINARY_DIR}/flex-download/CMakeLists.txt"
    )

    execute_process(
        COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/flex-download"
    )
    if(result)
        message(FATAL_ERROR "download step for flex ${FLEX_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND ${CMAKE_COMMAND} --build .
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/flex-download"
    )
    if(result)
        message(FATAL_ERROR "download step for flex ${FLEX_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND ./configure --prefix "${CMAKE_CURRENT_BINARY_DIR}/flex-install"
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/flex-build"
    )
    if(result)
        message(FATAL_ERROR "configure step for flex ${FLEX_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND make -j8
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/flex-build"
    )
    if(result)
        message(FATAL_ERROR "build step for flex ${FLEX_VERSION_REQUIRED} failed: ${result}")
    endif()

    execute_process(
        COMMAND make install
        RESULT_VARIABLE result
        WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/flex-build"
    )
    if(result)
        message(FATAL_ERROR "install step for flex ${FLEX_VERSION_REQUIRED} failed: ${result}")
    endif()

    # Add the binary directory to the system environment path. Not sure if this
    # is necessary.
    set(ENV{PATH} ${CMAKE_CURRENT_BINARY_DIR}/flex-install/bin:$ENV{PATH})

    # Unset cached variables which may have been set by the previous invocation
    # of FindFLEX.cmake, preventing it from searching again.
    unset(FLEX_EXECUTABLE CACHE)
    unset(FL_LIBRARY CACHE)
    unset(FLEX_INCLUDE_DIR CACHE)

    # Set the path for FIND_*() so FindFLEX.cmake hopefully finds the new one,
    # even if an older version of bison is already installed on the system.
    set(CMAKE_PREFIX_PATH "${CMAKE_CURRENT_BINARY_DIR}/flex-install")

    # Find again.
    find_package(
        FLEX ${FLEX_VERSION_REQUIRED} EXACT
        REQUIRED
    )

    # Clear the prefix path.
    unset(CMAKE_PREFIX_PATH)

endif()

repository: QFer/libqasm

repo_name: QFer/libqasm

branch_name: refs/heads/develop

gha_license_id: NOASSERTION


text:
@inproceedings{hoangetalAMTA16,
	Author = {Hieu Hoang, Nikolay Bogoychev, Lane Schwartz, and Marcin Junczys-Dowmunt},
	Title = {Fast, Scalable Phrase-Based SMT Decoding},
	Booktitle = {Proceedings of the 12th Conference of the Association for Machine Translation in the Americas, Volume 1: MT Researchers’ Track (AMTA’16)},
    Pages = {40--52},
	Month = {October},
	Year = {2016},
}

extension: bib


text:
@techreport{abdelfattah2017roadmap,
  author={Abdelfattah, Ahmad and Anzt, Hartwig and Bouteiller, Aurelien and
          Danalis, Anthony and Dongarra, Jack and Gates, Mark and
          Haidar, Azzam and Kurzak, Jakub and Luszczek, Piotr and
          Tomov, Stanimire and Wood, Stephen and Wu, Panruo and
          Yamazaki, Ichitaro and YarKhan, Asim},
  title={{SLATE} Working Note 1: Roadmap for the Development
         of a Linear Algebra Library for Exascale Computing:
         {SLATE}: Software for Linear Algebra Targeting Exascale},
  institution={Innovative Computing Laboratory, University of Tennessee},
  year={2017},
  month={June},
  number={ICL-UT-17-02},
  note={revision 04-2018}
}

@techreport{kurzak2017designing,
  author={Kurzak, Jakub and Wu, Panruo and Gates, Mark and Yamazaki, Ichitaro
          and Luszczek, Piotr and Ragghianti, Gerald and Dongarra, Jack},
  title={{SLATE} Working Note 3: Designing {SLATE}:
         Software for Linear Algebra Targeting Exascale},
  institution={Innovative Computing Laboratory, University of Tennessee},
  year={2017},
  month={September},
  number={ICL-UT-17-06},
  note={revision 09-2017}
}

@article{ballard2011minimizing,
  title={Minimizing communication in numerical linear algebra},
  author={Ballard, Grey and Demmel, James and Holtz, Olga and Schwartz, Oded},
  journal={SIAM Journal on Matrix Analysis and Applications},
  volume={32},
  number={3},
  pages={866--901},
  year={2011},
  publisher={SIAM}
}

@article{mahoney2011randomized,
  title={Randomized algorithms for matrices and data},
  author={Mahoney, Michael W and others},
  journal={Foundations and Trends{\textregistered} in Machine Learning},
  volume={3},
  number={2},
  pages={123--224},
  year={2011},
  publisher={Now Publishers, Inc.}
}

@techreport{kurzak2018parallel,
  author={Kurzak, Jakub and Gates, Mark and YarKhan, Asim and
          Yamazaki, Ichitaro and Wu, Panruo and Luszczek, Piotr
          and Finney, Jamie and Dongarra, Jack},
  title={{SLATE} Working Note 5: Parallel {BLAS} Performance Report},
  institution={Innovative Computing Laboratory, University of Tennessee},
  year={2018},
  month={March},
  number={ICL-UT-18-01},
  note={revision 03-2018}
}

repository: Bayyapu/ECP-ST-CAR-PUBLIC

repo_name: Bayyapu/ECP-ST-CAR-PUBLIC


text:
#ifndef STB_IMAGE_IMPLEMENTATION
#define STB_IMAGE_IMPLEMENTATION
#endif

//This project is dedicated to CSE410 and started on September 10th 2019
#include "Application.h"
#include "MainUILayout.h"
#include "Editor.h"
GLuint ALightCreator::Editor::icons = 0;
int main()
{
	ALightCreator::Application app("ALight Creator [CSE410 by Xingyu Chen]", 1280, 720);
	app.UIlayout = new ALightCreator::MainUILayout();
	app.Run();

	return 0;
}

repository: Asixa/ALight-Renderer-Complex

repo_name: Asixa/ALight-Renderer-Complex

extension: cpp


text:
@misc{quantum,
 author = {Designolle, Sébastien and Iommazzo, Gabriele and Besançon, Mathieu and Knebel, Sebastian and Gelß, Patrick and Pokutta, Sebastian},
 doi = {10.48550/ARXIV.2302.04721},
 keywords = {Quantum Physics (quant-ph), FOS: Physical sciences, FOS: Physical sciences},
 publisher = {arXiv},
 title = {Improved local models and new Bell inequalities via Frank-Wolfe algorithms},
 url = {https://arxiv.org/abs/2302.04721},
 year = {2023}
}

repository: matbesancon/hugo-site

repo_name: matbesancon/hugo-site

gha_license_id: MIT

gha_language: HTML


text:
SECTION = "devel/chicken"
DESCRIPTION = "Command-line argument handling, on top of SRFI 37"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://args.meta;md5=57587dfa1dc2bd564c021188efd9bdfc"
DEPENDS_append_class-cross = " chicken-egg-srfi-37-cross"
DEPENDS_append_class-crosssdk = " chicken-egg-srfi-37-crosssdk"
DEPENDS_append_class-nativesdk = " nativesdk-chicken-egg-srfi-37 chicken-egg-srfi-37-crosssdk"
DEPENDS = " chicken-egg-srfi-37 chicken-egg-srfi-37-cross"
RDEPENDS_${PN} = " chicken-egg-srfi-37"

SRC_URI = "http://code.call-cc.org/egg-tarballs/4/args/args-${PV}.tar.gz"

SRC_URI[md5sum] = "1f30bf40f1b0b6e4cff675e48811e0fd"
SRC_URI[sha256sum] = "62532d3479927a2c29d8f5540384c4698bdf747ddc843a4eb6ad9bbf1c627339"

S = "${WORKDIR}/args-${PV}"

inherit chicken_install

BBCLASSEXTEND = "cross crosssdk nativesdk"

repository: OSSystems/meta-chicken

repo_name: OSSystems/meta-chicken

extension: bb


text:
package cluster_test_tool

import (
	"errors"
	"math/rand"
	"strconv"
	"sync"
	"testing"
	"time"

	"github.com/asynkron/protoactor-go/actor"
	"github.com/asynkron/protoactor-go/cluster"
	"github.com/stretchr/testify/assert"
	"golang.org/x/net/context"
)

const (
	PubSubSubscriberKind        = "Subscriber"
	PubSubTimeoutSubscriberKind = "TimeoutSubscriber"
)

type PubSubClusterFixture struct {
	*BaseClusterFixture

	useDefaultTopicRegistration bool
	t                           testing.TB

	Deliveries     []Delivery
	DeliveriesLock *sync.RWMutex

	subscriberStore cluster.KeyValueStore[*cluster.Subscribers]
}

func NewPubSubClusterFixture(t testing.TB, clusterSize int, useDefaultTopicRegistration bool, opts ...ClusterFixtureOption) *PubSubClusterFixture {
	lock := &sync.RWMutex{}
	store := NewInMemorySubscriberStore()
	fixture := &PubSubClusterFixture{
		t:                           t,
		useDefaultTopicRegistration: useDefaultTopicRegistration,
		Deliveries:                  []Delivery{},
		DeliveriesLock:              lock,
		subscriberStore:             store,
	}

	pubSubOpts := []ClusterFixtureOption{
		WithGetClusterKinds(func() []*cluster.Kind {
			kinds := []*cluster.Kind{
				cluster.NewKind(PubSubSubscriberKind, fixture.subscriberProps()),
				cluster.NewKind(PubSubTimeoutSubscriberKind, fixture.timeoutSubscriberProps()),
			}
			if !fixture.useDefaultTopicRegistration {
				kinds = append(kinds, cluster.NewKind(cluster.TopicActorKind, actor.PropsFromProducer(func() actor.Actor {
					return cluster.NewTopicActor(store)
				})))
			}
			return kinds
		}),
		WithClusterConfigure(func(config *cluster.Config) *cluster.Config {
			cluster.WithRequestTimeout(time.Second * 1)(config)
			cluster.WithPubSubSubscriberTimeout(time.Second * 2)(config)
			return config
		}),
	}
	pubSubOpts = append(pubSubOpts, opts...)

	fixture.BaseClusterFixture = NewBaseInMemoryClusterFixture(clusterSize, pubSubOpts...)
	return fixture
}

func (p *PubSubClusterFixture) RandomMember() *cluster.Cluster {
	members := p.BaseClusterFixture.GetMembers()
	return members[rand.Intn(len(members))]
}

// VerifyAllSubscribersGotAllTheData verifies that all subscribers got all the data
func (p *PubSubClusterFixture) VerifyAllSubscribersGotAllTheData(subscriberIds []string, numMessages int) {
	WaitUntil(p.t, func() bool {
		p.DeliveriesLock.RLock()
		defer p.DeliveriesLock.RUnlock()
		return len(p.Deliveries) == numMessages*len(subscriberIds)
	}, "All messages should be delivered ", DefaultWaitTimeout*1000)

	p.DeliveriesLock.RLock()
	defer p.DeliveriesLock.RUnlock()

	expected := make([]Delivery, 0, len(subscriberIds))
	for _, subscriberId := range subscriberIds {
		for i := 0; i < numMessages; i++ {
			expected = append(expected, Delivery{
				Identity: subscriberId,
				Data:     i,
			})
		}
	}
	assert.ElementsMatch(p.t, expected, p.Deliveries)
}

// SubscribeAllTo subscribes all the given subscribers to the given topic
func (p *PubSubClusterFixture) SubscribeAllTo(topic string, subscriberIds []string) {
	for _, subscriberId := range subscriberIds {
		p.SubscribeTo(topic, subscriberId, PubSubSubscriberKind)
	}
}

// UnSubscribeAllFrom unsubscribes all the given subscribers from the given topic
func (p *PubSubClusterFixture) UnSubscribeAllFrom(topic string, subscriberIds []string) {
	for _, subscriberId := range subscriberIds {
		p.UnSubscribeTo(topic, subscriberId, PubSubSubscriberKind)
	}
}

// SubscribeTo subscribes the given subscriber to the given topic
func (p *PubSubClusterFixture) SubscribeTo(topic, identity, kind string) {
	c := p.RandomMember()
	res, err := c.SubscribeByClusterIdentity(topic, cluster.NewClusterIdentity(identity, kind), cluster.WithTimeout(time.Second*5))
	assert.NoError(p.t, err, kind+"/"+identity+" should be able to subscribe to topic "+topic)
	assert.NotNil(p.t, res, kind+"/"+identity+" subscribing should not time out on topic "+topic)
}

// UnSubscribeTo unsubscribes the given subscriber from the given topic
func (p *PubSubClusterFixture) UnSubscribeTo(topic, identity, kind string) {
	c := p.RandomMember()
	res, err := c.UnsubscribeByClusterIdentity(topic, cluster.NewClusterIdentity(identity, kind), cluster.WithTimeout(time.Second*5))
	assert.NoError(p.t, err, kind+"/"+identity+" should be able to unsubscribe from topic "+topic)
	assert.NotNil(p.t, res, kind+"/"+identity+" subscribing should not time out on topic "+topic)
}

// PublishData publishes the given message to the given topic
func (p *PubSubClusterFixture) PublishData(topic string, data int) (*cluster.PublishResponse, error) {
	c := p.RandomMember()
	return c.Publisher().Publish(context.Background(), topic, &DataPublished{Data: int32(data)}, cluster.WithTimeout(time.Second*5))
}

// PublishDataBatch publishes the given messages to the given topic
func (p *PubSubClusterFixture) PublishDataBatch(topic string, data []int) (*cluster.PublishResponse, error) {
	batches := make([]interface{}, 0)
	for _, d := range data {
		batches = append(batches, &DataPublished{Data: int32(d)})
	}

	c := p.RandomMember()
	return c.Publisher().PublishBatch(context.Background(), topic, &cluster.PubSubBatch{Envelopes: batches}, cluster.WithTimeout(time.Second*5))
}

// SubscriberIds returns the subscriber ids
func (p *PubSubClusterFixture) SubscriberIds(prefix string, count int) []string {
	ids := make([]string, 0, count)
	for i := 0; i < count; i++ {
		ids = append(ids, prefix+strconv.Itoa(i))
	}
	return ids
}

// GetSubscribersForTopic returns the subscribers for the given topic
func (p *PubSubClusterFixture) GetSubscribersForTopic(topic string) (*cluster.Subscribers, error) {
	return p.subscriberStore.Get(context.Background(), topic)
}

// ClearDeliveries clears the deliveries
func (p *PubSubClusterFixture) ClearDeliveries() {
	p.DeliveriesLock.Lock()
	defer p.DeliveriesLock.Unlock()
	p.Deliveries = make([]Delivery, 0)
}

// subscriberProps returns the props for the subscriber actor
func (p *PubSubClusterFixture) subscriberProps() *actor.Props {
	return actor.PropsFromFunc(func(context actor.Context) {
		if msg, ok := context.Message().(*DataPublished); ok {
			identity := cluster.GetClusterIdentity(context)

			p.AppendDelivery(Delivery{
				Identity: identity.Identity,
				Data:     int(msg.Data),
			})
			context.Respond(&Response{})
		}
	})
}

// timeoutSubscriberProps returns the props for the subscriber actor
func (p *PubSubClusterFixture) timeoutSubscriberProps() *actor.Props {
	return actor.PropsFromFunc(func(context actor.Context) {
		if msg, ok := context.Message().(*DataPublished); ok {
			time.Sleep(time.Second * 4) // 4 seconds is longer than the configured subscriber timeout

			identity := cluster.GetClusterIdentity(context)
			p.AppendDelivery(Delivery{
				Identity: identity.Identity,
				Data:     int(msg.Data),
			})
			context.Respond(&Response{})
		}
	})
}

// AppendDelivery appends a delivery to the deliveries slice
func (p *PubSubClusterFixture) AppendDelivery(delivery Delivery) {
	p.DeliveriesLock.Lock()
	p.Deliveries = append(p.Deliveries, delivery)
	p.DeliveriesLock.Unlock()
}

type Delivery struct {
	Identity string
	Data     int
}

func NewInMemorySubscriberStore() *InMemorySubscribersStore[*cluster.Subscribers] {
	return &InMemorySubscribersStore[*cluster.Subscribers]{
		store: &sync.Map{},
	}
}

type InMemorySubscribersStore[T any] struct {
	store *sync.Map // map[string]T
}

func (i *InMemorySubscribersStore[T]) Set(_ context.Context, key string, value T) error {
	i.store.Store(key, value)
	return nil
}

func (i *InMemorySubscribersStore[T]) Get(_ context.Context, key string) (T, error) {
	var r T
	value, ok := i.store.Load(key)
	if !ok {
		return r, errors.New("not found")
	}
	return value.(T), nil
}

func (i *InMemorySubscribersStore[T]) Clear(_ context.Context, key string) error {
	i.store.Delete(key)
	return nil
}

repository: kokizzu/protoactor-go

repo_name: kokizzu/protoactor-go

branch_name: refs/heads/dev


text:
require ${PN}.inc

SRC_URI = "http://sources.openembedded.org/opie-1.2.5-split_core_applets_rotateapplet.tar.bz2;name=split_core_applets_rotateapplet \
           http://sources.openembedded.org/opie-1.2.5-split_apps.tar.bz2;name=split_apps"
SRC_URI[split_core_applets_rotateapplet.md5sum] = "b8efa8491e7d53430328e55ee6fec62d"
SRC_URI[split_core_applets_rotateapplet.sha256sum] = "b8dab51b515f41ad72a935f99f8bb466f4999d27a75c2505e9fde06bbe1d572b"
SRC_URI[split_apps.md5sum] = "c765d13427e4dc8ee396e4dfed2dbe73"
SRC_URI[split_apps.sha256sum] = "0fea454d8d286f7febc7449e4a06f73e941e8b22e9bab904a32e57f35479862a"

repository: overo/overo-oe-natty

repo_name: overo/overo-oe-natty

branch_name: HEAD


text:
@inproceedings{maximilian2018attention,
  author = {Maximilian Ilse and Jakub M. Tomczak and Max Welling},
  title = {Attention-based Deep Multiple Instance Learning},
  booktitle = {{ICML}},
  series = {{JMLR} Workshop and Conference Proceedings},
  volume = {80},
  pages = {2132--2141},
  publisher = {JMLR.org},
  year = {2018}
}

url: https://raw.githubusercontent.com/Hugh-Shi/DL-NLP-Readings/924e4d189e5660c5b5d4854278f3df755ae2231d/Bibtex/Attention-based Deep Multiple Instance Learning.bib

repository: Hugh-Shi/DL-NLP-Readings

repo_name: Hugh-Shi/DL-NLP-Readings


text:
#ifndef VOXEL_BLOCKY_MODEL_EMPTY_H
#define VOXEL_BLOCKY_MODEL_EMPTY_H

#include "voxel_blocky_model.h"

namespace zylann::voxel {

// A model with no visuals and no collisions by default.
class VoxelBlockyModelEmpty : public VoxelBlockyModel {
	GDCLASS(VoxelBlockyModelEmpty, VoxelBlockyModel)
public:
	VoxelBlockyModelEmpty();

	void bake(BakedData &baked_data, bool bake_tangents, MaterialIndexer &materials) const override;
	void rotate_90(math::Axis axis, bool clockwise) override;
	Ref<Mesh> get_preview_mesh() const override;
	bool is_empty() const override;

private:
	static void _bind_methods() {}
};

} // namespace zylann::voxel

#endif // VOXEL_BLOCKY_MODEL_EMPTY_H

extension: h


text:
package helm

// Version defines the helm version
type Version int

const (
	V2 Version = 2
	V3         = 3
)

type ChartSummary struct {
	Name         string
	ChartVersion string
	AppVersion   string
	Description  string
}

// ReleaseSummary is the information about a release in Helm
type ReleaseSummary struct {
	ReleaseName   string
	Revision      string
	Updated       string
	Status        string
	ChartFullName string
	Chart         string
	ChartVersion  string
	AppVersion    string
	Namespace     string
}


text:
#
# Base recipe: meta/recipes-graphics/xorg-proto/xf86dgaproto_2.1.bb
# Base branch: daisy
#
require xorg-proto-common.inc

SUMMARY = "XFree86-DGA: XFree86 Direct Graphics Access extension headers"

DESCRIPTION = "This package provides the wire protocol for the XFree86 \
Direct Graphics Access extension. This extension allows direct graphics \
access to a framebuffer-like region, as well as relative mouse \
reporting."

PR = "${INC_PR}.0"

LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=e01e66e4b317088cf869bc98e6af4fb6"

RCONFLICTS_${PN} = "xxf86dgaext"

DPN = "x11proto-xf86dga"

# There is no debian patch
DEBIAN_PATCH_TYPE = "nopatch"

repository: nghiaht-tsdv/meta-debian

repo_name: nghiaht-tsdv/meta-debian

branch_name: refs/heads/jethro

gha_language: BitBake


text:
@MISC{BOOK,
    author = "{Jméno Příjmení}",
    title  = "{\it Název}",
    year   = "2018-12-05",
    url    = "https://www.google.com/",
    note   = "[Online; Navštíveno: 2018-12-05]",
}

repository: europ/VUTBR-FIT-doc

repo_name: europ/VUTBR-FIT-doc


text:
package checks

import (
	"strconv"

	"github.com/flanksource/canary-checker/api/context"

	"github.com/flanksource/canary-checker/api/external"
	v1 "github.com/flanksource/canary-checker/api/v1"
	"github.com/flanksource/canary-checker/pkg"
	"github.com/go-redis/redis/v8"
)

func init() {
	//register metrics here
}

type RedisChecker struct {
}

// Type: returns checker type
func (c *RedisChecker) Type() string {
	return "redis"
}

// Run: Check every entry from config according to Checker interface
// Returns check result and metrics
func (c *RedisChecker) Run(ctx *context.Context) pkg.Results {
	var results pkg.Results
	for _, conf := range ctx.Canary.Spec.Redis {
		results = append(results, c.Check(ctx, conf)...)
	}
	return results
}

func (c *RedisChecker) Check(ctx *context.Context, extConfig external.Check) pkg.Results {
	check := extConfig.(v1.RedisCheck)
	result := pkg.Success(check, ctx.Canary)
	var results pkg.Results
	results = append(results, result)

	var redisOpts *redis.Options

	//nolint:staticcheck
	if check.Addr != "" && check.URL == "" {
		check.URL = check.Addr
	}

	connection, err := ctx.GetConnection(check.Connection)
	if err != nil {
		return results.Failf("error getting connection: %v", err)
	}

	redisOpts = &redis.Options{
		Addr:     connection.URL,
		Username: connection.Username,
		Password: connection.Password,
	}

	if check.DB != nil {
		redisOpts.DB = *check.DB
	} else if db, ok := connection.Properties["db"]; ok {
		if dbInt, err := strconv.Atoi(db); nil == err {
			redisOpts.DB = dbInt
		}
	}

	rdb := redis.NewClient(redisOpts)
	queryResult, err := rdb.Ping(ctx).Result()
	if err != nil {
		return results.Failf("failed to execute query %v", err)
	}

	if queryResult != "PONG" {
		return results.Failf("expected PONG as result, got %s", result)
	}

	return results
}

repository: flanksource/canary-checker

repo_name: flanksource/canary-checker