text:
0

      RJ/RJR50

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

&nbsp;

      SMD TRIM-POT CROSS REFERENCE

      MULTI-TURN

      BOURNS

      BI&nbsp;TECH

      DALE-VISHAY

      PHILIPS/MEPCO

      PANASONIC

      TOCOS

      AUX/KYOCERA

      3224G

      3224J

      3224W

      3269P

      3269W

      3269X

      44G

      44J

      44W

      84P

      84W

      84X

      -

      -

      -

      ST63Z

      ST63Y

      -

      -

      -

      -

      ST5P

      ST5W

      ST5X

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

      -

    &nbsp;

      SINGLE TURN

      BOURNS

      BI&nbsp;TECH

      DALE-VISHAY

      PHILIPS/MEPCO

      PANASONIC

      TOCOS

      AUX/KYOCERA

      3314G

      3314J

      3364A/B

      3364C/D

      3364W/X

      3313G

      3313J

      23B

      23A

      21X

      21W

      -

      22B

      22A

      ST5YL/ST53YL

      ST5YJ/5T53YJ

      ST-23A

      ST-22B

      ST-22

      -

      -

      ST-4B

      ST-4A

      -

      -

      -

      ST-3B

      ST-3A

      -

      EVM-6YS

      EVM-1E

      EVM-1G

      EVM-1D

      -

      -

      G4B

      G4A

      TR04-3S1

      TRG04-2S1

      -

      -

      -

      -

      -

      DVR-43A

      CVR-42C

      CVR-42A/C

      -

      -

ALT =&nbsp;ALTERNATE

&nbsp;

</description>
<packages>
<package name="E2,5-5">
<description>ELECTROLYTIC CAPACITOR

grid 2.54 mm, diameter 5 mm</description>
<wire x1="-1.651" y1="1.27" x2="-1.397" y2="1.27" width="0.1524" layer="21"/>
<wire x1="-1.397" y1="1.016" x2="-1.397" y2="1.27" width="0.1524" layer="21"/>
<wire x1="-1.397" y1="1.27" x2="-1.143" y2="1.27" width="0.1524" layer="21"/>
<wire x1="-1.397" y1="1.27" x2="-1.397" y2="1.524" width="0.1524" layer="21"/>
<wire x1="-1.651" y1="0" x2="-0.762" y2="0" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="0" x2="-0.762" y2="-1.27" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="-1.27" x2="-0.254" y2="-1.27" width="0.1524" layer="51"/>
<wire x1="-0.254" y1="-1.27" x2="-0.254" y2="1.27" width="0.1524" layer="51"/>
<wire x1="-0.254" y1="1.27" x2="-0.762" y2="1.27" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="1.27" x2="-0.762" y2="0" width="0.1524" layer="51"/>
<wire x1="0.635" y1="0" x2="1.651" y2="0" width="0.1524" layer="51"/>
<circle x="0" y="0" radius="2.54" width="0.1524" layer="21"/>
<pad name="-" x="1.27" y="0" drill="0.8128" diameter="1.6002" shape="octagon"/>
<pad name="+" x="-1.27" y="0" drill="0.8128" diameter="1.6002"/>
<text x="2.413" y="1.27" size="1.27" layer="25" ratio="10">>NAME</text>
<text x="2.413" y="-2.413" size="1.27" layer="27" ratio="10">>VALUE</text>
<rectangle x1="0.254" y1="-1.27" x2="0.762" y2="1.27" layer="51"/>
</package>
<package name="POWER-CHOKE_WE-TPC">
<description>POWER-CHOKE WE-TPC

Würth Elektronik, Partnumber: 744053220

Source: WE-TPC 744053220.pdf</description>
<wire x1="-2.8" y1="2.3" x2="-2.3" y2="2.8" width="0.2" layer="51" curve="-90"/>
<wire x1="-2.3" y1="2.8" x2="2.3" y2="2.8" width="0.2" layer="51"/>
<wire x1="2.3" y1="2.8" x2="2.8" y2="2.3" width="0.2" layer="51" curve="-90"/>
<wire x1="2.8" y1="2.3" x2="2.8" y2="-2.3" width="0.2" layer="51"/>
<wire x1="2.8" y1="-2.3" x2="2.3" y2="-2.8" width="0.2" layer="51" curve="-90"/>
<wire x1="2.3" y1="-2.8" x2="-2.3" y2="-2.8" width="0.2" layer="51"/>
<wire x1="-2.3" y1="-2.8" x2="-2.8" y2="-2.3" width="0.2" layer="51" curve="-90"/>
<wire x1="-2.8" y1="-2.3" x2="-2.8" y2="2.3" width="0.2" layer="51"/>
<wire x1="-2.8" y1="0.65" x2="-2.8" y2="-0.65" width="0.2" layer="21"/>
<wire x1="-2" y1="0.65" x2="-2" y2="-0.65" width="0.2" layer="21" curve="36.008323"/>
<wire x1="2.8" y1="-0.65" x2="2.8" y2="0.65" width="0.2" layer="21"/>
<wire x1="2" y1="-0.65" x2="2" y2="0.65" width="0.2" layer="21" curve="36.008323"/>
<circle x="0" y="0" radius="2.1" width="0.2" layer="51"/>
<smd name="1" x="0" y="2.05" dx="6.3" dy="2.2" layer="1" roundness="25"/>
<smd name="2" x="0" y="-2.05" dx="6.3" dy="2.2" layer="1" roundness="25" rot="R180"/>
<text x="-3.5" y="3.5" size="1.778" layer="25">>NAME</text>
<text x="-3.5" y="-5.3" size="1.778" layer="27">>VALUE</text>
</package>
<package name="R0603">
<description>RESISTOR</description>
<wire x1="-0.432" y1="-0.356" x2="0.432" y2="-0.356" width="0.1524" layer="51"/>
<wire x1="0.432" y1="0.356" x2="-0.432" y2="0.356" width="0.1524" layer="51"/>
<wire x1="-1.473" y1="0.983" x2="1.473" y2="0.983" width="0.0508" layer="39"/>
<wire x1="1.473" y1="0.983" x2="1.473" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="1.473" y1="-0.983" x2="-1.473" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="-1.473" y1="-0.983" x2="-1.473" y2="0.983" width="0.0508" layer="39"/>
<smd name="1" x="-0.85" y="0" dx="1" dy="1.1" layer="1"/>
<smd name="2" x="0.85" y="0" dx="1" dy="1.1" layer="1"/>
<text x="-0.635" y="0.635" size="1.27" layer="25">>NAME</text>
<text x="-0.635" y="-1.905" size="1.27" layer="27">>VALUE</text>
<rectangle x1="0.4318" y1="-0.4318" x2="0.8382" y2="0.4318" layer="51"/>
<rectangle x1="-0.8382" y1="-0.4318" x2="-0.4318" y2="0.4318" layer="51"/>
<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
</package>
<package name="R0805">
<description>RESISTOR
</description>
<wire x1="-0.41" y1="0.635" x2="0.41" y2="0.635" width="0.1524" layer="51"/>
<wire x1="-0.41" y1="-0.635" x2="0.41" y2="-0.635" width="0.1524" layer="51"/>
<wire x1="-1.973" y1="0.983" x2="1.973" y2="0.983" width="0.0508" layer="39"/>
<wire x1="1.973" y1="0.983" x2="1.973" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="1.973" y1="-0.983" x2="-1.973" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="-1.973" y1="-0.983" x2="-1.973" y2="0.983" width="0.0508" layer="39"/>
<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1"/>
<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1"/>
<text x="-0.635" y="1.27" size="1.27" layer="25">>NAME</text>
<text x="-0.635" y="-2.54" size="1.27" layer="27">>VALUE</text>
<rectangle x1="0.4064" y1="-0.6985" x2="1.0564" y2="0.7015" layer="51"/>
<rectangle x1="-1.0668" y1="-0.6985" x2="-0.4168" y2="0.7015" layer="51"/>
<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
</package>
<package name="C0603">
<description>CAPACITOR</description>
<wire x1="-1.473" y1="0.983" x2="1.473" y2="0.983" width="0.0508" layer="39"/>
<wire x1="1.473" y1="0.983" x2="1.473" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="1.473" y1="-0.983" x2="-1.473" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="-1.473" y1="-0.983" x2="-1.473" y2="0.983" width="0.0508" layer="39"/>
<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
<smd name="1" x="-0.85" y="0" dx="1.1" dy="1" layer="1"/>
<smd name="2" x="0.85" y="0" dx="1.1" dy="1" layer="1"/>
<text x="-0.635" y="0.635" size="1.27" layer="25">>NAME</text>
<text x="-0.635" y="-1.905" size="1.27" layer="27">>VALUE</text>
<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
</package>
<package name="C0805">
<description>CAPACITOR
</description>
<wire x1="-1.973" y1="0.983" x2="1.973" y2="0.983" width="0.0508" layer="39"/>
<wire x1="1.973" y1="-0.983" x2="-1.973" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="-1.973" y1="-0.983" x2="-1.973" y2="0.983" width="0.0508" layer="39"/>
<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
<wire x1="1.973" y1="0.983" x2="1.973" y2="-0.983" width="0.0508" layer="39"/>
<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1"/>
<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1"/>
<text x="-1.27" y="1.27" size="1.27" layer="25">>NAME</text>
<text x="-1.27" y="-2.54" size="1.27" layer="27">>VALUE</text>
<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
<rectangle x1="-0.1001" y1="-0.4001" x2="0.1001" y2="0.4001" layer="35"/>
</package>
<package name="E2,5-6">
<description>ELECTROLYTIC CAPACITOR

grid 2.54 mm, diameter 6 mm</description>
<wire x1="-2.032" y1="1.27" x2="-1.651" y2="1.27" width="0.1524" layer="21"/>
<wire x1="-1.651" y1="0.889" x2="-1.651" y2="1.27" width="0.1524" layer="21"/>
<wire x1="-1.651" y1="1.27" x2="-1.27" y2="1.27" width="0.1524" layer="21"/>
<wire x1="-1.651" y1="1.27" x2="-1.651" y2="1.651" width="0.1524" layer="21"/>
<wire x1="-1.651" y1="0" x2="-0.762" y2="0" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="0" x2="-0.762" y2="-1.27" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="-1.27" x2="-0.254" y2="-1.27" width="0.1524" layer="51"/>
<wire x1="-0.254" y1="-1.27" x2="-0.254" y2="1.27" width="0.1524" layer="51"/>
<wire x1="-0.254" y1="1.27" x2="-0.762" y2="1.27" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="1.27" x2="-0.762" y2="0" width="0.1524" layer="51"/>
<wire x1="0.635" y1="0" x2="1.651" y2="0" width="0.1524" layer="51"/>
<circle x="0" y="0" radius="2.794" width="0.1524" layer="21"/>
<pad name="-" x="1.27" y="0" drill="0.8128" diameter="1.6002" shape="octagon"/>
<pad name="+" x="-1.27" y="0" drill="0.8128" diameter="1.6002"/>
<text x="2.667" y="1.524" size="1.27" layer="25" ratio="10">>NAME</text>
<text x="2.667" y="-2.667" size="1.27" layer="27" ratio="10">>VALUE</text>
<rectangle x1="0.254" y1="-1.27" x2="0.762" y2="1.27" layer="51"/>
</package>
<package name="E2,5-7">
<description>ELECTROLYTIC CAPACITOR

grid 2.54 mm, diameter 7 mm</description>
<wire x1="-3.048" y1="0" x2="-2.286" y2="0" width="0.1524" layer="21"/>
<wire x1="-2.667" y1="-0.381" x2="-2.667" y2="0.381" width="0.1524" layer="21"/>
<wire x1="-1.651" y1="0" x2="-0.762" y2="0" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="0" x2="-0.762" y2="-1.27" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="-1.27" x2="-0.254" y2="-1.27" width="0.1524" layer="51"/>
<wire x1="-0.254" y1="-1.27" x2="-0.254" y2="1.27" width="0.1524" layer="51"/>
<wire x1="-0.254" y1="1.27" x2="-0.762" y2="1.27" width="0.1524" layer="51"/>
<wire x1="-0.762" y1="1.27" x2="-0.762" y2="0" width="0.1524" layer="51"/>
<wire x1="0.635" y1="0" x2="1.651" y2="0" width="0.1524" layer="51"/>
<circle x="0" y="0" radius="3.429" width="0.1524" layer="21"/>
<pad name="-" x="1.27" y="0" drill="0.8128" diameter="1.6002" shape="octagon"/>
<pad name="+" x="-1.27" y="0" drill="0.8128" diameter="1.6002"/>
<text x="3.048" y="2.032" size="1.27" layer="25" ratio="10">>NAME</text>
<text x="3.048" y="-3.175" size="1.27" layer="27" ratio="10">>VALUE</text>
<rectangle x1="0.254" y1="-1.27" x2="0.762" y2="1.27" layer="51"/>
</package>
<package name="SMC_B">
<description>Chip Capacitor  Polar tantalum capacitors with solid electrolyte

Siemens Matsushita Components B 45 194, B 45 197, B 45 198

Source: www.farnell.com/datasheets/247.pdf</description>
<wire x1="-1.6" y1="1.35" x2="1.6" y2="1.35" width="0.1016" layer="51"/>
<wire x1="1.6" y1="1.35" x2="1.6" y2="-1.35" width="0.1016" layer="51"/>
<wire x1="1.6" y1="-1.35" x2="-1.6" y2="-1.35" width="0.1016" layer="51"/>
<wire x1="-1.6" y1="-1.35" x2="-1.6" y2="1.35" width="0.1016" layer="51"/>
<smd name="+" x="-1.5" y="0" dx="1.6" dy="2.4" layer="1"/>
<smd name="-" x="1.5" y="0" dx="1.6" dy="2.4" layer="1" rot="R180"/>
<text x="-1.905" y="1.905" size="1.016" layer="25">>NAME</text>
<text x="-1.905" y="-2.54" size="1.016" layer="27">>VALUE</text>
<rectangle x1="-1.75" y1="-1.1" x2="-1.55" y2="1.1" layer="51"/>
<rectangle x1="1.55" y1="-1.1" x2="1.75" y2="1.1" layer="51" rot="R180"/>
<rectangle x1="-1.6" y1="-1.35" x2="-0.95" y2="1.35" layer="51"/>
</package>
</packages>
</library>
<library name="diode">
<description>Diodes

Based on the following sources:

Motorola : www.onsemi.com

Fairchild : www.fairchildsemi.com

Philips : www.semiconductors.com

Vishay : www.vishay.de

<author>Created by librarian@cadsoft.de</author></description>
<packages>
<package name="DO41-7.6">
<description>DO41 7.6mm x 2mm

Source: http://www.diodes.com/datasheets/ds23001.pdf</description>
<wire x1="2.082" y1="-0.92" x2="-2.082" y2="-0.92" width="0.1524" layer="21"/>
<wire x1="2.082" y1="-0.92" x2="2.082" y2="0.92" width="0.1524" layer="21"/>
<wire x1="-2.082" y1="0.92" x2="2.082" y2="0.92" width="0.1524" layer="21"/>
<wire x1="-2.082" y1="0.92" x2="-2.082" y2="-0.92" width="0.1524" layer="21"/>
<wire x1="3.81" y1="0" x2="2.494" y2="0" width="0.85" layer="51"/>
<wire x1="-3.81" y1="0" x2="-2.519" y2="0" width="0.85" layer="51"/>
<wire x1="-0.635" y1="0" x2="0" y2="0" width="0.1524" layer="21"/>
<wire x1="1.016" y1="0.635" x2="1.016" y2="-0.635" width="0.1524" layer="21"/>
<wire x1="1.016" y1="-0.635" x2="0" y2="0" width="0.1524" layer="21"/>
<wire x1="0" y1="0" x2="1.524" y2="0" width="0.1524" layer="21"/>
<wire x1="0" y1="0" x2="1.016" y2="0.635" width="0.1524" layer="21"/>
<wire x1="0" y1="0.635" x2="0" y2="0" width="0.1524" layer="21"/>
<wire x1="0" y1="0" x2="0" y2="-0.635" width="0.1524" layer="21"/>
<pad name="C" x="-3.81" y="0" drill="1.1" diameter="1.7"/>
<pad name="A" x="3.81" y="0" drill="1.1" diameter="1.7"/>
<text x="-2.032" y="1.651" size="1.27" layer="25" ratio="10">>NAME</text>
<text x="-2.032" y="-2.921" size="1.27" layer="27" ratio="10">>VALUE</text>
<rectangle x1="-1.651" y1="-0.95" x2="-1.143" y2="0.92" layer="21"/>
<rectangle x1="2.082" y1="-0.425" x2="2.717" y2="0.425" layer="21"/>
<rectangle x1="-2.717" y1="-0.425" x2="-2.082" y2="0.425" layer="21"/>
</package>
</packages>
</library>
<library name="rectifier">
<description>Rectifiers

General Instrument, Semikron, Diotec, Fagor

<author>Created by librarian@cadsoft.de</author></description>
<packages>
<package name="SOIC-4">
<description>SOIC-4 Package

Source: http://www.fairchildsemi.com/products/discrete/pdf/soic4_dim.pdf</description>
<wire x1="-2.35" y1="2" x2="2.35" y2="2" width="0.2032" layer="21"/>
<wire x1="2.35" y1="2" x2="2.35" y2="-2" width="0.2032" layer="21"/>
<wire x1="2.35" y1="-2" x2="-2.35" y2="-2" width="0.2032" layer="21"/>
<wire x1="-2.35" y1="-2" x2="-2.35" y2="2" width="0.2032" layer="21"/>
<wire x1="-1.905" y1="0.97" x2="-1.27" y2="0.97" width="0.1016" layer="21"/>
<wire x1="1.27" y1="1.27" x2="1.27" y2="0.635" width="0.1016" layer="21"/>
<wire x1="0.955" y1="0.945" x2="1.59" y2="0.945" width="0.1016" layer="21"/>
<wire x1="-1.9" y1="-1.275" x2="-1.6" y2="-1.275" width="0.1016" layer="21" curve="-99.939481"/>
<wire x1="-1.3" y1="-1.275" x2="-1.6" y2="-1.275" width="0.1016" layer="21" curve="-99.939481"/>
<wire x1="1.275" y1="-1.275" x2="1.575" y2="-1.275" width="0.1016" layer="21" curve="-99.939481"/>
<wire x1="1.875" y1="-1.275" x2="1.575" y2="-1.275" width="0.1016" layer="21" curve="-99.939481"/>
<smd name="-" x="-1.3" y="3.05" dx="1.2" dy="1.2" layer="1"/>
<smd name="+" x="1.3" y="3.05" dx="1.2" dy="1.2" layer="1"/>
<smd name="~2" x="1.3" y="-3.05" dx="1.2" dy="1.2" layer="1" rot="R180"/>
<smd name="~1" x="-1.3" y="-3.05" dx="1.2" dy="1.2" layer="1" rot="R180"/>
<text x="-2.54" y="-1.905" size="1.27" layer="25" rot="R90">>NAME</text>
<text x="3.81" y="-1.905" size="1.27" layer="27" rot="R90">>VALUE</text>
<rectangle x1="-1.75" y1="2.05" x2="-0.95" y2="3.45" layer="51"/>
<rectangle x1="0.95" y1="2.05" x2="1.75" y2="3.45" layer="51"/>
<rectangle x1="0.95" y1="-3.45" x2="1.75" y2="-2.05" layer="51" rot="R180"/>
<rectangle x1="-1.75" y1="-3.45" x2="-0.95" y2="-2.05" layer="51" rot="R180"/>
<rectangle x1="-2.05" y1="1.5" x2="2.05" y2="1.8" layer="21"/>
</package>
</packages>
</library>
<library name="con-molex">
<description>Molex Connectors

<author>Created by librarian@cadsoft.de</author></description>
<packages>
<package name="6410-02">
<description>MOLEX 2.54mm KK  CONNECTOR</description>
<wire x1="-1.27" y1="2.54" x2="-1.27" y2="2.921" width="0.127" layer="21"/>
<wire x1="-2.54" y1="0" x2="-2.54" y2="2.921" width="0.254" layer="21"/>
<wire x1="-2.54" y1="2.921" x2="-1.27" y2="2.921" width="0.254" layer="21"/>
<wire x1="-1.016" y1="2.921" x2="-1.27" y2="2.921" width="0.127" layer="21"/>
<wire x1="-1.27" y1="2.921" x2="0" y2="2.921" width="0.254" layer="21"/>
<wire x1="2.54" y1="0" x2="2.54" y2="2.921" width="0.254" layer="21"/>
<wire x1="2.54" y1="2.921" x2="0" y2="2.921" width="0.127" layer="21"/>
<wire x1="-2.54" y1="0" x2="-2.54" y2="-2.921" width="0.254" layer="21"/>
<wire x1="-2.54" y1="-2.921" x2="0" y2="-2.921" width="0.254" layer="21"/>
<wire x1="2.54" y1="0" x2="2.54" y2="-2.921" width="0.254" layer="21"/>
<wire x1="2.54" y1="-2.921" x2="1.905" y2="-2.921" width="0.127" layer="21"/>
<wire x1="1.905" y1="-2.921" x2="0.635" y2="-2.921" width="0.254" layer="21"/>
<wire x1="0.635" y1="-2.921" x2="0" y2="-2.921" width="0.127" layer="21"/>
<wire x1="-2.286" y1="-2.921" x2="-1.905" y2="-2.921" width="0.127" layer="21"/>
<wire x1="-2.54" y1="-2.921" x2="-1.905" y2="-2.921" width="0.254" layer="21"/>
<wire x1="-1.905" y1="-2.921" x2="-1.905" y2="-2.286" width="0.254" layer="21"/>
<wire x1="-1.905" y1="-2.286" x2="-0.635" y2="-2.286" width="0.254" layer="21"/>
<wire x1="-0.635" y1="-2.286" x2="-0.635" y2="-2.921" width="0.254" layer="21"/>
<wire x1="-0.635" y1="-2.921" x2="0.635" y2="-2.921" width="0.254" layer="21"/>
<wire x1="0.635" y1="-2.921" x2="0.635" y2="-2.286" width="0.254" layer="21"/>
<wire x1="0.635" y1="-2.286" x2="1.905" y2="-2.286" width="0.254" layer="21"/>
<wire x1="1.905" y1="-2.286" x2="1.905" y2="-2.921" width="0.254" layer="21"/>
<wire x1="1.905" y1="-2.921" x2="2.54" y2="-2.921" width="0.254" layer="21"/>
<wire x1="-1.27" y1="1.905" x2="-1.27" y2="2.921" width="0.254" layer="21"/>
<wire x1="-1.27" y1="1.905" x2="-1.016" y2="1.905" width="0.254" layer="21"/>
<wire x1="-1.016" y1="1.905" x2="1.016" y2="1.905" width="0.254" layer="21"/>
<wire x1="1.016" y1="1.905" x2="1.27" y2="1.905" width="0.254" layer="21"/>
<wire x1="1.27" y1="1.905" x2="1.27" y2="2.921" width="0.254" layer="21"/>
<wire x1="-1.27" y1="1.905" x2="-1.016" y2="1.397" width="0.254" layer="21"/>
<wire x1="-1.016" y1="2.921" x2="-1.016" y2="1.905" width="0.254" layer="21"/>
<wire x1="-1.016" y1="1.397" x2="1.016" y2="1.397" width="0.254" layer="21"/>
<wire x1="1.016" y1="1.397" x2="1.27" y2="1.905" width="0.254" layer="21"/>
<wire x1="1.016" y1="2.921" x2="1.016" y2="1.905" width="0.254" layer="21"/>
<pad name="2" x="-1.27" y="0" drill="1.016" shape="long" rot="R90"/>
<pad name="1" x="1.27" y="0" drill="1.016" shape="long" rot="R90"/>
<text x="-2.5131" y="3.2751" size="1.016" layer="25" ratio="10">>NAME</text>
<text x="3.2751" y="-0.6111" size="1.27" layer="21" ratio="14">1</text>
<text x="-3.7099" y="-0.6873" size="1.27" layer="21" ratio="14">2</text>
<text x="-2.5131" y="-4.5989" size="0.8128" layer="27" ratio="10">>VALUE</text>
<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
</package>
</packages>
</library>
</libraries>
<attributes>
</attributes>
<variantdefs>
</variantdefs>
<classes>
<class number="0" name="default" width="0" drill="0">
</class>
</classes>
<designrules name="default">
<description language="de">EAGLE Design Rules

Die Standard-Design-Rules sind so gewählt, dass sie für
die meisten Anwendungen passen. Sollte ihre Platine
besondere Anforderungen haben, treffen Sie die erforderlichen
Einstellungen hier und speichern die Design Rules unter
einem neuen Namen ab.</description>
<description language="en">EAGLE Design Rules

The default Design Rules have been set to cover
a wide range of applications. Your particular design
may have different requirements, so please make the
necessary adjustments and save your customized
design rules under a new name.</description>
<param name="layerSetup" value="(1*16)"/>
<param name="mtCopper" value="0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm"/>
<param name="mtIsolate" value="1.5mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm"/>
<param name="mdWireWire" value="8mil"/>
<param name="mdWirePad" value="8mil"/>
<param name="mdWireVia" value="8mil"/>
<param name="mdPadPad" value="8mil"/>
<param name="mdPadVia" value="8mil"/>
<param name="mdViaVia" value="8mil"/>
<param name="mdSmdPad" value="8mil"/>
<param name="mdSmdVia" value="8mil"/>
<param name="mdSmdSmd" value="8mil"/>
<param name="mdViaViaSameLayer" value="8mil"/>
<param name="mnLayersViaInSmd" value="2"/>
<param name="mdCopperDimension" value="40mil"/>
<param name="mdDrill" value="8mil"/>
<param name="mdSmdStop" value="0mil"/>
<param name="msWidth" value="10mil"/>
<param name="msDrill" value="24mil"/>
<param name="msMicroVia" value="9.99mm"/>
<param name="msBlindViaRatio" value="0.5"/>
<param name="rvPadTop" value="0.25"/>
<param name="rvPadInner" value="0.25"/>
<param name="rvPadBottom" value="0.25"/>
<param name="rvViaOuter" value="0.25"/>
<param name="rvViaInner" value="0.25"/>
<param name="rvMicroViaOuter" value="0.25"/>
<param name="rvMicroViaInner" value="0.25"/>
<param name="rlMinPadTop" value="10mil"/>
<param name="rlMaxPadTop" value="20mil"/>
<param name="rlMinPadInner" value="10mil"/>
<param name="rlMaxPadInner" value="20mil"/>
<param name="rlMinPadBottom" value="10mil"/>
<param name="rlMaxPadBottom" value="20mil"/>
<param name="rlMinViaOuter" value="8mil"/>
<param name="rlMaxViaOuter" value="20mil"/>
<param name="rlMinViaInner" value="8mil"/>
<param name="rlMaxViaInner" value="20mil"/>
<param name="rlMinMicroViaOuter" value="4mil"/>
<param name="rlMaxMicroViaOuter" value="20mil"/>
<param name="rlMinMicroViaInner" value="4mil"/>
<param name="rlMaxMicroViaInner" value="20mil"/>
<param name="psTop" value="-1"/>
<param name="psBottom" value="-1"/>
<param name="psFirst" value="-1"/>
<param name="psElongationLong" value="100"/>
<param name="psElongationOffset" value="100"/>
<param name="mvStopFrame" value="1"/>
<param name="mvCreamFrame" value="0"/>
<param name="mlMinStopFrame" value="4mil"/>
<param name="mlMaxStopFrame" value="4mil"/>
<param name="mlMinCreamFrame" value="0mil"/>
<param name="mlMaxCreamFrame" value="0mil"/>
<param name="mlViaStopLimit" value="0mil"/>
<param name="srRoundness" value="0"/>
<param name="srMinRoundness" value="0mil"/>
<param name="srMaxRoundness" value="0mil"/>
<param name="slThermalIsolate" value="10mil"/>
<param name="slThermalsForVias" value="0"/>
<param name="dpMaxLengthDifference" value="10mm"/>
<param name="dpGapFactor" value="2.5"/>
<param name="checkGrid" value="0"/>
<param name="checkAngle" value="0"/>
<param name="checkFont" value="1"/>
<param name="checkRestrict" value="1"/>
<param name="useDiameter" value="13"/>
<param name="maxErrors" value="50"/>
</designrules>
<autorouter>
<pass name="Default">
<param name="RoutingGrid" value="50mil"/>
<param name="tpViaShape" value="round"/>
<param name="PrefDir.1" value="|"/>
<param name="PrefDir.2" value="0"/>
<param name="PrefDir.3" value="0"/>
<param name="PrefDir.4" value="0"/>
<param name="PrefDir.5" value="0"/>
<param name="PrefDir.6" value="0"/>
<param name="PrefDir.7" value="0"/>
<param name="PrefDir.8" value="0"/>
<param name="PrefDir.9" value="0"/>
<param name="PrefDir.10" value="0"/>
<param name="PrefDir.11" value="0"/>
<param name="PrefDir.12" value="0"/>
<param name="PrefDir.13" value="0"/>
<param name="PrefDir.14" value="0"/>
<param name="PrefDir.15" value="0"/>
<param name="PrefDir.16" value="-"/>
<param name="cfVia" value="8"/>
<param name="cfNonPref" value="5"/>
<param name="cfChangeDir" value="2"/>
<param name="cfOrthStep" value="2"/>
<param name="cfDiagStep" value="3"/>
<param name="cfExtdStep" value="0"/>
<param name="cfBonusStep" value="1"/>
<param name="cfMalusStep" value="1"/>
<param name="cfPadImpact" value="4"/>
<param name="cfSmdImpact" value="4"/>
<param name="cfBusImpact" value="0"/>
<param name="cfHugging" value="3"/>
<param name="cfAvoid" value="4"/>
<param name="cfPolygon" value="10"/>
<param name="cfBase.1" value="0"/>
<param name="cfBase.2" value="1"/>
<param name="cfBase.3" value="1"/>
<param name="cfBase.4" value="1"/>
<param name="cfBase.5" value="1"/>
<param name="cfBase.6" value="1"/>
<param name="cfBase.7" value="1"/>
<param name="cfBase.8" value="1"/>
<param name="cfBase.9" value="1"/>
<param name="cfBase.10" value="1"/>
<param name="cfBase.11" value="1"/>
<param name="cfBase.12" value="1"/>
<param name="cfBase.13" value="1"/>
<param name="cfBase.14" value="1"/>
<param name="cfBase.15" value="1"/>
<param name="cfBase.16" value="0"/>
<param name="mnVias" value="20"/>
<param name="mnSegments" value="9999"/>
<param name="mnExtdSteps" value="9999"/>
<param name="mnRipupLevel" value="10"/>
<param name="mnRipupSteps" value="100"/>
<param name="mnRipupTotal" value="100"/>
</pass>
<pass name="Follow-me" refer="Default" active="yes">
</pass>
<pass name="Busses" refer="Default" active="yes">
<param name="cfNonPref" value="4"/>
<param name="cfBusImpact" value="4"/>
<param name="cfHugging" value="0"/>
<param name="mnVias" value="0"/>
</pass>
<pass name="Route" refer="Default" active="yes">
</pass>
<pass name="Optimize1" refer="Default" active="yes">
<param name="cfVia" value="99"/>
<param name="cfExtdStep" value="10"/>
<param name="cfHugging" value="1"/>
<param name="mnExtdSteps" value="1"/>
<param name="mnRipupLevel" value="0"/>
</pass>
<pass name="Optimize2" refer="Optimize1" active="yes">
<param name="cfNonPref" value="0"/>
<param name="cfChangeDir" value="6"/>
<param name="cfExtdStep" value="0"/>
<param name="cfBonusStep" value="2"/>
<param name="cfMalusStep" value="2"/>
<param name="cfPadImpact" value="2"/>
<param name="cfSmdImpact" value="2"/>
<param name="cfHugging" value="0"/>
</pass>
<pass name="Optimize3" refer="Optimize2" active="yes">
<param name="cfChangeDir" value="8"/>
<param name="cfPadImpact" value="0"/>
<param name="cfSmdImpact" value="0"/>
</pass>
<pass name="Optimize4" refer="Optimize3" active="yes">
<param name="cfChangeDir" value="25"/>
</pass>
</autorouter>
<elements>
<element name="SV1" library="afc-smm" package="MA10-2W" value="" x="74.295" y="29.5275" locked="yes" rot="R270">
<attribute name="OC_NEWARK" value="unknown" x="74.295" y="29.5275" size="1.778" layer="27" rot="R270" display="off"/>
<attribute name="MPN" value="" x="74.295" y="29.5275" size="1.778" layer="27" rot="R270" display="off"/>
<attribute name="MF" value="" x="74.295" y="29.5275" size="1.778" layer="27" rot="R270" display="off"/>
<attribute name="OC_FARNELL" value="unknown" x="74.295" y="29.5275" size="1.778" layer="27" rot="R270" display="off"/>
</element>
<element name="JP1" library="pinhead_2mm" package="2X16M" value="" x="67" y="53.5" rot="R270"/>
<element name="JP3" library="pinhead_2mm" package="2X16M" value="" x="19" y="53.606" rot="R270"/>
<element name="JP4" library="pinhead_2mm" package="2X16M" value="" x="33" y="75.5"/>
<element name="IC1" library="ftdichip" package="SSOP28" value="FT232RL" x="9" y="29.5" rot="MR270">
<attribute name="OC_NEWARK" value="91K9918" x="9" y="29.5" size="1.778" layer="28" rot="MR270" display="off"/>
<attribute name="MPN" value="FT232RL" x="9" y="29.5" size="1.778" layer="28" rot="MR270" display="off"/>
<attribute name="MF" value="" x="9" y="29.5" size="1.778" layer="28" rot="MR270" display="off"/>
<attribute name="OC_FARNELL" value="1146032" x="9" y="29.5" size="1.778" layer="28" rot="MR270" display="off"/>
</element>
<element name="X1" library="con-berg" package="PN61729-S" value="PN61729-S" x="2" y="15" rot="R270">
<attribute name="OC_NEWARK" value="unknown" x="2" y="15" size="1.778" layer="27" rot="R270" display="off"/>
<attribute name="MPN" value="" x="2" y="15" size="1.778" layer="27" rot="R270" display="off"/>
<attribute name="MF" value="" x="2" y="15" size="1.778" layer="27" rot="R270" display="off"/>
<attribute name="OC_FARNELL" value="unknown" x="2" y="15" size="1.778" layer="27" rot="R270" display="off"/>
</element>
<element name="IC2" library="afc-smm" package="SO8" value="ST1S14" x="44" y="20" rot="MR90"/>
<element name="C1" library="rcl" package="E2,5-5" value="" x="10.5" y="13.286" rot="R270"/>
<element name="C2" library="rcl" package="E2,5-5" value="" x="11.622" y="22.672"/>
<element name="L2" library="rcl" package="POWER-CHOKE_WE-TPC" value="" x="37" y="13.5" rot="MR90"/>
<element name="D1" library="diode" package="DO41-7.6" value="1N5819-B" x="47" y="11"/>
<element name="R1" library="rcl" package="R0805" value="" x="37.5" y="19.5" rot="MR0"/>
<element name="R2" library="rcl" package="R0805" value="" x="37.5" y="23.5" rot="MR0"/>
<element name="R3" library="rcl" package="R0805" value="" x="43" y="25" rot="MR0"/>
<element name="C3" library="rcl" package="C0805" value="" x="37.5" y="26" rot="MR180"/>
<element name="C4" library="rcl" package="C0805" value="" x="53.658" y="11.008" rot="MR270"/>
<element name="C5" library="rcl" package="C0805" value="" x="29.038" y="17.602" rot="MR0"/>
<element name="C6" library="rcl" package="C0805" value="" x="49.5" y="19.5" rot="MR90"/>
<element name="C7" library="rcl" package="C0805" value="" x="44" y="15.5" rot="MR0"/>
<element name="C8" library="rcl" package="E2,5-6" value="" x="31.616" y="9.498" rot="R270"/>
<element name="C10" library="rcl" package="E2,5-7" value="" x="58.26" y="8.382" rot="R180"/>
<element name="C11" library="rcl" package="C0603" value="" x="12.976" y="13.286" rot="MR270"/>
<element name="C12" library="rcl" package="C0603" value="" x="11.622" y="19.838" rot="MR180"/>
<element name="R4" library="rcl" package="R0603" value="" x="12" y="52.968" rot="MR0"/>
<element name="R5" library="rcl" package="R0603" value="" x="12" y="55.468" rot="MR0"/>
<element name="R6" library="rcl" package="R0603" value="" x="12" y="57.968" rot="MR0"/>
<element name="R7" library="rcl" package="R0603" value="" x="12" y="60.468" rot="MR0"/>
<element name="R8" library="rcl" package="R0603" value="" x="12" y="62.968" rot="MR0"/>
<element name="R9" library="rcl" package="R0603" value="" x="12" y="65.468" rot="MR0"/>
<element name="R10" library="rcl" package="R0603" value="" x="12" y="67.968" rot="MR0"/>
<element name="R11" library="rcl" package="R0603" value="" x="12" y="70.468" rot="MR0"/>
<element name="Q1" library="afc-smm" package="SOT23" value="IRLML2803" x="7.545" y="37.634" rot="MR270"/>
<element name="Q2" library="afc-smm" package="SOT23" value="IRLML2803" x="7.545" y="41.626" rot="MR270"/>
<element name="Q3" library="afc-smm" package="SOT23" value="IRLML2803" x="7.554" y="49.49" rot="MR270"/>
<element name="Q4" library="afc-smm" package="SOT23" value="IRLML2803" x="7.554" y="45.6" rot="MR270"/>
<element name="B1" library="rectifier" package="SOIC-4" value="MB1S" x="57.404" y="3.746" rot="MR90"/>
<element name="J1" library="con-molex" package="6410-02" value="22-27-2021-02" x="46.658" y="4.008" rot="R180">
<attribute name="OC_NEWARK" value="unknown" x="46.658" y="4.008" size="1.778" layer="27" rot="R180" display="off"/>
<attribute name="MPN" value="" x="46.658" y="4.008" size="1.778" layer="27" rot="R180" display="off"/>
<attribute name="MF" value="" x="46.658" y="4.008" size="1.778" layer="27" rot="R180" display="off"/>
<attribute name="OC_FARNELL" value="unknown" x="46.658" y="4.008" size="1.778" layer="27" rot="R180" display="off"/>
</element>
<element name="C9" library="rcl" package="SMC_B" value="" x="29.008" y="13.992" rot="MR0"/>
<element name="R12" library="rcl" package="R0603" value="" x="14.986" y="75.692" rot="MR0"/>
<element name="R13" library="rcl" package="R0603" value="" x="14.986" y="78.232" rot="MR0"/>
<element name="JP5" library="afc-smm" package="2X06" value="" x="6.858" y="60.706" rot="R270"/>
<element name="JP2" library="afc-smm" package="2X02" value="" x="10.668" y="76.962" rot="R90"/>
</elements>
<signals>
<signal name="N$1">
<contactref element="X1" pad="2"/>
<contactref element="IC1" pad="16"/>
<wire x1="6.71" y1="16.25" x2="6.71" y2="19.156" width="0.4064" layer="16"/>
<wire x1="6.71" y1="19.156" x2="8.128" y2="20.574" width="0.4064" layer="16"/>
<wire x1="8.128" y1="20.574" x2="8.128" y2="24.892" width="0.4064" layer="16"/>
<wire x1="8.128" y1="24.892" x2="7.112" y2="25.908" width="0.4064" layer="16"/>
<wire x1="7.112" y1="25.908" x2="5.392" y2="25.908" width="0.4064" layer="16"/>
<wire x1="5.392" y1="25.908" x2="5.375" y2="25.925" width="0.4064" layer="16"/>
</signal>
<signal name="N$2">
<contactref element="IC1" pad="15"/>
<contactref element="X1" pad="3"/>
<wire x1="5.375" y1="25.275" x2="6.475" y2="25.275" width="0.4064" layer="16"/>
<wire x1="6.475" y1="25.275" x2="6.858" y2="24.892" width="0.4064" layer="16"/>
<wire x1="6.858" y1="24.892" x2="6.858" y2="20.574" width="0.4064" layer="16"/>
<wire x1="6.858" y1="20.574" x2="4.826" y2="18.542" width="0.4064" layer="16"/>
<wire x1="4.826" y1="18.542" x2="4.826" y2="16.366" width="0.4064" layer="16"/>
<wire x1="4.826" y1="16.366" x2="4.71" y2="16.25" width="0.4064" layer="16"/>
</signal>
<signal name="N$3">
<contactref element="X1" pad="1"/>
<contactref element="IC1" pad="20"/>
<contactref element="C1" pad="+"/>
<contactref element="C11" pad="1"/>
<wire x1="3.5" y1="15.5" x2="3.785" y2="15.215" width="0.3048" layer="16"/>
<wire x1="3.785" y1="15.215" x2="4" y2="15" width="0.3048" layer="16"/>
<wire x1="4" y1="15" x2="5.46" y2="15" width="0.3048" layer="16"/>
<wire x1="5.46" y1="15" x2="6.71" y2="13.75" width="0.3048" layer="16"/>
<wire x1="10.5" y1="14.556" x2="12.556" y2="14.556" width="0.4064" layer="16"/>
<wire x1="12.556" y1="14.556" x2="12.976" y2="14.136" width="0.4064" layer="16"/>
<wire x1="10.5" y1="14.556" x2="7.516" y2="14.556" width="0.4064" layer="16"/>
<wire x1="7.516" y1="14.556" x2="6.71" y2="13.75" width="0.4064" layer="16"/>
<wire x1="5.375" y1="28.525" x2="4.141" y2="28.525" width="0.4064" layer="16"/>
<wire x1="4.141" y1="28.525" x2="3.556" y2="27.94" width="0.4064" layer="16"/>
<wire x1="3.556" y1="27.94" x2="3.556" y2="23.876" width="0.4064" layer="16"/>
<wire x1="3.556" y1="23.876" x2="4.826" y2="22.606" width="0.4064" layer="16"/>
<wire x1="4.826" y1="22.606" x2="4.826" y2="20.32" width="0.4064" layer="16"/>
<wire x1="4.826" y1="20.32" x2="3.048" y2="18.542" width="0.4064" layer="16"/>
<wire x1="3.048" y1="18.542" x2="3.048" y2="15.952" width="0.4064" layer="16"/>
<wire x1="3.048" y1="15.952" x2="3.785" y2="15.215" width="0.4064" layer="16"/>
</signal>
<signal name="GND">
<contactref element="IC1" pad="26"/>
<contactref element="IC1" pad="21"/>
<contactref element="IC1" pad="18"/>
<contactref element="IC1" pad="7"/>
<contactref element="IC1" pad="25"/>
<contactref element="X1" pad="4"/>
<contactref element="X1" pad="S1"/>
<contactref element="X1" pad="S2"/>
<contactref element="C2" pad="-"/>
<contactref element="C1" pad="-"/>
<contactref element="C11" pad="2"/>
<contactref element="C12" pad="2"/>
<contactref element="Q4" pad="2"/>
<contactref element="Q1" pad="2"/>
<contactref element="Q2" pad="2"/>
<contactref element="Q3" pad="2"/>
<wire x1="5.375" y1="27.225" x2="6.651" y2="27.225" width="0.4064" layer="16"/>
<wire x1="6.651" y1="27.225" x2="7.112" y2="27.686" width="0.4064" layer="16"/>
<wire x1="7.112" y1="27.686" x2="7.112" y2="28.702" width="0.4064" layer="16"/>
<wire x1="5.375" y1="29.175" x2="6.639" y2="29.175" width="0.4064" layer="16"/>
<wire x1="6.639" y1="29.175" x2="7.112" y2="28.702" width="0.4064" layer="16"/>
<wire x1="5.375" y1="32.425" x2="3.723" y2="32.425" width="0.4064" layer="16"/>
<wire x1="3.723" y1="32.425" x2="3.556" y2="32.258" width="0.4064" layer="16"/>
<wire x1="3.556" y1="32.258" x2="3.556" y2="32.004" width="0.4064" layer="16"/>
<wire x1="3.556" y1="32.004" x2="3.785" y2="31.775" width="0.4064" layer="16"/>
<wire x1="3.785" y1="31.775" x2="5.375" y2="31.775" width="0.4064" layer="16"/>
<wire x1="5.375" y1="29.175" x2="3.845" y2="29.175" width="0.4064" layer="16"/>
<wire x1="3.845" y1="29.175" x2="3.556" y2="29.464" width="0.4064" layer="16"/>
<wire x1="3.556" y1="29.464" x2="3.556" y2="31.546" width="0.4064" layer="16"/>
<wire x1="3.556" y1="31.546" x2="3.785" y2="31.775" width="0.4064" layer="16"/>
<wire x1="10.5" y1="12.016" x2="12.556" y2="12.016" width="0.6096" layer="16"/>
<wire x1="12.556" y1="12.016" x2="12.976" y2="12.436" width="0.4064" layer="16"/>
<wire x1="12.976" y1="12.436" x2="13.96" y2="12.436" width="0.6096" layer="16"/>
<wire x1="13.96" y1="12.436" x2="14.478" y2="12.954" width="0.6096" layer="16"/>
<wire x1="4.71" y1="11.69" x2="2" y2="8.98" width="0.4064" layer="16"/>
<wire x1="12.625" y1="29.825" x2="14.117" y2="29.825" width="0.4064" layer="16"/>
<wire x1="14.117" y1="29.825" x2="14.478" y2="29.464" width="0.4064" layer="16"/>
<wire x1="14.478" y1="29.464" x2="14.478" y2="22.606" width="0.4064" layer="16"/>
<wire x1="14.478" y1="22.606" x2="14.478" y2="19.812" width="0.4064" layer="16"/>
<wire x1="14.478" y1="19.812" x2="14.478" y2="12.954" width="0.4064" layer="16"/>
<wire x1="10.5" y1="12.016" x2="5.394" y2="12.016" width="0.6096" layer="16"/>
<wire x1="4.676" y1="13.716" x2="3.302" y2="13.716" width="0.4064" layer="16"/>
<wire x1="3.302" y1="13.716" x2="1.778" y2="15.24" width="0.4064" layer="16"/>
<wire x1="1.778" y1="15.24" x2="1.778" y2="20.828" width="0.4064" layer="16"/>
<wire x1="1.778" y1="20.828" x2="2" y2="21.05" width="0.4064" layer="16"/>
<wire x1="4.71" y1="13.75" x2="4.71" y2="12.7" width="0.6096" layer="16"/>
<wire x1="4.71" y1="12.7" x2="4.768" y2="12.642" width="0.4064" layer="16"/>
<wire x1="4.768" y1="12.642" x2="5.394" y2="12.016" width="0.6096" layer="16"/>
<wire x1="4.676" y1="13.716" x2="4.71" y2="13.75" width="0.4064" layer="16"/>
<wire x1="4.71" y1="11.69" x2="4.71" y2="12.584" width="0.6096" layer="16"/>
<wire x1="4.71" y1="12.584" x2="4.768" y2="12.642" width="0.4064" layer="16"/>
<wire x1="8.654" y1="48.54" x2="7.392" y2="48.54" width="0.4064" layer="16"/>
<wire x1="7.392" y1="48.54" x2="7.112" y2="48.26" width="0.4064" layer="16"/>
<wire x1="7.112" y1="48.26" x2="7.112" y2="47.244" width="0.4064" layer="16"/>
<wire x1="7.112" y1="47.244" x2="7.62" y2="46.736" width="0.254" layer="16"/>
<wire x1="7.62" y1="46.736" x2="7.62" y2="44.704" width="0.254" layer="16"/>
<wire x1="7.62" y1="44.704" x2="7.62" y2="40.894" width="0.254" layer="16"/>
<wire x1="7.62" y1="40.894" x2="7.62" y2="36.83" width="0.254" layer="16"/>
<wire x1="8.645" y1="36.684" x2="7.766" y2="36.684" width="0.4064" layer="16"/>
<wire x1="7.766" y1="36.684" x2="7.62" y2="36.83" width="0.4064" layer="16"/>
<wire x1="8.645" y1="40.676" x2="7.838" y2="40.676" width="0.4064" layer="16"/>
<wire x1="7.838" y1="40.676" x2="7.62" y2="40.894" width="0.4064" layer="16"/>
<wire x1="8.654" y1="44.65" x2="7.674" y2="44.65" width="0.4064" layer="16"/>
<wire x1="7.674" y1="44.65" x2="7.62" y2="44.704" width="0.4064" layer="16"/>
<contactref element="C4" pad="2"/>
<contactref element="IC2" pad="6"/>
<contactref element="R3" pad="1"/>
<contactref element="C5" pad="2"/>
<contactref element="C6" pad="2"/>
<contactref element="D1" pad="A"/>
<contactref element="C8" pad="-"/>
<contactref element="C10" pad="-"/>
<contactref element="IC2" pad="3"/>
<contactref element="B1" pad="-"/>
<contactref element="C9" pad="-"/>
<wire x1="41.4" y1="20.635" x2="46.6" y2="20.635" width="0.6096" layer="16"/>
<wire x1="41.4" y1="20.635" x2="43.95" y2="20.635" width="0.6096" layer="16"/>
<wire x1="43.95" y1="20.635" x2="43.95" y2="25" width="0.8128" layer="16"/>
<wire x1="46.6" y1="20.635" x2="49.315" y2="20.635" width="0.6096" layer="16"/>
<wire x1="49.315" y1="20.635" x2="49.5" y2="20.45" width="0.6096" layer="16"/>
<wire x1="44" y1="25.05" x2="43.95" y2="25" width="0.3048" layer="16"/>
<wire x1="50.81" y1="11" x2="50.81" y2="10.81" width="0.3048" layer="16"/>
<wire x1="31.592" y1="8.204" x2="31.616" y2="8.228" width="0.6096" layer="16"/>
<wire x1="31.616" y1="8.228" x2="29.618" y2="8.228" width="0.8128" layer="16"/>
<wire x1="29.618" y1="8.228" x2="27.432" y2="10.414" width="0.8128" layer="16"/>
<wire x1="27.432" y1="10.414" x2="27.432" y2="12.446" width="0.8128" layer="16"/>
<wire x1="27.432" y1="12.446" x2="27.432" y2="14.224" width="0.8128" layer="16"/>
<wire x1="27.432" y1="14.224" x2="27.178" y2="14.478" width="0.6096" layer="16"/>
<wire x1="27.178" y1="14.478" x2="27.178" y2="14.322" width="0.6096" layer="16"/>
<wire x1="27.178" y1="14.322" x2="27.508" y2="13.992" width="0.6096" layer="16"/>
<wire x1="28.088" y1="17.602" x2="28.088" y2="14.572" width="0.8128" layer="16"/>
<wire x1="28.088" y1="14.572" x2="27.508" y2="13.992" width="0.8128" layer="16"/>
<wire x1="28.088" y1="17.602" x2="28.088" y2="20.976" width="0.8128" layer="16"/>
<wire x1="28.088" y1="20.976" x2="28.194" y2="21.082" width="0.8128" layer="16"/>
<wire x1="28.194" y1="21.082" x2="35.052" y2="27.94" width="0.8128" layer="16"/>
<wire x1="35.052" y1="27.94" x2="42.418" y2="27.94" width="0.8128" layer="16"/>
<wire x1="42.418" y1="27.94" x2="43.942" y2="26.416" width="0.8128" layer="16"/>
<wire x1="43.942" y1="26.416" x2="43.942" y2="25.008" width="0.8128" layer="16"/>
<wire x1="43.942" y1="25.008" x2="43.95" y2="25" width="0.6096" layer="16"/>
<wire x1="50.81" y1="11" x2="48.846" y2="11" width="0.8128" layer="16"/>
<wire x1="48.846" y1="11" x2="45.72" y2="7.874" width="0.8128" layer="16"/>
<wire x1="45.72" y1="7.874" x2="31.97" y2="7.874" width="0.8128" layer="16"/>
<wire x1="31.97" y1="7.874" x2="31.616" y2="8.228" width="0.8128" layer="16"/>
<wire x1="60.454" y1="2.446" x2="58.514" y2="2.446" width="0.8128" layer="16"/>
<wire x1="58.514" y1="2.446" x2="57.658" y2="3.302" width="0.8128" layer="16"/>
<wire x1="57.658" y1="3.302" x2="57.658" y2="6.858" width="0.8128" layer="16"/>
<wire x1="57.658" y1="6.858" x2="56.896" y2="7.62" width="0.8128" layer="16"/>
<wire x1="56.896" y1="7.62" x2="56.896" y2="8.288" width="0.8128" layer="16"/>
<wire x1="56.896" y1="8.288" x2="56.99" y2="8.382" width="0.6096" layer="16"/>
<wire x1="56.99" y1="8.382" x2="55.334" y2="8.382" width="0.8128" layer="16"/>
<wire x1="55.334" y1="8.382" x2="53.658" y2="10.058" width="0.8128" layer="16"/>
<wire x1="53.658" y1="10.058" x2="51.752" y2="10.058" width="0.8128" layer="16"/>
<wire x1="51.752" y1="10.058" x2="50.81" y2="11" width="0.8128" layer="16"/>
<contactref element="JP3" pad="1"/>
<contactref element="JP3" pad="23"/>
<contactref element="JP1" pad="2"/>
<contactref element="JP1" pad="24"/>
<wire x1="14.478" y1="12.954" x2="27.432" y2="12.954" width="0.6096" layer="16"/>
<wire x1="27.432" y1="12.954" x2="27.432" y2="12.446" width="0.6096" layer="16"/>
<wire x1="8.984" y1="44.32" x2="8.654" y2="44.65" width="0.4064" layer="16"/>
<wire x1="9.398" y1="75.438" x2="11.43" y2="73.406" width="0.4064" layer="16"/>
<wire x1="11.43" y1="73.406" x2="14.986" y2="73.406" width="0.4064" layer="16"/>
<wire x1="14.986" y1="73.406" x2="18.034" y2="70.358" width="0.4064" layer="16"/>
<wire x1="18.034" y1="70.612" x2="18.034" y2="70.358" width="0.4064" layer="16"/>
<wire x1="18.034" y1="70.358" x2="18.034" y2="68.64" width="0.4064" layer="16"/>
<wire x1="18.034" y1="68.64" x2="18" y2="68.606" width="0.4064" layer="16"/>
<wire x1="68" y1="68.5" x2="68" y2="70.684" width="0.8128" layer="16"/>
<wire x1="68" y1="70.684" x2="67.31" y2="71.374" width="0.8128" layer="16"/>
<wire x1="67.31" y1="71.374" x2="28.126" y2="71.374" width="0.8128" layer="16"/>
<wire x1="18.796" y1="71.374" x2="18.034" y2="70.612" width="0.8128" layer="16"/>
<wire x1="18" y1="68.606" x2="18" y2="70.578" width="0.8128" layer="16"/>
<wire x1="18" y1="70.578" x2="18.034" y2="70.612" width="0.8128" layer="16"/>
<wire x1="2" y1="21.02" x2="2" y2="27.908" width="0.4064" layer="16"/>
<wire x1="2" y1="27.908" x2="3.556" y2="29.464" width="0.4064" layer="16"/>
<contactref element="SV1" pad="17"/>
<contactref element="SV1" pad="18"/>
<wire x1="75.565" y1="20.6375" x2="73.025" y2="20.6375" width="0.8128" layer="16"/>
<wire x1="73.025" y1="20.6375" x2="64.7065" y2="20.6375" width="0.8128" layer="16"/>
<wire x1="64.7065" y1="20.6375" x2="52.832" y2="32.512" width="0.8128" layer="16"/>
<wire x1="52.832" y1="32.512" x2="28.194" y2="32.512" width="0.8128" layer="16"/>
<wire x1="28.194" y1="21.082" x2="28.194" y2="32.512" width="0.8128" layer="16"/>
<wire x1="28.194" y1="32.512" x2="28.194" y2="43.688" width="0.8128" layer="16"/>
<wire x1="28.194" y1="20.32" x2="28.194" y2="21.082" width="0.4064" layer="16"/>
<wire x1="28.16" y1="71.408" x2="28.194" y2="55.626" width="0.8128" layer="16"/>
<via x="28.194" y="55.626" extent="1-16" drill="0.8" diameter="1.9304"/>
<wire x1="28.194" y1="55.626" x2="28.194" y2="43.688" width="0.8128" layer="1"/>
<via x="28.194" y="43.688" extent="1-16" drill="0.8" diameter="1.9304"/>
<wire x1="18.796" y1="71.374" x2="28.126" y2="71.374" width="0.8128" layer="16"/>
<wire x1="28.126" y1="71.374" x2="28.16" y2="71.408" width="0.8128" layer="16"/>
<wire x1="18" y1="46.606" x2="14.856" y2="46.606" width="0.4064" layer="16"/>
<wire x1="14.856" y1="46.606" x2="12.954" y2="44.704" width="0.4064" layer="16"/>
<wire x1="12.954" y1="44.704" x2="8.708" y2="44.704" width="0.4064" layer="16"/>
<wire x1="8.708" y1="44.704" x2="8.654" y2="44.65" width="0.4064" layer="16"/>
<contactref element="JP2" pad="2"/>
<contactref element="JP2" pad="4"/>
<wire x1="9.398" y1="78.232" x2="9.398" y2="75.692" width="0.4064" layer="16"/>
<wire x1="9.398" y1="75.438" x2="9.398" y2="75.692" width="0.4064" layer="16"/>
<wire x1="2" y1="21.02" x2="2" y2="21.05" width="0.4064" layer="16"/>
<wire x1="2" y1="21.05" x2="2.032" y2="21.082" width="0.4064" layer="16"/>
<wire x1="12.472" y1="19.838" x2="14.452" y2="19.838" width="0.4064" layer="16"/>
<wire x1="14.452" y1="19.838" x2="14.478" y2="19.812" width="0.4064" layer="16"/>
<wire x1="12.892" y1="22.672" x2="14.412" y2="22.672" width="0.4064" layer="16"/>
<wire x1="14.412" y1="22.672" x2="14.478" y2="22.606" width="0.4064" layer="16"/>
<wire x1="52.832" y1="32.512" x2="68" y2="46.5" width="0" layer="19" extent="16-16"/>
<wire x1="7.766" y1="36.684" x2="5.375" y2="32.425" width="0" layer="19" extent="16-16"/>
</signal>
<signal name="N$6">
<contactref element="IC2" pad="7"/>
<contactref element="C4" pad="1"/>
<contactref element="IC2" pad="5"/>
<contactref element="C6" pad="1"/>
<contactref element="C10" pad="+"/>
<contactref element="B1" pad="+"/>
<wire x1="46.6" y1="19.365" x2="47.945" y2="19.365" width="0.6096" layer="16"/>
<wire x1="47.945" y1="19.365" x2="48.768" y2="18.542" width="0.6096" layer="16"/>
<wire x1="48.768" y1="18.542" x2="49.492" y2="18.542" width="0.6096" layer="16"/>
<wire x1="49.492" y1="18.542" x2="49.5" y2="18.55" width="0.6096" layer="16"/>
<wire x1="49.5" y1="18.55" x2="52.4" y2="18.55" width="0.8128" layer="16"/>
<wire x1="46.6" y1="21.905" x2="51.501" y2="21.905" width="0.6096" layer="16"/>
<wire x1="51.501" y1="21.905" x2="52.324" y2="21.082" width="0.6096" layer="16"/>
<wire x1="52.324" y1="21.082" x2="52.324" y2="18.626" width="0.6096" layer="16"/>
<wire x1="52.324" y1="18.626" x2="52.4" y2="18.55" width="0.6096" layer="16"/>
<wire x1="53.838" y1="11.778" x2="53.658" y2="11.958" width="0.6096" layer="16"/>
<wire x1="53.658" y1="11.958" x2="53.658" y2="17.292" width="0.8128" layer="16"/>
<wire x1="53.658" y1="17.292" x2="52.4" y2="18.55" width="0.8128" layer="16"/>
<wire x1="53.838" y1="11.778" x2="58.326" y2="11.778" width="0.6096" layer="16"/>
<wire x1="58.326" y1="11.778" x2="59.69" y2="10.414" width="0.6096" layer="16"/>
<wire x1="59.69" y1="10.414" x2="59.69" y2="8.542" width="0.6096" layer="16"/>
<wire x1="59.69" y1="8.542" x2="59.53" y2="8.382" width="0.6096" layer="16"/>
<wire x1="60.454" y1="5.046" x2="60.454" y2="7.458" width="0.6096" layer="16"/>
<wire x1="60.454" y1="7.458" x2="59.53" y2="8.382" width="0.6096" layer="16"/>
</signal>
<signal name="N$7">
<contactref element="IC2" pad="1"/>
<contactref element="C7" pad="2"/>
<wire x1="41.4" y1="18.095" x2="42.405" y2="18.095" width="0.6096" layer="16"/>
<wire x1="42.405" y1="18.095" x2="43" y2="17.5" width="0.6096" layer="16"/>
<wire x1="43" y1="17.5" x2="43" y2="15.55" width="0.6096" layer="16"/>
<wire x1="43" y1="15.55" x2="43.05" y2="15.5" width="0.6096" layer="16"/>
</signal>
<signal name="N$8">
<contactref element="C7" pad="1"/>
<contactref element="IC2" pad="8"/>
<contactref element="L2" pad="1"/>
<contactref element="D1" pad="C"/>
<wire x1="45" y1="15.95" x2="44.95" y2="15.5" width="0.6096" layer="16"/>
<wire x1="46.6" y1="18.095" x2="45.595" y2="18.095" width="0.6096" layer="16"/>
<wire x1="45.595" y1="18.095" x2="45" y2="17.5" width="0.6096" layer="16"/>
<wire x1="45" y1="17.5" x2="45" y2="15.55" width="0.6096" layer="16"/>
<wire x1="45" y1="15.55" x2="44.95" y2="15.5" width="0.6096" layer="16"/>
<wire x1="44.95" y1="15.5" x2="44.95" y2="12.76" width="0.8128" layer="16"/>
<wire x1="44.95" y1="12.76" x2="43.19" y2="11" width="0.8128" layer="16"/>
<wire x1="43.19" y1="11" x2="42.848" y2="11" width="0.8128" layer="16"/>
<wire x1="42.848" y1="11" x2="40.64" y2="13.208" width="0.8128" layer="16"/>
<wire x1="40.64" y1="13.208" x2="39.342" y2="13.208" width="0.8128" layer="16"/>
<wire x1="39.342" y1="13.208" x2="39.05" y2="13.5" width="0.6096" layer="16"/>
</signal>
<signal name="N$9">
<contactref element="IC2" pad="2"/>
<contactref element="R1" pad="1"/>
<wire x1="41.4" y1="19.365" x2="38.45" y2="19.365" width="0.6096" layer="16"/>
<wire x1="38.45" y1="19.365" x2="38.45" y2="19.5" width="0.6096" layer="16"/>
</signal>
<signal name="N$10">
<contactref element="R2" pad="1"/>
<contactref element="IC2" pad="4"/>
<contactref element="R3" pad="2"/>
<contactref element="C3" pad="2"/>
<wire x1="41.4" y1="21.905" x2="38.45" y2="21.905" width="0.6096" layer="16"/>
<wire x1="38.45" y1="21.905" x2="38.45" y2="23.5" width="0.6096" layer="16"/>
<wire x1="38.45" y1="23.5" x2="38.45" y2="26" width="0.6096" layer="16"/>
<wire x1="42.05" y1="25" x2="41.4" y2="25" width="0.6096" layer="16"/>
<wire x1="41.4" y1="25" x2="41.4" y2="21.905" width="0.6096" layer="16"/>
</signal>
<signal name="N$11">
<contactref element="C3" pad="1"/>
<contactref element="L2" pad="2"/>
<contactref element="R1" pad="2"/>
<contactref element="R2" pad="2"/>
<contactref element="C5" pad="1"/>
<contactref element="C8" pad="+"/>
<wire x1="36.55" y1="19.5" x2="36.55" y2="23.5" width="0.6096" layer="16"/>
<wire x1="36.55" y1="23.5" x2="36.55" y2="26" width="0.6096" layer="16"/>
<contactref element="C9" pad="+"/>
<wire x1="34.95" y1="13.5" x2="34.348" y2="13.5" width="0.6096" layer="16"/>
<wire x1="31.616" y1="12.884" x2="31.14" y2="13.36" width="0.8128" layer="16"/>
<wire x1="31.14" y1="13.36" x2="30.508" y2="13.992" width="0.8128" layer="16"/>
<wire x1="30.508" y1="13.992" x2="30.508" y2="17.082" width="0.8128" layer="16"/>
<wire x1="30.508" y1="17.082" x2="29.988" y2="17.602" width="0.8128" layer="16"/>
<wire x1="36.55" y1="19.5" x2="32.766" y2="19.5" width="0.8128" layer="16"/>
<wire x1="32.766" y1="19.5" x2="30.422" y2="19.5" width="0.8128" layer="16"/>
<wire x1="30.422" y1="19.5" x2="29.972" y2="19.05" width="0.8128" layer="16"/>
<wire x1="29.972" y1="19.05" x2="29.972" y2="17.618" width="0.8128" layer="16"/>
<wire x1="29.972" y1="17.618" x2="29.988" y2="17.602" width="0.6096" layer="16"/>
<wire x1="34.348" y1="13.5" x2="31.28" y2="13.5" width="0.8128" layer="16"/>
<wire x1="31.28" y1="13.5" x2="31.14" y2="13.36" width="0.8128" layer="16"/>
<wire x1="31.616" y1="12.884" x2="31.616" y2="10.768" width="0.8128" layer="16"/>
<contactref element="JP3" pad="24"/>
<contactref element="JP1" pad="23"/>
<wire x1="32.766" y1="46.606" x2="65.894" y2="46.606" width="0.6096" layer="16"/>
<wire x1="65.894" y1="46.606" x2="66" y2="46.5" width="0.6096" layer="16"/>
<wire x1="20" y1="46.606" x2="32.766" y2="46.606" width="0.6096" layer="16"/>
<wire x1="32.766" y1="46.606" x2="32.766" y2="38.608" width="0.6096" layer="16"/>
<via x="32.766" y="38.608" extent="1-16" drill="0.8" diameter="1.9304"/>
<wire x1="32.766" y1="38.608" x2="32.766" y2="22.606" width="0.6096" layer="1"/>
<via x="32.766" y="22.606" extent="1-16" drill="0.8" diameter="1.9304"/>
<wire x1="32.766" y1="22.606" x2="32.766" y2="19.5" width="0.6096" layer="16"/>
</signal>
<signal name="N$13">
<contactref element="IC1" pad="4"/>
<contactref element="C2" pad="+"/>
<contactref element="IC1" pad="17"/>
<contactref element="C12" pad="1"/>
<wire x1="10.16" y1="26.416" x2="10.16" y2="31.242" width="0.4064" layer="16"/>
<wire x1="10.16" y1="31.242" x2="10.668" y2="31.75" width="0.4064" layer="16"/>
<wire x1="10.668" y1="31.75" x2="12.6" y2="31.75" width="0.4064" layer="16"/>
<wire x1="12.6" y1="31.75" x2="12.625" y2="31.775" width="0.4064" layer="16"/>
<wire x1="5.375" y1="26.575" x2="10.001" y2="26.575" width="0.4064" layer="16"/>
<wire x1="10.001" y1="26.575" x2="10.16" y2="26.416" width="0.4064" layer="16"/>
<wire x1="10.16" y1="26.416" x2="10.16" y2="22.864" width="0.4064" layer="16"/>
<wire x1="10.16" y1="22.864" x2="10.352" y2="22.672" width="0.4064" layer="16"/>
<wire x1="10.352" y1="22.672" x2="10.352" y2="20.258" width="0.4064" layer="16"/>
<wire x1="10.352" y1="20.258" x2="10.772" y2="19.838" width="0.4064" layer="16"/>
</signal>
<signal name="N$14">
<contactref element="R4" pad="2"/>
<contactref element="JP5" pad="12"/>
<wire x1="11.15" y1="52.968" x2="9.516" y2="52.968" width="0.4064" layer="16"/>
<wire x1="9.516" y1="52.968" x2="8.128" y2="54.356" width="0.4064


text:
" layer="16"/>
</signal>
<signal name="N$15">
<contactref element="R5" pad="2"/>
<contactref element="JP5" pad="10"/>
<wire x1="11.15" y1="55.468" x2="10.826" y2="55.468" width="0.4064" layer="16"/>
<wire x1="10.826" y1="55.468" x2="9.398" y2="56.896" width="0.4064" layer="16"/>
<wire x1="9.398" y1="56.896" x2="8.128" y2="56.896" width="0.4064" layer="16"/>
</signal>
<signal name="N$16">
<contactref element="R6" pad="2"/>
<contactref element="JP5" pad="8"/>
<wire x1="11.15" y1="57.968" x2="10.866" y2="57.968" width="0.4064" layer="16"/>
<wire x1="10.866" y1="57.968" x2="9.398" y2="59.436" width="0.4064" layer="16"/>
<wire x1="9.398" y1="59.436" x2="8.128" y2="59.436" width="0.4064" layer="16"/>
</signal>
<signal name="N$17">
<contactref element="R7" pad="2"/>
<contactref element="JP5" pad="6"/>
<wire x1="11.15" y1="60.468" x2="10.398" y2="60.468" width="0.4064" layer="16"/>
<wire x1="10.398" y1="60.468" x2="8.89" y2="61.976" width="0.4064" layer="16"/>
<wire x1="8.89" y1="61.976" x2="8.128" y2="61.976" width="0.4064" layer="16"/>
</signal>
<signal name="N$18">
<contactref element="R8" pad="2"/>
<contactref element="JP5" pad="4"/>
<wire x1="11.15" y1="62.968" x2="10.692" y2="62.968" width="0.4064" layer="16"/>
<wire x1="10.692" y1="62.968" x2="9.144" y2="64.516" width="0.4064" layer="16"/>
<wire x1="9.144" y1="64.516" x2="8.128" y2="64.516" width="0.4064" layer="16"/>
</signal>
<signal name="N$19">
<contactref element="R9" pad="2"/>
<contactref element="JP5" pad="2"/>
<wire x1="11.15" y1="65.468" x2="10.732" y2="65.468" width="0.4064" layer="16"/>
<wire x1="10.732" y1="65.468" x2="9.144" y2="67.056" width="0.4064" layer="16"/>
<wire x1="9.144" y1="67.056" x2="8.128" y2="67.056" width="0.4064" layer="16"/>
</signal>
<signal name="N$21">
<contactref element="Q3" pad="3"/>
<contactref element="JP5" pad="11"/>
<wire x1="5.588" y1="54.356" x2="5.588" y2="50.356" width="0.4064" layer="16"/>
<wire x1="5.588" y1="50.356" x2="6.454" y2="49.49" width="0.4064" layer="16"/>
</signal>
<signal name="N$22">
<contactref element="Q2" pad="3"/>
<wire x1="6.445" y1="41.626" x2="3.586" y2="41.626" width="0.4064" layer="16"/>
<contactref element="JP5" pad="7"/>
<wire x1="5.588" y1="59.436" x2="4.826" y2="59.436" width="0.4064" layer="16"/>
<wire x1="4.826" y1="59.436" x2="2.286" y2="56.896" width="0.4064" layer="16"/>
<wire x1="2.286" y1="56.896" x2="2.286" y2="42.926" width="0.4064" layer="16"/>
<wire x1="2.286" y1="42.926" x2="3.586" y2="41.626" width="0.4064" layer="16"/>
</signal>
<signal name="N$23">
<contactref element="Q1" pad="3"/>
<wire x1="4.064" y1="37.592" x2="6.403" y2="37.592" width="0.4064" layer="16"/>
<wire x1="6.403" y1="37.592" x2="6.445" y2="37.634" width="0.4064" layer="16"/>
<contactref element="JP5" pad="5"/>
<wire x1="5.588" y1="61.976" x2="4.572" y2="61.976" width="0.4064" layer="16"/>
<wire x1="4.572" y1="61.976" x2="1.27" y2="58.674" width="0.4064" layer="16"/>
<wire x1="1.27" y1="58.674" x2="1.27" y2="40.386" width="0.4064" layer="16"/>
<wire x1="1.27" y1="40.386" x2="4.064" y2="37.592" width="0.4064" layer="16"/>
</signal>
<signal name="N$24">
<contactref element="R11" pad="2"/>
<contactref element="JP5" pad="3"/>
<wire x1="11.15" y1="70.468" x2="4.936" y2="70.468" width="0.4064" layer="16"/>
<wire x1="4.936" y1="70.468" x2="3.556" y2="69.088" width="0.4064" layer="16"/>
<wire x1="3.556" y1="69.088" x2="3.556" y2="65.532" width="0.4064" layer="16"/>
<wire x1="3.556" y1="65.532" x2="4.572" y2="64.516" width="0.4064" layer="16"/>
<wire x1="4.572" y1="64.516" x2="5.588" y2="64.516" width="0.4064" layer="16"/>
</signal>
<signal name="N$25">
<contactref element="R10" pad="2"/>
<contactref element="JP5" pad="1"/>
<wire x1="11.15" y1="67.968" x2="10.518" y2="67.968" width="0.4064" layer="16"/>
<wire x1="10.518" y1="67.968" x2="9.144" y2="69.342" width="0.4064" layer="16"/>
<wire x1="9.144" y1="69.342" x2="6.604" y2="69.342" width="0.4064" layer="16"/>
<wire x1="6.604" y1="69.342" x2="5.588" y2="68.326" width="0.4064" layer="16"/>
<wire x1="5.588" y1="68.326" x2="5.588" y2="67.056" width="0.4064" layer="16"/>
</signal>
<signal name="N$12">
<contactref element="B1" pad="~2"/>
<contactref element="J1" pad="1"/>
<wire x1="50.834" y1="5.046" x2="49.276" y2="6.604" width="0.6096" layer="16"/>
<wire x1="49.276" y1="6.604" x2="46.482" y2="6.604" width="0.6096" layer="16"/>
<wire x1="46.482" y1="6.604" x2="45.466" y2="5.588" width="0.6096" layer="16"/>
<wire x1="45.466" y1="5.588" x2="45.466" y2="4.086" width="0.6096" layer="16"/>
<wire x1="45.466" y1="4.086" x2="45.388" y2="4.008" width="0.6096" layer="16"/>
<wire x1="54.354" y1="5.046" x2="50.834" y2="5.046" width="0.6096" layer="16"/>
</signal>
<signal name="N$26">
<contactref element="B1" pad="~1"/>
<contactref element="J1" pad="2"/>
<wire x1="49.49" y1="2.446" x2="47.928" y2="4.008" width="0.6096" layer="16"/>
<wire x1="54.354" y1="2.446" x2="49.49" y2="2.446" width="0.6096" layer="16"/>
</signal>
<signal name="N$4">
<contactref element="IC1" pad="5"/>
<contactref element="JP3" pad="32"/>
<wire x1="12.625" y1="31.125" x2="16.901" y2="31.125" width="0.4064" layer="16"/>
<wire x1="16.901" y1="31.125" x2="20.066" y2="34.29" width="0.4064" layer="16"/>
<wire x1="20.066" y1="34.29" x2="20.066" y2="38.54" width="0.4064" layer="16"/>
<wire x1="20.066" y1="38.54" x2="20" y2="38.606" width="0.4064" layer="16"/>
</signal>
<signal name="N$27">
<contactref element="IC1" pad="1"/>
<contactref element="JP3" pad="31"/>
<wire x1="18" y1="38.606" x2="18" y2="36.542" width="0.4064" layer="16"/>
<wire x1="18" y1="36.542" x2="15.24" y2="33.782" width="0.4064" layer="16"/>
<wire x1="15.24" y1="33.782" x2="12.682" y2="33.782" width="0.4064" layer="16"/>
<wire x1="12.682" y1="33.782" x2="12.625" y2="33.725" width="0.4064" layer="16"/>
</signal>
<signal name="N$28">
<wire x1="60.452" y1="5.08" x2="65.786" y2="5.08" width="0.6096" layer="16"/>
</signal>
<signal name="N$30">
<wire x1="60.452" y1="2.286" x2="65.786" y2="2.286" width="0.6096" layer="16"/>
</signal>
<signal name="L1">
<contactref element="R4" pad="1"/>
<contactref element="JP3" pad="17"/>
<wire x1="12.85" y1="52.968" x2="17.638" y2="52.968" width="0.4064" layer="16"/>
<wire x1="17.638" y1="52.968" x2="18" y2="52.606" width="0.4064" layer="16"/>
</signal>
<signal name="L2">
<contactref element="R5" pad="1"/>
<contactref element="JP3" pad="15"/>
<wire x1="12.85" y1="55.468" x2="14.89" y2="55.468" width="0.4064" layer="16"/>
<wire x1="14.89" y1="55.468" x2="15.748" y2="54.61" width="0.4064" layer="16"/>
<wire x1="15.748" y1="54.61" x2="17.996" y2="54.61" width="0.4064" layer="16"/>
<wire x1="17.996" y1="54.61" x2="18" y2="54.606" width="0.4064" layer="16"/>
</signal>
<signal name="L3">
<contactref element="R6" pad="1"/>
<contactref element="JP3" pad="13"/>
<wire x1="12.85" y1="57.968" x2="14.676" y2="57.968" width="0.4064" layer="16"/>
<wire x1="14.676" y1="57.968" x2="16.002" y2="56.642" width="0.4064" layer="16"/>
<wire x1="16.002" y1="56.642" x2="17.964" y2="56.642" width="0.4064" layer="16"/>
<wire x1="17.964" y1="56.642" x2="18" y2="56.606" width="0.4064" layer="16"/>
</signal>
<signal name="L4">
<contactref element="R7" pad="1"/>
<contactref element="JP3" pad="11"/>
<wire x1="18" y1="58.606" x2="15.816" y2="58.606" width="0.4064" layer="16"/>
<wire x1="15.816" y1="58.606" x2="13.97" y2="60.452" width="0.4064" layer="16"/>
<wire x1="13.97" y1="60.452" x2="12.866" y2="60.452" width="0.4064" layer="16"/>
<wire x1="12.866" y1="60.452" x2="12.85" y2="60.468" width="0.4064" layer="16"/>
</signal>
<signal name="L5">
<contactref element="R8" pad="1"/>
<contactref element="JP3" pad="9"/>
<wire x1="12.874" y1="62.992" x2="12.85" y2="62.968" width="0.4064" layer="16"/>
<wire x1="12.874" y1="62.992" x2="13.97" y2="62.992" width="0.4064" layer="16"/>
<wire x1="13.97" y1="62.992" x2="16.256" y2="60.706" width="0.4064" layer="16"/>
<wire x1="16.256" y1="60.706" x2="17.9" y2="60.706" width="0.4064" layer="16"/>
<wire x1="17.9" y1="60.706" x2="18" y2="60.606" width="0.4064" layer="16"/>
</signal>
<signal name="L6">
<contactref element="R9" pad="1"/>
<contactref element="JP3" pad="7"/>
<wire x1="13.04" y1="65.278" x2="12.85" y2="65.468" width="0.4064" layer="16"/>
<wire x1="13.04" y1="65.278" x2="14.224" y2="65.278" width="0.4064" layer="16"/>
<wire x1="14.224" y1="65.278" x2="17.018" y2="62.484" width="0.4064" layer="16"/>
<wire x1="17.018" y1="62.484" x2="17.878" y2="62.484" width="0.4064" layer="16"/>
<wire x1="17.878" y1="62.484" x2="18" y2="62.606" width="0.4064" layer="16"/>
</signal>
<signal name="L7">
<contactref element="R10" pad="1"/>
<contactref element="JP3" pad="5"/>
<wire x1="18" y1="64.606" x2="17.182" y2="64.606" width="0.4064" layer="16"/>
<wire x1="17.182" y1="64.606" x2="13.97" y2="67.818" width="0.4064" layer="16"/>
<wire x1="13.97" y1="67.818" x2="13" y2="67.818" width="0.4064" layer="16"/>
<wire x1="13" y1="67.818" x2="12.85" y2="67.968" width="0.4064" layer="16"/>
</signal>
<signal name="L8">
<contactref element="R11" pad="1"/>
<contactref element="JP3" pad="3"/>
<wire x1="12.96" y1="70.358" x2="12.85" y2="70.468" width="0.4064" layer="16"/>
<wire x1="12.96" y1="70.358" x2="13.462" y2="70.358" width="0.4064" layer="16"/>
<wire x1="13.462" y1="70.358" x2="17.018" y2="66.802" width="0.4064" layer="16"/>
<wire x1="17.018" y1="66.802" x2="17.804" y2="66.802" width="0.4064" layer="16"/>
<wire x1="17.804" y1="66.802" x2="18" y2="66.606" width="0.4064" layer="16"/>
</signal>
<signal name="Q4">
<contactref element="JP3" pad="21"/>
<contactref element="Q4" pad="1"/>
<wire x1="8.884" y1="46.32" x2="8.654" y2="46.55" width="0.4064" layer="16"/>
<wire x1="18" y1="48.606" x2="13.554" y2="48.606" width="0.4064" layer="16"/>
<wire x1="13.554" y1="48.606" x2="11.43" y2="46.482" width="0.4064" layer="16"/>
<wire x1="11.43" y1="46.482" x2="8.722" y2="46.482" width="0.4064" layer="16"/>
<wire x1="8.722" y1="46.482" x2="8.654" y2="46.55" width="0.4064" layer="16"/>
</signal>
<signal name="Q3">
<contactref element="JP3" pad="19"/>
<contactref element="Q3" pad="1"/>
<wire x1="18" y1="50.606" x2="8.82" y2="50.606" width="0.4064" layer="16"/>
<wire x1="8.82" y1="50.606" x2="8.654" y2="50.44" width="0.4064" layer="16"/>
</signal>
<signal name="Q2">
<contactref element="JP3" pad="25"/>
<contactref element="Q2" pad="1"/>
<wire x1="17.744" y1="44.862" x2="18" y2="44.606" width="0.4064" layer="16"/>
<wire x1="17.744" y1="44.862" x2="15.906" y2="44.862" width="0.4064" layer="16"/>
<wire x1="15.906" y1="44.862" x2="13.716" y2="42.672" width="0.4064" layer="16"/>
<wire x1="13.716" y1="42.672" x2="8.741" y2="42.672" width="0.4064" layer="16"/>
<wire x1="8.741" y1="42.672" x2="8.645" y2="42.576" width="0.4064" layer="16"/>
</signal>
<signal name="Q1">
<contactref element="JP3" pad="27"/>
<contactref element="Q1" pad="1"/>
<wire x1="18" y1="42.606" x2="16.19" y2="42.606" width="0.4064" layer="16"/>
<wire x1="16.19" y1="42.606" x2="12.192" y2="38.608" width="0.4064" layer="16"/>
<wire x1="12.192" y1="38.608" x2="8.669" y2="38.608" width="0.4064" layer="16"/>
<wire x1="8.669" y1="38.608" x2="8.645" y2="38.584" width="0.4064" layer="16"/>
</signal>
<signal name="N$5">
<contactref element="R12" pad="2"/>
<contactref element="JP2" pad="1"/>
<wire x1="14.136" y1="75.692" x2="11.938" y2="75.692" width="0.4064" layer="16"/>
</signal>
<signal name="N$31">
<contactref element="R13" pad="2"/>
<contactref element="JP2" pad="3"/>
<wire x1="14.136" y1="78.232" x2="11.938" y2="78.232" width="0.4064" layer="16"/>
</signal>
<signal name="LED1">
<contactref element="R12" pad="1"/>
<contactref element="JP4" pad="1"/>
<wire x1="15.836" y1="75.692" x2="16.002" y2="75.692" width="0.4064" layer="16"/>
<wire x1="16.002" y1="75.692" x2="17.018" y2="74.676" width="0.4064" layer="16"/>
<wire x1="17.018" y1="74.676" x2="17.824" y2="74.676" width="0.4064" layer="16"/>
<wire x1="17.824" y1="74.676" x2="18" y2="74.5" width="0.4064" layer="16"/>
</signal>
<signal name="LED2">
<contactref element="R13" pad="1"/>
<contactref element="JP4" pad="2"/>
<wire x1="15.836" y1="78.232" x2="17.018" y2="78.232" width="0.4064" layer="16"/>
<wire x1="17.018" y1="78.232" x2="17.78" y2="77.47" width="0.4064" layer="16"/>
<wire x1="17.78" y1="77.47" x2="17.78" y2="76.72" width="0.4064" layer="16"/>
<wire x1="17.78" y1="76.72" x2="18" y2="76.5" width="0.4064" layer="16"/>
</signal>
<signal name="R4">
<contactref element="SV1" pad="1"/>
<contactref element="JP1" pad="26"/>
<wire x1="68" y1="44.5" x2="69.4825" y2="44.5" width="0.4064" layer="16"/>
<wire x1="69.4825" y1="44.5" x2="73.025" y2="40.9575" width="0.4064" layer="16"/>
</signal>
<signal name="R5">
<contactref element="SV1" pad="3"/>
<contactref element="JP1" pad="28"/>
<wire x1="68" y1="42.5" x2="68.9425" y2="42.5" width="0.4064" layer="16"/>
<wire x1="68.9425" y1="42.5" x2="73.025" y2="38.4175" width="0.4064" layer="16"/>
</signal>
<signal name="R6">
<contactref element="SV1" pad="5"/>
<contactref element="JP1" pad="30"/>
<wire x1="68" y1="40.5" x2="68.72" y2="40.5" width="0.4064" layer="16"/>
<wire x1="68.72" y1="40.5" x2="70.866" y2="38.354" width="0.4064" layer="16"/>
<wire x1="70.866" y1="38.354" x2="70.866" y2="36.83" width="0.4064" layer="16"/>
<wire x1="70.866" y1="36.83" x2="71.628" y2="36.068" width="0.4064" layer="16"/>
<wire x1="71.628" y1="36.068" x2="72.8345" y2="36.068" width="0.4064" layer="16"/>
<wire x1="72.8345" y1="36.068" x2="73.025" y2="35.8775" width="0.4064" layer="16"/>
</signal>
<signal name="R7">
<contactref element="SV1" pad="7"/>
<contactref element="JP1" pad="32"/>
<wire x1="68" y1="38.5" x2="68" y2="37.41" width="0.4064" layer="16"/>
<wire x1="68" y1="37.41" x2="72.136" y2="33.274" width="0.4064" layer="16"/>
<wire x1="72.136" y1="33.274" x2="72.9615" y2="33.274" width="0.4064" layer="16"/>
<wire x1="72.9615" y1="33.274" x2="73.025" y2="33.3375" width="0.4064" layer="16"/>
</signal>
<signal name="R8">
<contactref element="SV1" pad="9"/>
<contactref element="JP1" pad="31"/>
<wire x1="73.025" y1="30.7975" x2="72.0725" y2="30.7975" width="0.4064" layer="16"/>
<wire x1="72.0725" y1="30.7975" x2="66.04" y2="36.83" width="0.4064" layer="16"/>
<wire x1="66.04" y1="36.83" x2="66.04" y2="38.46" width="0.4064" layer="16"/>
<wire x1="66.04" y1="38.46" x2="66" y2="38.5" width="0.4064" layer="16"/>
</signal>
<signal name="R9">
<contactref element="SV1" pad="11"/>
<contactref element="JP1" pad="29"/>
<wire x1="73.025" y1="28.2575" x2="71.5645" y2="28.2575" width="0.4064" layer="16"/>
<wire x1="71.5645" y1="28.2575" x2="63.246" y2="36.576" width="0.4064" layer="16"/>
<wire x1="63.246" y1="36.576" x2="63.246" y2="39.878" width="0.4064" layer="16"/>
<wire x1="63.246" y1="39.878" x2="64.008" y2="40.64" width="0.4064" layer="16"/>
<wire x1="64.008" y1="40.64" x2="65.86" y2="40.64" width="0.4064" layer="16"/>
<wire x1="65.86" y1="40.64" x2="66" y2="40.5" width="0.4064" layer="16"/>
</signal>
<signal name="R10">
<contactref element="SV1" pad="13"/>
<contactref element="JP1" pad="27"/>
<wire x1="73.025" y1="25.7175" x2="71.5645" y2="25.7175" width="0.4064" layer="16"/>
<wire x1="71.5645" y1="25.7175" x2="61.214" y2="36.068" width="0.4064" layer="16"/>
<wire x1="61.214" y1="36.068" x2="61.214" y2="40.386" width="0.4064" layer="16"/>
<wire x1="61.214" y1="40.386" x2="63.5" y2="42.672" width="0.4064" layer="16"/>
<wire x1="63.5" y1="42.672" x2="65.828" y2="42.672" width="0.4064" layer="16"/>
<wire x1="65.828" y1="42.672" x2="66" y2="42.5" width="0.4064" layer="16"/>
</signal>
<signal name="R11">
<contactref element="SV1" pad="15"/>
<contactref element="JP1" pad="25"/>
<wire x1="62.23" y1="44.45" x2="65.95" y2="44.45" width="0.4064" layer="16"/>
<wire x1="65.95" y1="44.45" x2="66" y2="44.5" width="0.4064" layer="16"/>
<wire x1="73.025" y1="23.1775" x2="71.8185" y2="23.1775" width="0.4064" layer="16"/>
<wire x1="71.8185" y1="23.1775" x2="59.436" y2="35.56" width="0.4064" layer="16"/>
<wire x1="59.436" y1="35.56" x2="59.436" y2="41.656" width="0.4064" layer="16"/>
<wire x1="59.436" y1="41.656" x2="62.23" y2="44.45" width="0.4064" layer="16"/>
</signal>
<signal name="R3">
<contactref element="SV1" pad="2"/>
<contactref element="JP1" pad="22"/>
<wire x1="68" y1="48.5" x2="69.102" y2="48.5" width="0.4064" layer="16"/>
<wire x1="69.102" y1="48.5" x2="75.692" y2="41.91" width="0.4064" layer="16"/>
<wire x1="75.692" y1="41.91" x2="75.692" y2="41.0845" width="0.4064" layer="16"/>
<wire x1="75.692" y1="41.0845" x2="75.565" y2="40.9575" width="0.4064" layer="16"/>
</signal>
<signal name="R2">
<contactref element="SV1" pad="4"/>
<contactref element="JP1" pad="20"/>
<wire x1="75.565" y1="38.4175" x2="77.0255" y2="38.4175" width="0.4064" layer="16"/>
<wire x1="77.0255" y1="38.4175" x2="77.724" y2="39.116" width="0.4064" layer="16"/>
<wire x1="77.724" y1="39.116" x2="77.724" y2="43.434" width="0.4064" layer="16"/>
<wire x1="77.724" y1="43.434" x2="70.612" y2="50.546" width="0.4064" layer="16"/>
<wire x1="70.612" y1="50.546" x2="68.046" y2="50.546" width="0.4064" layer="16"/>
<wire x1="68.046" y1="50.546" x2="68" y2="50.5" width="0.4064" layer="16"/>
</signal>
<signal name="R1">
<contactref element="SV1" pad="6"/>
<contactref element="JP1" pad="18"/>
<wire x1="75.565" y1="35.8775" x2="78.0415" y2="35.8775" width="0.4064" layer="16"/>
<wire x1="78.0415" y1="35.8775" x2="78.994" y2="36.83" width="0.4064" layer="16"/>
<wire x1="68" y1="52.5" x2="71.452" y2="52.5" width="0.4064" layer="16"/>
<wire x1="71.452" y1="52.5" x2="78.994" y2="44.958" width="0.4064" layer="16"/>
<wire x1="78.994" y1="44.958" x2="78.994" y2="36.83" width="0.4064" layer="16"/>
</signal>
<signal name="N$20">
<contactref element="Q4" pad="3"/>
<wire x1="4.318" y1="45.72" x2="6.334" y2="45.72" width="0.4064" layer="16"/>
<wire x1="6.334" y1="45.72" x2="6.454" y2="45.6" width="0.4064" layer="16"/>
<contactref element="JP5" pad="9"/>
<wire x1="5.588" y1="56.896" x2="4.572" y2="56.896" width="0.4064" layer="16"/>
<wire x1="4.572" y1="56.896" x2="3.302" y2="55.626" width="0.4064" layer="16"/>
<wire x1="3.302" y1="55.626" x2="3.302" y2="46.736" width="0.4064" layer="16"/>
<wire x1="3.302" y1="46.736" x2="4.318" y2="45.72" width="0.4064" layer="16"/>
</signal>
</signals>
</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>

repository: dm-urievich/afc-smm

license_type: permissive

repo_name: dm-urievich/afc-smm

branch_name: refs/heads/master

extension: brd


text:
// MIT License

// Copyright (c) 2020 Tree Xie

// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:

// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.

// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.

package cache

import (
	"testing"

	"github.com/stretchr/testify/assert"
)

func TestLRUGetCache(t *testing.T) {
	assert := assert.New(t)
	httpLRU := newHTTPLRUCache(10)
	key := []byte("abcd")
	c, ok := httpLRU.getCache(key)
	assert.False(ok)
	assert.Nil(c)

	httpLRU.cache.Add(string(key), "abc")
	c, ok = httpLRU.getCache(key)
	assert.False(ok)
	assert.Nil(c)

	hc := &httpCache{}
	httpLRU.cache.Add(string(key), hc)
	c, ok = httpLRU.getCache(key)
	assert.True(ok)
	assert.Equal(hc, c)
}

func TestDispatcher(t *testing.T) {
	assert := assert.New(t)
	d := NewDispatcher(DispatcherOption{
		Size:       0,
		HitForPass: 30,
	})
	assert.Equal(30, d.GetHitForPass())
	key := []byte("key")
	c := d.GetHTTPCache(key)
	c.createdAt = 1
	for i := 0; i < 10; i++ {
		assert.Equal(c, d.GetHTTPCache([]byte("key")))
	}
	d.RemoveHTTPCache(key)
	hc := d.GetHTTPCache(key)
	assert.NotNil(hc)
	assert.Empty(hc.createdAt)
}

func TestDispatchers(t *testing.T) {
	assert := assert.New(t)
	name1 := "test1"
	name2 := "test2"
	ds := NewDispatchers([]DispatcherOption{
		{
			Name: name1,
			Size: 100,
		},
	})
	assert.NotNil(ds.Get(name1))
	// 第一次reset，清除name1，添加name2
	ds.Reset([]DispatcherOption{
		{
			Name: name2,
			Size: 100,
		},
	})
	assert.Nil(ds.Get(name1))
	assert.NotNil(ds.Get(name2))

	// 再次reset
	ds.Reset([]DispatcherOption{
		{
			Name: name2,
			Size: 100,
		},
	})
	assert.Nil(ds.Get(name1))
	assert.NotNil(ds.Get(name2))

	key := []byte("abc")
	hc := ds.Get(name2).GetHTTPCache(key)
	assert.NotNil(hc)
	hc.createdAt = 1

	ds.RemoveHTTPCache("", key)
	hc1 := ds.Get(name2).GetHTTPCache(key)
	assert.Empty(hc1.createdAt)

}

license: MIT

extension: go


text:
@InProceedings{chandrasekaran14,
  title = {Finding a most biased coin with fewest flips},
  author = {Chandrasekaran, Karthekeyan and Karp, Richard},
  pages = {394-407},
  abstract = {We study the problem of learning a most biased coin among a set of coins by tossing the coins adaptively. The goal is to minimize the number of tosses until we identify a coin whose posterior probability of being most biased is at least $1-\delta$ for a given $\delta$. Under a particular probabilistic model, we give an optimal algorithm, i.e., an algorithm that minimizes the expected number of future tosses. The problem is closely related to finding the best arm in the multi-armed bandit problem using adaptive strategies. Our algorithm employs an optimal adaptive strategy---a strategy that performs the best possible action at each step after observing the outcomes of all previous coin tosses. Consequently, our algorithm is also optimal for any given starting history of outcomes. To our knowledge, this is the first algorithm that employs an optimal adaptive strategy under a Bayesian setting for this problem. Our proof of optimality employs mathematical tools from the area of Markov games.},
}

repository: mreid/papersite

repo_name: mreid/papersite

gha_license_id: MIT

gha_language: TeX

extension: bib


text:
SUMMARY = "Skins for Enigma2"
LICENSE = "CLOSED"
SRCREV = "${@opendreambox_srcrev('c616a243d974ef274d30e8c47ef78d25894cc628', d)}"

inherit allarch autotools-brokensep opendreambox-github

PACKAGES_DYNAMIC = "^enigma2-skin-.*"
PACKAGES += "${PN}-meta"

FILES_${PN} = ""
FILES_${PN}-meta = "${datadir}/meta"

python enigma2_skins_split_packages() {
    output_pattern = 'enigma2-skin-%s'
    enigma2_skindir = os.path.join(d.getVar('datadir', True), 'enigma2')
    do_split_packages(d, enigma2_skindir, '(.*?)/.*', output_pattern, 'Enigma2 Skin: %s', recursive=True, extra_depends='enigma2', match_path=True)

    def parseControlFile(package, dir):
        filename = os.path.join(dir, 'CONTROL/control')
        if os.path.exists(filename):
            with open(filename) as f:
                for line in f.read().splitlines():
                    try:
                        name, value = line.strip().split(': ', 1)
                        if name == 'Description':
                            d.setVar('DESCRIPTION_%s' % package, value)
                        elif name in ('Breaks', 'Conflicts', 'Depends', 'Provides', 'Recommends', 'Replaces', 'Suggests'):
                            d.appendVar('R%s_%s' % (name.upper(), package), ' ' + ' '.join(value.split(', ')))
                    except:
                        bb.fatal("Error parsing control file for package %s" % package)

    srcdir = os.path.join(d.getVar('S', True), 'skins')
    packages = d.getVar('PACKAGES', True).split()
    for subdir in next(os.walk(srcdir))[1]:
        package = output_pattern % legitimize_package_name(subdir)
        if package in packages:
            parseControlFile(package, os.path.join(srcdir, subdir))
}

PACKAGESPLITFUNCS_prepend = "enigma2_skins_split_packages "

# This list of packages is compiled from all 'Depends' fields in all control
# files found in the enigma2-skins repository. If a dependency gets added
# there, add it here, too. This allows to keep build dependencies minimal
# while making sure that all runtime dependencies are available.
# As ${PN} doesn't contain any files and ALLOW_EMPTY isn't set, this list
# actually has no impact on any generated packages.
RDEPENDS_${PN} = " \
    enigma2 \
    enigma2-plugin-skincomponents-channelselectionshorttitle \
    enigma2-plugin-skincomponents-eventlist \
    enigma2-plugin-skincomponents-eventposition \
    enigma2-plugin-skincomponents-reftopiconname \
    enigma2-plugin-skincomponents-serviceresolution \
"
RDEPENDS_${PN}-dev = ""

repository: opendreambox/opendreambox

repo_name: opendreambox/opendreambox

branch_name: refs/heads/pyro

gha_license_id: NOASSERTION

gha_language: BitBake

extension: bb


text:
package chainrpc

import (
	"context"

	"github.com/libp2p/go-libp2p-core/peer"
	"github.com/multiformats/go-multiaddr"
	"github.com/olympus-protocol/ogen/api/proto"
	"github.com/olympus-protocol/ogen/internal/hostnode"
)

type networkServer struct {
	host hostnode.HostNode
	proto.UnimplementedNetworkServer
}

func (s *networkServer) GetNetworkInfo(ctx context.Context, _ *proto.Empty) (*proto.NetworkInfo, error) {
	defer ctx.Done()

	return &proto.NetworkInfo{Peers: int32(len(s.host.GetHost().Network().Peers())), ID: s.host.GetHost().ID().String()}, nil
}

func (s *networkServer) GetPeersInfo(ctx context.Context, _ *proto.Empty) (*proto.Peers, error) {
	defer ctx.Done()

	peersID := s.host.GetHost().Network().Peers()
	peersInfo := make([]*proto.Peer, len(peersID))
	for i, p := range peersID {
		addr := s.host.GetPeerDirection(p)
		peersInfo[i] = &proto.Peer{Id: p.Pretty(), Host: &proto.IP{Host: addr.String()}}
	}
	return &proto.Peers{Peers: peersInfo}, nil
}

func (s *networkServer) AddPeer(ctx context.Context, peerAddr *proto.IP) (*proto.Success, error) {
	maddr, err := multiaddr.NewMultiaddr(peerAddr.Host)
	if err != nil {
		return nil, err
	}
	pinfo, err := peer.AddrInfoFromP2pAddr(maddr)
	if err != nil {
		return nil, err
	}
	err = s.host.GetHost().Connect(ctx, *pinfo)
	if err != nil {
		return &proto.Success{Success: false, Error: err.Error()}, nil
	}
	return &proto.Success{Success: true}, nil
}

repository: aashutoshrathi/ogen

repo_name: aashutoshrathi/ogen


text:
DESCRIPTION = "This package contains the simple UDP serer program."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a194fc8d8fd1af2ed08cf252d9602023"

SECTION = "custome"

PR = "r1"

SRC_URI = "file://udp-server.c \
	   file://LICENSE \
	  "

S = "${WORKDIR}"

do_compile() {
  ${CC} ${CFLAGS} ${LDFLAGS} udp-server.c -o udp-server
}

do_install() {
  install -d ${D}${bindir}
  install -m 0755 udp-server ${D}${bindir}
}

repository: ondsaft/my-layer

repo_name: ondsaft/my-layer


text:
using FluentAssertions;
using JWTSimpleServer;
using Microsoft.AspNetCore.Http;
using Newtonsoft.Json;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using Xunit;

namespace FunctionalTests.JwtSimpleServer
{

    public class JwtSimpleServerMiddlewareTestShould
    {
        [Fact]
        public async Task reject_invalid_grant_type()
        {
            var server = new TestServerBuilder()
                     .WithSuccessAuthentication()
                     .Build();

            var response = await server.CreateClient().PostAsync("/token", GrantTypes.AnInvalidGrantType());
            var content = await response.Content.ReadAsStringAsync();

            content.Should().Be(ServerMessages.InvalidGrantType);
            response.StatusCode.Should().Be(StatusCodes.Status400BadRequest);
        }

        [Fact]
        public async Task return_a_valid_jwt_token_when_grant_type_password()
        {
            var server = new TestServerBuilder()
                   .WithSuccessAuthentication()
                   .Build();

            var response = await server.CreateClient().PostAsync("/token", GrantTypes.APasswordGrantType());
            response.EnsureSuccessStatusCode();
            var content = await response.Content.ReadAsStringAsync();
            var jwtTokenResponse = JsonConvert.DeserializeObject<JwtTokenResponse>(content);

            jwtTokenResponse.Should().NotBeNull();
            jwtTokenResponse.AccessToken.Should().NotBeNull();
            jwtTokenResponse.ExpiresIn.Should().BeGreaterThan(0);

        }

        [Fact]
        public async Task allow_invoking_authorized_controller_with_a_token()
        {
            var server = new TestServerBuilder()
                   .WithSuccessAuthentication()
                   .Build();

            var client = server.CreateClient();

            var response = await client.PostAsync("/token", GrantTypes.APasswordGrantType());
            response.EnsureSuccessStatusCode();
            var content = await response.Content.ReadAsStringAsync();
            var jwtTokenResponse = JsonConvert.DeserializeObject<JwtTokenResponse>(content);

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", jwtTokenResponse.AccessToken);
            response = await client.GetAsync("/api/test");

            response.EnsureSuccessStatusCode();
        }

        [Fact]
        public async Task allow_refresh_an_accessToken_from_refresh_token()
        {

            var server = new TestServerBuilder()
                   .WithSuccessAuthentication()
                   .WithInMemoryStore()
                   .Build();

            var client = server.CreateClient();

            var response = await client.PostAsync("/token", GrantTypes.APasswordGrantType());
            response.EnsureSuccessStatusCode();
            var tokenResponse = await ReadRequestResponseToJwtTokenResponse(response);
            response = await client.PostAsync("/token", GrantTypes.ARefreshTokenGranType(tokenResponse.RefreshToken));
            response.EnsureSuccessStatusCode();
            var refreshTokenResponse = await ReadRequestResponseToJwtTokenResponse(response);

            refreshTokenResponse.AccessToken.Should().NotBeEmpty();
            refreshTokenResponse.RefreshToken.Should().NotBeEmpty();

            refreshTokenResponse.AccessToken.Should().NotBe(tokenResponse.AccessToken);
            refreshTokenResponse.RefreshToken.Should().NotBe(tokenResponse.RefreshToken);
        }

        private async Task<JwtTokenResponse> ReadRequestResponseToJwtTokenResponse(HttpResponseMessage response)
        {
            var content = await response.Content.ReadAsStringAsync();
            return JsonConvert.DeserializeObject<JwtTokenResponse>(content);
        }

    }
}

repository: cdorde/JWTSimpleServer

repo_name: cdorde/JWTSimpleServer

extension: cs


text:
DESCRIPTION = "wifi runtime script"
SECTION = "wifi"
DEPENDS = "bash"
LICENSE = "CLOSED"

FILESEXTRAPATHS_prepend := "${THISDIR}/init.d:"

SRC_URI = "file://wifiapd"

S = "${WORKDIR}"

do_install(){
	install -d ${D}${sysconfdir}/init.d
	install -d ${D}${sysconfdir}/rc5.d
	install -d ${D}${sysconfdir}/rc6.d
	install ${WORKDIR}/wifiapd ${D}${sysconfdir}/init.d/
	ln -s -r ${D}${sysconfdir}/init.d/wifiapd ${D}${sysconfdir}/rc5.d/S17wifiapd
	ln -s -r ${D}${sysconfdir}/init.d/wifiapd ${D}${sysconfdir}/rc6.d/K20wifiapf
}

repository: JayaprakashPricol/meta-iris

repo_name: JayaprakashPricol/meta-iris


text:
DESCRIPTION = "UBL and second stage bootloader flasher for davinci"
HOMEPAGE = "http://www.hugovil.com/en/dvnixload/"
LICENSE = "GPLv2"
SRC_URI = "http://www.hugovil.com/repository/dvnixload-0.2.6.tar.gz"

inherit autotools

BBCLASSEXTEND="native"

SRC_URI[md5sum] = "33308f47405c0e96a8248c7b1229dee5"
SRC_URI[sha256sum] = "5b76e9cb0ee843208c17053315926e0e168db8a89fe960655a0d0f4871e2b9da"

repository: overo/overo-oe-natty

repo_name: overo/overo-oe-natty

branch_name: HEAD


text:
# Copyright (C) 2020 Maik Otto <m.otto@phytec.de>
# Released under the MIT license (see COPYING.MIT for the terms)

require phytec-dev-ca.inc

SRC_URI[tarball.md5sum] = "3adfb4409f9557239f635ed35344583f"
SRC_URI[tarball.sha256sum] = "c96bd98d9bc6a579ee8112d95a3390fd60070738e03bec1ff43bd728f2ec3d5b"


text:
// Code generated by go-swagger; DO NOT EDIT.

package assisted_service_iso

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"fmt"
	"io"

	"github.com/go-openapi/runtime"
	"github.com/go-openapi/strfmt"

	"github.com/openshift/assisted-service/models"
)

// CreateISOAndUploadToS3Reader is a Reader for the CreateISOAndUploadToS3 structure.
type CreateISOAndUploadToS3Reader struct {
	formats strfmt.Registry
}

// ReadResponse reads a server response into the received o.
func (o *CreateISOAndUploadToS3Reader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
	switch response.Code() {
	case 201:
		result := NewCreateISOAndUploadToS3Created()
		if err := result.readResponse(response, consumer, o.formats); err != nil {
			return nil, err
		}
		return result, nil
	case 400:
		result := NewCreateISOAndUploadToS3BadRequest()
		if err := result.readResponse(response, consumer, o.formats); err != nil {
			return nil, err
		}
		return nil, result
	case 401:
		result := NewCreateISOAndUploadToS3Unauthorized()
		if err := result.readResponse(response, consumer, o.formats); err != nil {
			return nil, err
		}
		return nil, result
	case 403:
		result := NewCreateISOAndUploadToS3Forbidden()
		if err := result.readResponse(response, consumer, o.formats); err != nil {
			return nil, err
		}
		return nil, result
	case 500:
		result := NewCreateISOAndUploadToS3InternalServerError()
		if err := result.readResponse(response, consumer, o.formats); err != nil {
			return nil, err
		}
		return nil, result

	default:
		return nil, runtime.NewAPIError("response status code does not match any response statuses defined for this endpoint in the swagger spec", response, response.Code())
	}
}

// NewCreateISOAndUploadToS3Created creates a CreateISOAndUploadToS3Created with default headers values
func NewCreateISOAndUploadToS3Created() *CreateISOAndUploadToS3Created {
	return &CreateISOAndUploadToS3Created{}
}

/*CreateISOAndUploadToS3Created handles this case with default header values.

Success.
*/
type CreateISOAndUploadToS3Created struct {
}

func (o *CreateISOAndUploadToS3Created) Error() string {
	return fmt.Sprintf("[POST /v1/assisted-service-iso][%d] createISOAndUploadToS3Created ", 201)
}

func (o *CreateISOAndUploadToS3Created) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {

	return nil
}

// NewCreateISOAndUploadToS3BadRequest creates a CreateISOAndUploadToS3BadRequest with default headers values
func NewCreateISOAndUploadToS3BadRequest() *CreateISOAndUploadToS3BadRequest {
	return &CreateISOAndUploadToS3BadRequest{}
}

/*CreateISOAndUploadToS3BadRequest handles this case with default header values.

Error.
*/
type CreateISOAndUploadToS3BadRequest struct {
	Payload *models.Error
}

func (o *CreateISOAndUploadToS3BadRequest) Error() string {
	return fmt.Sprintf("[POST /v1/assisted-service-iso][%d] createISOAndUploadToS3BadRequest  %+v", 400, o.Payload)
}

func (o *CreateISOAndUploadToS3BadRequest) GetPayload() *models.Error {
	return o.Payload
}

func (o *CreateISOAndUploadToS3BadRequest) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {

	o.Payload = new(models.Error)

	// response payload
	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
		return err
	}

	return nil
}

// NewCreateISOAndUploadToS3Unauthorized creates a CreateISOAndUploadToS3Unauthorized with default headers values
func NewCreateISOAndUploadToS3Unauthorized() *CreateISOAndUploadToS3Unauthorized {
	return &CreateISOAndUploadToS3Unauthorized{}
}

/*CreateISOAndUploadToS3Unauthorized handles this case with default header values.

Unauthorized.
*/
type CreateISOAndUploadToS3Unauthorized struct {
	Payload *models.InfraError
}

func (o *CreateISOAndUploadToS3Unauthorized) Error() string {
	return fmt.Sprintf("[POST /v1/assisted-service-iso][%d] createISOAndUploadToS3Unauthorized  %+v", 401, o.Payload)
}

func (o *CreateISOAndUploadToS3Unauthorized) GetPayload() *models.InfraError {
	return o.Payload
}

func (o *CreateISOAndUploadToS3Unauthorized) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {

	o.Payload = new(models.InfraError)

	// response payload
	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
		return err
	}

	return nil
}

// NewCreateISOAndUploadToS3Forbidden creates a CreateISOAndUploadToS3Forbidden with default headers values
func NewCreateISOAndUploadToS3Forbidden() *CreateISOAndUploadToS3Forbidden {
	return &CreateISOAndUploadToS3Forbidden{}
}

/*CreateISOAndUploadToS3Forbidden handles this case with default header values.

Forbidden.
*/
type CreateISOAndUploadToS3Forbidden struct {
	Payload *models.InfraError
}

func (o *CreateISOAndUploadToS3Forbidden) Error() string {
	return fmt.Sprintf("[POST /v1/assisted-service-iso][%d] createISOAndUploadToS3Forbidden  %+v", 403, o.Payload)
}

func (o *CreateISOAndUploadToS3Forbidden) GetPayload() *models.InfraError {
	return o.Payload
}

func (o *CreateISOAndUploadToS3Forbidden) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {

	o.Payload = new(models.InfraError)

	// response payload
	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
		return err
	}

	return nil
}

// NewCreateISOAndUploadToS3InternalServerError creates a CreateISOAndUploadToS3InternalServerError with default headers values
func NewCreateISOAndUploadToS3InternalServerError() *CreateISOAndUploadToS3InternalServerError {
	return &CreateISOAndUploadToS3InternalServerError{}
}

/*CreateISOAndUploadToS3InternalServerError handles this case with default header values.

Error.
*/
type CreateISOAndUploadToS3InternalServerError struct {
	Payload *models.Error
}

func (o *CreateISOAndUploadToS3InternalServerError) Error() string {
	return fmt.Sprintf("[POST /v1/assisted-service-iso][%d] createISOAndUploadToS3InternalServerError  %+v", 500, o.Payload)
}

func (o *CreateISOAndUploadToS3InternalServerError) GetPayload() *models.Error {
	return o.Payload
}

func (o *CreateISOAndUploadToS3InternalServerError) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {

	o.Payload = new(models.Error)

	// response payload
	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
		return err
	}

	return nil
}


text:
@phdthesis{PromotionDataReuse_mante_2022,
 abstract = {Synthetic biology is a movement to standardize genetic engineering and make it more reproducible and accessible by using functional descriptions of desired circuits. Such descriptions can then be converted to genetic designs via genetic design automation tools. Subsequently, the genetic designs can be used to generate models for in silico experimentation using automatic model generators. Both of these technologies rely on access to libraries of genetic part information encoded in standard, machine-readable ways. The Synthetic Biology Open Language (SBOL) can be used together with SynBioHub (a genetic part repository) to encode and store the information. However, the use of SynBioHub for the storage and reuse of parts is still very limited. This is due to insufficient metadata (making it difficult to find parts or judge their usefulness) and the effort required to submit parts to the repository. This dissertation aims to decrease the barriers to part reuse and thus enable a more automated synthetic biology workflow. Hence, an integrated curation workflow is proposed based on the contributions of the dissertation. The contributions are: a proposed SBOL Data Content Standard, tools for working with genetic parts in spreadsheets, a framework to modularly extend the SynBioHub part repository, and the lessons learned from the analysis and curation of data from existing genetic data repositories.},
 address = {United States -- Colorado},
 author = {Mante, J. V. and link will open in a new window Link to external site, this},
 copyright = {Database copyright ProQuest LLC; ProQuest does not claim copyright in the individual underlying works.},
 isbn = {9798438787976},
 journal = {ProQuest Dissertations and Theses},
 keywords = {Curation,Data cleaning,Genetic parts,Metadata,Spreadsheets,Synthetic biology},
 langid = {english},
 school = {University of Colorado at Boulder},
 title = {Promotion of Data Reuse in Synthetic Biology},
 year = {2022}
}