risc-III/ternary.circ
2023-07-03 02:51:29 +02:00

1262 lines
52 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project source="3.8.0" version="1.0">
This file is intended to be loaded by Logisim-evolution v3.8.0(https://github.com/logisim-evolution/).
<lib desc="#Wiring" name="0">
<tool name="Pin">
<a name="appearance" val="classic"/>
</tool>
</lib>
<lib desc="#Gates" name="1"/>
<lib desc="#Plexers" name="2"/>
<lib desc="#Arithmetic" name="3"/>
<lib desc="#Memory" name="4"/>
<lib desc="#I/O" name="5"/>
<lib desc="#TTL" name="6"/>
<lib desc="#TCL" name="7"/>
<lib desc="#Base" name="8"/>
<lib desc="#BFH-Praktika" name="9"/>
<lib desc="#Input/Output-Extra" name="10"/>
<lib desc="#Soc" name="11"/>
<main name="main"/>
<options>
<a name="gateUndefined" val="ignore"/>
<a name="simlimit" val="500"/>
<a name="simrand" val="0"/>
</options>
<mappings>
<tool lib="8" map="Button2" name="Poke Tool"/>
<tool lib="8" map="Button3" name="Menu Tool"/>
<tool lib="8" map="Ctrl Button1" name="Menu Tool"/>
</mappings>
<toolbar>
<tool lib="8" name="Poke Tool"/>
<tool lib="8" name="Edit Tool"/>
<tool lib="8" name="Wiring Tool"/>
<tool lib="8" name="Text Tool"/>
<sep/>
<tool lib="0" name="Pin"/>
<tool lib="0" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
</tool>
<sep/>
<tool name="not3"/>
<tool name="min"/>
<tool name="max"/>
<tool name="xor3"/>
<tool name="amin"/>
<tool name="amax"/>
<sep/>
<tool lib="4" name="D Flip-Flop"/>
<tool lib="4" name="Register"/>
</toolbar>
<circuit name="main">
<a name="appearance" val="logisim_evolution"/>
<a name="circuit" val="main"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<comp lib="0" loc="(200,150)" name="Splitter">
<a name="bit0" val="1"/>
<a name="bit1" val="0"/>
<a name="facing" val="south"/>
</comp>
<comp lib="0" loc="(230,320)" name="Splitter">
<a name="bit0" val="1"/>
<a name="bit1" val="0"/>
<a name="facing" val="north"/>
</comp>
<comp lib="0" loc="(290,80)" name="Splitter"/>
<comp lib="0" loc="(350,100)" name="Splitter"/>
<comp lib="0" loc="(350,150)" name="Splitter"/>
<comp lib="0" loc="(350,200)" name="Splitter"/>
<comp lib="0" loc="(350,250)" name="Splitter"/>
<comp lib="0" loc="(350,300)" name="Splitter"/>
<comp lib="0" loc="(350,350)" name="Splitter"/>
<comp lib="0" loc="(350,400)" name="Splitter"/>
<comp lib="0" loc="(350,450)" name="Splitter"/>
<comp lib="0" loc="(350,500)" name="Splitter"/>
<comp lib="0" loc="(350,550)" name="Splitter"/>
<comp lib="0" loc="(350,600)" name="Splitter"/>
<comp lib="0" loc="(350,650)" name="Splitter"/>
<comp lib="0" loc="(350,700)" name="Splitter"/>
<comp lib="0" loc="(350,750)" name="Splitter"/>
<comp lib="0" loc="(90,200)" name="Splitter"/>
<comp lib="0" loc="(90,250)" name="Splitter"/>
<comp lib="0" loc="(90,300)" name="Splitter"/>
<comp lib="5" loc="(120,160)" name="RGBLED"/>
<comp lib="5" loc="(120,210)" name="RGBLED"/>
<comp lib="5" loc="(120,260)" name="RGBLED"/>
<comp lib="5" loc="(200,170)" name="DipSwitch">
<a name="number" val="2"/>
</comp>
<comp lib="5" loc="(230,300)" name="DipSwitch">
<a name="facing" val="south"/>
<a name="number" val="2"/>
</comp>
<comp lib="5" loc="(320,40)" name="RGBLED"/>
<comp lib="5" loc="(380,110)" name="RGBLED"/>
<comp lib="5" loc="(380,160)" name="RGBLED"/>
<comp lib="5" loc="(380,210)" name="RGBLED"/>
<comp lib="5" loc="(380,260)" name="RGBLED"/>
<comp lib="5" loc="(380,310)" name="RGBLED"/>
<comp lib="5" loc="(380,360)" name="RGBLED"/>
<comp lib="5" loc="(380,410)" name="RGBLED"/>
<comp lib="5" loc="(380,460)" name="RGBLED"/>
<comp lib="5" loc="(380,510)" name="RGBLED"/>
<comp lib="5" loc="(380,560)" name="RGBLED"/>
<comp lib="5" loc="(380,60)" name="RGBLED"/>
<comp lib="5" loc="(380,610)" name="RGBLED"/>
<comp lib="5" loc="(380,660)" name="RGBLED"/>
<comp lib="5" loc="(380,710)" name="RGBLED"/>
<comp loc="(290,80)" name="not3">
<a name="facing" val="north"/>
</comp>
<comp loc="(340,100)" name="eq0"/>
<comp loc="(340,150)" name="eqP"/>
<comp loc="(340,200)" name="eqN"/>
<comp loc="(340,250)" name="inc"/>
<comp loc="(340,300)" name="dec"/>
<comp loc="(340,350)" name="min"/>
<comp loc="(340,400)" name="max"/>
<comp loc="(340,550)" name="xor3"/>
<comp loc="(340,600)" name="sum"/>
<comp loc="(340,650)" name="consensus"/>
<comp loc="(340,700)" name="any"/>
<comp loc="(340,750)" name="eq"/>
<comp loc="(350,450)" name="amax"/>
<comp loc="(350,500)" name="amin"/>
<comp loc="(90,200)" name="const0"/>
<comp loc="(90,250)" name="constP"/>
<comp loc="(90,300)" name="constN"/>
<wire from="(110,160)" to="(110,180)"/>
<wire from="(110,160)" to="(120,160)"/>
<wire from="(110,190)" to="(130,190)"/>
<wire from="(110,210)" to="(110,230)"/>
<wire from="(110,210)" to="(120,210)"/>
<wire from="(110,240)" to="(130,240)"/>
<wire from="(110,260)" to="(110,280)"/>
<wire from="(110,260)" to="(120,260)"/>
<wire from="(110,290)" to="(130,290)"/>
<wire from="(130,170)" to="(130,190)"/>
<wire from="(130,220)" to="(130,240)"/>
<wire from="(130,270)" to="(130,290)"/>
<wire from="(200,100)" to="(200,150)"/>
<wire from="(200,100)" to="(290,100)"/>
<wire from="(210,290)" to="(210,300)"/>
<wire from="(220,290)" to="(220,300)"/>
<wire from="(230,320)" to="(280,320)"/>
<wire from="(280,320)" to="(280,360)"/>
<wire from="(280,360)" to="(280,410)"/>
<wire from="(280,360)" to="(320,360)"/>
<wire from="(280,410)" to="(280,460)"/>
<wire from="(280,410)" to="(320,410)"/>
<wire from="(280,460)" to="(280,510)"/>
<wire from="(280,460)" to="(320,460)"/>
<wire from="(280,510)" to="(280,560)"/>
<wire from="(280,510)" to="(320,510)"/>
<wire from="(280,560)" to="(280,610)"/>
<wire from="(280,560)" to="(320,560)"/>
<wire from="(280,610)" to="(280,660)"/>
<wire from="(280,610)" to="(320,610)"/>
<wire from="(280,660)" to="(280,710)"/>
<wire from="(280,660)" to="(320,660)"/>
<wire from="(280,710)" to="(280,760)"/>
<wire from="(280,710)" to="(320,710)"/>
<wire from="(280,760)" to="(320,760)"/>
<wire from="(290,100)" to="(290,150)"/>
<wire from="(290,100)" to="(320,100)"/>
<wire from="(290,150)" to="(290,200)"/>
<wire from="(290,150)" to="(320,150)"/>
<wire from="(290,200)" to="(290,250)"/>
<wire from="(290,200)" to="(320,200)"/>
<wire from="(290,250)" to="(290,300)"/>
<wire from="(290,250)" to="(320,250)"/>
<wire from="(290,300)" to="(290,340)"/>
<wire from="(290,300)" to="(320,300)"/>
<wire from="(290,340)" to="(290,390)"/>
<wire from="(290,340)" to="(320,340)"/>
<wire from="(290,390)" to="(290,440)"/>
<wire from="(290,390)" to="(320,390)"/>
<wire from="(290,440)" to="(290,490)"/>
<wire from="(290,440)" to="(320,440)"/>
<wire from="(290,490)" to="(290,540)"/>
<wire from="(290,490)" to="(320,490)"/>
<wire from="(290,540)" to="(290,590)"/>
<wire from="(290,540)" to="(320,540)"/>
<wire from="(290,590)" to="(290,640)"/>
<wire from="(290,590)" to="(320,590)"/>
<wire from="(290,640)" to="(290,690)"/>
<wire from="(290,640)" to="(320,640)"/>
<wire from="(290,690)" to="(290,740)"/>
<wire from="(290,690)" to="(320,690)"/>
<wire from="(290,740)" to="(320,740)"/>
<wire from="(310,40)" to="(310,60)"/>
<wire from="(310,40)" to="(320,40)"/>
<wire from="(310,70)" to="(330,70)"/>
<wire from="(330,50)" to="(330,70)"/>
<wire from="(340,100)" to="(350,100)"/>
<wire from="(340,150)" to="(350,150)"/>
<wire from="(340,200)" to="(350,200)"/>
<wire from="(340,250)" to="(350,250)"/>
<wire from="(340,300)" to="(350,300)"/>
<wire from="(340,350)" to="(350,350)"/>
<wire from="(340,400)" to="(350,400)"/>
<wire from="(340,550)" to="(350,550)"/>
<wire from="(340,600)" to="(350,600)"/>
<wire from="(340,650)" to="(350,650)"/>
<wire from="(340,700)" to="(350,700)"/>
<wire from="(340,750)" to="(350,750)"/>
<wire from="(370,110)" to="(370,130)"/>
<wire from="(370,110)" to="(380,110)"/>
<wire from="(370,140)" to="(390,140)"/>
<wire from="(370,160)" to="(370,180)"/>
<wire from="(370,160)" to="(380,160)"/>
<wire from="(370,190)" to="(390,190)"/>
<wire from="(370,210)" to="(370,230)"/>
<wire from="(370,210)" to="(380,210)"/>
<wire from="(370,240)" to="(390,240)"/>
<wire from="(370,260)" to="(370,280)"/>
<wire from="(370,260)" to="(380,260)"/>
<wire from="(370,290)" to="(390,290)"/>
<wire from="(370,310)" to="(370,330)"/>
<wire from="(370,310)" to="(380,310)"/>
<wire from="(370,340)" to="(390,340)"/>
<wire from="(370,360)" to="(370,380)"/>
<wire from="(370,360)" to="(380,360)"/>
<wire from="(370,390)" to="(390,390)"/>
<wire from="(370,410)" to="(370,430)"/>
<wire from="(370,410)" to="(380,410)"/>
<wire from="(370,440)" to="(390,440)"/>
<wire from="(370,460)" to="(370,480)"/>
<wire from="(370,460)" to="(380,460)"/>
<wire from="(370,490)" to="(390,490)"/>
<wire from="(370,510)" to="(370,530)"/>
<wire from="(370,510)" to="(380,510)"/>
<wire from="(370,540)" to="(390,540)"/>
<wire from="(370,560)" to="(370,580)"/>
<wire from="(370,560)" to="(380,560)"/>
<wire from="(370,590)" to="(390,590)"/>
<wire from="(370,60)" to="(370,80)"/>
<wire from="(370,60)" to="(380,60)"/>
<wire from="(370,610)" to="(370,630)"/>
<wire from="(370,610)" to="(380,610)"/>
<wire from="(370,640)" to="(390,640)"/>
<wire from="(370,660)" to="(370,680)"/>
<wire from="(370,660)" to="(380,660)"/>
<wire from="(370,690)" to="(390,690)"/>
<wire from="(370,710)" to="(370,730)"/>
<wire from="(370,710)" to="(380,710)"/>
<wire from="(370,740)" to="(390,740)"/>
<wire from="(370,90)" to="(390,90)"/>
<wire from="(390,120)" to="(390,140)"/>
<wire from="(390,170)" to="(390,190)"/>
<wire from="(390,220)" to="(390,240)"/>
<wire from="(390,270)" to="(390,290)"/>
<wire from="(390,320)" to="(390,340)"/>
<wire from="(390,370)" to="(390,390)"/>
<wire from="(390,420)" to="(390,440)"/>
<wire from="(390,470)" to="(390,490)"/>
<wire from="(390,520)" to="(390,540)"/>
<wire from="(390,570)" to="(390,590)"/>
<wire from="(390,620)" to="(390,640)"/>
<wire from="(390,670)" to="(390,690)"/>
<wire from="(390,70)" to="(390,90)"/>
<wire from="(390,720)" to="(390,740)"/>
</circuit>
<circuit name="buf3">
<a name="appearance" val="custom"/>
<a name="circuit" val="buf3"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<polygon fill="#ffffff" points="50,67 50,54 69,60" stroke="#000000"/>
<polygon fill="#ffffff" points="52,68 54,63 56,68" stroke="#000000"/>
<circ-anchor facing="east" x="70" y="60"/>
<circ-port dir="in" pin="670,300" x="50" y="60"/>
<circ-port dir="out" pin="810,300" x="70" y="60"/>
</appear>
<comp lib="0" loc="(670,300)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(670,300)" name="Splitter"/>
<comp lib="0" loc="(810,300)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(810,300)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="1" loc="(730,280)" name="Buffer"/>
<comp lib="1" loc="(730,300)" name="Buffer"/>
<wire from="(690,280)" to="(710,280)"/>
<wire from="(690,290)" to="(690,300)"/>
<wire from="(690,300)" to="(710,300)"/>
<wire from="(730,280)" to="(790,280)"/>
<wire from="(730,300)" to="(770,300)"/>
<wire from="(770,300)" to="(770,320)"/>
<wire from="(770,320)" to="(790,320)"/>
<wire from="(790,280)" to="(790,310)"/>
</circuit>
<circuit name="not3">
<a name="appearance" val="custom"/>
<a name="circuit" val="not3"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<polygon fill="#ffffff" points="100,67 100,54 113,60" stroke="#000000"/>
<polygon fill="#ffffff" points="102,67 104,62 106,67" stroke="#000000"/>
<ellipse cx="115" cy="60" fill="#ffffff" rx="3" ry="3" stroke="#000000"/>
<circ-anchor facing="east" x="120" y="60"/>
<circ-port dir="in" pin="50,140" x="100" y="60"/>
<circ-port dir="out" pin="300,140" x="120" y="60"/>
</appear>
<comp lib="0" loc="(270,130)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(300,140)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(50,140)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(80,140)" name="Splitter"/>
<comp lib="1" loc="(110,80)" name="NOT Gate">
<a name="facing" val="north"/>
</comp>
<comp lib="1" loc="(120,180)" name="NOT Gate">
<a name="facing" val="south"/>
</comp>
<comp lib="1" loc="(170,210)" name="AND Gate"/>
<comp lib="1" loc="(170,60)" name="AND Gate"/>
<wire from="(100,120)" to="(120,120)"/>
<wire from="(100,130)" to="(100,230)"/>
<wire from="(100,130)" to="(110,130)"/>
<wire from="(100,230)" to="(120,230)"/>
<wire from="(100,40)" to="(100,120)"/>
<wire from="(100,40)" to="(120,40)"/>
<wire from="(110,110)" to="(110,130)"/>
<wire from="(110,80)" to="(120,80)"/>
<wire from="(120,120)" to="(120,150)"/>
<wire from="(120,180)" to="(120,190)"/>
<wire from="(170,210)" to="(230,210)"/>
<wire from="(170,60)" to="(240,60)"/>
<wire from="(230,140)" to="(230,210)"/>
<wire from="(230,140)" to="(250,140)"/>
<wire from="(240,150)" to="(250,150)"/>
<wire from="(240,60)" to="(240,150)"/>
<wire from="(270,130)" to="(270,140)"/>
<wire from="(270,140)" to="(300,140)"/>
<wire from="(50,140)" to="(80,140)"/>
</circuit>
<circuit name="inc">
<a name="appearance" val="custom"/>
<a name="circuit" val="inc"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="16" x="64" y="50"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="72" y="60">+1</text>
<path d="M60,50 Q64,60 60,70" fill="none" stroke="#000000"/>
<polygon fill="#ffffff" points="67,72 69,67 71,72" stroke="#000000"/>
<circ-anchor facing="east" x="80" y="60"/>
<circ-port dir="in" pin="50,130" x="60" y="60"/>
<circ-port dir="out" pin="330,130" x="80" y="60"/>
</appear>
<comp lib="0" loc="(320,130)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(330,130)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(50,130)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(60,130)" name="Splitter"/>
<comp lib="1" loc="(210,130)" name="AND Gate">
<a name="negate0" val="true"/>
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(210,70)" name="AND Gate">
<a name="negate1" val="true"/>
</comp>
<wire from="(100,120)" to="(100,150)"/>
<wire from="(100,150)" to="(150,150)"/>
<wire from="(100,90)" to="(100,120)"/>
<wire from="(100,90)" to="(150,90)"/>
<wire from="(110,110)" to="(150,110)"/>
<wire from="(110,50)" to="(110,110)"/>
<wire from="(110,50)" to="(160,50)"/>
<wire from="(210,130)" to="(300,130)"/>
<wire from="(210,70)" to="(270,70)"/>
<wire from="(270,150)" to="(300,150)"/>
<wire from="(270,70)" to="(270,150)"/>
<wire from="(300,130)" to="(300,140)"/>
<wire from="(320,130)" to="(330,130)"/>
<wire from="(50,130)" to="(60,130)"/>
<wire from="(80,110)" to="(110,110)"/>
<wire from="(80,120)" to="(100,120)"/>
</circuit>
<circuit name="dec">
<a name="appearance" val="custom"/>
<a name="circuit" val="dec"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="16" x="64" y="50"/>
<path d="M60,50 Q64,60 60,70" fill="none" stroke="#000000"/>
<polygon fill="#ffffff" points="67,72 69,67 71,72" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="73" y="60">-1</text>
<circ-anchor facing="east" x="80" y="60"/>
<circ-port dir="in" pin="50,130" x="60" y="60"/>
<circ-port dir="out" pin="330,130" x="80" y="60"/>
</appear>
<comp lib="0" loc="(320,130)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(330,130)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(50,130)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(60,130)" name="Splitter"/>
<comp lib="1" loc="(210,130)" name="AND Gate">
<a name="negate0" val="true"/>
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(210,70)" name="AND Gate">
<a name="negate0" val="true"/>
</comp>
<wire from="(100,120)" to="(100,150)"/>
<wire from="(100,150)" to="(150,150)"/>
<wire from="(100,90)" to="(100,120)"/>
<wire from="(100,90)" to="(160,90)"/>
<wire from="(110,110)" to="(150,110)"/>
<wire from="(110,50)" to="(110,110)"/>
<wire from="(110,50)" to="(150,50)"/>
<wire from="(210,130)" to="(260,130)"/>
<wire from="(210,70)" to="(270,70)"/>
<wire from="(260,130)" to="(260,150)"/>
<wire from="(260,150)" to="(300,150)"/>
<wire from="(270,140)" to="(300,140)"/>
<wire from="(270,70)" to="(270,140)"/>
<wire from="(320,130)" to="(330,130)"/>
<wire from="(50,130)" to="(60,130)"/>
<wire from="(80,110)" to="(110,110)"/>
<wire from="(80,120)" to="(100,120)"/>
</circuit>
<circuit name="eq">
<a name="appearance" val="custom"/>
<a name="circuit" val="eq"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="20" x="50" y="50"/>
<polygon fill="#ffffff" points="55,72 57,67 59,72" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="59" y="60">=</text>
<circ-anchor facing="east" x="70" y="60"/>
<circ-port dir="in" pin="60,130" x="50" y="70"/>
<circ-port dir="in" pin="60,70" x="50" y="50"/>
<circ-port dir="out" pin="410,110" x="70" y="60"/>
</appear>
<comp lib="0" loc="(280,110)" name="Ground">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(310,90)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(410,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(60,130)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(60,70)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(70,130)" name="Splitter">
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(70,70)" name="Splitter"/>
<comp lib="1" loc="(200,150)" name="AND Gate"/>
<comp lib="1" loc="(200,70)" name="AND Gate"/>
<comp lib="1" loc="(260,100)" name="OR Gate"/>
<comp loc="(120,220)" name="eq0"/>
<comp loc="(120,240)" name="eq0"/>
<comp loc="(170,230)" name="min"/>
<comp loc="(340,100)" name="max"/>
<comp loc="(350,140)" name="const0"/>
<comp loc="(370,110)" name="max"/>
<comp loc="(400,110)" name="eqP"/>
<wire from="(100,110)" to="(100,220)"/>
<wire from="(110,130)" to="(150,130)"/>
<wire from="(110,60)" to="(110,130)"/>
<wire from="(120,150)" to="(120,170)"/>
<wire from="(120,170)" to="(150,170)"/>
<wire from="(120,220)" to="(150,220)"/>
<wire from="(120,240)" to="(150,240)"/>
<wire from="(120,90)" to="(120,140)"/>
<wire from="(120,90)" to="(150,90)"/>
<wire from="(170,230)" to="(320,230)"/>
<wire from="(200,120)" to="(200,150)"/>
<wire from="(200,120)" to="(210,120)"/>
<wire from="(200,70)" to="(200,80)"/>
<wire from="(200,80)" to="(210,80)"/>
<wire from="(260,100)" to="(290,100)"/>
<wire from="(280,110)" to="(290,110)"/>
<wire from="(310,90)" to="(320,90)"/>
<wire from="(320,110)" to="(320,230)"/>
<wire from="(340,100)" to="(350,100)"/>
<wire from="(350,120)" to="(350,140)"/>
<wire from="(370,110)" to="(380,110)"/>
<wire from="(400,110)" to="(410,110)"/>
<wire from="(60,110)" to="(100,110)"/>
<wire from="(60,130)" to="(70,130)"/>
<wire from="(60,70)" to="(60,110)"/>
<wire from="(60,70)" to="(70,70)"/>
<wire from="(70,130)" to="(70,240)"/>
<wire from="(70,240)" to="(100,240)"/>
<wire from="(90,140)" to="(120,140)"/>
<wire from="(90,150)" to="(120,150)"/>
<wire from="(90,50)" to="(150,50)"/>
<wire from="(90,60)" to="(110,60)"/>
</circuit>
<circuit name="eq0">
<a name="appearance" val="custom"/>
<a name="circuit" val="eq0"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="20" x="30" y="50"/>
<polygon fill="#ffffff" points="33,72 35,67 37,72" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="34" y="60"> =0</text>
<circ-anchor facing="east" x="50" y="60"/>
<circ-port dir="in" pin="190,110" x="30" y="60"/>
<circ-port dir="out" pin="430,100" x="50" y="60"/>
</appear>
<comp lib="0" loc="(190,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(200,110)" name="Splitter"/>
<comp lib="0" loc="(280,140)" name="Power">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(420,100)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(430,100)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="1" loc="(310,100)" name="AND Gate">
<a name="negate0" val="true"/>
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(380,120)" name="AND Gate">
<a name="negate0" val="true"/>
</comp>
<wire from="(190,110)" to="(200,110)"/>
<wire from="(220,100)" to="(220,120)"/>
<wire from="(220,120)" to="(250,120)"/>
<wire from="(220,80)" to="(220,90)"/>
<wire from="(220,80)" to="(250,80)"/>
<wire from="(280,140)" to="(330,140)"/>
<wire from="(310,100)" to="(320,100)"/>
<wire from="(320,90)" to="(320,100)"/>
<wire from="(320,90)" to="(400,90)"/>
<wire from="(380,120)" to="(400,120)"/>
<wire from="(400,90)" to="(400,110)"/>
<wire from="(420,100)" to="(430,100)"/>
</circuit>
<circuit name="eqP">
<a name="appearance" val="custom"/>
<a name="circuit" val="eqP"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="20" x="30" y="50"/>
<polygon fill="#ffffff" points="33,72 35,67 37,72" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="34" y="60"> =+</text>
<circ-anchor facing="east" x="50" y="60"/>
<circ-port dir="in" pin="190,110" x="30" y="60"/>
<circ-port dir="out" pin="430,100" x="50" y="60"/>
</appear>
<comp lib="0" loc="(190,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(200,110)" name="Splitter"/>
<comp lib="0" loc="(280,140)" name="Power">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(420,100)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(430,100)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="1" loc="(310,100)" name="AND Gate">
<a name="negate1" val="true"/>
</comp>
<comp lib="1" loc="(380,120)" name="AND Gate">
<a name="negate0" val="true"/>
</comp>
<wire from="(190,110)" to="(200,110)"/>
<wire from="(220,100)" to="(220,120)"/>
<wire from="(220,120)" to="(250,120)"/>
<wire from="(220,80)" to="(220,90)"/>
<wire from="(220,80)" to="(260,80)"/>
<wire from="(280,140)" to="(330,140)"/>
<wire from="(310,100)" to="(320,100)"/>
<wire from="(320,90)" to="(320,100)"/>
<wire from="(320,90)" to="(400,90)"/>
<wire from="(380,120)" to="(400,120)"/>
<wire from="(400,90)" to="(400,110)"/>
<wire from="(420,100)" to="(430,100)"/>
</circuit>
<circuit name="eqN">
<a name="appearance" val="custom"/>
<a name="circuit" val="eqN"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="20" x="30" y="50"/>
<polygon fill="#ffffff" points="33,72 35,67 37,72" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="34" y="60"> =-</text>
<circ-anchor facing="east" x="50" y="60"/>
<circ-port dir="in" pin="190,110" x="30" y="60"/>
<circ-port dir="out" pin="430,100" x="50" y="60"/>
</appear>
<comp lib="0" loc="(190,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(200,110)" name="Splitter"/>
<comp lib="0" loc="(280,140)" name="Power">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(420,100)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(430,100)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="1" loc="(310,100)" name="AND Gate">
<a name="negate0" val="true"/>
</comp>
<comp lib="1" loc="(380,120)" name="AND Gate">
<a name="negate0" val="true"/>
</comp>
<wire from="(190,110)" to="(200,110)"/>
<wire from="(220,100)" to="(220,120)"/>
<wire from="(220,120)" to="(260,120)"/>
<wire from="(220,80)" to="(220,90)"/>
<wire from="(220,80)" to="(250,80)"/>
<wire from="(280,140)" to="(330,140)"/>
<wire from="(310,100)" to="(320,100)"/>
<wire from="(320,90)" to="(320,100)"/>
<wire from="(320,90)" to="(400,90)"/>
<wire from="(380,120)" to="(400,120)"/>
<wire from="(400,90)" to="(400,110)"/>
<wire from="(420,100)" to="(430,100)"/>
</circuit>
<circuit name="min">
<a name="appearance" val="custom"/>
<a name="circuit" val="min"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="9" x="47" y="50"/>
<rect fill="#ffffff" height="20" rx="10" ry="10" stroke="#000000" width="24" x="47" y="50"/>
<rect fill="#ffffff" height="18" stroke="#ffffff" width="11" x="48" y="51"/>
<polygon fill="#ffffff" points="51,71 53,66 55,71" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="59" y="60">min</text>
<circ-anchor facing="east" x="70" y="60"/>
<circ-port dir="in" pin="160,110" x="50" y="70"/>
<circ-port dir="in" pin="160,60" x="50" y="50"/>
<circ-port dir="out" pin="430,70" x="70" y="60"/>
</appear>
<comp lib="0" loc="(160,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(160,60)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(170,110)" name="Splitter">
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(170,60)" name="Splitter">
<a name="appear" val="center"/>
</comp>
<comp lib="0" loc="(430,70)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(430,70)" name="Splitter">
<a name="appear" val="center"/>
<a name="facing" val="west"/>
</comp>
<comp lib="1" loc="(360,140)" name="AND Gate"/>
<comp lib="1" loc="(360,70)" name="OR Gate"/>
<wire from="(160,110)" to="(170,110)"/>
<wire from="(160,60)" to="(170,60)"/>
<wire from="(190,120)" to="(240,120)"/>
<wire from="(190,130)" to="(300,130)"/>
<wire from="(190,50)" to="(250,50)"/>
<wire from="(190,60)" to="(300,60)"/>
<wire from="(240,120)" to="(240,160)"/>
<wire from="(240,160)" to="(310,160)"/>
<wire from="(250,120)" to="(310,120)"/>
<wire from="(250,50)" to="(250,120)"/>
<wire from="(300,50)" to="(300,60)"/>
<wire from="(300,50)" to="(310,50)"/>
<wire from="(300,90)" to="(300,130)"/>
<wire from="(300,90)" to="(310,90)"/>
<wire from="(360,140)" to="(400,140)"/>
<wire from="(360,70)" to="(410,70)"/>
<wire from="(400,60)" to="(400,140)"/>
<wire from="(400,60)" to="(410,60)"/>
</circuit>
<circuit name="max">
<a name="appearance" val="custom"/>
<a name="circuit" val="max"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" rx="10" ry="10" stroke="#000000" width="18" x="54" y="50"/>
<rect fill="#ffffff" height="20" stroke="none" width="12" x="52" y="50"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="62" y="59">max</text>
<path d="M50,49 Q53,60 50,71" fill="none" stroke="#000000"/>
<polyline fill="none" points="58,50 50,50" stroke="#000000"/>
<polyline fill="none" points="64,70 51,70" stroke="#000000"/>
<polygon fill="#ffffff" points="55,72 57,68 59,72" stroke="#000000"/>
<polyline fill="none" points="64,50 58,50" stroke="#000000"/>
<circ-anchor facing="east" x="70" y="60"/>
<circ-port dir="in" pin="160,110" x="50" y="70"/>
<circ-port dir="in" pin="160,60" x="50" y="50"/>
<circ-port dir="out" pin="430,70" x="70" y="60"/>
</appear>
<comp lib="0" loc="(160,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(160,60)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(170,110)" name="Splitter">
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(170,60)" name="Splitter">
<a name="appear" val="center"/>
</comp>
<comp lib="0" loc="(430,70)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(430,70)" name="Splitter">
<a name="appear" val="center"/>
<a name="facing" val="west"/>
</comp>
<comp lib="1" loc="(360,140)" name="OR Gate"/>
<comp lib="1" loc="(360,80)" name="AND Gate"/>
<wire from="(160,110)" to="(170,110)"/>
<wire from="(160,60)" to="(170,60)"/>
<wire from="(190,120)" to="(240,120)"/>
<wire from="(190,130)" to="(300,130)"/>
<wire from="(190,50)" to="(250,50)"/>
<wire from="(190,60)" to="(310,60)"/>
<wire from="(240,120)" to="(240,160)"/>
<wire from="(240,160)" to="(310,160)"/>
<wire from="(250,120)" to="(310,120)"/>
<wire from="(250,50)" to="(250,120)"/>
<wire from="(300,100)" to="(300,130)"/>
<wire from="(300,100)" to="(310,100)"/>
<wire from="(360,140)" to="(400,140)"/>
<wire from="(360,80)" to="(370,80)"/>
<wire from="(370,70)" to="(370,80)"/>
<wire from="(370,70)" to="(410,70)"/>
<wire from="(400,60)" to="(400,140)"/>
<wire from="(400,60)" to="(410,60)"/>
</circuit>
<circuit name="amin">
<a name="appearance" val="custom"/>
<a name="circuit" val="amin"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="9" x="49" y="50"/>
<rect fill="#ffffff" height="20" rx="10" ry="10" stroke="#000000" width="21" x="50" y="50"/>
<rect fill="#ffffff" height="18" stroke="#ffffff" width="8" x="50" y="51"/>
<polygon fill="#ffffff" points="51,71 53,66 55,71" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="61" y="60">amin</text>
<ellipse cx="74" cy="60" fill="#ffffff" rx="3" ry="3" stroke="#000000"/>
<polyline fill="none" points="61,50 56,50" stroke="#000000"/>
<polyline fill="none" points="61,70 57,70" stroke="#000000"/>
<circ-anchor facing="east" x="80" y="60"/>
<circ-port dir="in" pin="160,110" x="50" y="70"/>
<circ-port dir="in" pin="160,60" x="50" y="50"/>
<circ-port dir="out" pin="280,80" x="80" y="60"/>
</appear>
<comp lib="0" loc="(160,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(160,60)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(280,80)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp loc="(220,80)" name="min"/>
<comp loc="(260,80)" name="not3"/>
<wire from="(160,110)" to="(200,110)"/>
<wire from="(160,60)" to="(200,60)"/>
<wire from="(200,60)" to="(200,70)"/>
<wire from="(200,90)" to="(200,110)"/>
<wire from="(220,80)" to="(240,80)"/>
<wire from="(260,80)" to="(280,80)"/>
</circuit>
<circuit name="amax">
<a name="appearance" val="custom"/>
<a name="circuit" val="amax"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" rx="10" ry="10" stroke="#000000" width="20" x="51" y="50"/>
<rect fill="#ffffff" height="20" stroke="none" width="9" x="51" y="50"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="61" y="59">amax</text>
<ellipse cx="74" cy="60" fill="#ffffff" rx="3" ry="3" stroke="#000000"/>
<path d="M50,50 Q52,60 50,70" fill="none" stroke="#000000"/>
<polyline fill="none" points="50,50 60,50" stroke="#000000"/>
<polyline fill="none" points="61,70 50,70" stroke="#000000"/>
<polygon fill="#ffffff" points="53,72 55,67 57,72" stroke="#000000"/>
<circ-anchor facing="east" x="80" y="60"/>
<circ-port dir="in" pin="160,110" x="50" y="70"/>
<circ-port dir="in" pin="160,60" x="50" y="50"/>
<circ-port dir="out" pin="280,80" x="80" y="60"/>
</appear>
<comp lib="0" loc="(160,110)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(160,60)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(280,80)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp loc="(220,80)" name="max"/>
<comp loc="(260,80)" name="not3"/>
<wire from="(160,110)" to="(200,110)"/>
<wire from="(160,60)" to="(200,60)"/>
<wire from="(200,60)" to="(200,70)"/>
<wire from="(200,90)" to="(200,110)"/>
<wire from="(220,80)" to="(240,80)"/>
<wire from="(260,80)" to="(280,80)"/>
</circuit>
<circuit name="xor3">
<a name="appearance" val="custom"/>
<a name="circuit" val="xor3"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<ellipse cx="62" cy="60" fill="#ffffff" rx="7" ry="10" stroke="#000000"/>
<path d="M50,50 Q53,60 50,71" fill="none" stroke="#000000"/>
<polyline fill="none" points="61,70 53,70" stroke="#000000"/>
<polyline fill="none" points="61,50 54,50" stroke="#000000"/>
<polygon fill="#ffffff" points="51,71 53,66 55,71" stroke="#000000"/>
<polyline fill="#ffffff" points="54,51 62,51 56,63" stroke="#ffffff"/>
<polyline fill="#ffffff" points="55,60 55,69 61,69" stroke="#ffffff"/>
<path d="M54,51 Q56,61 54,70" fill="none" stroke="#000000"/>
<circ-anchor facing="east" x="70" y="60"/>
<circ-port dir="in" pin="150,180" x="50" y="50"/>
<circ-port dir="in" pin="150,240" x="50" y="70"/>
<circ-port dir="out" pin="510,240" x="70" y="60"/>
</appear>
<comp lib="0" loc="(150,180)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(150,240)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(510,240)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp loc="(280,180)" name="not3"/>
<comp loc="(280,260)" name="not3"/>
<comp loc="(330,190)" name="min"/>
<comp loc="(330,250)" name="min"/>
<comp loc="(380,220)" name="max"/>
<wire from="(150,180)" to="(250,180)"/>
<wire from="(150,240)" to="(240,240)"/>
<wire from="(240,200)" to="(240,240)"/>
<wire from="(240,200)" to="(310,200)"/>
<wire from="(240,240)" to="(240,260)"/>
<wire from="(240,260)" to="(260,260)"/>
<wire from="(250,180)" to="(250,240)"/>
<wire from="(250,180)" to="(260,180)"/>
<wire from="(250,240)" to="(310,240)"/>
<wire from="(280,180)" to="(310,180)"/>
<wire from="(280,260)" to="(310,260)"/>
<wire from="(330,190)" to="(360,190)"/>
<wire from="(330,250)" to="(360,250)"/>
<wire from="(360,190)" to="(360,210)"/>
<wire from="(360,230)" to="(360,250)"/>
<wire from="(380,220)" to="(500,220)"/>
<wire from="(500,220)" to="(500,240)"/>
<wire from="(500,240)" to="(510,240)"/>
</circuit>
<circuit name="sum">
<a name="appearance" val="custom"/>
<a name="circuit" val="sum"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<path d="M50,50 Q54,60 50,70" fill="none" stroke="#000000"/>
<rect fill="#ffffff" height="20" stroke="#000000" width="16" x="54" y="50"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="62" y="60">sum</text>
<polygon fill="#ffffff" points="57,72 59,67 61,72" stroke="#000000"/>
<circ-anchor facing="east" x="70" y="60"/>
<circ-port dir="in" pin="210,130" x="50" y="50"/>
<circ-port dir="in" pin="210,210" x="50" y="70"/>
<circ-port dir="out" pin="600,180" x="70" y="60"/>
</appear>
<comp lib="0" loc="(210,130)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(210,210)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(600,180)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp loc="(280,210)" name="dec"/>
<comp loc="(280,250)" name="inc"/>
<comp loc="(350,110)" name="eqP"/>
<comp loc="(350,130)" name="eqN"/>
<comp loc="(350,90)" name="eq0"/>
<comp loc="(460,140)" name="min"/>
<comp loc="(460,240)" name="min"/>
<comp loc="(490,170)" name="min"/>
<comp loc="(540,160)" name="max"/>
<comp loc="(580,180)" name="max"/>
<wire from="(210,130)" to="(320,130)"/>
<wire from="(210,210)" to="(230,210)"/>
<wire from="(230,180)" to="(230,210)"/>
<wire from="(230,180)" to="(470,180)"/>
<wire from="(230,210)" to="(230,250)"/>
<wire from="(230,210)" to="(260,210)"/>
<wire from="(230,250)" to="(260,250)"/>
<wire from="(280,210)" to="(440,210)"/>
<wire from="(280,250)" to="(440,250)"/>
<wire from="(320,110)" to="(320,130)"/>
<wire from="(320,110)" to="(330,110)"/>
<wire from="(320,130)" to="(330,130)"/>
<wire from="(320,90)" to="(320,110)"/>
<wire from="(320,90)" to="(330,90)"/>
<wire from="(350,110)" to="(430,110)"/>
<wire from="(350,130)" to="(440,130)"/>
<wire from="(350,90)" to="(380,90)"/>
<wire from="(380,160)" to="(470,160)"/>
<wire from="(380,90)" to="(380,160)"/>
<wire from="(430,110)" to="(430,230)"/>
<wire from="(430,230)" to="(440,230)"/>
<wire from="(440,150)" to="(440,210)"/>
<wire from="(460,140)" to="(520,140)"/>
<wire from="(460,240)" to="(560,240)"/>
<wire from="(490,170)" to="(520,170)"/>
<wire from="(520,140)" to="(520,150)"/>
<wire from="(540,160)" to="(560,160)"/>
<wire from="(560,160)" to="(560,170)"/>
<wire from="(560,190)" to="(560,240)"/>
<wire from="(580,180)" to="(600,180)"/>
</circuit>
<circuit name="const0">
<a name="appearance" val="custom"/>
<a name="circuit" val="const0"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<ellipse cx="60" cy="40" fill="#ffffff" rx="10" ry="10" stroke="#000000"/>
<ellipse cx="60" cy="40" fill="none" rx="4" ry="4" stroke="#000000"/>
<circ-anchor facing="east" x="70" y="40"/>
<circ-port dir="out" pin="210,370" x="70" y="40"/>
</appear>
<comp lib="0" loc="(130,370)" name="Ground">
<a name="facing" val="west"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(210,370)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<wire from="(130,370)" to="(210,370)"/>
</circuit>
<circuit name="constP">
<a name="appearance" val="custom"/>
<a name="circuit" val="constP"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<ellipse cx="40" cy="30" fill="#ffffff" rx="10" ry="10" stroke="#000000"/>
<polyline fill="none" points="40,23 40,36" stroke="#000000"/>
<polyline fill="none" points="33,30 47,30" stroke="#000000"/>
<circ-anchor facing="east" x="50" y="30"/>
<circ-port dir="out" pin="210,400" x="50" y="30"/>
</appear>
<comp lib="0" loc="(180,410)" name="Power">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(180,420)" name="Ground">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(200,400)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(210,400)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<wire from="(200,400)" to="(210,400)"/>
</circuit>
<circuit name="constN">
<a name="appearance" val="custom"/>
<a name="circuit" val="constN"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<ellipse cx="30" cy="20" fill="#ffffff" rx="10" ry="10" stroke="#000000"/>
<polyline fill="none" points="23,20 37,20" stroke="#000000"/>
<circ-anchor facing="east" x="40" y="20"/>
<circ-port dir="out" pin="180,350" x="40" y="20"/>
</appear>
<comp lib="0" loc="(150,360)" name="Ground">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(150,370)" name="Power">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(170,350)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(180,350)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<wire from="(170,350)" to="(180,350)"/>
</circuit>
<circuit name="consensus">
<a name="appearance" val="custom"/>
<a name="circuit" val="consensus"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" rx="10" ry="10" stroke="#000000" width="21" x="59" y="80"/>
<rect fill="#ffffff" height="20" stroke="#000000" width="10" x="59" y="80"/>
<rect fill="#ffffff" height="18" stroke="#ffffff" width="7" x="63" y="81"/>
<polyline fill="none" points="62,82 62,98" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="8" text-anchor="middle" x="68" y="89">cons</text>
<polygon fill="#ffffff" points="61,102 63,97 65,102" stroke="#000000"/>
<polyline fill="none" points="62,82 64,82" stroke="#000000"/>
<polyline fill="none" points="62,98 64,98" stroke="#000000"/>
<circ-anchor facing="east" x="80" y="90"/>
<circ-port dir="in" pin="60,320" x="60" y="100"/>
<circ-port dir="in" pin="60,360" x="60" y="80"/>
<circ-port dir="out" pin="370,310" x="80" y="90"/>
</appear>
<comp lib="0" loc="(370,310)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(60,320)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(60,360)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp loc="(150,320)" name="eqN"/>
<comp loc="(150,360)" name="eqN"/>
<comp loc="(180,320)" name="not3"/>
<comp loc="(180,360)" name="not3"/>
<comp loc="(190,410)" name="const0"/>
<comp loc="(220,270)" name="min"/>
<comp loc="(220,320)" name="min"/>
<comp loc="(220,360)" name="min"/>
<comp loc="(310,300)" name="max"/>
<comp loc="(340,310)" name="max"/>
<wire from="(100,280)" to="(100,360)"/>
<wire from="(100,280)" to="(200,280)"/>
<wire from="(100,360)" to="(130,360)"/>
<wire from="(150,320)" to="(160,320)"/>
<wire from="(150,360)" to="(160,360)"/>
<wire from="(180,310)" to="(180,320)"/>
<wire from="(180,310)" to="(200,310)"/>
<wire from="(180,350)" to="(180,360)"/>
<wire from="(180,350)" to="(200,350)"/>
<wire from="(190,330)" to="(190,370)"/>
<wire from="(190,330)" to="(200,330)"/>
<wire from="(190,370)" to="(190,410)"/>
<wire from="(190,370)" to="(200,370)"/>
<wire from="(220,270)" to="(290,270)"/>
<wire from="(220,320)" to="(290,320)"/>
<wire from="(220,360)" to="(320,360)"/>
<wire from="(290,270)" to="(290,290)"/>
<wire from="(290,310)" to="(290,320)"/>
<wire from="(310,300)" to="(320,300)"/>
<wire from="(320,320)" to="(320,360)"/>
<wire from="(340,310)" to="(370,310)"/>
<wire from="(60,320)" to="(70,320)"/>
<wire from="(60,360)" to="(100,360)"/>
<wire from="(70,260)" to="(200,260)"/>
<wire from="(70,260)" to="(70,320)"/>
<wire from="(70,320)" to="(130,320)"/>
</circuit>
<circuit name="any">
<a name="appearance" val="custom"/>
<a name="circuit" val="any"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="16.0"/>
<appear>
<rect fill="#ffffff" height="20" stroke="#000000" width="7" x="62" y="80"/>
<rect fill="#ffffff" height="20" rx="10" ry="10" stroke="#000000" width="18" x="63" y="80"/>
<rect fill="#ffffff" height="18" stroke="#ffffff" width="9" x="62" y="81"/>
<polyline fill="none" points="60,80 61,80" stroke="#000000"/>
<polyline fill="none" points="60,100 62,100" stroke="#000000"/>
<polygon fill="#ffffff" points="61,102 63,97 65,102" stroke="#000000"/>
<path d="M64,82 Q65,90 64,98" fill="none" stroke="#000000"/>
<polyline fill="none" points="64,82 66,82" stroke="#000000"/>
<polyline fill="none" points="64,98 66,98" stroke="#000000"/>
<text dominant-baseline="central" font-family="SansSerif" font-size="12" text-anchor="middle" x="71" y="89">any</text>
<path d="M60,80 Q63,90 60,100" fill="none" stroke="#000000"/>
<circ-anchor facing="east" x="80" y="90"/>
<circ-port dir="in" pin="50,140" x="60" y="100"/>
<circ-port dir="in" pin="50,80" x="60" y="80"/>
<circ-port dir="out" pin="390,100" x="80" y="90"/>
</appear>
<comp lib="0" loc="(100,140)" name="Splitter">
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(100,80)" name="Splitter"/>
<comp lib="0" loc="(380,100)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(390,100)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(50,140)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="0" loc="(50,80)" name="Pin">
<a name="appearance" val="NewPins"/>
<a name="width" val="2"/>
</comp>
<comp lib="1" loc="(220,170)" name="OR Gate"/>
<comp lib="1" loc="(220,60)" name="OR Gate"/>
<comp lib="1" loc="(270,110)" name="AND Gate"/>
<comp lib="1" loc="(340,170)" name="AND Gate">
<a name="negate0" val="true"/>
</comp>
<comp lib="1" loc="(340,70)" name="AND Gate">
<a name="negate1" val="true"/>
</comp>
<wire from="(120,150)" to="(140,150)"/>
<wire from="(120,160)" to="(120,190)"/>
<wire from="(120,190)" to="(170,190)"/>
<wire from="(120,40)" to="(120,60)"/>
<wire from="(120,40)" to="(170,40)"/>
<wire from="(120,70)" to="(160,70)"/>
<wire from="(140,80)" to="(140,150)"/>
<wire from="(140,80)" to="(170,80)"/>
<wire from="(160,150)" to="(170,150)"/>
<wire from="(160,70)" to="(160,150)"/>
<wire from="(220,130)" to="(220,170)"/>
<wire from="(220,170)" to="(280,170)"/>
<wire from="(220,60)" to="(220,90)"/>
<wire from="(220,60)" to="(280,60)"/>
<wire from="(270,110)" to="(270,150)"/>
<wire from="(270,150)" to="(280,150)"/>
<wire from="(270,90)" to="(270,110)"/>
<wire from="(270,90)" to="(280,90)"/>
<wire from="(280,170)" to="(280,190)"/>
<wire from="(280,190)" to="(290,190)"/>
<wire from="(280,50)" to="(280,60)"/>
<wire from="(280,50)" to="(290,50)"/>
<wire from="(340,170)" to="(360,170)"/>
<wire from="(340,70)" to="(360,70)"/>
<wire from="(360,120)" to="(360,170)"/>
<wire from="(360,70)" to="(360,110)"/>
<wire from="(380,100)" to="(390,100)"/>
<wire from="(50,140)" to="(100,140)"/>
<wire from="(50,80)" to="(100,80)"/>
</circuit>
</project>