text:
<?xml version="1.0" encoding="UTF-8"?>
<drawing version="7">
    <attr value="spartan3e" name="DeviceFamilyName">
        <trait delete="all:0" />
        <trait editname="all:0" />
        <trait edittrait="all:0" />
    </attr>
    <netlist>
        <signal name="WING_AL0" />
        <signal name="WING_AL1" />
        <signal name="WING_AL2" />
        <signal name="WING_AL3" />
        <signal name="WING_AL4" />
        <signal name="WING_AL5" />
        <signal name="WING_AL6" />
        <signal name="WING_AL7" />
        <signal name="WING_AH0" />
        <signal name="WING_AH1" />
        <signal name="WING_AH2" />
        <signal name="WING_AH3" />
        <signal name="WING_AH4" />
        <signal name="WING_AH5" />
        <signal name="WING_AH6" />
        <signal name="WING_AH7" />
        <signal name="WING_BL0" />
        <signal name="WING_BL1" />
        <signal name="WING_BL2" />
        <signal name="WING_BL3" />
        <signal name="WING_BL4" />
        <signal name="WING_BL5" />
        <signal name="WING_BL6" />
        <signal name="WING_BL7" />
        <signal name="WING_BH0" />
        <signal name="WING_BH1" />
        <signal name="WING_BH2" />
        <signal name="WING_BH3" />
        <signal name="WING_BH4" />
        <signal name="WING_BH5" />
        <signal name="WING_BH6" />
        <signal name="WING_BH7" />
        <signal name="WING_CL0" />
        <signal name="WING_CL1" />
        <signal name="WING_CL2" />
        <signal name="WING_CL3" />
        <signal name="WING_CL4" />
        <signal name="WING_CL5" />
        <signal name="WING_CL6" />
        <signal name="WING_CL7" />
        <signal name="WING_CH0" />
        <signal name="WING_CH1" />
        <signal name="WING_CH2" />
        <signal name="WING_CH3" />
        <signal name="WING_CH4" />
        <signal name="WING_CH5" />
        <signal name="WING_CH6" />
        <signal name="WING_CH7" />
        <signal name="RXD" />
        <signal name="SPI_MISO" />
        <signal name="CLK" />
        <signal name="SPI_CS" />
        <signal name="TXD" />
        <signal name="SPI_MOSI" />
        <signal name="SPI_SCK" />
        <signal name="XLXN_408(147:0)" />
        <signal name="XLXN_409(97:0)" />
        <signal name="XLXN_430(61:0)" />
        <signal name="XLXN_431(33:0)" />
        <signal name="XLXN_432(61:0)" />
        <signal name="XLXN_433(33:0)" />
        <signal name="XLXN_434(61:0)" />
        <signal name="XLXN_435(33:0)" />
        <signal name="XLXN_436(61:0)" />
        <signal name="XLXN_437(33:0)" />
        <signal name="XLXN_442(61:0)" />
        <signal name="XLXN_443(33:0)" />
        <signal name="XLXN_444(61:0)" />
        <signal name="XLXN_445(33:0)" />
        <signal name="XLXN_446(61:0)" />
        <signal name="XLXN_447(33:0)" />
        <signal name="XLXN_335(7:0)" />
        <signal name="XLXN_336(7:0)" />
        <signal name="XLXN_333(7:0)" />
        <signal name="XLXN_334(7:0)" />
        <signal name="XLXN_331(7:0)" />
        <signal name="XLXN_332(7:0)" />
        <signal name="XLXN_329(7:0)" />
        <signal name="XLXN_330(7:0)" />
        <signal name="XLXN_327(7:0)" />
        <signal name="XLXN_328(7:0)" />
        <signal name="XLXN_448(7:0)" />
        <signal name="XLXN_449(7:0)" />
        <signal name="XLXN_450" />
        <signal name="XLXN_451" />
        <signal name="XLXN_452" />
        <signal name="XLXN_453" />
        <signal name="XLXN_454" />
        <signal name="XLXN_455" />
        <signal name="XLXN_456" />
        <signal name="XLXN_457" />
        <signal name="XLXN_458(61:0)" />
        <signal name="XLXN_459(33:0)" />
        <signal name="XLXN_460(61:0)" />
        <signal name="XLXN_461(33:0)" />
        <signal name="XLXN_462" />
        <signal name="XLXN_463" />
        <port polarity="BiDirectional" name="WING_AL0" />
        <port polarity="BiDirectional" name="WING_AL1" />
        <port polarity="BiDirectional" name="WING_AL2" />
        <port polarity="BiDirectional" name="WING_AL3" />
        <port polarity="BiDirectional" name="WING_AL4" />
        <port polarity="BiDirectional" name="WING_AL5" />
        <port polarity="BiDirectional" name="WING_AL6" />
        <port polarity="BiDirectional" name="WING_AL7" />
        <port polarity="BiDirectional" name="WING_AH0" />
        <port polarity="BiDirectional" name="WING_AH1" />
        <port polarity="BiDirectional" name="WING_AH2" />
        <port polarity="BiDirectional" name="WING_AH3" />
        <port polarity="BiDirectional" name="WING_AH4" />
        <port polarity="BiDirectional" name="WING_AH5" />
        <port polarity="BiDirectional" name="WING_AH6" />
        <port polarity="BiDirectional" name="WING_AH7" />
        <port polarity="BiDirectional" name="WING_BL0" />
        <port polarity="BiDirectional" name="WING_BL1" />
        <port polarity="BiDirectional" name="WING_BL2" />
        <port polarity="BiDirectional" name="WING_BL3" />
        <port polarity="BiDirectional" name="WING_BL4" />
        <port polarity="BiDirectional" name="WING_BL5" />
        <port polarity="BiDirectional" name="WING_BL6" />
        <port polarity="BiDirectional" name="WING_BL7" />
        <port polarity="BiDirectional" name="WING_BH0" />
        <port polarity="BiDirectional" name="WING_BH1" />
        <port polarity="BiDirectional" name="WING_BH2" />
        <port polarity="BiDirectional" name="WING_BH3" />
        <port polarity="BiDirectional" name="WING_BH4" />
        <port polarity="BiDirectional" name="WING_BH5" />
        <port polarity="BiDirectional" name="WING_BH6" />
        <port polarity="BiDirectional" name="WING_BH7" />
        <port polarity="BiDirectional" name="WING_CL0" />
        <port polarity="BiDirectional" name="WING_CL1" />
        <port polarity="BiDirectional" name="WING_CL2" />
        <port polarity="BiDirectional" name="WING_CL3" />
        <port polarity="BiDirectional" name="WING_CL4" />
        <port polarity="BiDirectional" name="WING_CL5" />
        <port polarity="BiDirectional" name="WING_CL6" />
        <port polarity="BiDirectional" name="WING_CL7" />
        <port polarity="BiDirectional" name="WING_CH0" />
        <port polarity="BiDirectional" name="WING_CH1" />
        <port polarity="BiDirectional" name="WING_CH2" />
        <port polarity="BiDirectional" name="WING_CH3" />
        <port polarity="BiDirectional" name="WING_CH4" />
        <port polarity="BiDirectional" name="WING_CH5" />
        <port polarity="BiDirectional" name="WING_CH6" />
        <port polarity="BiDirectional" name="WING_CH7" />
        <port polarity="Input" name="RXD" />
        <port polarity="Input" name="SPI_MISO" />
        <port polarity="Input" name="CLK" />
        <port polarity="BiDirectional" name="SPI_CS" />
        <port polarity="Output" name="TXD" />
        <port polarity="Output" name="SPI_MOSI" />
        <port polarity="Output" name="SPI_SCK" />
        <blockdef name="Wing_GPIO">
            <timestamp>2013-11-27T0:38:36</timestamp>
            <rect width="160" x="0" y="-128" height="128" />
            <rect width="64" x="160" y="-108" height="24" />
            <line x2="224" y1="-96" y2="-96" x1="160" />
            <rect width="64" x="160" y="-44" height="24" />
            <line x2="224" y1="-32" y2="-32" x1="160" />
        </blockdef>
        <blockdef name="Wishbone_Empty_Slot">
            <timestamp>2013-11-27T1:19:15</timestamp>
            <rect width="140" x="0" y="-32" height="32" />
            <line x2="64" y1="-64" y2="-32" x1="64" />
            <line x2="80" y1="-64" y2="-32" x1="80" />
        </blockdef>
        <blockdef name="Papilio_Default_Wing_Pinout">
            <timestamp>2013-12-20T0:3:45</timestamp>
            <rect width="148" x="316" y="-1724" height="276" />
            <rect width="148" x="316" y="-1152" height="280" />
            <rect width="148" x="316" y="-860" height="276" />
            <rect width="148" x="316" y="-572" height="276" />
            <rect width="148" x="316" y="-284" height="276" />
            <rect width="148" x="316" y="-1436" height="272" />
            <line x2="528" y1="-1408" y2="-1408" x1="464" />
            <line x2="528" y1="-1376" y2="-1376" x1="464" />
            <line x2="528" y1="-1344" y2="-1344" x1="464" />
            <line x2="528" y1="-1312" y2="-1312" x1="464" />
            <line x2="528" y1="-1280" y2="-1280" x1="464" />
            <line x2="528" y1="-1248" y2="-1248" x1="464" />
            <line x2="528" y1="-1216" y2="-1216" x1="464" />
            <line x2="528" y1="-1184" y2="-1184" x1="464" />
            <line x2="528" y1="-1696" y2="-1696" x1="464" />
            <line x2="528" y1="-1664" y2="-1664" x1="464" />
            <line x2="528" y1="-1632" y2="-1632" x1="464" />
            <line x2="528" y1="-1600" y2="-1600" x1="464" />
            <line x2="528" y1="-1568" y2="-1568" x1="464" />
            <line x2="528" y1="-1536" y2="-1536" x1="464" />
            <line x2="528" y1="-1504" y2="-1504" x1="464" />
            <line x2="528" y1="-1472" y2="-1472" x1="464" />
            <line x2="528" y1="-832" y2="-832" x1="464" />
            <line x2="528" y1="-800" y2="-800" x1="464" />
            <line x2="528" y1="-768" y2="-768" x1="464" />
            <line x2="528" y1="-736" y2="-736" x1="464" />
            <line x2="528" y1="-704" y2="-704" x1="464" />
            <line x2="528" y1="-672" y2="-672" x1="464" />
            <line x2="528" y1="-640" y2="-640" x1="464" />
            <line x2="528" y1="-608" y2="-608" x1="464" />
            <line x2="528" y1="-1120" y2="-1120" x1="464" />
            <line x2="528" y1="-1088" y2="-1088" x1="464" />
            <line x2="528" y1="-1056" y2="-1056" x1="464" />
            <line x2="528" y1="-1024" y2="-1024" x1="464" />
            <line x2="528" y1="-992" y2="-992" x1="464" />
            <line x2="528" y1="-960" y2="-960" x1="464" />
            <line x2="528" y1="-928" y2="-928" x1="464" />
            <line x2="528" y1="-896" y2="-896" x1="464" />
            <line x2="528" y1="-544" y2="-544" x1="464" />
            <line x2="528" y1="-512" y2="-512" x1="464" />
            <line x2="528" y1="-480" y2="-480" x1="464" />
            <line x2="528" y1="-448" y2="-448" x1="464" />
            <line x2="528" y1="-416" y2="-416" x1="464" />
            <line x2="528" y1="-384" y2="-384" x1="464" />
            <line x2="528" y1="-352" y2="-352" x1="464" />
            <line x2="528" y1="-320" y2="-320" x1="464" />
            <line x2="528" y1="-256" y2="-256" x1="464" />
            <line x2="528" y1="-224" y2="-224" x1="464" />
            <line x2="528" y1="-192" y2="-192" x1="464" />
            <line x2="528" y1="-160" y2="-160" x1="464" />
            <line x2="528" y1="-128" y2="-128" x1="464" />
            <line x2="528" y1="-96" y2="-96" x1="464" />
            <line x2="528" y1="-64" y2="-64" x1="464" />
            <line x2="528" y1="-32" y2="-32" x1="464" />
            <rect width="432" x="32" y="-1784" height="1784" />
            <line x2="32" y1="-1744" y2="-1744" x1="-32" />
            <line x2="32" y1="-1760" y2="-1760" x1="-32" />
            <rect width="64" x="-32" y="-108" height="24" />
            <line x2="32" y1="-96" y2="-96" x1="-32" />
            <rect width="64" x="-32" y="-172" height="24" />
            <line x2="32" y1="-160" y2="-160" x1="-32" />
            <rect width="64" x="-32" y="-396" height="24" />
            <line x2="32" y1="-384" y2="-384" x1="-32" />
            <rect width="64" x="-32" y="-460" height="24" />
            <line x2="32" y1="-448" y2="-448" x1="-32" />
            <rect width="64" x="-32" y="-1612" height="24" />
            <line x2="32" y1="-1600" y2="-1600" x1="-32" />
            <rect width="64" x="-32" y="-1548" height="24" />
            <line x2="32" y1="-1536" y2="-1536" x1="-32" />
            <rect width="64" x="-32" y="-1324" height="24" />
            <line x2="32" y1="-1312" y2="-1312" x1="-32" />
            <rect width="64" x="-32" y="-1260" height="24" />
            <line x2="32" y1="-1248" y2="-1248" x1="-32" />
            <rect width="64" x="-32" y="-1052" height="24" />
            <line x2="32" y1="-1040" y2="-1040" x1="-32" />
            <rect width="64" x="-32" y="-988" height="24" />
            <line x2="32" y1="-976" y2="-976" x1="-32" />
            <rect width="64" x="-32" y="-748" height="24" />
            <line x2="32" y1="-736" y2="-736" x1="-32" />
            <rect width="64" x="-32" y="-684" height="24" />
            <line x2="32" y1="-672" y2="-672" x1="-32" />
            <rect width="88" x="32" y="-1616" height="96" />
            <rect width="88" x="32" y="-1328" height="96" />
            <rect width="88" x="32" y="-1056" height="96" />
            <rect width="88" x="32" y="-752" height="96" />
            <rect width="88" x="32" y="-464" height="96" />
            <rect width="88" x="32" y="-176" height="96" />
        </blockdef>
        <blockdef name="Wing_VGA8">
            <timestamp>2013-12-20T17:31:8</timestamp>
            <rect width="288" x="48" y="-224" height="224" />
            <line x2="-16" y1="-208" y2="-208" x1="48" />
            <line x2="-16" y1="-192" y2="-192" x1="48" />
            <line x2="-16" y1="-144" y2="-144" x1="48" />
            <line x2="-16" y1="-128" y2="-128" x1="48" />
            <line x2="-16" y1="-80" y2="-80" x1="48" />
            <line x2="-16" y1="-64" y2="-64" x1="48" />
            <rect width="64" x="336" y="-156" height="24" />
            <line x2="400" y1="-144" y2="-144" x1="336" />
            <rect width="64" x="336" y="-92" height="24" />
            <line x2="400" y1="-80" y2="-80" x1="336" />
            <line x2="-16" y1="-32" y2="-32" x1="48" />
            <line x2="-16" y1="-16" y2="-16" x1="48" />
        </blockdef>
        <blockdef name="VIDEO_zpuino_wb_vga_hqvga">
            <timestamp>2013-12-20T4:19:24</timestamp>
            <rect width="272" x="64" y="-256" height="256" />
            <line x2="0" y1="-224" y2="-224" x1="64" />
            <line x2="400" y1="-224" y2="-224" x1="336" />
            <line x2="400" y1="-208" y2="-208" x1="336" />
            <line x2="400" y1="-176" y2="-176" x1="336" />
            <line x2="400" y1="-160" y2="-160" x1="336" />
            <line x2="400" y1="-144" y2="-144" x1="336" />
            <line x2="400" y1="-112" y2="-112" x1="336" />
            <line x2="400" y1="-96" y2="-96" x1="336" />
            <line x2="400" y1="-80" y2="-80" x1="336" />
            <line x2="400" y1="-48" y2="-48" x1="336" />
            <line x2="400" y1="-32" y2="-32" x1="336" />
            <line x2="192" y1="-304" y2="-256" x1="192" />
            <line x2="208" y1="-304" y2="-256" x1="208" />
        </blockdef>
        <blockdef name="VIDEO_zpuino_wb_char_ram_8x8_sp">
            <timestamp>2013-12-20T4:18:30</timestamp>
            <line x2="96" y1="-112" y2="-64" x1="96" />
            <line x2="112" y1="-112" y2="-64" x1="112" />
            <rect width="120" x="44" y="-64" height="64" />
        </blockdef>
        <blockdef name="ZPUino_Papilio_One_V1_hyperion">
            <timestamp>2013-12-20T0:21:36</timestamp>
            <rect width="172" x="320" y="-92" height="92" />
            <rect width="172" x="768" y="-92" height="92" />
            <rect width="172" x="1216" y="-92" height="92" />
            <rect width="172" x="1664" y="-92" height="92" />
            <rect width="172" x="2128" y="-92" height="92" />
            <rect width="172" x="2560" y="-92" height="92" />
            <rect width="172" x="3024" y="-92" height="92" />
            <rect width="172" x="3472" y="-92" height="92" />
            <rect width="172" x="3920" y="-92" height="92" />
            <rect width="4240" x="64" y="-688" height="688" />
            <line x2="4368" y1="-272" y2="-272" x1="4304" />
            <line x2="4304" y1="-240" y2="-240" x1="4368" />
            <rect width="180" x="4124" y="-300" height="112" />
            <line x2="4240" y1="64" y2="0" x1="4240" />
            <line x2="4256" y1="64" y2="0" x1="4256" />
            <line x2="4272" y1="64" y2="0" x1="4272" />
            <line x2="4160" y1="64" y2="0" x1="4160" />
            <line x2="4176" y1="64" y2="0" x1="4176" />
            <line x2="4000" y1="64" y2="0" x1="4000" />
            <line x2="4016" y1="64" y2="0" x1="4016" />
            <line x2="3552" y1="64" y2="0" x1="3552" />
            <line x2="3568" y1="64" y2="0" x1="3568" />
            <line x2="3104" y1="64" y2="0" x1="3104" />
            <line x2="3120" y1="64" y2="0" x1="3120" />
            <line x2="2640" y1="64" y2="0" x1="2640" />
            <line x2="2656" y1="64" y2="0" x1="2656" />
            <line x2="2208" y1="64" y2="0" x1="2208" />
            <line x2="2224" y1="64" y2="0" x1="2224" />
            <line x2="1744" y1="64" y2="0" x1="1744" />
            <line x2="1760" y1="64" y2="0" x1="1760" />
            <line x2="1296" y1="64" y2="0" x1="1296" />
            <line x2="1312" y1="64" y2="0" x1="1312" />
            <line x2="848" y1="64" y2="0" x1="848" />
            <line x2="864" y1="64" y2="0" x1="864" />
            <rect width="172" x="4128" y="-92" height="92" />
            <line x2="416" y1="64" y2="0" x1="416" />
            <line x2="400" y1="64" y2="0" x1="400" />
            <line x2="0" y1="-656" y2="-656" x1="64" />
            <line x2="0" y1="-592" y2="-592" x1="64" />
            <line x2="0" y1="-528" y2="-528" x1="64" />
            <line x2="4368" y1="-656" y2="-656" x1="4304" />
            <line x2="4368" y1="-624" y2="-624" x1="4304" />
            <line x2="4368" y1="-592" y2="-592" x1="4304" />
            <line x2="4368" y1="-560" y2="-560" x1="4304" />
            <line x2="4368" y1="-400" y2="-400" x1="4304" />
            <line x2="4304" y1="-416" y2="-416" x1="4368" />
            <rect width="248" x="4056" y="-448" height="76" />
            <line x2="4304" y1="-208" y2="-208" x1="4368" />
        </blockdef>
        <blockdef name="clk_32to50_dcm">
            <timestamp>2013-12-20T18:40:9</timestamp>
            <rect width="256" x="64" y="-64" height="64" />
            <line x2="0" y1="-32" y2="-32" x1="64" />
            <line x2="384" y1="-32" y2="-32" x1="320" />
        </blockdef>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_37">
            <blockpin signalname="XLXN_430(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_431(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_36">
            <blockpin signalname="XLXN_432(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_433(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_35">
            <blockpin signalname="XLXN_434(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_435(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_34">
            <blockpin signalname="XLXN_436(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_437(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_31">
            <blockpin signalname="XLXN_442(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_443(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_30">
            <blockpin signalname="XLXN_444(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_445(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wishbone_Empty_Slot" name="XLXI_29">
            <blockpin signalname="XLXN_446(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_447(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="Wing_GPIO" name="XLXI_27">
            <blockpin signalname="XLXN_335(7:0)" name="wt_miso(7:0)" />
            <blockpin signalname="XLXN_336(7:0)" name="wt_mosi(7:0)" />
        </block>
        <block symbolname="Wing_GPIO" name="XLXI_26">
            <blockpin signalname="XLXN_333(7:0)" name="wt_miso(7:0)" />
            <blockpin signalname="XLXN_334(7:0)" name="wt_mosi(7:0)" />
        </block>
        <block symbolname="Wing_GPIO" name="XLXI_25">
            <blockpin signalname="XLXN_331(7:0)" name="wt_miso(7:0)" />
            <blockpin signalname="XLXN_332(7:0)" name="wt_mosi(7:0)" />
        </block>
        <block symbolname="Wing_GPIO" name="XLXI_24">
            <blockpin signalname="XLXN_329(7:0)" name="wt_miso(7:0)" />
            <blockpin signalname="XLXN_330(7:0)" name="wt_mosi(7:0)" />
        </block>
        <block symbolname="Wing_GPIO" name="XLXI_23">
            <blockpin signalname="XLXN_327(7:0)" name="wt_miso(7:0)" />
            <blockpin signalname="XLXN_328(7:0)" name="wt_mosi(7:0)" />
        </block>
        <block symbolname="Papilio_Default_Wing_Pinout" name="XLXI_38">
            <blockpin signalname="WING_AH0" name="WING_AH0" />
            <blockpin signalname="WING_AH1" name="WING_AH1" />
            <blockpin signalname="WING_AH2" name="WING_AH2" />
            <blockpin signalname="WING_AH3" name="WING_AH3" />
            <blockpin signalname="WING_AH4" name="WING_AH4" />
            <blockpin signalname="WING_AH5" name="WING_AH5" />
            <blockpin signalname="WING_AH6" name="WING_AH6" />
            <blockpin signalname="WING_AH7" name="WING_AH7" />
            <blockpin signalname="WING_AL0" name="WING_AL0" />
            <blockpin signalname="WING_AL1" name="WING_AL1" />
            <blockpin signalname="WING_AL2" name="WING_AL2" />
            <blockpin signalname="WING_AL3" name="WING_AL3" />
            <blockpin signalname="WING_AL4" name="WING_AL4" />
            <blockpin signalname="WING_AL5" name="WING_AL5" />
            <blockpin signalname="WING_AL6" name="WING_AL6" />
            <blockpin signalname="WING_AL7" name="WING_AL7" />
            <blockpin signalname="WING_BH0" name="WING_BH0" />
            <blockpin signalname="WING_BH1" name="WING_BH1" />
            <blockpin signalname="WING_BH2" name="WING_BH2" />
            <blockpin signalname="WING_BH3" name="WING_BH3" />
            <blockpin signalname="WING_BH4" name="WING_BH4" />
            <blockpin signalname="WING_BH5" name="WING_BH5" />
            <blockpin signalname="WING_BH6" name="WING_BH6" />
            <blockpin signalname="WING_BH7" name="WING_BH7" />
            <blockpin signalname="WING_BL0" name="WING_BL0" />
            <blockpin signalname="WING_BL1" name="WING_BL1" />
            <blockpin signalname="WING_BL2" name="WING_BL2" />
            <blockpin signalname="WING_BL3" name="WING_BL3" />
            <blockpin signalname="WING_BL4" name="WING_BL4" />
            <blockpin signalname="WING_BL5" name="WING_BL5" />
            <blockpin signalname="WING_BL6" name="WING_BL6" />
            <blockpin signalname="WING_BL7" name="WING_BL7" />
            <blockpin signalname="WING_CL0" name="WING_CL0" />
            <blockpin signalname="WING_CL1" name="WING_CL1" />
            <blockpin signalname="WING_CL2" name="WING_CL2" />
            <blockpin signalname="WING_CL3" name="WING_CL3" />
            <blockpin signalname="WING_CL4" name="WING_CL4" />
            <blockpin signalname="WING_CL5" name="WING_CL5" />
            <blockpin signalname="WING_CL6" name="WING_CL6" />
            <blockpin signalname="WING_CL7" name="WING_CL7" />
            <blockpin signalname="WING_CH0" name="WING_CH0" />
            <blockpin signalname="WING_CH1" name="WING_CH1" />
            <blockpin signalname="WING_CH2" name="WING_CH2" />
            <blockpin signalname="WING_CH3" name="WING_CH3" />
            <blockpin signalname="WING_CH4" name="WING_CH4" />
            <blockpin signalname="WING_CH5" name="WING_CH5" />
            <blockpin signalname="WING_CH6" name="WING_CH6" />
            <blockpin signalname="WING_CH7" name="WING_CH7" />
            <blockpin signalname="XLXN_408(147:0)" name="gpio_bus_out(147:0)" />
            <blockpin signalname="XLXN_409(97:0)" name="gpio_bus_in(97:0)" />
            <blockpin signalname="XLXN_329(7:0)" name="WingType_miso_BH(7:0)" />
            <blockpin signalname="XLXN_331(7:0)" name="WingType_miso_BL(7:0)" />
            <blockpin signalname="XLXN_333(7:0)" name="WingType_miso_AH(7:0)" />
            <blockpin signalname="XLXN_332(7:0)" name="WingType_mosi_BL(7:0)" />
            <blockpin signalname="XLXN_330(7:0)" name="WingType_mosi_BH(7:0)" />
            <blockpin signalname="XLXN_328(7:0)" name="WingType_mosi_CL(7:0)" />
            <blockpin signalname="XLXN_334(7:0)" name="WingType_mosi_AH(7:0)" />
            <blockpin signalname="XLXN_327(7:0)" name="WingType_miso_CL(7:0)" />
            <blockpin signalname="XLXN_448(7:0)" name="WingType_miso_CH(7:0)" />
            <blockpin signalname="XLXN_449(7:0)" name="WingType_mosi_CH(7:0)" />
            <blockpin signalname="XLXN_336(7:0)" name="WingType_mosi_AL(7:0)" />
            <blockpin signalname="XLXN_335(7:0)" name="WingType_miso_AL(7:0)" />
        </block>
        <block symbolname="Wing_VGA8" name="XLXI_39">
            <blockpin signalname="XLXN_450" name="vga_hsync" />
            <blockpin signalname="XLXN_451" name="vga_vsync" />
            <blockpin signalname="XLXN_452" name="vga_red1" />
            <blockpin signalname="XLXN_453" name="vga_red0" />
            <blockpin signalname="XLXN_454" name="vga_green1" />
            <blockpin signalname="XLXN_455" name="vga_green0" />
            <blockpin signalname="XLXN_448(7:0)" name="wt_miso(7:0)" />
            <blockpin signalname="XLXN_449(7:0)" name="wt_mosi(7:0)" />
            <blockpin signalname="XLXN_456" name="vga_blue1" />
            <blockpin signalname="XLXN_457" name="vga_blue0" />
        </block>
        <block symbolname="VIDEO_zpuino_wb_vga_hqvga" name="XLXI_40">
            <blockpin signalname="XLXN_462" name="clk_50Mhz" />
            <blockpin signalname="XLXN_450" name="vga_hsync" />
            <blockpin signalname="XLXN_451" name="vga_vsync" />
            <blockpin name="vga_r2" />
            <blockpin signalname="XLXN_452" name="vga_r1" />
            <blockpin signalname="XLXN_453" name="vga_r0" />
            <blockpin name="vga_g2" />
            <blockpin signalname="XLXN_454" name="vga_g1" />
            <blockpin signalname="XLXN_455" name="vga_g0" />
            <blockpin signalname="XLXN_456" name="vga_b1" />
            <blockpin signalname="XLXN_457" name="vga_b0" />
            <blockpin signalname="XLXN_458(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_459(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="VIDEO_zpuino_wb_char_ram_8x8_sp" name="XLXI_41">
            <blockpin signalname="XLXN_460(61:0)" name="wishbone_in(61:0)" />
            <blockpin signalname="XLXN_461(33:0)" name="wishbone_out(33:0)" />
        </block>
        <block symbolname="ZPUino_Papilio_One_V1_hyperion" name="XLXI_43">
            <blockpin name="clk_96Mhz" />
            <blockpin name="clk_1Mhz" />
            <blockpin signalname="XLXN_463" name="clk_osc_32Mhz" />
            <blockpin name="wishbone_slot_video_in(63:0)" />
            <blockpin name="wishbone_slot_video_out(33:0)" />
            <blockpin name="vgaclkout" />
            <blockpin name="wishbone_slot_15_in(61:0)" />
            <blockpin name="wishbone_slot_15_out(33:0)" />
            <blockpin signalname="XLXN_430(61:0)" name="wishbone_slot_14_in(61:0)" />
            <blockpin signalname="XLXN_431(33:0)" name="wishbone_slot_14_out(33:0)" />
            <blockpin signalname="XLXN_432(61:0)" name="wishbone_slot_13_in(61:0)" />
            <blockpin signalname="XLXN_433(33:0)" name="wishbone_slot_13_out(33:0)" />
            <blockpin signalname="XLXN_434(61:0)" name="wishbone_slot_12_in(61:0)" />
            <blockpin signalname="XLXN_435(33:0)" name="wishbone_slot_12_out(33:0)" />
            <blockpin signalname="XLXN_436(61:0)" name="wishbone_slot_11_in(61:0)" />
            <blockpin signalname="XLXN_437(33:0)" name="wishbone_slot_11_out(33:0)" />
            <blockpin signalname="XLXN_460(61:0)" name="wishbone_slot_10_in(61:0)" />
            <blockpin signalname="XLXN_461(33:0)" name="wishbone_slot_10_out(33:0)" />
            <blockpin signalname="XLXN_458(61:0)" name="wishbone_slot_9_in(61:0)" />
            <blockpin signalname="XLXN_459(33:0)" name="wishbone_slot_9_out(33:0)" />
            <blockpin signalname="XLXN_442(61:0)" name="wishbone_slot_8_in(61:0)" />
            <blockpin signalname="XLXN_443(33:0)" name="wishbone_slot_8_out(33:0)" />
            <blockpin signalname="XLXN_444(61:0)" name="wishbone_slot_6_in(61:0)" />
            <blockpin signalname="XLXN_445(33:0)" name="wishbone_slot_6_out(33:0)" />
            <blockpin signalname="XLXN_447(33:0)" name="wishbone_slot_5_out(33:0)" />
            <blockpin signalname="XLXN_446(61:0)" name="wishbone_slot_5_in(61:0)" />
            <blockpin signalname="CLK" name="CLK" />
            <blockpin signalname="SPI_MISO" name="SPI_FLASH_MISO" />
            <blockpin signalname="RXD" name="RXD" />
            <blockpin signalname="SPI_SCK" name="SPI_FLASH_SCK" />
            <blockpin signalname="SPI_MOSI" name="SPI_FLASH_MOSI" />
            <blockpin signalname="TXD" name="TXD" />
            <blockpin signalname="SPI_CS" name="SPI_FLASH_CS" />
            <blockpin signalname="XLXN_408(147:0)" name="gpio_bus_out(147:0)" />
            <blockpin signalname="XLXN_409(97:0)" name="gpio_bus_in(97:0)" />
        </block>
        <block symbolname="clk_32to50_dcm" name="XLXI_44">
            <blockpin signalname="XLXN_463" name="CLK_IN1" />
            <blockpin signalname="XLXN_462" name="CLK_OUT1" />
        </block>
    </netlist>
    <sheet sheetnum="1" width="5440" height="3520">
        <branch name="WING_AL0">
            <wire x2="5200" y1="1392" y2="1392" x1="5168" />
        </branch>
        <branch name="WING_AL1">
            <wire x2="5200" y1="1424" y2="1424" x1="5168" />
        </branch>
        <branch name="WING_AL2">
            <wire x2="5200" y1="1456" y2="1456" x1="5168" />
        </branch>
        <branch name="WING_AL3">
            <wire x2="5200" y1="1488" y2="1488" x1="5168" />
        </branch>
        <branch name="WING_AL4">
            <wire x2="5200" y1="1520" y2="1520" x1="5168" />
        </branch>
        <branch name="WING_AL5">
            <wire x2="5200" y1="1552" y2="1552" x1="5168" />
        </branch>
        <branch name="WING_AL6">
            <wire x2="5200" y1="1584" y2="1584" x1="5168" />
        </branch>
        <branch name="WING_AL7">
            <wire x2="5200" y1="1616" y2="1616" x1="5168" />
        </branch>
        <branch name="WING_AH0">
            <wire x2="5200" y1="1680" y2="1680" x1="5168" />
        </branch>
        <branch name="WING_AH1">
            <wire x2="5200" y1="1712" y2="1712" x1="5168" />
        </branch>
        <branch name="WING_AH2">
            <wire x2="5200" y1="1744" y2="1744" x1="5168" />
        </branch>
        <branch name="WING_AH3">
            <wire x2="5200" y1="1776" y2="1776" x1="5168" />
        </branch>
        <branch name="WING_AH4">
            <wire x2="5200" y1="1808" y2="1808" x1="5168" />
        </branch>
        <branch name="WING_AH5">
            <wire x2="5200" y1="1840" y2="1840" x1="5168" />
        </branch>
        <branch name="WING_AH6">
            <wire x2="5200" y1="1872" y2="1872" x1="5168" />
        </branch>
        <branch name="WING_AH7">
            <wire x2="5200" y1="1904" y2="1904" x1="5168" />
        </branch>
        <branch name="WING_BL0">
            <wire x2="5200" y1="1968" y2="1968" x1="5168" />
        </branch>
        <branch name="WING_BL1">
            <wire x2="5200" y1="2000" y2="2000" x1="5168" />
        </branch>
        <branch name="WING_BL2">
            <wire x2="5200" y1="2032" y2="2032" x1="5168" />
        </branch>
        <branch name="WING_BL3">
            <wire x2="5200" y1="2064" y2="2064" x1="5168" />
        </branch>
        <branch name="WING_BL4">
            <wire x2="5200" y1="2096" y2="2096" x1="5168" />
        </branch>
        <branch name="WING_BL5">
            <wire x2="5200" y1="2128" y2="2128" x1="5168" />
        </branch>
        <branch name="WING_BL6">
            <wire x2="5200" y1="2160" y2="2160" x1="5168" />
        </branch>
        <branch name="WING_BL7">
            <wire x2="5200" y1="2192" y2="2192" x1="5168" />
        </branch>
        <branch name="WING_BH0">
            <wire x2="5200" y1="2256" y2="2256" x1="5168" />
        </branch>
        <branch name="WING_BH1">
            <wire x2="5200" y1="2288" y2="2288" x1="5168" />
        </branch>
        <branch name="WING_BH2">
            <wire x2="5200" y1="2320" y2="2320" x1="5168" />
        </branch>
        <branch name="WING_BH3">
            <wire x2="5200" y1="2352" y2="2352" x1="5168" />
        </branch>
        <branch name="WING_BH4">
            <wire x2="5200" y1="2384" y2="2384" x1="5168" />
        </branch>
        <branch name="WING_BH5">
            <wire x2="5200" y1="2416" y2="2416" x1="5168" />
        </branch>
        <branch name="WING_BH6">
            <wire x2="5200" y1="2448" y2="2448" x1="5168" />
        </branch>
        <branch name="WING_BH7">
            <wire x2="5200" y1="2480" y2="2480" x1="5168" />
        </branch>
        <branch name="WING_CL0">
            <wire x2="5200" y1="2544" y2="2544" x1="5168" />
        </branch>
        <branch name="WING_CL1">
            <wire x2="5200" y1="2576" y2="2576" x1="5168" />
        </branch>
        <branch name="WING_CL2">
            <wire x2="5200" y1="2608" y2="2608" x1="5168" />
        </branch>
        <branch name="WING_CL3">
            <wire x2="5200" y1="2640" y2="2640" x1="5168" />
        </branch>
        <branch name="WING_CL4">
            <wire x2="5200" y1="2672" y2="2672" x1="5168" />
        </branch>
        <branch name="WING_CL5">
            <wire x2="5200" y1="2704" y2="2704" x1="5168" />
        </branch>
        <branch name="WING_CL6">
            <wire x2="5200" y1="2736" y2="2736" x1="5168" />
        </branch>
        <branch name="WING_CL7">
            <wire x2="5200" y1="2768" y2="2768" x1="5168" />
        </branch>
        <branch name="WING_CH0">
            <wire x2="5200" y1="2832" y2="2832" x1="5168" />
        </branch>
        <branch name="WING_CH1">
            <wire x2="5200" y1="2864" y2="2864" x1="5168" />
        </branch>
        <branch name="WING_CH2">
            <wire x2="5200" y1="2896" y2="2896" x1="5168" />
        </branch>
        <branch name="WING_CH3">
            <wire x2="5200" y1="2928" y2="2928" x1="5168" />
        </branch>
        <branch name="WING_CH4">
            <wire x2="5200" y1="2960" y2="2960" x1="5168" />
        </branch>
        <branch name="WING_CH5">
            <wire x2="5200" y1="2992" y2="2992" x1="5168" />
        </branch>
        <branch name="WING_CH6">
            <wire x2="5200" y1="3024" y2="3024" x1="5168" />
        </branch>
        <branch name="WING_CH7">
            <wire x2="5200" y1="3056" y2="3056" x1="5168" />
        </branch>
        <iomarker fontsize="28" x="5200" y="1392" name="WING_AL0" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1424" name="WING_AL1" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1456" name="WING_AL2" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1488" name="WING_AL3" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1520" name="WING_AL4" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1552" name="WING_AL5" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1584" name="WING_AL6" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1616" name="WING_AL7" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1680" name="WING_AH0" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1712" name="WING_AH1" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1744" name="WING_AH2" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1776" name="WING_AH3" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1808" name="WING_AH4" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1840" name="WING_AH5" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1872" name="WING_AH6" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1904" name="WING_AH7" orien="R0" />
        <iomarker fontsize="28" x="5200" y="1968" name="WING_BL0" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2000" name="WING_BL1" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2032" name="WING_BL2" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2064" name="WING_BL3" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2096" name="WING_BL4" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2128" name="WING_BL5" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2160" name="WING_BL6" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2192" name="WING_BL7" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2256" name="WING_BH0" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2288" name="WING_BH1" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2320" name="WING_BH2" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2352" name="WING_BH3" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2384" name="WING_BH4" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2416" name="WING_BH5" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2448" name="WING_BH6" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2480" name="WING_BH7" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2544" name="WING_CL0" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2576" name="WING_CL1" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2608" name="WING_CL2" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2640" name="WING_CL3" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2672" name="WING_CL4" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2704" name="WING_CL5" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2736" name="WING_CL6" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2768" name="WING_CL7" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2832" name="WING_CH0" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2864" name="WING_CH1" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2896" name="WING_CH2" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2928" name="WING_CH3" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2960" name="WING_CH4" orien="R0" />
        <iomarker fontsize="28" x="5200" y="2992" name="WING_CH5" orien="R0" />
        <iomarker fontsize="28" x="5200" y="3024" name="WING_CH6" orien="R0" />
        <iomarker fontsize="28" x="5200" y="3056" name="WING_CH7" orien="R0" />
        <branch name="RXD">
            <wire x2="336" y1="224" y2="224" x1="304" />
        </branch>
        <branch name="SPI_MISO">
            <wire x2="336" y1="160" y2="160" x1="304" />
        </branch>
        <branch name="CLK">
            <wire x2="336" y1="96" y2="96" x1="304" />
        </branch>
        <iomarker fontsize="28" x="304" y="224" name="RXD" orien="R180" />
        <iomarker fontsize="28" x="304" y="160" name="SPI_MISO" orien="R180" />
        <iomarker fontsize="28" x="304" y="96" name="CLK" orien="R180" />
        <branch name="SPI_CS">
            <wire x2="4736" y1="192" y2="192" x1="4704" />
        </branch>
        <branch name="TXD">
            <wire x2="4736" y1="160" y2="160" x1="4704" />
        </branch>
        <branch name="SPI_MOSI">
            <wire x2="4736" y1="128" y2="128" x1="4704" />
        </branch>
        <branch name="SPI_SCK">
            <wire x2="4736" y1="96" y2="96" x1="4704" />
        </branch>
        <iomarker fontsize="28" x="4736" y="192" name="SPI_CS" orien="R0" />
        <iomarker fontsize="28" x="4736" y="160" name="TXD" orien="R0" />
        <iomarker fontsize="28" x="4736" y="128" name="SPI_MOSI" orien="R0" />
        <iomarker fontsize="28" x="4736" y="96" name="SPI_SCK" orien="R0" />
        <branch name="XLXN_430(61:0)">
            <wire x2="4336" y1="816" y2="848" x1="4336" />
        </branch>
        <branch name="XLXN_431(33:0)">
            <wire x2="4352" y1="816" y2="848" x1="4352" />
        </branch>
        <instance x="4272" y="912" name="XLXI_37" orien="R0" />
        <branch name="XLXN_432(61:0)">
            <wire x2="3888" y1="816" y2="848" x1="3888" />
        </branch>
        <branch name="XLXN_433(33:0)">
            <wire x2="3904" y1="816" y2="848" x1="3904" />
        </branch>
        <instance x="3824" y="912" name="XLXI_36" orien="R0" />
        <branch name="XLXN_434(61:0)">
            <wire x2="3440" y1="816" y2="848" x1="3440" />
        </branch>
        <branch name="XLXN_435(33:0)">
            <wire x2="3456" y1="816" y2="848" x1="3456" />
        </branch>
        <instance x="3376" y="912" name="XLXI_35" orien="R0" />
        <branch name="XLXN_436(61:0)">
            <wire x2="2976" y1="816" y2="848" x1="2976" />
        </branch>
        <branch name="XLXN_437(33:0)">
            <wire x2="2992" y1="816" y2="848" x1="2992" />
        </branch>
        <instance x="2912" y="912" name="XLXI_34" orien="R0" />
        <branch name="XLXN_442(61:0)">
            <wire x2="1632" y1="816" y2="848" x1="1632" />
        </branch>
        <branch name="XLXN_443(33:0)">
            <wire x2="1648" y1="816" y2="848" x1="1648" />
        </branch>
        <instance x="1568" y="912" name="XLXI_31" orien="R0" />
        <branch name="XLXN_444(61:0)">
            <wire x2="1184" y1="816" y2="848" x1="1184" />
        </branch>
        <branch name="XLXN_445(33:0)">
            <wire x2="1200" y1="816" y2="848" x1="1200" />
        </branch>
        <instance x="1120" y="912" name="XLXI_30" orien="R0" />
        <branch name="XLXN_446(61:0)">
            <wire x2="736" y1="816" y2="848" x1="736" />
        </branch>
        <branch name="XLXN_447(33:0)">
            <wire x2="752" y1="816" y2="848" x1="752" />
        </branch>
        <instance x="672" y="912" name="XLXI_29" orien="R0" />
        <branch name="XLXN_408(147:0)">
            <wire x2="4576" y1="1200" y2="1344" x1="4576" />
            <wire x2="4608" y1="1344" y2="1344" x1="4576" />
            <wire x2="5296" y1="1200" y2="1200" x1="4576" />
            <wire x2="5296" y1="352" y2="352" x1="4704" />
            <wire x2="5296" y1="352" y2="1200" x1="5296" />
        </branch>
        <branch name="XLXN_409(97:0)">
            <wire x2="4592" y1="1216" y2="1328" x1="4592" />
            <wire x2="4608" y1="1328" y2="1328" x1="4592" />
            <wire x2="5312" y1="1216" y2="1216" x1="4592" />
            <wire x2="5312" y1="336" y2="336" x1="4704" />
            <wire x2="5312" y1="336" y2="1216" x1="5312" />
        </branch>
        <branch name="XLXN_335(7:0)">
            <wire x2="4608" y1="1488" y2="1488" x1="4576" />
        </branch>
        <branch name="XLXN_336(7:0)">
            <wire x2="4608" y1="1552" y2="1552" x1="4576" />
        </branch>
        <branch name="XLXN_333(7:0)">
            <wire x2="4608" y1="1776" y2="1776" x1="4576" />
        </branch>
        <branch name="XLXN_334(7:0)">
            <wire x2="4608" y1="1840" y2="1840" x1="4576" />
        </branch>
        <branch name="XLXN_331(7:0)">
            <wire x2="4608" y1="2048" y2="2048" x1="4576" />
        </branch>
        <branch name="XLXN_332(7:0)">
            <wire x2="4608" y1="2112" y2="2112" x1="4576" />
        </branch>
        <branch name="XLXN_329(7:0)">
            <wire x2="4608" y1="2352" y2="2352" x1="4576" />
        </branch>
        <branch name="XLXN_330(7:0)">
            <wire x2="4608" y1="2416" y2="2416" x1="4576" />
        </branch>
        <branch name="XLXN_327(7:0)">
            <wire x2="4608" y1="2640" y2="2640" x1="4576" />
        </branch>
        <branch name="XLXN_328(7:0)">
            <wire x2="4608" y1="2704" y2="2704" x1="4576" />
        </branch>
        <instance x="4352" y="1584" name="XLXI_27" orien="R0">
        </instance>
        <instance x="4352" y="1872" name="XLXI_26" orien="R0">
        </instance>
        <instance x="4352" y="2144" name="XLXI_25" orien="R0">
        </instance>
        <instance x="4352" y="2448" name="XLXI_24" orien="R0">
        </instance>
        <instance x="4352" y="2736" name="XLXI_23" orien="R0">
        </instance>
        <instance x="4640" y="3088" name="XLXI_38" orien="R0">
        </instance>
        <branch name="XLXN_448(7:0)">
            <wire x2="4608" y1="2928" y2="2928" x1="4576" />
        </branch>
        <branch name="XLXN_449(7:0)">
            <wire x2="4608" y1="2992" y2="2992" x1="4576" />
        </branch>
        <instance x="4176" y="3072" name="XLXI_39" orien="R0">
        </instance>
        <branch name="XLXN_450">
            <wire x2="4160" y1="2864" y2="2864" x1="2288" />
        </branch>
        <branch name="XLXN_451">
            <wire x2="4160" y1="2880" y2="2880" x1="2288" />
        </branch>
        <branch name="XLXN_452">
            <wire x2="4160" y1="2928" y2="2928" x1="2288" />
        </branch>
        <branch name="XLXN_453">
            <wire x2="4160" y1="2944" y2="2944" x1="2288" />
        </branch>
        <branch name="XLXN_454">
            <wire x2="4160" y1="2992" y2="2992" x1="2288" />
        </branch>
        <branch name="XLXN_455">
            <wire x2="4160" y1="3008" y2="3008" x1="2288" />
        </branch>
        <branch name="XLXN_456">
            <wire x2="4160" y1="3040" y2="3040" x1="2288" />
        </branch>
        <branch name="XLXN_457">
            <wire x2="4160" y1="3056" y2="3056" x1="2288" />
        </branch>
        <branch name="XLXN_458(61:0)">
            <wire x2="2080" y1="816" y2="2784" x1="2080" />
        </branch>
        <branch name="XLXN_459(33:0)">
            <wire x2="2096" y1="816" y2="2784" x1="2096" />
        </branch>
        <instance x="1888" y="3088" name="XLXI_40" orien="R0">
        </instance>
        <branch name="XLXN_460(61:0)">
            <wire x2="2544" y1="816" y2="848" x1="2544" />
        </branch>
        <branch name="XLXN_461(33:0)">
            <wire x2="2560" y1="816" y2="848" x1="2560" />
        </branch>
        <instance x="2448" y="960" name="XLXI_41" orien="R0" />
        <branch name="XLXN_462">
            <wire x2="1888" y1="2864" y2="2864" x1="1856" />
        </branch>
        <branch name="XLXN_463">
            <wire x2="4768" y1="1104" y2="1104" x1="1424" />
            <wire x2="1424" y1="1104" y2="2864" x1="1424" />
            <wire x2="1472" y1="2864" y2="2864" x1="1424" />
            <wire x2="4768" y1="544" y2="544" x1="4704" />
            <wire x2="4768" y1="544" y2="1104" x1="4768" />
        </branch>
        <instance x="336" y="752" name="XLXI_43" orien="R0">
        </instance>
        <instance x="1472" y="2896" name="XLXI_44" orien="R0">
        </instance>
    </sheet>
</drawing>

repository: chcbaram/FPGA

repo_name: chcbaram/FPGA

extension: sch


text:
// Code generated by smithy-go-codegen DO NOT EDIT.

package cloudfront

import (
	"context"
	awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
	"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
	"github.com/aws/aws-sdk-go-v2/service/cloudfront/types"
	"github.com/awslabs/smithy-go/middleware"
	smithyhttp "github.com/awslabs/smithy-go/transport/http"
)

// Get the information about a distribution.
func (c *Client) GetDistribution(ctx context.Context, params *GetDistributionInput, optFns ...func(*Options)) (*GetDistributionOutput, error) {
	if params == nil {
		params = &GetDistributionInput{}
	}

	result, metadata, err := c.invokeOperation(ctx, "GetDistribution", params, optFns, addOperationGetDistributionMiddlewares)
	if err != nil {
		return nil, err
	}

	out := result.(*GetDistributionOutput)
	out.ResultMetadata = metadata
	return out, nil
}

// The request to get a distribution's information.
type GetDistributionInput struct {

	// The distribution's ID. If the ID is empty, an empty distribution configuration
	// is returned.
	//
	// This member is required.
	Id *string
}

// The returned result of the corresponding request.
type GetDistributionOutput struct {

	// The distribution's information.
	Distribution *types.Distribution

	// The current version of the distribution's information. For example:
	// E2QWRUHAPOMQZL.
	ETag *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

func addOperationGetDistributionMiddlewares(stack *middleware.Stack, options Options) (err error) {
	err = stack.Serialize.Add(&awsRestxml_serializeOpGetDistribution{}, middleware.After)
	if err != nil {
		return err
	}
	err = stack.Deserialize.Add(&awsRestxml_deserializeOpGetDistribution{}, middleware.After)
	if err != nil {
		return err
	}
	awsmiddleware.AddRequestInvocationIDMiddleware(stack)
	smithyhttp.AddContentLengthMiddleware(stack)
	addResolveEndpointMiddleware(stack, options)
	v4.AddComputePayloadSHA256Middleware(stack)
	addRetryMiddlewares(stack, options)
	addHTTPSignerV4Middleware(stack, options)
	awsmiddleware.AddAttemptClockSkewMiddleware(stack)
	addClientUserAgent(stack)
	smithyhttp.AddErrorCloseResponseBodyMiddleware(stack)
	smithyhttp.AddCloseResponseBodyMiddleware(stack)
	addOpGetDistributionValidationMiddleware(stack)
	stack.Initialize.Add(newServiceMetadataMiddleware_opGetDistribution(options.Region), middleware.Before)
	addRequestIDRetrieverMiddleware(stack)
	addResponseErrorMiddleware(stack)
	return nil
}

func newServiceMetadataMiddleware_opGetDistribution(region string) awsmiddleware.RegisterServiceMetadata {
	return awsmiddleware.RegisterServiceMetadata{
		Region:        region,
		ServiceID:     ServiceID,
		SigningName:   "cloudfront",
		OperationName: "GetDistribution",
	}
}

license_type: permissive

branch_name: refs/heads/master

extension: go


text:
SECTION = "x11/base"
include x11_cvs.bb

EXTRA_OECONF = "--disable-xcms --disable-xlocale --disable-xkb"

license: MIT

repository: BackupTheBerlios/openslug-svn

repo_name: BackupTheBerlios/openslug-svn

extension: bb


text:
package main

import (
	"encoding/json"
	"log"
	"net/http"
	"time"

	"github.com/Cistern/cistern/internal/query"
	"github.com/Preetam/siesta"
)

func service() *siesta.Service {
	service := siesta.NewService("/api")
	service.Route("OPTIONS", "/collections/:collection/query", "preflight request", func(w http.ResponseWriter, r *http.Request) {
		w.Header().Set("Access-Control-Allow-Origin", "*")
		w.Header().Set("Access-Control-Allow-Headers", r.Header.Get("Access-Control-Request-Headers"))
	})
	service.Route("POST", "/collections/:collection/query", "query a collection", func(w http.ResponseWriter, r *http.Request) {
		w.Header().Set("Access-Control-Allow-Origin", "*")

		var params siesta.Params
		collectionName := params.String("collection", "", "collection name")
		queryString := params.String("query", "", "query string")
		start := params.Int64("start", 0, "Start Unix timestamp")
		end := params.Int64("end", 0, "End Unix timestamp")
		err := params.Parse(r.Form)
		if err != nil {
			log.Println(err)
			w.WriteHeader(http.StatusBadRequest)
			return
		}

		collectionsLock.Lock()
		collection, present := Collections[*collectionName]
		collectionsLock.Unlock()

		if !present {
			w.WriteHeader(http.StatusNotFound)
			return
		}

		queryDesc, err := query.Parse(*queryString)
		if err != nil {
			log.Println(err)
			w.WriteHeader(http.StatusBadRequest)
			return
		}

		log.Println("Got query", *queryString)

		queryDesc.TimeRange.Start = time.Unix(*start, 0)
		queryDesc.TimeRange.End = time.Unix(*end, 0)

		if queryDesc.PointSize > 0 {
			// Round off timestamps
			queryDesc.TimeRange.Start = queryDesc.TimeRange.Start.Truncate(time.Duration(queryDesc.PointSize * 1000))
			queryDesc.TimeRange.End = queryDesc.TimeRange.End.Truncate(time.Duration(queryDesc.PointSize * 1000))
		}

		for i, filter := range queryDesc.Filters {
			var v interface{}
			err := json.Unmarshal([]byte(filter.Value.(json.RawMessage)), &v)
			if err != nil {
				w.WriteHeader(http.StatusInternalServerError)
				log.Println(err)
				return
			}
			filter.Value = v
			queryDesc.Filters[i] = filter
		}

		result, err := collection.Query(*queryDesc)
		if err != nil {
			w.WriteHeader(http.StatusInternalServerError)
			log.Println(err)
		}

		json.NewEncoder(w).Encode(result)
	})

	service.Route("POST", "/collections/:collection/compact", "compacts a collection", func(w http.ResponseWriter, r *http.Request) {
		var params siesta.Params
		collectionName := params.String("collection", "", "collection name")
		err := params.Parse(r.Form)
		if err != nil {
			log.Println(err)
			w.WriteHeader(http.StatusBadRequest)
			return
		}

		collectionsLock.Lock()
		collection, present := Collections[*collectionName]
		collectionsLock.Unlock()

		if !present {
			w.WriteHeader(http.StatusNotFound)
			return
		}

		err = collection.Compact()
		if err != nil {
			w.WriteHeader(http.StatusInternalServerError)
			log.Println(err)
		}
	})
	return service
}

repository: Cistern/cistern

repo_name: Cistern/cistern

gha_license_id: MIT

gha_language: Go


text:
SUMMARY = "File path utility"
HOMEPAGE = "https://metacpan.org/release/Path-Tiny"

LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://README;beginline=1119;endline=1124;md5=63fd8b3ccdda43923b352a880cb37e36"

SRC_URI = "https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-${PV}.tar.gz"

SRC_URI[md5sum] = "1a7fbdccc4585074ce4419b7bec0966c"
SRC_URI[sha256sum] = "3c49482be2b3eb7ddd7e73a5b90cff648393f5d5de334ff126ce7a3632723ff5"

S = "${WORKDIR}/Path-Tiny-${PV}"

inherit cpan

BBCLASSEXTEND = "native"


text:
#
# Trusted firmware-A 2.1
#

require trusted-firmware-a.inc

# Use TF-A for version
SRCREV_FORMAT = "tfa"

# TF-A v2.1
SRCREV_tfa = "e1286bdb968ee74fc52f96cf303a4218e1ae2950"

LIC_FILES_CHKSUM += "file://license.rst;md5=c709b197e22b81ede21109dbffd5f363"

#
# mbed TLS source
# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
#

SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls;branch=mbedtls-2.16"

# mbed TLS v2.16.2
SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"

LIC_FILES_CHKSUM_MBEDTLS = " \
    file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
    file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
    "


text:
package zlib

import (
	"bytes"
	"compress/zlib"
	"io"
	"testing"
)

// real world data benchmarks

const compressedMcPacketsLoc = "https://raw.githubusercontent.com/4kills/zlib_benchmark/master/compressed_mc_packets.json"

var compressedMcPackets [][]byte

func BenchmarkReadBytesAllMcPacketsDefault(b *testing.B) {
	loadPacketsIfNil(&compressedMcPackets, compressedMcPacketsLoc)
	loadPacketsIfNil(&decompressedMcPackets, decompressedMcPacketsLoc)

	benchmarkReadBytesMcPacketsGeneric(compressedMcPackets, b)
}

func benchmarkReadBytesMcPacketsGeneric(input [][]byte, b *testing.B) {
	r, _ := NewReader(nil)
	defer r.Close()

	b.ResetTimer()

	reportBytesPerChunk(input, b)

	for i := 0; i < b.N; i++ {
		for j, v := range input {
			r.ReadBuffer(v, make([]byte, len(decompressedMcPackets[j])))
		}
	}
}

func BenchmarkReadAllMcPacketsDefault(b *testing.B) {
	loadPacketsIfNil(&compressedMcPackets, compressedMcPacketsLoc)
	buf := &bytes.Buffer{}
	r, _ := NewReader(buf)

	benchmarkReadMcPacketsGeneric(r, buf, compressedMcPackets, b)
}

func BenchmarkReadAllMcPacketsDefaultStd(b *testing.B) {
	loadPacketsIfNil(&compressedMcPackets, compressedMcPacketsLoc)

	buf := bytes.NewBuffer(compressedMcPackets[0]) // the std library needs this or else I can't create a reader
	r, _ := zlib.NewReader(buf)
	defer r.Close()

	decompressed := make([]byte, 300000)

	b.ResetTimer()

	reportBytesPerChunk(compressedMcPackets, b)

	for i := 0; i < b.N; i++ {
		for _, v := range compressedMcPackets {
			b.StopTimer()
			res, _ := r.(zlib.Resetter)
			res.Reset(bytes.NewBuffer(v), nil)
			b.StartTimer()

			r.Read(decompressed)
		}
	}
}

func benchmarkReadMcPacketsGeneric(r io.ReadCloser, underlyingReader *bytes.Buffer, input [][]byte, b *testing.B) {
	defer r.Close()
	out := make([]byte, 300000)

	b.ResetTimer()

	reportBytesPerChunk(input, b)

	for i := 0; i < b.N; i++ {
		for _, v := range input {
			b.StopTimer()
			res, _ := r.(Resetter)
			res.Reset(bytes.NewBuffer(v), nil)
			b.StartTimer()

			r.Read(out)
		}
	}
}

// laboratory condition benchmarks

func BenchmarkReadBytes64BBestCompression(b *testing.B) {
	benchmarkReadBytesLevel(xByte(64), BestCompression, b)
}

func BenchmarkReadBytes8192BBestCompression(b *testing.B) {
	benchmarkReadBytesLevel(xByte(8192), BestCompression, b)
}

func BenchmarkReadBytes65536BBestCompression(b *testing.B) {
	benchmarkReadBytesLevel(xByte(65536), BestCompression, b)
}

func BenchmarkReadBytes64BBestSpeed(b *testing.B) {
	benchmarkReadBytesLevel(xByte(64), BestSpeed, b)
}

func BenchmarkReadBytes8192BBestSpeed(b *testing.B) {
	benchmarkReadBytesLevel(xByte(8192), BestSpeed, b)
}

func BenchmarkReadBytes65536BBestSpeed(b *testing.B) {
	benchmarkReadBytesLevel(xByte(65536), BestSpeed, b)
}

func BenchmarkReadBytes64BDefault(b *testing.B) {
	benchmarkReadBytesLevel(xByte(64), DefaultCompression, b)
}

func BenchmarkReadBytes8192BDefault(b *testing.B) {
	benchmarkReadBytesLevel(xByte(8192), DefaultCompression, b)
}

func BenchmarkReadBytes65536BDefault(b *testing.B) {
	benchmarkReadBytesLevel(xByte(65536), DefaultCompression, b)
}

func benchmarkReadBytesLevel(input []byte, level int, b *testing.B) {
	w, _ := NewWriterLevel(nil, level)
	defer w.Close()

	compressed, _ := w.WriteBuffer(input, make([]byte, len(input)))

	r, _ := NewReader(nil)
	defer r.Close()

	b.ResetTimer()

	for i := 0; i < b.N; i++ {
		r.ReadBuffer(compressed, nil)
	}
}

func BenchmarkRead64BBestCompression(b *testing.B) {
	benchmarkReadLevel(xByte(64), BestCompression, b)
}

func BenchmarkRead8192BBestCompression(b *testing.B) {
	benchmarkReadLevel(xByte(8192), BestCompression, b)
}

func BenchmarkRead65536BBestCompression(b *testing.B) {
	benchmarkReadLevel(xByte(65536), BestCompression, b)
}

func BenchmarkRead64BBestSpeed(b *testing.B) {
	benchmarkReadLevel(xByte(64), BestSpeed, b)
}

func BenchmarkRead8192BBestSpeed(b *testing.B) {
	benchmarkReadLevel(xByte(8192), BestSpeed, b)
}

func BenchmarkRead65536BBestSpeed(b *testing.B) {
	benchmarkReadLevel(xByte(65536), BestSpeed, b)
}

func BenchmarkRead64BDefault(b *testing.B) {
	benchmarkReadLevel(xByte(64), DefaultCompression, b)
}

func BenchmarkRead8192BDefault(b *testing.B) {
	benchmarkReadLevel(xByte(8192), DefaultCompression, b)
}

func BenchmarkRead65536BDefault(b *testing.B) {
	benchmarkReadLevel(xByte(65536), DefaultCompression, b)
}

func benchmarkReadLevel(input []byte, level int, b *testing.B) {
	buf := &bytes.Buffer{}
	r, _ := NewReader(buf)
	benchmarkReadLevelGeneric(r, buf, input, level, b)
}

func benchmarkReadLevelGeneric(r io.ReadCloser, underlyingReader *bytes.Buffer, input []byte, level int, b *testing.B) {
	w, _ := NewWriterLevel(nil, level)
	defer w.Close()

	compressed, _ := w.WriteBuffer(input, make([]byte, len(input)))

	defer r.Close()

	decompressed := make([]byte, len(input))

	b.ResetTimer()

	for i := 0; i < b.N; i++ {
		b.StopTimer()
		res := r.(Resetter)
		res.Reset(bytes.NewBuffer(compressed), nil)
		b.StartTimer()
		var err error
		for err != io.EOF {
			_, err = r.Read(decompressed)
		}
	}
}

license: Zlib

repository: sensorphalanx/go-zlib

repo_name: sensorphalanx/go-zlib


text:
DESCRIPTION = "webOS ports Software Development Kit"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"

ALLOW_EMPTY_${PN} = "1"

require packagegroup-webos-ports-sdk.inc

PACKAGES = "${PN} ${PN}-dbg"

RDEPENDS_${PN} = "\
    packagegroup-core-standalone-sdk-target \
    ${SDK-BASE} \
    ${SDK-EXTRAS}"

repository: nizovn/meta-webos-ports

repo_name: nizovn/meta-webos-ports


text:
//
// DISCLAIMER
//
// Copyright 2016-2023 ArangoDB GmbH, Cologne, Germany
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Copyright holder is ArangoDB GmbH, Cologne, Germany
//

package reconcile

import (
	"context"
	"time"

	api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1"
	"github.com/arangodb/kube-arangodb/pkg/deployment/actions"
	"github.com/arangodb/kube-arangodb/pkg/deployment/features"
	"github.com/arangodb/kube-arangodb/pkg/deployment/reconcile/shared"
	"github.com/arangodb/kube-arangodb/pkg/util/k8sutil"
)

func (r *Reconciler) createBackupInProgressConditionPlan(ctx context.Context, apiObject k8sutil.APIObject,
	spec api.DeploymentSpec, status api.DeploymentStatus,
	context PlanBuilderContext) api.Plan {

	if spec.Mode.Get() != api.DeploymentModeCluster {
		return nil
	}

	cache, ok := context.GetAgencyCache()
	if !ok {
		return nil
	}

	currentCondition, currentConditionExists := status.Conditions.Get(api.ConditionTypeBackupInProgress)

	maintenance := cache.Target.HotBackup.Create

	if currentConditionExists {
		// Condition exists
		if !maintenance.Exists() {
			// Condition needs to be removed
			return api.Plan{
				shared.RemoveConditionActionV2("Backup not in progress", api.ConditionTypeBackupInProgress),
			}
		}

		// Backup is in progress

		hash := maintenance.Hash()

		if !currentCondition.IsTrue() || currentCondition.Hash != hash {
			return api.Plan{
				shared.UpdateConditionActionV2("Backup in progress", api.ConditionTypeBackupInProgress, true, "Backup In Progress", "", hash),
			}
		}

		return nil
	} else {
		if maintenance.Exists() {
			return api.Plan{
				shared.UpdateConditionActionV2("Backup in progress", api.ConditionTypeBackupInProgress, true, "Backup In Progress", "", maintenance.Hash()),
			}
		}

		return nil
	}
}

func (r *Reconciler) createMaintenanceConditionPlan(ctx context.Context, apiObject k8sutil.APIObject,
	spec api.DeploymentSpec, status api.DeploymentStatus,
	context PlanBuilderContext) api.Plan {

	if spec.Mode.Get() != api.DeploymentModeCluster {
		return nil
	}

	cache, ok := context.GetAgencyCache()
	if !ok {
		return nil
	}

	currentCondition, currentConditionExists := status.Conditions.Get(api.ConditionTypeMaintenance)

	maintenance := cache.Supervision.Maintenance

	if currentConditionExists {
		// Condition exists
		if !maintenance.Exists() {
			// Condition needs to be removed
			return api.Plan{
				shared.RemoveConditionActionV2("Maintenance Disabled", api.ConditionTypeMaintenance),
			}
		}

		// Backup is in progress

		hash := maintenance.Hash()

		if !currentCondition.IsTrue() || currentCondition.Hash != hash {
			return api.Plan{
				shared.UpdateConditionActionV2("Maintenance Enabled", api.ConditionTypeMaintenance, true, "Maintenance Enabled", "", hash),
			}
		}

		return nil
	} else {
		if maintenance.Exists() {
			return api.Plan{
				shared.UpdateConditionActionV2("Maintenance Enabled", api.ConditionTypeMaintenance, true, "Maintenance Enabled", "", maintenance.Hash()),
			}
		}

		return nil
	}
}

func (r *Reconciler) createMaintenanceManagementPlan(ctx context.Context, apiObject k8sutil.APIObject,
	spec api.DeploymentSpec, status api.DeploymentStatus,
	planCtx PlanBuilderContext) api.Plan {
	if spec.Mode.Get() == api.DeploymentModeSingle {
		return nil
	}

	if !features.Maintenance().Enabled() {
		// Maintenance feature is not enabled
		return nil
	}

	agencyState, agencyOK := planCtx.GetAgencyCache()
	if !agencyOK {
		r.log.Error("Unable to get agency mode")
		return nil
	}

	if agencyState.Target.HotBackup.Create.Exists() {
		r.log.Info("HotBackup in progress")
		return nil
	}

	enabled := agencyState.Supervision.Maintenance.Exists()
	c, cok := status.Conditions.Get(api.ConditionTypeMaintenance)

	if (cok && c.IsTrue()) != enabled {
		// Condition not yet propagated
		r.log.Info("Condition not yet propagated")
		return nil
	}

	if cok {
		if t := c.LastTransitionTime.Time; !t.IsZero() {
			if time.Since(t) < 5*time.Second {
				// Did not elapse 5 s
				return nil
			}
		}
	}

	if !enabled && spec.Database.GetMaintenance() {
		r.log.Info("Enabling maintenance mode")
		return api.Plan{actions.NewClusterAction(api.ActionTypeEnableMaintenance)}
	}

	if enabled && !spec.Database.GetMaintenance() {
		r.log.Info("Disabling maintenance mode")
		return api.Plan{actions.NewClusterAction(api.ActionTypeDisableMaintenance)}
	}

	return nil
}

repository: arangodb/kube-arangodb

repo_name: arangodb/kube-arangodb


text:
DESCRIPTION = "Linux Bluetooth Stack HCI Debugger Tool."
SECTION = "console"
PRIORITY = "optional"
DEPENDS = "bluez-libs"
LICENSE = "GPLv2"
PR = "r1"

SRC_URI = "http://bluez.sourceforge.net/download/bluez-hcidump-${PV}.tar.gz"
S = "${WORKDIR}/bluez-hcidump-${PV}"

EXTRA_OECONF = "--with-bluez-libs=${STAGING_LIBDIR} --with-bluez-includes=${STAGING_INCDIR}"

inherit autotools

SRC_URI[md5sum] = "5704737aaf72104eeaf77335218a1827"
SRC_URI[sha256sum] = "689e39f9432ab90af5f390d86cb46e06c35693d01ea29aec4e41c4f9e315f49f"

repository: overo/overo-oe-natty

repo_name: overo/overo-oe-natty

branch_name: HEAD


text:
/*
 * InpaintFilter.hpp
 *
 *  Created on: May 6, 2017
 *      Author: Tanja Baumann, Peter Fankhauser
 *   Institute: ETH Zurich, ANYbotics
 */

#pragma once

#include <filters/filter_base.hpp>

//OpenCV
#include "grid_map_cv/grid_map_cv.hpp"
#include <opencv2/opencv.hpp>

#include <vector>
#include <string>

namespace grid_map {

/*!
 * Uses OpenCV function to inpaint/fill holes in the input layer.
 */
template<typename T>
class InpaintFilter : public filters::FilterBase<T> {

 public:
  /*!
   * Constructor
   */
  InpaintFilter();

  /*!
   * Destructor.
   */
  virtual ~InpaintFilter();

  /*!
   * Configures the filter from parameters on the Parameter Server
   */
  virtual bool configure();

  /*!
   * Adds a new output layer to the map.
   * Uses the OpenCV function inpaint holes in the input layer.
   * Saves to filled map in the outputlayer.
   * @param mapIn grid map containing input layer
   * @param mapOut grid map containing mapIn and inpainted input layer.
   */
  virtual bool update(const T& mapIn, T& mapOut);

 private:

  //! Inpainting radius.
  double radius_;

  //! Input layer name.
  std::string inputLayer_;

  //! Output layer name.
  std::string outputLayer_;
};

} /* namespace */

extension: hpp


text:
@article{boucher_detecting_2020,
 abstract = {The hemlock woolly adelgid (HWA; Adelges tsugae) is an invasive insect infestation that is spreading into the forests of the northeastern United States, driven by the warmer winter temperatures associated with climate change. The initial stages of this disturbance are difficult to detect with passive optical remote sensing, since the insect often causes its host species, eastern hemlock trees (Tsuga canadensis), to defoliate in the midstory and understory before showing impacts in the overstory. New active remote sensing technologies—such as the recently launched NASA Global Ecosystem Dynamics Investigation (GEDI) spaceborne lidar—can address this limitation by penetrating canopy gaps and recording lower canopy structural changes. This study explores new opportunities for monitoring the HWA infestation with airborne lidar scanning (ALS) and GEDI spaceborne lidar data. GEDI waveforms were simulated using airborne lidar datasets from an HWA-infested forest plot at the Harvard Forest ForestGEO site in central Massachusetts. Two airborne lidar instruments, the NASA G-LiHT and the NEON AOP, overflew the site in 2012 and 2016. GEDI waveforms were simulated from each airborne lidar dataset, and the change in waveform metrics from 2012 to 2016 was compared to field-derived hemlock mortality at the ForestGEO site. Hemlock plots were shown to be undergoing dynamic changes as a result of the HWA infestation, losing substantial plant area in the middle canopy, while still growing in the upper canopy. Changes in midstory plant area (PAI 11–12 m above ground) and overall canopy permeability (indicated by RH10) accounted for 60% of the variation in hemlock mortality in a logistic regression model. The robustness of these structure-condition relationships held even when simulated waveforms were treated as real GEDI data with added noise and sparse spatial coverage. These results show promise for future disturbance monitoring studies with ALS and GEDI lidar data.},
 author = {Boucher, Peter Brehm and Hancock, Steven and Orwig, David A and Duncanson, Laura and Armston, John and Tang, Hao and Krause, Keith and Cook, Bruce and Paynter, Ian and Li, Zhan and Elmes, Arthur and Schaaf, Crystal},
 copyright = {All rights reserved},
 doi = {10.3390/rs12081304},
 file = {Boucher et al. - 2020 - Remote Sensing - Detecting Change in Forest Structure with Simulated GEDI Lidar Waveforms A Case Study of the He.pdf:C\:\\Users\\zhanl\\Google Drive\\Mendeley_Desktop\\Boucher et al. - 2020 - Remote Sensing - Detecting Change in Forest Structure with Simulated GEDI Lidar Waveforms A Case Study of the He.pdf:application/pdf},
 journal = {Remote Sensing},
 keywords = {10, 12, 1304, 2020, 3390, com, disturbance, doi, g-liht, G-LiHT, gedi, GEDI, hemlock woolly adelgid, invasive, journal, lidar, mdpi, neon, NEON, remote sens, remotesensing, rs12081304, www},
 note = {ISBN: 2072-4292},
 number = {8},
 title = {Detecting Change in Forest Structure with Simulated GEDI Lidar Waveforms: A Case Study of the Hemlock Woolly Adelgid (HWA; Adelges tsugae) Infestation},
 volume = {12},
 year = {2020}
}

extension: bib


text:
/*
 * Copyright 2020 Intel Corporation, Inc
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package types

// TODO - should move to common module types location - e.g. in orchestrator
type ClientDbInfo struct {
	StoreName  string // name of the mongodb collection to use for client documents
	TagMeta    string // attribute key name for the json data of a client document
	TagContent string // attribute key name for the file data of a client document
	TagState   string // attribute key name for context object in App Context
}


text:
package stnet

import (
	"fmt"
	"net/http"
)

type ServiceImp interface {
	Init() bool
	Loop()
	Destroy()

	//in hash thread by HashProcessor
	HandleMessage(current *CurrentContent, msgID uint64, msg interface{})
	//in main thread of service
	HandleError(*CurrentContent, error)
	SessionClose(sess *Session)
	HeartBeatTimeOut(sess *Session)
	//in random thread
	SessionOpen(sess *Session)

	// Unmarshal protocol parsed
	//lenParsed is the length read from 'data'.
	//msgID and msg are messages parsed from data.
	//when lenParsed <= 0 or msgID < 0,msg and err will be ignored.
	Unmarshal(sess *Session, data []byte) (lenParsed int, msgID int64, msg interface{}, err error)
	// HashProcessor sess msgID msg are returned by func of Unmarshal
	//processorID is the thread who process this msg;it should between 1-ProcessorThreadsNum.
	//if processorID == 0, it only uses main thread of the service.
	//if processorID < 0, it will use hash of session id.
	HashProcessor(current *CurrentContent, msgID uint64, msg interface{}) (processorID int)
}

type LoopService interface {
	Init() bool
	Loop()
}

type HttpService interface {
	Init() bool
	Loop()
	Handle(current *CurrentContent, req *http.Request, e error)
	HashProcessor(current *CurrentContent, req *http.Request) (processorID int)
}

type JsonProto struct {
	CmdId   uint64 `json:"id"`
	CmdData []byte `json:"cmd"`
}
type JsonService interface {
	Init() bool
	Loop()
	Handle(current *CurrentContent, cmd JsonProto, e error)
	HashProcessor(current *CurrentContent, cmd JsonProto) (processorID int)
}

func HttpRspOk(current *CurrentContent) {
	sRspPayload := "HTTP/1.1 200 OK\r\nContent-Length:0\r\n\r\n"
	current.Sess.Send([]byte(sRspPayload), current.Peer)
}
func HttpRsp404(current *CurrentContent) {
	sRspPayload := "HTTP/1.1 404 Not Found\r\nContent-Length: 0\r\n\r\n"
	current.Sess.Send([]byte(sRspPayload), current.Peer)
}
func HttpRspString(current *CurrentContent, rsp string) {
	sRspPayload := fmt.Sprintf("HTTP/1.1 200 OK\r\nContent-Length:%d\r\n\r\n%s", len(rsp), rsp)
	current.Sess.Send([]byte(sRspPayload), current.Peer)
}

repository: gotask/gost

repo_name: gotask/gost


text:
package librariesio

import (
	"context"
	"fmt"
	"net/http"
	"time"
)

// Project represents a project on libraries.io
type Project struct {
	Description              *string    `json:"description,omitempty"`
	Forks                    *int       `json:"forks,omitempty"`
	Homepage                 *string    `json:"homepage,omitempty"`
	Keywords                 []*string  `json:"keywords,omitempty"`
	Language                 *string    `json:"language,omitempty"`
	LatestReleaseNumber      *string    `json:"latest_release_number,omitempty"`
	LatestReleasePublishedAt *time.Time `json:"latest_release_published_at,omitempty"`
	LatestStableRelease      *Release   `json:"latest_stable_release,omitempty"`
	Name                     *string    `json:"name,omitempty"`
	NormalizedLicenses       []*string  `json:"normalized_licenses,omitempty"`
	PackageManagerURL        *string    `json:"package_manager_url,omitempty"`
	Platform                 *string    `json:"platform,omitempty"`
	Rank                     *int       `json:"rank,omitempty"`
	Stars                    *int       `json:"stars,omitempty"`
	Status                   *string    `json:"status,omitempty"`
	Versions                 []*Release `json:"versions,omitempty"`

	// Dependencies are only populated for ProjectDeps
	Dependencies []*ProjectDependency `json:"dependencies,omitempty"`

	// RepositoryURL is only populated for UserProjects
	RepositoryURL *string `json:"repository_url,omitempty"`
}

// Release represents a release of the project
type Release struct {
	Number      *string    `json:"number,omitempty"`
	PublishedAt *time.Time `json:"published_at,omitempty"`
}

// ProjectDependency represents a dependency of the project
type ProjectDependency struct {
	Deprecated   *bool   `json:"deprecated,omitempty"`
	Latest       *string `json:"latest,omitempty"`
	LatestStable *string `json:"latest_stable,omitempty"`
	Name         *string `json:"name,omitempty"`
	Outdated     *bool   `json:"outdated,omitempty"`
	Platform     *string `json:"platform,omitempty"`
	ProjectName  *string `json:"project_name,omitempty"`
	Requirements *string `json:"requirements,omitempty"`
}

// Project returns information about a project and it's versions.
//
// GET https://libraries.io/api/:platform/:name
//
// plat is the platform/package manager of the project
// name is the name of the project on the platform
func (c *Client) Project(ctx context.Context, plat, name string) (*Project, *http.Response, error) {
	urlStr := fmt.Sprintf("%v/%v", plat, name)

	request, err := c.NewRequest("GET", urlStr, nil)

	if err != nil {
		return nil, nil, err
	}

	project := new(Project)
	response, err := c.Do(ctx, request, project)
	if err != nil {
		return nil, response, err
	}

	return project, response, nil
}

// ProjectDeps returns information about a project and it's dependencies.
//
// GET https://libraries.io/api/:platform/:name/:version/dependencies
//
// plat is the platform/package manager of the project
// name is the name of the project on the platform
// ver is the version of the project - pass "latest" for current release
func (c *Client) ProjectDeps(ctx context.Context, plat, name, ver string) (*Project, *http.Response, error) {

	urlStr := fmt.Sprintf("%v/%v/%v/dependencies", plat, name, ver)

	request, err := c.NewRequest("GET", urlStr, nil)
	if err != nil {
		return nil, nil, err
	}

	project := new(Project)

	response, err := c.Do(ctx, request, project)
	if err != nil {
		return nil, response, err
	}

	return project, response, nil
}

// Search returns a slice of projects for the given search string
//
// GET https://libraries.io/api/search?q=amelia
func (c *Client) Search(ctx context.Context, q string) ([]*Project, *http.Response, error) {
	request, err := c.NewRequest("GET", "search", nil)
	if err != nil {
		return nil, nil, err
	}

	// Add query to request
	query := request.URL.Query()
	query.Set("q", q)
	request.URL.RawQuery = query.Encode()

	var projects []*Project

	response, err := c.Do(ctx, request, &projects)
	if err != nil {
		return nil, response, err
	}

	return projects, response, nil
}

repository: hackebrot/go-librariesio

repo_name: hackebrot/go-librariesio


text:
package main

import (
	"net/http"
	"strconv"

	"github.com/byuoitav/mayday/log"

	"github.com/labstack/echo/v4"
)

func serveStatus(port int) {
	log.P.Info("Starting status endpoint")

	router := echo.New()
	router.GET("/status", func(c echo.Context) error {
		return c.String(http.StatusOK, "status ok")
	})

	err := router.Start(":" + strconv.Itoa(port))
	if err != nil {
		log.P.Panic(err.Error())
	}
}

repository: byuoitav/mayday

repo_name: byuoitav/mayday

branch_name: refs/heads/main


text:
package request

type Install struct {
	Database      string `json:"database" validate:"required"`
	User          string `json:"user" validate:"required"`
	Password      string `json:"password" validate:"required"`
	Host          string `json:"host" validate:"required"`
	Port          int    `json:"port" validate:"required"`
	AdminUser     string `json:"admin_user" validate:"required"`
	AdminPassword string `json:"admin_password" validate:"required"`
	BaseUrl       string `json:"base_url"`
}


text:
package buckets

import (
	"context"
	"fmt"
	"io"
	"strconv"
	"sync"
	"time"

	c "github.com/ipfs/go-cid"
	ipfsfiles "github.com/ipfs/go-ipfs-files"
	iface "github.com/ipfs/interface-go-ipfs-core"
	ifaceopts "github.com/ipfs/interface-go-ipfs-core/options"
	"github.com/ipfs/interface-go-ipfs-core/path"
	"github.com/textileio/dcrypto"
	"github.com/textileio/go-buckets/collection"
	"github.com/textileio/go-buckets/dag"
	"github.com/textileio/go-threads/core/did"
	core "github.com/textileio/go-threads/core/thread"
)

// PushPathsInput is used to with PushPath and PushPaths to specify a reader or chunked data to push to a path.
type PushPathsInput struct {
	// Path is a bucket relative path at which to insert data.
	Path string
	// Reader from which to write data into Path.
	Reader io.Reader
	// Chunk should be used to add chunked data when a plain io.Reader is not available.
	Chunk []byte
	// Meta is optional metadata the will be persisted under Path.
	Meta map[string]interface{}
}

// PushPathsResult contains the result of a single push result from PuthPath or PushPaths.
type PushPathsResult struct {
	Path   string
	Cid    c.Cid
	Size   int64
	Pinned int64
	Bucket *Bucket
}

// PushPath pushes data to a single bucket path.
func (b *Buckets) PushPath(
	ctx context.Context,
	thread core.ID,
	key string,
	identity did.Token,
	root path.Resolved,
	input PushPathsInput,
) (*PushPathsResult, error) {
	txn, err := b.NewTxn(thread, key, identity)
	if err != nil {
		return nil, err
	}
	defer txn.Close()
	return txn.PushPath(ctx, root, input)
}

// PushPath is Txn based PushPath.
func (t *Txn) PushPath(
	ctx context.Context,
	root path.Resolved,
	input PushPathsInput,
) (*PushPathsResult, error) {
	in, out, errs := t.PushPaths(ctx, root)
	if len(errs) != 0 {
		err := <-errs
		return nil, err
	}

	go func() {
		in <- input
		close(in)
	}()

	result := &PushPathsResult{}
	for {
		select {
		case res := <-out:
			result = &res
		case err := <-errs:
			return result, err
		}
	}
}

// PushPaths pushes data to one or more bucket paths.
// The returned channels are used to push one or more PushPathsInput.
// Each input will result in a PushPathsResult.
// Use this method to bulk write data to a bucket.
func (b *Buckets) PushPaths(
	ctx context.Context,
	thread core.ID,
	key string,
	identity did.Token,
	root path.Resolved,
) (chan<- PushPathsInput, <-chan PushPathsResult, <-chan error) {
	errs := make(chan error, 1)
	txn, err := b.NewTxn(thread, key, identity)
	if err != nil {
		errs <- err
		return nil, nil, errs
	}

	in, out, perrs := txn.PushPaths(ctx, root)
	go func() {
		defer txn.Close()
		for err := range perrs {
			errs <- err
			return
		}
	}()
	return in, out, errs
}

// PushPaths is Txn based PushPaths.
func (t *Txn) PushPaths(
	ctx context.Context,
	root path.Resolved,
) (chan<- PushPathsInput, <-chan PushPathsResult, <-chan error) {
	in := make(chan PushPathsInput)
	out := make(chan PushPathsResult)
	errs := make(chan error, 1)

	instance, err := t.b.c.GetSafe(ctx, t.thread, t.key, collection.WithIdentity(t.identity))
	if err != nil {
		errs <- err
		return in, out, errs
	}
	if root != nil && root.String() != instance.Path {
		errs <- ErrNonFastForward
		return in, out, errs
	}
	readOnlyInstance := instance.Copy()

	ctx, cancel := context.WithCancel(ctx)
	var wg sync.WaitGroup
	var ctxLock sync.RWMutex
	addedCh := make(chan addedFile)
	doneCh := make(chan struct{})
	errCh := make(chan error)
	go func() {
		queue := newFileQueue()
		for {
			select {
			case input, ok := <-in:
				if !ok {
					wg.Wait() // Request ended normally, wait for pending jobs
					close(doneCh)
					return
				}
				pth, err := parsePath(input.Path)
				if err != nil {
					errCh <- fmt.Errorf("parsing path: %v", err)
					return
				}
				ctxLock.RLock()
				ctx := ctx
				ctxLock.RUnlock()
				fa, err := queue.add(ctx, t.b.ipfs.Unixfs(), pth, input.Meta, func() ([]byte, error) {
					wg.Add(1)
					readOnlyInstance.UpdatedAt = time.Now().UnixNano()
					readOnlyInstance.SetMetadataAtPath(pth, collection.Metadata{
						UpdatedAt: readOnlyInstance.UpdatedAt,
						Info:      input.Meta,
					})
					readOnlyInstance.UnsetMetadataWithPrefix(pth + "/")
					if err := t.b.c.Verify(
						ctx,
						t.thread,
						readOnlyInstance,
						collection.WithIdentity(t.identity),
					); err != nil {
						return nil, fmt.Errorf("verifying bucket update: %v", err)
					}
					key, err := readOnlyInstance.GetFileEncryptionKeyForPath(pth)
					if err != nil {
						return nil, fmt.Errorf("getting bucket key: %v", err)
					}
					return key, nil
				}, addedCh, errCh)
				if err != nil {
					errCh <- fmt.Errorf("enqueueing file: %v", err)
					return
				}

				if input.Reader != nil {
					if _, err := io.Copy(fa.writer, input.Reader); err != nil {
						errCh <- fmt.Errorf("piping reader: %v", err)
						return
					}
					if err := fa.writer.Close(); err != nil {
						errCh <- fmt.Errorf("closing writer: %v", err)
						return
					}
				} else if len(input.Chunk) > 0 {
					if _, err := fa.writer.Write(input.Chunk); err != nil {
						errCh <- fmt.Errorf("writing chunk: %v", err)
						return
					}
				} else {
					if err := fa.writer.Close(); err != nil {
						errCh <- fmt.Errorf("closing writer: %v", err)
						return
					}
				}
			}
		}
	}()

	var changed bool
	sctx := newClonedContext(ctx)
	saveWithErr := func(err error) error {
		cancel()
		if !changed {
			return err
		}
		if serr := t.b.saveAndPublish(sctx, t.thread, t.identity, instance); serr != nil {
			if err != nil {
				return err
			}
			return serr
		} else {
			log.Debugf("saved bucket %s with path: %s", instance.Key, instance.Path)
		}
		return err
	}

	go func() {
		for {
			select {
			case res := <-addedCh:
				ctxLock.RLock()
				ctx2 := ctx
				ctxLock.RUnlock()

				fn, err := t.b.ipfs.ResolveNode(ctx2, res.resolved)
				if err != nil {
					errs <- saveWithErr(fmt.Errorf("resolving added node: %v", err))
					return
				}

				var dir path.Resolved
				if instance.IsPrivate() {
					ctx2, dir, err = dag.InsertNodeAtPath(
						ctx2,
						t.b.ipfs,
						fn,
						path.Join(path.New(instance.Path), res.path),
						instance.GetLinkEncryptionKey(),
					)
					if err != nil {
						errs <- saveWithErr(fmt.Errorf("inserting added node: %v", err))
						return
					}
				} else {
					dir, err = t.b.ipfs.Object().AddLink(
						ctx2,
						path.New(instance.Path),
						res.path,
						res.resolved,
						ifaceopts.Object.Create(true),
					)
					if err != nil {
						errs <- saveWithErr(fmt.Errorf("adding bucket link: %v", err))
						return
					}
					ctx2, err = dag.UpdateOrAddPin(ctx2, t.b.ipfs, path.New(instance.Path), dir)
					if err != nil {
						errs <- saveWithErr(fmt.Errorf("updating bucket pin: %v", err))
						return
					}
				}
				instance.Path = dir.String()
				instance.UpdatedAt = time.Now().UnixNano()
				instance.SetMetadataAtPath(res.path, collection.Metadata{
					UpdatedAt: instance.UpdatedAt,
					Info:      res.meta,
				})
				instance.UnsetMetadataWithPrefix(res.path + "/")

				out <- PushPathsResult{
					Path:   res.path,
					Cid:    res.resolved.Cid(),
					Size:   res.size,
					Pinned: dag.GetPinnedBytes(ctx2),
					Bucket: instanceToBucket(t.thread, instance),
				}

				ctxLock.Lock()
				ctx = ctx2
				ctxLock.Unlock()

				log.Debugf("pushed %s to %s", res.path, instance.Key)
				changed = true // Save is needed
				wg.Done()

			case <-doneCh:
				errs <- saveWithErr(nil)
				return

			case err := <-errCh:
				errs <- saveWithErr(err)
				return
			}
		}
	}()
	return in, out, errs
}

type fileAdder struct {
	reader io.ReadCloser
	writer io.WriteCloser
}

type addedFile struct {
	path     string
	resolved path.Resolved
	size     int64
	meta     map[string]interface{}
}

type fileQueue struct {
	q    map[string]*fileAdder
	lock sync.Mutex
}

func newFileQueue() *fileQueue {
	return &fileQueue{q: make(map[string]*fileAdder)}
}

func (q *fileQueue) add(
	ctx context.Context,
	ufs iface.UnixfsAPI,
	pth string,
	meta map[string]interface{},
	addFunc func() ([]byte, error),
	doneCh chan<- addedFile,
	errCh chan<- error,
) (*fileAdder, error) {
	q.lock.Lock()
	defer q.lock.Unlock()

	fa, ok := q.q[pth]
	if ok {
		return fa, nil
	}

	key, err := addFunc()
	if err != nil {
		return nil, err
	}

	reader, writer := io.Pipe()
	fa = &fileAdder{
		reader: reader,
		writer: writer,
	}
	q.q[pth] = fa

	eventCh := make(chan interface{})
	chSize := make(chan string)
	go func() {
		for e := range eventCh {
			event, ok := e.(*iface.AddEvent)
			if !ok {
				log.Error("unexpected event type")
				continue
			}
			if event.Path != nil {
				chSize <- event.Size // Save size for use in the final response
			}
		}
	}()

	var r io.Reader
	if key != nil {
		r, err = dcrypto.NewEncrypter(reader, key)
		if err != nil {
			return nil, fmt.Errorf("creating decrypter: %v", err)
		}
	} else {
		r = reader
	}

	go func() {
		defer close(eventCh)
		res, err := ufs.Add(
			ctx,
			ipfsfiles.NewReaderFile(r),
			ifaceopts.Unixfs.CidVersion(1),
			ifaceopts.Unixfs.Pin(false),
			ifaceopts.Unixfs.Progress(true),
			ifaceopts.Unixfs.Events(eventCh),
		)
		if err != nil {
			errCh <- fmt.Errorf("adding file: %v", err)
			return
		}
		size := <-chSize
		added, err := strconv.Atoi(size)
		if err != nil {
			errCh <- fmt.Errorf("getting file size: %v", err)
			return
		}
		doneCh <- addedFile{
			path:     pth,
			resolved: res,
			size:     int64(added),
			meta:     meta,
		}
	}()

	return fa, nil
}

// newClonedContext returns a context with the same Values but not inherited cancelation.
func newClonedContext(ctx context.Context) context.Context {
	return valueOnlyContext{Context: ctx}
}

type valueOnlyContext struct{ context.Context }

func (valueOnlyContext) Deadline() (deadline time.Time, ok bool) { return }
func (valueOnlyContext) Done() <-chan struct{}                   { return nil }
func (valueOnlyContext) Err() error                              { return nil }

repository: textileio/go-buckets

repo_name: textileio/go-buckets


text:
@Misc{szarzynska2017pten,
  title = {PTEN Alterations Are Related to Unfavorable Prognosis in Children with T-Cell Acute Lymphoblastic Leukemia Treated According to ALL IC-BFM Protocols},
  author = {Bronis{\l}awa Szarzy{\a'n}ska-Zawadzka and Joachim B Kunz and Maria Kosmalska and Katarzyna Zdon and Przemys{\l}aw Biecek and Obul Reddy Bandapalli and S{\k e}dek {\L}ukasz and Jerzy R Kowalczyk and Tomasz Szczepa{\a'n}ski and Andreas E Kulozik and {others}},
  year = {2017},
  publisher = {American Society of Hematology},
}


text:
\html{
  background-image:url('../stars.gif');
  background-repeat:repeat;
  background-attachment: fixed;
  background-size: cover;
}

.audio{
  visibility: hidden;
}

h3{
  font-size: 3vw;
}

h4{
  font-size: 2.2vw;
}
span{
  font-size:3vw;
}
.game a{
  color: #002e66;
  background-color: #cce3ff;
  width: 30vw;
  text-align: center;
  border-radius: 10%;
  font-size: 7vw;
  text-decoration: none;

}

.game a:hover{
  background-color: #FF9B38;
}
img{
  width: 40vw;
}
#item-one-game-shop {
  position: absolute;
  top: 50vw;
  left: 10vw;
}
.responsive {
  width: 100%;
  height: auto;
}
#item-two-game-shop {
  position: absolute;
  top: 50vw;
  left: 60vw;
}

#item-three-game-shop {
  position: absolute;
  top: 50vw;
  left: 110vw;
}

#item-four-game-shop {
  position: absolute;
  top: 200vw;
  left: 10vw;
}
#item-five-game-shop {
  position: absolute;
  top: 125vw;
  left: 10vw;
}

#item-six-game-shop {
  position: absolute;
  top: 125vw;
  left: 60vw;
}

#item-seven-game-shop {
  position: absolute;
  top: 125vw;
  left: 110vw;
}

#item-eight-game-shop {
  position: absolute;
  top: 200vw;
  left: 60vw;
}
#item-nine-game-shop {
  position: absolute;
  top: 200vw;
  left: 110vw;

}

.flip-box {
  background-image: url('Earth.gif');
  width: 38.5vw;
  height: 54.5vw;
  perspective: 1000px;
}

.flip-box-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
  color: black;
}

.flip-box:hover .flip-box-inner {
  transform: rotateY(180deg);
}

.flip-box-front, .flip-box-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}

.flip-box-back {
 visibility: unset;
  color: white;
  transform: rotateY(180deg);
    background: rgba(0, 0, 0, 0.4);
}

.checked {
  color: #FF9B38;
}

div.zoomed {
  transform: scale(0.6);
transform-origin: top left;
-moz-transform: scale(1);
-moz-transform-origin: top left;

}

repository: lucasrpatten/Unavrs

repo_name: lucasrpatten/Unavrs

extension: css