From 2c44dcaf65c2358c9bedb271a1013c91839f61ea Mon Sep 17 00:00:00 2001 From: Benjamin K Date: Sun, 21 Jun 2020 00:32:46 +0200 Subject: [PATCH] Clean up of Eggnet/Software directory --- .../Software/.devcontainer/devcontainer.json | 41 + vivado/Software/Dockerfile | 78 +- vivado/Software/EggDriver/.cproject | 149 - vivado/Software/EggDriver/.project | 25 - vivado/Software/EggDriver/CMakeLists.txt | 112 +- .../cmake}/zynq-linux.toolchain.cmake | 0 .../EggDriver/{src => include}/eggnet.h | 0 .../{ => EggDriver/lib}/lsuio/.cproject | 0 .../lib/lsuio}/.gitignore | 0 .../{ => EggDriver/lib}/lsuio/.project | 0 .../EggDriver/lib/lsuio/CMakeLists.txt | 18 + .../lib/lsuio/include}/libuio.h | 0 .../lib/lsuio/src}/attr.c | 0 .../{ => EggDriver/lib}/lsuio/src/base.c | 0 .../lib/lsuio/src}/helper.c | 0 .../lib/lsuio/src}/libuio_internal.h | 0 .../{ => EggDriver/lib}/lsuio/src/lsuio.c | 0 .../{eggnet => EggDriver/lib/lsuio/src}/mem.c | 0 vivado/Software/EggDriver/pysetup/info.py | 7 + .../EggDriver/pysetup/python-versions.txt | 1 + .../{ => EggDriver}/pysetup/requirements.txt | 0 vivado/Software/EggDriver/src/eggnet.i | 2 +- vivado/Software/EggNetDriver/Debug/makefile | 47 - vivado/Software/EggNetDriver/Debug/objects.mk | 8 - vivado/Software/EggNetDriver/Debug/sources.mk | 19 - .../EggNetDriver/Debug/src/dma-proxy.d | 177 - .../EggNetDriver/Debug/src/dma-proxy.o | Bin 121792 -> 0 bytes .../Software/EggNetDriver/Debug/src/eggnet.d | 97 - .../Software/EggNetDriver/Debug/src/eggnet.o | Bin 54800 -> 0 bytes .../Software/EggNetDriver/Debug/src/subdir.mk | 30 - .../Software/RemoteSystemsTempFiles/.project | 12 - .../dma-proxy/.cproject | 0 .../dma-proxy}/.gitignore | 0 .../{ => Xillinx-Examples}/dma-proxy/.project | 0 .../dma-proxy/src/README.txt | 0 .../dma-proxy/src/dma-proxy-test.c | 0 .../dma-proxy/src/dma-proxy.h | 0 .../fig/createLinApp.PNG | Bin .../{ => Xillinx-Examples}/fig/pthread.PNG | Bin .../webtalk/sdk_webtalk.tcl | 0 .../webtalk/sdk_webtalk.wdm | 0 .../webtalk/usage_statistics_ext_sdk.html | 0 .../webtalk/usage_statistics_ext_sdk.xml | 0 .../webtalk/webtalk.jou | 0 .../webtalk/webtalk_11032.backup.jou | 0 vivado/Software/dockcross-linux-armv7a | 255 - vivado/Software/eggnet/CMakeLists.txt | 71 - .../eggnet/CMakeLists_find_package.txt | 42 - vivado/Software/eggnet/EggNetDriverCore.py | 105 - vivado/Software/eggnet/base.c | 463 -- vivado/Software/eggnet/dbg.h | 124 - vivado/Software/eggnet/dma-proxy.c | 182 - vivado/Software/eggnet/dma-proxy.h | 20 - vivado/Software/eggnet/eggdbg.c | 103 - vivado/Software/eggnet/eggdma.c | 247 - vivado/Software/eggnet/eggnet.c | 492 -- vivado/Software/eggnet/eggnet.h | 167 - vivado/Software/eggnet/eggnet.i | 122 - vivado/Software/eggnet/eggnet_core.h | 253 - vivado/Software/eggnet/eggnet_wrap.c | 4837 ----------- vivado/Software/eggnet/eggstatus.c | 232 - vivado/Software/eggnet/numpy.i | 3183 ------- vivado/Software/lsuio/src/attr.c | 250 - vivado/Software/lsuio/src/helper.c | 295 - vivado/Software/lsuio/src/libuio.h | 102 - vivado/Software/lsuio/src/libuio_internal.h | 65 - vivado/Software/lsuio/src/mem.c | 339 - vivado/Software/pysetup/python-versions.txt | 2 - .../arm-linux-gnueabihf/ld-linux-armhf.so.3 | Bin 101684 -> 0 bytes .../lib/arm-linux-gnueabihf/ld-linux.so.3 | Bin 101684 -> 0 bytes .../arm-linux-gnueabihf/libBrokenLocale.so.1 | Bin 5648 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libacl.so.1 | Bin 22144 -> 0 bytes .../lib/arm-linux-gnueabihf/libacl.so.1.1.0 | Bin 22144 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libaio.so.1 | Bin 4884 -> 0 bytes .../lib/arm-linux-gnueabihf/libaio.so.1.0.1 | Bin 4884 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libanl.so.1 | Bin 14208 -> 0 bytes .../lib/arm-linux-gnueabihf/libattr.so.1 | Bin 13808 -> 0 bytes .../lib/arm-linux-gnueabihf/libattr.so.1.1.0 | Bin 13808 -> 0 bytes .../lib/arm-linux-gnueabihf/libaudit.so.1 | Bin 87700 -> 0 bytes .../lib/arm-linux-gnueabihf/libaudit.so.1.0.0 | Bin 87700 -> 0 bytes .../lib/arm-linux-gnueabihf/libblkid.so.1 | Bin 96588 -> 0 bytes .../lib/arm-linux-gnueabihf/libblkid.so.1.1.0 | Bin 96588 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libbsd.so.0 | Bin 38756 -> 0 bytes .../lib/arm-linux-gnueabihf/libbsd.so.0.6.0 | Bin 38756 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libbz2.so.1 | Bin 49536 -> 0 bytes .../lib/arm-linux-gnueabihf/libbz2.so.1.0 | Bin 49536 -> 0 bytes .../lib/arm-linux-gnueabihf/libbz2.so.1.0.4 | Bin 49536 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libc.so.6 | Bin 906980 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libcap.so.2 | Bin 13932 -> 0 bytes .../lib/arm-linux-gnueabihf/libcap.so.2.24 | Bin 13932 -> 0 bytes .../lib/arm-linux-gnueabihf/libcgmanager.so.0 | Bin 79216 -> 0 bytes .../arm-linux-gnueabihf/libcgmanager.so.0.0.0 | Bin 79216 -> 0 bytes .../lib/arm-linux-gnueabihf/libcidn.so.1 | Bin 177796 -> 0 bytes .../lib/arm-linux-gnueabihf/libcom_err.so.2 | Bin 9740 -> 0 bytes .../lib/arm-linux-gnueabihf/libcom_err.so.2.1 | Bin 9740 -> 0 bytes .../lib/arm-linux-gnueabihf/libcrypt.so.1 | Bin 30432 -> 0 bytes .../arm-linux-gnueabihf/libcrypto.so.1.0.0 | Bin 1050408 -> 0 bytes .../lib/arm-linux-gnueabihf/libdbus-1.so.3 | Bin 165920 -> 0 bytes .../arm-linux-gnueabihf/libdbus-1.so.3.7.6 | Bin 165920 -> 0 bytes .../libdevmapper.so.1.02.1 | Bin 170372 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libdl.so.2 | Bin 9824 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libe2p.so.2 | Bin 22800 -> 0 bytes .../lib/arm-linux-gnueabihf/libe2p.so.2.3 | Bin 22800 -> 0 bytes .../lib/arm-linux-gnueabihf/libexpat.so.1 | Bin 95788 -> 0 bytes .../lib/arm-linux-gnueabihf/libexpat.so.1.6.0 | Bin 95788 -> 0 bytes .../lib/arm-linux-gnueabihf/libext2fs.so.2 | Bin 174644 -> 0 bytes .../lib/arm-linux-gnueabihf/libext2fs.so.2.4 | Bin 174644 -> 0 bytes .../lib/arm-linux-gnueabihf/libfuse.so.2 | Bin 132632 -> 0 bytes .../lib/arm-linux-gnueabihf/libfuse.so.2.9.2 | Bin 132632 -> 0 bytes .../lib/arm-linux-gnueabihf/libgcc_s.so.1 | Bin 100980 -> 0 bytes .../lib/arm-linux-gnueabihf/libgcrypt.so.11 | Bin 376604 -> 0 bytes .../arm-linux-gnueabihf/libgcrypt.so.11.8.2 | Bin 376604 -> 0 bytes .../lib/arm-linux-gnueabihf/libglib-2.0.so.0 | Bin 785644 -> 0 bytes .../libglib-2.0.so.0.4000.0 | Bin 785644 -> 0 bytes .../lib/arm-linux-gnueabihf/libgpg-error.so.0 | Bin 13664 -> 0 bytes .../libgpg-error.so.0.10.0 | Bin 13664 -> 0 bytes .../lib/arm-linux-gnueabihf/libhistory.so.6 | Bin 22064 -> 0 bytes .../lib/arm-linux-gnueabihf/libhistory.so.6.3 | Bin 22064 -> 0 bytes .../lib/arm-linux-gnueabihf/libjson-c.so.2 | Bin 26236 -> 0 bytes .../arm-linux-gnueabihf/libjson-c.so.2.0.0 | Bin 26236 -> 0 bytes .../lib/arm-linux-gnueabihf/libjson.so.0 | Bin 26236 -> 0 bytes .../lib/arm-linux-gnueabihf/libkeyutils.so.1 | Bin 9580 -> 0 bytes .../arm-linux-gnueabihf/libkeyutils.so.1.4 | Bin 9580 -> 0 bytes .../lib/arm-linux-gnueabihf/libkmod.so.2 | Bin 59120 -> 0 bytes .../lib/arm-linux-gnueabihf/libkmod.so.2.2.5 | Bin 59120 -> 0 bytes .../lib/arm-linux-gnueabihf/liblzma.so.5 | Bin 95804 -> 0 bytes .../lib/arm-linux-gnueabihf/liblzma.so.5.0.0 | Bin 95804 -> 0 bytes .../lib/arm-linux-gnueabihf/liblzo2.so.2 | Bin 79248 -> 0 bytes .../lib/arm-linux-gnueabihf/liblzo2.so.2.0.0 | Bin 79248 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libm.so.6 | Bin 407136 -> 0 bytes .../lib/arm-linux-gnueabihf/libmount.so.1 | Bin 96240 -> 0 bytes .../lib/arm-linux-gnueabihf/libmount.so.1.1.0 | Bin 96240 -> 0 bytes .../lib/arm-linux-gnueabihf/libncurses.so.5 | Bin 87868 -> 0 bytes .../lib/arm-linux-gnueabihf/libncurses.so.5.9 | Bin 87868 -> 0 bytes .../lib/arm-linux-gnueabihf/libncursesw.so.5 | Bin 132980 -> 0 bytes .../arm-linux-gnueabihf/libncursesw.so.5.9 | Bin 132980 -> 0 bytes .../lib/arm-linux-gnueabihf/libnewt.so.0.52 | Bin 55408 -> 0 bytes .../arm-linux-gnueabihf/libnewt.so.0.52.15 | Bin 55408 -> 0 bytes .../lib/arm-linux-gnueabihf/libnih-dbus.so.1 | Bin 30124 -> 0 bytes .../arm-linux-gnueabihf/libnih-dbus.so.1.0.0 | Bin 30124 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libnih.so.1 | Bin 66996 -> 0 bytes .../lib/arm-linux-gnueabihf/libnih.so.1.0.0 | Bin 66996 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libnsl.so.1 | Bin 55248 -> 0 bytes .../arm-linux-gnueabihf/libnss_compat.so.2 | Bin 22404 -> 0 bytes .../lib/arm-linux-gnueabihf/libnss_dns.so.2 | Bin 13956 -> 0 bytes .../lib/arm-linux-gnueabihf/libnss_files.so.2 | Bin 34536 -> 0 bytes .../arm-linux-gnueabihf/libnss_hesiod.so.2 | Bin 13968 -> 0 bytes .../lib/arm-linux-gnueabihf/libnss_nis.so.2 | Bin 30424 -> 0 bytes .../arm-linux-gnueabihf/libnss_nisplus.so.2 | Bin 34512 -> 0 bytes .../lib/arm-linux-gnueabihf/libntfs-3g.so.841 | Bin 227072 -> 0 bytes .../arm-linux-gnueabihf/libntfs-3g.so.841.0.0 | Bin 227072 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libpam.so.0 | Bin 34496 -> 0 bytes .../lib/arm-linux-gnueabihf/libpam.so.0.83.1 | Bin 34496 -> 0 bytes .../lib/arm-linux-gnueabihf/libpam_misc.so.0 | Bin 9772 -> 0 bytes .../arm-linux-gnueabihf/libpam_misc.so.0.82.0 | Bin 9772 -> 0 bytes .../lib/arm-linux-gnueabihf/libpamc.so.0 | Bin 9736 -> 0 bytes .../lib/arm-linux-gnueabihf/libpamc.so.0.82.1 | Bin 9736 -> 0 bytes .../lib/arm-linux-gnueabihf/libparted.so.0 | Bin 282188 -> 0 bytes .../arm-linux-gnueabihf/libparted.so.0.0.1 | Bin 282188 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libpci.so.3 | Bin 26452 -> 0 bytes .../lib/arm-linux-gnueabihf/libpci.so.3.2.1 | Bin 26452 -> 0 bytes .../lib/arm-linux-gnueabihf/libpcre.so.3 | Bin 194044 -> 0 bytes .../lib/arm-linux-gnueabihf/libpcre.so.3.13.1 | Bin 194044 -> 0 bytes .../libply-boot-client.so.2 | Bin 13796 -> 0 bytes .../libply-boot-client.so.2.1.0 | Bin 13796 -> 0 bytes .../libply-splash-core.so.2 | Bin 50888 -> 0 bytes .../libply-splash-core.so.2.1.0 | Bin 50888 -> 0 bytes .../libply-splash-graphics.so.2 | Bin 26232 -> 0 bytes .../libply-splash-graphics.so.2.1.0 | Bin 26232 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libply.so.2 | Bin 63156 -> 0 bytes .../lib/arm-linux-gnueabihf/libply.so.2.1.0 | Bin 63156 -> 0 bytes .../lib/arm-linux-gnueabihf/libpng12.so.0 | Bin 96032 -> 0 bytes .../arm-linux-gnueabihf/libpng12.so.0.50.0 | Bin 96032 -> 0 bytes .../lib/arm-linux-gnueabihf/libpopt.so.0 | Bin 34816 -> 0 bytes .../lib/arm-linux-gnueabihf/libpopt.so.0.0.0 | Bin 34816 -> 0 bytes .../lib/arm-linux-gnueabihf/libprocps.so.0 | Bin 47048 -> 0 bytes .../arm-linux-gnueabihf/libprocps.so.0.0.1 | Bin 47048 -> 0 bytes .../lib/arm-linux-gnueabihf/libprocps.so.3 | Bin 47044 -> 0 bytes .../arm-linux-gnueabihf/libprocps.so.3.0.0 | Bin 47044 -> 0 bytes .../lib/arm-linux-gnueabihf/libpthread.so.0 | Bin 102203 -> 0 bytes .../lib/arm-linux-gnueabihf/libreadline.so.6 | Bin 165064 -> 0 bytes .../arm-linux-gnueabihf/libreadline.so.6.3 | Bin 165064 -> 0 bytes .../lib/arm-linux-gnueabihf/libresolv.so.2 | Bin 59264 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/librt.so.1 | Bin 22580 -> 0 bytes .../lib/arm-linux-gnueabihf/libselinux.so.1 | Bin 84004 -> 0 bytes .../lib/arm-linux-gnueabihf/libsepol.so.1 | Bin 178708 -> 0 bytes .../lib/arm-linux-gnueabihf/libslang.so.2 | Bin 792044 -> 0 bytes .../lib/arm-linux-gnueabihf/libslang.so.2.2.4 | Bin 792044 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libss.so.2 | Bin 18040 -> 0 bytes .../lib/arm-linux-gnueabihf/libss.so.2.0 | Bin 18040 -> 0 bytes .../lib/arm-linux-gnueabihf/libssl.so.1.0.0 | Bin 223256 -> 0 bytes .../libsystemd-daemon.so.0 | Bin 9580 -> 0 bytes .../libsystemd-daemon.so.0.0.10 | Bin 9580 -> 0 bytes .../arm-linux-gnueabihf/libsystemd-login.so.0 | Bin 38424 -> 0 bytes .../libsystemd-login.so.0.7.1 | Bin 38424 -> 0 bytes .../lib/arm-linux-gnueabihf/libthread_db.so.1 | Bin 22320 -> 0 bytes .../lib/arm-linux-gnueabihf/libtinfo.so.5 | Bin 104608 -> 0 bytes .../lib/arm-linux-gnueabihf/libtinfo.so.5.9 | Bin 104608 -> 0 bytes .../lib/arm-linux-gnueabihf/libudev.so.1 | Bin 46572 -> 0 bytes .../lib/arm-linux-gnueabihf/libudev.so.1.3.5 | Bin 46572 -> 0 bytes .../lib/arm-linux-gnueabihf/libulockmgr.so.1 | Bin 9552 -> 0 bytes .../arm-linux-gnueabihf/libulockmgr.so.1.0.1 | Bin 9552 -> 0 bytes .../lib/arm-linux-gnueabihf/libusb-0.1.so.4 | Bin 21960 -> 0 bytes .../arm-linux-gnueabihf/libusb-0.1.so.4.4.4 | Bin 21960 -> 0 bytes .../lib/arm-linux-gnueabihf/libusb-1.0.so.0 | Bin 59152 -> 0 bytes .../arm-linux-gnueabihf/libusb-1.0.so.0.1.0 | Bin 59152 -> 0 bytes .../lib/arm-linux-gnueabihf/libutil.so.1 | Bin 9860 -> 0 bytes .../lib/arm-linux-gnueabihf/libuuid.so.1 | Bin 14032 -> 0 bytes .../lib/arm-linux-gnueabihf/libuuid.so.1.3.0 | Bin 14032 -> 0 bytes .../lib/arm-linux-gnueabihf/libwrap.so.0 | Bin 22788 -> 0 bytes .../lib/arm-linux-gnueabihf/libwrap.so.0.7.6 | Bin 22788 -> 0 bytes .../linux/lib/arm-linux-gnueabihf/libz.so.1 | Bin 75400 -> 0 bytes .../lib/arm-linux-gnueabihf/libz.so.1.2.8 | Bin 75400 -> 0 bytes .../sysroots/linux/usr/include/_G_config.h | 58 - .../Software/sysroots/linux/usr/include/aio.h | 246 - .../sysroots/linux/usr/include/aliases.h | 63 - .../sysroots/linux/usr/include/alloca.h | 40 - .../Software/sysroots/linux/usr/include/ar.h | 47 - .../sysroots/linux/usr/include/argp.h | 595 -- .../sysroots/linux/usr/include/argz.h | 182 - .../usr/include/arm-linux-gnueabihf/a.out.h | 138 - .../include/arm-linux-gnueabihf/asm/auxvec.h | 1 - .../arm-linux-gnueabihf/asm/bitsperlong.h | 1 - .../arm-linux-gnueabihf/asm/byteorder.h | 25 - .../include/arm-linux-gnueabihf/asm/errno.h | 1 - .../include/arm-linux-gnueabihf/asm/fcntl.h | 11 - .../include/arm-linux-gnueabihf/asm/hwcap.h | 31 - .../include/arm-linux-gnueabihf/asm/ioctl.h | 1 - .../include/arm-linux-gnueabihf/asm/ioctls.h | 8 - .../include/arm-linux-gnueabihf/asm/ipcbuf.h | 1 - .../usr/include/arm-linux-gnueabihf/asm/kvm.h | 181 - .../arm-linux-gnueabihf/asm/kvm_para.h | 1 - .../include/arm-linux-gnueabihf/asm/mman.h | 4 - .../include/arm-linux-gnueabihf/asm/msgbuf.h | 1 - .../include/arm-linux-gnueabihf/asm/param.h | 1 - .../arm-linux-gnueabihf/asm/perf_regs.h | 23 - .../include/arm-linux-gnueabihf/asm/poll.h | 1 - .../arm-linux-gnueabihf/asm/posix_types.h | 37 - .../include/arm-linux-gnueabihf/asm/ptrace.h | 142 - .../arm-linux-gnueabihf/asm/resource.h | 1 - .../include/arm-linux-gnueabihf/asm/sembuf.h | 1 - .../include/arm-linux-gnueabihf/asm/setup.h | 187 - .../include/arm-linux-gnueabihf/asm/shmbuf.h | 1 - .../arm-linux-gnueabihf/asm/sigcontext.h | 34 - .../include/arm-linux-gnueabihf/asm/siginfo.h | 1 - .../include/arm-linux-gnueabihf/asm/signal.h | 116 - .../include/arm-linux-gnueabihf/asm/socket.h | 1 - .../include/arm-linux-gnueabihf/asm/sockios.h | 1 - .../include/arm-linux-gnueabihf/asm/stat.h | 87 - .../include/arm-linux-gnueabihf/asm/statfs.h | 12 - .../include/arm-linux-gnueabihf/asm/swab.h | 51 - .../arm-linux-gnueabihf/asm/termbits.h | 1 - .../include/arm-linux-gnueabihf/asm/termios.h | 1 - .../include/arm-linux-gnueabihf/asm/types.h | 40 - .../include/arm-linux-gnueabihf/asm/unistd.h | 449 - .../include/arm-linux-gnueabihf/bits/a.out.h | 7 - .../include/arm-linux-gnueabihf/bits/auxv.h | 76 - .../arm-linux-gnueabihf/bits/byteswap-16.h | 34 - .../arm-linux-gnueabihf/bits/byteswap.h | 112 - .../arm-linux-gnueabihf/bits/cmathcalls.h | 158 - .../arm-linux-gnueabihf/bits/confname.h | 675 -- .../include/arm-linux-gnueabihf/bits/dirent.h | 57 - .../include/arm-linux-gnueabihf/bits/dlfcn.h | 64 - .../arm-linux-gnueabihf/bits/elfclass.h | 14 - .../include/arm-linux-gnueabihf/bits/endian.h | 10 - .../arm-linux-gnueabihf/bits/environments.h | 87 - .../include/arm-linux-gnueabihf/bits/epoll.h | 27 - .../include/arm-linux-gnueabihf/bits/errno.h | 66 - .../include/arm-linux-gnueabihf/bits/error.h | 73 - .../arm-linux-gnueabihf/bits/eventfd.h | 31 - .../arm-linux-gnueabihf/bits/fcntl-linux.h | 415 - .../include/arm-linux-gnueabihf/bits/fcntl.h | 54 - .../include/arm-linux-gnueabihf/bits/fcntl2.h | 172 - .../include/arm-linux-gnueabihf/bits/fenv.h | 82 - .../arm-linux-gnueabihf/bits/fenvinline.h | 8 - .../arm-linux-gnueabihf/bits/huge_val.h | 53 - .../arm-linux-gnueabihf/bits/huge_valf.h | 51 - .../arm-linux-gnueabihf/bits/huge_vall.h | 28 - .../include/arm-linux-gnueabihf/bits/hwcap.h | 42 - .../usr/include/arm-linux-gnueabihf/bits/in.h | 202 - .../include/arm-linux-gnueabihf/bits/inf.h | 29 - .../arm-linux-gnueabihf/bits/initspin.h | 1 - .../arm-linux-gnueabihf/bits/inotify.h | 29 - .../arm-linux-gnueabihf/bits/ioctl-types.h | 77 - .../include/arm-linux-gnueabihf/bits/ioctls.h | 108 - .../include/arm-linux-gnueabihf/bits/ipc.h | 55 - .../arm-linux-gnueabihf/bits/ipctypes.h | 36 - .../arm-linux-gnueabihf/bits/libc-lock.h | 236 - .../arm-linux-gnueabihf/bits/libio-ldbl.h | 24 - .../include/arm-linux-gnueabihf/bits/link.h | 65 - .../arm-linux-gnueabihf/bits/local_lim.h | 99 - .../include/arm-linux-gnueabihf/bits/locale.h | 40 - .../arm-linux-gnueabihf/bits/math-finite.h | 454 - .../arm-linux-gnueabihf/bits/mathcalls.h | 372 - .../arm-linux-gnueabihf/bits/mathdef.h | 55 - .../arm-linux-gnueabihf/bits/mathinline.h | 12 - .../arm-linux-gnueabihf/bits/mman-linux.h | 108 - .../include/arm-linux-gnueabihf/bits/mman.h | 40 - .../arm-linux-gnueabihf/bits/monetary-ldbl.h | 27 - .../include/arm-linux-gnueabihf/bits/mqueue.h | 33 - .../arm-linux-gnueabihf/bits/mqueue2.h | 57 - .../include/arm-linux-gnueabihf/bits/msq.h | 77 - .../include/arm-linux-gnueabihf/bits/nan.h | 52 - .../include/arm-linux-gnueabihf/bits/netdb.h | 32 - .../include/arm-linux-gnueabihf/bits/param.h | 42 - .../include/arm-linux-gnueabihf/bits/poll.h | 49 - .../include/arm-linux-gnueabihf/bits/poll2.h | 81 - .../arm-linux-gnueabihf/bits/posix1_lim.h | 175 - .../arm-linux-gnueabihf/bits/posix2_lim.h | 90 - .../arm-linux-gnueabihf/bits/posix_opt.h | 191 - .../arm-linux-gnueabihf/bits/printf-ldbl.h | 23 - .../arm-linux-gnueabihf/bits/pthreadtypes.h | 184 - .../arm-linux-gnueabihf/bits/resource.h | 328 - .../include/arm-linux-gnueabihf/bits/sched.h | 210 - .../include/arm-linux-gnueabihf/bits/select.h | 37 - .../arm-linux-gnueabihf/bits/select2.h | 35 - .../include/arm-linux-gnueabihf/bits/sem.h | 86 - .../arm-linux-gnueabihf/bits/semaphore.h | 34 - .../include/arm-linux-gnueabihf/bits/setjmp.h | 37 - .../arm-linux-gnueabihf/bits/setjmp2.h | 40 - .../include/arm-linux-gnueabihf/bits/shm.h | 103 - .../arm-linux-gnueabihf/bits/sigaction.h | 78 - .../arm-linux-gnueabihf/bits/sigcontext.h | 32 - .../arm-linux-gnueabihf/bits/siginfo.h | 335 - .../arm-linux-gnueabihf/bits/signalfd.h | 29 - .../include/arm-linux-gnueabihf/bits/signum.h | 79 - .../include/arm-linux-gnueabihf/bits/sigset.h | 124 - .../arm-linux-gnueabihf/bits/sigstack.h | 54 - .../arm-linux-gnueabihf/bits/sigthread.h | 43 - .../arm-linux-gnueabihf/bits/sockaddr.h | 39 - .../include/arm-linux-gnueabihf/bits/socket.h | 385 - .../arm-linux-gnueabihf/bits/socket2.h | 77 - .../arm-linux-gnueabihf/bits/socket_type.h | 55 - .../include/arm-linux-gnueabihf/bits/stab.def | 233 - .../include/arm-linux-gnueabihf/bits/stat.h | 172 - .../include/arm-linux-gnueabihf/bits/statfs.h | 69 - .../arm-linux-gnueabihf/bits/statvfs.h | 109 - .../arm-linux-gnueabihf/bits/stdio-ldbl.h | 101 - .../arm-linux-gnueabihf/bits/stdio-lock.h | 110 - .../include/arm-linux-gnueabihf/bits/stdio.h | 190 - .../include/arm-linux-gnueabihf/bits/stdio2.h | 382 - .../arm-linux-gnueabihf/bits/stdio_lim.h | 42 - .../arm-linux-gnueabihf/bits/stdlib-bsearch.h | 43 - .../arm-linux-gnueabihf/bits/stdlib-float.h | 31 - .../arm-linux-gnueabihf/bits/stdlib-ldbl.h | 39 - .../include/arm-linux-gnueabihf/bits/stdlib.h | 155 - .../include/arm-linux-gnueabihf/bits/string.h | 12 - .../arm-linux-gnueabihf/bits/string2.h | 1329 --- .../arm-linux-gnueabihf/bits/string3.h | 151 - .../arm-linux-gnueabihf/bits/stropts.h | 230 - .../arm-linux-gnueabihf/bits/sys_errlist.h | 32 - .../arm-linux-gnueabihf/bits/syscall.h | 687 -- .../include/arm-linux-gnueabihf/bits/sysctl.h | 1 - .../arm-linux-gnueabihf/bits/syslog-ldbl.h | 35 - .../arm-linux-gnueabihf/bits/syslog-path.h | 28 - .../include/arm-linux-gnueabihf/bits/syslog.h | 49 - .../arm-linux-gnueabihf/bits/termios.h | 219 - .../include/arm-linux-gnueabihf/bits/time.h | 99 - .../arm-linux-gnueabihf/bits/timerfd.h | 29 - .../include/arm-linux-gnueabihf/bits/timex.h | 108 - .../include/arm-linux-gnueabihf/bits/types.h | 194 - .../arm-linux-gnueabihf/bits/typesizes.h | 77 - .../include/arm-linux-gnueabihf/bits/uio.h | 77 - .../include/arm-linux-gnueabihf/bits/unistd.h | 385 - .../include/arm-linux-gnueabihf/bits/ustat.h | 30 - .../include/arm-linux-gnueabihf/bits/utmp.h | 123 - .../include/arm-linux-gnueabihf/bits/utmpx.h | 102 - .../arm-linux-gnueabihf/bits/utsname.h | 28 - .../arm-linux-gnueabihf/bits/waitflags.h | 57 - .../arm-linux-gnueabihf/bits/waitstatus.h | 105 - .../arm-linux-gnueabihf/bits/wchar-ldbl.h | 74 - .../include/arm-linux-gnueabihf/bits/wchar.h | 49 - .../include/arm-linux-gnueabihf/bits/wchar2.h | 593 -- .../arm-linux-gnueabihf/bits/wordsize.h | 18 - .../arm-linux-gnueabihf/bits/xopen_lim.h | 143 - .../arm-linux-gnueabihf/bits/xtitypes.h | 33 - .../c++/4.8/bits/atomic_word.h | 47 - .../c++/4.8/bits/basic_file.h | 110 - .../c++/4.8/bits/c++allocator.h | 55 - .../c++/4.8/bits/c++config.h | 1666 ---- .../arm-linux-gnueabihf/c++/4.8/bits/c++io.h | 50 - .../c++/4.8/bits/c++locale.h | 114 - .../c++/4.8/bits/cpu_defines.h | 33 - .../c++/4.8/bits/ctype_base.h | 63 - .../c++/4.8/bits/ctype_inline.h | 76 - .../c++/4.8/bits/cxxabi_tweaks.h | 82 - .../c++/4.8/bits/error_constants.h | 178 - .../arm-linux-gnueabihf/c++/4.8/bits/extc++.h | 71 - .../c++/4.8/bits/gthr-default.h | 889 -- .../c++/4.8/bits/gthr-posix.h | 889 -- .../c++/4.8/bits/gthr-single.h | 298 - .../arm-linux-gnueabihf/c++/4.8/bits/gthr.h | 154 - .../c++/4.8/bits/messages_members.h | 130 - .../c++/4.8/bits/opt_random.h | 38 - .../c++/4.8/bits/os_defines.h | 48 - .../arm-linux-gnueabihf/c++/4.8/bits/stdc++.h | 117 - .../c++/4.8/bits/stdtr1c++.h | 53 - .../c++/4.8/bits/time_members.h | 89 - .../c++/4.8/ext/opt_random.h | 38 - .../arm-linux-gnueabihf/expat_config.h | 103 - .../usr/include/arm-linux-gnueabihf/ffi.h | 476 -- .../include/arm-linux-gnueabihf/ffitarget.h | 71 - .../include/arm-linux-gnueabihf/fpu_control.h | 63 - .../arm-linux-gnueabihf/gnu/lib-names.h | 62 - .../arm-linux-gnueabihf/gnu/libc-version.h | 34 - .../arm-linux-gnueabihf/gnu/option-groups.h | 51 - .../arm-linux-gnueabihf/gnu/stubs-hard.h | 27 - .../include/arm-linux-gnueabihf/gnu/stubs.h | 11 - .../usr/include/arm-linux-gnueabihf/ieee754.h | 198 - .../usr/include/arm-linux-gnueabihf/jconfig.h | 61 - .../arm-linux-gnueabihf/openssl/opensslconf.h | 252 - .../arm-linux-gnueabihf/python3.4m/pyconfig.h | 1503 ---- .../include/arm-linux-gnueabihf/sys/acct.h | 108 - .../include/arm-linux-gnueabihf/sys/auxv.h | 37 - .../include/arm-linux-gnueabihf/sys/bitypes.h | 3 - .../include/arm-linux-gnueabihf/sys/cdefs.h | 419 - .../usr/include/arm-linux-gnueabihf/sys/dir.h | 27 - .../usr/include/arm-linux-gnueabihf/sys/elf.h | 25 - .../include/arm-linux-gnueabihf/sys/epoll.h | 142 - .../include/arm-linux-gnueabihf/sys/errno.h | 1 - .../include/arm-linux-gnueabihf/sys/eventfd.h | 44 - .../arm-linux-gnueabihf/sys/fanotify.h | 38 - .../include/arm-linux-gnueabihf/sys/fcntl.h | 1 - .../include/arm-linux-gnueabihf/sys/file.h | 55 - .../include/arm-linux-gnueabihf/sys/fsuid.h | 35 - .../include/arm-linux-gnueabihf/sys/gmon.h | 201 - .../arm-linux-gnueabihf/sys/gmon_out.h | 79 - .../include/arm-linux-gnueabihf/sys/inotify.h | 99 - .../usr/include/arm-linux-gnueabihf/sys/io.h | 47 - .../include/arm-linux-gnueabihf/sys/ioctl.h | 45 - .../usr/include/arm-linux-gnueabihf/sys/ipc.h | 58 - .../usr/include/arm-linux-gnueabihf/sys/kd.h | 34 - .../include/arm-linux-gnueabihf/sys/kdaemon.h | 32 - .../include/arm-linux-gnueabihf/sys/klog.h | 33 - .../include/arm-linux-gnueabihf/sys/mman.h | 151 - .../include/arm-linux-gnueabihf/sys/mount.h | 147 - .../usr/include/arm-linux-gnueabihf/sys/msg.h | 83 - .../include/arm-linux-gnueabihf/sys/mtio.h | 276 - .../include/arm-linux-gnueabihf/sys/param.h | 103 - .../usr/include/arm-linux-gnueabihf/sys/pci.h | 24 - .../arm-linux-gnueabihf/sys/personality.h | 77 - .../include/arm-linux-gnueabihf/sys/poll.h | 79 - .../include/arm-linux-gnueabihf/sys/prctl.h | 31 - .../include/arm-linux-gnueabihf/sys/procfs.h | 122 - .../include/arm-linux-gnueabihf/sys/profil.h | 60 - .../include/arm-linux-gnueabihf/sys/ptrace.h | 217 - .../include/arm-linux-gnueabihf/sys/queue.h | 574 -- .../include/arm-linux-gnueabihf/sys/quota.h | 225 - .../usr/include/arm-linux-gnueabihf/sys/raw.h | 38 - .../include/arm-linux-gnueabihf/sys/reboot.h | 54 - .../arm-linux-gnueabihf/sys/resource.h | 102 - .../include/arm-linux-gnueabihf/sys/select.h | 133 - .../usr/include/arm-linux-gnueabihf/sys/sem.h | 68 - .../arm-linux-gnueabihf/sys/sendfile.h | 51 - .../usr/include/arm-linux-gnueabihf/sys/shm.h | 64 - .../include/arm-linux-gnueabihf/sys/signal.h | 1 - .../arm-linux-gnueabihf/sys/signalfd.h | 58 - .../include/arm-linux-gnueabihf/sys/socket.h | 285 - .../arm-linux-gnueabihf/sys/socketvar.h | 3 - .../arm-linux-gnueabihf/sys/soundcard.h | 1 - .../include/arm-linux-gnueabihf/sys/stat.h | 537 -- .../include/arm-linux-gnueabihf/sys/statfs.h | 67 - .../include/arm-linux-gnueabihf/sys/statvfs.h | 90 - .../include/arm-linux-gnueabihf/sys/stropts.h | 1 - .../include/arm-linux-gnueabihf/sys/swap.h | 43 - .../include/arm-linux-gnueabihf/sys/syscall.h | 34 - .../include/arm-linux-gnueabihf/sys/sysctl.h | 73 - .../include/arm-linux-gnueabihf/sys/sysinfo.h | 47 - .../include/arm-linux-gnueabihf/sys/syslog.h | 215 - .../arm-linux-gnueabihf/sys/sysmacros.h | 65 - .../include/arm-linux-gnueabihf/sys/termios.h | 4 - .../include/arm-linux-gnueabihf/sys/time.h | 191 - .../include/arm-linux-gnueabihf/sys/timeb.h | 45 - .../include/arm-linux-gnueabihf/sys/timerfd.h | 52 - .../include/arm-linux-gnueabihf/sys/times.h | 52 - .../include/arm-linux-gnueabihf/sys/timex.h | 71 - .../arm-linux-gnueabihf/sys/ttychars.h | 61 - .../arm-linux-gnueabihf/sys/ttydefaults.h | 100 - .../include/arm-linux-gnueabihf/sys/types.h | 275 - .../arm-linux-gnueabihf/sys/ucontext.h | 112 - .../usr/include/arm-linux-gnueabihf/sys/uio.h | 122 - .../arm-linux-gnueabihf/sys/ultrasound.h | 1 - .../usr/include/arm-linux-gnueabihf/sys/un.h | 46 - .../include/arm-linux-gnueabihf/sys/unistd.h | 1 - .../include/arm-linux-gnueabihf/sys/user.h | 71 - .../include/arm-linux-gnueabihf/sys/ustat.h | 37 - .../include/arm-linux-gnueabihf/sys/utsname.h | 86 - .../usr/include/arm-linux-gnueabihf/sys/vfs.h | 4 - .../include/arm-linux-gnueabihf/sys/vlimit.h | 67 - .../usr/include/arm-linux-gnueabihf/sys/vt.h | 1 - .../include/arm-linux-gnueabihf/sys/vtimes.h | 68 - .../include/arm-linux-gnueabihf/sys/wait.h | 175 - .../include/arm-linux-gnueabihf/sys/xattr.h | 103 - .../usr/include/arm-linux-gnueabihf/zconf.h | 511 -- .../sysroots/linux/usr/include/assert.h | 122 - .../sysroots/linux/usr/include/byteswap.h | 39 - .../sysroots/linux/usr/include/bzlib.h | 282 - .../sysroots/linux/usr/include/complex.h | 112 - .../sysroots/linux/usr/include/cpio.h | 73 - .../sysroots/linux/usr/include/crypt.h | 75 - .../sysroots/linux/usr/include/ctype.h | 349 - .../sysroots/linux/usr/include/curses.h | 1703 ---- .../sysroots/linux/usr/include/cursesapp.h | 179 - .../sysroots/linux/usr/include/cursesf.h | 967 --- .../sysroots/linux/usr/include/cursesm.h | 673 -- .../sysroots/linux/usr/include/cursesp.h | 268 - .../sysroots/linux/usr/include/cursesw.h | 1563 ---- .../sysroots/linux/usr/include/cursslk.h | 238 - .../sysroots/linux/usr/include/dirent.h | 403 - .../sysroots/linux/usr/include/dlfcn.h | 190 - .../Software/sysroots/linux/usr/include/elf.h | 3304 -------- .../sysroots/linux/usr/include/endian.h | 96 - .../sysroots/linux/usr/include/envz.h | 73 - .../Software/sysroots/linux/usr/include/err.h | 57 - .../sysroots/linux/usr/include/errno.h | 72 - .../sysroots/linux/usr/include/error.h | 57 - .../Software/sysroots/linux/usr/include/eti.h | 54 - .../sysroots/linux/usr/include/etip.h | 380 - .../sysroots/linux/usr/include/execinfo.h | 43 - .../sysroots/linux/usr/include/expat.h | 1047 --- .../linux/usr/include/expat_external.h | 115 - .../sysroots/linux/usr/include/fcntl.h | 284 - .../sysroots/linux/usr/include/features.h | 401 - .../sysroots/linux/usr/include/fenv.h | 135 - .../sysroots/linux/usr/include/fmtmsg.h | 105 - .../sysroots/linux/usr/include/fnmatch.h | 62 - .../sysroots/linux/usr/include/form.h | 425 - .../sysroots/linux/usr/include/fstab.h | 79 - .../Software/sysroots/linux/usr/include/fts.h | 131 - .../Software/sysroots/linux/usr/include/ftw.h | 177 - .../sysroots/linux/usr/include/gconv.h | 180 - .../sysroots/linux/usr/include/getopt.h | 191 - .../sysroots/linux/usr/include/glob.h | 181 - .../sysroots/linux/usr/include/gnu-versions.h | 52 - .../Software/sysroots/linux/usr/include/grp.h | 207 - .../sysroots/linux/usr/include/gshadow.h | 130 - .../sysroots/linux/usr/include/iconv.h | 55 - .../sysroots/linux/usr/include/ifaddrs.h | 73 - .../sysroots/linux/usr/include/inttypes.h | 434 - .../sysroots/linux/usr/include/jerror.h | 314 - .../sysroots/linux/usr/include/jmorecfg.h | 408 - .../sysroots/linux/usr/include/jpegint.h | 401 - .../sysroots/linux/usr/include/jpeglib.h | 1214 --- .../sysroots/linux/usr/include/langinfo.h | 599 -- .../sysroots/linux/usr/include/lastlog.h | 4 - .../sysroots/linux/usr/include/libgen.h | 39 - .../sysroots/linux/usr/include/libintl.h | 123 - .../sysroots/linux/usr/include/libio.h | 529 -- .../sysroots/linux/usr/include/libpng/png.h | 3812 --------- .../linux/usr/include/libpng/pngconf.h | 1665 ---- .../sysroots/linux/usr/include/limits.h | 152 - .../sysroots/linux/usr/include/link.h | 194 - .../sysroots/linux/usr/include/locale.h | 207 - .../sysroots/linux/usr/include/lzma.h | 313 - .../sysroots/linux/usr/include/malloc.h | 171 - .../sysroots/linux/usr/include/math.h | 491 -- .../sysroots/linux/usr/include/mcheck.h | 60 - .../sysroots/linux/usr/include/memory.h | 33 - .../sysroots/linux/usr/include/menu.h | 260 - .../sysroots/linux/usr/include/mntent.h | 97 - .../sysroots/linux/usr/include/monetary.h | 58 - .../sysroots/linux/usr/include/mqueue.h | 100 - .../sysroots/linux/usr/include/nc_tparm.h | 77 - .../sysroots/linux/usr/include/ncurses.h | 1703 ---- .../sysroots/linux/usr/include/ncurses_dll.h | 86 - .../sysroots/linux/usr/include/netdb.h | 715 -- .../sysroots/linux/usr/include/nl_types.h | 54 - .../Software/sysroots/linux/usr/include/nss.h | 63 - .../sysroots/linux/usr/include/obstack.h | 505 -- .../sysroots/linux/usr/include/panel.h | 85 - .../sysroots/linux/usr/include/paths.h | 75 - .../Software/sysroots/linux/usr/include/png.h | 3812 --------- .../sysroots/linux/usr/include/pngconf.h | 1665 ---- .../sysroots/linux/usr/include/poll.h | 1 - .../sysroots/linux/usr/include/printf.h | 188 - .../sysroots/linux/usr/include/pthread.h | 1172 --- .../Software/sysroots/linux/usr/include/pty.h | 45 - .../Software/sysroots/linux/usr/include/pwd.h | 185 - .../linux/usr/include/python3.4/Python-ast.h | 569 -- .../linux/usr/include/python3.4/Python.h | 133 - .../linux/usr/include/python3.4/abstract.h | 1267 --- .../linux/usr/include/python3.4/accu.h | 37 - .../linux/usr/include/python3.4/asdl.h | 45 - .../linux/usr/include/python3.4/ast.h | 22 - .../linux/usr/include/python3.4/bitset.h | 32 - .../linux/usr/include/python3.4/bltinmodule.h | 14 - .../linux/usr/include/python3.4/boolobject.h | 34 - .../usr/include/python3.4/bytearrayobject.h | 62 - .../usr/include/python3.4/bytes_methods.h | 46 - .../linux/usr/include/python3.4/bytesobject.h | 128 - .../linux/usr/include/python3.4/cellobject.h | 29 - .../linux/usr/include/python3.4/ceval.h | 205 - .../linux/usr/include/python3.4/classobject.h | 58 - .../linux/usr/include/python3.4/code.h | 115 - .../linux/usr/include/python3.4/codecs.h | 229 - .../linux/usr/include/python3.4/compile.h | 72 - .../usr/include/python3.4/complexobject.h | 77 - .../linux/usr/include/python3.4/datetime.h | 243 - .../linux/usr/include/python3.4/descrobject.h | 105 - .../linux/usr/include/python3.4/dictobject.h | 126 - .../linux/usr/include/python3.4/dtoa.h | 19 - .../include/python3.4/dynamic_annotations.h | 499 -- .../linux/usr/include/python3.4/enumobject.h | 17 - .../linux/usr/include/python3.4/errcode.h | 38 - .../linux/usr/include/python3.4/eval.h | 27 - .../linux/usr/include/python3.4/fileobject.h | 58 - .../linux/usr/include/python3.4/fileutils.h | 79 - .../linux/usr/include/python3.4/floatobject.h | 128 - .../linux/usr/include/python3.4/frameobject.h | 95 - .../linux/usr/include/python3.4/funcobject.h | 89 - .../linux/usr/include/python3.4/genobject.h | 46 - .../linux/usr/include/python3.4/graminit.h | 84 - .../linux/usr/include/python3.4/grammar.h | 93 - .../linux/usr/include/python3.4/import.h | 130 - .../linux/usr/include/python3.4/intrcheck.h | 21 - .../linux/usr/include/python3.4/iterobject.h | 25 - .../linux/usr/include/python3.4/listobject.h | 80 - .../linux/usr/include/python3.4/longintrepr.h | 103 - .../linux/usr/include/python3.4/longobject.h | 204 - .../linux/usr/include/python3.4/marshal.h | 28 - .../usr/include/python3.4/memoryobject.h | 74 - .../linux/usr/include/python3.4/metagrammar.h | 18 - .../usr/include/python3.4/methodobject.h | 93 - .../linux/usr/include/python3.4/modsupport.h | 132 - .../usr/include/python3.4/moduleobject.h | 63 - .../usr/include/python3.4/namespaceobject.h | 17 - .../linux/usr/include/python3.4/node.h | 44 - .../python3.4/numpy/__multiarray_api.h | 1721 ---- .../usr/include/python3.4/numpy/__ufunc_api.h | 328 - .../numpy/_neighborhood_iterator_imp.h | 90 - .../include/python3.4/numpy/_numpyconfig.h | 32 - .../usr/include/python3.4/numpy/arrayobject.h | 11 - .../include/python3.4/numpy/arrayscalars.h | 175 - .../usr/include/python3.4/numpy/halffloat.h | 69 - .../python3.4/numpy/multiarray_api.txt | 2430 ------ .../include/python3.4/numpy/ndarrayobject.h | 237 - .../include/python3.4/numpy/ndarraytypes.h | 1777 ---- .../usr/include/python3.4/numpy/noprefix.h | 209 - .../python3.4/numpy/npy_1_7_deprecated_api.h | 130 - .../include/python3.4/numpy/npy_3kcompat.h | 502 -- .../usr/include/python3.4/numpy/npy_common.h | 1005 --- .../usr/include/python3.4/numpy/npy_cpu.h | 114 - .../usr/include/python3.4/numpy/npy_endian.h | 48 - .../include/python3.4/numpy/npy_interrupt.h | 117 - .../usr/include/python3.4/numpy/npy_math.h | 468 -- .../python3.4/numpy/npy_no_deprecated_api.h | 19 - .../usr/include/python3.4/numpy/npy_os.h | 30 - .../usr/include/python3.4/numpy/numpyconfig.h | 34 - .../usr/include/python3.4/numpy/old_defines.h | 187 - .../usr/include/python3.4/numpy/oldnumeric.h | 23 - .../usr/include/python3.4/numpy/ufunc_api.txt | 321 - .../usr/include/python3.4/numpy/ufuncobject.h | 479 -- .../linux/usr/include/python3.4/numpy/utils.h | 19 - .../linux/usr/include/python3.4/object.h | 1015 --- .../linux/usr/include/python3.4/objimpl.h | 361 - .../linux/usr/include/python3.4/opcode.h | 159 - .../linux/usr/include/python3.4/osdefs.h | 50 - .../linux/usr/include/python3.4/parsetok.h | 108 - .../linux/usr/include/python3.4/patchlevel.h | 35 - .../linux/usr/include/python3.4/pgen.h | 18 - .../linux/usr/include/python3.4/pgenheaders.h | 42 - .../linux/usr/include/python3.4/py_curses.h | 177 - .../linux/usr/include/python3.4/pyarena.h | 64 - .../linux/usr/include/python3.4/pyatomic.h | 184 - .../linux/usr/include/python3.4/pycapsule.h | 59 - .../linux/usr/include/python3.4/pyconfig.h | 79 - .../linux/usr/include/python3.4/pyctype.h | 33 - .../linux/usr/include/python3.4/pydebug.h | 34 - .../linux/usr/include/python3.4/pyerrors.h | 464 -- .../linux/usr/include/python3.4/pyexpat.h | 53 - .../linux/usr/include/python3.4/pyfpe.h | 176 - .../linux/usr/include/python3.4/pygetopt.h | 21 - .../linux/usr/include/python3.4/pyhash.h | 149 - .../linux/usr/include/python3.4/pymacconfig.h | 102 - .../linux/usr/include/python3.4/pymacro.h | 78 - .../linux/usr/include/python3.4/pymath.h | 190 - .../linux/usr/include/python3.4/pymem.h | 183 - .../linux/usr/include/python3.4/pyport.h | 883 -- .../linux/usr/include/python3.4/pystate.h | 271 - .../linux/usr/include/python3.4/pystrcmp.h | 23 - .../linux/usr/include/python3.4/pystrtod.h | 41 - .../linux/usr/include/python3.4/pythonrun.h | 304 - .../linux/usr/include/python3.4/pythread.h | 93 - .../linux/usr/include/python3.4/pytime.h | 105 - .../linux/usr/include/python3.4/rangeobject.h | 27 - .../linux/usr/include/python3.4/setobject.h | 113 - .../linux/usr/include/python3.4/sliceobject.h | 50 - .../usr/include/python3.4/structmember.h | 76 - .../linux/usr/include/python3.4/structseq.h | 49 - .../linux/usr/include/python3.4/symtable.h | 122 - .../linux/usr/include/python3.4/sysmodule.h | 39 - .../linux/usr/include/python3.4/token.h | 87 - .../linux/usr/include/python3.4/traceback.h | 72 - .../linux/usr/include/python3.4/tupleobject.h | 73 - .../linux/usr/include/python3.4/typeslots.h | 76 - .../linux/usr/include/python3.4/ucnhash.h | 36 - .../usr/include/python3.4/unicodeobject.h | 2271 ----- .../linux/usr/include/python3.4/warnings.h | 54 - .../usr/include/python3.4/weakrefobject.h | 86 - .../sysroots/linux/usr/include/re_comp.h | 25 - .../sysroots/linux/usr/include/regex.h | 592 -- .../sysroots/linux/usr/include/regexp.h | 226 - .../sysroots/linux/usr/include/resolv.h | 389 - .../sysroots/linux/usr/include/sched.h | 126 - .../sysroots/linux/usr/include/search.h | 174 - .../sysroots/linux/usr/include/semaphore.h | 78 - .../sysroots/linux/usr/include/setjmp.h | 114 - .../sysroots/linux/usr/include/sgtty.h | 40 - .../sysroots/linux/usr/include/shadow.h | 148 - .../sysroots/linux/usr/include/signal.h | 403 - .../sysroots/linux/usr/include/spawn.h | 190 - .../sysroots/linux/usr/include/sqlite3.h | 7338 ----------------- .../sysroots/linux/usr/include/sqlite3ext.h | 487 -- .../sysroots/linux/usr/include/stab.h | 17 - .../sysroots/linux/usr/include/stdc-predef.h | 59 - .../sysroots/linux/usr/include/stdint.h | 306 - .../sysroots/linux/usr/include/stdio.h | 947 --- .../sysroots/linux/usr/include/stdio_ext.h | 86 - .../sysroots/linux/usr/include/stdlib.h | 970 --- .../sysroots/linux/usr/include/string.h | 646 -- .../sysroots/linux/usr/include/strings.h | 143 - .../sysroots/linux/usr/include/stropts.h | 92 - .../sysroots/linux/usr/include/sudo_plugin.h | 196 - .../sysroots/linux/usr/include/syscall.h | 1 - .../sysroots/linux/usr/include/sysexits.h | 114 - .../sysroots/linux/usr/include/syslog.h | 1 - .../Software/sysroots/linux/usr/include/tar.h | 112 - .../include/tcl/tcl-private/compat/dirent.h | 21 - .../include/tcl/tcl-private/compat/dirent2.h | 53 - .../include/tcl/tcl-private/compat/dlfcn.h | 58 - .../tcl/tcl-private/compat/fake-rfc2553.h | 170 - .../include/tcl/tcl-private/compat/float.h | 14 - .../include/tcl/tcl-private/compat/limits.h | 22 - .../include/tcl/tcl-private/compat/stdlib.h | 36 - .../include/tcl/tcl-private/compat/string.h | 57 - .../include/tcl/tcl-private/compat/unistd.h | 76 - .../tcl/tcl-private/generic/regcustom.h | 163 - .../include/tcl/tcl-private/generic/regerrs.h | 20 - .../include/tcl/tcl-private/generic/regex.h | 333 - .../include/tcl/tcl-private/generic/regguts.h | 412 - .../usr/include/tcl/tcl-private/generic/tcl.h | 2648 ------ .../tcl/tcl-private/generic/tclCompile.h | 1807 ---- .../tcl/tcl-private/generic/tclDecls.h | 3915 --------- .../tcl/tcl-private/generic/tclFileSystem.h | 74 - .../include/tcl/tcl-private/generic/tclIO.h | 327 - .../include/tcl/tcl-private/generic/tclInt.h | 4773 ----------- .../tcl/tcl-private/generic/tclIntDecls.h | 1362 --- .../tcl/tcl-private/generic/tclIntPlatDecls.h | 559 -- .../include/tcl/tcl-private/generic/tclOO.h | 141 - .../tcl/tcl-private/generic/tclOODecls.h | 218 - .../tcl/tcl-private/generic/tclOOInt.h | 604 -- .../tcl/tcl-private/generic/tclOOIntDecls.h | 163 - .../tcl/tcl-private/generic/tclParse.h | 17 - .../tcl/tcl-private/generic/tclPlatDecls.h | 120 - .../include/tcl/tcl-private/generic/tclPort.h | 43 - .../tcl/tcl-private/generic/tclRegexp.h | 52 - .../tcl/tcl-private/generic/tclTomMath.h | 832 -- .../tcl/tcl-private/generic/tclTomMathDecls.h | 499 -- .../tcl/tcl-private/generic/tclTomMathInt.h | 3 - .../include/tcl/tcl-private/generic/tommath.h | 1 - .../tcl/tcl-private/libtommath/tommath.h | 579 -- .../tcl-private/libtommath/tommath_class.h | 995 --- .../libtommath/tommath_superclass.h | 72 - .../tcl/tcl-private/unix/tclUnixPort.h | 739 -- .../tcl/tcl-private/unix/tclUnixThrd.h | 19 - .../sysroots/linux/usr/include/tcl/tcl.h | 2648 ------ .../sysroots/linux/usr/include/tcl/tclDecls.h | 3915 --------- .../sysroots/linux/usr/include/tcl/tclOO.h | 141 - .../linux/usr/include/tcl/tclOODecls.h | 218 - .../linux/usr/include/tcl/tclPlatDecls.h | 120 - .../linux/usr/include/tcl/tclTomMath.h | 832 -- .../linux/usr/include/tcl/tclTomMathDecls.h | 499 -- .../include/tcl/tk-private/compat/limits.h | 22 - .../include/tcl/tk-private/compat/stdlib.h | 36 - .../include/tcl/tk-private/compat/unistd.h | 76 - .../include/tcl/tk-private/generic/default.h | 28 - .../include/tcl/tk-private/generic/ks_names.h | 922 --- .../usr/include/tcl/tk-private/generic/tk.h | 1619 ---- .../usr/include/tcl/tk-private/generic/tk3d.h | 85 - .../include/tcl/tk-private/generic/tkBusy.h | 41 - .../include/tcl/tk-private/generic/tkButton.h | 322 - .../include/tcl/tk-private/generic/tkCanvas.h | 312 - .../include/tcl/tk-private/generic/tkColor.h | 75 - .../include/tcl/tk-private/generic/tkDecls.h | 1731 ---- .../include/tcl/tk-private/generic/tkEntry.h | 298 - .../tcl/tk-private/generic/tkFileFilter.h | 78 - .../include/tcl/tk-private/generic/tkFont.h | 224 - .../tcl/tk-private/generic/tkImgPhoto.h | 262 - .../include/tcl/tk-private/generic/tkInt.h | 1257 --- .../tcl/tk-private/generic/tkIntDecls.h | 1177 --- .../tcl/tk-private/generic/tkIntPlatDecls.h | 659 -- .../tcl/tk-private/generic/tkIntXlibDecls.h | 1277 --- .../include/tcl/tk-private/generic/tkMenu.h | 563 -- .../tcl/tk-private/generic/tkMenubutton.h | 216 - .../tcl/tk-private/generic/tkPlatDecls.h | 174 - .../include/tcl/tk-private/generic/tkPort.h | 31 - .../include/tcl/tk-private/generic/tkScale.h | 238 - .../tcl/tk-private/generic/tkScrollbar.h | 183 - .../include/tcl/tk-private/generic/tkSelect.h | 167 - .../include/tcl/tk-private/generic/tkText.h | 1152 --- .../include/tcl/tk-private/generic/tkUndo.h | 113 - .../tcl/tk-private/generic/ttk/ttkDecls.h | 272 - .../tcl/tk-private/generic/ttk/ttkManager.h | 92 - .../tcl/tk-private/generic/ttk/ttkTheme.h | 444 - .../tcl/tk-private/generic/ttk/ttkThemeInt.h | 42 - .../tcl/tk-private/generic/ttk/ttkWidget.h | 273 - .../tcl/tk-private/unix/tkUnixDefault.h | 531 -- .../include/tcl/tk-private/unix/tkUnixInt.h | 35 - .../include/tcl/tk-private/unix/tkUnixPort.h | 196 - .../sysroots/linux/usr/include/tcl/tk.h | 1619 ---- .../sysroots/linux/usr/include/tcl/tkDecls.h | 1731 ---- .../linux/usr/include/tcl/tkPlatDecls.h | 174 - .../sysroots/linux/usr/include/term.h | 806 -- .../sysroots/linux/usr/include/term_entry.h | 192 - .../sysroots/linux/usr/include/termcap.h | 75 - .../sysroots/linux/usr/include/termio.h | 6 - .../sysroots/linux/usr/include/termios.h | 109 - .../sysroots/linux/usr/include/tgmath.h | 454 - .../sysroots/linux/usr/include/thread_db.h | 458 - .../Software/sysroots/linux/usr/include/tic.h | 341 - .../sysroots/linux/usr/include/time.h | 434 - .../include/tk/tcl-private/compat/dirent.h | 21 - .../include/tk/tcl-private/compat/dirent2.h | 53 - .../usr/include/tk/tcl-private/compat/dlfcn.h | 58 - .../tk/tcl-private/compat/fake-rfc2553.h | 170 - .../usr/include/tk/tcl-private/compat/float.h | 14 - .../include/tk/tcl-private/compat/limits.h | 22 - .../include/tk/tcl-private/compat/stdlib.h | 36 - .../include/tk/tcl-private/compat/string.h | 57 - .../include/tk/tcl-private/compat/unistd.h | 76 - .../tk/tcl-private/generic/regcustom.h | 163 - .../include/tk/tcl-private/generic/regerrs.h | 20 - .../include/tk/tcl-private/generic/regex.h | 333 - .../include/tk/tcl-private/generic/regguts.h | 412 - .../usr/include/tk/tcl-private/generic/tcl.h | 2648 ------ .../tk/tcl-private/generic/tclCompile.h | 1807 ---- .../include/tk/tcl-private/generic/tclDecls.h | 3915 --------- .../tk/tcl-private/generic/tclFileSystem.h | 74 - .../include/tk/tcl-private/generic/tclIO.h | 327 - .../include/tk/tcl-private/generic/tclInt.h | 4773 ----------- .../tk/tcl-private/generic/tclIntDecls.h | 1362 --- .../tk/tcl-private/generic/tclIntPlatDecls.h | 559 -- .../include/tk/tcl-private/generic/tclOO.h | 141 - .../tk/tcl-private/generic/tclOODecls.h | 218 - .../include/tk/tcl-private/generic/tclOOInt.h | 604 -- .../tk/tcl-private/generic/tclOOIntDecls.h | 163 - .../include/tk/tcl-private/generic/tclParse.h | 17 - .../tk/tcl-private/generic/tclPlatDecls.h | 120 - .../include/tk/tcl-private/generic/tclPort.h | 43 - .../tk/tcl-private/generic/tclRegexp.h | 52 - .../tk/tcl-private/generic/tclTomMath.h | 832 -- .../tk/tcl-private/generic/tclTomMathDecls.h | 499 -- .../tk/tcl-private/generic/tclTomMathInt.h | 3 - .../include/tk/tcl-private/generic/tommath.h | 1 - .../tk/tcl-private/libtommath/tommath.h | 579 -- .../tk/tcl-private/libtommath/tommath_class.h | 995 --- .../libtommath/tommath_superclass.h | 72 - .../include/tk/tcl-private/unix/tclUnixPort.h | 739 -- .../include/tk/tcl-private/unix/tclUnixThrd.h | 19 - .../sysroots/linux/usr/include/tk/tcl.h | 2648 ------ .../sysroots/linux/usr/include/tk/tclDecls.h | 3915 --------- .../sysroots/linux/usr/include/tk/tclOO.h | 141 - .../linux/usr/include/tk/tclOODecls.h | 218 - .../linux/usr/include/tk/tclPlatDecls.h | 120 - .../linux/usr/include/tk/tclTomMath.h | 832 -- .../linux/usr/include/tk/tclTomMathDecls.h | 499 -- .../usr/include/tk/tk-private/compat/limits.h | 22 - .../usr/include/tk/tk-private/compat/stdlib.h | 36 - .../usr/include/tk/tk-private/compat/unistd.h | 76 - .../include/tk/tk-private/generic/default.h | 28 - .../include/tk/tk-private/generic/ks_names.h | 922 --- .../usr/include/tk/tk-private/generic/tk.h | 1619 ---- .../usr/include/tk/tk-private/generic/tk3d.h | 85 - .../include/tk/tk-private/generic/tkBusy.h | 41 - .../include/tk/tk-private/generic/tkButton.h | 322 - .../include/tk/tk-private/generic/tkCanvas.h | 312 - .../include/tk/tk-private/generic/tkColor.h | 75 - .../include/tk/tk-private/generic/tkDecls.h | 1731 ---- .../include/tk/tk-private/generic/tkEntry.h | 298 - .../tk/tk-private/generic/tkFileFilter.h | 78 - .../include/tk/tk-private/generic/tkFont.h | 224 - .../tk/tk-private/generic/tkImgPhoto.h | 262 - .../usr/include/tk/tk-private/generic/tkInt.h | 1257 --- .../tk/tk-private/generic/tkIntDecls.h | 1177 --- .../tk/tk-private/generic/tkIntPlatDecls.h | 659 -- .../tk/tk-private/generic/tkIntXlibDecls.h | 1277 --- .../include/tk/tk-private/generic/tkMenu.h | 563 -- .../tk/tk-private/generic/tkMenubutton.h | 216 - .../tk/tk-private/generic/tkPlatDecls.h | 174 - .../include/tk/tk-private/generic/tkPort.h | 31 - .../include/tk/tk-private/generic/tkScale.h | 238 - .../tk/tk-private/generic/tkScrollbar.h | 183 - .../include/tk/tk-private/generic/tkSelect.h | 167 - .../include/tk/tk-private/generic/tkText.h | 1152 --- .../include/tk/tk-private/generic/tkUndo.h | 113 - .../tk/tk-private/generic/ttk/ttkDecls.h | 272 - .../tk/tk-private/generic/ttk/ttkManager.h | 92 - .../tk/tk-private/generic/ttk/ttkTheme.h | 444 - .../tk/tk-private/generic/ttk/ttkThemeInt.h | 42 - .../tk/tk-private/generic/ttk/ttkWidget.h | 273 - .../tk/tk-private/unix/tkUnixDefault.h | 531 -- .../include/tk/tk-private/unix/tkUnixInt.h | 35 - .../include/tk/tk-private/unix/tkUnixPort.h | 196 - .../sysroots/linux/usr/include/tk/tk.h | 1619 ---- .../sysroots/linux/usr/include/tk/tkDecls.h | 1731 ---- .../linux/usr/include/tk/tkPlatDecls.h | 174 - .../sysroots/linux/usr/include/ttyent.h | 65 - .../sysroots/linux/usr/include/turbojpeg.h | 919 --- .../sysroots/linux/usr/include/uchar.h | 83 - .../sysroots/linux/usr/include/ucontext.h | 52 - .../sysroots/linux/usr/include/ulimit.h | 47 - .../sysroots/linux/usr/include/unctrl.h | 67 - .../sysroots/linux/usr/include/unistd.h | 1153 --- .../sysroots/linux/usr/include/ustat.h | 1 - .../sysroots/linux/usr/include/utime.h | 51 - .../sysroots/linux/usr/include/utmp.h | 96 - .../sysroots/linux/usr/include/utmpx.h | 125 - .../sysroots/linux/usr/include/values.h | 68 - .../sysroots/linux/usr/include/wait.h | 1 - .../sysroots/linux/usr/include/wchar.h | 900 -- .../sysroots/linux/usr/include/wctype.h | 318 - .../sysroots/linux/usr/include/wordexp.h | 70 - .../sysroots/linux/usr/include/xlocale.h | 44 - .../sysroots/linux/usr/include/zlib.h | 1768 ---- .../include/numpy/__multiarray_api.h | 1554 ---- .../numpy_include/include/numpy/__ufunc_api.h | 326 - .../numpy/_neighborhood_iterator_imp.h | 90 - .../include/numpy/_numpyconfig.h | 32 - .../numpy_include/include/numpy/arrayobject.h | 11 - .../include/numpy/arrayscalars.h | 175 - .../numpy_include/include/numpy/halffloat.h | 70 - .../include/numpy/multiarray_api.txt | 2506 ------ .../include/numpy/ndarrayobject.h | 285 - .../include/numpy/ndarraytypes.h | 1848 ----- .../numpy_include/include/numpy/noprefix.h | 212 - .../include/numpy/npy_1_7_deprecated_api.h | 133 - .../include/numpy/npy_3kcompat.h | 577 -- .../numpy_include/include/numpy/npy_common.h | 1104 --- .../numpy_include/include/numpy/npy_cpu.h | 118 - .../numpy_include/include/numpy/npy_endian.h | 72 - .../include/numpy/npy_interrupt.h | 117 - .../numpy_include/include/numpy/npy_math.h | 646 -- .../include/numpy/npy_no_deprecated_api.h | 19 - .../numpy_include/include/numpy/npy_os.h | 30 - .../numpy_include/include/numpy/numpyconfig.h | 44 - .../numpy_include/include/numpy/old_defines.h | 187 - .../numpy_include/include/numpy/oldnumeric.h | 25 - .../include/numpy/random/bitgen.h | 20 - .../include/numpy/random/distributions.h | 200 - .../numpy_include/include/numpy/ufunc_api.txt | 338 - .../numpy_include/include/numpy/ufuncobject.h | 369 - .../numpy_include/include/numpy/utils.h | 21 - .../python3.6/include/python3.6m/Python-ast.h | 637 -- .../python3.6/include/python3.6m/Python.h | 148 - .../python3.6/include/python3.6m/abstract.h | 1377 ---- .../python3.6/include/python3.6m/accu.h | 37 - .../python3.6/include/python3.6m/asdl.h | 46 - .../python3.6/include/python3.6m/ast.h | 22 - .../python3.6/include/python3.6m/bitset.h | 32 - .../include/python3.6m/bltinmodule.h | 14 - .../python3.6/include/python3.6m/boolobject.h | 34 - .../include/python3.6m/bytearrayobject.h | 62 - .../include/python3.6m/bytes_methods.h | 67 - .../include/python3.6m/bytesobject.h | 224 - .../python3.6/include/python3.6m/cellobject.h | 29 - .../python3.6/include/python3.6m/ceval.h | 238 - .../include/python3.6m/classobject.h | 58 - .../python3.6/include/python3.6m/code.h | 157 - .../python3.6/include/python3.6m/codecs.h | 240 - .../python3.6/include/python3.6m/compile.h | 73 - .../include/python3.6m/complexobject.h | 69 - .../python3.6/include/python3.6m/datetime.h | 260 - .../include/python3.6m/descrobject.h | 107 - .../python3.6/include/python3.6m/dictobject.h | 177 - .../python3.6/include/python3.6m/dtoa.h | 19 - .../include/python3.6m/dynamic_annotations.h | 499 -- .../python3.6/include/python3.6m/enumobject.h | 17 - .../python3.6/include/python3.6m/errcode.h | 38 - .../python3.6/include/python3.6m/eval.h | 27 - .../python3.6/include/python3.6m/fileobject.h | 50 - .../python3.6/include/python3.6m/fileutils.h | 159 - .../include/python3.6m/floatobject.h | 130 - .../include/python3.6m/frameobject.h | 95 - .../python3.6/include/python3.6m/funcobject.h | 103 - .../python3.6/include/python3.6m/genobject.h | 104 - .../python3.6/include/python3.6m/graminit.h | 88 - .../python3.6/include/python3.6m/grammar.h | 94 - .../python3.6/include/python3.6m/import.h | 140 - .../python3.6/include/python3.6m/intrcheck.h | 24 - .../python3.6/include/python3.6m/iterobject.h | 25 - .../python3.6/include/python3.6m/listobject.h | 81 - .../include/python3.6m/longintrepr.h | 99 - .../python3.6/include/python3.6m/longobject.h | 215 - .../python3.6/include/python3.6m/marshal.h | 28 - .../include/python3.6m/memoryobject.h | 72 - .../include/python3.6m/metagrammar.h | 18 - .../include/python3.6m/methodobject.h | 110 - .../python3.6/include/python3.6m/modsupport.h | 183 - .../include/python3.6m/moduleobject.h | 89 - .../include/python3.6m/namespaceobject.h | 19 - .../python3.6/include/python3.6m/node.h | 44 - .../python3.6/include/python3.6m/object.h | 1078 --- .../python3.6/include/python3.6m/objimpl.h | 370 - .../include/python3.6m/odictobject.h | 43 - .../python3.6/include/python3.6m/opcode.h | 146 - .../python3.6/include/python3.6m/osdefs.h | 47 - .../python3.6/include/python3.6m/osmodule.h | 17 - .../python3.6/include/python3.6m/parsetok.h | 108 - .../python3.6/include/python3.6m/patchlevel.h | 35 - .../python3.6/include/python3.6m/pgen.h | 18 - .../include/python3.6m/pgenheaders.h | 43 - .../python3.6/include/python3.6m/py_curses.h | 178 - .../python3.6/include/python3.6m/pyarena.h | 64 - .../python3.6/include/python3.6m/pyatomic.h | 250 - .../python3.6/include/python3.6m/pycapsule.h | 59 - .../python3.6/include/python3.6m/pyconfig.h | 1552 ---- .../python3.6/include/python3.6m/pyctype.h | 33 - .../python3.6/include/python3.6m/pydebug.h | 40 - .../python3.6/include/python3.6m/pydtrace.h | 53 - .../python3.6/include/python3.6m/pyerrors.h | 503 -- .../python3.6/include/python3.6m/pyexpat.h | 55 - .../python3.6/include/python3.6m/pyfpe.h | 176 - .../python3.6/include/python3.6m/pygetopt.h | 21 - .../python3.6/include/python3.6m/pyhash.h | 145 - .../include/python3.6m/pylifecycle.h | 131 - .../include/python3.6m/pymacconfig.h | 102 - .../python3.6/include/python3.6m/pymacro.h | 98 - .../python3.6/include/python3.6m/pymath.h | 230 - .../python3.6/include/python3.6m/pymem.h | 235 - .../python3.6/include/python3.6m/pyport.h | 767 -- .../python3.6/include/python3.6m/pystate.h | 324 - .../python3.6/include/python3.6m/pystrcmp.h | 23 - .../python3.6/include/python3.6m/pystrhex.h | 19 - .../python3.6/include/python3.6m/pystrtod.h | 45 - .../python3.6/include/python3.6m/pythonrun.h | 197 - .../python3.6/include/python3.6m/pythread.h | 90 - .../python3.6/include/python3.6m/pytime.h | 211 - .../include/python3.6m/rangeobject.h | 27 - .../python3.6/include/python3.6m/setobject.h | 108 - .../include/python3.6m/sliceobject.h | 65 - .../include/python3.6m/structmember.h | 74 - .../python3.6/include/python3.6m/structseq.h | 49 - .../python3.6/include/python3.6m/symtable.h | 119 - .../python3.6/include/python3.6m/sysmodule.h | 43 - .../python3.6/include/python3.6m/token.h | 90 - .../python3.6/include/python3.6m/traceback.h | 119 - .../include/python3.6m/tupleobject.h | 73 - .../python3.6/include/python3.6m/typeslots.h | 85 - .../python3.6/include/python3.6m/ucnhash.h | 36 - .../include/python3.6m/unicodeobject.h | 2342 ------ .../python3.6/include/python3.6m/warnings.h | 63 - .../include/python3.6m/weakrefobject.h | 86 - .../sysroots/python3.6/lib/libpython3.6m.a | Bin 12959582 -> 0 bytes 1053 files changed, 180 insertions(+), 258672 deletions(-) create mode 100644 vivado/Software/.devcontainer/devcontainer.json delete mode 100644 vivado/Software/EggDriver/.cproject delete mode 100644 vivado/Software/EggDriver/.project rename vivado/Software/{ => EggDriver/cmake}/zynq-linux.toolchain.cmake (100%) rename vivado/Software/EggDriver/{src => include}/eggnet.h (100%) rename vivado/Software/{ => EggDriver/lib}/lsuio/.cproject (100%) rename vivado/Software/{dma-proxy => EggDriver/lib/lsuio}/.gitignore (100%) rename vivado/Software/{ => EggDriver/lib}/lsuio/.project (100%) create mode 100644 vivado/Software/EggDriver/lib/lsuio/CMakeLists.txt rename vivado/Software/{eggnet => EggDriver/lib/lsuio/include}/libuio.h (100%) rename vivado/Software/{eggnet => EggDriver/lib/lsuio/src}/attr.c (100%) rename vivado/Software/{ => EggDriver/lib}/lsuio/src/base.c (100%) rename vivado/Software/{eggnet => EggDriver/lib/lsuio/src}/helper.c (100%) rename vivado/Software/{eggnet => EggDriver/lib/lsuio/src}/libuio_internal.h (100%) rename vivado/Software/{ => EggDriver/lib}/lsuio/src/lsuio.c (100%) rename vivado/Software/{eggnet => EggDriver/lib/lsuio/src}/mem.c (100%) create mode 100644 vivado/Software/EggDriver/pysetup/info.py create mode 100644 vivado/Software/EggDriver/pysetup/python-versions.txt rename vivado/Software/{ => EggDriver}/pysetup/requirements.txt (100%) delete mode 100644 vivado/Software/EggNetDriver/Debug/makefile delete mode 100644 vivado/Software/EggNetDriver/Debug/objects.mk delete mode 100644 vivado/Software/EggNetDriver/Debug/sources.mk delete mode 100644 vivado/Software/EggNetDriver/Debug/src/dma-proxy.d delete mode 100644 vivado/Software/EggNetDriver/Debug/src/dma-proxy.o delete mode 100644 vivado/Software/EggNetDriver/Debug/src/eggnet.d delete mode 100644 vivado/Software/EggNetDriver/Debug/src/eggnet.o delete mode 100644 vivado/Software/EggNetDriver/Debug/src/subdir.mk delete mode 100644 vivado/Software/RemoteSystemsTempFiles/.project rename vivado/Software/{ => Xillinx-Examples}/dma-proxy/.cproject (100%) rename vivado/Software/{lsuio => Xillinx-Examples/dma-proxy}/.gitignore (100%) rename vivado/Software/{ => Xillinx-Examples}/dma-proxy/.project (100%) rename vivado/Software/{ => Xillinx-Examples}/dma-proxy/src/README.txt (100%) rename vivado/Software/{ => Xillinx-Examples}/dma-proxy/src/dma-proxy-test.c (100%) rename vivado/Software/{ => Xillinx-Examples}/dma-proxy/src/dma-proxy.h (100%) rename vivado/Software/{ => Xillinx-Examples}/fig/createLinApp.PNG (100%) rename vivado/Software/{ => Xillinx-Examples}/fig/pthread.PNG (100%) rename vivado/Software/{ => Xillinx-Examples}/webtalk/sdk_webtalk.tcl (100%) rename vivado/Software/{ => Xillinx-Examples}/webtalk/sdk_webtalk.wdm (100%) rename vivado/Software/{ => Xillinx-Examples}/webtalk/usage_statistics_ext_sdk.html (100%) rename vivado/Software/{ => Xillinx-Examples}/webtalk/usage_statistics_ext_sdk.xml (100%) rename vivado/Software/{ => Xillinx-Examples}/webtalk/webtalk.jou (100%) rename vivado/Software/{ => Xillinx-Examples}/webtalk/webtalk_11032.backup.jou (100%) delete mode 100755 vivado/Software/dockcross-linux-armv7a delete mode 100644 vivado/Software/eggnet/CMakeLists.txt delete mode 100644 vivado/Software/eggnet/CMakeLists_find_package.txt delete mode 100644 vivado/Software/eggnet/EggNetDriverCore.py delete mode 100644 vivado/Software/eggnet/base.c delete mode 100644 vivado/Software/eggnet/dbg.h delete mode 100644 vivado/Software/eggnet/dma-proxy.c delete mode 100644 vivado/Software/eggnet/dma-proxy.h delete mode 100644 vivado/Software/eggnet/eggdbg.c delete mode 100644 vivado/Software/eggnet/eggdma.c delete mode 100644 vivado/Software/eggnet/eggnet.c delete mode 100644 vivado/Software/eggnet/eggnet.h delete mode 100644 vivado/Software/eggnet/eggnet.i delete mode 100644 vivado/Software/eggnet/eggnet_core.h delete mode 100644 vivado/Software/eggnet/eggnet_wrap.c delete mode 100644 vivado/Software/eggnet/eggstatus.c delete mode 100644 vivado/Software/eggnet/numpy.i delete mode 100644 vivado/Software/lsuio/src/attr.c delete mode 100644 vivado/Software/lsuio/src/helper.c delete mode 100644 vivado/Software/lsuio/src/libuio.h delete mode 100644 vivado/Software/lsuio/src/libuio_internal.h delete mode 100644 vivado/Software/lsuio/src/mem.c delete mode 100644 vivado/Software/pysetup/python-versions.txt delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/ld-linux-armhf.so.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/ld-linux.so.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libBrokenLocale.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libacl.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libacl.so.1.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaio.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaio.so.1.0.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libanl.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libattr.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libattr.so.1.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaudit.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaudit.so.1.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libblkid.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libblkid.so.1.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libbsd.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libbsd.so.0.6.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libbz2.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libbz2.so.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libbz2.so.1.0.4 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libc.so.6 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcap.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcap.so.2.24 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcgmanager.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcgmanager.so.0.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcidn.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcom_err.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcom_err.so.2.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcrypt.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libdbus-1.so.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libdbus-1.so.3.7.6 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libdevmapper.so.1.02.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libdl.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libe2p.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libe2p.so.2.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libexpat.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libexpat.so.1.6.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libext2fs.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libext2fs.so.2.4 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libfuse.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libfuse.so.2.9.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libgcc_s.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libgcrypt.so.11 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libgcrypt.so.11.8.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libglib-2.0.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libglib-2.0.so.0.4000.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libgpg-error.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libgpg-error.so.0.10.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libhistory.so.6 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libhistory.so.6.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libjson-c.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libjson-c.so.2.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libjson.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libkeyutils.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libkeyutils.so.1.4 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libkmod.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libkmod.so.2.2.5 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/liblzma.so.5 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/liblzma.so.5.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/liblzo2.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/liblzo2.so.2.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libm.so.6 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libmount.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libmount.so.1.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libncurses.so.5 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libncurses.so.5.9 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libncursesw.so.5 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libncursesw.so.5.9 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnewt.so.0.52 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnewt.so.0.52.15 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnih-dbus.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnih-dbus.so.1.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnih.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnih.so.1.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnsl.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnss_compat.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnss_dns.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnss_files.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnss_hesiod.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnss_nis.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libnss_nisplus.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libntfs-3g.so.841 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libntfs-3g.so.841.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpam.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpam.so.0.83.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpam_misc.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpam_misc.so.0.82.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpamc.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpamc.so.0.82.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libparted.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libparted.so.0.0.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpci.so.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpci.so.3.2.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpcre.so.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpcre.so.3.13.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply-boot-client.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply-boot-client.so.2.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply-splash-core.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply-splash-core.so.2.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply-splash-graphics.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply-splash-graphics.so.2.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libply.so.2.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpng12.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpng12.so.0.50.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpopt.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpopt.so.0.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libprocps.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libprocps.so.0.0.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libprocps.so.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libprocps.so.3.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libpthread.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libreadline.so.6 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libreadline.so.6.3 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libresolv.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/librt.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libselinux.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libsepol.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libslang.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libslang.so.2.2.4 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libss.so.2 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libss.so.2.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libssl.so.1.0.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libsystemd-daemon.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libsystemd-daemon.so.0.0.10 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libsystemd-login.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libsystemd-login.so.0.7.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libthread_db.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libtinfo.so.5 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libtinfo.so.5.9 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libudev.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libudev.so.1.3.5 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libulockmgr.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libulockmgr.so.1.0.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libusb-0.1.so.4 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libusb-0.1.so.4.4.4 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libusb-1.0.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libusb-1.0.so.0.1.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libutil.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libuuid.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libuuid.so.1.3.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libwrap.so.0 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libwrap.so.0.7.6 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libz.so.1 delete mode 100644 vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libz.so.1.2.8 delete mode 100644 vivado/Software/sysroots/linux/usr/include/_G_config.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/aio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/aliases.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/alloca.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/argp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/argz.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/a.out.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/auxvec.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/bitsperlong.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/byteorder.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/errno.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/fcntl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/hwcap.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/ioctl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/ioctls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/ipcbuf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/kvm.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/kvm_para.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/mman.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/msgbuf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/param.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/perf_regs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/poll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/posix_types.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/ptrace.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/resource.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/sembuf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/setup.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/shmbuf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/sigcontext.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/siginfo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/signal.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/socket.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/sockios.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/stat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/statfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/swab.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/termbits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/termios.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/types.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/asm/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/a.out.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/auxv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/byteswap.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/cmathcalls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/confname.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/dirent.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/dlfcn.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/elfclass.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/endian.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/environments.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/epoll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/errno.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/error.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/eventfd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/fcntl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/fcntl2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/fenv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/fenvinline.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/huge_val.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/huge_valf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/huge_vall.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/hwcap.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/in.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/inf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/initspin.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/inotify.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/ioctl-types.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/ioctls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/ipc.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/ipctypes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/libc-lock.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/libio-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/link.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/local_lim.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/locale.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/math-finite.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mathcalls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mathdef.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mathinline.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mman-linux.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mman.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/monetary-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mqueue.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/mqueue2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/msq.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/nan.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/netdb.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/param.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/poll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/poll2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/posix1_lim.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/posix2_lim.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/posix_opt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/printf-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/resource.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sched.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/select.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/select2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sem.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/semaphore.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/setjmp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/setjmp2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/shm.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sigaction.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sigcontext.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/siginfo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/signalfd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/signum.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sigset.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sigstack.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sigthread.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sockaddr.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/socket.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/socket2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/socket_type.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stab.def delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/statfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/statvfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdio-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdio-lock.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdio2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdlib-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stdlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/string.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/string2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/string3.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/stropts.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/syscall.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/sysctl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/syslog-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/syslog-path.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/syslog.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/termios.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/time.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/timerfd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/timex.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/types.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/typesizes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/uio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/ustat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/utmp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/utmpx.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/utsname.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/waitflags.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/waitstatus.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/wchar-ldbl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/wchar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/wchar2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/wordsize.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/xopen_lim.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/bits/xtitypes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/atomic_word.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/basic_file.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/c++allocator.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/c++config.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/c++io.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/c++locale.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/cpu_defines.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/ctype_base.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/ctype_inline.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/cxxabi_tweaks.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/error_constants.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/extc++.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/gthr-default.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/gthr-posix.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/gthr-single.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/gthr.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/messages_members.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/opt_random.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/os_defines.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/stdc++.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/stdtr1c++.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/bits/time_members.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/c++/4.8/ext/opt_random.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/expat_config.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/ffi.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/ffitarget.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/fpu_control.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/gnu/lib-names.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/gnu/libc-version.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/gnu/option-groups.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/gnu/stubs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/ieee754.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/jconfig.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/openssl/opensslconf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/python3.4m/pyconfig.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/acct.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/auxv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/bitypes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/cdefs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/dir.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/elf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/epoll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/errno.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/eventfd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/fanotify.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/fcntl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/file.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/fsuid.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/gmon.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/gmon_out.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/inotify.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/io.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ioctl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ipc.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/kd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/kdaemon.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/klog.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/mman.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/mount.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/msg.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/mtio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/param.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/pci.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/personality.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/poll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/prctl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/procfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/profil.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ptrace.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/queue.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/quota.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/raw.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/reboot.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/resource.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/select.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/sem.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/sendfile.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/shm.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/signal.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/signalfd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/socket.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/socketvar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/soundcard.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/stat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/statfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/statvfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/stropts.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/swap.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/syscall.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/sysctl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/sysinfo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/syslog.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/sysmacros.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/termios.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/time.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/timeb.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/timerfd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/times.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/timex.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ttychars.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ttydefaults.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/types.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ucontext.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/uio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ultrasound.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/un.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/user.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/ustat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/utsname.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/vfs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/vlimit.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/vt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/vtimes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/wait.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/sys/xattr.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/arm-linux-gnueabihf/zconf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/assert.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/byteswap.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/bzlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/complex.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cpio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/crypt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ctype.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/curses.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cursesapp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cursesf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cursesm.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cursesp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cursesw.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/cursslk.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/dirent.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/dlfcn.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/elf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/endian.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/envz.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/err.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/errno.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/error.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/eti.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/etip.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/execinfo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/expat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/expat_external.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/fcntl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/features.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/fenv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/fmtmsg.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/fnmatch.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/form.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/fstab.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/fts.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ftw.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/gconv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/getopt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/glob.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/gnu-versions.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/grp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/gshadow.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/iconv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ifaddrs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/inttypes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/jerror.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/jmorecfg.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/jpegint.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/jpeglib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/langinfo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/lastlog.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/libgen.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/libintl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/libio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/libpng/png.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/libpng/pngconf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/limits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/link.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/locale.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/lzma.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/malloc.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/math.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/mcheck.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/memory.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/menu.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/mntent.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/monetary.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/mqueue.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/nc_tparm.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ncurses.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ncurses_dll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/netdb.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/nl_types.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/nss.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/obstack.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/panel.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/paths.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/png.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/pngconf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/poll.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/printf.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/pthread.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/pty.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/pwd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/Python-ast.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/Python.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/abstract.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/accu.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/asdl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/ast.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/bitset.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/bltinmodule.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/boolobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/bytearrayobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/bytes_methods.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/bytesobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/cellobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/ceval.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/classobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/code.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/codecs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/compile.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/complexobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/datetime.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/descrobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/dictobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/dtoa.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/dynamic_annotations.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/enumobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/errcode.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/eval.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/fileobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/fileutils.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/floatobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/frameobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/funcobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/genobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/graminit.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/grammar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/import.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/intrcheck.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/iterobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/listobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/longintrepr.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/longobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/marshal.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/memoryobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/metagrammar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/methodobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/modsupport.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/moduleobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/namespaceobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/node.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/__multiarray_api.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/__ufunc_api.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/_neighborhood_iterator_imp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/_numpyconfig.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/arrayobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/arrayscalars.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/halffloat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/multiarray_api.txt delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/ndarrayobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/ndarraytypes.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/noprefix.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_1_7_deprecated_api.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_3kcompat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_common.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_cpu.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_endian.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_interrupt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_math.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_no_deprecated_api.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/npy_os.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/numpyconfig.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/old_defines.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/oldnumeric.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/ufunc_api.txt delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/ufuncobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/numpy/utils.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/object.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/objimpl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/opcode.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/osdefs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/parsetok.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/patchlevel.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pgen.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pgenheaders.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/py_curses.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyarena.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyatomic.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pycapsule.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyconfig.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyctype.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pydebug.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyerrors.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyexpat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyfpe.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pygetopt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyhash.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pymacconfig.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pymacro.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pymath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pymem.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pyport.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pystate.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pystrcmp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pystrtod.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pythonrun.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pythread.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/pytime.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/rangeobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/setobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/sliceobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/structmember.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/structseq.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/symtable.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/sysmodule.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/token.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/traceback.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/tupleobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/typeslots.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/ucnhash.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/unicodeobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/warnings.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/python3.4/weakrefobject.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/re_comp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/regex.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/regexp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/resolv.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/sched.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/search.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/semaphore.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/setjmp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/sgtty.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/shadow.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/signal.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/spawn.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/sqlite3.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/sqlite3ext.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stab.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stdc-predef.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stdint.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stdio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stdio_ext.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stdlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/string.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/strings.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/stropts.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/sudo_plugin.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/syscall.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/sysexits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/syslog.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/dirent.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/dirent2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/dlfcn.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/fake-rfc2553.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/float.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/limits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/stdlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/string.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/compat/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/regcustom.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/regerrs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/regex.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/regguts.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tcl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclCompile.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclFileSystem.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclIO.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclIntDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclIntPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclOO.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclOODecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclOOInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclOOIntDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclParse.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclRegexp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclTomMath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclTomMathDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tclTomMathInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/generic/tommath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/libtommath/tommath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/libtommath/tommath_class.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/libtommath/tommath_superclass.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/unix/tclUnixPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl-private/unix/tclUnixThrd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tcl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tclDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tclOO.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tclOODecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tclPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tclTomMath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tclTomMathDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/compat/limits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/compat/stdlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/compat/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/default.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/ks_names.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tk.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tk3d.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkBusy.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkButton.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkCanvas.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkColor.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkEntry.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkFileFilter.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkFont.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkImgPhoto.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkIntDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkIntPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkIntXlibDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkMenu.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkMenubutton.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkScale.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkScrollbar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkSelect.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkText.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/tkUndo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/ttk/ttkDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/ttk/ttkManager.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/ttk/ttkTheme.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/ttk/ttkThemeInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/generic/ttk/ttkWidget.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/unix/tkUnixDefault.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/unix/tkUnixInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk-private/unix/tkUnixPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tk.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tkDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tcl/tkPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/term.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/term_entry.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/termcap.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/termio.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/termios.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tgmath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/thread_db.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tic.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/time.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/dirent.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/dirent2.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/dlfcn.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/fake-rfc2553.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/float.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/limits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/stdlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/string.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/compat/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/regcustom.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/regerrs.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/regex.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/regguts.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tcl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclCompile.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclFileSystem.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclIO.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclIntDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclIntPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclOO.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclOODecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclOOInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclOOIntDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclParse.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclRegexp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclTomMath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclTomMathDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tclTomMathInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/generic/tommath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/libtommath/tommath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/libtommath/tommath_class.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/libtommath/tommath_superclass.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/unix/tclUnixPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl-private/unix/tclUnixThrd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tcl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tclDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tclOO.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tclOODecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tclPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tclTomMath.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tclTomMathDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/compat/limits.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/compat/stdlib.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/compat/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/default.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/ks_names.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tk.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tk3d.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkBusy.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkButton.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkCanvas.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkColor.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkEntry.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkFileFilter.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkFont.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkImgPhoto.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkIntDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkIntPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkIntXlibDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkMenu.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkMenubutton.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkScale.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkScrollbar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkSelect.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkText.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/tkUndo.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/ttk/ttkDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/ttk/ttkManager.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/ttk/ttkTheme.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/ttk/ttkThemeInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/generic/ttk/ttkWidget.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/unix/tkUnixDefault.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/unix/tkUnixInt.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk-private/unix/tkUnixPort.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tk.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tkDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/tk/tkPlatDecls.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ttyent.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/turbojpeg.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/uchar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ucontext.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ulimit.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/unctrl.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/unistd.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/ustat.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/utime.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/utmp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/utmpx.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/values.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/wait.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/wchar.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/wctype.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/wordexp.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/xlocale.h delete mode 100644 vivado/Software/sysroots/linux/usr/include/zlib.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/__multiarray_api.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/__ufunc_api.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/_neighborhood_iterator_imp.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/_numpyconfig.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/arrayobject.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/arrayscalars.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/halffloat.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/multiarray_api.txt delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/ndarrayobject.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/ndarraytypes.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/noprefix.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_1_7_deprecated_api.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_3kcompat.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_common.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_cpu.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_endian.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_interrupt.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_math.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_no_deprecated_api.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/npy_os.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/numpyconfig.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/old_defines.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/oldnumeric.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/random/bitgen.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/random/distributions.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/ufunc_api.txt delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/ufuncobject.h delete mode 100644 vivado/Software/sysroots/numpy_include/include/numpy/utils.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/Python-ast.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/Python.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/abstract.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/accu.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/asdl.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/ast.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/bitset.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/bltinmodule.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/boolobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/bytearrayobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/bytes_methods.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/bytesobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/cellobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/ceval.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/classobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/code.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/codecs.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/compile.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/complexobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/datetime.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/descrobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/dictobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/dtoa.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/dynamic_annotations.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/enumobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/errcode.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/eval.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/fileobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/fileutils.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/floatobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/frameobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/funcobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/genobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/graminit.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/grammar.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/import.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/intrcheck.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/iterobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/listobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/longintrepr.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/longobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/marshal.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/memoryobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/metagrammar.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/methodobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/modsupport.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/moduleobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/namespaceobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/node.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/object.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/objimpl.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/odictobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/opcode.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/osdefs.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/osmodule.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/parsetok.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/patchlevel.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pgen.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pgenheaders.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/py_curses.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyarena.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyatomic.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pycapsule.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyconfig.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyctype.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pydebug.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pydtrace.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyerrors.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyexpat.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyfpe.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pygetopt.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyhash.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pylifecycle.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pymacconfig.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pymacro.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pymath.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pymem.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pyport.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pystate.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pystrcmp.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pystrhex.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pystrtod.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pythonrun.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pythread.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/pytime.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/rangeobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/setobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/sliceobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/structmember.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/structseq.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/symtable.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/sysmodule.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/token.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/traceback.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/tupleobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/typeslots.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/ucnhash.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/unicodeobject.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/warnings.h delete mode 100644 vivado/Software/sysroots/python3.6/include/python3.6m/weakrefobject.h delete mode 100644 vivado/Software/sysroots/python3.6/lib/libpython3.6m.a diff --git a/vivado/Software/.devcontainer/devcontainer.json b/vivado/Software/.devcontainer/devcontainer.json new file mode 100644 index 00000000..60b68cae --- /dev/null +++ b/vivado/Software/.devcontainer/devcontainer.json @@ -0,0 +1,41 @@ +// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at: +// https://github.com/microsoft/vscode-dev-containers/tree/v0.122.1/containers/cpp +{ + "name": "Linux ARM", + "dockerFile": "../Dockerfile", + "runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined"], + + + // Set *default* container specific settings.json values on container create. + "settings": { + "terminal.integrated.shell.linux": "/bin/bash" + }, + + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "ms-vscode.cpptools", + "austin.code-gnu-global", + "xaver.clang-format", + "llvm-vs-code-extensions.vscode-clangd", + "twxs.cmake", + "ms-vscode.cmake-tools", + "cschlosser.doxdocgen", + "ms-python.python", + "njpwerner.autodocstring" + ], + + + + "mounts": [ "source=${localWorkspaceFolder},target=/eggnet/driver,type=bind" ], + "workspaceFolder": "/eggnet/driver" + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "gcc -v", + + // Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root. + // "remoteUser": "vscode" + +} \ No newline at end of file diff --git a/vivado/Software/Dockerfile b/vivado/Software/Dockerfile index f88d96ef..9f07be49 100644 --- a/vivado/Software/Dockerfile +++ b/vivado/Software/Dockerfile @@ -52,30 +52,42 @@ RUN apt-get install -y --no-install-recommends \ && apt-get autoremove && apt-get autoclean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* -ADD pysetup/requirements.txt / -ADD pysetup/python-versions.txt / - +# Add Files +ADD EggDriver/pysetup/requirements.txt /EggDriver/pysetup/requirements.txt +ADD EggDriver/pysetup/python-versions.txt /EggDriver/pysetup/python-versions.txt +ADD EggDriver/pysetup/info.py /EggDriver/pysetup/info.py +RUN ls /EggDriver/pysetup # The CC, CXX flags and so on must be removed to compile python -RUN unset CC && unset CXX && unset CPP && unset LD && unset AR && unset AS -ENV CC=gcc \ - CPP=cpp \ - CXX=g++ \ - LD=ld \ - AR=ar \ - AS=as - +# RUN unset CC && unset CXX && unset CPP && unset LD && unset AR && unset AS +# ENV CC=gcc \ +# CPP=cpp \ +# CXX=g++ \ +# LD=ld \ +# AR=ar \ +# AS=as + # Create the pyenv versions -RUN git clone https://github.com/pyenv/pyenv.git $PYENV_ROOT \ - && for version in `cat /python-versions.txt`; do pyenv install $version; done \ - && pyenv global `cat /python-versions.txt` - #&& find $PYENV_ROOT/versions -type d '(' -name '__pycache__' -o -name 'test' -o -name 'tests' ')' -exec rm -rf '{}' + \ - #&& find $PYENV_ROOT/versions -type f '(' -name '*.pyo' -o -name '*.exe' ')' -exec rm -f '{}' + \ - #&& rm -rf /tmp/* +RUN git clone https://github.com/pyenv/pyenv.git $PYENV_ROOT +RUN for version in `cat /EggDriver/pysetup/python-versions.txt`; do echo $version; pyenv install $version; done +RUN pyenv global `cat /EggDriver/pysetup/python-versions.txt` +RUN pyenv rehash +RUN rm -rf /tmp/* + +# && find $PYENV_ROOT/versions -type d '(' -name '__pycache__' -o -name 'test' -o -name 'tests' ')' -exec rm -rf '{}' + \ +# && find $PYENV_ROOT/versions -type f '(' -name '*.pyo' -o -name '*.exe' ')' -exec rm -f '{}' + \ +# && rm -rf /tmp/* + +# Install pip manually, should not be needed +# RUN wget https://bootstrap.pypa.io/get-pip.py +# RUN python get-pip.py +# RUN rm /get-pip.py + + # Install all requirements -RUN pip install --no-cache-dir -r /requirements.txt \ +RUN pip install --no-cache-dir -r /EggDriver/pysetup/requirements.txt \ && find $PYENV_ROOT/versions -type d '(' -name '__pycache__' -o -name 'test' -o -name 'tests' ')' -exec rm -rf '{}' + \ && find $PYENV_ROOT/versions -type f '(' -name '*.pyo' -o -name '*.exe' ')' -exec rm -f '{}' + \ && rm -rf /tmp/* @@ -91,11 +103,27 @@ RUN mkdir swig && \ sudo make install && \ make clean + +# Install newest CMAKE +ENV cmversion=3.16 +ENV cmbuild=8 +RUN apt remove --purge --auto-remove cmake +RUN mkdir /cmake && cd /cmake +# Example + +# wget https://cmake.org/files/v3.16/cmake-3.16.8-Linux-x86_64.tar.gz && mkdir /opt/cmake && cp /opt/cmake/ && tar -xf /cmake/*.tar.gz +RUN wget https://cmake.org/files/v$cmversion/cmake-$cmversion.$cmbuild-Linux-x86_64.tar.gz && tar -xf *.tar.gz +RUN mkdir /opt/cmake && cp /opt/cmake/ +RUN ln -s /opt/cmake/bin/cmake /usr/local/bin/cmake + +# Test CMAKE +RUN cmake --version + # RESTORE ENVIRONMENT VARS -ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \ - AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \ - CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \ - CPP=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-cpp \ - CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-g++ \ - LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \ - FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran \ No newline at end of file +# ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \ +# AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \ +# CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \ +# CPP=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-cpp \ +# CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-g++ \ +# LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \ +# FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran \ No newline at end of file diff --git a/vivado/Software/EggDriver/.cproject b/vivado/Software/EggDriver/.cproject deleted file mode 100644 index f9d463ac..00000000 --- a/vivado/Software/EggDriver/.cproject +++ /dev/null @@ -1,149 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/vivado/Software/EggDriver/.project b/vivado/Software/EggDriver/.project deleted file mode 100644 index 387376f1..00000000 --- a/vivado/Software/EggDriver/.project +++ /dev/null @@ -1,25 +0,0 @@ - - - EggDriver - Created by SDK v2017.4 - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - diff --git a/vivado/Software/EggDriver/CMakeLists.txt b/vivado/Software/EggDriver/CMakeLists.txt index 1ede8ccf..8fb5bc77 100644 --- a/vivado/Software/EggDriver/CMakeLists.txt +++ b/vivado/Software/EggDriver/CMakeLists.txt @@ -1,80 +1,86 @@ cmake_minimum_required(VERSION 3.10) project(EggnetDriver C) +# ------------------------------------ +# Setup/Options +# ------------------------------------ +# Uncomment if there is an "compile with -fPIC" error +# https://wiki.gentoo.org/wiki/Project:AMD64/Fixing_-fPIC_Errors_Guide +# set(CMAKE_POSITION_INDEPENDENT_CODE ON) + +# Find pthreads +set(THREADS_PREFER_PTHREAD_FLAG ON) -###### Setup ###### -# Doc: +# ------------------------------------ +# Find Packages and Requirements +# ------------------------------------ +# +# Useful Doc: # https://cmake.org/cmake/help/latest/command/find_package.html -# Find Pthreads -#set(THREADS_PREFER_PTHREAD_FLAG ON) -#find_package(Threads REQUIRED) -# find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy) + +find_package(Threads REQUIRED) +find_package(SWIG 4 REQUIRED) find_package(Python 3.6 REQUIRED COMPONENTS Interpreter Devlopment NumPy) -set(CMAKE_POSITION_INDEPENDENT_CODE ON) +# Activate SWIG +include(UseSWIG) + +# Add LSUIO +add_subdirectory(lib/lsuio) + + + +# ------------------------------------ +# Eggnet Driver Software (C) +# ------------------------------------ -# https://wiki.gentoo.org/wiki/Project:AMD64/Fixing_-fPIC_Errors_Guide add_library( EggnetDriver STATIC - src/attr.c - src/base.c src/eggdma.c src/eggnet.c src/eggstatus.c - src/helper.c - src/mem.c + src/egguio.c ) - -add_executable(EggnetTest src/main.c) -target_link_libraries(EggnetTest PUBLIC EggnetDriver) - -target_include_directories( - EggnetDriver - BEFORE +# Setup Include's +target_include_directories(EggnetDriver + PUBLIC + ${CMAKE_CURRENT_SOURCE_DIR}/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src - ${Python_INCLUDE_DIR} - ${NumPy_INCLUDE_DIR} ) -# See: http://swig.org/Doc4.0/Python.html#Python_nn4 -# Link with pthreads -target_link_libraries(EggnetDriver PUBLIC pthreads) +# Link with lsuio +target_link_libraries(EggnetDriver PRIVATE lsuio) + + +# For quick debugging +add_executable(EggnetTest src/main.c) +target_link_libraries(EggnetTest PUBLIC EggnetDriver) -# Add the python wrapper -add_library(PyEggnetDriver MODULE - src/attr.c - src/base.c - src/eggdma.c - src/eggnet.c - src/eggstatus.c - src/helper.c - src/mem.c - src/eggnet_wrap.c) - -target_include_directories( - PyEggnetDriver - BEFORE - PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/include/arm-linux-gnueabihf - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/include/ - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/numpy_include/include/ - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/python3.6/include/python3.6m - PRIVATE - PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src -) -target_link_directories(PyEggnetDriver - BEFORE PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/lib/ - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/lib/arm-linux-gnueabihf - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/python3.6/lib +# ------------------------------------ +# Eggnet Driver Software (Python/Swig) +# ------------------------------------ +# +# +# swig_add_library( +# [TYPE ] +# LANGUAGE +# [NO_PROXY] +# [OUTPUT_DIR ] +# [OUTFILE_DIR ] +# SOURCES ... +# ) + +swig_add_library(PyEggnetDriver + LANGUAGE python + SOURCES src/eggnet.i ) -# target_link_libraries(PyEggnetDriver PRIVATE python3.6m) -# set_property(TARGET PyEggnetDriver PROPERTY POSITION_INDEPENDENT_CODE ON) + + diff --git a/vivado/Software/zynq-linux.toolchain.cmake b/vivado/Software/EggDriver/cmake/zynq-linux.toolchain.cmake similarity index 100% rename from vivado/Software/zynq-linux.toolchain.cmake rename to vivado/Software/EggDriver/cmake/zynq-linux.toolchain.cmake diff --git a/vivado/Software/EggDriver/src/eggnet.h b/vivado/Software/EggDriver/include/eggnet.h similarity index 100% rename from vivado/Software/EggDriver/src/eggnet.h rename to vivado/Software/EggDriver/include/eggnet.h diff --git a/vivado/Software/lsuio/.cproject b/vivado/Software/EggDriver/lib/lsuio/.cproject similarity index 100% rename from vivado/Software/lsuio/.cproject rename to vivado/Software/EggDriver/lib/lsuio/.cproject diff --git a/vivado/Software/dma-proxy/.gitignore b/vivado/Software/EggDriver/lib/lsuio/.gitignore similarity index 100% rename from vivado/Software/dma-proxy/.gitignore rename to vivado/Software/EggDriver/lib/lsuio/.gitignore diff --git a/vivado/Software/lsuio/.project b/vivado/Software/EggDriver/lib/lsuio/.project similarity index 100% rename from vivado/Software/lsuio/.project rename to vivado/Software/EggDriver/lib/lsuio/.project diff --git a/vivado/Software/EggDriver/lib/lsuio/CMakeLists.txt b/vivado/Software/EggDriver/lib/lsuio/CMakeLists.txt new file mode 100644 index 00000000..6de18343 --- /dev/null +++ b/vivado/Software/EggDriver/lib/lsuio/CMakeLists.txt @@ -0,0 +1,18 @@ +project(LSUIO) + + +add_library(lsuio STATIC + src/attr.c + src/base.c + src/helper.c + src/lsuio.c + src/mem.c +) + + +target_include_directories( + lsuio + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include + PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src) + + diff --git a/vivado/Software/eggnet/libuio.h b/vivado/Software/EggDriver/lib/lsuio/include/libuio.h similarity index 100% rename from vivado/Software/eggnet/libuio.h rename to vivado/Software/EggDriver/lib/lsuio/include/libuio.h diff --git a/vivado/Software/eggnet/attr.c b/vivado/Software/EggDriver/lib/lsuio/src/attr.c similarity index 100% rename from vivado/Software/eggnet/attr.c rename to vivado/Software/EggDriver/lib/lsuio/src/attr.c diff --git a/vivado/Software/lsuio/src/base.c b/vivado/Software/EggDriver/lib/lsuio/src/base.c similarity index 100% rename from vivado/Software/lsuio/src/base.c rename to vivado/Software/EggDriver/lib/lsuio/src/base.c diff --git a/vivado/Software/eggnet/helper.c b/vivado/Software/EggDriver/lib/lsuio/src/helper.c similarity index 100% rename from vivado/Software/eggnet/helper.c rename to vivado/Software/EggDriver/lib/lsuio/src/helper.c diff --git a/vivado/Software/eggnet/libuio_internal.h b/vivado/Software/EggDriver/lib/lsuio/src/libuio_internal.h similarity index 100% rename from vivado/Software/eggnet/libuio_internal.h rename to vivado/Software/EggDriver/lib/lsuio/src/libuio_internal.h diff --git a/vivado/Software/lsuio/src/lsuio.c b/vivado/Software/EggDriver/lib/lsuio/src/lsuio.c similarity index 100% rename from vivado/Software/lsuio/src/lsuio.c rename to vivado/Software/EggDriver/lib/lsuio/src/lsuio.c diff --git a/vivado/Software/eggnet/mem.c b/vivado/Software/EggDriver/lib/lsuio/src/mem.c similarity index 100% rename from vivado/Software/eggnet/mem.c rename to vivado/Software/EggDriver/lib/lsuio/src/mem.c diff --git a/vivado/Software/EggDriver/pysetup/info.py b/vivado/Software/EggDriver/pysetup/info.py new file mode 100644 index 00000000..96b5ef2b --- /dev/null +++ b/vivado/Software/EggDriver/pysetup/info.py @@ -0,0 +1,7 @@ +#!/usr/bin/env python +import platform +import os + +print(platform.platform()) +print(platform.python_version()) +print(os.getuid()) \ No newline at end of file diff --git a/vivado/Software/EggDriver/pysetup/python-versions.txt b/vivado/Software/EggDriver/pysetup/python-versions.txt new file mode 100644 index 00000000..e845c631 --- /dev/null +++ b/vivado/Software/EggDriver/pysetup/python-versions.txt @@ -0,0 +1 @@ +3.6.10 \ No newline at end of file diff --git a/vivado/Software/pysetup/requirements.txt b/vivado/Software/EggDriver/pysetup/requirements.txt similarity index 100% rename from vivado/Software/pysetup/requirements.txt rename to vivado/Software/EggDriver/pysetup/requirements.txt diff --git a/vivado/Software/EggDriver/src/eggnet.i b/vivado/Software/EggDriver/src/eggnet.i index ebc21cb0..636a2988 100644 --- a/vivado/Software/EggDriver/src/eggnet.i +++ b/vivado/Software/EggDriver/src/eggnet.i @@ -117,6 +117,6 @@ import_array(); // ------------------------------------ Wrapping ---------------------------------------- // Wrap everything declared in this header // Alternativly all functions could here be specified manually -%include "eggnet.h" +%include "../include/eggnet.h" diff --git a/vivado/Software/EggNetDriver/Debug/makefile b/vivado/Software/EggNetDriver/Debug/makefile deleted file mode 100644 index 3055d79e..00000000 --- a/vivado/Software/EggNetDriver/Debug/makefile +++ /dev/null @@ -1,47 +0,0 @@ -################################################################################ -# Automatically-generated file. Do not edit! -################################################################################ - --include ../makefile.init - -RM := rm -rf - -# All of the sources participating in the build are defined here --include sources.mk --include src/subdir.mk --include subdir.mk --include objects.mk - -ifneq ($(MAKECMDGOALS),clean) -ifneq ($(strip $(S_UPPER_DEPS)),) --include $(S_UPPER_DEPS) -endif -ifneq ($(strip $(C_DEPS)),) --include $(C_DEPS) -endif -endif - --include ../makefile.defs - -# Add inputs and outputs from these tool invocations to the build variables - -# All Target -all: EggNetDriver.so - -# Tool invocations -EggNetDriver.so: $(OBJS) $(USER_OBJS) - @echo 'Building target: $@' - @echo 'Invoking: ARM v7 Linux gcc linker' - arm-linux-gnueabihf-gcc -L"C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\miniconda\lib" -shared -o "EggNetDriver.so" $(OBJS) $(USER_OBJS) $(LIBS) - @echo 'Finished building target: $@' - @echo ' ' - -# Other Targets -clean: - -$(RM) $(EXECUTABLES)$(OBJS)$(S_UPPER_DEPS)$(C_DEPS) EggNetDriver.so - -@echo ' ' - -.PHONY: all clean dependents -.SECONDARY: - --include ../makefile.targets diff --git a/vivado/Software/EggNetDriver/Debug/objects.mk b/vivado/Software/EggNetDriver/Debug/objects.mk deleted file mode 100644 index 742c2da0..00000000 --- a/vivado/Software/EggNetDriver/Debug/objects.mk +++ /dev/null @@ -1,8 +0,0 @@ -################################################################################ -# Automatically-generated file. Do not edit! -################################################################################ - -USER_OBJS := - -LIBS := - diff --git a/vivado/Software/EggNetDriver/Debug/sources.mk b/vivado/Software/EggNetDriver/Debug/sources.mk deleted file mode 100644 index 17805ff4..00000000 --- a/vivado/Software/EggNetDriver/Debug/sources.mk +++ /dev/null @@ -1,19 +0,0 @@ -################################################################################ -# Automatically-generated file. Do not edit! -################################################################################ - -LD_SRCS := -OBJ_SRCS := -S_SRCS := -C_SRCS := -S_UPPER_SRCS := -O_SRCS := -EXECUTABLES := -OBJS := -S_UPPER_DEPS := -C_DEPS := - -# Every subdirectory with source files must be described here -SUBDIRS := \ -src \ - diff --git a/vivado/Software/EggNetDriver/Debug/src/dma-proxy.d b/vivado/Software/EggNetDriver/Debug/src/dma-proxy.d deleted file mode 100644 index 5ed04e70..00000000 --- a/vivado/Software/EggNetDriver/Debug/src/dma-proxy.d +++ /dev/null @@ -1,177 +0,0 @@ -src/dma-proxy.o src/dma-proxy.o: ../src/dma-proxy.c \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdc-predef.h \ - ../src/eggnet.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdlib.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/features.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/cdefs.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/wordsize.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/gnu/stubs.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/waitflags.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/waitstatus.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/endian.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/endian.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/byteswap.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/types.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/typesizes.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/byteswap-16.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/types.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/time.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/select.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/select.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/sigset.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/time.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/sysmacros.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/pthreadtypes.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/alloca.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/stdlib-float.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdint.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/wchar.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdio.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/libio.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/_G_config.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/wchar.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/stdio_lim.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/sys_errlist.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/unistd.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/posix_opt.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/environments.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/confname.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/getopt.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/mman.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/mman.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/mman-linux.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/fcntl.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/fcntl.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/fcntl-linux.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/stat.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/ioctl.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/ioctls.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/ioctl-types.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/ttydefaults.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/pthread.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sched.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/sched.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/xlocale.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/setjmp.h \ - ../src/dma-proxy.h ../src/dbg.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/errno.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/errno.h \ - C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/string.h - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdc-predef.h: - -../src/eggnet.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdlib.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/features.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/cdefs.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/wordsize.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/gnu/stubs.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/waitflags.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/waitstatus.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/endian.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/endian.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/byteswap.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/types.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/typesizes.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/byteswap-16.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/types.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/time.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/select.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/select.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/sigset.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/time.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/sysmacros.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/pthreadtypes.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/alloca.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/stdlib-float.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdint.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/wchar.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/stdio.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/libio.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/_G_config.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/wchar.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/stdio_lim.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/sys_errlist.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/unistd.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/posix_opt.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/environments.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/confname.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/getopt.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/mman.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/mman.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/mman-linux.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/fcntl.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/fcntl.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/fcntl-linux.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/stat.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/ioctl.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/ioctls.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/ioctl-types.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sys/ttydefaults.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/pthread.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/sched.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/sched.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/xlocale.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/setjmp.h: - -../src/dma-proxy.h: - -../src/dbg.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/errno.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/bits/errno.h: - -C:\Users\benjaminkulnik\Developer\FPGA_MNIST\vivado\Software\sysroots\plnx_arm-tcbootstrap\usr\include/string.h: diff --git a/vivado/Software/EggNetDriver/Debug/src/dma-proxy.o b/vivado/Software/EggNetDriver/Debug/src/dma-proxy.o deleted file mode 100644 index a5df1f3b4a2f1512d0b9f235e6771de8f4c58067..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 121792 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�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 - - RemoteSystemsTempFiles - - - - - - - org.eclipse.rse.ui.remoteSystemsTempNature - - diff --git a/vivado/Software/dma-proxy/.cproject b/vivado/Software/Xillinx-Examples/dma-proxy/.cproject similarity index 100% rename from vivado/Software/dma-proxy/.cproject rename to vivado/Software/Xillinx-Examples/dma-proxy/.cproject diff --git a/vivado/Software/lsuio/.gitignore b/vivado/Software/Xillinx-Examples/dma-proxy/.gitignore similarity index 100% rename from vivado/Software/lsuio/.gitignore rename to vivado/Software/Xillinx-Examples/dma-proxy/.gitignore diff --git a/vivado/Software/dma-proxy/.project b/vivado/Software/Xillinx-Examples/dma-proxy/.project similarity index 100% rename from vivado/Software/dma-proxy/.project rename to vivado/Software/Xillinx-Examples/dma-proxy/.project diff --git a/vivado/Software/dma-proxy/src/README.txt b/vivado/Software/Xillinx-Examples/dma-proxy/src/README.txt similarity index 100% rename from vivado/Software/dma-proxy/src/README.txt rename to vivado/Software/Xillinx-Examples/dma-proxy/src/README.txt diff --git a/vivado/Software/dma-proxy/src/dma-proxy-test.c b/vivado/Software/Xillinx-Examples/dma-proxy/src/dma-proxy-test.c similarity index 100% rename from vivado/Software/dma-proxy/src/dma-proxy-test.c rename to vivado/Software/Xillinx-Examples/dma-proxy/src/dma-proxy-test.c diff --git a/vivado/Software/dma-proxy/src/dma-proxy.h b/vivado/Software/Xillinx-Examples/dma-proxy/src/dma-proxy.h similarity index 100% rename from vivado/Software/dma-proxy/src/dma-proxy.h rename to vivado/Software/Xillinx-Examples/dma-proxy/src/dma-proxy.h diff --git a/vivado/Software/fig/createLinApp.PNG b/vivado/Software/Xillinx-Examples/fig/createLinApp.PNG similarity index 100% rename from vivado/Software/fig/createLinApp.PNG rename to vivado/Software/Xillinx-Examples/fig/createLinApp.PNG diff --git a/vivado/Software/fig/pthread.PNG b/vivado/Software/Xillinx-Examples/fig/pthread.PNG similarity index 100% rename from vivado/Software/fig/pthread.PNG rename to vivado/Software/Xillinx-Examples/fig/pthread.PNG diff --git a/vivado/Software/webtalk/sdk_webtalk.tcl b/vivado/Software/Xillinx-Examples/webtalk/sdk_webtalk.tcl similarity index 100% rename from vivado/Software/webtalk/sdk_webtalk.tcl rename to vivado/Software/Xillinx-Examples/webtalk/sdk_webtalk.tcl diff --git a/vivado/Software/webtalk/sdk_webtalk.wdm b/vivado/Software/Xillinx-Examples/webtalk/sdk_webtalk.wdm similarity index 100% rename from vivado/Software/webtalk/sdk_webtalk.wdm rename to vivado/Software/Xillinx-Examples/webtalk/sdk_webtalk.wdm diff --git a/vivado/Software/webtalk/usage_statistics_ext_sdk.html b/vivado/Software/Xillinx-Examples/webtalk/usage_statistics_ext_sdk.html similarity index 100% rename from vivado/Software/webtalk/usage_statistics_ext_sdk.html rename to vivado/Software/Xillinx-Examples/webtalk/usage_statistics_ext_sdk.html diff --git a/vivado/Software/webtalk/usage_statistics_ext_sdk.xml b/vivado/Software/Xillinx-Examples/webtalk/usage_statistics_ext_sdk.xml similarity index 100% rename from vivado/Software/webtalk/usage_statistics_ext_sdk.xml rename to vivado/Software/Xillinx-Examples/webtalk/usage_statistics_ext_sdk.xml diff --git a/vivado/Software/webtalk/webtalk.jou b/vivado/Software/Xillinx-Examples/webtalk/webtalk.jou similarity index 100% rename from vivado/Software/webtalk/webtalk.jou rename to vivado/Software/Xillinx-Examples/webtalk/webtalk.jou diff --git a/vivado/Software/webtalk/webtalk_11032.backup.jou b/vivado/Software/Xillinx-Examples/webtalk/webtalk_11032.backup.jou similarity index 100% rename from vivado/Software/webtalk/webtalk_11032.backup.jou rename to vivado/Software/Xillinx-Examples/webtalk/webtalk_11032.backup.jou diff --git a/vivado/Software/dockcross-linux-armv7a b/vivado/Software/dockcross-linux-armv7a deleted file mode 100755 index 866cce23..00000000 --- a/vivado/Software/dockcross-linux-armv7a +++ /dev/null @@ -1,255 +0,0 @@ -#!/usr/bin/env bash - -DEFAULT_DOCKCROSS_IMAGE=dockcross/linux-armv7a:latest - -#------------------------------------------------------------------------------ -# Helpers -# -err() { - echo -e >&2 ERROR: $@\\n -} - -die() { - err $@ - exit 1 -} - -has() { - # eg. has command update - local kind=$1 - local name=$2 - - type -t $kind:$name | grep -q function -} - -#------------------------------------------------------------------------------ -# Command handlers -# -command:update-image() { - docker pull $FINAL_IMAGE -} - -help:update-image() { - echo Pull the latest $FINAL_IMAGE . -} - -command:update-script() { - if cmp -s <( docker run --rm $FINAL_IMAGE ) $0; then - echo $0 is up to date - else - echo -n Updating $0 '... ' - docker run --rm $FINAL_IMAGE > $0 && echo ok - fi -} - -help:update-image() { - echo Update $0 from $FINAL_IMAGE . -} - -command:update() { - command:update-image - command:update-script -} - -help:update() { - echo Pull the latest $FINAL_IMAGE, and then update $0 from that. -} - -command:help() { - if [[ $# != 0 ]]; then - if ! has command $1; then - err \"$1\" is not an dockcross command - command:help - elif ! has help $1; then - err No help found for \"$1\" - else - help:$1 - fi - else - cat >&2 < -ENDHELP - exit 1 - fi -} - -#------------------------------------------------------------------------------ -# Option processing -# -special_update_command='' -while [[ $# != 0 ]]; do - case $1 in - - --) - shift - break - ;; - - --args|-a) - ARG_ARGS="$2" - shift 2 - ;; - - --config|-c) - ARG_CONFIG="$2" - shift 2 - ;; - - --image|-i) - ARG_IMAGE="$2" - shift 2 - ;; - update|update-image|update-script) - special_update_command=$1 - break - ;; - -*) - err Unknown option \"$1\" - command:help - exit - ;; - - *) - break - ;; - - esac -done - -# The precedence for options is: -# 1. command-line arguments -# 2. environment variables -# 3. defaults - -# Source the config file if it exists -DEFAULT_DOCKCROSS_CONFIG=~/.dockcross -FINAL_CONFIG=${ARG_CONFIG-${DOCKCROSS_CONFIG-$DEFAULT_DOCKCROSS_CONFIG}} - -[[ -f "$FINAL_CONFIG" ]] && source "$FINAL_CONFIG" - -# Set the docker image -FINAL_IMAGE=${ARG_IMAGE-${DOCKCROSS_IMAGE-$DEFAULT_DOCKCROSS_IMAGE}} - -# Handle special update command -if [ "$special_update_command" != "" ]; then - case $special_update_command in - - update) - command:update - exit $? - ;; - - update-image) - command:update-image - exit $? - ;; - - update-script) - command:update-script - exit $? - ;; - - esac -fi - -# Set the docker run extra args (if any) -FINAL_ARGS=${ARG_ARGS-${DOCKCROSS_ARGS}} - -# Bash on Ubuntu on Windows -UBUNTU_ON_WINDOWS=$([ -e /proc/version ] && grep -l Microsoft /proc/version || echo "") -# MSYS, Git Bash, etc. -MSYS=$([ -e /proc/version ] && grep -l MINGW /proc/version || echo "") - -if [ -z "$UBUNTU_ON_WINDOWS" -a -z "$MSYS" ]; then - USER_IDS=(-e BUILDER_UID="$( id -u )" -e BUILDER_GID="$( id -g )" -e BUILDER_USER="$( id -un )" -e BUILDER_GROUP="$( id -gn )") -fi - -# Change the PWD when working in Docker on Windows -if [ -n "$UBUNTU_ON_WINDOWS" ]; then - WSL_ROOT="/mnt/" - CFG_FILE=/etc/wsl.conf - if [ -f "$CFG_FILE" ]; then - CFG_CONTENT=$(cat $CFG_FILE | sed -r '/[^=]+=[^=]+/!d' | sed -r 's/\s+=\s/=/g') - eval "$CFG_CONTENT" - if [ -n "$root" ]; then - WSL_ROOT=$root - fi - fi - HOST_PWD=`pwd -P` - HOST_PWD=${HOST_PWD/$WSL_ROOT//} -elif [ -n "$MSYS" ]; then - HOST_PWD=$PWD - HOST_PWD=${HOST_PWD/\//} - HOST_PWD=${HOST_PWD/\//:\/} -else - HOST_PWD=$PWD -fi - -# Mount Additional Volumes -if [ -z "$SSH_DIR" ]; then - SSH_DIR="$HOME/.ssh" -fi - -HOST_VOLUMES= -if [ -e "$SSH_DIR" -a -z "$MSYS" ]; then - HOST_VOLUMES+="-v $SSH_DIR:/home/$(id -un)/.ssh" -fi - -#------------------------------------------------------------------------------ -# Now, finally, run the command in a container -# -TTY_ARGS= -tty -s && [ -z "$MSYS" ] && TTY_ARGS=-ti -CONTAINER_NAME=dockcross_$RANDOM -docker run $TTY_ARGS --name $CONTAINER_NAME \ - -v "$HOST_PWD":/work \ - $HOST_VOLUMES \ - "${USER_IDS[@]}" \ - $FINAL_ARGS \ - $FINAL_IMAGE "$@" -run_exit_code=$? - -# Attempt to delete container -rm_output=$(docker rm -f $CONTAINER_NAME 2>&1) -rm_exit_code=$? -if [[ $rm_exit_code != 0 ]]; then - if [[ "$CIRCLECI" == "true" ]] && [[ $rm_output == *"Driver btrfs failed to remove"* ]]; then - : # Ignore error because of https://circleci.com/docs/docker-btrfs-error/ - else - echo "$rm_output" - exit $rm_exit_code - fi -fi - -exit $run_exit_code - -################################################################################ -# -# This image is not intended to be run manually. -# -# To create a dockcross helper script for the -# dockcross/linux-armv7a:latest image, run: -# -# docker run --rm dockcross/linux-armv7a:latest > dockcross-linux-armv7a-latest -# chmod +x dockcross-linux-armv7a-latest -# -# You may then wish to move the dockcross script to your PATH. -# -################################################################################ diff --git a/vivado/Software/eggnet/CMakeLists.txt b/vivado/Software/eggnet/CMakeLists.txt deleted file mode 100644 index fb3aaf97..00000000 --- a/vivado/Software/eggnet/CMakeLists.txt +++ /dev/null @@ -1,71 +0,0 @@ -cmake_minimum_required(VERSION 3.10) -project(EggnetDriver C) - - - -###### Setup ###### -# Doc: -# https://cmake.org/cmake/help/latest/command/find_package.html - -# Find Pthreads -#set(THREADS_PREFER_PTHREAD_FLAG ON) -#find_package(Threads REQUIRED) -# find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy) -#find_package(Python 3.6 REQUIRED COMPONENTS Interpreter Devlopment NumPy) - - -add_library( - EggnetDriver STATIC - attr.c - base.c - # dma-proxy.c - eggdbg.c - eggdma.c - eggstatus.c - helper.c - mem.c -) - - -target_include_directories( - EggnetDriver - PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/include/arm-linux-gnueabihf - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/include/ - PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) - -target_link_directories( - EggnetDriver - PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/lib/ - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/lib/arm-linux-gnueabihf -) - -# Link with pthreads -target_link_libraries(EggnetDriver PUBLIC pthreads) - - -# Add the python wrapper -add_library(PyEggnetDriver SHARED eggnet_wrap.c) - -target_include_directories( - PyEggnetDriver - PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/include/arm-linux-gnueabihf - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/include/ - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/numpy_include - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/python3.6/include/python3.6m - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} -) - -target_link_directories(PyEggnetDriver - PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/usr/lib/ - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/linux/lib/arm-linux-gnueabihf - ${CMAKE_CURRENT_SOURCE_DIR}/../sysroots/python3.6/lib -) - -target_link_libraries(PyEggnetDriver PRIVATE EggnetDriver python3.6m) - - diff --git a/vivado/Software/eggnet/CMakeLists_find_package.txt b/vivado/Software/eggnet/CMakeLists_find_package.txt deleted file mode 100644 index fdbe607e..00000000 --- a/vivado/Software/eggnet/CMakeLists_find_package.txt +++ /dev/null @@ -1,42 +0,0 @@ -cmake_minimum_required(VERSION 3.10) -project(EggnetDriver C) - - - -###### Setup ###### -# Doc: -# https://cmake.org/cmake/help/latest/command/find_package.html - -# Find Pthreads -set(THREADS_PREFER_PTHREAD_FLAG ON) -find_package(Threads REQUIRED) -# find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy) -find_package(Python 3.6 REQUIRED COMPONENTS Interpreter Devlopment NumPy) - - -add_library( - EggnetDriver STATIC - attr.c - base.c - dma-proxy.c - eggdbg.c - eggdma.c - eggstatus.c - helper.c - mem.c -) -target_link_libraries(EggnetDriver PUBLIC pthread) -target_include_directories(EggnetDriver PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) - -# Add the python wrapper -add_library(PyEggnetDriver SHARED eggnet_wrap.c) -target_include_directories(PyEggnetDriver - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${Python_INCLUDE_DIRS} - ${Python_NumPy_INCLUDE_DIRS} -) - -target_link_libraries(PyEggnetDriver PRIVATE EggnetDriver ${Python_LIBS}) - - diff --git a/vivado/Software/eggnet/EggNetDriverCore.py b/vivado/Software/eggnet/EggNetDriverCore.py deleted file mode 100644 index c79d7fe2..00000000 --- a/vivado/Software/eggnet/EggNetDriverCore.py +++ /dev/null @@ -1,105 +0,0 @@ -# This file was automatically generated by SWIG (http://www.swig.org). -# Version 4.0.1 -# -# Do not make changes to this file unless you know what you are doing--modify -# the SWIG interface file instead. - - -from __future__ import absolute_import, print - - - -from sys import version_info as _swig_python_version_info -if _swig_python_version_info < (2, 7, 0): - raise RuntimeError("Python 2.7 or later required") - -# Import the low-level C/C++ module -if __package__ or "." in __name__: - from . import _EggNetDriverCore -else: - import _EggNetDriverCore - -try: - import builtins as __builtin__ -except ImportError: - import __builtin__ - -def _swig_repr(self): - try: - strthis = "proxy of " + self.this.__repr__() - except __builtin__.Exception: - strthis = "" - return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,) - - -def _swig_setattr_nondynamic_instance_variable(set): - def set_instance_attr(self, name, value): - if name == "thisown": - self.this.own(value) - elif name == "this": - set(self, name, value) - elif hasattr(self, name) and isinstance(getattr(type(self), name), property): - set(self, name, value) - else: - raise AttributeError("You cannot add instance attributes to %s" % self) - return set_instance_attr - - -def _swig_setattr_nondynamic_class_variable(set): - def set_class_attr(cls, name, value): - if hasattr(cls, name) and not isinstance(getattr(cls, name), property): - set(cls, name, value) - else: - raise AttributeError("You cannot add class attributes to %s" % cls) - return set_class_attr - - -def _swig_add_metaclass(metaclass): - """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass""" - def wrapper(cls): - return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy()) - return wrapper - - -class _SwigNonDynamicMeta(type): - """Meta class to enforce nondynamic attributes (no new attributes) for a class""" - __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__) - - -DATA_WIDTH = _EggNetDriverCore.DATA_WIDTH -OUTPUT_NUMBER = _EggNetDriverCore.OUTPUT_NUMBER - -def init_network(ip_name, net): - return _EggNetDriverCore.init_network(ip_name, net) - -def close_network(): - return _EggNetDriverCore.close_network() - -def forward(image_buffer): - return _EggNetDriverCore.forward(image_buffer) - -def print_err(code): - return _EggNetDriverCore.print_err(code) - -def get_network_structure(net_ptr): - return _EggNetDriverCore.get_network_structure(net_ptr) - -def print_network(): - return _EggNetDriverCore.print_network() - -def activate_debug_mode(): - return _EggNetDriverCore.activate_debug_mode() - -def read_pixel(pixel, layer, row, col, channel): - return _EggNetDriverCore.read_pixel(pixel, layer, row, col, channel) - -def read_row(pixel, layer, row, channel): - return _EggNetDriverCore.read_row(pixel, layer, row, channel) - -def read_channel(pixel, layer, channel): - return _EggNetDriverCore.read_channel(pixel, layer, channel) - -def read_layer(pixel, layer): - return _EggNetDriverCore.read_layer(pixel, layer) - - diff --git a/vivado/Software/eggnet/base.c b/vivado/Software/eggnet/base.c deleted file mode 100644 index 11bf7abd..00000000 --- a/vivado/Software/eggnet/base.c +++ /dev/null @@ -1,463 +0,0 @@ -/* - * libuio - UserspaceIO helper library - * - * Copyright (C) 2011 Benedikt Spranger - * based on libUIO by Hans J. Koch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif /* HAVE_CONFIG_H */ - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#include "libuio_internal.h" -#ifdef USE_GLIB -#include -#else -#define g_print printf -#endif - -/** - * @mainpage - * - * This manual documents the libuio C API. - */ - -/** - * @defgroup libuio_public public available libuio functions - * @ingroup libuio - * @brief public functions - */ - -/** - * @defgroup libuio_base libuio base functions - * @ingroup libuio_public - * @brief public base functions - * @{ - */ - -static const char *sysfs = "/sys"; - -static int uio_unmap (struct uio_map_t *uio_map) -{ - int ret; - ret = munmap (uio_map->map, uio_map->size); - if (ret) - g_warning (_("munmap: %s\n"), g_strerror (errno)); - else - uio_map->map = MAP_FAILED; - - return ret; -} - -/** - * Set sysfs mount point - * @param sysfs_mpoint path to sysfs mount point - */ -void uio_setsysfs_point (const char *sysfs_mpoint) -{ - sysfs = sysfs_mpoint; -} - -/** - * get UIO device name - * @param info UIO device info struct - * @returns UIO device name or NULL on failure - */ -char *uio_get_name(struct uio_info_t* info) -{ - if (!info) - return NULL; - - return info->name; -} - -/** - * get UIO device node name - * @param info UIO device info struct - * @returns UIO device node name or NULL on failure - */ -char *uio_get_devname(struct uio_info_t* info) -{ - if (!info) - return NULL; - - return info->devname; -} - -/** - * get UIO driver version - * @param info UIO device info struct - * @returns UIO device version or NULL on failure - */ -char *uio_get_version(struct uio_info_t* info) -{ - if (!info) - return NULL; - - return info->version; -} - -/** - * get UIO device major number - * @param info UIO device info struct - * @returns UIO device node major or 0 on failure - */ -int uio_get_major(struct uio_info_t* info) -{ - if (!info) - return 0; - - return major (info->devid); -} - -/** - * get UIO device minor number - * @param info UIO device info struct - * @returns UIO device node minor or 0 on failure - */ -int uio_get_minor(struct uio_info_t* info) -{ - if (!info) - return 0; - - return minor (info->devid); -} - -/** - * get UIO device id - * @param info UIO device info struct - * @returns UIO device id or 0 on failure - */ -dev_t uio_get_devid(struct uio_info_t* info) -{ - if (!info) - return 0; - - return info->devid; -} - -/** - * get UIO device file descriptor - * @param info UIO device info struct - * @returns UIO device file descriptor -1 on failure - */ -int uio_get_fd(struct uio_info_t* info) -{ - if (!info) - return -1; - - return info->fd; -} - -/** - * free UIO device information struct - * @param info UIO device info struct - */ -void uio_free_info(struct uio_info_t* info) -{ - if (info) - { - if (info->path) - free (info->path); - if (info->name) - free (info->name); - if (info->version) - free (info->version); - if (info->maps) - free (info->maps); - if (info->devname) - free (info->devname); - free (info); - } -} - -/** - * find UIO devices - * @returns device list or NULL on failure - */ -struct uio_info_t **uio_find_devices () -{ - struct dirent **namelist; - struct uio_info_t **info; - char sysfsname [PATH_MAX]; - int i, t = 0, nr; - - snprintf (sysfsname, sizeof (sysfsname), "%s/class/uio", sysfs); - g_print(_("Scan for: %s \n"),sysfsname); - nr = scandir (sysfsname, &namelist, 0, alphasort); - if (nr < 0) - { - g_warning (_("scandir: %s\n"), g_strerror (errno)); - return NULL; - } - - info = calloc (nr, sizeof (struct uio_info_t *)); - if (!info) - { - errno = ENOMEM; - g_warning (_("calloc: %s\n"), g_strerror (errno)); - goto out; - } - - for (i = 0; i < nr; i++) - { - if (!strcmp (namelist [i]->d_name, ".") || - !strcmp (namelist [i]->d_name, "..")) - continue; - - info [t] = create_uio_info (sysfsname, namelist [i]->d_name); - t++; - } - -out: - for (i = 0; i < nr; i++) - free (namelist [i]); - free (namelist); - - return info; -} - -/** - * find UIO devices by UIO name - * @param uio_name UIO name - * @returns device info or NULL on failure - */ -struct uio_info_t *uio_find_by_uio_name (char *uio_name) -{ - struct uio_info_t *info = NULL, **list, **uio_list; - char *name; - - if (!uio_name) - return NULL; - - uio_list = uio_find_devices (); - if (!uio_list) - return NULL; - - for (list = uio_list; *list; list++) - { - struct uio_info_t *candidate = *list; - - name = uio_get_name (candidate); - - if (!strcmp (name, uio_name)) { - info = candidate; - break; - } - } - free (uio_list); - - return info; -} - -/** - * find UIO devices by UIO enumeration number - * @param uio_num UIO enumeration number - * @returns device info or NULL on failure - */ -struct uio_info_t *uio_find_by_uio_num (int uio_num) -{ - struct uio_info_t *info; - char sysfsname [PATH_MAX]; - char name [PATH_MAX]; - - snprintf (sysfsname, sizeof (sysfsname), "%s/class/uio", sysfs); - snprintf (name, sizeof (name), "uio%d", uio_num); - - info = create_uio_info (sysfsname, name); - if (errno) - { - uio_free_info (info); - info = NULL; - } - - return info; -} - -/** - * find a UIO device by base address in memory map - * @param base address of a memory map member - * @returns device info or NULL on failure - */ -struct uio_info_t *uio_find_by_base_addr (unsigned int base_addr) -{ - struct uio_info_t *info = NULL, **list, **uio_list; - int mapc, mapnum, found = 0; - - uio_list = uio_find_devices(); - if (!uio_list) - return NULL; - - for (list = uio_list; *list; list++) - { - struct uio_info_t *candidate = *list; - - /* get number of maps and go through each checking the base address */ - mapnum = uio_get_maxmap(candidate); - - for (mapc = 0; mapc < mapnum; mapc++) - { - if (base_addr == uio_get_mem_addr(candidate, mapc)) - { - info = candidate; - found = 1; - break; - } - } - - if (found) - break; - } - - free (uio_list); - - return info; -} - -/** - * open a UIO device (try to map to given address) - * @param info UIO device info stuct - * @param ptr try to map at ptr - * @returns 0 on success or -1 on failure and errno is set - */ -int uio_open_fix (struct uio_info_t* info, void *ptr) -{ - int fd, i; - - if (!info) - { - errno = EINVAL; - g_warning (_("uio_open: %s\n"), g_strerror (errno)); - return -1; - } - - fd = open (info->devname, O_RDWR); - if (fd < 0) - { - g_warning (_("open: %s\n"), g_strerror (errno)); - return -1; - } - - for (i = 0; i < info->maxmap; i++) - { - info->maps [i].map = mmap (ptr, info->maps [i].size, - PROT_READ | PROT_WRITE, - MAP_SHARED, fd, i * getpagesize()); - if (info->maps[i].map == MAP_FAILED) { - while (--i >= 0) - uio_unmap (info->maps [i].map); - g_warning (_("mmap: %s\n"), g_strerror (errno)); - return -1; - } - if (ptr) - ptr += info->maps [i].size; - } - info->fd = fd; - - return 0; -} - -/** - * open a UIO device - * @param info UIO device info stuct - * @returns 0 on success or -1 on failure and errno is set - */ -int uio_open (struct uio_info_t* info) -{ - return uio_open_fix (info, NULL); -} - -/** - * open a UIO device (COW) - * @param info UIO device info stuct - * @returns 0 on success or -1 on failure and errno is set - */ -int uio_open_private (struct uio_info_t* info) -{ - int fd, i; - - if (!info) - { - errno = EINVAL; - g_warning (_("uio_open: %s\n"), g_strerror (errno)); - return -1; - } - - fd = open (info->devname, O_RDWR); - if (fd < 0) - { - g_warning (_("open: %s\n"), g_strerror (errno)); - return -1; - } - - for (i = 0; i < info->maxmap; i++) { - info->maps [i].map = mmap (NULL, info->maps [i].size, - PROT_READ | PROT_WRITE, - MAP_PRIVATE, fd, i * getpagesize()); - - if (info->maps[i].map == MAP_FAILED) { - while (--i >= 0) - uio_unmap(info->maps [i].map); - g_warning (_("mmap: %s\n"), g_strerror (errno)); - return -1; - } - } - - info->fd = fd; - - return 0; -} - -/** - * close a UIO device - * @param info UIO device info struct - * @returns 0 on success or -1 on failure and errno is set - */ -int uio_close (struct uio_info_t* info) -{ - int i; - - if (!info) - { - errno = EINVAL; - g_warning (_("uio_close: %s\n"), g_strerror (errno)); - return -1; - } - - for (i = 0; i < info->maxmap; i++) - if (info->maps [i].map != MAP_FAILED) - uio_unmap(info->maps [i].map); - - close (info->fd); - - return 0; -} - -/** @} */ diff --git a/vivado/Software/eggnet/dbg.h b/vivado/Software/eggnet/dbg.h deleted file mode 100644 index 522be064..00000000 --- a/vivado/Software/eggnet/dbg.h +++ /dev/null @@ -1,124 +0,0 @@ -/** - * A collection of useful debugging macros from the book "Learn C the hard way" - * by Zed Shaw. To remove debugging code simply pass the NDEBUG preprocessor - * macro - */ -#ifndef DBG_H -#define DBG_H - -#include -#include -#include - -#ifdef _MSC_VER -#define _CRT_SECURE_NO_WARNINGS 1 -#endif - -#ifdef NDEBUG // If no debugging is enabled, remove all debugging statements -#define debug(msg, ...) -#else -/** - * @brief Prints a debug message. Suppress it by defining the NDEBUG preprocess - * constant @param msg The message that should be printed, including optional - * parameters - */ -#define debug(msg, ...) \ - fprintf(stderr, "[DEBUG] %s:%d: " msg "\n", __FILE__, __LINE__, ##__VA_ARGS__) -#endif - -/** - * @brief Returns the compile time name of the passed variable as string - * @param Variable The variable - */ -#define GET_VARIABLE_NAME(Variable) #Variable - -#ifdef _MSC_VER // Work around for Windows -#define clean_errno() (errno == 0 ? "None" : "strerror() not available") -#else -#define clean_errno() (errno == 0 ? "None" : strerror(errno)) -#endif // _MSC_VER - - -#define log_err(M, ...) \ - fprintf(stderr, "[ERROR] (%s:%d: errno: %s) " M "\n", __FILE__, __LINE__, clean_errno(), ##__VA_ARGS__) -#define log_warn(M, ...) \ - fprintf(stderr, "[WARN] (%s:%d: errno: %s) " M "\n", __FILE__, __LINE__, clean_errno(), ##__VA_ARGS__) -#define log_info(M, ...) \ - fprintf(stderr, "[INFO] (%s:%d) " M "\n", __FILE__, __LINE__, ##__VA_ARGS__) - -/** - * @brief Check if a condition holds and goto an error routine if not - * @param A The condition that should be checked - * @param M The message that should be printed in case of an error - */ -#define CHECK(A, M, ...) \ - do \ - { \ - if (!(A)) \ - { \ - log_err(M, ##__VA_ARGS__); \ - errno = 0; \ - goto error; \ - } \ - } while (0); - -/** - * @brief Check if a variable is not null. If it is null, an error message is - * printed and the execution jumps to an error routine \note Requires goto label - * with name "error" @param var The variable that should be checked for null - * value - */ -#define CHECK_NOT_NULL(var) CHECK((var) != NULL, "%s must not be null", GET_VARIABLE_NAME(var)) - -/** - * @brief Checks if the condition is fulfilled and sets a variable to value. - * Then an error message is printed and the program jumps to an error label. - * \note Requires "goto" label with name "error" - * @param A the condition that should be checked - * @param var The variable that should be assigned, e.g. a return value - * @param val The value that should be assigned to the variable - * @param M A message that should be printed - */ -#define CHECK_AND_SET(A, var, val, M, ...) \ - do \ - { \ - if (!(A)) \ - { \ - var = val; \ - log_err(M, ##__VA_ARGS__); \ - errno = 0; \ - goto error; \ - } \ - } while (0); - -/** - * @brief Prints an error message and jumps to an error label, if the program - * passes this point (use it to mark forbidden branches of code execution). - * @param M A optional message that, should be printed - */ -#define SENTINEL(M, ...) \ - do \ - { \ - log_err(M, ##__VA_ARGS__); \ - errno = 0; \ - goto error; \ - } while (0); - -/** - * @brief Check if a condition holds and goto an error routine if not - * @note Same as "CHECK" but with the difference, that the message is only - * printed in debug mode @param A The condition that should be checked @param M - * The message that should be printed - */ -#define CHECK_DEBUG(A, M, ...) \ - do \ - { \ - if (!(A)) \ - { \ - debug(M, ##__VA_ARGS__); \ - errno = 0; \ - goto error; \ - } \ - } while (0); - -#endif diff --git a/vivado/Software/eggnet/dma-proxy.c b/vivado/Software/eggnet/dma-proxy.c deleted file mode 100644 index 4f9eb6ec..00000000 --- a/vivado/Software/eggnet/dma-proxy.c +++ /dev/null @@ -1,182 +0,0 @@ -#include "eggnet.h" -#include -#include -#include -#include -#include -#include -#include -#include "dma-proxy.h" -#include "dbg.h" - - -#define DRIVER_KEXT_NAME "dma-proxy.ko" - -#define HEIGTH 28 -#define WIDTH 28 -#define CHANNELS 1 -#define IMG_GET(b,h,w,c) image_buffer + c + w*CHANNELS + h*CHANNELS*WIDTH + b *CHANNELS*WIDTH*HEIGTH - - -static struct dma_proxy_channel_interface *tx_proxy_interface_p; -static int tx_proxy_fd; -static struct dma_proxy_channel_interface *rx_proxy_interface_p; -static int rx_proxy_fd, i; -const int TRANSFER_SIZE = HEIGTH*WIDTH*CHANNELS; -static pthread_mutex_t buffer_write_lock = PTHREAD_MUTEX_INITIALIZER; -static pthread_mutex_t buffer_read_lock = PTHREAD_MUTEX_INITIALIZER; - -#define LINUX_KERNEL_MODULE_PATH "/lib/modules/4.9.0-xilinx-v2017.4/extra/dma-proxy.ko" -#define LINUX_ADD_KERNEL_MODULE_COMMAND "insmod " LINUX_KERNEL_MODULE_PATH -#define LINUX_DEV_PATH "/dev/dma_proxy_rx" - - -egg_error_t egg_init_dma() -{ - if( access( LINUX_DEV_PATH, F_OK ) == -1 ) { - CHECK(system(LINUX_ADD_KERNEL_MODULE_COMMAND) == 0,"Error loading dma-proxy kernel module"); - } - tx_proxy_fd = open("/dev/dma_proxy_tx", O_RDWR); - CHECK(tx_proxy_fd >= 1,"Unable to open dma_proxy_tx device file"); - - rx_proxy_fd = open("/dev/dma_proxy_rx", O_RDWR); - CHECK(rx_proxy_fd >= 1,"Unable to open dma_proxy_rx device file"); - - tx_proxy_interface_p = (struct dma_proxy_channel_interface *)mmap(NULL, sizeof(struct dma_proxy_channel_interface), - PROT_READ | PROT_WRITE, MAP_SHARED, tx_proxy_fd, 0); - rx_proxy_interface_p = (struct dma_proxy_channel_interface *)mmap(NULL, sizeof(struct dma_proxy_channel_interface), - PROT_READ | PROT_WRITE, MAP_SHARED, rx_proxy_fd, 0); - - return EGG_ERROR_NONE; - error: - return EGG_ERROR_INIT_FAILDED; - -} - -egg_error_t egg_close_dma() -{ - CHECK(munmap(tx_proxy_interface_p, sizeof(struct dma_proxy_channel_interface))==0,"Error unmap tx proxy interface"); - CHECK(munmap(rx_proxy_interface_p, sizeof(struct dma_proxy_channel_interface))==0,"Error unmap rx proxy interface"); - - close(tx_proxy_fd); - close(rx_proxy_fd); - return EGG_ERROR_NONE; - error: - return EGG_ERROR_UDEF; - -} - - - -int write_image(uint8_t *image_buffer, int batch, int height, int width, int channels) -{ - // image_buffer[b][h][w][c] - *IMG_GET(1,1,1,1)++; - - - -} - - -egg_error_t egg_send_single_image_sync(uint8_t *image_buffer) { - - int dummy; - tx_proxy_interface_p->length = TRANSFER_SIZE; - int i = 0; - for (int i = 0; i < TRANSFER_SIZE; i++) { - tx_proxy_interface_p->buffer[i] = image_buffer[i]; - } - - /* Perform the DMA transfer and the check the status after it completes - * as the call blocks til the transfer is done. - */ - ioctl(tx_proxy_fd, 0, &dummy); - - CHECK(tx_proxy_interface_p->status == PROXY_NO_ERROR,"Proxy tx transfer error\n"); - - error: - // do something smart here - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; - -} - -struct egg_send_image_thread_args { - int batch_size; - uint8_t *image_buffer; - egg_error_t error_status; -}; - -void *egg_tx_thread(void *args) -{ - int batch_size = ((struct egg_send_image_thread_args *) args)->batch_size; - uint8_t *image_buffer = ((struct egg_send_image_thread_args *) args)->image_buffer; - - /* Set up the length for the DMA transfer and initialize the transmit - * buffer to a known pattern. - */ - - pthread_mutex_lock(&buffer_write_lock); // ensures that interface to dma-proxy is used by only one thread - for (int b=0;bbatch_size = batch_size; - args->image_buffer = image_buffer; - - pthread_create(&tid, NULL, egg_tx_thread, (void *) args); -} - -void *tx_image_batch(int dma_count, uint8_t *image_buffer, int batch, int height, int width, int channels) -{ - int dummy; - - /* Set up the length for the DMA transfer and initialize the transmit - * buffer to a known pattern. - */ - pthread_mutex_lock(&buffer_write_lock); // ensures that interface to dma-proxy is used by only one thread - tx_proxy_interface_p->length = batch * width * height * channels; - int i = 0; - for (int b = 0; b < batch; b++) { - for (int h = 0; h < height; h++) { - for (int w = 0; w < width; w++) { - for (int c = 0; c < channels; c++) { - tx_proxy_interface_p->buffer[i] = *IMG_GET(b,h,w,c); - i++; - } - } - } - } - - pthread_mutex_unlock(&buffer_write_lock); // unlock interface - - for (i = 0; i < TRANSFER_SIZE; i++) - tx_proxy_interface_p->buffer[i] = *IMG_GET(1,1,1,1)++;; - - /* Perform the DMA transfer and the check the status after it completes - * as the call blocks til the transfer is done. - */ - ioctl(tx_proxy_fd, 0, &dummy); - - if (tx_proxy_interface_p->status != PROXY_NO_ERROR) - printf("Proxy tx transfer error\n"); - -} - diff --git a/vivado/Software/eggnet/dma-proxy.h b/vivado/Software/eggnet/dma-proxy.h deleted file mode 100644 index 101de18c..00000000 --- a/vivado/Software/eggnet/dma-proxy.h +++ /dev/null @@ -1,20 +0,0 @@ -/* This header file is shared between the DMA Proxy test application and the DMA Proxy device driver. It defines the - * shared interface to allow DMA transfers to be done from user space. - * - * Note: the buffer in the data structure should be 1st in the channel interface so that the buffer is cached aligned, - * otherwise there may be issues when using cached memory. The issues were typically the 1st 32 bytes of the buffer - * not working in the driver test. - */ -#ifndef DMA_PROXY_H -#define DMA_PROXY_H - -#include -#define MAXIMUM_BUFFER_SIZE (3 * 1024 * 1024) - -struct dma_proxy_channel_interface { - unsigned char buffer[MAXIMUM_BUFFER_SIZE]; - enum proxy_status { PROXY_NO_ERROR = 0, PROXY_BUSY = 1, PROXY_TIMEOUT = 2, PROXY_ERROR = 3 } status; - unsigned int length; -}; - -#endif diff --git a/vivado/Software/eggnet/eggdbg.c b/vivado/Software/eggnet/eggdbg.c deleted file mode 100644 index b3de97ce..00000000 --- a/vivado/Software/eggnet/eggdbg.c +++ /dev/null @@ -1,103 +0,0 @@ -/* - * EggNet debug library - * - * Copyright (C) 2020 Lukas Baischer - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#include "eggnet.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include "dbg.h" -#include - - -/** - * Writes bram address to AXI lite bus register - * @param addr BRAM address - * @return Error code - */ -egg_error_t egg_update_bram_addr(uint32_t addr) -{ - CHECK(uio.number >= 0,"UIO not initialized"); - *(uio.ptr_to_mmap_addr+EGG_RD_BRAM_ADDR_OFS) = addr; - int timeout = 0; - uint32_t value = 0; - while(timeout < TIMEOUT) - { - timeout++; - value = *(uio.ptr_to_mmap_addr+EGG_RD_BRAM_ADDR_OFS); - CHECK(egg_check_dbg_status()==EGG_ERROR_NONE,"No valid data is available in memory!. Ensure that a complete image is sent to the NN IP."); - if (value == addr) - { - return EGG_ERROR_NONE; - } - } - fprintf(stderr, "[ERROR] Timeout occurred in function egg_update_bram_addr()"); - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} - -/** - * Updates 32bit_select register - * @param addr BRAM address - * @return Error code - */ -egg_error_t egg_update_channel_select(uint8_t channel) -{ - uint32_t select_32bit = ((uint32_t) channel)*DATA_WIDTH; - select_32bit=select_32bit/32; - *(uio.ptr_to_mmap_addr+EGG_WR_32BIT_SEL_OFS) = (uint32_t) select_32bit; - return EGG_ERROR_NONE; -} - -/** - * Reads single element from BRAM - * @return Error code - */ -egg_error_t egg_read_bram_element(uint32_t *element, uint8_t channel) -{ - uint32_t value = 0; - value = *(uio.ptr_to_mmap_addr + EGG_RD_BRAM_DATA_OFS); - int shift = channel % (32/DATA_WIDTH); // %4 - value = value >> shift*DATA_WIDTH; - value = value & (((uint32_t) pow(2,DATA_WIDTH))-1); - *element = value; - return EGG_ERROR_NONE; -} - -/** - * Checks status register if debug error flag = 1 - * @return Error code - */ -egg_error_t egg_check_dbg_status() -{ - uint32_t value = 0; - value = *(uio.ptr_to_mmap_addr + EGG_RD_STATUS_OFS); - value = (value & EGG_RD_DBG_ERROR_MASK) >> EGG_RD_DBG_ERROR_SHIFT; - CHECK(value == 0,"Debug error flag raised") - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} diff --git a/vivado/Software/eggnet/eggdma.c b/vivado/Software/eggnet/eggdma.c deleted file mode 100644 index 7478c906..00000000 --- a/vivado/Software/eggnet/eggdma.c +++ /dev/null @@ -1,247 +0,0 @@ -#include "eggnet_core.h" -#include "eggnet.h" -#include -#include -#include -#include -#include -#include -#include -#include "dma-proxy.h" -#include "dbg.h" - - -#define DRIVER_KEXT_NAME "dma-proxy.ko" - -#define HEIGTH 28 -#define WIDTH 28 -#define CHANNELS 1 -#define IMG_GET(b,h,w,c) image_buffer + c + w*CHANNELS + h*CHANNELS*WIDTH + b *CHANNELS*WIDTH*HEIGTH - - -static struct dma_proxy_channel_interface *tx_proxy_interface_p; -static int tx_proxy_fd; -static struct dma_proxy_channel_interface *rx_proxy_interface_p; -static int rx_proxy_fd; -const int TRANSFER_SIZE = HEIGTH*WIDTH*CHANNELS; -static pthread_mutex_t buffer_write_lock = PTHREAD_MUTEX_INITIALIZER; -static pthread_mutex_t buffer_read_lock = PTHREAD_MUTEX_INITIALIZER; - -#define LINUX_KERNEL_MODULE_PATH "/lib/modules/4.9.0-xilinx-v2017.4/extra/dma-proxy.ko" -#define LINUX_ADD_KERNEL_MODULE_COMMAND "insmod " LINUX_KERNEL_MODULE_PATH -#define LINUX_DEV_PATH "/dev/dma_proxy_rx" - - -egg_error_t egg_init_dma() -{ - if( access( LINUX_DEV_PATH, F_OK ) == -1 ) { - CHECK(system(LINUX_ADD_KERNEL_MODULE_COMMAND) == 0,"Error loading dma-proxy kernel module"); - } - tx_proxy_fd = open("/dev/dma_proxy_tx", O_RDWR); - CHECK(tx_proxy_fd >= 1,"Unable to open dma_proxy_tx device file"); - - rx_proxy_fd = open("/dev/dma_proxy_rx", O_RDWR); - CHECK(rx_proxy_fd >= 1,"Unable to open dma_proxy_rx device file"); - - tx_proxy_interface_p = (struct dma_proxy_channel_interface *)mmap(NULL, sizeof(struct dma_proxy_channel_interface), - PROT_READ | PROT_WRITE, MAP_SHARED, tx_proxy_fd, 0); - rx_proxy_interface_p = (struct dma_proxy_channel_interface *)mmap(NULL, sizeof(struct dma_proxy_channel_interface), - PROT_READ | PROT_WRITE, MAP_SHARED, rx_proxy_fd, 0); - - return EGG_ERROR_NONE; - error: - return EGG_ERROR_INIT_FAILDED; - -} - -egg_error_t egg_close_dma() -{ - CHECK(munmap(tx_proxy_interface_p, sizeof(struct dma_proxy_channel_interface))==0,"Error unmap tx proxy interface"); - CHECK(munmap(rx_proxy_interface_p, sizeof(struct dma_proxy_channel_interface))==0,"Error unmap rx proxy interface"); - - close(tx_proxy_fd); - close(rx_proxy_fd); - return EGG_ERROR_NONE; - error: - return EGG_ERROR_UDEF; - -} - -/* The following function is the receive thread to allow to receive. - * The function is called when the interrupt of the uio device occurs. - * The ioctl calls are blocking such that a thread is needed. - */ -void *egg_rx_img_thread() -{ - int dummy, i; - pixel_t *img_ptr=0; - - /* Initialize the receive buffer so that it can be verified after the transfer is done - * and setup the size of the transfer for the receive channel - */ - for (i = 0; i < OUTPUT_NUMBER; i++) - { - rx_proxy_interface_p->buffer[i] = 0; - } - - rx_proxy_interface_p->length = OUTPUT_NUMBER; - - /* Perform a receive DMA transfer and after it finishes check the status - */ - ioctl(rx_proxy_fd, 0, &dummy); - - if(rx_proxy_interface_p->status != PROXY_NO_ERROR) - fprintf(stderr, "[ERROR] (%s:%d: PROXY DMA ERROR. Error sending image\n",__FILE__, __LINE__); - /* Perform the DMA transfer and check the status after it completes - * as the call blocks till the transfer is done. - */ - - if (network.result_number == 0) - { - // allocate pointer to pixel array - network.results = (pixel_t **) calloc (1, sizeof (pixel_t *)); - }else - { - // allocate additional pointer to pixel array - network.results = (pixel_t **) realloc(network.results, sizeof (pixel_t *)*(network.result_number+1)); - } - - img_ptr = (pixel_t *) calloc (OUTPUT_NUMBER, sizeof (pixel_t)); - - for (i = 0; i < OUTPUT_NUMBER; i++) - { - img_ptr[i] = rx_proxy_interface_p->buffer[i]; - } - network.results[network.result_number] = img_ptr; - network.result_number++; -} - - - - - - - - - - - -int write_image(uint8_t *image_buffer, int batch, int height, int width, int channels) -{ - // image_buffer[b][h][w][c] - IMG_GET(1,1,1,1)++; - - - -} - - -egg_error_t egg_send_single_image_sync(uint8_t *image_buffer) { - - int dummy; - tx_proxy_interface_p->length = TRANSFER_SIZE; - int i = 0; - for (int i = 0; i < TRANSFER_SIZE; i++) { - tx_proxy_interface_p->buffer[i] = image_buffer[i]; - } - - /* Perform the DMA transfer and the check the status after it completes - * as the call blocks til the transfer is done. - */ - ioctl(tx_proxy_fd, 0, &dummy); - - CHECK(tx_proxy_interface_p->status == PROXY_NO_ERROR,"Proxy tx transfer error\n"); - - error: - // do something smart here - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; - -} - -struct egg_send_image_thread_args { - int batch_size; - uint8_t *image_buffer; - egg_error_t error_status; -}; - -void *egg_tx_thread(void *args) -{ - int batch_size = ((struct egg_send_image_thread_args *) args)->batch_size; - uint8_t *image_buffer = ((struct egg_send_image_thread_args *) args)->image_buffer; - - /* Set up the length for the DMA transfer and initialize the transmit - * buffer to a known pattern. - */ - - pthread_mutex_lock(&buffer_write_lock); // ensures that interface to dma-proxy is used by only one thread - for (int b=0;bbatch_size = batch_size; - args->image_buffer = image_buffer; - - pthread_create(&tid, NULL, egg_tx_thread, args); -} - -void *tx_image_batch(int dma_count, uint8_t *image_buffer, int batch, int height, int width, int channels) -{ - int dummy; - - /* Set up the length for the DMA transfer and initialize the transmit - * buffer to a known pattern. - */ - pthread_mutex_lock(&buffer_write_lock); // ensures that interface to dma-proxy is used by only one thread - tx_proxy_interface_p->length = batch * width * height * channels; - int i = 0; - for (int b = 0; b < batch; b++) { - for (int h = 0; h < height; h++) { - for (int w = 0; w < width; w++) { - for (int c = 0; c < channels; c++) { - tx_proxy_interface_p->buffer[i] = *IMG_GET(b,h,w,c); - i++; - } - } - } - } - - pthread_mutex_unlock(&buffer_write_lock); // unlock interface - - - // TODO Is this line still neeeded - // for (i = 0; i < TRANSFER_SIZE; i++) - // tx_proxy_interface_p->buffer[i] = *IMG_GET(1,1,1,1)++;; - - /* Perform the DMA transfer and the check the status after it completes - * as the call blocks til the transfer is done. - */ - ioctl(tx_proxy_fd, 0, &dummy); - - if (tx_proxy_interface_p->status != PROXY_NO_ERROR) - printf("Proxy tx transfer error\n"); - -} - - -int write_to_fpga(byte_t *dst, byte_t *buffer, size_t n) { - return -1; -} - diff --git a/vivado/Software/eggnet/eggnet.c b/vivado/Software/eggnet/eggnet.c deleted file mode 100644 index 2e2c7924..00000000 --- a/vivado/Software/eggnet/eggnet.c +++ /dev/null @@ -1,492 +0,0 @@ -#include "eggnet.h" -#include -#include -#include "dbg.h" - - -/** - * Initializes the network. Searches for the corresponding UIO device, loads and initializes the dma proxy driver - * @return Error code - */ -egg_error_t egg_init_network(const char *ip_name, network_t *net) -{ - egg_error_t code; - // Initialize DMA - debug("Initializing DMA..."); - code = egg_init_dma(); - CHECK(code == EGG_ERROR_NONE,"Error initializing DMA"); - debug("Initializing DMA done."); - // Initialize UIO Device --> AXI-lite bus communication - debug("Initializing UIO device of %s ...",ip_name); - code = egg_init_uio((char *) ip_name); - CHECK(code == EGG_ERROR_NONE,"Error initializing UIO device"); - debug("Initializing UIO device of %s done",ip_name); - // Reading network structure from hardware using AXI lite bus and UIO device driver - debug("Reading network structure from hardware..."); - code = get_network_structure(net); - CHECK(code == EGG_ERROR_NONE,"Error reading network structure from hardware"); - debug("Reading network structure from hardware done"); - // Print network structure if debugging is active - debug("Network structure:"); - #ifndef NDEBUG - print_network(); - #endif - return code; - error: - return code; -} - -/** - * Close network and free memory mapped address space - * @return Error code - */ -egg_error_t egg_close_network() -{ - egg_error_t code; - code = egg_close_dma(); - CHECK(code == EGG_ERROR_NONE,"Error closing DMA"); - - code = egg_close_uio(); - CHECK(code == EGG_ERROR_NONE,"Error closing UIO device"); - - code = egg_free_network(&network); - CHECK(code == EGG_ERROR_NONE,"Error freeing network"); - - return EGG_ERROR_NONE; - error: - return EGG_ERROR_UDEF; -} - - - - -egg_error_t egg_forward(const uint8_t *image_buffer, int batch, int height, int width, int channels, - int **results, int *batch_out, int *n) { - - egg_error_t return_value = EGG_ERROR_NONE; - - CHECK_AND_SET(results != NULL && batch_out != NULL && n != NULL && image_buffer != NULL, - return_value, EGG_ERROR_NULL_PTR, "Invalid input arg"); - - // allocate - int *_results = calloc(10 * batch, sizeof(int)); - - - - - *results = _results; - *n = 10; - *batch_out = batch; - -error: - return return_value; -} - - -/********************************************************************************************************************** - * - * Status Functions - * - *********************************************************************************************************************/ - -/** - * Returns an string description of the error - */ -const char *egg_print_err(egg_error_t code) -{ - switch(code) - { - case EGG_ERROR_NONE: - return "No error."; - - case EGG_ERROR_NULL_PTR: - return "Null pointer error."; - - case EGG_ERROR_DEVICE_COMMUNICATION_FAILED: - return "Communication with the device failed."; - - case EGG_ERROR_INIT_FAILDED: - return "Device initialization failed."; - - case EGG_ERROR_UDEF: - return "Undefined error occurred."; - default: - return "Undefined error occurred."; - } -} - -/** - * Reads network structure from hardware - */ -egg_error_t get_network_structure(network_t *net_ptr) -{ - CHECK(uio.number >= 1,"Initialize Network first!"); - if (network.layer_number > 0) - { - net_ptr = &network; - return EGG_ERROR_NONE; - } - - uint8_t layer_number = 0; - layer_t **layers; - - CHECK(egg_get_layer_number(&layer_number)==EGG_ERROR_NONE,"Error reading layer number from hardware"); - layers = calloc (layer_number, sizeof (struct layer_t *)); - CHECK(layers != NULL,"Error allocating layers"); - for (uint8_t i=0;ilayer_type = type; - layer->height = height; - layer->width = width; - layer->in_channel_number = channel_number; - layers[i] = layer; - } - network.layers = layers; - network.layer_number = layer_number; - *net_ptr = network; - return EGG_ERROR_NONE; - error: - return EGG_ERROR_UDEF; -} - -/** - * Print Network structure - * @param net Pointer to global network structure - * @return Error code - */ -egg_error_t print_network() -{ - CHECK(network.layer_number > 0,"Network not initialized!"); - for (int i=0;ilayer_type)); - fprintf(stdout,"Width %d: ",network.layers[i]->width); - fprintf(stdout,"Height %d: ",network.layers[i]->height); - fprintf(stdout,"In channel number %d:\n",network.layers[i]->in_channel_number); - } - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - - -/********************************************************************************************************************** - * - * DMA Functions - * - *********************************************************************************************************************/ - -/* The following function is the transmit thread to allow the transmit and the - * receive channels to be operating simultaneously. The ioctl calls are blocking - * such that a thread is needed. - * @param image Pointer to image 1-d array (one row after each other) - */ -void *egg_tx_img_thread(const pixel_t *image) -{ - int dummy, i; - - /* Set up the length for the DMA transfer and initialize the transmit - * buffer to a known pattern. - */ - tx_proxy_interface_p->length = network.layers[1]->width*network.layers[1]->height; - - for (i = 0; i < tx_proxy_interface_p->length; i++) - { - tx_proxy_interface_p->buffer[i] = image[i]; - } - - /* Perform the DMA transfer and check the status after it completes - * as the call blocks till the transfer is done. - */ - ioctl(tx_proxy_fd, 0, &dummy); - - if(tx_proxy_interface_p->status != PROXY_NO_ERROR) - fprintf(stderr, "[ERROR] (%s:%d: PROXY DMA ERROR. Error sending image\n",__FILE__, __LINE__); -} - -/********************************************************************************************************************** - * - * Debugging Functions - * - *********************************************************************************************************************/ - -egg_error_t activate_debug_mode(uint8_t channel) -{ - //check if Hardware is already initialized - CHECK(uio.number >= 0,"UIO not initialized"); - CHECK(network.layers[layer]->in_channel_number > channel,"Channel %d exceeds matrix dimension %d",channel,network.layers[layer]->in_channel_number); - debug("Parameter are valid"); - - //Update selected layer - CHECK(egg_update_memctrl_addr(layer)==EGG_ERROR_NONE,"Error writing %d to memory controller address register",layer); - debug("Memory controller address updated successfully. Layer %d selected.",layer); - - *(uio.ptr_to_mmap_addr+EGG_WR_DBG_ENABLE_OFS) = 0x00000001; - int timeout = 0; - uint32_t value = 0; - debug("Wait for hardware to enter debug mode"); - // 10 * Timeout since hardware finishes current computations before entering debug mode - while(timeout < TIMEOUT*10) - { - timeout++; - value = *(uio.ptr_to_mmap_addr+EGG_RD_STATUS_OFS); - value = (value & EGG_RD_DBG_ACTIVE_MASK) >> EGG_RD_DBG_ACTIVE_SHIFT; - if (value == 0x00000001) - { - debug("Debug mode active in layer %d",layer); - return EGG_ERROR_NONE; - } - #ifndef NDEBUG - if (timeout%100) - { - debug("Timeout counter : %d",timeout); - } - #endif - } - - fprintf(stderr, "[ERROR] Timeout occurred in function activate_debug_mode()"); - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; - -} - -/** - * reads a single pixel from the network - * @param neural network structure - * @param layer Selected Layer - * @param row selected row of the Matrix - * @param col selected collum of the Matrix - * @param channel Selected channel - * @return Error code - */ -egg_error_t read_pixel(const pixel_t *pixel,uint8_t layer, uint16_t row, uint16_t col, uint8_t channel) -{ - //Check if parameter are valid - CHECK(network.layer_number > 0,"Network not initialized!"); - CHECK(network.layer_number >= layer,"Layer exceeds available layer size: %d",layer,network.layer_number) - CHECK(network.layers[layer]->height > row,"Row %d exceeds matrix dimension %d",row,network.layers[layer]->height); - CHECK(network.layers[layer]->width > col,"Col %d exceeds matrix dimension %d",col,network.layers[layer]->width); - CHECK(network.layers[layer]->in_channel_number > channel,"Channel %d exceeds matrix dimension %d",channel,network.layers[layer]->in_channel_number); - debug("Parameter are valid"); - - // Activate debug mode - CHECK(activate_debug_mode(layer),"Error entering debug mode in layer: %d",layer); - - uint32_t addr = (uint32_t) row * (uint32_t) network.layers[layer]->width + (uint32_t) col; - debug("Start address %d is selected.",addr); - - CHECK(egg_update_memctrl_addr(layer)==EGG_ERROR_NONE,"Error writing %d to memory controller address register",layer); - debug("Memory controller address updated successfully. Layer %d selected.",layer); - - egg_update_channel_select(channel); - CHECK(egg_update_bram_addr(addr)==EGG_ERROR_NONE,"Error updating BRAM address"); - uint32_t element; - egg_read_bram_element(&element,channel); - debug("Address %x: /t %d",addr+i,element); - if (pixel == NULL) - { - debug("Allocate pixel element"); - pixel = calloc (1, sizeof (pixel_t)); - *pixel = (pixel_t) element; - } - else - { - *pixel = (pixel_t) element; - } - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} - -/** - * reads a single row from the network - * @param neural network structure - * @param layer Selected Layer - * @param row selected row of the Matrix - * @param channel Selected channel - * @return Error code - */ -egg_error_t read_row(const pixel_t **pixel, uint8_t layer, uint16_t row, uint8_t channel) -{ - //Check if parameter are valid - CHECK(network.layer_number > 0,"Network not initialized!"); - CHECK(network.layer_number >= layer,"Layer exceeds available layer size: %d",layer,network.layer_number) - CHECK(network.layers[layer]->height > row,"Row %d exceeds matrix dimension %d",row,network.layers[layer]->height); - CHECK(network.layers[layer]->in_channel_number > channel,"Channel %d exceeds matrix dimension %d",channel,network.layers[layer]->in_channel_number); - debug("Parameter are valid"); - - // Activate debug mode - CHECK(activate_debug_mode(layer),"Error entering debug mode in layer: %d",layer); - - // Update memory controller address --> selects a layer - CHECK(egg_update_memctrl_addr(layer)==EGG_ERROR_NONE,"Error writing %d to memory controller address register",layer); - debug("Memory controller address updated successfully. Layer %d selected.",layer); - - // Update selected channel number - egg_update_channel_select(channel); - - // Calculate BRAM start address from row - uint32_t addr = (uint32_t) row * (uint32_t) network.layers[layer]->width; - uint32_t element=0; - pixel_t *pix_row; - debug("Start address %d is selected.",addr); - // Allocate row array - pix_row = calloc (network.layers[layer]->width, sizeof (pixel_t)); - CHECK(pix_row==NULL,"Error allocating row array"); - debug("Pixel array with size %d is allocated successfully.",network.layers[layer]->width); - - // Read row from hardware - for (uint32_t i=0; i < network.layers[layer]->width;i++) - { - CHECK(egg_update_bram_addr(addr+i)==EGG_ERROR_NONE,"Error updating BRAM address"); - // channel is used to select correct pixel of 32 bit vector - egg_read_bram_element(&element,channel); - debug("Address %x: /t %d",addr+i,element); - pix_row[i] = (pixel_t) element; - } - *pixel = pix_row; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} -/** - * reads content of a single channel of specific layer - * @param pointer to pixel array - * @param layer Selected Layer - * @param row selected row of the Matrix - * @param channel Selected channel - * @return Error code - */ -egg_error_t read_channel(const pixel_t **pixel, uint8_t layer, uint8_t channel) -{ - //Check if parameter are valid - CHECK(network.layer_number > 0,"Network not initialized!"); - CHECK(network.layer_number >= layer,"Layer exceeds available layer size: %d",layer,network.layer_number) - CHECK(network.layers[layer]->in_channel_number > channel,"Channel %d exceeds matrix dimension %d",channel,network.layers[layer]->in_channel_number); - debug("Parameter are valid"); - - // Activate debug mode - CHECK(activate_debug_mode(layer),"Error entering debug mode in layer: %d",layer); - - // Update memory controller address --> selects a layer - CHECK(egg_update_memctrl_addr(layer)==EGG_ERROR_NONE,"Error writing %d to memory controller address register",layer); - debug("Memory controller address updated successfully. Layer %d selected.",layer); - - // Update selected channel number - egg_update_channel_select(channel); - - // Calculate BRAM start address from row - uint32_t addr = 0; - uint32_t element=0; - pixel_t *pix_ch; - - // Allocate channel array - pix_ch = calloc (network.layers[layer]->width*network.layers[layer]->height, sizeof (pixel_t)); - CHECK(pix_ch==NULL,"Error allocating channel array"); - - // Read channel from hardware - for (uint32_t i=0; i < network.layers[layer]->width*network.layers[layer]->height;i++) - { - CHECK(egg_update_bram_addr(addr+i)==EGG_ERROR_NONE,"Error updating BRAM address"); - // channel is used to select correct pixel of 32 bit vector - egg_read_bram_element(&element,channel); - debug("Address %x: /t %d",addr+i,element); - pix_ch[i] = (pixel_t) element; - } - *pixel = pix_ch; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} - -/** - * reads content of a layer - * @param point to pointer to pixel array [with*height] --> reshape to matrix [W,H] necessary. Shape: One row after the other - * @param layer Selected Layer - * @return Error code - */ -egg_error_t read_layer(const pixel_t ***pixel, uint8_t layer) -{ - //Check if parameter are valid - CHECK(network.layer_number > 0,"Network not initialized!"); - CHECK(network.layer_number >= layer,"Layer exceeds available layer size: %d",layer,network.layer_number) - debug("Parameter are valid"); - - // Activate debug mode - CHECK(activate_debug_mode(layer),"Error entering debug mode in layer: %d",layer); - - // Update memory controller address --> selects a layer - CHECK(egg_update_memctrl_addr(layer)==EGG_ERROR_NONE,"Error writing %d to memory controller address register",layer); - debug("Memory controller address updated successfully. Layer %d selected.",layer); - - // Update selected channel number - egg_update_channel_select(channel); - - // Calculate BRAM start address from row - uint32_t addr = 0; - uint32_t element=0; - uint32_t value = 0; - pixel_t *pix_ch; - pixel_t **pix_la; - uint32_t ch_cnt = 0; - int pixels_per_vector = 32/DATA_WIDTH; // 4 for uint8 - int channel = 0; - - - // Allocate channel pointer array - pix_la = calloc (network.layers[layer]->in_channel_number, sizeof (pixel_t *)); - CHECK(pix_la==NULL,"Error allocating channel pointer array"); - - for (uint32_t j=0;jin_channel_number;j++) - { - // Allocate row array - *pix_ch = calloc (network.layers[layer]->width*network.layers[layer]->height, sizeof (pixel_t)); - CHECK(pix_ch==NULL,"Error allocating channel array"); - pix_la[j] = pix_ch; - } - - // Read from hardware --> different to others since the whole 32 bit vector is used - ch_cnt = 0; - for (uint32_t j=0;jin_channel_number/pixels_per_vector;j++) - { - - // Update selected 32_bit_select value --> eg. number of 4 channels - *(uio.ptr_to_mmap_addr+EGG_WR_32BIT_SEL_OFS) = j; //have to be done before updating bram address, since bram address is used to check if hardware received the new values from the processor - - for (uint32_t i=0; i < network.layers[layer]->width*network.layers[layer]->height;i++) - { - CHECK(egg_update_bram_addr(addr+i)==EGG_ERROR_NONE,"Error updating BRAM address"); // update bram address, have to be done after channel update --> see above - - value = *(uio.ptr_to_mmap_addr + EGG_RD_BRAM_DATA_OFS); // read from hardware - - //split the 32 bit vector to single pixels for each channel - for (int k = 0; k> k*DATA_WIDTH); - debug("Address %x: /t %d saved to channel %d",addr+i,pix_la[channel][i],channel); - } - } - - } - *pixel = pix_la; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} - - diff --git a/vivado/Software/eggnet/eggnet.h b/vivado/Software/eggnet/eggnet.h deleted file mode 100644 index c9022d7e..00000000 --- a/vivado/Software/eggnet/eggnet.h +++ /dev/null @@ -1,167 +0,0 @@ -/* - * EggNet TOP library --> Functions mapped to Python - * - * Copyright (C) 2020 Lukas Baischer - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#ifndef EGGNET_H -#define EGGNET_H - -#ifdef __cplusplus -#define extern "C" { -#endif - -#include -#include -#include "eggnet_core.h" - -typedef uint8_t byte_t; -#define DATA_WIDTH 8 -#define OUTPUT_NUMBER 10 - - -/** - * Initializes the network. Searches for the corresponding UIO device, loads and initializes the dma proxy driver - * @return Error code - */ -egg_error_t egg_init_network(const char *ip_name, network_t *net); - -/** - * Close network and free memory mapped address space - * @return Error code - */ -egg_error_t egg_close_network(); - -/** - * - * @param image_buffer - * @param batch - * @param height - * @param width - * @param channels - * @param results - * @return error code - */ - -/** - * @brief Executes the EggNet in forward (inference) mode - * - * @param image_buffer A pointer to memory image buffer - * @param batch number of batches - * @param height image height, 28 for MNIST - * @param width image width, 28 for MNIST - * @param channels image channels, which is 1 for grayscale (like MNIST) or 3 for RGB - * @param [out]results a pointer to buffer-ptr where to store the results, must be [batch x 10] - * @param [out] batch_out pointer to output value - * @param [out]n - * @return egg_error_t - */ -egg_error_t egg_forward(const uint8_t *image_buffer, int batch, int height, int width, int channels, - int **results, int *batch_out, int *n); - - -/********************************************************************************************************************** - * - * Status Functions - * - *********************************************************************************************************************/ -/** - * Returns an string description of the error - */ -const char *egg_print_err(egg_error_t code); - -/** - * Reads network structure from hardware - * @param net_ptr Pointer to Network structure. Used as call by reference return value. - */ -egg_error_t get_network_structure(network_t *net_ptr); - -/** - * Print Network structure - * @return Error code - */ -egg_error_t print_network(); - -/** - * Reaads overall status from hardware - */ - -/********************************************************************************************************************** - * - * Debugging Functions - * - *********************************************************************************************************************/ - -/** - * Activate debug mode. Computation of each layer a completed before debug mode in entered - * @return Error code - */ -egg_error_t activate_debug_mode(); - -/** - * reads a single pixel from the network - * @param ointer to pixel - * @param layer Selected Layer - * @param row selected row of the Matrix - * @param col selected collum of the Matrix - * @param channel Selected channel - * @return Error code - */ -egg_error_t read_pixel(const pixel_t *pixel, uint8_t layer, uint16_t row, uint16_t col, uint8_t channel); - -/** - * reads a single row from the network - * @param ointer to pixel array - * @param layer Selected Layer - * @param row selected row of the Matrix - * @param channel Selected channel - * @return Error code - */ -egg_error_t read_row(const pixel_t **pixel, uint8_t layer, uint16_t row, uint8_t channel); - -/** - * reads content of a single channel of specific layer - * @param pointer to pixel array [with*height] --> reshape to matrix [W,H] necessary. Shape: One row after the other - * @param layer Selected Layer - * @param channel Selected channel - * @return Error code - */ -egg_error_t read_channel(const pixel_t **pixel, uint8_t layer, uint8_t channel); - -/** - * reads content of a layer - * @param point to pointer to pixel array [with*height] --> reshape to matrix [W,H] necessary. Shape: One row after the other - * @param layer Selected Layer - * @return Error code - */ -egg_error_t read_layer(const pixel_t ***pixel, uint8_t layer); - - -//Not implemented in hardware yet --> Not really useful -//egg_error_t egg_debug_memwrite(const void *src_start_address, size_t byte_len, void *dst); - -/* Add later if there is time -egg_error_t egg_debug_conv(); -egg_error_t egg_debug_mul(); -egg_error_t egg_debug_conv(); -egg_error_t egg_conv(); -*/ - -#ifdef __cplusplus -} -#endif - -#endif // EGGNET_H diff --git a/vivado/Software/eggnet/eggnet.i b/vivado/Software/eggnet/eggnet.i deleted file mode 100644 index ebc21cb0..00000000 --- a/vivado/Software/eggnet/eggnet.i +++ /dev/null @@ -1,122 +0,0 @@ -/** - * @file eggnet.i - * - * @author Benjamin Kulnik - * @brief An SWIG Interface file for the EGG API - * @version 0.1 - * @date 2020-01-10 - * - * @copyright Copyright (c) The Egg Coders 2020 - * - */ - - -/* Defines the name of the (python) module */ -%module EggNetDriverCore - - -// For Python 2 compatibiltiy -%pythonbegin %{ - from __future__ import absolute_import, print -%} - - - -%{ - #define SWIG_FILE_WITH_INIT // This has to be declared so the %init block gets called - #include "eggnet.h" - #include - #include -%} - -/* -* Include to support proprietary conventions from windows -* See: http://www.swig.org/Doc1.3/Windows.html -*/ -// %include "windows.i" - -/* Include to use datatypes like int32_t */ -%include "stdint.i" - -/* Include typemaps */ -%include "typemaps.i" - -/* Include exception handling */ -%include "exception.i" - -/* Include support for numpy */ -%include "numpy.i" - -%init %{ -// Import Numpy Arrays -import_array(); -%} - - - - -// ---------------------------- Numpy Typemaps -------------------------------- -// -// This remaps the C convention for arrays (parameter pointer + dims) to a single -// parameter in python (a numpy array) -// -// Examples: https://docs.scipy.org/doc/numpy-1.13.0/reference/swig.interface-file.html - - -// this transforms an the following C parameters to a single numpy array parameter in python. -%apply (uint8_t *IN_ARRAY4, int DIM1, int DIM2, int DIM3, int DIM4) { - (const uint8_t *image_buffer, int batch, int in_h, int in_w, int in_ch), - (const uint8_t *image_buffer, int batch, int height, int width, int channels), - (const float *kernel, int fh, int fw, int kin_ch, int kout_ch) -}; - -// this transforms an the following C parameters to a single numpy array RETURN parameter in python. -// memory has to be allocated manually but will be freed from Numpy/Python automatically -%apply (uint8_t** ARGOUTVIEW_ARRAY4, int *DIM1, int *DIM2, int *DIM3, int *DIM4) { - (uint8_t **data_out, int *batch_out, int *out_h, int *out_w, int *out_ch) -}; - -%apply (int** ARGOUTVIEW_ARRAY2, int *DIM1, int *DIM2) { - (int **results, int *batch_out, int *n) -}; - -// Inplace array typemaps -// %apply (float *INPLACE_ARRAY1, int DIM1) { -// (float *x, int d1) }; -// %apply (float *INPLACE_ARRAY2, int DIM1, int DIM2) { -// (float *x, int d1, int d2) }; -// %apply (float *INPLACE_ARRAY3, int DIM1, int DIM2, int DIM3) { -// (float *x, int d1, int d2, int d3) }; -// %apply (float *INPLACE_ARRAY4, int DIM1, int DIM2, int DIM3, int DIM4) { -// (float *x, int d1, int d2, int d3, int d4) }; - - -// ------------------------------------ Error Handling ---------------------------------------- -// -// Automatically throw a python exception if the return value is not zero -// and print an error message. -// -// See -// https://stackoverflow.com/questions/25650761/swig-how-to-typemap-the-return-value-based-on-the-original-return-value - - -%typemap(ret) egg_error_t %{ - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if($1 != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err($1)); - } - $result = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. -%} - - -// Remove leading egg_ prefixes -%rename("%(strip:[egg_])s") ""; - -// ------------------------------------ Wrapping ---------------------------------------- -// Wrap everything declared in this header -// Alternativly all functions could here be specified manually -%include "eggnet.h" - - diff --git a/vivado/Software/eggnet/eggnet_core.h b/vivado/Software/eggnet/eggnet_core.h deleted file mode 100644 index f41d046c..00000000 --- a/vivado/Software/eggnet/eggnet_core.h +++ /dev/null @@ -1,253 +0,0 @@ -/* - * eggnet_core.h - * - * Created on: 18 Feb 2020 - * Author: lukas - */ - -#ifndef SRC_EGGNET_CORE_H_ -#define SRC_EGGNET_CORE_H_ - - -#ifdef __cplusplus -#define extern \ - "C" \ - { -#endif - -#include -#include -#include "libuio_internal.h" -#include "libuio.h" - -#define EGG_RD_STATUS_OFS 0x00000000 // EggNet Status register address offset -#define EGG_RD_MEM_CTRL_ADDR_MASK 0x0000FF00 // EggNet Memory controller address mask -#define EGG_RD_MEM_CTRL_ADDR_SHIFT 8 // EggNet Memory controller address shift number -#define EGG_RD_TYPE_MASK 0x000000E0 // EggNet Layer Type Mask (7 downto 0) -#define EGG_RD_TYPE_SHIFT 5 -#define EGG_RD_DBG_ERROR_MASK 0x00010000 // EggNet Debug error flag mask -#define EGG_RD_DBG_ERROR_SHIFT 16 -#define EGG_RD_DBG_ACTIVE_MASK 0x00020000 // EggNet Debug error flag mask -#define EGG_RD_DBG_ACTIVE_SHIFT 17 -#define EGG_RD_LAYER_PROP_OFS \ - 0x0000000C / 4 // EggNet Layer properties offset: (11 downto 0) => LAYER_WIDTH | (23 downto 12) => LAYER_HIGHT | (31 downto 24) => IN_CHANNEL_NUMBER -#define EGG_RD_LAYER_WIDTH_MASK 0x00000FFF // EggNet Layer width mask -#define EGG_RD_LAYER_WIDTH_SHIFT 0 // EggNet Layer width shift number -#define EGG_RD_LAYER_HIGTH_MASK 0x00FFF000 // EggNet Layer width mask -#define EGG_RD_LAYER_HIGTH_SHIFT 12 // EggNet Layer width shift number -#define EGG_RD_LAYER_CH_NR_MASK 0xFF000000 // EggNet Layer input channel number mask -#define EGG_RD_LAYER_CH_NR_SHIFT 24 // EggNet Layer input channel number shift number -#define EGG_RD_LAYER_NR_MASK 0x000000FF // EggNet Layer number mask -#define EGG_RD_BRAM_ADDR_OFS \ - 0x00000004 / 4 // EggNet BRAM ADDR of the actual data value. Used for synchronization. -#define EGG_RD_BRAM_DATA_OFS 0x00000008 / 4 // EggNet BRAM Data read offset - - -#define EGG_WR_MEM_CTRL_ADDR_OFS 0x00000000 // EggNet Memory controller address offset -#define EGG_WR_DBG_ENABLE_OFS 0x00000008 // EggNet Debug enable offset -#define EGG_WR_BRAM_ADDR_OFS 0x00000004 / 4 // EggNet Memory controller address offset -#define EGG_WR_32BIT_SEL_OFS 0x000000012 / 4 // EggNet -// Offsets divided by 4 because the values are added to a pointer - -#define TIMEOUT 1000 // Timeout till the communication is terminated - -#define MAX_LAYER_NUMBER 15 -#define MAX_ELEMENT_SIZE 8 - -typedef uint8_t pixel_t; - -typedef enum egg_error_e { - EGG_ERROR_NONE = 0, /// No Error - EGG_ERROR_NULL_PTR, /// NULL Pointer Error - EGG_ERROR_DEVICE_COMMUNICATION_FAILED, - EGG_ERROR_INIT_FAILDED, - EGG_ERROR_UDEF -} egg_error_t; - -struct uio_singleton_t { - int number; - struct uio_info_t* info; - volatile uint32_t* ptr_to_mmap_addr; -}; - -typedef enum layer_types { // Only Dense and Conv3x3 are already implemented yet - Dense = 0, - Conv1x1, - Conv3x3, - Conv5x5, - Average_pooling -} layer_type_t; // can be extended up to 8 different layer types (Depends of status register of MemCtrl) - -typedef struct layer_s { - layer_type_t layer_type; - uint16_t height; // 1 for dense layer - uint16_t width; - uint8_t in_channel_number; // 1 for dense layer -} layer_t; - -typedef struct network_s { - uint8_t layer_number; - layer_t** layers; - pixel_t** results; - volatile uint32_t result_number; - uint8_t debug_active; - uint8_t selected_layer; // 0 = No channel selected -> overall status -} network_t; - -struct uio_singleton_t uio = { .number = 0, .info = NULL, .ptr_to_mmap_addr = NULL }; -network_t network = { .layer_number = 0, .layers = NULL, .debug_active = 0, .selected_layer = 0 }; - - -/********************************************************************************************************************** - * - * DMA Functions - * - *********************************************************************************************************************/ - -/** - * Initialises the kernel module for dma-proxy extension - * @return Error code - */ -egg_error_t egg_init_dma(); - - -/** - * Closes dma-proxy dev driver - * @return Error code - */ -egg_error_t egg_close_dma(); - -egg_error_t egg_send_single_image_sync(uint8_t* image_buffer); - -egg_error_t egg_send_single_image_async(uint8_t* image_buffer, int batch_size, pthread_t tid); - -void* egg_tx_thread(void *args); - -void* egg_tx_callback(void* args); - -/********************************************************************************************************************** - * - * Status Functions - * - *********************************************************************************************************************/ - -/** - * Searches for Network IP name in available UIO devices and initializes the UIO device - * @param ip_name Name of the EggNet IP in Vivado --> see device tree --> use lsuio to get available uio device names - * @return Error code - */ -egg_error_t egg_init_uio(char* ip_name); - - -/** - * Closes uio device driver - * @return Error code - */ -egg_error_t egg_close_uio(); - -/** - * Reads layer number from hardware - * @param layer_number Layer number - * @return Error code - */ -egg_error_t egg_get_layer_number(uint8_t* layer_number); - -/** - * Writes memmory controller address to AXI lite bus register - * @param addr Address of the memory controller ie. Layer number - * @return Error code - */ -egg_error_t egg_update_memctrl_addr(uint8_t addr); - - -/** - * Reads with of the Layer - * @param width Width of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_width(uint16_t* width); - -/** - * Reads height of the Layer - * @param height Height of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_height(uint16_t* height); - -/** - * Reads Channel number of the Layer - * @param channel_nb Channel number of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_channel_nb(uint8_t* channel_nb); - -/** - * Reads Type of the Layer - * @param type Typer of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_type(layer_type_t* type); - -/** - * Reads layer structure info from memory controller - * @param nb Layer number - * @param layer_type Type of the Layer (eg. Dense, Conv_3x3, ...) - * @param width Width of the Layer Matrix - * @param height Heigth of the Layer Matrix - * @param channel_number Number of input channels of the Layer - * @return Error code - */ -egg_error_t egg_get_layer_info(uint8_t nb, layer_type_t* type, uint16_t* width, uint16_t* height, uint8_t* channel_number); - -/** - * Get Type as string - * @param type Enumerator of Layer type - * @return Error code - */ -const char *get_type_string(layer_type_t type); - -/** - * Free network - * @param net Pointer to global network structure - * @return Error code - */ -egg_error_t egg_free_network(network_t* net); - - -/********************************************************************************************************************** - * - * Debugging Functions - * - *********************************************************************************************************************/ -/** - * Writes bram address to AXI lite bus register - * @param addr BRAM address - * @return Error code - */ -egg_error_t egg_update_bram_addr(uint32_t addr); - -/** - * Updates 32bit_select register - * @param addr BRAM address - * @return Error code - */ -egg_error_t egg_update_channel_select(uint8_t channel); - -/** - * Reads single element from BRAM - * @return Error code - */ -egg_error_t egg_read_bram_element(uint32_t* element, uint8_t channel); - -/** - * Checks status register if debug error flag = 1 - * @return Error code - */ -egg_error_t egg_check_dbg_status(); - - -#ifdef __cplusplus -} -#endif - -#endif /* SRC_EGGNET_CORE_H_ */ diff --git a/vivado/Software/eggnet/eggnet_wrap.c b/vivado/Software/eggnet/eggnet_wrap.c deleted file mode 100644 index e075d972..00000000 --- a/vivado/Software/eggnet/eggnet_wrap.c +++ /dev/null @@ -1,4837 +0,0 @@ -/* ---------------------------------------------------------------------------- - * This file was automatically generated by SWIG (http://www.swig.org). - * Version 4.0.1 - * - * This file is not intended to be easily readable and contains a number of - * coding conventions designed to improve portability and efficiency. Do not make - * changes to this file unless you know what you are doing--modify the SWIG - * interface file instead. - * ----------------------------------------------------------------------------- */ - - -#ifndef SWIGPYTHON -#define SWIGPYTHON -#endif - -#define SWIG_PYTHON_DIRECTOR_NO_VTABLE - -/* ----------------------------------------------------------------------------- - * This section contains generic SWIG labels for method/variable - * declarations/attributes, and other compiler dependent labels. - * ----------------------------------------------------------------------------- */ - -/* template workaround for compilers that cannot correctly implement the C++ standard */ -#ifndef SWIGTEMPLATEDISAMBIGUATOR -# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560) -# define SWIGTEMPLATEDISAMBIGUATOR template -# elif defined(__HP_aCC) -/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */ -/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */ -# define SWIGTEMPLATEDISAMBIGUATOR template -# else -# define SWIGTEMPLATEDISAMBIGUATOR -# endif -#endif - -/* inline attribute */ -#ifndef SWIGINLINE -# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) -# define SWIGINLINE inline -# else -# define SWIGINLINE -# endif -#endif - -/* attribute recognised by some compilers to avoid 'unused' warnings */ -#ifndef SWIGUNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define SWIGUNUSED __attribute__ ((__unused__)) -# else -# define SWIGUNUSED -# endif -# elif defined(__ICC) -# define SWIGUNUSED __attribute__ ((__unused__)) -# else -# define SWIGUNUSED -# endif -#endif - -#ifndef SWIG_MSC_UNSUPPRESS_4505 -# if defined(_MSC_VER) -# pragma warning(disable : 4505) /* unreferenced local function has been removed */ -# endif -#endif - -#ifndef SWIGUNUSEDPARM -# ifdef __cplusplus -# define SWIGUNUSEDPARM(p) -# else -# define SWIGUNUSEDPARM(p) p SWIGUNUSED -# endif -#endif - -/* internal SWIG method */ -#ifndef SWIGINTERN -# define SWIGINTERN static SWIGUNUSED -#endif - -/* internal inline SWIG method */ -#ifndef SWIGINTERNINLINE -# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE -#endif - -/* exporting methods */ -#if defined(__GNUC__) -# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) -# ifndef GCC_HASCLASSVISIBILITY -# define GCC_HASCLASSVISIBILITY -# endif -# endif -#endif - -#ifndef SWIGEXPORT -# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) -# if defined(STATIC_LINKED) -# define SWIGEXPORT -# else -# define SWIGEXPORT __declspec(dllexport) -# endif -# else -# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) -# define SWIGEXPORT __attribute__ ((visibility("default"))) -# else -# define SWIGEXPORT -# endif -# endif -#endif - -/* calling conventions for Windows */ -#ifndef SWIGSTDCALL -# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) -# define SWIGSTDCALL __stdcall -# else -# define SWIGSTDCALL -# endif -#endif - -/* Deal with Microsoft's attempt at deprecating C standard runtime functions */ -#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE) -# define _CRT_SECURE_NO_DEPRECATE -#endif - -/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */ -#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE) -# define _SCL_SECURE_NO_DEPRECATE -#endif - -/* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */ -#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES) -# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0 -#endif - -/* Intel's compiler complains if a variable which was never initialised is - * cast to void, which is a common idiom which we use to indicate that we - * are aware a variable isn't used. So we just silence that warning. - * See: https://github.com/swig/swig/issues/192 for more discussion. - */ -#ifdef __INTEL_COMPILER -# pragma warning disable 592 -#endif - - -#if defined(__GNUC__) && defined(_WIN32) && !defined(SWIG_PYTHON_NO_HYPOT_WORKAROUND) -/* Workaround for '::hypot' has not been declared', see https://bugs.python.org/issue11566 */ -# include -#endif - -#if defined(_DEBUG) && defined(SWIG_PYTHON_INTERPRETER_NO_DEBUG) -/* Use debug wrappers with the Python release dll */ -# undef _DEBUG -# include -# define _DEBUG 1 -#else -# include -#endif - -/* ----------------------------------------------------------------------------- - * swigrun.swg - * - * This file contains generic C API SWIG runtime support for pointer - * type checking. - * ----------------------------------------------------------------------------- */ - -/* This should only be incremented when either the layout of swig_type_info changes, - or for whatever reason, the runtime changes incompatibly */ -#define SWIG_RUNTIME_VERSION "4" - -/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */ -#ifdef SWIG_TYPE_TABLE -# define SWIG_QUOTE_STRING(x) #x -# define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x) -# define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE) -#else -# define SWIG_TYPE_TABLE_NAME -#endif - -/* - You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for - creating a static or dynamic library from the SWIG runtime code. - In 99.9% of the cases, SWIG just needs to declare them as 'static'. - - But only do this if strictly necessary, ie, if you have problems - with your compiler or suchlike. -*/ - -#ifndef SWIGRUNTIME -# define SWIGRUNTIME SWIGINTERN -#endif - -#ifndef SWIGRUNTIMEINLINE -# define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE -#endif - -/* Generic buffer size */ -#ifndef SWIG_BUFFER_SIZE -# define SWIG_BUFFER_SIZE 1024 -#endif - -/* Flags for pointer conversions */ -#define SWIG_POINTER_DISOWN 0x1 -#define SWIG_CAST_NEW_MEMORY 0x2 -#define SWIG_POINTER_NO_NULL 0x4 - -/* Flags for new pointer objects */ -#define SWIG_POINTER_OWN 0x1 - - -/* - Flags/methods for returning states. - - The SWIG conversion methods, as ConvertPtr, return an integer - that tells if the conversion was successful or not. And if not, - an error code can be returned (see swigerrors.swg for the codes). - - Use the following macros/flags to set or process the returning - states. - - In old versions of SWIG, code such as the following was usually written: - - if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) { - // success code - } else { - //fail code - } - - Now you can be more explicit: - - int res = SWIG_ConvertPtr(obj,vptr,ty.flags); - if (SWIG_IsOK(res)) { - // success code - } else { - // fail code - } - - which is the same really, but now you can also do - - Type *ptr; - int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags); - if (SWIG_IsOK(res)) { - // success code - if (SWIG_IsNewObj(res) { - ... - delete *ptr; - } else { - ... - } - } else { - // fail code - } - - I.e., now SWIG_ConvertPtr can return new objects and you can - identify the case and take care of the deallocation. Of course that - also requires SWIG_ConvertPtr to return new result values, such as - - int SWIG_ConvertPtr(obj, ptr,...) { - if () { - if () { - *ptr = ; - return SWIG_NEWOBJ; - } else { - *ptr = ; - return SWIG_OLDOBJ; - } - } else { - return SWIG_BADOBJ; - } - } - - Of course, returning the plain '0(success)/-1(fail)' still works, but you can be - more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the - SWIG errors code. - - Finally, if the SWIG_CASTRANK_MODE is enabled, the result code - allows to return the 'cast rank', for example, if you have this - - int food(double) - int fooi(int); - - and you call - - food(1) // cast rank '1' (1 -> 1.0) - fooi(1) // cast rank '0' - - just use the SWIG_AddCast()/SWIG_CheckState() -*/ - -#define SWIG_OK (0) -#define SWIG_ERROR (-1) -#define SWIG_IsOK(r) (r >= 0) -#define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError) - -/* The CastRankLimit says how many bits are used for the cast rank */ -#define SWIG_CASTRANKLIMIT (1 << 8) -/* The NewMask denotes the object was created (using new/malloc) */ -#define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1) -/* The TmpMask is for in/out typemaps that use temporal objects */ -#define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1) -/* Simple returning values */ -#define SWIG_BADOBJ (SWIG_ERROR) -#define SWIG_OLDOBJ (SWIG_OK) -#define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK) -#define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK) -/* Check, add and del mask methods */ -#define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r) -#define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r) -#define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK)) -#define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r) -#define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r) -#define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK)) - -/* Cast-Rank Mode */ -#if defined(SWIG_CASTRANK_MODE) -# ifndef SWIG_TypeRank -# define SWIG_TypeRank unsigned long -# endif -# ifndef SWIG_MAXCASTRANK /* Default cast allowed */ -# define SWIG_MAXCASTRANK (2) -# endif -# define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1) -# define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK) -SWIGINTERNINLINE int SWIG_AddCast(int r) { - return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r; -} -SWIGINTERNINLINE int SWIG_CheckState(int r) { - return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0; -} -#else /* no cast-rank mode */ -# define SWIG_AddCast(r) (r) -# define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0) -#endif - - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef void *(*swig_converter_func)(void *, int *); -typedef struct swig_type_info *(*swig_dycast_func)(void **); - -/* Structure to store information on one type */ -typedef struct swig_type_info { - const char *name; /* mangled name of this type */ - const char *str; /* human readable name of this type */ - swig_dycast_func dcast; /* dynamic cast function down a hierarchy */ - struct swig_cast_info *cast; /* linked list of types that can cast into this type */ - void *clientdata; /* language specific type data */ - int owndata; /* flag if the structure owns the clientdata */ -} swig_type_info; - -/* Structure to store a type and conversion function used for casting */ -typedef struct swig_cast_info { - swig_type_info *type; /* pointer to type that is equivalent to this type */ - swig_converter_func converter; /* function to cast the void pointers */ - struct swig_cast_info *next; /* pointer to next cast in linked list */ - struct swig_cast_info *prev; /* pointer to the previous cast */ -} swig_cast_info; - -/* Structure used to store module information - * Each module generates one structure like this, and the runtime collects - * all of these structures and stores them in a circularly linked list.*/ -typedef struct swig_module_info { - swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */ - size_t size; /* Number of types in this module */ - struct swig_module_info *next; /* Pointer to next element in circularly linked list */ - swig_type_info **type_initial; /* Array of initially generated type structures */ - swig_cast_info **cast_initial; /* Array of initially generated casting structures */ - void *clientdata; /* Language specific module data */ -} swig_module_info; - -/* - Compare two type names skipping the space characters, therefore - "char*" == "char *" and "Class" == "Class", etc. - - Return 0 when the two name types are equivalent, as in - strncmp, but skipping ' '. -*/ -SWIGRUNTIME int -SWIG_TypeNameComp(const char *f1, const char *l1, - const char *f2, const char *l2) { - for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) { - while ((*f1 == ' ') && (f1 != l1)) ++f1; - while ((*f2 == ' ') && (f2 != l2)) ++f2; - if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1; - } - return (int)((l1 - f1) - (l2 - f2)); -} - -/* - Check type equivalence in a name list like ||... - Return 0 if equal, -1 if nb < tb, 1 if nb > tb -*/ -SWIGRUNTIME int -SWIG_TypeCmp(const char *nb, const char *tb) { - int equiv = 1; - const char* te = tb + strlen(tb); - const char* ne = nb; - while (equiv != 0 && *ne) { - for (nb = ne; *ne; ++ne) { - if (*ne == '|') break; - } - equiv = SWIG_TypeNameComp(nb, ne, tb, te); - if (*ne) ++ne; - } - return equiv; -} - -/* - Check type equivalence in a name list like ||... - Return 0 if not equal, 1 if equal -*/ -SWIGRUNTIME int -SWIG_TypeEquiv(const char *nb, const char *tb) { - return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0; -} - -/* - Check the typename -*/ -SWIGRUNTIME swig_cast_info * -SWIG_TypeCheck(const char *c, swig_type_info *ty) { - if (ty) { - swig_cast_info *iter = ty->cast; - while (iter) { - if (strcmp(iter->type->name, c) == 0) { - if (iter == ty->cast) - return iter; - /* Move iter to the top of the linked list */ - iter->prev->next = iter->next; - if (iter->next) - iter->next->prev = iter->prev; - iter->next = ty->cast; - iter->prev = 0; - if (ty->cast) ty->cast->prev = iter; - ty->cast = iter; - return iter; - } - iter = iter->next; - } - } - return 0; -} - -/* - Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison -*/ -SWIGRUNTIME swig_cast_info * -SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) { - if (ty) { - swig_cast_info *iter = ty->cast; - while (iter) { - if (iter->type == from) { - if (iter == ty->cast) - return iter; - /* Move iter to the top of the linked list */ - iter->prev->next = iter->next; - if (iter->next) - iter->next->prev = iter->prev; - iter->next = ty->cast; - iter->prev = 0; - if (ty->cast) ty->cast->prev = iter; - ty->cast = iter; - return iter; - } - iter = iter->next; - } - } - return 0; -} - -/* - Cast a pointer up an inheritance hierarchy -*/ -SWIGRUNTIMEINLINE void * -SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) { - return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory); -} - -/* - Dynamic pointer casting. Down an inheritance hierarchy -*/ -SWIGRUNTIME swig_type_info * -SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) { - swig_type_info *lastty = ty; - if (!ty || !ty->dcast) return ty; - while (ty && (ty->dcast)) { - ty = (*ty->dcast)(ptr); - if (ty) lastty = ty; - } - return lastty; -} - -/* - Return the name associated with this type -*/ -SWIGRUNTIMEINLINE const char * -SWIG_TypeName(const swig_type_info *ty) { - return ty->name; -} - -/* - Return the pretty name associated with this type, - that is an unmangled type name in a form presentable to the user. -*/ -SWIGRUNTIME const char * -SWIG_TypePrettyName(const swig_type_info *type) { - /* The "str" field contains the equivalent pretty names of the - type, separated by vertical-bar characters. We choose - to print the last name, as it is often (?) the most - specific. */ - if (!type) return NULL; - if (type->str != NULL) { - const char *last_name = type->str; - const char *s; - for (s = type->str; *s; s++) - if (*s == '|') last_name = s+1; - return last_name; - } - else - return type->name; -} - -/* - Set the clientdata field for a type -*/ -SWIGRUNTIME void -SWIG_TypeClientData(swig_type_info *ti, void *clientdata) { - swig_cast_info *cast = ti->cast; - /* if (ti->clientdata == clientdata) return; */ - ti->clientdata = clientdata; - - while (cast) { - if (!cast->converter) { - swig_type_info *tc = cast->type; - if (!tc->clientdata) { - SWIG_TypeClientData(tc, clientdata); - } - } - cast = cast->next; - } -} -SWIGRUNTIME void -SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) { - SWIG_TypeClientData(ti, clientdata); - ti->owndata = 1; -} - -/* - Search for a swig_type_info structure only by mangled name - Search is a O(log #types) - - We start searching at module start, and finish searching when start == end. - Note: if start == end at the beginning of the function, we go all the way around - the circular list. -*/ -SWIGRUNTIME swig_type_info * -SWIG_MangledTypeQueryModule(swig_module_info *start, - swig_module_info *end, - const char *name) { - swig_module_info *iter = start; - do { - if (iter->size) { - size_t l = 0; - size_t r = iter->size - 1; - do { - /* since l+r >= 0, we can (>> 1) instead (/ 2) */ - size_t i = (l + r) >> 1; - const char *iname = iter->types[i]->name; - if (iname) { - int compare = strcmp(name, iname); - if (compare == 0) { - return iter->types[i]; - } else if (compare < 0) { - if (i) { - r = i - 1; - } else { - break; - } - } else if (compare > 0) { - l = i + 1; - } - } else { - break; /* should never happen */ - } - } while (l <= r); - } - iter = iter->next; - } while (iter != end); - return 0; -} - -/* - Search for a swig_type_info structure for either a mangled name or a human readable name. - It first searches the mangled names of the types, which is a O(log #types) - If a type is not found it then searches the human readable names, which is O(#types). - - We start searching at module start, and finish searching when start == end. - Note: if start == end at the beginning of the function, we go all the way around - the circular list. -*/ -SWIGRUNTIME swig_type_info * -SWIG_TypeQueryModule(swig_module_info *start, - swig_module_info *end, - const char *name) { - /* STEP 1: Search the name field using binary search */ - swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name); - if (ret) { - return ret; - } else { - /* STEP 2: If the type hasn't been found, do a complete search - of the str field (the human readable name) */ - swig_module_info *iter = start; - do { - size_t i = 0; - for (; i < iter->size; ++i) { - if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name))) - return iter->types[i]; - } - iter = iter->next; - } while (iter != end); - } - - /* neither found a match */ - return 0; -} - -/* - Pack binary data into a string -*/ -SWIGRUNTIME char * -SWIG_PackData(char *c, void *ptr, size_t sz) { - static const char hex[17] = "0123456789abcdef"; - const unsigned char *u = (unsigned char *) ptr; - const unsigned char *eu = u + sz; - for (; u != eu; ++u) { - unsigned char uu = *u; - *(c++) = hex[(uu & 0xf0) >> 4]; - *(c++) = hex[uu & 0xf]; - } - return c; -} - -/* - Unpack binary data from a string -*/ -SWIGRUNTIME const char * -SWIG_UnpackData(const char *c, void *ptr, size_t sz) { - unsigned char *u = (unsigned char *) ptr; - const unsigned char *eu = u + sz; - for (; u != eu; ++u) { - char d = *(c++); - unsigned char uu; - if ((d >= '0') && (d <= '9')) - uu = (unsigned char)((d - '0') << 4); - else if ((d >= 'a') && (d <= 'f')) - uu = (unsigned char)((d - ('a'-10)) << 4); - else - return (char *) 0; - d = *(c++); - if ((d >= '0') && (d <= '9')) - uu |= (unsigned char)(d - '0'); - else if ((d >= 'a') && (d <= 'f')) - uu |= (unsigned char)(d - ('a'-10)); - else - return (char *) 0; - *u = uu; - } - return c; -} - -/* - Pack 'void *' into a string buffer. -*/ -SWIGRUNTIME char * -SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) { - char *r = buff; - if ((2*sizeof(void *) + 2) > bsz) return 0; - *(r++) = '_'; - r = SWIG_PackData(r,&ptr,sizeof(void *)); - if (strlen(name) + 1 > (bsz - (r - buff))) return 0; - strcpy(r,name); - return buff; -} - -SWIGRUNTIME const char * -SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) { - if (*c != '_') { - if (strcmp(c,"NULL") == 0) { - *ptr = (void *) 0; - return name; - } else { - return 0; - } - } - return SWIG_UnpackData(++c,ptr,sizeof(void *)); -} - -SWIGRUNTIME char * -SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) { - char *r = buff; - size_t lname = (name ? strlen(name) : 0); - if ((2*sz + 2 + lname) > bsz) return 0; - *(r++) = '_'; - r = SWIG_PackData(r,ptr,sz); - if (lname) { - strncpy(r,name,lname+1); - } else { - *r = 0; - } - return buff; -} - -SWIGRUNTIME const char * -SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) { - if (*c != '_') { - if (strcmp(c,"NULL") == 0) { - memset(ptr,0,sz); - return name; - } else { - return 0; - } - } - return SWIG_UnpackData(++c,ptr,sz); -} - -#ifdef __cplusplus -} -#endif - -/* Errors in SWIG */ -#define SWIG_UnknownError -1 -#define SWIG_IOError -2 -#define SWIG_RuntimeError -3 -#define SWIG_IndexError -4 -#define SWIG_TypeError -5 -#define SWIG_DivisionByZero -6 -#define SWIG_OverflowError -7 -#define SWIG_SyntaxError -8 -#define SWIG_ValueError -9 -#define SWIG_SystemError -10 -#define SWIG_AttributeError -11 -#define SWIG_MemoryError -12 -#define SWIG_NullReferenceError -13 - - - -/* Compatibility macros for Python 3 */ -#if PY_VERSION_HEX >= 0x03000000 - -#define PyClass_Check(obj) PyObject_IsInstance(obj, (PyObject *)&PyType_Type) -#define PyInt_Check(x) PyLong_Check(x) -#define PyInt_AsLong(x) PyLong_AsLong(x) -#define PyInt_FromLong(x) PyLong_FromLong(x) -#define PyInt_FromSize_t(x) PyLong_FromSize_t(x) -#define PyString_Check(name) PyBytes_Check(name) -#define PyString_FromString(x) PyUnicode_FromString(x) -#define PyString_Format(fmt, args) PyUnicode_Format(fmt, args) -#define PyString_AsString(str) PyBytes_AsString(str) -#define PyString_Size(str) PyBytes_Size(str) -#define PyString_InternFromString(key) PyUnicode_InternFromString(key) -#define Py_TPFLAGS_HAVE_CLASS Py_TPFLAGS_BASETYPE -#define PyString_AS_STRING(x) PyUnicode_AS_STRING(x) -#define _PyLong_FromSsize_t(x) PyLong_FromSsize_t(x) - -#endif - -#ifndef Py_TYPE -# define Py_TYPE(op) ((op)->ob_type) -#endif - -/* SWIG APIs for compatibility of both Python 2 & 3 */ - -#if PY_VERSION_HEX >= 0x03000000 -# define SWIG_Python_str_FromFormat PyUnicode_FromFormat -#else -# define SWIG_Python_str_FromFormat PyString_FromFormat -#endif - - -/* Warning: This function will allocate a new string in Python 3, - * so please call SWIG_Python_str_DelForPy3(x) to free the space. - */ -SWIGINTERN char* -SWIG_Python_str_AsChar(PyObject *str) -{ -#if PY_VERSION_HEX >= 0x03000000 - char *newstr = 0; - str = PyUnicode_AsUTF8String(str); - if (str) { - char *cstr; - Py_ssize_t len; - PyBytes_AsStringAndSize(str, &cstr, &len); - newstr = (char *) malloc(len+1); - memcpy(newstr, cstr, len+1); - Py_XDECREF(str); - } - return newstr; -#else - return PyString_AsString(str); -#endif -} - -#if PY_VERSION_HEX >= 0x03000000 -# define SWIG_Python_str_DelForPy3(x) free( (void*) (x) ) -#else -# define SWIG_Python_str_DelForPy3(x) -#endif - - -SWIGINTERN PyObject* -SWIG_Python_str_FromChar(const char *c) -{ -#if PY_VERSION_HEX >= 0x03000000 - return PyUnicode_FromString(c); -#else - return PyString_FromString(c); -#endif -} - -#ifndef PyObject_DEL -# define PyObject_DEL PyObject_Del -#endif - -// SWIGPY_USE_CAPSULE is no longer used within SWIG itself, but some user -// interface files check for it. -# define SWIGPY_USE_CAPSULE -# define SWIGPY_CAPSULE_NAME ("swig_runtime_data" SWIG_RUNTIME_VERSION ".type_pointer_capsule" SWIG_TYPE_TABLE_NAME) - -#if PY_VERSION_HEX < 0x03020000 -#define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type) -#define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name) -#define Py_hash_t long -#endif - -/* ----------------------------------------------------------------------------- - * error manipulation - * ----------------------------------------------------------------------------- */ - -SWIGRUNTIME PyObject* -SWIG_Python_ErrorType(int code) { - PyObject* type = 0; - switch(code) { - case SWIG_MemoryError: - type = PyExc_MemoryError; - break; - case SWIG_IOError: - type = PyExc_IOError; - break; - case SWIG_RuntimeError: - type = PyExc_RuntimeError; - break; - case SWIG_IndexError: - type = PyExc_IndexError; - break; - case SWIG_TypeError: - type = PyExc_TypeError; - break; - case SWIG_DivisionByZero: - type = PyExc_ZeroDivisionError; - break; - case SWIG_OverflowError: - type = PyExc_OverflowError; - break; - case SWIG_SyntaxError: - type = PyExc_SyntaxError; - break; - case SWIG_ValueError: - type = PyExc_ValueError; - break; - case SWIG_SystemError: - type = PyExc_SystemError; - break; - case SWIG_AttributeError: - type = PyExc_AttributeError; - break; - default: - type = PyExc_RuntimeError; - } - return type; -} - - -SWIGRUNTIME void -SWIG_Python_AddErrorMsg(const char* mesg) -{ - PyObject *type = 0; - PyObject *value = 0; - PyObject *traceback = 0; - - if (PyErr_Occurred()) - PyErr_Fetch(&type, &value, &traceback); - if (value) { - PyObject *old_str = PyObject_Str(value); - const char *tmp = SWIG_Python_str_AsChar(old_str); - PyErr_Clear(); - Py_XINCREF(type); - if (tmp) - PyErr_Format(type, "%s %s", tmp, mesg); - else - PyErr_Format(type, "%s", mesg); - SWIG_Python_str_DelForPy3(tmp); - Py_DECREF(old_str); - Py_DECREF(value); - } else { - PyErr_SetString(PyExc_RuntimeError, mesg); - } -} - -SWIGRUNTIME int -SWIG_Python_TypeErrorOccurred(PyObject *obj) -{ - PyObject *error; - if (obj) - return 0; - error = PyErr_Occurred(); - return error && PyErr_GivenExceptionMatches(error, PyExc_TypeError); -} - -SWIGRUNTIME void -SWIG_Python_RaiseOrModifyTypeError(const char *message) -{ - if (SWIG_Python_TypeErrorOccurred(NULL)) { - /* Use existing TypeError to preserve stacktrace and enhance with given message */ - PyObject *newvalue; - PyObject *type = NULL, *value = NULL, *traceback = NULL; - PyErr_Fetch(&type, &value, &traceback); -#if PY_VERSION_HEX >= 0x03000000 - newvalue = PyUnicode_FromFormat("%S\nAdditional information:\n%s", value, message); -#else - newvalue = PyString_FromFormat("%s\nAdditional information:\n%s", PyString_AsString(value), message); -#endif - Py_XDECREF(value); - PyErr_Restore(type, newvalue, traceback); - } else { - /* Raise TypeError using given message */ - PyErr_SetString(PyExc_TypeError, message); - } -} - -#if defined(SWIG_PYTHON_NO_THREADS) -# if defined(SWIG_PYTHON_THREADS) -# undef SWIG_PYTHON_THREADS -# endif -#endif -#if defined(SWIG_PYTHON_THREADS) /* Threading support is enabled */ -# if !defined(SWIG_PYTHON_USE_GIL) && !defined(SWIG_PYTHON_NO_USE_GIL) -# define SWIG_PYTHON_USE_GIL -# endif -# if defined(SWIG_PYTHON_USE_GIL) /* Use PyGILState threads calls */ -# ifndef SWIG_PYTHON_INITIALIZE_THREADS -# define SWIG_PYTHON_INITIALIZE_THREADS PyEval_InitThreads() -# endif -# ifdef __cplusplus /* C++ code */ - class SWIG_Python_Thread_Block { - bool status; - PyGILState_STATE state; - public: - void end() { if (status) { PyGILState_Release(state); status = false;} } - SWIG_Python_Thread_Block() : status(true), state(PyGILState_Ensure()) {} - ~SWIG_Python_Thread_Block() { end(); } - }; - class SWIG_Python_Thread_Allow { - bool status; - PyThreadState *save; - public: - void end() { if (status) { PyEval_RestoreThread(save); status = false; }} - SWIG_Python_Thread_Allow() : status(true), save(PyEval_SaveThread()) {} - ~SWIG_Python_Thread_Allow() { end(); } - }; -# define SWIG_PYTHON_THREAD_BEGIN_BLOCK SWIG_Python_Thread_Block _swig_thread_block -# define SWIG_PYTHON_THREAD_END_BLOCK _swig_thread_block.end() -# define SWIG_PYTHON_THREAD_BEGIN_ALLOW SWIG_Python_Thread_Allow _swig_thread_allow -# define SWIG_PYTHON_THREAD_END_ALLOW _swig_thread_allow.end() -# else /* C code */ -# define SWIG_PYTHON_THREAD_BEGIN_BLOCK PyGILState_STATE _swig_thread_block = PyGILState_Ensure() -# define SWIG_PYTHON_THREAD_END_BLOCK PyGILState_Release(_swig_thread_block) -# define SWIG_PYTHON_THREAD_BEGIN_ALLOW PyThreadState *_swig_thread_allow = PyEval_SaveThread() -# define SWIG_PYTHON_THREAD_END_ALLOW PyEval_RestoreThread(_swig_thread_allow) -# endif -# else /* Old thread way, not implemented, user must provide it */ -# if !defined(SWIG_PYTHON_INITIALIZE_THREADS) -# define SWIG_PYTHON_INITIALIZE_THREADS -# endif -# if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK) -# define SWIG_PYTHON_THREAD_BEGIN_BLOCK -# endif -# if !defined(SWIG_PYTHON_THREAD_END_BLOCK) -# define SWIG_PYTHON_THREAD_END_BLOCK -# endif -# if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW) -# define SWIG_PYTHON_THREAD_BEGIN_ALLOW -# endif -# if !defined(SWIG_PYTHON_THREAD_END_ALLOW) -# define SWIG_PYTHON_THREAD_END_ALLOW -# endif -# endif -#else /* No thread support */ -# define SWIG_PYTHON_INITIALIZE_THREADS -# define SWIG_PYTHON_THREAD_BEGIN_BLOCK -# define SWIG_PYTHON_THREAD_END_BLOCK -# define SWIG_PYTHON_THREAD_BEGIN_ALLOW -# define SWIG_PYTHON_THREAD_END_ALLOW -#endif - -/* ----------------------------------------------------------------------------- - * Python API portion that goes into the runtime - * ----------------------------------------------------------------------------- */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* ----------------------------------------------------------------------------- - * Constant declarations - * ----------------------------------------------------------------------------- */ - -/* Constant Types */ -#define SWIG_PY_POINTER 4 -#define SWIG_PY_BINARY 5 - -/* Constant information structure */ -typedef struct swig_const_info { - int type; - const char *name; - long lvalue; - double dvalue; - void *pvalue; - swig_type_info **ptype; -} swig_const_info; - -#ifdef __cplusplus -} -#endif - - -/* ----------------------------------------------------------------------------- - * pyrun.swg - * - * This file contains the runtime support for Python modules - * and includes code for managing global variables and pointer - * type checking. - * - * ----------------------------------------------------------------------------- */ - -#if PY_VERSION_HEX < 0x02070000 /* 2.7.0 */ -# error "This version of SWIG only supports Python >= 2.7" -#endif - -#if PY_VERSION_HEX >= 0x03000000 && PY_VERSION_HEX < 0x03020000 -# error "This version of SWIG only supports Python 3 >= 3.2" -#endif - -/* Common SWIG API */ - -/* for raw pointers */ -#define SWIG_Python_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, 0) -#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtr(obj, pptr, type, flags) -#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, own) - -#ifdef SWIGPYTHON_BUILTIN -#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(self, ptr, type, flags) -#else -#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags) -#endif - -#define SWIG_InternalNewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags) - -#define SWIG_CheckImplicit(ty) SWIG_Python_CheckImplicit(ty) -#define SWIG_AcquirePtr(ptr, src) SWIG_Python_AcquirePtr(ptr, src) -#define swig_owntype int - -/* for raw packed data */ -#define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty) -#define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type) - -/* for class or struct pointers */ -#define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags) -#define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags) - -/* for C or C++ function pointers */ -#define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_Python_ConvertFunctionPtr(obj, pptr, type) -#define SWIG_NewFunctionPtrObj(ptr, type) SWIG_Python_NewPointerObj(NULL, ptr, type, 0) - -/* for C++ member pointers, ie, member methods */ -#define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty) -#define SWIG_NewMemberObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type) - - -/* Runtime API */ - -#define SWIG_GetModule(clientdata) SWIG_Python_GetModule(clientdata) -#define SWIG_SetModule(clientdata, pointer) SWIG_Python_SetModule(pointer) -#define SWIG_NewClientData(obj) SwigPyClientData_New(obj) - -#define SWIG_SetErrorObj SWIG_Python_SetErrorObj -#define SWIG_SetErrorMsg SWIG_Python_SetErrorMsg -#define SWIG_ErrorType(code) SWIG_Python_ErrorType(code) -#define SWIG_Error(code, msg) SWIG_Python_SetErrorMsg(SWIG_ErrorType(code), msg) -#define SWIG_fail goto fail - - -/* Runtime API implementation */ - -/* Error manipulation */ - -SWIGINTERN void -SWIG_Python_SetErrorObj(PyObject *errtype, PyObject *obj) { - SWIG_PYTHON_THREAD_BEGIN_BLOCK; - PyErr_SetObject(errtype, obj); - Py_DECREF(obj); - SWIG_PYTHON_THREAD_END_BLOCK; -} - -SWIGINTERN void -SWIG_Python_SetErrorMsg(PyObject *errtype, const char *msg) { - SWIG_PYTHON_THREAD_BEGIN_BLOCK; - PyErr_SetString(errtype, msg); - SWIG_PYTHON_THREAD_END_BLOCK; -} - -#define SWIG_Python_Raise(obj, type, desc) SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj) - -/* Set a constant value */ - -#if defined(SWIGPYTHON_BUILTIN) - -SWIGINTERN void -SwigPyBuiltin_AddPublicSymbol(PyObject *seq, const char *key) { - PyObject *s = PyString_InternFromString(key); - PyList_Append(seq, s); - Py_DECREF(s); -} - -SWIGINTERN void -SWIG_Python_SetConstant(PyObject *d, PyObject *public_interface, const char *name, PyObject *obj) { - PyDict_SetItemString(d, name, obj); - Py_DECREF(obj); - if (public_interface) - SwigPyBuiltin_AddPublicSymbol(public_interface, name); -} - -#else - -SWIGINTERN void -SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj) { - PyDict_SetItemString(d, name, obj); - Py_DECREF(obj); -} - -#endif - -/* Append a value to the result obj */ - -SWIGINTERN PyObject* -SWIG_Python_AppendOutput(PyObject* result, PyObject* obj) { - if (!result) { - result = obj; - } else if (result == Py_None) { - Py_DECREF(result); - result = obj; - } else { - if (!PyList_Check(result)) { - PyObject *o2 = result; - result = PyList_New(1); - PyList_SetItem(result, 0, o2); - } - PyList_Append(result,obj); - Py_DECREF(obj); - } - return result; -} - -/* Unpack the argument tuple */ - -SWIGINTERN Py_ssize_t -SWIG_Python_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t max, PyObject **objs) -{ - if (!args) { - if (!min && !max) { - return 1; - } else { - PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got none", - name, (min == max ? "" : "at least "), (int)min); - return 0; - } - } - if (!PyTuple_Check(args)) { - if (min <= 1 && max >= 1) { - Py_ssize_t i; - objs[0] = args; - for (i = 1; i < max; ++i) { - objs[i] = 0; - } - return 2; - } - PyErr_SetString(PyExc_SystemError, "UnpackTuple() argument list is not a tuple"); - return 0; - } else { - Py_ssize_t l = PyTuple_GET_SIZE(args); - if (l < min) { - PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d", - name, (min == max ? "" : "at least "), (int)min, (int)l); - return 0; - } else if (l > max) { - PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d", - name, (min == max ? "" : "at most "), (int)max, (int)l); - return 0; - } else { - Py_ssize_t i; - for (i = 0; i < l; ++i) { - objs[i] = PyTuple_GET_ITEM(args, i); - } - for (; l < max; ++l) { - objs[l] = 0; - } - return i + 1; - } - } -} - -/* A functor is a function object with one single object argument */ -#define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunctionObjArgs(functor, obj, NULL); - -/* - Helper for static pointer initialization for both C and C++ code, for example - static PyObject *SWIG_STATIC_POINTER(MyVar) = NewSomething(...); -*/ -#ifdef __cplusplus -#define SWIG_STATIC_POINTER(var) var -#else -#define SWIG_STATIC_POINTER(var) var = 0; if (!var) var -#endif - -/* ----------------------------------------------------------------------------- - * Pointer declarations - * ----------------------------------------------------------------------------- */ - -/* Flags for new pointer objects */ -#define SWIG_POINTER_NOSHADOW (SWIG_POINTER_OWN << 1) -#define SWIG_POINTER_NEW (SWIG_POINTER_NOSHADOW | SWIG_POINTER_OWN) - -#define SWIG_POINTER_IMPLICIT_CONV (SWIG_POINTER_DISOWN << 1) - -#define SWIG_BUILTIN_TP_INIT (SWIG_POINTER_OWN << 2) -#define SWIG_BUILTIN_INIT (SWIG_BUILTIN_TP_INIT | SWIG_POINTER_OWN) - -#ifdef __cplusplus -extern "C" { -#endif - -/* The python void return value */ - -SWIGRUNTIMEINLINE PyObject * -SWIG_Py_Void(void) -{ - PyObject *none = Py_None; - Py_INCREF(none); - return none; -} - -/* SwigPyClientData */ - -typedef struct { - PyObject *klass; - PyObject *newraw; - PyObject *newargs; - PyObject *destroy; - int delargs; - int implicitconv; - PyTypeObject *pytype; -} SwigPyClientData; - -SWIGRUNTIMEINLINE int -SWIG_Python_CheckImplicit(swig_type_info *ty) -{ - SwigPyClientData *data = (SwigPyClientData *)ty->clientdata; - int fail = data ? data->implicitconv : 0; - if (fail) - PyErr_SetString(PyExc_TypeError, "Implicit conversion is prohibited for explicit constructors."); - return fail; -} - -SWIGRUNTIMEINLINE PyObject * -SWIG_Python_ExceptionType(swig_type_info *desc) { - SwigPyClientData *data = desc ? (SwigPyClientData *) desc->clientdata : 0; - PyObject *klass = data ? data->klass : 0; - return (klass ? klass : PyExc_RuntimeError); -} - - -SWIGRUNTIME SwigPyClientData * -SwigPyClientData_New(PyObject* obj) -{ - if (!obj) { - return 0; - } else { - SwigPyClientData *data = (SwigPyClientData *)malloc(sizeof(SwigPyClientData)); - /* the klass element */ - data->klass = obj; - Py_INCREF(data->klass); - /* the newraw method and newargs arguments used to create a new raw instance */ - if (PyClass_Check(obj)) { - data->newraw = 0; - data->newargs = obj; - Py_INCREF(obj); - } else { - data->newraw = PyObject_GetAttrString(data->klass, "__new__"); - if (data->newraw) { - Py_INCREF(data->newraw); - data->newargs = PyTuple_New(1); - PyTuple_SetItem(data->newargs, 0, obj); - } else { - data->newargs = obj; - } - Py_INCREF(data->newargs); - } - /* the destroy method, aka as the C++ delete method */ - data->destroy = PyObject_GetAttrString(data->klass, "__swig_destroy__"); - if (PyErr_Occurred()) { - PyErr_Clear(); - data->destroy = 0; - } - if (data->destroy) { - int flags; - Py_INCREF(data->destroy); - flags = PyCFunction_GET_FLAGS(data->destroy); - data->delargs = !(flags & (METH_O)); - } else { - data->delargs = 0; - } - data->implicitconv = 0; - data->pytype = 0; - return data; - } -} - -SWIGRUNTIME void -SwigPyClientData_Del(SwigPyClientData *data) { - Py_XDECREF(data->newraw); - Py_XDECREF(data->newargs); - Py_XDECREF(data->destroy); -} - -/* =============== SwigPyObject =====================*/ - -typedef struct { - PyObject_HEAD - void *ptr; - swig_type_info *ty; - int own; - PyObject *next; -#ifdef SWIGPYTHON_BUILTIN - PyObject *dict; -#endif -} SwigPyObject; - - -#ifdef SWIGPYTHON_BUILTIN - -SWIGRUNTIME PyObject * -SwigPyObject_get___dict__(PyObject *v, PyObject *SWIGUNUSEDPARM(args)) -{ - SwigPyObject *sobj = (SwigPyObject *)v; - - if (!sobj->dict) - sobj->dict = PyDict_New(); - - Py_INCREF(sobj->dict); - return sobj->dict; -} - -#endif - -SWIGRUNTIME PyObject * -SwigPyObject_long(SwigPyObject *v) -{ - return PyLong_FromVoidPtr(v->ptr); -} - -SWIGRUNTIME PyObject * -SwigPyObject_format(const char* fmt, SwigPyObject *v) -{ - PyObject *res = NULL; - PyObject *args = PyTuple_New(1); - if (args) { - if (PyTuple_SetItem(args, 0, SwigPyObject_long(v)) == 0) { - PyObject *ofmt = SWIG_Python_str_FromChar(fmt); - if (ofmt) { -#if PY_VERSION_HEX >= 0x03000000 - res = PyUnicode_Format(ofmt,args); -#else - res = PyString_Format(ofmt,args); -#endif - Py_DECREF(ofmt); - } - Py_DECREF(args); - } - } - return res; -} - -SWIGRUNTIME PyObject * -SwigPyObject_oct(SwigPyObject *v) -{ - return SwigPyObject_format("%o",v); -} - -SWIGRUNTIME PyObject * -SwigPyObject_hex(SwigPyObject *v) -{ - return SwigPyObject_format("%x",v); -} - -SWIGRUNTIME PyObject * -SwigPyObject_repr(SwigPyObject *v) -{ - const char *name = SWIG_TypePrettyName(v->ty); - PyObject *repr = SWIG_Python_str_FromFormat("", (name ? name : "unknown"), (void *)v); - if (v->next) { - PyObject *nrep = SwigPyObject_repr((SwigPyObject *)v->next); -# if PY_VERSION_HEX >= 0x03000000 - PyObject *joined = PyUnicode_Concat(repr, nrep); - Py_DecRef(repr); - Py_DecRef(nrep); - repr = joined; -# else - PyString_ConcatAndDel(&repr,nrep); -# endif - } - return repr; -} - -/* We need a version taking two PyObject* parameters so it's a valid - * PyCFunction to use in swigobject_methods[]. */ -SWIGRUNTIME PyObject * -SwigPyObject_repr2(PyObject *v, PyObject *SWIGUNUSEDPARM(args)) -{ - return SwigPyObject_repr((SwigPyObject*)v); -} - -SWIGRUNTIME int -SwigPyObject_compare(SwigPyObject *v, SwigPyObject *w) -{ - void *i = v->ptr; - void *j = w->ptr; - return (i < j) ? -1 : ((i > j) ? 1 : 0); -} - -/* Added for Python 3.x, would it also be useful for Python 2.x? */ -SWIGRUNTIME PyObject* -SwigPyObject_richcompare(SwigPyObject *v, SwigPyObject *w, int op) -{ - PyObject* res; - if( op != Py_EQ && op != Py_NE ) { - Py_INCREF(Py_NotImplemented); - return Py_NotImplemented; - } - res = PyBool_FromLong( (SwigPyObject_compare(v, w)==0) == (op == Py_EQ) ? 1 : 0); - return res; -} - - -SWIGRUNTIME PyTypeObject* SwigPyObject_TypeOnce(void); - -#ifdef SWIGPYTHON_BUILTIN -static swig_type_info *SwigPyObject_stype = 0; -SWIGRUNTIME PyTypeObject* -SwigPyObject_type(void) { - SwigPyClientData *cd; - assert(SwigPyObject_stype); - cd = (SwigPyClientData*) SwigPyObject_stype->clientdata; - assert(cd); - assert(cd->pytype); - return cd->pytype; -} -#else -SWIGRUNTIME PyTypeObject* -SwigPyObject_type(void) { - static PyTypeObject *SWIG_STATIC_POINTER(type) = SwigPyObject_TypeOnce(); - return type; -} -#endif - -SWIGRUNTIMEINLINE int -SwigPyObject_Check(PyObject *op) { -#ifdef SWIGPYTHON_BUILTIN - PyTypeObject *target_tp = SwigPyObject_type(); - if (PyType_IsSubtype(op->ob_type, target_tp)) - return 1; - return (strcmp(op->ob_type->tp_name, "SwigPyObject") == 0); -#else - return (Py_TYPE(op) == SwigPyObject_type()) - || (strcmp(Py_TYPE(op)->tp_name,"SwigPyObject") == 0); -#endif -} - -SWIGRUNTIME PyObject * -SwigPyObject_New(void *ptr, swig_type_info *ty, int own); - -SWIGRUNTIME void -SwigPyObject_dealloc(PyObject *v) -{ - SwigPyObject *sobj = (SwigPyObject *) v; - PyObject *next = sobj->next; - if (sobj->own == SWIG_POINTER_OWN) { - swig_type_info *ty = sobj->ty; - SwigPyClientData *data = ty ? (SwigPyClientData *) ty->clientdata : 0; - PyObject *destroy = data ? data->destroy : 0; - if (destroy) { - /* destroy is always a VARARGS method */ - PyObject *res; - - /* PyObject_CallFunction() has the potential to silently drop - the active exception. In cases of unnamed temporary - variable or where we just finished iterating over a generator - StopIteration will be active right now, and this needs to - remain true upon return from SwigPyObject_dealloc. So save - and restore. */ - - PyObject *type = NULL, *value = NULL, *traceback = NULL; - PyErr_Fetch(&type, &value, &traceback); - - if (data->delargs) { - /* we need to create a temporary object to carry the destroy operation */ - PyObject *tmp = SwigPyObject_New(sobj->ptr, ty, 0); - res = SWIG_Python_CallFunctor(destroy, tmp); - Py_DECREF(tmp); - } else { - PyCFunction meth = PyCFunction_GET_FUNCTION(destroy); - PyObject *mself = PyCFunction_GET_SELF(destroy); - res = ((*meth)(mself, v)); - } - if (!res) - PyErr_WriteUnraisable(destroy); - - PyErr_Restore(type, value, traceback); - - Py_XDECREF(res); - } -#if !defined(SWIG_PYTHON_SILENT_MEMLEAK) - else { - const char *name = SWIG_TypePrettyName(ty); - printf("swig/python detected a memory leak of type '%s', no destructor found.\n", (name ? name : "unknown")); - } -#endif - } - Py_XDECREF(next); - PyObject_DEL(v); -} - -SWIGRUNTIME PyObject* -SwigPyObject_append(PyObject* v, PyObject* next) -{ - SwigPyObject *sobj = (SwigPyObject *) v; - if (!SwigPyObject_Check(next)) { - PyErr_SetString(PyExc_TypeError, "Attempt to append a non SwigPyObject"); - return NULL; - } - sobj->next = next; - Py_INCREF(next); - return SWIG_Py_Void(); -} - -SWIGRUNTIME PyObject* -SwigPyObject_next(PyObject* v, PyObject *SWIGUNUSEDPARM(args)) -{ - SwigPyObject *sobj = (SwigPyObject *) v; - if (sobj->next) { - Py_INCREF(sobj->next); - return sobj->next; - } else { - return SWIG_Py_Void(); - } -} - -SWIGINTERN PyObject* -SwigPyObject_disown(PyObject* v, PyObject *SWIGUNUSEDPARM(args)) -{ - SwigPyObject *sobj = (SwigPyObject *)v; - sobj->own = 0; - return SWIG_Py_Void(); -} - -SWIGINTERN PyObject* -SwigPyObject_acquire(PyObject* v, PyObject *SWIGUNUSEDPARM(args)) -{ - SwigPyObject *sobj = (SwigPyObject *)v; - sobj->own = SWIG_POINTER_OWN; - return SWIG_Py_Void(); -} - -SWIGINTERN PyObject* -SwigPyObject_own(PyObject *v, PyObject *args) -{ - PyObject *val = 0; - if (!PyArg_UnpackTuple(args, "own", 0, 1, &val)) { - return NULL; - } else { - SwigPyObject *sobj = (SwigPyObject *)v; - PyObject *obj = PyBool_FromLong(sobj->own); - if (val) { - if (PyObject_IsTrue(val)) { - SwigPyObject_acquire(v,args); - } else { - SwigPyObject_disown(v,args); - } - } - return obj; - } -} - -static PyMethodDef -swigobject_methods[] = { - {"disown", SwigPyObject_disown, METH_NOARGS, "releases ownership of the pointer"}, - {"acquire", SwigPyObject_acquire, METH_NOARGS, "acquires ownership of the pointer"}, - {"own", SwigPyObject_own, METH_VARARGS, "returns/sets ownership of the pointer"}, - {"append", SwigPyObject_append, METH_O, "appends another 'this' object"}, - {"next", SwigPyObject_next, METH_NOARGS, "returns the next 'this' object"}, - {"__repr__",SwigPyObject_repr2, METH_NOARGS, "returns object representation"}, - {0, 0, 0, 0} -}; - -SWIGRUNTIME PyTypeObject* -SwigPyObject_TypeOnce(void) { - static char swigobject_doc[] = "Swig object carries a C/C++ instance pointer"; - - static PyNumberMethods SwigPyObject_as_number = { - (binaryfunc)0, /*nb_add*/ - (binaryfunc)0, /*nb_subtract*/ - (binaryfunc)0, /*nb_multiply*/ - /* nb_divide removed in Python 3 */ -#if PY_VERSION_HEX < 0x03000000 - (binaryfunc)0, /*nb_divide*/ -#endif - (binaryfunc)0, /*nb_remainder*/ - (binaryfunc)0, /*nb_divmod*/ - (ternaryfunc)0,/*nb_power*/ - (unaryfunc)0, /*nb_negative*/ - (unaryfunc)0, /*nb_positive*/ - (unaryfunc)0, /*nb_absolute*/ - (inquiry)0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ -#if PY_VERSION_HEX < 0x03000000 - 0, /*nb_coerce*/ -#endif - (unaryfunc)SwigPyObject_long, /*nb_int*/ -#if PY_VERSION_HEX < 0x03000000 - (unaryfunc)SwigPyObject_long, /*nb_long*/ -#else - 0, /*nb_reserved*/ -#endif - (unaryfunc)0, /*nb_float*/ -#if PY_VERSION_HEX < 0x03000000 - (unaryfunc)SwigPyObject_oct, /*nb_oct*/ - (unaryfunc)SwigPyObject_hex, /*nb_hex*/ -#endif -#if PY_VERSION_HEX >= 0x03050000 /* 3.5 */ - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_matrix_multiply */ -#elif PY_VERSION_HEX >= 0x03000000 /* 3.0 */ - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_index, nb_inplace_divide removed */ -#else - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_index */ -#endif - }; - - static PyTypeObject swigpyobject_type; - static int type_init = 0; - if (!type_init) { - const PyTypeObject tmp = { -#if PY_VERSION_HEX >= 0x03000000 - PyVarObject_HEAD_INIT(NULL, 0) -#else - PyObject_HEAD_INIT(NULL) - 0, /* ob_size */ -#endif - "SwigPyObject", /* tp_name */ - sizeof(SwigPyObject), /* tp_basicsize */ - 0, /* tp_itemsize */ - (destructor)SwigPyObject_dealloc, /* tp_dealloc */ - 0, /* tp_print */ - (getattrfunc)0, /* tp_getattr */ - (setattrfunc)0, /* tp_setattr */ -#if PY_VERSION_HEX >= 0x03000000 - 0, /* tp_reserved in 3.0.1, tp_compare in 3.0.0 but not used */ -#else - (cmpfunc)SwigPyObject_compare, /* tp_compare */ -#endif - (reprfunc)SwigPyObject_repr, /* tp_repr */ - &SwigPyObject_as_number, /* tp_as_number */ - 0, /* tp_as_sequence */ - 0, /* tp_as_mapping */ - (hashfunc)0, /* tp_hash */ - (ternaryfunc)0, /* tp_call */ - 0, /* tp_str */ - PyObject_GenericGetAttr, /* tp_getattro */ - 0, /* tp_setattro */ - 0, /* tp_as_buffer */ - Py_TPFLAGS_DEFAULT, /* tp_flags */ - swigobject_doc, /* tp_doc */ - 0, /* tp_traverse */ - 0, /* tp_clear */ - (richcmpfunc)SwigPyObject_richcompare,/* tp_richcompare */ - 0, /* tp_weaklistoffset */ - 0, /* tp_iter */ - 0, /* tp_iternext */ - swigobject_methods, /* tp_methods */ - 0, /* tp_members */ - 0, /* tp_getset */ - 0, /* tp_base */ - 0, /* tp_dict */ - 0, /* tp_descr_get */ - 0, /* tp_descr_set */ - 0, /* tp_dictoffset */ - 0, /* tp_init */ - 0, /* tp_alloc */ - 0, /* tp_new */ - 0, /* tp_free */ - 0, /* tp_is_gc */ - 0, /* tp_bases */ - 0, /* tp_mro */ - 0, /* tp_cache */ - 0, /* tp_subclasses */ - 0, /* tp_weaklist */ - 0, /* tp_del */ - 0, /* tp_version_tag */ -#if PY_VERSION_HEX >= 0x03040000 - 0, /* tp_finalize */ -#endif -#ifdef COUNT_ALLOCS - 0, /* tp_allocs */ - 0, /* tp_frees */ - 0, /* tp_maxalloc */ - 0, /* tp_prev */ - 0 /* tp_next */ -#endif - }; - swigpyobject_type = tmp; - type_init = 1; - if (PyType_Ready(&swigpyobject_type) < 0) - return NULL; - } - return &swigpyobject_type; -} - -SWIGRUNTIME PyObject * -SwigPyObject_New(void *ptr, swig_type_info *ty, int own) -{ - SwigPyObject *sobj = PyObject_NEW(SwigPyObject, SwigPyObject_type()); - if (sobj) { - sobj->ptr = ptr; - sobj->ty = ty; - sobj->own = own; - sobj->next = 0; - } - return (PyObject *)sobj; -} - -/* ----------------------------------------------------------------------------- - * Implements a simple Swig Packed type, and use it instead of string - * ----------------------------------------------------------------------------- */ - -typedef struct { - PyObject_HEAD - void *pack; - swig_type_info *ty; - size_t size; -} SwigPyPacked; - -SWIGRUNTIME PyObject * -SwigPyPacked_repr(SwigPyPacked *v) -{ - char result[SWIG_BUFFER_SIZE]; - if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) { - return SWIG_Python_str_FromFormat("", result, v->ty->name); - } else { - return SWIG_Python_str_FromFormat("", v->ty->name); - } -} - -SWIGRUNTIME PyObject * -SwigPyPacked_str(SwigPyPacked *v) -{ - char result[SWIG_BUFFER_SIZE]; - if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){ - return SWIG_Python_str_FromFormat("%s%s", result, v->ty->name); - } else { - return SWIG_Python_str_FromChar(v->ty->name); - } -} - -SWIGRUNTIME int -SwigPyPacked_compare(SwigPyPacked *v, SwigPyPacked *w) -{ - size_t i = v->size; - size_t j = w->size; - int s = (i < j) ? -1 : ((i > j) ? 1 : 0); - return s ? s : strncmp((const char *)v->pack, (const char *)w->pack, 2*v->size); -} - -SWIGRUNTIME PyTypeObject* SwigPyPacked_TypeOnce(void); - -SWIGRUNTIME PyTypeObject* -SwigPyPacked_type(void) { - static PyTypeObject *SWIG_STATIC_POINTER(type) = SwigPyPacked_TypeOnce(); - return type; -} - -SWIGRUNTIMEINLINE int -SwigPyPacked_Check(PyObject *op) { - return ((op)->ob_type == SwigPyPacked_TypeOnce()) - || (strcmp((op)->ob_type->tp_name,"SwigPyPacked") == 0); -} - -SWIGRUNTIME void -SwigPyPacked_dealloc(PyObject *v) -{ - if (SwigPyPacked_Check(v)) { - SwigPyPacked *sobj = (SwigPyPacked *) v; - free(sobj->pack); - } - PyObject_DEL(v); -} - -SWIGRUNTIME PyTypeObject* -SwigPyPacked_TypeOnce(void) { - static char swigpacked_doc[] = "Swig object carries a C/C++ instance pointer"; - static PyTypeObject swigpypacked_type; - static int type_init = 0; - if (!type_init) { - const PyTypeObject tmp = { -#if PY_VERSION_HEX>=0x03000000 - PyVarObject_HEAD_INIT(NULL, 0) -#else - PyObject_HEAD_INIT(NULL) - 0, /* ob_size */ -#endif - "SwigPyPacked", /* tp_name */ - sizeof(SwigPyPacked), /* tp_basicsize */ - 0, /* tp_itemsize */ - (destructor)SwigPyPacked_dealloc, /* tp_dealloc */ - 0, /* tp_print */ - (getattrfunc)0, /* tp_getattr */ - (setattrfunc)0, /* tp_setattr */ -#if PY_VERSION_HEX>=0x03000000 - 0, /* tp_reserved in 3.0.1 */ -#else - (cmpfunc)SwigPyPacked_compare, /* tp_compare */ -#endif - (reprfunc)SwigPyPacked_repr, /* tp_repr */ - 0, /* tp_as_number */ - 0, /* tp_as_sequence */ - 0, /* tp_as_mapping */ - (hashfunc)0, /* tp_hash */ - (ternaryfunc)0, /* tp_call */ - (reprfunc)SwigPyPacked_str, /* tp_str */ - PyObject_GenericGetAttr, /* tp_getattro */ - 0, /* tp_setattro */ - 0, /* tp_as_buffer */ - Py_TPFLAGS_DEFAULT, /* tp_flags */ - swigpacked_doc, /* tp_doc */ - 0, /* tp_traverse */ - 0, /* tp_clear */ - 0, /* tp_richcompare */ - 0, /* tp_weaklistoffset */ - 0, /* tp_iter */ - 0, /* tp_iternext */ - 0, /* tp_methods */ - 0, /* tp_members */ - 0, /* tp_getset */ - 0, /* tp_base */ - 0, /* tp_dict */ - 0, /* tp_descr_get */ - 0, /* tp_descr_set */ - 0, /* tp_dictoffset */ - 0, /* tp_init */ - 0, /* tp_alloc */ - 0, /* tp_new */ - 0, /* tp_free */ - 0, /* tp_is_gc */ - 0, /* tp_bases */ - 0, /* tp_mro */ - 0, /* tp_cache */ - 0, /* tp_subclasses */ - 0, /* tp_weaklist */ - 0, /* tp_del */ - 0, /* tp_version_tag */ -#if PY_VERSION_HEX >= 0x03040000 - 0, /* tp_finalize */ -#endif -#ifdef COUNT_ALLOCS - 0, /* tp_allocs */ - 0, /* tp_frees */ - 0, /* tp_maxalloc */ - 0, /* tp_prev */ - 0 /* tp_next */ -#endif - }; - swigpypacked_type = tmp; - type_init = 1; - if (PyType_Ready(&swigpypacked_type) < 0) - return NULL; - } - return &swigpypacked_type; -} - -SWIGRUNTIME PyObject * -SwigPyPacked_New(void *ptr, size_t size, swig_type_info *ty) -{ - SwigPyPacked *sobj = PyObject_NEW(SwigPyPacked, SwigPyPacked_type()); - if (sobj) { - void *pack = malloc(size); - if (pack) { - memcpy(pack, ptr, size); - sobj->pack = pack; - sobj->ty = ty; - sobj->size = size; - } else { - PyObject_DEL((PyObject *) sobj); - sobj = 0; - } - } - return (PyObject *) sobj; -} - -SWIGRUNTIME swig_type_info * -SwigPyPacked_UnpackData(PyObject *obj, void *ptr, size_t size) -{ - if (SwigPyPacked_Check(obj)) { - SwigPyPacked *sobj = (SwigPyPacked *)obj; - if (sobj->size != size) return 0; - memcpy(ptr, sobj->pack, size); - return sobj->ty; - } else { - return 0; - } -} - -/* ----------------------------------------------------------------------------- - * pointers/data manipulation - * ----------------------------------------------------------------------------- */ - -static PyObject *Swig_This_global = NULL; - -SWIGRUNTIME PyObject * -SWIG_This(void) -{ - if (Swig_This_global == NULL) - Swig_This_global = SWIG_Python_str_FromChar("this"); - return Swig_This_global; -} - -/* #define SWIG_PYTHON_SLOW_GETSET_THIS */ - -/* TODO: I don't know how to implement the fast getset in Python 3 right now */ -#if PY_VERSION_HEX>=0x03000000 -#define SWIG_PYTHON_SLOW_GETSET_THIS -#endif - -SWIGRUNTIME SwigPyObject * -SWIG_Python_GetSwigThis(PyObject *pyobj) -{ - PyObject *obj; - - if (SwigPyObject_Check(pyobj)) - return (SwigPyObject *) pyobj; - -#ifdef SWIGPYTHON_BUILTIN - (void)obj; -# ifdef PyWeakref_CheckProxy - if (PyWeakref_CheckProxy(pyobj)) { - pyobj = PyWeakref_GET_OBJECT(pyobj); - if (pyobj && SwigPyObject_Check(pyobj)) - return (SwigPyObject*) pyobj; - } -# endif - return NULL; -#else - - obj = 0; - -#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS) - if (PyInstance_Check(pyobj)) { - obj = _PyInstance_Lookup(pyobj, SWIG_This()); - } else { - PyObject **dictptr = _PyObject_GetDictPtr(pyobj); - if (dictptr != NULL) { - PyObject *dict = *dictptr; - obj = dict ? PyDict_GetItem(dict, SWIG_This()) : 0; - } else { -#ifdef PyWeakref_CheckProxy - if (PyWeakref_CheckProxy(pyobj)) { - PyObject *wobj = PyWeakref_GET_OBJECT(pyobj); - return wobj ? SWIG_Python_GetSwigThis(wobj) : 0; - } -#endif - obj = PyObject_GetAttr(pyobj,SWIG_This()); - if (obj) { - Py_DECREF(obj); - } else { - if (PyErr_Occurred()) PyErr_Clear(); - return 0; - } - } - } -#else - obj = PyObject_GetAttr(pyobj,SWIG_This()); - if (obj) { - Py_DECREF(obj); - } else { - if (PyErr_Occurred()) PyErr_Clear(); - return 0; - } -#endif - if (obj && !SwigPyObject_Check(obj)) { - /* a PyObject is called 'this', try to get the 'real this' - SwigPyObject from it */ - return SWIG_Python_GetSwigThis(obj); - } - return (SwigPyObject *)obj; -#endif -} - -/* Acquire a pointer value */ - -SWIGRUNTIME int -SWIG_Python_AcquirePtr(PyObject *obj, int own) { - if (own == SWIG_POINTER_OWN) { - SwigPyObject *sobj = SWIG_Python_GetSwigThis(obj); - if (sobj) { - int oldown = sobj->own; - sobj->own = own; - return oldown; - } - } - return 0; -} - -/* Convert a pointer value */ - -SWIGRUNTIME int -SWIG_Python_ConvertPtrAndOwn(PyObject *obj, void **ptr, swig_type_info *ty, int flags, int *own) { - int res; - SwigPyObject *sobj; - int implicit_conv = (flags & SWIG_POINTER_IMPLICIT_CONV) != 0; - - if (!obj) - return SWIG_ERROR; - if (obj == Py_None && !implicit_conv) { - if (ptr) - *ptr = 0; - return (flags & SWIG_POINTER_NO_NULL) ? SWIG_NullReferenceError : SWIG_OK; - } - - res = SWIG_ERROR; - - sobj = SWIG_Python_GetSwigThis(obj); - if (own) - *own = 0; - while (sobj) { - void *vptr = sobj->ptr; - if (ty) { - swig_type_info *to = sobj->ty; - if (to == ty) { - /* no type cast needed */ - if (ptr) *ptr = vptr; - break; - } else { - swig_cast_info *tc = SWIG_TypeCheck(to->name,ty); - if (!tc) { - sobj = (SwigPyObject *)sobj->next; - } else { - if (ptr) { - int newmemory = 0; - *ptr = SWIG_TypeCast(tc,vptr,&newmemory); - if (newmemory == SWIG_CAST_NEW_MEMORY) { - assert(own); /* badly formed typemap which will lead to a memory leak - it must set and use own to delete *ptr */ - if (own) - *own = *own | SWIG_CAST_NEW_MEMORY; - } - } - break; - } - } - } else { - if (ptr) *ptr = vptr; - break; - } - } - if (sobj) { - if (own) - *own = *own | sobj->own; - if (flags & SWIG_POINTER_DISOWN) { - sobj->own = 0; - } - res = SWIG_OK; - } else { - if (implicit_conv) { - SwigPyClientData *data = ty ? (SwigPyClientData *) ty->clientdata : 0; - if (data && !data->implicitconv) { - PyObject *klass = data->klass; - if (klass) { - PyObject *impconv; - data->implicitconv = 1; /* avoid recursion and call 'explicit' constructors*/ - impconv = SWIG_Python_CallFunctor(klass, obj); - data->implicitconv = 0; - if (PyErr_Occurred()) { - PyErr_Clear(); - impconv = 0; - } - if (impconv) { - SwigPyObject *iobj = SWIG_Python_GetSwigThis(impconv); - if (iobj) { - void *vptr; - res = SWIG_Python_ConvertPtrAndOwn((PyObject*)iobj, &vptr, ty, 0, 0); - if (SWIG_IsOK(res)) { - if (ptr) { - *ptr = vptr; - /* transfer the ownership to 'ptr' */ - iobj->own = 0; - res = SWIG_AddCast(res); - res = SWIG_AddNewMask(res); - } else { - res = SWIG_AddCast(res); - } - } - } - Py_DECREF(impconv); - } - } - } - if (!SWIG_IsOK(res) && obj == Py_None) { - if (ptr) - *ptr = 0; - if (PyErr_Occurred()) - PyErr_Clear(); - res = SWIG_OK; - } - } - } - return res; -} - -/* Convert a function ptr value */ - -SWIGRUNTIME int -SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty) { - if (!PyCFunction_Check(obj)) { - return SWIG_ConvertPtr(obj, ptr, ty, 0); - } else { - void *vptr = 0; - swig_cast_info *tc; - - /* here we get the method pointer for callbacks */ - const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc); - const char *desc = doc ? strstr(doc, "swig_ptr: ") : 0; - if (desc) - desc = ty ? SWIG_UnpackVoidPtr(desc + 10, &vptr, ty->name) : 0; - if (!desc) - return SWIG_ERROR; - tc = SWIG_TypeCheck(desc,ty); - if (tc) { - int newmemory = 0; - *ptr = SWIG_TypeCast(tc,vptr,&newmemory); - assert(!newmemory); /* newmemory handling not yet implemented */ - } else { - return SWIG_ERROR; - } - return SWIG_OK; - } -} - -/* Convert a packed pointer value */ - -SWIGRUNTIME int -SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty) { - swig_type_info *to = SwigPyPacked_UnpackData(obj, ptr, sz); - if (!to) return SWIG_ERROR; - if (ty) { - if (to != ty) { - /* check type cast? */ - swig_cast_info *tc = SWIG_TypeCheck(to->name,ty); - if (!tc) return SWIG_ERROR; - } - } - return SWIG_OK; -} - -/* ----------------------------------------------------------------------------- - * Create a new pointer object - * ----------------------------------------------------------------------------- */ - -/* - Create a new instance object, without calling __init__, and set the - 'this' attribute. -*/ - -SWIGRUNTIME PyObject* -SWIG_Python_NewShadowInstance(SwigPyClientData *data, PyObject *swig_this) -{ - PyObject *inst = 0; - PyObject *newraw = data->newraw; - if (newraw) { - inst = PyObject_Call(newraw, data->newargs, NULL); - if (inst) { -#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS) - PyObject **dictptr = _PyObject_GetDictPtr(inst); - if (dictptr != NULL) { - PyObject *dict = *dictptr; - if (dict == NULL) { - dict = PyDict_New(); - *dictptr = dict; - PyDict_SetItem(dict, SWIG_This(), swig_this); - } - } -#else - PyObject *key = SWIG_This(); - PyObject_SetAttr(inst, key, swig_this); -#endif - } - } else { -#if PY_VERSION_HEX >= 0x03000000 - PyObject *empty_args = PyTuple_New(0); - if (empty_args) { - PyObject *empty_kwargs = PyDict_New(); - if (empty_kwargs) { - inst = ((PyTypeObject *)data->newargs)->tp_new((PyTypeObject *)data->newargs, empty_args, empty_kwargs); - Py_DECREF(empty_kwargs); - if (inst) { - PyObject_SetAttr(inst, SWIG_This(), swig_this); - Py_TYPE(inst)->tp_flags &= ~Py_TPFLAGS_VALID_VERSION_TAG; - } - } - Py_DECREF(empty_args); - } -#else - PyObject *dict = PyDict_New(); - if (dict) { - PyDict_SetItem(dict, SWIG_This(), swig_this); - inst = PyInstance_NewRaw(data->newargs, dict); - Py_DECREF(dict); - } -#endif - } - return inst; -} - -SWIGRUNTIME void -SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this) -{ - PyObject *dict; -#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS) - PyObject **dictptr = _PyObject_GetDictPtr(inst); - if (dictptr != NULL) { - dict = *dictptr; - if (dict == NULL) { - dict = PyDict_New(); - *dictptr = dict; - } - PyDict_SetItem(dict, SWIG_This(), swig_this); - return; - } -#endif - dict = PyObject_GetAttrString(inst, "__dict__"); - PyDict_SetItem(dict, SWIG_This(), swig_this); - Py_DECREF(dict); -} - - -SWIGINTERN PyObject * -SWIG_Python_InitShadowInstance(PyObject *args) { - PyObject *obj[2]; - if (!SWIG_Python_UnpackTuple(args, "swiginit", 2, 2, obj)) { - return NULL; - } else { - SwigPyObject *sthis = SWIG_Python_GetSwigThis(obj[0]); - if (sthis) { - SwigPyObject_append((PyObject*) sthis, obj[1]); - } else { - SWIG_Python_SetSwigThis(obj[0], obj[1]); - } - return SWIG_Py_Void(); - } -} - -/* Create a new pointer object */ - -SWIGRUNTIME PyObject * -SWIG_Python_NewPointerObj(PyObject *self, void *ptr, swig_type_info *type, int flags) { - SwigPyClientData *clientdata; - PyObject * robj; - int own; - - if (!ptr) - return SWIG_Py_Void(); - - clientdata = type ? (SwigPyClientData *)(type->clientdata) : 0; - own = (flags & SWIG_POINTER_OWN) ? SWIG_POINTER_OWN : 0; - if (clientdata && clientdata->pytype) { - SwigPyObject *newobj; - if (flags & SWIG_BUILTIN_TP_INIT) { - newobj = (SwigPyObject*) self; - if (newobj->ptr) { - PyObject *next_self = clientdata->pytype->tp_alloc(clientdata->pytype, 0); - while (newobj->next) - newobj = (SwigPyObject *) newobj->next; - newobj->next = next_self; - newobj = (SwigPyObject *)next_self; -#ifdef SWIGPYTHON_BUILTIN - newobj->dict = 0; -#endif - } - } else { - newobj = PyObject_New(SwigPyObject, clientdata->pytype); -#ifdef SWIGPYTHON_BUILTIN - newobj->dict = 0; -#endif - } - if (newobj) { - newobj->ptr = ptr; - newobj->ty = type; - newobj->own = own; - newobj->next = 0; - return (PyObject*) newobj; - } - return SWIG_Py_Void(); - } - - assert(!(flags & SWIG_BUILTIN_TP_INIT)); - - robj = SwigPyObject_New(ptr, type, own); - if (robj && clientdata && !(flags & SWIG_POINTER_NOSHADOW)) { - PyObject *inst = SWIG_Python_NewShadowInstance(clientdata, robj); - Py_DECREF(robj); - robj = inst; - } - return robj; -} - -/* Create a new packed object */ - -SWIGRUNTIMEINLINE PyObject * -SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) { - return ptr ? SwigPyPacked_New((void *) ptr, sz, type) : SWIG_Py_Void(); -} - -/* -----------------------------------------------------------------------------* - * Get type list - * -----------------------------------------------------------------------------*/ - -#ifdef SWIG_LINK_RUNTIME -void *SWIG_ReturnGlobalTypeList(void *); -#endif - -SWIGRUNTIME swig_module_info * -SWIG_Python_GetModule(void *SWIGUNUSEDPARM(clientdata)) { - static void *type_pointer = (void *)0; - /* first check if module already created */ - if (!type_pointer) { -#ifdef SWIG_LINK_RUNTIME - type_pointer = SWIG_ReturnGlobalTypeList((void *)0); -#else - type_pointer = PyCapsule_Import(SWIGPY_CAPSULE_NAME, 0); - if (PyErr_Occurred()) { - PyErr_Clear(); - type_pointer = (void *)0; - } -#endif - } - return (swig_module_info *) type_pointer; -} - -SWIGRUNTIME void -SWIG_Python_DestroyModule(PyObject *obj) -{ - swig_module_info *swig_module = (swig_module_info *) PyCapsule_GetPointer(obj, SWIGPY_CAPSULE_NAME); - swig_type_info **types = swig_module->types; - size_t i; - for (i =0; i < swig_module->size; ++i) { - swig_type_info *ty = types[i]; - if (ty->owndata) { - SwigPyClientData *data = (SwigPyClientData *) ty->clientdata; - if (data) SwigPyClientData_Del(data); - } - } - Py_DECREF(SWIG_This()); - Swig_This_global = NULL; -} - -SWIGRUNTIME void -SWIG_Python_SetModule(swig_module_info *swig_module) { -#if PY_VERSION_HEX >= 0x03000000 - /* Add a dummy module object into sys.modules */ - PyObject *module = PyImport_AddModule("swig_runtime_data" SWIG_RUNTIME_VERSION); -#else - static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} }; /* Sentinel */ - PyObject *module = Py_InitModule("swig_runtime_data" SWIG_RUNTIME_VERSION, swig_empty_runtime_method_table); -#endif - PyObject *pointer = PyCapsule_New((void *) swig_module, SWIGPY_CAPSULE_NAME, SWIG_Python_DestroyModule); - if (pointer && module) { - PyModule_AddObject(module, "type_pointer_capsule" SWIG_TYPE_TABLE_NAME, pointer); - } else { - Py_XDECREF(pointer); - } -} - -/* The python cached type query */ -SWIGRUNTIME PyObject * -SWIG_Python_TypeCache(void) { - static PyObject *SWIG_STATIC_POINTER(cache) = PyDict_New(); - return cache; -} - -SWIGRUNTIME swig_type_info * -SWIG_Python_TypeQuery(const char *type) -{ - PyObject *cache = SWIG_Python_TypeCache(); - PyObject *key = SWIG_Python_str_FromChar(type); - PyObject *obj = PyDict_GetItem(cache, key); - swig_type_info *descriptor; - if (obj) { - descriptor = (swig_type_info *) PyCapsule_GetPointer(obj, NULL); - } else { - swig_module_info *swig_module = SWIG_GetModule(0); - descriptor = SWIG_TypeQueryModule(swig_module, swig_module, type); - if (descriptor) { - obj = PyCapsule_New((void*) descriptor, NULL, NULL); - PyDict_SetItem(cache, key, obj); - Py_DECREF(obj); - } - } - Py_DECREF(key); - return descriptor; -} - -/* - For backward compatibility only -*/ -#define SWIG_POINTER_EXCEPTION 0 -#define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg) -#define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags) - -SWIGRUNTIME int -SWIG_Python_AddErrMesg(const char* mesg, int infront) -{ - if (PyErr_Occurred()) { - PyObject *type = 0; - PyObject *value = 0; - PyObject *traceback = 0; - PyErr_Fetch(&type, &value, &traceback); - if (value) { - PyObject *old_str = PyObject_Str(value); - const char *tmp = SWIG_Python_str_AsChar(old_str); - const char *errmesg = tmp ? tmp : "Invalid error message"; - Py_XINCREF(type); - PyErr_Clear(); - if (infront) { - PyErr_Format(type, "%s %s", mesg, errmesg); - } else { - PyErr_Format(type, "%s %s", errmesg, mesg); - } - SWIG_Python_str_DelForPy3(tmp); - Py_DECREF(old_str); - } - return 1; - } else { - return 0; - } -} - -SWIGRUNTIME int -SWIG_Python_ArgFail(int argnum) -{ - if (PyErr_Occurred()) { - /* add information about failing argument */ - char mesg[256]; - PyOS_snprintf(mesg, sizeof(mesg), "argument number %d:", argnum); - return SWIG_Python_AddErrMesg(mesg, 1); - } else { - return 0; - } -} - -SWIGRUNTIMEINLINE const char * -SwigPyObject_GetDesc(PyObject *self) -{ - SwigPyObject *v = (SwigPyObject *)self; - swig_type_info *ty = v ? v->ty : 0; - return ty ? ty->str : ""; -} - -SWIGRUNTIME void -SWIG_Python_TypeError(const char *type, PyObject *obj) -{ - if (type) { -#if defined(SWIG_COBJECT_TYPES) - if (obj && SwigPyObject_Check(obj)) { - const char *otype = (const char *) SwigPyObject_GetDesc(obj); - if (otype) { - PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'SwigPyObject(%s)' is received", - type, otype); - return; - } - } else -#endif - { - const char *otype = (obj ? obj->ob_type->tp_name : 0); - if (otype) { - PyObject *str = PyObject_Str(obj); - const char *cstr = str ? SWIG_Python_str_AsChar(str) : 0; - if (cstr) { - PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received", - type, otype, cstr); - SWIG_Python_str_DelForPy3(cstr); - } else { - PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received", - type, otype); - } - Py_XDECREF(str); - return; - } - } - PyErr_Format(PyExc_TypeError, "a '%s' is expected", type); - } else { - PyErr_Format(PyExc_TypeError, "unexpected type is received"); - } -} - - -/* Convert a pointer value, signal an exception on a type mismatch */ -SWIGRUNTIME void * -SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int SWIGUNUSEDPARM(argnum), int flags) { - void *result; - if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) { - PyErr_Clear(); -#if SWIG_POINTER_EXCEPTION - if (flags) { - SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj); - SWIG_Python_ArgFail(argnum); - } -#endif - } - return result; -} - -#ifdef SWIGPYTHON_BUILTIN -SWIGRUNTIME int -SWIG_Python_NonDynamicSetAttr(PyObject *obj, PyObject *name, PyObject *value) { - PyTypeObject *tp = obj->ob_type; - PyObject *descr; - PyObject *encoded_name; - descrsetfunc f; - int res = -1; - -# ifdef Py_USING_UNICODE - if (PyString_Check(name)) { - name = PyUnicode_Decode(PyString_AsString(name), PyString_Size(name), NULL, NULL); - if (!name) - return -1; - } else if (!PyUnicode_Check(name)) -# else - if (!PyString_Check(name)) -# endif - { - PyErr_Format(PyExc_TypeError, "attribute name must be string, not '%.200s'", name->ob_type->tp_name); - return -1; - } else { - Py_INCREF(name); - } - - if (!tp->tp_dict) { - if (PyType_Ready(tp) < 0) - goto done; - } - - descr = _PyType_Lookup(tp, name); - f = NULL; - if (descr != NULL) - f = descr->ob_type->tp_descr_set; - if (!f) { - if (PyString_Check(name)) { - encoded_name = name; - Py_INCREF(name); - } else { - encoded_name = PyUnicode_AsUTF8String(name); - if (!encoded_name) - return -1; - } - PyErr_Format(PyExc_AttributeError, "'%.100s' object has no attribute '%.200s'", tp->tp_name, PyString_AsString(encoded_name)); - Py_DECREF(encoded_name); - } else { - res = f(descr, obj, value); - } - - done: - Py_DECREF(name); - return res; -} -#endif - - -#ifdef __cplusplus -} -#endif - - - -#define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0) - -#define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else - - - -#ifdef __cplusplus -extern "C" { -#endif - -/* Method creation and docstring support functions */ - -SWIGINTERN PyMethodDef *SWIG_PythonGetProxyDoc(const char *name); -SWIGINTERN PyObject *SWIG_PyInstanceMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func); -SWIGINTERN PyObject *SWIG_PyStaticMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func); - -#ifdef __cplusplus -} -#endif - - - #define SWIG_exception(code, msg) do { SWIG_Error(code, msg); SWIG_fail;; } while(0) - - -/* -------- TYPES TABLE (BEGIN) -------- */ - -#define SWIGTYPE_p___int64 swig_types[0] -#define SWIGTYPE_p_char swig_types[1] -#define SWIGTYPE_p_egg_error_t swig_types[2] -#define SWIGTYPE_p_float swig_types[3] -#define SWIGTYPE_p_int swig_types[4] -#define SWIGTYPE_p_long swig_types[5] -#define SWIGTYPE_p_long_long swig_types[6] -#define SWIGTYPE_p_network_t swig_types[7] -#define SWIGTYPE_p_p_char swig_types[8] -#define SWIGTYPE_p_p_int swig_types[9] -#define SWIGTYPE_p_p_p_pixel_t swig_types[10] -#define SWIGTYPE_p_p_pixel_t swig_types[11] -#define SWIGTYPE_p_p_unsigned_long swig_types[12] -#define SWIGTYPE_p_pixel_t swig_types[13] -#define SWIGTYPE_p_short swig_types[14] -#define SWIGTYPE_p_signed___int64 swig_types[15] -#define SWIGTYPE_p_signed_char swig_types[16] -#define SWIGTYPE_p_unsigned___int64 swig_types[17] -#define SWIGTYPE_p_unsigned_char swig_types[18] -#define SWIGTYPE_p_unsigned_int swig_types[19] -#define SWIGTYPE_p_unsigned_long swig_types[20] -#define SWIGTYPE_p_unsigned_long_long swig_types[21] -#define SWIGTYPE_p_unsigned_short swig_types[22] -static swig_type_info *swig_types[24]; -static swig_module_info swig_module = {swig_types, 23, 0, 0, 0, 0}; -#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) -#define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) - -/* -------- TYPES TABLE (END) -------- */ - -#ifdef SWIG_TypeQuery -# undef SWIG_TypeQuery -#endif -#define SWIG_TypeQuery SWIG_Python_TypeQuery - -/*----------------------------------------------- - @(target):= _EggNetDriverCore.so - ------------------------------------------------*/ -#if PY_VERSION_HEX >= 0x03000000 -# define SWIG_init PyInit__EggNetDriverCore - -#else -# define SWIG_init init_EggNetDriverCore - -#endif -#define SWIG_name "_EggNetDriverCore" - -#define SWIGVERSION 0x040001 -#define SWIG_VERSION SWIGVERSION - - -#define SWIG_as_voidptr(a) (void *)((const void *)(a)) -#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),(void**)(a)) - - - #define SWIG_FILE_WITH_INIT // This has to be declared so the %init block gets called - #include "eggnet.h" - #include - #include - - -#include // Use the C99 official header - - -#ifndef SWIG_FILE_WITH_INIT -#define NO_IMPORT_ARRAY -#endif -#include "stdio.h" -#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION -#include - - -SWIGINTERNINLINE PyObject* - SWIG_From_int (int value) -{ - return PyInt_FromLong((long) value); -} - - -SWIGINTERN swig_type_info* -SWIG_pchar_descriptor(void) -{ - static int init = 0; - static swig_type_info* info = 0; - if (!init) { - info = SWIG_TypeQuery("_p_char"); - init = 1; - } - return info; -} - - -SWIGINTERN int -SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc) -{ -#if PY_VERSION_HEX>=0x03000000 -#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) - if (PyBytes_Check(obj)) -#else - if (PyUnicode_Check(obj)) -#endif -#else - if (PyString_Check(obj)) -#endif - { - char *cstr; Py_ssize_t len; - int ret = SWIG_OK; -#if PY_VERSION_HEX>=0x03000000 -#if !defined(SWIG_PYTHON_STRICT_BYTE_CHAR) - if (!alloc && cptr) { - /* We can't allow converting without allocation, since the internal - representation of string in Python 3 is UCS-2/UCS-4 but we require - a UTF-8 representation. - TODO(bhy) More detailed explanation */ - return SWIG_RuntimeError; - } - obj = PyUnicode_AsUTF8String(obj); - if (!obj) - return SWIG_TypeError; - if (alloc) - *alloc = SWIG_NEWOBJ; -#endif - PyBytes_AsStringAndSize(obj, &cstr, &len); -#else - PyString_AsStringAndSize(obj, &cstr, &len); -#endif - if (cptr) { - if (alloc) { - if (*alloc == SWIG_NEWOBJ) { - *cptr = (char *)memcpy(malloc((len + 1)*sizeof(char)), cstr, sizeof(char)*(len + 1)); - *alloc = SWIG_NEWOBJ; - } else { - *cptr = cstr; - *alloc = SWIG_OLDOBJ; - } - } else { -#if PY_VERSION_HEX>=0x03000000 -#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) - *cptr = PyBytes_AsString(obj); -#else - assert(0); /* Should never reach here with Unicode strings in Python 3 */ -#endif -#else - *cptr = SWIG_Python_str_AsChar(obj); - if (!*cptr) - ret = SWIG_TypeError; -#endif - } - } - if (psize) *psize = len + 1; -#if PY_VERSION_HEX>=0x03000000 && !defined(SWIG_PYTHON_STRICT_BYTE_CHAR) - Py_XDECREF(obj); -#endif - return ret; - } else { -#if defined(SWIG_PYTHON_2_UNICODE) -#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) -#error "Cannot use both SWIG_PYTHON_2_UNICODE and SWIG_PYTHON_STRICT_BYTE_CHAR at once" -#endif -#if PY_VERSION_HEX<0x03000000 - if (PyUnicode_Check(obj)) { - char *cstr; Py_ssize_t len; - if (!alloc && cptr) { - return SWIG_RuntimeError; - } - obj = PyUnicode_AsUTF8String(obj); - if (!obj) - return SWIG_TypeError; - if (PyString_AsStringAndSize(obj, &cstr, &len) != -1) { - if (cptr) { - if (alloc) *alloc = SWIG_NEWOBJ; - *cptr = (char *)memcpy(malloc((len + 1)*sizeof(char)), cstr, sizeof(char)*(len + 1)); - } - if (psize) *psize = len + 1; - - Py_XDECREF(obj); - return SWIG_OK; - } else { - Py_XDECREF(obj); - } - } -#endif -#endif - - swig_type_info* pchar_descriptor = SWIG_pchar_descriptor(); - if (pchar_descriptor) { - void* vptr = 0; - if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) { - if (cptr) *cptr = (char *) vptr; - if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0; - if (alloc) *alloc = SWIG_OLDOBJ; - return SWIG_OK; - } - } - } - return SWIG_TypeError; -} - - - - - -#if NPY_API_VERSION < 0x00000007 -#define NPY_ARRAY_DEFAULT NPY_DEFAULT -#define NPY_ARRAY_FARRAY NPY_FARRAY -#define NPY_FORTRANORDER NPY_FORTRAN -#endif - - -/* Macros to extract array attributes. - */ -#if NPY_API_VERSION < 0x00000007 -#define is_array(a) ((a) && PyArray_Check((PyArrayObject*)a)) -#define array_type(a) (int)(PyArray_TYPE((PyArrayObject*)a)) -#define array_numdims(a) (((PyArrayObject*)a)->nd) -#define array_dimensions(a) (((PyArrayObject*)a)->dimensions) -#define array_size(a,i) (((PyArrayObject*)a)->dimensions[i]) -#define array_strides(a) (((PyArrayObject*)a)->strides) -#define array_stride(a,i) (((PyArrayObject*)a)->strides[i]) -#define array_data(a) (((PyArrayObject*)a)->data) -#define array_descr(a) (((PyArrayObject*)a)->descr) -#define array_flags(a) (((PyArrayObject*)a)->flags) -#define array_clearflags(a,f) (((PyArrayObject*)a)->flags) &= ~f -#define array_enableflags(a,f) (((PyArrayObject*)a)->flags) = f -#define array_is_fortran(a) (PyArray_ISFORTRAN((PyArrayObject*)a)) -#else -#define is_array(a) ((a) && PyArray_Check(a)) -#define array_type(a) PyArray_TYPE((PyArrayObject*)a) -#define array_numdims(a) PyArray_NDIM((PyArrayObject*)a) -#define array_dimensions(a) PyArray_DIMS((PyArrayObject*)a) -#define array_strides(a) PyArray_STRIDES((PyArrayObject*)a) -#define array_stride(a,i) PyArray_STRIDE((PyArrayObject*)a,i) -#define array_size(a,i) PyArray_DIM((PyArrayObject*)a,i) -#define array_data(a) PyArray_DATA((PyArrayObject*)a) -#define array_descr(a) PyArray_DESCR((PyArrayObject*)a) -#define array_flags(a) PyArray_FLAGS((PyArrayObject*)a) -#define array_enableflags(a,f) PyArray_ENABLEFLAGS((PyArrayObject*)a,f) -#define array_clearflags(a,f) PyArray_CLEARFLAGS((PyArrayObject*)a,f) -#define array_is_fortran(a) (PyArray_IS_F_CONTIGUOUS((PyArrayObject*)a)) -#endif -#define array_is_contiguous(a) (PyArray_ISCONTIGUOUS((PyArrayObject*)a)) -#define array_is_native(a) (PyArray_ISNOTSWAPPED((PyArrayObject*)a)) - - - /* Given a PyObject, return a string describing its type. - */ - const char* pytype_string(PyObject* py_obj) - { - if (py_obj == NULL ) return "C NULL value"; - if (py_obj == Py_None ) return "Python None" ; - if (PyCallable_Check(py_obj)) return "callable" ; - if (PyString_Check( py_obj)) return "string" ; - if (PyInt_Check( py_obj)) return "int" ; - if (PyFloat_Check( py_obj)) return "float" ; - if (PyDict_Check( py_obj)) return "dict" ; - if (PyList_Check( py_obj)) return "list" ; - if (PyTuple_Check( py_obj)) return "tuple" ; -#if PY_MAJOR_VERSION < 3 - if (PyFile_Check( py_obj)) return "file" ; - if (PyModule_Check( py_obj)) return "module" ; - if (PyInstance_Check(py_obj)) return "instance" ; -#endif - - return "unknown type"; - } - - /* Given a NumPy typecode, return a string describing the type. - */ - const char* typecode_string(int typecode) - { - static const char* type_names[25] = {"bool", - "byte", - "unsigned byte", - "short", - "unsigned short", - "int", - "unsigned int", - "long", - "unsigned long", - "long long", - "unsigned long long", - "float", - "double", - "long double", - "complex float", - "complex double", - "complex long double", - "object", - "string", - "unicode", - "void", - "ntypes", - "notype", - "char", - "unknown"}; - return typecode < 24 ? type_names[typecode] : type_names[24]; - } - - /* Make sure input has correct numpy type. This now just calls - PyArray_EquivTypenums(). - */ - int type_match(int actual_type, - int desired_type) - { - return PyArray_EquivTypenums(actual_type, desired_type); - } - -#ifdef SWIGPY_USE_CAPSULE - void free_cap(PyObject * cap) - { - void* array = (void*) PyCapsule_GetPointer(cap,SWIGPY_CAPSULE_NAME); - if (array != NULL) free(array); - } -#endif - - - - - /* Given a PyObject pointer, cast it to a PyArrayObject pointer if - * legal. If not, set the python error string appropriately and - * return NULL. - */ - PyArrayObject* obj_to_array_no_conversion(PyObject* input, - int typecode) - { - PyArrayObject* ary = NULL; - if (is_array(input) && (typecode == NPY_NOTYPE || - PyArray_EquivTypenums(array_type(input), typecode))) - { - ary = (PyArrayObject*) input; - } - else if is_array(input) - { - const char* desired_type = typecode_string(typecode); - const char* actual_type = typecode_string(array_type(input)); - PyErr_Format(PyExc_TypeError, - "Array of type '%s' required. Array of type '%s' given", - desired_type, actual_type); - ary = NULL; - } - else - { - const char* desired_type = typecode_string(typecode); - const char* actual_type = pytype_string(input); - PyErr_Format(PyExc_TypeError, - "Array of type '%s' required. A '%s' was given", - desired_type, - actual_type); - ary = NULL; - } - return ary; - } - - /* Convert the given PyObject to a NumPy array with the given - * typecode. On success, return a valid PyArrayObject* with the - * correct type. On failure, the python error string will be set and - * the routine returns NULL. - */ - PyArrayObject* obj_to_array_allow_conversion(PyObject* input, - int typecode, - int* is_new_object) - { - PyArrayObject* ary = NULL; - PyObject* py_obj; - if (is_array(input) && (typecode == NPY_NOTYPE || - PyArray_EquivTypenums(array_type(input),typecode))) - { - ary = (PyArrayObject*) input; - *is_new_object = 0; - } - else - { - py_obj = PyArray_FROMANY(input, typecode, 0, 0, NPY_ARRAY_DEFAULT); - /* If NULL, PyArray_FromObject will have set python error value.*/ - ary = (PyArrayObject*) py_obj; - *is_new_object = 1; - } - return ary; - } - - /* Given a PyArrayObject, check to see if it is contiguous. If so, - * return the input pointer and flag it as not a new object. If it is - * not contiguous, create a new PyArrayObject using the original data, - * flag it as a new object and return the pointer. - */ - PyArrayObject* make_contiguous(PyArrayObject* ary, - int* is_new_object, - int min_dims, - int max_dims) - { - PyArrayObject* result; - if (array_is_contiguous(ary)) - { - result = ary; - *is_new_object = 0; - } - else - { - result = (PyArrayObject*) PyArray_ContiguousFromObject((PyObject*)ary, - array_type(ary), - min_dims, - max_dims); - *is_new_object = 1; - } - return result; - } - - /* Given a PyArrayObject, check to see if it is Fortran-contiguous. - * If so, return the input pointer, but do not flag it as not a new - * object. If it is not Fortran-contiguous, create a new - * PyArrayObject using the original data, flag it as a new object - * and return the pointer. - */ - PyArrayObject* make_fortran(PyArrayObject* ary, - int* is_new_object) - { - PyArrayObject* result; - if (array_is_fortran(ary)) - { - result = ary; - *is_new_object = 0; - } - else - { - Py_INCREF(array_descr(ary)); - result = (PyArrayObject*) PyArray_FromArray(ary, - array_descr(ary), -#if NPY_API_VERSION < 0x00000007 - NPY_FORTRANORDER); -#else - NPY_ARRAY_F_CONTIGUOUS); -#endif - *is_new_object = 1; - } - return result; - } - - /* Convert a given PyObject to a contiguous PyArrayObject of the - * specified type. If the input object is not a contiguous - * PyArrayObject, a new one will be created and the new object flag - * will be set. - */ - PyArrayObject* obj_to_array_contiguous_allow_conversion(PyObject* input, - int typecode, - int* is_new_object) - { - int is_new1 = 0; - int is_new2 = 0; - PyArrayObject* ary2; - PyArrayObject* ary1 = obj_to_array_allow_conversion(input, - typecode, - &is_new1); - if (ary1) - { - ary2 = make_contiguous(ary1, &is_new2, 0, 0); - if ( is_new1 && is_new2) - { - Py_DECREF(ary1); - } - ary1 = ary2; - } - *is_new_object = is_new1 || is_new2; - return ary1; - } - - /* Convert a given PyObject to a Fortran-ordered PyArrayObject of the - * specified type. If the input object is not a Fortran-ordered - * PyArrayObject, a new one will be created and the new object flag - * will be set. - */ - PyArrayObject* obj_to_array_fortran_allow_conversion(PyObject* input, - int typecode, - int* is_new_object) - { - int is_new1 = 0; - int is_new2 = 0; - PyArrayObject* ary2; - PyArrayObject* ary1 = obj_to_array_allow_conversion(input, - typecode, - &is_new1); - if (ary1) - { - ary2 = make_fortran(ary1, &is_new2); - if (is_new1 && is_new2) - { - Py_DECREF(ary1); - } - ary1 = ary2; - } - *is_new_object = is_new1 || is_new2; - return ary1; - } - - - /* Test whether a python object is contiguous. If array is - * contiguous, return 1. Otherwise, set the python error string and - * return 0. - */ - int require_contiguous(PyArrayObject* ary) - { - int contiguous = 1; - if (!array_is_contiguous(ary)) - { - PyErr_SetString(PyExc_TypeError, - "Array must be contiguous. A non-contiguous array was given"); - contiguous = 0; - } - return contiguous; - } - - /* Test whether a python object is (C_ or F_) contiguous. If array is - * contiguous, return 1. Otherwise, set the python error string and - * return 0. - */ - int require_c_or_f_contiguous(PyArrayObject* ary) - { - int contiguous = 1; - if (!(array_is_contiguous(ary) || array_is_fortran(ary))) - { - PyErr_SetString(PyExc_TypeError, - "Array must be contiguous (C_ or F_). A non-contiguous array was given"); - contiguous = 0; - } - return contiguous; - } - - /* Require that a numpy array is not byte-swapped. If the array is - * not byte-swapped, return 1. Otherwise, set the python error string - * and return 0. - */ - int require_native(PyArrayObject* ary) - { - int native = 1; - if (!array_is_native(ary)) - { - PyErr_SetString(PyExc_TypeError, - "Array must have native byteorder. " - "A byte-swapped array was given"); - native = 0; - } - return native; - } - - /* Require the given PyArrayObject to have a specified number of - * dimensions. If the array has the specified number of dimensions, - * return 1. Otherwise, set the python error string and return 0. - */ - int require_dimensions(PyArrayObject* ary, - int exact_dimensions) - { - int success = 1; - if (array_numdims(ary) != exact_dimensions) - { - PyErr_Format(PyExc_TypeError, - "Array must have %d dimensions. Given array has %d dimensions", - exact_dimensions, - array_numdims(ary)); - success = 0; - } - return success; - } - - /* Require the given PyArrayObject to have one of a list of specified - * number of dimensions. If the array has one of the specified number - * of dimensions, return 1. Otherwise, set the python error string - * and return 0. - */ - int require_dimensions_n(PyArrayObject* ary, - int* exact_dimensions, - int n) - { - int success = 0; - int i; - char dims_str[255] = ""; - char s[255]; - for (i = 0; i < n && !success; i++) - { - if (array_numdims(ary) == exact_dimensions[i]) - { - success = 1; - } - } - if (!success) - { - for (i = 0; i < n-1; i++) - { - sprintf(s, "%d, ", exact_dimensions[i]); - strcat(dims_str,s); - } - sprintf(s, " or %d", exact_dimensions[n-1]); - strcat(dims_str,s); - PyErr_Format(PyExc_TypeError, - "Array must have %s dimensions. Given array has %d dimensions", - dims_str, - array_numdims(ary)); - } - return success; - } - - /* Require the given PyArrayObject to have a specified shape. If the - * array has the specified shape, return 1. Otherwise, set the python - * error string and return 0. - */ - int require_size(PyArrayObject* ary, - npy_intp* size, - int n) - { - int i; - int success = 1; - size_t len; - char desired_dims[255] = "["; - char s[255]; - char actual_dims[255] = "["; - for(i=0; i < n;i++) - { - if (size[i] != -1 && size[i] != array_size(ary,i)) - { - success = 0; - } - } - if (!success) - { - for (i = 0; i < n; i++) - { - if (size[i] == -1) - { - sprintf(s, "*,"); - } - else - { - sprintf(s, "%ld,", (long int)size[i]); - } - strcat(desired_dims,s); - } - len = strlen(desired_dims); - desired_dims[len-1] = ']'; - for (i = 0; i < n; i++) - { - sprintf(s, "%ld,", (long int)array_size(ary,i)); - strcat(actual_dims,s); - } - len = strlen(actual_dims); - actual_dims[len-1] = ']'; - PyErr_Format(PyExc_TypeError, - "Array must have shape of %s. Given array has shape of %s", - desired_dims, - actual_dims); - } - return success; - } - - /* Require the given PyArrayObject to to be Fortran ordered. If the - * the PyArrayObject is already Fortran ordered, do nothing. Else, - * set the Fortran ordering flag and recompute the strides. - */ - int require_fortran(PyArrayObject* ary) - { - int success = 1; - int nd = array_numdims(ary); - int i; - npy_intp * strides = array_strides(ary); - if (array_is_fortran(ary)) return success; - int n_non_one = 0; - /* Set the Fortran ordered flag */ - const npy_intp *dims = array_dimensions(ary); - for (i=0; i < nd; ++i) - n_non_one += (dims[i] != 1) ? 1 : 0; - if (n_non_one > 1) - array_clearflags(ary,NPY_ARRAY_CARRAY); - array_enableflags(ary,NPY_ARRAY_FARRAY); - /* Recompute the strides */ - strides[0] = strides[nd-1]; - for (i=1; i < nd; ++i) - strides[i] = strides[i-1] * array_size(ary,i-1); - return success; - } - - - - -SWIGINTERNINLINE PyObject * -SWIG_FromCharPtrAndSize(const char* carray, size_t size) -{ - if (carray) { - if (size > INT_MAX) { - swig_type_info* pchar_descriptor = SWIG_pchar_descriptor(); - return pchar_descriptor ? - SWIG_InternalNewPointerObj((char *)(carray), pchar_descriptor, 0) : SWIG_Py_Void(); - } else { -#if PY_VERSION_HEX >= 0x03000000 -#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) - return PyBytes_FromStringAndSize(carray, (Py_ssize_t)(size)); -#else - return PyUnicode_DecodeUTF8(carray, (Py_ssize_t)(size), "surrogateescape"); -#endif -#else - return PyString_FromStringAndSize(carray, (Py_ssize_t)(size)); -#endif - } - } else { - return SWIG_Py_Void(); - } -} - - -SWIGINTERNINLINE PyObject * -SWIG_FromCharPtr(const char *cptr) -{ - return SWIG_FromCharPtrAndSize(cptr, (cptr ? strlen(cptr) : 0)); -} - - -#include -#if !defined(SWIG_NO_LLONG_MAX) -# if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__) -# define LLONG_MAX __LONG_LONG_MAX__ -# define LLONG_MIN (-LLONG_MAX - 1LL) -# define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL) -# endif -#endif - - -SWIGINTERN int -SWIG_AsVal_double (PyObject *obj, double *val) -{ - int res = SWIG_TypeError; - if (PyFloat_Check(obj)) { - if (val) *val = PyFloat_AsDouble(obj); - return SWIG_OK; -#if PY_VERSION_HEX < 0x03000000 - } else if (PyInt_Check(obj)) { - if (val) *val = (double) PyInt_AsLong(obj); - return SWIG_OK; -#endif - } else if (PyLong_Check(obj)) { - double v = PyLong_AsDouble(obj); - if (!PyErr_Occurred()) { - if (val) *val = v; - return SWIG_OK; - } else { - PyErr_Clear(); - } - } -#ifdef SWIG_PYTHON_CAST_MODE - { - int dispatch = 0; - double d = PyFloat_AsDouble(obj); - if (!PyErr_Occurred()) { - if (val) *val = d; - return SWIG_AddCast(SWIG_OK); - } else { - PyErr_Clear(); - } - if (!dispatch) { - long v = PyLong_AsLong(obj); - if (!PyErr_Occurred()) { - if (val) *val = v; - return SWIG_AddCast(SWIG_AddCast(SWIG_OK)); - } else { - PyErr_Clear(); - } - } - } -#endif - return res; -} - - -#include - - -#include - - -SWIGINTERNINLINE int -SWIG_CanCastAsInteger(double *d, double min, double max) { - double x = *d; - if ((min <= x && x <= max)) { - double fx = floor(x); - double cx = ceil(x); - double rd = ((x - fx) < 0.5) ? fx : cx; /* simple rint */ - if ((errno == EDOM) || (errno == ERANGE)) { - errno = 0; - } else { - double summ, reps, diff; - if (rd < x) { - diff = x - rd; - } else if (rd > x) { - diff = rd - x; - } else { - return 1; - } - summ = rd + x; - reps = diff/summ; - if (reps < 8*DBL_EPSILON) { - *d = rd; - return 1; - } - } - } - return 0; -} - - -SWIGINTERN int -SWIG_AsVal_unsigned_SS_long (PyObject *obj, unsigned long *val) -{ -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(obj)) { - long v = PyInt_AsLong(obj); - if (v >= 0) { - if (val) *val = v; - return SWIG_OK; - } else { - return SWIG_OverflowError; - } - } else -#endif - if (PyLong_Check(obj)) { - unsigned long v = PyLong_AsUnsignedLong(obj); - if (!PyErr_Occurred()) { - if (val) *val = v; - return SWIG_OK; - } else { - PyErr_Clear(); - return SWIG_OverflowError; - } - } -#ifdef SWIG_PYTHON_CAST_MODE - { - int dispatch = 0; - unsigned long v = PyLong_AsUnsignedLong(obj); - if (!PyErr_Occurred()) { - if (val) *val = v; - return SWIG_AddCast(SWIG_OK); - } else { - PyErr_Clear(); - } - if (!dispatch) { - double d; - int res = SWIG_AddCast(SWIG_AsVal_double (obj,&d)); - if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, ULONG_MAX)) { - if (val) *val = (unsigned long)(d); - return res; - } - } - } -#endif - return SWIG_TypeError; -} - - -SWIGINTERN int -SWIG_AsVal_unsigned_SS_char (PyObject * obj, unsigned char *val) -{ - unsigned long v; - int res = SWIG_AsVal_unsigned_SS_long (obj, &v); - if (SWIG_IsOK(res)) { - if ((v > UCHAR_MAX)) { - return SWIG_OverflowError; - } else { - if (val) *val = (unsigned char)(v); - } - } - return res; -} - - -SWIGINTERN int -SWIG_AsVal_unsigned_SS_short (PyObject * obj, unsigned short *val) -{ - unsigned long v; - int res = SWIG_AsVal_unsigned_SS_long (obj, &v); - if (SWIG_IsOK(res)) { - if ((v > USHRT_MAX)) { - return SWIG_OverflowError; - } else { - if (val) *val = (unsigned short)(v); - } - } - return res; -} - -#ifdef __cplusplus -extern "C" { -#endif -SWIGINTERN PyObject *_wrap_init_network(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - char *arg1 = (char *) 0 ; - struct network_t *arg2 = (struct network_t *) 0 ; - int res1 ; - char *buf1 = 0 ; - int alloc1 = 0 ; - void *argp2 = 0 ; - int res2 = 0 ; - PyObject *swig_obj[2] ; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "init_network", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_AsCharPtrAndSize(swig_obj[0], &buf1, NULL, &alloc1); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "init_network" "', argument " "1"" of type '" "char const *""'"); - } - arg1 = (char *)(buf1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_network_t, 0 | 0 ); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "init_network" "', argument " "2"" of type '" "struct network_t *""'"); - } - arg2 = (struct network_t *)(argp2); - result = egg_init_network((char const *)arg1,arg2); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - if (alloc1 == SWIG_NEWOBJ) free((char*)buf1); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - if (alloc1 == SWIG_NEWOBJ) free((char*)buf1); - return NULL; -} - - -SWIGINTERN PyObject *_wrap_close_network(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "close_network", 0, 0, 0)) SWIG_fail; - result = egg_close_network(); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_forward(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - uint8_t *arg1 = (uint8_t *) 0 ; - int arg2 ; - int arg3 ; - int arg4 ; - int arg5 ; - int **arg6 = (int **) 0 ; - int *arg7 = (int *) 0 ; - int *arg8 = (int *) 0 ; - PyArrayObject *array1 = NULL ; - int is_new_object1 = 0 ; - int *data_temp6 = NULL ; - int dim1_temp6 ; - int dim2_temp6 ; - PyObject *swig_obj[1] ; - egg_error_t result; - - { - arg6 = &data_temp6; - arg7 = &dim1_temp6; - arg8 = &dim2_temp6; - } - if (!args) SWIG_fail; - swig_obj[0] = args; - { - npy_intp size[4] = { - -1, -1, -1, -1 - }; - array1 = obj_to_array_contiguous_allow_conversion(swig_obj[0], NPY_UINT8, - &is_new_object1); - if (!array1 || !require_dimensions(array1, 4) || - !require_size(array1, size, 4)) SWIG_fail; - arg1 = (uint8_t*) array_data(array1); - arg2 = (int) array_size(array1,0); - arg3 = (int) array_size(array1,1); - arg4 = (int) array_size(array1,2); - arg5 = (int) array_size(array1,3); - } - result = egg_forward((unsigned char const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - { - npy_intp dims[2] = { - *arg7, *arg8 - }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, NPY_INT, (void*)(*arg6)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - resultobj = SWIG_Python_AppendOutput(resultobj,obj); - } - { - if (is_new_object1 && array1) - { - Py_DECREF(array1); - } - } - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - { - if (is_new_object1 && array1) - { - Py_DECREF(array1); - } - } - return NULL; -} - - -SWIGINTERN PyObject *_wrap_print_err(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - egg_error_t arg1 ; - void *argp1 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - char *result = 0 ; - - if (!args) SWIG_fail; - swig_obj[0] = args; - { - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_egg_error_t, 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "print_err" "', argument " "1"" of type '" "egg_error_t""'"); - } - if (!argp1) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "print_err" "', argument " "1"" of type '" "egg_error_t""'"); - } else { - arg1 = *((egg_error_t *)(argp1)); - } - } - result = (char *)egg_print_err(arg1); - resultobj = SWIG_FromCharPtr((const char *)result); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_get_network_structure(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - struct network_t *arg1 = (struct network_t *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - egg_error_t result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_network_t, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "get_network_structure" "', argument " "1"" of type '" "struct network_t *""'"); - } - arg1 = (struct network_t *)(argp1); - result = get_network_structure(arg1); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_print_network(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "print_network", 0, 0, 0)) SWIG_fail; - result = print_network(); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_activate_debug_mode(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "activate_debug_mode", 0, 0, 0)) SWIG_fail; - result = activate_debug_mode(); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_read_pixel(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - pixel_t *arg1 = (pixel_t *) 0 ; - uint8_t arg2 ; - uint16_t arg3 ; - uint16_t arg4 ; - uint8_t arg5 ; - void *argp1 = 0 ; - int res1 = 0 ; - unsigned char val2 ; - int ecode2 = 0 ; - unsigned short val3 ; - int ecode3 = 0 ; - unsigned short val4 ; - int ecode4 = 0 ; - unsigned char val5 ; - int ecode5 = 0 ; - PyObject *swig_obj[5] ; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "read_pixel", 5, 5, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_pixel_t, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "read_pixel" "', argument " "1"" of type '" "pixel_t const *""'"); - } - arg1 = (pixel_t *)(argp1); - ecode2 = SWIG_AsVal_unsigned_SS_char(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "read_pixel" "', argument " "2"" of type '" "uint8_t""'"); - } - arg2 = (uint8_t)(val2); - ecode3 = SWIG_AsVal_unsigned_SS_short(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "read_pixel" "', argument " "3"" of type '" "uint16_t""'"); - } - arg3 = (uint16_t)(val3); - ecode4 = SWIG_AsVal_unsigned_SS_short(swig_obj[3], &val4); - if (!SWIG_IsOK(ecode4)) { - SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "read_pixel" "', argument " "4"" of type '" "uint16_t""'"); - } - arg4 = (uint16_t)(val4); - ecode5 = SWIG_AsVal_unsigned_SS_char(swig_obj[4], &val5); - if (!SWIG_IsOK(ecode5)) { - SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "read_pixel" "', argument " "5"" of type '" "uint8_t""'"); - } - arg5 = (uint8_t)(val5); - result = read_pixel((pixel_t const *)arg1,arg2,arg3,arg4,arg5); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_read_row(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - pixel_t **arg1 = (pixel_t **) 0 ; - uint8_t arg2 ; - uint16_t arg3 ; - uint8_t arg4 ; - void *argp1 = 0 ; - int res1 = 0 ; - unsigned char val2 ; - int ecode2 = 0 ; - unsigned short val3 ; - int ecode3 = 0 ; - unsigned char val4 ; - int ecode4 = 0 ; - PyObject *swig_obj[4] ; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "read_row", 4, 4, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_p_pixel_t, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "read_row" "', argument " "1"" of type '" "pixel_t const **""'"); - } - arg1 = (pixel_t **)(argp1); - ecode2 = SWIG_AsVal_unsigned_SS_char(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "read_row" "', argument " "2"" of type '" "uint8_t""'"); - } - arg2 = (uint8_t)(val2); - ecode3 = SWIG_AsVal_unsigned_SS_short(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "read_row" "', argument " "3"" of type '" "uint16_t""'"); - } - arg3 = (uint16_t)(val3); - ecode4 = SWIG_AsVal_unsigned_SS_char(swig_obj[3], &val4); - if (!SWIG_IsOK(ecode4)) { - SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "read_row" "', argument " "4"" of type '" "uint8_t""'"); - } - arg4 = (uint8_t)(val4); - result = read_row((pixel_t const **)arg1,arg2,arg3,arg4); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_read_channel(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - pixel_t **arg1 = (pixel_t **) 0 ; - uint8_t arg2 ; - uint8_t arg3 ; - void *argp1 = 0 ; - int res1 = 0 ; - unsigned char val2 ; - int ecode2 = 0 ; - unsigned char val3 ; - int ecode3 = 0 ; - PyObject *swig_obj[3] ; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "read_channel", 3, 3, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_p_pixel_t, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "read_channel" "', argument " "1"" of type '" "pixel_t const **""'"); - } - arg1 = (pixel_t **)(argp1); - ecode2 = SWIG_AsVal_unsigned_SS_char(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "read_channel" "', argument " "2"" of type '" "uint8_t""'"); - } - arg2 = (uint8_t)(val2); - ecode3 = SWIG_AsVal_unsigned_SS_char(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "read_channel" "', argument " "3"" of type '" "uint8_t""'"); - } - arg3 = (uint8_t)(val3); - result = read_channel((pixel_t const **)arg1,arg2,arg3); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_read_layer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - pixel_t ***arg1 = (pixel_t ***) 0 ; - uint8_t arg2 ; - void *argp1 = 0 ; - int res1 = 0 ; - unsigned char val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; - egg_error_t result; - - if (!SWIG_Python_UnpackTuple(args, "read_layer", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_p_p_pixel_t, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "read_layer" "', argument " "1"" of type '" "pixel_t const ***""'"); - } - arg1 = (pixel_t ***)(argp1); - ecode2 = SWIG_AsVal_unsigned_SS_char(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "read_layer" "', argument " "2"" of type '" "uint8_t""'"); - } - arg2 = (uint8_t)(val2); - result = read_layer((pixel_t const ***)arg1,arg2); - resultobj = SWIG_NewPointerObj((egg_error_t *)memcpy((egg_error_t *)calloc(1,sizeof(egg_error_t)),&result,sizeof(egg_error_t)), SWIGTYPE_p_egg_error_t, SWIG_POINTER_OWN | 0 ); - - // Apply a typemap to every function that has egg_error_t as a return value - // Check if it is 0 (no error) or otherwise trigger an exception in Python - if(result != EGG_ERROR_NONE) { - SWIG_exception(SWIG_RuntimeError, egg_print_err(result)); - } - resultobj = Py_None; // do not output anything - Py_INCREF(Py_None); // Py_None is a singleton so increment its reference if used. - - return resultobj; -fail: - return NULL; -} - - -static PyMethodDef SwigMethods[] = { - { "SWIG_PyInstanceMethod_New", SWIG_PyInstanceMethod_New, METH_O, NULL}, - { "init_network", _wrap_init_network, METH_VARARGS, NULL}, - { "close_network", _wrap_close_network, METH_NOARGS, NULL}, - { "forward", _wrap_forward, METH_O, NULL}, - { "print_err", _wrap_print_err, METH_O, NULL}, - { "get_network_structure", _wrap_get_network_structure, METH_O, NULL}, - { "print_network", _wrap_print_network, METH_NOARGS, NULL}, - { "activate_debug_mode", _wrap_activate_debug_mode, METH_NOARGS, NULL}, - { "read_pixel", _wrap_read_pixel, METH_VARARGS, NULL}, - { "read_row", _wrap_read_row, METH_VARARGS, NULL}, - { "read_channel", _wrap_read_channel, METH_VARARGS, NULL}, - { "read_layer", _wrap_read_layer, METH_VARARGS, NULL}, - { NULL, NULL, 0, NULL } -}; - -static PyMethodDef SwigMethods_proxydocs[] = { - { NULL, NULL, 0, NULL } -}; - - -/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ - -static swig_type_info _swigt__p___int64 = {"_p___int64", "__int64 *|LONGLONG *|LONG64 *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_char = {"_p_char", "CHAR *|TCHAR *|char *|CCHAR *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_egg_error_t = {"_p_egg_error_t", "egg_error_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_float = {"_p_float", "FLOAT *|float *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_int = {"_p_int", "BOOL *|INT32 *|intptr_t *|int *|INT *|int_least32_t *|int_fast32_t *|int32_t *|INT_PTR *|LONG32 *|int_fast16_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_long = {"_p_long", "SHANDLE_PTR *|LONG_PTR *|LONG *|HRESULT *|long *|SSIZE_T *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_long_long = {"_p_long_long", "int_least64_t *|int_fast64_t *|int64_t *|long long *|intmax_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_network_t = {"_p_network_t", "struct network_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_p_char = {"_p_p_char", "PTCH *|PCTSTR *|LPCTSTR *|LPTCH *|PUTSTR *|LPUTSTR *|PCUTSTR *|LPCUTSTR *|char **|PTSTR *|LPTSTR *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_p_int = {"_p_p_int", "int **", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_p_p_pixel_t = {"_p_p_p_pixel_t", "pixel_t ***", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_p_pixel_t = {"_p_p_pixel_t", "pixel_t **", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_p_unsigned_long = {"_p_p_unsigned_long", "unsigned long **|PLCID *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_pixel_t = {"_p_pixel_t", "pixel_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_short = {"_p_short", "HALF_PTR *|short *|SHORT *|int_least16_t *|int16_t *|INT16 *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_signed___int64 = {"_p_signed___int64", "INT64 *|signed __int64 *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_signed_char = {"_p_signed_char", "signed char *|INT8 *|int_least8_t *|int_fast8_t *|int8_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_unsigned___int64 = {"_p_unsigned___int64", "UINT64 *|DWORD64 *|unsigned __int64 *|DWORDLONG *|ULONGLONG *|ULONG64 *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "FCHAR *|unsigned char *|UCHAR *|byte_t *|BYTE *|TBYTE *|UINT8 *|uint_least8_t *|uint_fast8_t *|BOOLEAN *|uint8_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "UINT32 *|DWORD32 *|uintptr_t *|uint_least32_t *|uint_fast32_t *|UINT *|uint32_t *|unsigned int *|UINT_PTR *|ULONG32 *|uint_fast16_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_unsigned_long = {"_p_unsigned_long", "HANDLE_PTR *|DWORD *|ULONG_PTR *|DWORD_PTR *|FLONG *|unsigned long *|ULONG *|SIZE_T *|LCID *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_unsigned_long_long = {"_p_unsigned_long_long", "uint_least64_t *|uint_fast64_t *|uint64_t *|unsigned long long *|uintmax_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_unsigned_short = {"_p_unsigned_short", "WORD *|UHALF_PTR *|unsigned short *|USHORT *|FSHORT *|uint_least16_t *|LANGID *|UINT16 *|uint16_t *", 0, 0, (void*)0, 0}; - -static swig_type_info *swig_type_initial[] = { - &_swigt__p___int64, - &_swigt__p_char, - &_swigt__p_egg_error_t, - &_swigt__p_float, - &_swigt__p_int, - &_swigt__p_long, - &_swigt__p_long_long, - &_swigt__p_network_t, - &_swigt__p_p_char, - &_swigt__p_p_int, - &_swigt__p_p_p_pixel_t, - &_swigt__p_p_pixel_t, - &_swigt__p_p_unsigned_long, - &_swigt__p_pixel_t, - &_swigt__p_short, - &_swigt__p_signed___int64, - &_swigt__p_signed_char, - &_swigt__p_unsigned___int64, - &_swigt__p_unsigned_char, - &_swigt__p_unsigned_int, - &_swigt__p_unsigned_long, - &_swigt__p_unsigned_long_long, - &_swigt__p_unsigned_short, -}; - -static swig_cast_info _swigc__p___int64[] = { {&_swigt__p___int64, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_egg_error_t[] = { {&_swigt__p_egg_error_t, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_float[] = { {&_swigt__p_float, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_long[] = { {&_swigt__p_long, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_long_long[] = { {&_swigt__p_long_long, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_network_t[] = { {&_swigt__p_network_t, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_p_char[] = { {&_swigt__p_p_char, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_p_int[] = { {&_swigt__p_p_int, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_p_p_pixel_t[] = { {&_swigt__p_p_p_pixel_t, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_p_pixel_t[] = { {&_swigt__p_p_pixel_t, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_p_unsigned_long[] = { {&_swigt__p_p_unsigned_long, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_pixel_t[] = { {&_swigt__p_pixel_t, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_short[] = { {&_swigt__p_short, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_signed___int64[] = { {&_swigt__p_signed___int64, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_signed_char[] = { {&_swigt__p_signed_char, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_unsigned___int64[] = { {&_swigt__p_unsigned___int64, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_unsigned_long[] = { {&_swigt__p_unsigned_long, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_unsigned_long_long[] = { {&_swigt__p_unsigned_long_long, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_unsigned_short[] = { {&_swigt__p_unsigned_short, 0, 0, 0},{0, 0, 0, 0}}; - -static swig_cast_info *swig_cast_initial[] = { - _swigc__p___int64, - _swigc__p_char, - _swigc__p_egg_error_t, - _swigc__p_float, - _swigc__p_int, - _swigc__p_long, - _swigc__p_long_long, - _swigc__p_network_t, - _swigc__p_p_char, - _swigc__p_p_int, - _swigc__p_p_p_pixel_t, - _swigc__p_p_pixel_t, - _swigc__p_p_unsigned_long, - _swigc__p_pixel_t, - _swigc__p_short, - _swigc__p_signed___int64, - _swigc__p_signed_char, - _swigc__p_unsigned___int64, - _swigc__p_unsigned_char, - _swigc__p_unsigned_int, - _swigc__p_unsigned_long, - _swigc__p_unsigned_long_long, - _swigc__p_unsigned_short, -}; - - -/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ - -static swig_const_info swig_const_table[] = { -{0, 0, 0, 0.0, 0, 0}}; - -#ifdef __cplusplus -} -#endif -/* ----------------------------------------------------------------------------- - * Type initialization: - * This problem is tough by the requirement that no dynamic - * memory is used. Also, since swig_type_info structures store pointers to - * swig_cast_info structures and swig_cast_info structures store pointers back - * to swig_type_info structures, we need some lookup code at initialization. - * The idea is that swig generates all the structures that are needed. - * The runtime then collects these partially filled structures. - * The SWIG_InitializeModule function takes these initial arrays out of - * swig_module, and does all the lookup, filling in the swig_module.types - * array with the correct data and linking the correct swig_cast_info - * structures together. - * - * The generated swig_type_info structures are assigned statically to an initial - * array. We just loop through that array, and handle each type individually. - * First we lookup if this type has been already loaded, and if so, use the - * loaded structure instead of the generated one. Then we have to fill in the - * cast linked list. The cast data is initially stored in something like a - * two-dimensional array. Each row corresponds to a type (there are the same - * number of rows as there are in the swig_type_initial array). Each entry in - * a column is one of the swig_cast_info structures for that type. - * The cast_initial array is actually an array of arrays, because each row has - * a variable number of columns. So to actually build the cast linked list, - * we find the array of casts associated with the type, and loop through it - * adding the casts to the list. The one last trick we need to do is making - * sure the type pointer in the swig_cast_info struct is correct. - * - * First off, we lookup the cast->type name to see if it is already loaded. - * There are three cases to handle: - * 1) If the cast->type has already been loaded AND the type we are adding - * casting info to has not been loaded (it is in this module), THEN we - * replace the cast->type pointer with the type pointer that has already - * been loaded. - * 2) If BOTH types (the one we are adding casting info to, and the - * cast->type) are loaded, THEN the cast info has already been loaded by - * the previous module so we just ignore it. - * 3) Finally, if cast->type has not already been loaded, then we add that - * swig_cast_info to the linked list (because the cast->type) pointer will - * be correct. - * ----------------------------------------------------------------------------- */ - -#ifdef __cplusplus -extern "C" { -#if 0 -} /* c-mode */ -#endif -#endif - -#if 0 -#define SWIGRUNTIME_DEBUG -#endif - - -SWIGRUNTIME void -SWIG_InitializeModule(void *clientdata) { - size_t i; - swig_module_info *module_head, *iter; - int init; - - /* check to see if the circular list has been setup, if not, set it up */ - if (swig_module.next==0) { - /* Initialize the swig_module */ - swig_module.type_initial = swig_type_initial; - swig_module.cast_initial = swig_cast_initial; - swig_module.next = &swig_module; - init = 1; - } else { - init = 0; - } - - /* Try and load any already created modules */ - module_head = SWIG_GetModule(clientdata); - if (!module_head) { - /* This is the first module loaded for this interpreter */ - /* so set the swig module into the interpreter */ - SWIG_SetModule(clientdata, &swig_module); - } else { - /* the interpreter has loaded a SWIG module, but has it loaded this one? */ - iter=module_head; - do { - if (iter==&swig_module) { - /* Our module is already in the list, so there's nothing more to do. */ - return; - } - iter=iter->next; - } while (iter!= module_head); - - /* otherwise we must add our module into the list */ - swig_module.next = module_head->next; - module_head->next = &swig_module; - } - - /* When multiple interpreters are used, a module could have already been initialized in - a different interpreter, but not yet have a pointer in this interpreter. - In this case, we do not want to continue adding types... everything should be - set up already */ - if (init == 0) return; - - /* Now work on filling in swig_module.types */ -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: size %lu\n", (unsigned long)swig_module.size); -#endif - for (i = 0; i < swig_module.size; ++i) { - swig_type_info *type = 0; - swig_type_info *ret; - swig_cast_info *cast; - -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name); -#endif - - /* if there is another module already loaded */ - if (swig_module.next != &swig_module) { - type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name); - } - if (type) { - /* Overwrite clientdata field */ -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: found type %s\n", type->name); -#endif - if (swig_module.type_initial[i]->clientdata) { - type->clientdata = swig_module.type_initial[i]->clientdata; -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name); -#endif - } - } else { - type = swig_module.type_initial[i]; - } - - /* Insert casting types */ - cast = swig_module.cast_initial[i]; - while (cast->type) { - /* Don't need to add information already in the list */ - ret = 0; -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: look cast %s\n", cast->type->name); -#endif - if (swig_module.next != &swig_module) { - ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name); -#ifdef SWIGRUNTIME_DEBUG - if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name); -#endif - } - if (ret) { - if (type == swig_module.type_initial[i]) { -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: skip old type %s\n", ret->name); -#endif - cast->type = ret; - ret = 0; - } else { - /* Check for casting already in the list */ - swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type); -#ifdef SWIGRUNTIME_DEBUG - if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name); -#endif - if (!ocast) ret = 0; - } - } - - if (!ret) { -#ifdef SWIGRUNTIME_DEBUG - printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name); -#endif - if (type->cast) { - type->cast->prev = cast; - cast->next = type->cast; - } - type->cast = cast; - } - cast++; - } - /* Set entry in modules->types array equal to the type */ - swig_module.types[i] = type; - } - swig_module.types[i] = 0; - -#ifdef SWIGRUNTIME_DEBUG - printf("**** SWIG_InitializeModule: Cast List ******\n"); - for (i = 0; i < swig_module.size; ++i) { - int j = 0; - swig_cast_info *cast = swig_module.cast_initial[i]; - printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name); - while (cast->type) { - printf("SWIG_InitializeModule: cast type %s\n", cast->type->name); - cast++; - ++j; - } - printf("---- Total casts: %d\n",j); - } - printf("**** SWIG_InitializeModule: Cast List ******\n"); -#endif -} - -/* This function will propagate the clientdata field of type to -* any new swig_type_info structures that have been added into the list -* of equivalent types. It is like calling -* SWIG_TypeClientData(type, clientdata) a second time. -*/ -SWIGRUNTIME void -SWIG_PropagateClientData(void) { - size_t i; - swig_cast_info *equiv; - static int init_run = 0; - - if (init_run) return; - init_run = 1; - - for (i = 0; i < swig_module.size; i++) { - if (swig_module.types[i]->clientdata) { - equiv = swig_module.types[i]->cast; - while (equiv) { - if (!equiv->converter) { - if (equiv->type && !equiv->type->clientdata) - SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata); - } - equiv = equiv->next; - } - } - } -} - -#ifdef __cplusplus -#if 0 -{ - /* c-mode */ -#endif -} -#endif - - - -#ifdef __cplusplus -extern "C" { -#endif - - /* Python-specific SWIG API */ -#define SWIG_newvarlink() SWIG_Python_newvarlink() -#define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr) -#define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants) - - /* ----------------------------------------------------------------------------- - * global variable support code. - * ----------------------------------------------------------------------------- */ - - typedef struct swig_globalvar { - char *name; /* Name of global variable */ - PyObject *(*get_attr)(void); /* Return the current value */ - int (*set_attr)(PyObject *); /* Set the value */ - struct swig_globalvar *next; - } swig_globalvar; - - typedef struct swig_varlinkobject { - PyObject_HEAD - swig_globalvar *vars; - } swig_varlinkobject; - - SWIGINTERN PyObject * - swig_varlink_repr(swig_varlinkobject *SWIGUNUSEDPARM(v)) { -#if PY_VERSION_HEX >= 0x03000000 - return PyUnicode_InternFromString(""); -#else - return PyString_FromString(""); -#endif - } - - SWIGINTERN PyObject * - swig_varlink_str(swig_varlinkobject *v) { -#if PY_VERSION_HEX >= 0x03000000 - PyObject *str = PyUnicode_InternFromString("("); - PyObject *tail; - PyObject *joined; - swig_globalvar *var; - for (var = v->vars; var; var=var->next) { - tail = PyUnicode_FromString(var->name); - joined = PyUnicode_Concat(str, tail); - Py_DecRef(str); - Py_DecRef(tail); - str = joined; - if (var->next) { - tail = PyUnicode_InternFromString(", "); - joined = PyUnicode_Concat(str, tail); - Py_DecRef(str); - Py_DecRef(tail); - str = joined; - } - } - tail = PyUnicode_InternFromString(")"); - joined = PyUnicode_Concat(str, tail); - Py_DecRef(str); - Py_DecRef(tail); - str = joined; -#else - PyObject *str = PyString_FromString("("); - swig_globalvar *var; - for (var = v->vars; var; var=var->next) { - PyString_ConcatAndDel(&str,PyString_FromString(var->name)); - if (var->next) PyString_ConcatAndDel(&str,PyString_FromString(", ")); - } - PyString_ConcatAndDel(&str,PyString_FromString(")")); -#endif - return str; - } - - SWIGINTERN void - swig_varlink_dealloc(swig_varlinkobject *v) { - swig_globalvar *var = v->vars; - while (var) { - swig_globalvar *n = var->next; - free(var->name); - free(var); - var = n; - } - } - - SWIGINTERN PyObject * - swig_varlink_getattr(swig_varlinkobject *v, char *n) { - PyObject *res = NULL; - swig_globalvar *var = v->vars; - while (var) { - if (strcmp(var->name,n) == 0) { - res = (*var->get_attr)(); - break; - } - var = var->next; - } - if (res == NULL && !PyErr_Occurred()) { - PyErr_Format(PyExc_AttributeError, "Unknown C global variable '%s'", n); - } - return res; - } - - SWIGINTERN int - swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) { - int res = 1; - swig_globalvar *var = v->vars; - while (var) { - if (strcmp(var->name,n) == 0) { - res = (*var->set_attr)(p); - break; - } - var = var->next; - } - if (res == 1 && !PyErr_Occurred()) { - PyErr_Format(PyExc_AttributeError, "Unknown C global variable '%s'", n); - } - return res; - } - - SWIGINTERN PyTypeObject* - swig_varlink_type(void) { - static char varlink__doc__[] = "Swig var link object"; - static PyTypeObject varlink_type; - static int type_init = 0; - if (!type_init) { - const PyTypeObject tmp = { -#if PY_VERSION_HEX >= 0x03000000 - PyVarObject_HEAD_INIT(NULL, 0) -#else - PyObject_HEAD_INIT(NULL) - 0, /* ob_size */ -#endif - "swigvarlink", /* tp_name */ - sizeof(swig_varlinkobject), /* tp_basicsize */ - 0, /* tp_itemsize */ - (destructor) swig_varlink_dealloc, /* tp_dealloc */ - 0, /* tp_print */ - (getattrfunc) swig_varlink_getattr, /* tp_getattr */ - (setattrfunc) swig_varlink_setattr, /* tp_setattr */ - 0, /* tp_compare */ - (reprfunc) swig_varlink_repr, /* tp_repr */ - 0, /* tp_as_number */ - 0, /* tp_as_sequence */ - 0, /* tp_as_mapping */ - 0, /* tp_hash */ - 0, /* tp_call */ - (reprfunc) swig_varlink_str, /* tp_str */ - 0, /* tp_getattro */ - 0, /* tp_setattro */ - 0, /* tp_as_buffer */ - 0, /* tp_flags */ - varlink__doc__, /* tp_doc */ - 0, /* tp_traverse */ - 0, /* tp_clear */ - 0, /* tp_richcompare */ - 0, /* tp_weaklistoffset */ - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */ - 0, /* tp_del */ - 0, /* tp_version_tag */ -#if PY_VERSION_HEX >= 0x03040000 - 0, /* tp_finalize */ -#endif -#ifdef COUNT_ALLOCS - 0, /* tp_allocs */ - 0, /* tp_frees */ - 0, /* tp_maxalloc */ - 0, /* tp_prev */ - 0 /* tp_next */ -#endif - }; - varlink_type = tmp; - type_init = 1; - if (PyType_Ready(&varlink_type) < 0) - return NULL; - } - return &varlink_type; - } - - /* Create a variable linking object for use later */ - SWIGINTERN PyObject * - SWIG_Python_newvarlink(void) { - swig_varlinkobject *result = PyObject_NEW(swig_varlinkobject, swig_varlink_type()); - if (result) { - result->vars = 0; - } - return ((PyObject*) result); - } - - SWIGINTERN void - SWIG_Python_addvarlink(PyObject *p, const char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) { - swig_varlinkobject *v = (swig_varlinkobject *) p; - swig_globalvar *gv = (swig_globalvar *) malloc(sizeof(swig_globalvar)); - if (gv) { - size_t size = strlen(name)+1; - gv->name = (char *)malloc(size); - if (gv->name) { - memcpy(gv->name, name, size); - gv->get_attr = get_attr; - gv->set_attr = set_attr; - gv->next = v->vars; - } - } - v->vars = gv; - } - - SWIGINTERN PyObject * - SWIG_globals(void) { - static PyObject *globals = 0; - if (!globals) { - globals = SWIG_newvarlink(); - } - return globals; - } - - /* ----------------------------------------------------------------------------- - * constants/methods manipulation - * ----------------------------------------------------------------------------- */ - - /* Install Constants */ - SWIGINTERN void - SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) { - PyObject *obj = 0; - size_t i; - for (i = 0; constants[i].type; ++i) { - switch(constants[i].type) { - case SWIG_PY_POINTER: - obj = SWIG_InternalNewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0); - break; - case SWIG_PY_BINARY: - obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype)); - break; - default: - obj = 0; - break; - } - if (obj) { - PyDict_SetItemString(d, constants[i].name, obj); - Py_DECREF(obj); - } - } - } - - /* -----------------------------------------------------------------------------*/ - /* Fix SwigMethods to carry the callback ptrs when needed */ - /* -----------------------------------------------------------------------------*/ - - SWIGINTERN void - SWIG_Python_FixMethods(PyMethodDef *methods, - swig_const_info *const_table, - swig_type_info **types, - swig_type_info **types_initial) { - size_t i; - for (i = 0; methods[i].ml_name; ++i) { - const char *c = methods[i].ml_doc; - if (!c) continue; - c = strstr(c, "swig_ptr: "); - if (c) { - int j; - swig_const_info *ci = 0; - const char *name = c + 10; - for (j = 0; const_table[j].type; ++j) { - if (strncmp(const_table[j].name, name, - strlen(const_table[j].name)) == 0) { - ci = &(const_table[j]); - break; - } - } - if (ci) { - void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue : 0; - if (ptr) { - size_t shift = (ci->ptype) - types; - swig_type_info *ty = types_initial[shift]; - size_t ldoc = (c - methods[i].ml_doc); - size_t lptr = strlen(ty->name)+2*sizeof(void*)+2; - char *ndoc = (char*)malloc(ldoc + lptr + 10); - if (ndoc) { - char *buff = ndoc; - memcpy(buff, methods[i].ml_doc, ldoc); - buff += ldoc; - memcpy(buff, "swig_ptr: ", 10); - buff += 10; - SWIG_PackVoidPtr(buff, ptr, ty->name, lptr); - methods[i].ml_doc = ndoc; - } - } - } - } - } - } - - /* ----------------------------------------------------------------------------- - * Method creation and docstring support functions - * ----------------------------------------------------------------------------- */ - - /* ----------------------------------------------------------------------------- - * Function to find the method definition with the correct docstring for the - * proxy module as opposed to the low-level API - * ----------------------------------------------------------------------------- */ - - SWIGINTERN PyMethodDef *SWIG_PythonGetProxyDoc(const char *name) { - /* Find the function in the modified method table */ - size_t offset = 0; - int found = 0; - while (SwigMethods_proxydocs[offset].ml_meth != NULL) { - if (strcmp(SwigMethods_proxydocs[offset].ml_name, name) == 0) { - found = 1; - break; - } - offset++; - } - /* Use the copy with the modified docstring if available */ - return found ? &SwigMethods_proxydocs[offset] : NULL; - } - - /* ----------------------------------------------------------------------------- - * Wrapper of PyInstanceMethod_New() used in Python 3 - * It is exported to the generated module, used for -fastproxy - * ----------------------------------------------------------------------------- */ - - SWIGINTERN PyObject *SWIG_PyInstanceMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func) { - if (PyCFunction_Check(func)) { - PyCFunctionObject *funcobj = (PyCFunctionObject *)func; - PyMethodDef *ml = SWIG_PythonGetProxyDoc(funcobj->m_ml->ml_name); - if (ml) - func = PyCFunction_NewEx(ml, funcobj->m_self, funcobj->m_module); - } -#if PY_VERSION_HEX >= 0x03000000 - return PyInstanceMethod_New(func); -#else - return PyMethod_New(func, NULL, NULL); -#endif - } - - /* ----------------------------------------------------------------------------- - * Wrapper of PyStaticMethod_New() - * It is exported to the generated module, used for -fastproxy - * ----------------------------------------------------------------------------- */ - - SWIGINTERN PyObject *SWIG_PyStaticMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func) { - if (PyCFunction_Check(func)) { - PyCFunctionObject *funcobj = (PyCFunctionObject *)func; - PyMethodDef *ml = SWIG_PythonGetProxyDoc(funcobj->m_ml->ml_name); - if (ml) - func = PyCFunction_NewEx(ml, funcobj->m_self, funcobj->m_module); - } - return PyStaticMethod_New(func); - } - -#ifdef __cplusplus -} -#endif - -/* -----------------------------------------------------------------------------* - * Partial Init method - * -----------------------------------------------------------------------------*/ - -#ifdef __cplusplus -extern "C" -#endif - -SWIGEXPORT -#if PY_VERSION_HEX >= 0x03000000 -PyObject* -#else -void -#endif -SWIG_init(void) { - PyObject *m, *d, *md, *globals; - -#if PY_VERSION_HEX >= 0x03000000 - static struct PyModuleDef SWIG_module = { - PyModuleDef_HEAD_INIT, - SWIG_name, - NULL, - -1, - SwigMethods, - NULL, - NULL, - NULL, - NULL - }; -#endif - -#if defined(SWIGPYTHON_BUILTIN) - static SwigPyClientData SwigPyObject_clientdata = { - 0, 0, 0, 0, 0, 0, 0 - }; - static PyGetSetDef this_getset_def = { - (char *)"this", &SwigPyBuiltin_ThisClosure, NULL, NULL, NULL - }; - static SwigPyGetSet thisown_getset_closure = { - SwigPyObject_own, - SwigPyObject_own - }; - static PyGetSetDef thisown_getset_def = { - (char *)"thisown", SwigPyBuiltin_GetterClosure, SwigPyBuiltin_SetterClosure, NULL, &thisown_getset_closure - }; - PyTypeObject *builtin_pytype; - int builtin_base_count; - swig_type_info *builtin_basetype; - PyObject *tuple; - PyGetSetDescrObject *static_getset; - PyTypeObject *metatype; - PyTypeObject *swigpyobject; - SwigPyClientData *cd; - PyObject *public_interface, *public_symbol; - PyObject *this_descr; - PyObject *thisown_descr; - PyObject *self = 0; - int i; - - (void)builtin_pytype; - (void)builtin_base_count; - (void)builtin_basetype; - (void)tuple; - (void)static_getset; - (void)self; - - /* Metaclass is used to implement static member variables */ - metatype = SwigPyObjectType(); - assert(metatype); -#endif - - (void)globals; - - /* Create singletons now to avoid potential deadlocks with multi-threaded usage after module initialization */ - SWIG_This(); - SWIG_Python_TypeCache(); - SwigPyPacked_type(); -#ifndef SWIGPYTHON_BUILTIN - SwigPyObject_type(); -#endif - - /* Fix SwigMethods to carry the callback ptrs when needed */ - SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_type_initial); - -#if PY_VERSION_HEX >= 0x03000000 - m = PyModule_Create(&SWIG_module); -#else - m = Py_InitModule(SWIG_name, SwigMethods); -#endif - - md = d = PyModule_GetDict(m); - (void)md; - - SWIG_InitializeModule(0); - -#ifdef SWIGPYTHON_BUILTIN - swigpyobject = SwigPyObject_TypeOnce(); - - SwigPyObject_stype = SWIG_MangledTypeQuery("_p_SwigPyObject"); - assert(SwigPyObject_stype); - cd = (SwigPyClientData*) SwigPyObject_stype->clientdata; - if (!cd) { - SwigPyObject_stype->clientdata = &SwigPyObject_clientdata; - SwigPyObject_clientdata.pytype = swigpyobject; - } else if (swigpyobject->tp_basicsize != cd->pytype->tp_basicsize) { - PyErr_SetString(PyExc_RuntimeError, "Import error: attempted to load two incompatible swig-generated modules."); -# if PY_VERSION_HEX >= 0x03000000 - return NULL; -# else - return; -# endif - } - - /* All objects have a 'this' attribute */ - this_descr = PyDescr_NewGetSet(SwigPyObject_type(), &this_getset_def); - (void)this_descr; - - /* All objects have a 'thisown' attribute */ - thisown_descr = PyDescr_NewGetSet(SwigPyObject_type(), &thisown_getset_def); - (void)thisown_descr; - - public_interface = PyList_New(0); - public_symbol = 0; - (void)public_symbol; - - PyDict_SetItemString(md, "__all__", public_interface); - Py_DECREF(public_interface); - for (i = 0; SwigMethods[i].ml_name != NULL; ++i) - SwigPyBuiltin_AddPublicSymbol(public_interface, SwigMethods[i].ml_name); - for (i = 0; swig_const_table[i].name != 0; ++i) - SwigPyBuiltin_AddPublicSymbol(public_interface, swig_const_table[i].name); -#endif - - SWIG_InstallConstants(d,swig_const_table); - - - import_array(); // Import Numpy Arrays - - SWIG_Python_SetConstant(d, "DATA_WIDTH",SWIG_From_int((int)(8))); - SWIG_Python_SetConstant(d, "OUTPUT_NUMBER",SWIG_From_int((int)(10))); -#if PY_VERSION_HEX >= 0x03000000 - return m; -#else - return; -#endif -} - diff --git a/vivado/Software/eggnet/eggstatus.c b/vivado/Software/eggnet/eggstatus.c deleted file mode 100644 index e483a500..00000000 --- a/vivado/Software/eggnet/eggstatus.c +++ /dev/null @@ -1,232 +0,0 @@ -/* - * EggNet status library - * - * Copyright (C) 2020 Lukas Baischer - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#include "eggnet.h" -#include -#include -#include -#include -#include -#include -#include -#include "dbg.h" - -egg_error_t egg_init_uio(char *ip_name) -{ - CHECK(uio.number == 0,"UIO already initialized"); - uio.info = uio_find_by_uio_name(ip_name); - - uio.info->fd = open(uio_get_devname(uio.info), O_RDWR); - CHECK(uio.info->fd >= 1,"Unable to open UIO device: %s\n",uio_get_devname(uio.info)); - uio.ptr_to_mmap_addr = (volatile uint32_t*) mmap(NULL, uio_get_mem_size(uio.info,0), PROT_READ|PROT_WRITE, MAP_SHARED, uio.info->fd, 0x0); - CHECK(ptr_to_mmap_addr != NULL,"Error in memory mapping of UIO device: %s\n",uio_get_devname(uio.info)); - - uio.number = 1; - return EGG_ERROR_NONE; - error: - return EGG_ERROR_INIT_FAILDED; -} - -egg_error_t egg_close_uio() -{ - CHECK(uio.number >= 0,"UIO not initialized"); - CHECK(munmap((void*)uio.ptr_to_mmap_addr, uio_get_mem_size(uio.info,0))==0,"Error unmap uio device"); - close(uio.info->fd); - uio.number = 0; - free(uio.info); - uio.ptr_to_mmap_addr = NULL; - return EGG_ERROR_NONE; - error: - return EGG_ERROR_UDEF; -} - -egg_error_t egg_get_layer_number(uint8_t *layer_number) -{ - CHECK(egg_update_memctrl_addr(0)==EGG_ERROR_NONE,"Error writing 0 to memory controller address register"); - uint8_t value = *(uio.ptr_to_mmap_addr+EGG_RD_LAYER_PROP_OFS); - *layer_number = (value & EGG_RD_LAYER_NR_MASK); - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} - -/** - * Writes memmory controller address to AXI lite bus register - * @return Error code - */ -egg_error_t egg_update_memctrl_addr(uint8_t addr) -{ - // Check if layer is already active - if (network.selected_layer == addr) - { - return EGG_ERROR_NONE; - } - - // Check if input is valid and device is initialized - CHECK(uio.number >= 0,"UIO not initialized"); - *(uio.ptr_to_mmap_addr+EGG_WR_MEM_CTRL_ADDR_OFS) = (uint32_t) addr; - int timeout = 0; - uint32_t value = 0; - while(timeout < TIMEOUT) - { - timeout++; - value = *(uio.ptr_to_mmap_addr); - value = (value & EGG_RD_MEM_CTRL_ADDR_MASK) >> EGG_RD_MEM_CTRL_ADDR_SHIFT; - if (value == addr) - { - network.selected_layer = addr; - return EGG_ERROR_NONE; - } - } - fprintf(stderr, "[ERROR] Timout occured in function egg_update_memctrl_addr()"); - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; - - error: - return EGG_ERROR_DEVICE_COMMUNICATION_FAILED; -} - - -/** - * Free network - * @return Error code - */ -egg_error_t egg_free_network(network_t* net); -{ - CHECK(network.layer_number > 0,"Network not initialized! Nothing to free!"); - for(int i=0; i < network.layer_number;i++) - { - if(network.layers[i]) - { - free(network.layers[i]); - } - } - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - -/** - * Reads with of the Layer - * @param width Width of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_width(uint16_t *width) -{ - uint32_t value = 0; - value = *(uio.ptr_to_mmap_addr + EGG_RD_LAYER_PROP_OFS); - value = (value & EGG_RD_LAYER_WIDTH_MASK) >> EGG_RD_MEM_CTRL_ADDR_SHIFT; - CHECK(value != 0,"Received invalid width") - *width = value; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - -/** - * Reads height of the Layer - * @param height Height of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_height(uint16_t *height) -{ - uint32_t value = 0; - value = *(uio.ptr_to_mmap_addr + EGG_RD_LAYER_PROP_OFS); - value = (value & EGG_RD_LAYER_HIGTH_MASK) >> EGG_RD_LAYER_HIGTH_SHIFT; - CHECK(value != 0,"Received invalid height") - *height = value; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - -/** - * Reads Channel number of the Layer - * @param channel_nb Channel number of the Layer Matrix - * @return Error code - */ -egg_error_t egg_read_channel_nb(uint8_t *channel_nb) -{ - uint32_t value = 0; - value = *(uio.ptr_to_mmap_addr + EGG_RD_LAYER_PROP_OFS); - value = (value & EGG_RD_LAYER_CH_NR_MASK) >> EGG_RD_LAYER_CH_NR_SHIFT; - CHECK(value != 0,"Received invalid channel number") - *channel_nb = value; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - -egg_error_t egg_read_type(layer_type_t *type) -{ - uint32_t value = 0; - value = *(uio.ptr_to_mmap_addr + EGG_RD_STATUS_OFS); - value = (value & EGG_RD_TYPE_MASK) >> EGG_RD_TYPE_SHIFT; - CHECK(value < 8,"Received invalid type") - *type = value; - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - -/** - * Reads layer structure info from memory controller - * @return Error code - */ -egg_error_t egg_get_layer_info(uint8_t nb, layer_type_t *type,uint16_t *width, uint16_t *height, uint8_t *channel_number) -{ - CHECK(egg_update_memctrl_addr(nb)==EGG_ERROR_NONE,"Error writing %d to memory controller address register",nb); - CHECK(egg_read_type(type)==EGG_ERROR_NONE,"Error reading type of layer %d",nb); - CHECK(egg_read_width(width)==EGG_ERROR_NONE,"Error reading width of layer %d",nb); - CHECK(egg_read_height(height)==EGG_ERROR_NONE,"Error reading height of layer %d",nb); - CHECK(egg_read_channel_nb(channel_number)==EGG_ERROR_NONE,"Error reading channel number of layer %d",nb); - return EGG_ERROR_NONE; - - error: - return EGG_ERROR_UDEF; -} - -/** - * Get Type as string - * @param type Enumerator of Layer type - * @return Error code - */ -const char *get_type_string(layer_type_t type) -{ - switch(type) - { - case Dense: - return "Dense"; - case Conv1x1: - return "Conv1x1"; - case Conv3x3: - return "Conv3x3"; - case Conv5x5: - return "Conv5x5"; - case Average_pooling: - return "Average_pooling"; - default: - return "ERROR"; - } -} diff --git a/vivado/Software/eggnet/numpy.i b/vivado/Software/eggnet/numpy.i deleted file mode 100644 index 36bb55c9..00000000 --- a/vivado/Software/eggnet/numpy.i +++ /dev/null @@ -1,3183 +0,0 @@ -/* -*- C -*- (not really, but good for syntax highlighting) */ - -/* - * Copyright (c) 2005-2015, NumPy Developers. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials provided - * with the distribution. - * - * * Neither the name of the NumPy Developers nor the names of any - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifdef SWIGPYTHON - -%{ -#ifndef SWIG_FILE_WITH_INIT -#define NO_IMPORT_ARRAY -#endif -#include "stdio.h" -#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION -#include -%} - -/**********************************************************************/ - -%fragment("NumPy_Backward_Compatibility", "header") -{ -%#if NPY_API_VERSION < 0x00000007 -%#define NPY_ARRAY_DEFAULT NPY_DEFAULT -%#define NPY_ARRAY_FARRAY NPY_FARRAY -%#define NPY_FORTRANORDER NPY_FORTRAN -%#endif -} - -/**********************************************************************/ - -/* The following code originally appeared in - * enthought/kiva/agg/src/numeric.i written by Eric Jones. It was - * translated from C++ to C by John Hunter. Bill Spotz has modified - * it to fix some minor bugs, upgrade from Numeric to numpy (all - * versions), add some comments and functionality, and convert from - * direct code insertion to SWIG fragments. - */ - -%fragment("NumPy_Macros", "header") -{ -/* Macros to extract array attributes. - */ -%#if NPY_API_VERSION < 0x00000007 -%#define is_array(a) ((a) && PyArray_Check((PyArrayObject*)a)) -%#define array_type(a) (int)(PyArray_TYPE((PyArrayObject*)a)) -%#define array_numdims(a) (((PyArrayObject*)a)->nd) -%#define array_dimensions(a) (((PyArrayObject*)a)->dimensions) -%#define array_size(a,i) (((PyArrayObject*)a)->dimensions[i]) -%#define array_strides(a) (((PyArrayObject*)a)->strides) -%#define array_stride(a,i) (((PyArrayObject*)a)->strides[i]) -%#define array_data(a) (((PyArrayObject*)a)->data) -%#define array_descr(a) (((PyArrayObject*)a)->descr) -%#define array_flags(a) (((PyArrayObject*)a)->flags) -%#define array_clearflags(a,f) (((PyArrayObject*)a)->flags) &= ~f -%#define array_enableflags(a,f) (((PyArrayObject*)a)->flags) = f -%#define array_is_fortran(a) (PyArray_ISFORTRAN((PyArrayObject*)a)) -%#else -%#define is_array(a) ((a) && PyArray_Check(a)) -%#define array_type(a) PyArray_TYPE((PyArrayObject*)a) -%#define array_numdims(a) PyArray_NDIM((PyArrayObject*)a) -%#define array_dimensions(a) PyArray_DIMS((PyArrayObject*)a) -%#define array_strides(a) PyArray_STRIDES((PyArrayObject*)a) -%#define array_stride(a,i) PyArray_STRIDE((PyArrayObject*)a,i) -%#define array_size(a,i) PyArray_DIM((PyArrayObject*)a,i) -%#define array_data(a) PyArray_DATA((PyArrayObject*)a) -%#define array_descr(a) PyArray_DESCR((PyArrayObject*)a) -%#define array_flags(a) PyArray_FLAGS((PyArrayObject*)a) -%#define array_enableflags(a,f) PyArray_ENABLEFLAGS((PyArrayObject*)a,f) -%#define array_clearflags(a,f) PyArray_CLEARFLAGS((PyArrayObject*)a,f) -%#define array_is_fortran(a) (PyArray_IS_F_CONTIGUOUS((PyArrayObject*)a)) -%#endif -%#define array_is_contiguous(a) (PyArray_ISCONTIGUOUS((PyArrayObject*)a)) -%#define array_is_native(a) (PyArray_ISNOTSWAPPED((PyArrayObject*)a)) -} - -/**********************************************************************/ - -%fragment("NumPy_Utilities", - "header") -{ - /* Given a PyObject, return a string describing its type. - */ - const char* pytype_string(PyObject* py_obj) - { - if (py_obj == NULL ) return "C NULL value"; - if (py_obj == Py_None ) return "Python None" ; - if (PyCallable_Check(py_obj)) return "callable" ; - if (PyString_Check( py_obj)) return "string" ; - if (PyInt_Check( py_obj)) return "int" ; - if (PyFloat_Check( py_obj)) return "float" ; - if (PyDict_Check( py_obj)) return "dict" ; - if (PyList_Check( py_obj)) return "list" ; - if (PyTuple_Check( py_obj)) return "tuple" ; -%#if PY_MAJOR_VERSION < 3 - if (PyFile_Check( py_obj)) return "file" ; - if (PyModule_Check( py_obj)) return "module" ; - if (PyInstance_Check(py_obj)) return "instance" ; -%#endif - - return "unknown type"; - } - - /* Given a NumPy typecode, return a string describing the type. - */ - const char* typecode_string(int typecode) - { - static const char* type_names[25] = {"bool", - "byte", - "unsigned byte", - "short", - "unsigned short", - "int", - "unsigned int", - "long", - "unsigned long", - "long long", - "unsigned long long", - "float", - "double", - "long double", - "complex float", - "complex double", - "complex long double", - "object", - "string", - "unicode", - "void", - "ntypes", - "notype", - "char", - "unknown"}; - return typecode < 24 ? type_names[typecode] : type_names[24]; - } - - /* Make sure input has correct numpy type. This now just calls - PyArray_EquivTypenums(). - */ - int type_match(int actual_type, - int desired_type) - { - return PyArray_EquivTypenums(actual_type, desired_type); - } - -%#ifdef SWIGPY_USE_CAPSULE - void free_cap(PyObject * cap) - { - void* array = (void*) PyCapsule_GetPointer(cap,SWIGPY_CAPSULE_NAME); - if (array != NULL) free(array); - } -%#endif - - -} - -/**********************************************************************/ - -%fragment("NumPy_Object_to_Array", - "header", - fragment="NumPy_Backward_Compatibility", - fragment="NumPy_Macros", - fragment="NumPy_Utilities") -{ - /* Given a PyObject pointer, cast it to a PyArrayObject pointer if - * legal. If not, set the python error string appropriately and - * return NULL. - */ - PyArrayObject* obj_to_array_no_conversion(PyObject* input, - int typecode) - { - PyArrayObject* ary = NULL; - if (is_array(input) && (typecode == NPY_NOTYPE || - PyArray_EquivTypenums(array_type(input), typecode))) - { - ary = (PyArrayObject*) input; - } - else if is_array(input) - { - const char* desired_type = typecode_string(typecode); - const char* actual_type = typecode_string(array_type(input)); - PyErr_Format(PyExc_TypeError, - "Array of type '%s' required. Array of type '%s' given", - desired_type, actual_type); - ary = NULL; - } - else - { - const char* desired_type = typecode_string(typecode); - const char* actual_type = pytype_string(input); - PyErr_Format(PyExc_TypeError, - "Array of type '%s' required. A '%s' was given", - desired_type, - actual_type); - ary = NULL; - } - return ary; - } - - /* Convert the given PyObject to a NumPy array with the given - * typecode. On success, return a valid PyArrayObject* with the - * correct type. On failure, the python error string will be set and - * the routine returns NULL. - */ - PyArrayObject* obj_to_array_allow_conversion(PyObject* input, - int typecode, - int* is_new_object) - { - PyArrayObject* ary = NULL; - PyObject* py_obj; - if (is_array(input) && (typecode == NPY_NOTYPE || - PyArray_EquivTypenums(array_type(input),typecode))) - { - ary = (PyArrayObject*) input; - *is_new_object = 0; - } - else - { - py_obj = PyArray_FROMANY(input, typecode, 0, 0, NPY_ARRAY_DEFAULT); - /* If NULL, PyArray_FromObject will have set python error value.*/ - ary = (PyArrayObject*) py_obj; - *is_new_object = 1; - } - return ary; - } - - /* Given a PyArrayObject, check to see if it is contiguous. If so, - * return the input pointer and flag it as not a new object. If it is - * not contiguous, create a new PyArrayObject using the original data, - * flag it as a new object and return the pointer. - */ - PyArrayObject* make_contiguous(PyArrayObject* ary, - int* is_new_object, - int min_dims, - int max_dims) - { - PyArrayObject* result; - if (array_is_contiguous(ary)) - { - result = ary; - *is_new_object = 0; - } - else - { - result = (PyArrayObject*) PyArray_ContiguousFromObject((PyObject*)ary, - array_type(ary), - min_dims, - max_dims); - *is_new_object = 1; - } - return result; - } - - /* Given a PyArrayObject, check to see if it is Fortran-contiguous. - * If so, return the input pointer, but do not flag it as not a new - * object. If it is not Fortran-contiguous, create a new - * PyArrayObject using the original data, flag it as a new object - * and return the pointer. - */ - PyArrayObject* make_fortran(PyArrayObject* ary, - int* is_new_object) - { - PyArrayObject* result; - if (array_is_fortran(ary)) - { - result = ary; - *is_new_object = 0; - } - else - { - Py_INCREF(array_descr(ary)); - result = (PyArrayObject*) PyArray_FromArray(ary, - array_descr(ary), -%#if NPY_API_VERSION < 0x00000007 - NPY_FORTRANORDER); -%#else - NPY_ARRAY_F_CONTIGUOUS); -%#endif - *is_new_object = 1; - } - return result; - } - - /* Convert a given PyObject to a contiguous PyArrayObject of the - * specified type. If the input object is not a contiguous - * PyArrayObject, a new one will be created and the new object flag - * will be set. - */ - PyArrayObject* obj_to_array_contiguous_allow_conversion(PyObject* input, - int typecode, - int* is_new_object) - { - int is_new1 = 0; - int is_new2 = 0; - PyArrayObject* ary2; - PyArrayObject* ary1 = obj_to_array_allow_conversion(input, - typecode, - &is_new1); - if (ary1) - { - ary2 = make_contiguous(ary1, &is_new2, 0, 0); - if ( is_new1 && is_new2) - { - Py_DECREF(ary1); - } - ary1 = ary2; - } - *is_new_object = is_new1 || is_new2; - return ary1; - } - - /* Convert a given PyObject to a Fortran-ordered PyArrayObject of the - * specified type. If the input object is not a Fortran-ordered - * PyArrayObject, a new one will be created and the new object flag - * will be set. - */ - PyArrayObject* obj_to_array_fortran_allow_conversion(PyObject* input, - int typecode, - int* is_new_object) - { - int is_new1 = 0; - int is_new2 = 0; - PyArrayObject* ary2; - PyArrayObject* ary1 = obj_to_array_allow_conversion(input, - typecode, - &is_new1); - if (ary1) - { - ary2 = make_fortran(ary1, &is_new2); - if (is_new1 && is_new2) - { - Py_DECREF(ary1); - } - ary1 = ary2; - } - *is_new_object = is_new1 || is_new2; - return ary1; - } -} /* end fragment */ - -/**********************************************************************/ - -%fragment("NumPy_Array_Requirements", - "header", - fragment="NumPy_Backward_Compatibility", - fragment="NumPy_Macros") -{ - /* Test whether a python object is contiguous. If array is - * contiguous, return 1. Otherwise, set the python error string and - * return 0. - */ - int require_contiguous(PyArrayObject* ary) - { - int contiguous = 1; - if (!array_is_contiguous(ary)) - { - PyErr_SetString(PyExc_TypeError, - "Array must be contiguous. A non-contiguous array was given"); - contiguous = 0; - } - return contiguous; - } - - /* Test whether a python object is (C_ or F_) contiguous. If array is - * contiguous, return 1. Otherwise, set the python error string and - * return 0. - */ - int require_c_or_f_contiguous(PyArrayObject* ary) - { - int contiguous = 1; - if (!(array_is_contiguous(ary) || array_is_fortran(ary))) - { - PyErr_SetString(PyExc_TypeError, - "Array must be contiguous (C_ or F_). A non-contiguous array was given"); - contiguous = 0; - } - return contiguous; - } - - /* Require that a numpy array is not byte-swapped. If the array is - * not byte-swapped, return 1. Otherwise, set the python error string - * and return 0. - */ - int require_native(PyArrayObject* ary) - { - int native = 1; - if (!array_is_native(ary)) - { - PyErr_SetString(PyExc_TypeError, - "Array must have native byteorder. " - "A byte-swapped array was given"); - native = 0; - } - return native; - } - - /* Require the given PyArrayObject to have a specified number of - * dimensions. If the array has the specified number of dimensions, - * return 1. Otherwise, set the python error string and return 0. - */ - int require_dimensions(PyArrayObject* ary, - int exact_dimensions) - { - int success = 1; - if (array_numdims(ary) != exact_dimensions) - { - PyErr_Format(PyExc_TypeError, - "Array must have %d dimensions. Given array has %d dimensions", - exact_dimensions, - array_numdims(ary)); - success = 0; - } - return success; - } - - /* Require the given PyArrayObject to have one of a list of specified - * number of dimensions. If the array has one of the specified number - * of dimensions, return 1. Otherwise, set the python error string - * and return 0. - */ - int require_dimensions_n(PyArrayObject* ary, - int* exact_dimensions, - int n) - { - int success = 0; - int i; - char dims_str[255] = ""; - char s[255]; - for (i = 0; i < n && !success; i++) - { - if (array_numdims(ary) == exact_dimensions[i]) - { - success = 1; - } - } - if (!success) - { - for (i = 0; i < n-1; i++) - { - sprintf(s, "%d, ", exact_dimensions[i]); - strcat(dims_str,s); - } - sprintf(s, " or %d", exact_dimensions[n-1]); - strcat(dims_str,s); - PyErr_Format(PyExc_TypeError, - "Array must have %s dimensions. Given array has %d dimensions", - dims_str, - array_numdims(ary)); - } - return success; - } - - /* Require the given PyArrayObject to have a specified shape. If the - * array has the specified shape, return 1. Otherwise, set the python - * error string and return 0. - */ - int require_size(PyArrayObject* ary, - npy_intp* size, - int n) - { - int i; - int success = 1; - size_t len; - char desired_dims[255] = "["; - char s[255]; - char actual_dims[255] = "["; - for(i=0; i < n;i++) - { - if (size[i] != -1 && size[i] != array_size(ary,i)) - { - success = 0; - } - } - if (!success) - { - for (i = 0; i < n; i++) - { - if (size[i] == -1) - { - sprintf(s, "*,"); - } - else - { - sprintf(s, "%ld,", (long int)size[i]); - } - strcat(desired_dims,s); - } - len = strlen(desired_dims); - desired_dims[len-1] = ']'; - for (i = 0; i < n; i++) - { - sprintf(s, "%ld,", (long int)array_size(ary,i)); - strcat(actual_dims,s); - } - len = strlen(actual_dims); - actual_dims[len-1] = ']'; - PyErr_Format(PyExc_TypeError, - "Array must have shape of %s. Given array has shape of %s", - desired_dims, - actual_dims); - } - return success; - } - - /* Require the given PyArrayObject to to be Fortran ordered. If the - * the PyArrayObject is already Fortran ordered, do nothing. Else, - * set the Fortran ordering flag and recompute the strides. - */ - int require_fortran(PyArrayObject* ary) - { - int success = 1; - int nd = array_numdims(ary); - int i; - npy_intp * strides = array_strides(ary); - if (array_is_fortran(ary)) return success; - int n_non_one = 0; - /* Set the Fortran ordered flag */ - const npy_intp *dims = array_dimensions(ary); - for (i=0; i < nd; ++i) - n_non_one += (dims[i] != 1) ? 1 : 0; - if (n_non_one > 1) - array_clearflags(ary,NPY_ARRAY_CARRAY); - array_enableflags(ary,NPY_ARRAY_FARRAY); - /* Recompute the strides */ - strides[0] = strides[nd-1]; - for (i=1; i < nd; ++i) - strides[i] = strides[i-1] * array_size(ary,i-1); - return success; - } -} - -/* Combine all NumPy fragments into one for convenience */ -%fragment("NumPy_Fragments", - "header", - fragment="NumPy_Backward_Compatibility", - fragment="NumPy_Macros", - fragment="NumPy_Utilities", - fragment="NumPy_Object_to_Array", - fragment="NumPy_Array_Requirements") -{ -} - -/* End John Hunter translation (with modifications by Bill Spotz) - */ - -/* %numpy_typemaps() macro - * - * This macro defines a family of 75 typemaps that allow C arguments - * of the form - * - * 1. (DATA_TYPE IN_ARRAY1[ANY]) - * 2. (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1) - * 3. (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1) - * - * 4. (DATA_TYPE IN_ARRAY2[ANY][ANY]) - * 5. (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - * 6. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2) - * 7. (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - * 8. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2) - * - * 9. (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY]) - * 10. (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - * 11. (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - * 12. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3) - * 13. (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - * 14. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3) - * - * 15. (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY]) - * 16. (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - * 17. (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - * 18. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, , DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4) - * 19. (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - * 20. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4) - * - * 21. (DATA_TYPE INPLACE_ARRAY1[ANY]) - * 22. (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1) - * 23. (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1) - * - * 24. (DATA_TYPE INPLACE_ARRAY2[ANY][ANY]) - * 25. (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - * 26. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2) - * 27. (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - * 28. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2) - * - * 29. (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY]) - * 30. (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - * 31. (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - * 32. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_ARRAY3) - * 33. (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - * 34. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_FARRAY3) - * - * 35. (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY]) - * 36. (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - * 37. (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - * 38. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_ARRAY4) - * 39. (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - * 40. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_FARRAY4) - * - * 41. (DATA_TYPE ARGOUT_ARRAY1[ANY]) - * 42. (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1) - * 43. (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1) - * - * 44. (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY]) - * - * 45. (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY]) - * - * 46. (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY]) - * - * 47. (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1) - * 48. (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEW_ARRAY1) - * - * 49. (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - * 50. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_ARRAY2) - * 51. (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - * 52. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_FARRAY2) - * - * 53. (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) - * 54. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_ARRAY3) - * 55. (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) - * 56. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_FARRAY3) - * - * 57. (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) - * 58. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_ARRAY4) - * 59. (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) - * 60. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_FARRAY4) - * - * 61. (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1) - * 62. (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEWM_ARRAY1) - * - * 63. (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - * 64. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_ARRAY2) - * 65. (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - * 66. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_FARRAY2) - * - * 67. (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) - * 68. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_ARRAY3) - * 69. (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) - * 70. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_FARRAY3) - * - * 71. (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) - * 72. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_ARRAY4) - * 73. (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) - * 74. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_FARRAY4) - * - * 75. (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT) - * - * where "DATA_TYPE" is any type supported by the NumPy module, and - * "DIM_TYPE" is any int-like type suitable for specifying dimensions. - * The difference between "ARRAY" typemaps and "FARRAY" typemaps is - * that the "FARRAY" typemaps expect Fortran ordering of - * multidimensional arrays. In python, the dimensions will not need - * to be specified (except for the "DATA_TYPE* ARGOUT_ARRAY1" - * typemaps). The IN_ARRAYs can be a numpy array or any sequence that - * can be converted to a numpy array of the specified type. The - * INPLACE_ARRAYs must be numpy arrays of the appropriate type. The - * ARGOUT_ARRAYs will be returned as new numpy arrays of the - * appropriate type. - * - * These typemaps can be applied to existing functions using the - * %apply directive. For example: - * - * %apply (double* IN_ARRAY1, int DIM1) {(double* series, int length)}; - * double prod(double* series, int length); - * - * %apply (int DIM1, int DIM2, double* INPLACE_ARRAY2) - * {(int rows, int cols, double* matrix )}; - * void floor(int rows, int cols, double* matrix, double f); - * - * %apply (double IN_ARRAY3[ANY][ANY][ANY]) - * {(double tensor[2][2][2] )}; - * %apply (double ARGOUT_ARRAY3[ANY][ANY][ANY]) - * {(double low[2][2][2] )}; - * %apply (double ARGOUT_ARRAY3[ANY][ANY][ANY]) - * {(double upp[2][2][2] )}; - * void luSplit(double tensor[2][2][2], - * double low[2][2][2], - * double upp[2][2][2] ); - * - * or directly with - * - * double prod(double* IN_ARRAY1, int DIM1); - * - * void floor(int DIM1, int DIM2, double* INPLACE_ARRAY2, double f); - * - * void luSplit(double IN_ARRAY3[ANY][ANY][ANY], - * double ARGOUT_ARRAY3[ANY][ANY][ANY], - * double ARGOUT_ARRAY3[ANY][ANY][ANY]); - */ - -%define %numpy_typemaps(DATA_TYPE, DATA_TYPECODE, DIM_TYPE) - -/************************/ -/* Input Array Typemaps */ -/************************/ - -/* Typemap suite for (DATA_TYPE IN_ARRAY1[ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE IN_ARRAY1[ANY]) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE IN_ARRAY1[ANY]) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[1] = { $1_dim0 }; - array = obj_to_array_contiguous_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 1) || - !require_size(array, size, 1)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(freearg) - (DATA_TYPE IN_ARRAY1[ANY]) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[1] = { -1 }; - array = obj_to_array_contiguous_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 1) || - !require_size(array, size, 1)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); -} -%typemap(freearg) - (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[1] = {-1}; - array = obj_to_array_contiguous_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 1) || - !require_size(array, size, 1)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE IN_ARRAY2[ANY][ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE IN_ARRAY2[ANY][ANY]) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE IN_ARRAY2[ANY][ANY]) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[2] = { $1_dim0, $1_dim1 }; - array = obj_to_array_contiguous_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 2) || - !require_size(array, size, 2)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(freearg) - (DATA_TYPE IN_ARRAY2[ANY][ANY]) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[2] = { -1, -1 }; - array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 2) || - !require_size(array, size, 2)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); -} -%typemap(freearg) - (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[2] = { -1, -1 }; - array = obj_to_array_contiguous_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 2) || - !require_size(array, size, 2)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[2] = { -1, -1 }; - array = obj_to_array_fortran_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 2) || - !require_size(array, size, 2) || !require_fortran(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); -} -%typemap(freearg) - (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[2] = { -1, -1 }; - array = obj_to_array_fortran_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 2) || - !require_size(array, size, 2) || !require_fortran(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY]) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY]) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[3] = { $1_dim0, $1_dim1, $1_dim2 }; - array = obj_to_array_contiguous_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 3) || - !require_size(array, size, 3)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(freearg) - (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY]) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[3] = { -1, -1, -1 }; - array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 3) || - !require_size(array, size, 3)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); -} -%typemap(freearg) - (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - /* for now, only concerned with lists */ - $1 = PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL, int* is_new_object_array=NULL) -{ - npy_intp size[2] = { -1, -1 }; - PyArrayObject* temp_array; - Py_ssize_t i; - int is_new_object; - - /* length of the list */ - $2 = PyList_Size($input); - - /* the arrays */ - array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *)); - object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *)); - is_new_object_array = (int *)calloc($2,sizeof(int)); - - if (array == NULL || object_array == NULL || is_new_object_array == NULL) - { - SWIG_fail; - } - - for (i=0; i<$2; i++) - { - temp_array = obj_to_array_contiguous_allow_conversion(PySequence_GetItem($input,i), DATA_TYPECODE, &is_new_object); - - /* the new array must be stored so that it can be destroyed in freearg */ - object_array[i] = temp_array; - is_new_object_array[i] = is_new_object; - - if (!temp_array || !require_dimensions(temp_array, 2)) SWIG_fail; - - /* store the size of the first array in the list, then use that for comparison. */ - if (i == 0) - { - size[0] = array_size(temp_array,0); - size[1] = array_size(temp_array,1); - } - - if (!require_size(temp_array, size, 2)) SWIG_fail; - - array[i] = (DATA_TYPE*) array_data(temp_array); - } - - $1 = (DATA_TYPE**) array; - $3 = (DIM_TYPE) size[0]; - $4 = (DIM_TYPE) size[1]; -} -%typemap(freearg) - (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - Py_ssize_t i; - - if (array$argnum!=NULL) free(array$argnum); - - /*freeing the individual arrays if needed */ - if (object_array$argnum!=NULL) - { - if (is_new_object_array$argnum!=NULL) - { - for (i=0; i<$2; i++) - { - if (object_array$argnum[i] != NULL && is_new_object_array$argnum[i]) - { Py_DECREF(object_array$argnum[i]); } - } - free(is_new_object_array$argnum); - } - free(object_array$argnum); - } -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, - * DATA_TYPE* IN_ARRAY3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[3] = { -1, -1, -1 }; - array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 3) || - !require_size(array, size, 3)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[3] = { -1, -1, -1 }; - array = obj_to_array_fortran_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 3) || - !require_size(array, size, 3) | !require_fortran(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); -} -%typemap(freearg) - (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, - * DATA_TYPE* IN_FARRAY3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[3] = { -1, -1, -1 }; - array = obj_to_array_fortran_allow_conversion($input, - DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 3) || - !require_size(array, size, 3) || !require_fortran(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY]) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY]) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[4] = { $1_dim0, $1_dim1, $1_dim2 , $1_dim3}; - array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 4) || - !require_size(array, size, 4)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(freearg) - (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY]) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3, DIM_TYPE DIM4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[4] = { -1, -1, -1, -1 }; - array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 4) || - !require_size(array, size, 4)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); - $5 = (DIM_TYPE) array_size(array,3); -} -%typemap(freearg) - (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3, DIM_TYPE DIM4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - /* for now, only concerned with lists */ - $1 = PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL, int* is_new_object_array=NULL) -{ - npy_intp size[3] = { -1, -1, -1 }; - PyArrayObject* temp_array; - Py_ssize_t i; - int is_new_object; - - /* length of the list */ - $2 = PyList_Size($input); - - /* the arrays */ - array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *)); - object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *)); - is_new_object_array = (int *)calloc($2,sizeof(int)); - - if (array == NULL || object_array == NULL || is_new_object_array == NULL) - { - SWIG_fail; - } - - for (i=0; i<$2; i++) - { - temp_array = obj_to_array_contiguous_allow_conversion(PySequence_GetItem($input,i), DATA_TYPECODE, &is_new_object); - - /* the new array must be stored so that it can be destroyed in freearg */ - object_array[i] = temp_array; - is_new_object_array[i] = is_new_object; - - if (!temp_array || !require_dimensions(temp_array, 3)) SWIG_fail; - - /* store the size of the first array in the list, then use that for comparison. */ - if (i == 0) - { - size[0] = array_size(temp_array,0); - size[1] = array_size(temp_array,1); - size[2] = array_size(temp_array,2); - } - - if (!require_size(temp_array, size, 3)) SWIG_fail; - - array[i] = (DATA_TYPE*) array_data(temp_array); - } - - $1 = (DATA_TYPE**) array; - $3 = (DIM_TYPE) size[0]; - $4 = (DIM_TYPE) size[1]; - $5 = (DIM_TYPE) size[2]; -} -%typemap(freearg) - (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - Py_ssize_t i; - - if (array$argnum!=NULL) free(array$argnum); - - /*freeing the individual arrays if needed */ - if (object_array$argnum!=NULL) - { - if (is_new_object_array$argnum!=NULL) - { - for (i=0; i<$2; i++) - { - if (object_array$argnum[i] != NULL && is_new_object_array$argnum[i]) - { Py_DECREF(object_array$argnum[i]); } - } - free(is_new_object_array$argnum); - } - free(object_array$argnum); - } -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, - * DATA_TYPE* IN_ARRAY4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[4] = { -1, -1, -1 , -1}; - array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 4) || - !require_size(array, size, 4)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DIM_TYPE) array_size(array,3); - $5 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3, DIM_TYPE DIM4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[4] = { -1, -1, -1, -1 }; - array = obj_to_array_fortran_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 4) || - !require_size(array, size, 4) | !require_fortran(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); - $5 = (DIM_TYPE) array_size(array,3); -} -%typemap(freearg) - (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, - * DATA_TYPE* IN_FARRAY4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4) -{ - $1 = is_array($input) || PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4) - (PyArrayObject* array=NULL, int is_new_object=0) -{ - npy_intp size[4] = { -1, -1, -1 , -1 }; - array = obj_to_array_fortran_allow_conversion($input, DATA_TYPECODE, - &is_new_object); - if (!array || !require_dimensions(array, 4) || - !require_size(array, size, 4) || !require_fortran(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DIM_TYPE) array_size(array,3); - $5 = (DATA_TYPE*) array_data(array); -} -%typemap(freearg) - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4) -{ - if (is_new_object$argnum && array$argnum) - { Py_DECREF(array$argnum); } -} - -/***************************/ -/* In-Place Array Typemaps */ -/***************************/ - -/* Typemap suite for (DATA_TYPE INPLACE_ARRAY1[ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE INPLACE_ARRAY1[ANY]) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE INPLACE_ARRAY1[ANY]) - (PyArrayObject* array=NULL) -{ - npy_intp size[1] = { $1_dim0 }; - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,1) || !require_size(array, size, 1) || - !require_contiguous(array) || !require_native(array)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1) - (PyArrayObject* array=NULL, int i=1) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,1) || !require_contiguous(array) - || !require_native(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = 1; - for (i=0; i < array_numdims(array); ++i) $2 *= array_size(array,i); -} - -/* Typemap suite for (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1) - (PyArrayObject* array=NULL, int i=0) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,1) || !require_contiguous(array) - || !require_native(array)) SWIG_fail; - $1 = 1; - for (i=0; i < array_numdims(array); ++i) $1 *= array_size(array,i); - $2 = (DATA_TYPE*) array_data(array); -} - -/* Typemap suite for (DATA_TYPE INPLACE_ARRAY2[ANY][ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE INPLACE_ARRAY2[ANY][ANY]) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE INPLACE_ARRAY2[ANY][ANY]) - (PyArrayObject* array=NULL) -{ - npy_intp size[2] = { $1_dim0, $1_dim1 }; - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,2) || !require_size(array, size, 2) || - !require_contiguous(array) || !require_native(array)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,2) || !require_contiguous(array) - || !require_native(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,2) || !require_contiguous(array) || - !require_native(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DATA_TYPE*) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,2) || !require_contiguous(array) - || !require_native(array) || !require_fortran(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,2) || !require_contiguous(array) || - !require_native(array) || !require_fortran(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DATA_TYPE*) array_data(array); -} - -/* Typemap suite for (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY]) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY]) - (PyArrayObject* array=NULL) -{ - npy_intp size[3] = { $1_dim0, $1_dim1, $1_dim2 }; - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,3) || !require_size(array, size, 3) || - !require_contiguous(array) || !require_native(array)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,3) || !require_contiguous(array) || - !require_native(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); -} - -/* Typemap suite for (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - $1 = PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL) -{ - npy_intp size[2] = { -1, -1 }; - PyArrayObject* temp_array; - Py_ssize_t i; - - /* length of the list */ - $2 = PyList_Size($input); - - /* the arrays */ - array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *)); - object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *)); - - if (array == NULL || object_array == NULL) - { - SWIG_fail; - } - - for (i=0; i<$2; i++) - { - temp_array = obj_to_array_no_conversion(PySequence_GetItem($input,i), DATA_TYPECODE); - - /* the new array must be stored so that it can be destroyed in freearg */ - object_array[i] = temp_array; - - if ( !temp_array || !require_dimensions(temp_array, 2) || - !require_contiguous(temp_array) || - !require_native(temp_array) || - !PyArray_EquivTypenums(array_type(temp_array), DATA_TYPECODE) - ) SWIG_fail; - - /* store the size of the first array in the list, then use that for comparison. */ - if (i == 0) - { - size[0] = array_size(temp_array,0); - size[1] = array_size(temp_array,1); - } - - if (!require_size(temp_array, size, 2)) SWIG_fail; - - array[i] = (DATA_TYPE*) array_data(temp_array); - } - - $1 = (DATA_TYPE**) array; - $3 = (DIM_TYPE) size[0]; - $4 = (DIM_TYPE) size[1]; -} -%typemap(freearg) - (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - if (array$argnum!=NULL) free(array$argnum); - if (object_array$argnum!=NULL) free(object_array$argnum); -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, - * DATA_TYPE* INPLACE_ARRAY3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_ARRAY3) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_ARRAY3) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,3) || !require_contiguous(array) - || !require_native(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DATA_TYPE*) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,3) || !require_contiguous(array) || - !require_native(array) || !require_fortran(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, - * DATA_TYPE* INPLACE_FARRAY3) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_FARRAY3) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_FARRAY3) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,3) || !require_contiguous(array) - || !require_native(array) || !require_fortran(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DATA_TYPE*) array_data(array); -} - -/* Typemap suite for (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY]) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY]) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY]) - (PyArrayObject* array=NULL) -{ - npy_intp size[4] = { $1_dim0, $1_dim1, $1_dim2 , $1_dim3 }; - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,4) || !require_size(array, size, 4) || - !require_contiguous(array) || !require_native(array)) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3, DIM_TYPE DIM4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,4) || !require_contiguous(array) || - !require_native(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); - $5 = (DIM_TYPE) array_size(array,3); -} - -/* Typemap suite for (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3, DIM_TYPE DIM4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - $1 = PySequence_Check($input); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL) -{ - npy_intp size[3] = { -1, -1, -1 }; - PyArrayObject* temp_array; - Py_ssize_t i; - - /* length of the list */ - $2 = PyList_Size($input); - - /* the arrays */ - array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *)); - object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *)); - - if (array == NULL || object_array == NULL) - { - SWIG_fail; - } - - for (i=0; i<$2; i++) - { - temp_array = obj_to_array_no_conversion(PySequence_GetItem($input,i), DATA_TYPECODE); - - /* the new array must be stored so that it can be destroyed in freearg */ - object_array[i] = temp_array; - - if ( !temp_array || !require_dimensions(temp_array, 3) || - !require_contiguous(temp_array) || - !require_native(temp_array) || - !PyArray_EquivTypenums(array_type(temp_array), DATA_TYPECODE) - ) SWIG_fail; - - /* store the size of the first array in the list, then use that for comparison. */ - if (i == 0) - { - size[0] = array_size(temp_array,0); - size[1] = array_size(temp_array,1); - size[2] = array_size(temp_array,2); - } - - if (!require_size(temp_array, size, 3)) SWIG_fail; - - array[i] = (DATA_TYPE*) array_data(temp_array); - } - - $1 = (DATA_TYPE**) array; - $3 = (DIM_TYPE) size[0]; - $4 = (DIM_TYPE) size[1]; - $5 = (DIM_TYPE) size[2]; -} -%typemap(freearg) - (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - if (array$argnum!=NULL) free(array$argnum); - if (object_array$argnum!=NULL) free(object_array$argnum); -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, - * DATA_TYPE* INPLACE_ARRAY4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_ARRAY4) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_ARRAY4) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,4) || !require_contiguous(array) - || !require_native(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DIM_TYPE) array_size(array,3); - $5 = (DATA_TYPE*) array_data(array); -} - -/* Typemap suite for (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, - * DIM_TYPE DIM3, DIM_TYPE DIM4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,4) || !require_contiguous(array) || - !require_native(array) || !require_fortran(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = (DIM_TYPE) array_size(array,0); - $3 = (DIM_TYPE) array_size(array,1); - $4 = (DIM_TYPE) array_size(array,2); - $5 = (DIM_TYPE) array_size(array,3); -} - -/* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, - * DATA_TYPE* INPLACE_FARRAY4) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_FARRAY4) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_FARRAY4) - (PyArrayObject* array=NULL) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_dimensions(array,4) || !require_contiguous(array) - || !require_native(array) || !require_fortran(array)) SWIG_fail; - $1 = (DIM_TYPE) array_size(array,0); - $2 = (DIM_TYPE) array_size(array,1); - $3 = (DIM_TYPE) array_size(array,2); - $4 = (DIM_TYPE) array_size(array,3); - $5 = (DATA_TYPE*) array_data(array); -} - -/*************************/ -/* Argout Array Typemaps */ -/*************************/ - -/* Typemap suite for (DATA_TYPE ARGOUT_ARRAY1[ANY]) - */ -%typemap(in,numinputs=0, - fragment="NumPy_Backward_Compatibility,NumPy_Macros") - (DATA_TYPE ARGOUT_ARRAY1[ANY]) - (PyObject* array = NULL) -{ - npy_intp dims[1] = { $1_dim0 }; - array = PyArray_SimpleNew(1, dims, DATA_TYPECODE); - if (!array) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(argout) - (DATA_TYPE ARGOUT_ARRAY1[ANY]) -{ - $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum); -} - -/* Typemap suite for (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1) - */ -%typemap(in,numinputs=1, - fragment="NumPy_Fragments") - (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1) - (PyObject* array = NULL) -{ - npy_intp dims[1]; - if (!PyInt_Check($input)) - { - const char* typestring = pytype_string($input); - PyErr_Format(PyExc_TypeError, - "Int dimension expected. '%s' given.", - typestring); - SWIG_fail; - } - $2 = (DIM_TYPE) PyInt_AsLong($input); - dims[0] = (npy_intp) $2; - array = PyArray_SimpleNew(1, dims, DATA_TYPECODE); - if (!array) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); -} -%typemap(argout) - (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1) -{ - $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum); -} - -/* Typemap suite for (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1) - */ -%typemap(in,numinputs=1, - fragment="NumPy_Fragments") - (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1) - (PyObject* array = NULL) -{ - npy_intp dims[1]; - if (!PyInt_Check($input)) - { - const char* typestring = pytype_string($input); - PyErr_Format(PyExc_TypeError, - "Int dimension expected. '%s' given.", - typestring); - SWIG_fail; - } - $1 = (DIM_TYPE) PyInt_AsLong($input); - dims[0] = (npy_intp) $1; - array = PyArray_SimpleNew(1, dims, DATA_TYPECODE); - if (!array) SWIG_fail; - $2 = (DATA_TYPE*) array_data(array); -} -%typemap(argout) - (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1) -{ - $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum); -} - -/* Typemap suite for (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY]) - */ -%typemap(in,numinputs=0, - fragment="NumPy_Backward_Compatibility,NumPy_Macros") - (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY]) - (PyObject* array = NULL) -{ - npy_intp dims[2] = { $1_dim0, $1_dim1 }; - array = PyArray_SimpleNew(2, dims, DATA_TYPECODE); - if (!array) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(argout) - (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY]) -{ - $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum); -} - -/* Typemap suite for (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY]) - */ -%typemap(in,numinputs=0, - fragment="NumPy_Backward_Compatibility,NumPy_Macros") - (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY]) - (PyObject* array = NULL) -{ - npy_intp dims[3] = { $1_dim0, $1_dim1, $1_dim2 }; - array = PyArray_SimpleNew(3, dims, DATA_TYPECODE); - if (!array) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(argout) - (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY]) -{ - $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum); -} - -/* Typemap suite for (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY]) - */ -%typemap(in,numinputs=0, - fragment="NumPy_Backward_Compatibility,NumPy_Macros") - (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY]) - (PyObject* array = NULL) -{ - npy_intp dims[4] = { $1_dim0, $1_dim1, $1_dim2, $1_dim3 }; - array = PyArray_SimpleNew(4, dims, DATA_TYPECODE); - if (!array) SWIG_fail; - $1 = ($1_ltype) array_data(array); -} -%typemap(argout) - (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY]) -{ - $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum); -} - -/*****************************/ -/* Argoutview Array Typemaps */ -/*****************************/ - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim_temp) -{ - $1 = &data_temp; - $2 = &dim_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1) -{ - npy_intp dims[1] = { *$2 }; - PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEW_ARRAY1) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DATA_TYPE** ARGOUTVIEW_ARRAY1) - (DIM_TYPE dim_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim_temp; - $2 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEW_ARRAY1) -{ - npy_intp dims[1] = { *$1 }; - PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$2)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) -{ - npy_intp dims[2] = { *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_ARRAY2) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEW_ARRAY2) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_ARRAY2) -{ - npy_intp dims[2] = { *$1, *$2 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements") - (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) -{ - npy_intp dims[2] = { *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_FARRAY2) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEW_FARRAY2) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_FARRAY2) -{ - npy_intp dims[2] = { *$1, *$2 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) -{ - npy_intp dims[3] = { *$2, *$3, *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, - DATA_TYPE** ARGOUTVIEW_ARRAY3) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_ARRAY3) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_ARRAY3) -{ - npy_intp dims[3] = { *$1, *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements") - (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) -{ - npy_intp dims[3] = { *$2, *$3, *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, - DATA_TYPE** ARGOUTVIEW_FARRAY3) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DATA_TYPE** ARGOUTVIEW_FARRAY3) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_FARRAY3) -{ - npy_intp dims[3] = { *$1, *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3, DIM_TYPE* DIM4) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; - $5 = &dim4_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) -{ - npy_intp dims[4] = { *$2, *$3, *$4 , *$5 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, - DATA_TYPE** ARGOUTVIEW_ARRAY4) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEW_ARRAY4) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &dim4_temp; - $5 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_ARRAY4) -{ - npy_intp dims[4] = { *$1, *$2, *$3 , *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3, DIM_TYPE* DIM4) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; - $5 = &dim4_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements") - (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) -{ - npy_intp dims[4] = { *$2, *$3, *$4 , *$5 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, - DATA_TYPE** ARGOUTVIEW_FARRAY4) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEW_FARRAY4) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &dim4_temp; - $5 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_FARRAY4) -{ - npy_intp dims[4] = { *$1, *$2, *$3 , *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - $result = SWIG_Python_AppendOutput($result,obj); -} - -/*************************************/ -/* Managed Argoutview Array Typemaps */ -/*************************************/ - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim_temp) -{ - $1 = &data_temp; - $2 = &dim_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1) -{ - npy_intp dims[1] = { *$2 }; - PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEWM_ARRAY1) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DATA_TYPE** ARGOUTVIEWM_ARRAY1) - (DIM_TYPE dim_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim_temp; - $2 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEWM_ARRAY1) -{ - npy_intp dims[1] = { *$1 }; - PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$2)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) -{ - npy_intp dims[2] = { *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_ARRAY2) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEWM_ARRAY2) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_ARRAY2) -{ - npy_intp dims[2] = { *$1, *$2 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2) -{ - npy_intp dims[2] = { *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_FARRAY2) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEWM_FARRAY2) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_FARRAY2) -{ - npy_intp dims[2] = { *$1, *$2 }; - PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) -{ - npy_intp dims[3] = { *$2, *$3, *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, - DATA_TYPE** ARGOUTVIEWM_ARRAY3) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DATA_TYPE** ARGOUTVIEWM_ARRAY3) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_ARRAY3) -{ - npy_intp dims[3] = { *$1, *$2, *$3 }; - PyObject* obj= PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) -{ - npy_intp dims[3] = { *$2, *$3, *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, - DATA_TYPE** ARGOUTVIEWM_FARRAY3) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DATA_TYPE** ARGOUTVIEWM_FARRAY3) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_FARRAY3) -{ - npy_intp dims[3] = { *$1, *$2, *$3 }; - PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3, DIM_TYPE* DIM4) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; - $5 = &dim4_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) -{ - npy_intp dims[4] = { *$2, *$3, *$4 , *$5 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, - DATA_TYPE** ARGOUTVIEWM_ARRAY4) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_ARRAY4) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &dim4_temp; - $5 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_ARRAY4) -{ - npy_intp dims[4] = { *$1, *$2, *$3 , *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3, DIM_TYPE* DIM4) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; - $5 = &dim4_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3) -{ - npy_intp dims[4] = { *$2, *$3, *$4 , *$5 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, - DATA_TYPE** ARGOUTVIEWM_FARRAY4) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_FARRAY4) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &dim4_temp; - $5 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_FARRAY4) -{ - npy_intp dims[4] = { *$1, *$2, *$3 , *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3, DIM_TYPE* DIM4) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; - $5 = &dim4_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) -{ - npy_intp dims[4] = { *$2, *$3, *$4 , *$5 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, - DATA_TYPE** ARGOUTVIEWM_ARRAY4) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_ARRAY4) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &dim4_temp; - $5 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_ARRAY4) -{ - npy_intp dims[4] = { *$1, *$2, *$3 , *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, - DIM_TYPE* DIM3, DIM_TYPE* DIM4) - */ -%typemap(in,numinputs=0) - (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 ) - (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp) -{ - $1 = &data_temp; - $2 = &dim1_temp; - $3 = &dim2_temp; - $4 = &dim3_temp; - $5 = &dim4_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4) -{ - npy_intp dims[4] = { *$2, *$3, *$4 , *$5 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, - DATA_TYPE** ARGOUTVIEWM_FARRAY4) - */ -%typemap(in,numinputs=0) - (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_FARRAY4) - (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL ) -{ - $1 = &dim1_temp; - $2 = &dim2_temp; - $3 = &dim3_temp; - $4 = &dim4_temp; - $5 = &data_temp; -} -%typemap(argout, - fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities") - (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_FARRAY4) -{ - npy_intp dims[4] = { *$1, *$2, *$3 , *$4 }; - PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5)); - PyArrayObject* array = (PyArrayObject*) obj; - - if (!array || !require_fortran(array)) SWIG_fail; - -%#ifdef SWIGPY_USE_CAPSULE - PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap); -%#else - PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free); -%#endif - -%#if NPY_API_VERSION < 0x00000007 - PyArray_BASE(array) = cap; -%#else - PyArray_SetBaseObject(array,cap); -%#endif - - $result = SWIG_Python_AppendOutput($result,obj); -} - -/**************************************/ -/* In-Place Array Typemap - flattened */ -/**************************************/ - -/* Typemap suite for (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT) - */ -%typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY, - fragment="NumPy_Macros") - (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT) -{ - $1 = is_array($input) && PyArray_EquivTypenums(array_type($input), - DATA_TYPECODE); -} -%typemap(in, - fragment="NumPy_Fragments") - (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT) - (PyArrayObject* array=NULL, int i=1) -{ - array = obj_to_array_no_conversion($input, DATA_TYPECODE); - if (!array || !require_c_or_f_contiguous(array) - || !require_native(array)) SWIG_fail; - $1 = (DATA_TYPE*) array_data(array); - $2 = 1; - for (i=0; i < array_numdims(array); ++i) $2 *= array_size(array,i); -} - -%enddef /* %numpy_typemaps() macro */ -/* *************************************************************** */ - -/* Concrete instances of the %numpy_typemaps() macro: Each invocation - * below applies all of the typemaps above to the specified data type. - */ -%numpy_typemaps(signed char , NPY_BYTE , int) -%numpy_typemaps(unsigned char , NPY_UBYTE , int) -%numpy_typemaps(short , NPY_SHORT , int) -%numpy_typemaps(unsigned short , NPY_USHORT , int) -%numpy_typemaps(int , NPY_INT , int) -%numpy_typemaps(unsigned int , NPY_UINT , int) -%numpy_typemaps(long , NPY_LONG , int) -%numpy_typemaps(unsigned long , NPY_ULONG , int) -%numpy_typemaps(long long , NPY_LONGLONG , int) -%numpy_typemaps(unsigned long long, NPY_ULONGLONG, int) -%numpy_typemaps(float , NPY_FLOAT , int) -%numpy_typemaps(double , NPY_DOUBLE , int) -%numpy_typemaps(int8_t , NPY_INT8 , int) -%numpy_typemaps(int16_t , NPY_INT16 , int) -%numpy_typemaps(int32_t , NPY_INT32 , int) -%numpy_typemaps(int64_t , NPY_INT64 , int) -%numpy_typemaps(uint8_t , NPY_UINT8 , int) -%numpy_typemaps(uint16_t , NPY_UINT16 , int) -%numpy_typemaps(uint32_t , NPY_UINT32 , int) -%numpy_typemaps(uint64_t , NPY_UINT64 , int) - - -/* *************************************************************** - * The follow macro expansion does not work, because C++ bool is 4 - * bytes and NPY_BOOL is 1 byte - * - * %numpy_typemaps(bool, NPY_BOOL, int) - */ - -/* *************************************************************** - * On my Mac, I get the following warning for this macro expansion: - * 'swig/python detected a memory leak of type 'long double *', no destructor found.' - * - * %numpy_typemaps(long double, NPY_LONGDOUBLE, int) - */ - -#ifdef __cplusplus - -%include - -%numpy_typemaps(std::complex, NPY_CFLOAT , int) -%numpy_typemaps(std::complex, NPY_CDOUBLE, int) - -#endif - -#endif /* SWIGPYTHON */ diff --git a/vivado/Software/lsuio/src/attr.c b/vivado/Software/lsuio/src/attr.c deleted file mode 100644 index 4245140f..00000000 --- a/vivado/Software/lsuio/src/attr.c +++ /dev/null @@ -1,250 +0,0 @@ -/* - * libuio - UserspaceIO helper library - * - * Copyright (C) 2011 Benedikt Spranger - * based on libUIO by Hans J. Koch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif /* HAVE_CONFIG_H */ - -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include "libuio_internal.h" - -/** - * @defgroup libuio_attr libuio attribute functions - * @ingroup libuio_public - * @brief public attribute functions - * @{ - */ - -/** - * list UIO attributes - * @param info UIO device info struct - * @returns attribute list or NULL on failure - */ -char **uio_list_attr (struct uio_info_t* info) -{ - struct dirent **namelist; - char **list; - int i, t = 0, nr; - char path[PATH_MAX]; - - if (!info) - { - errno = EINVAL; - g_warning (_("uio_list_attr: %s"), g_strerror (errno)); - return NULL; - } - - snprintf(path, PATH_MAX, "%s/attr/",info->path); - - nr = scandir (path, &namelist, 0, alphasort); - if (nr < 0) - { - g_warning (_("scandir: %s"), g_strerror (errno)); - return NULL; - } - - list = calloc (nr, sizeof (*list)); - if (!list) - { - errno = ENOMEM; - g_warning (_("calloc: %s"), g_strerror (errno)); - goto out; - } - - for (i = 0; i < nr; i++) - { - if (!strcmp (namelist [i]->d_name, ".") || - !strcmp (namelist [i]->d_name, "..")) - continue; - - list [t] = strdup (namelist [i]->d_name); - if (list [t]) - t++; - } - -out: - for (i = 0; i < nr; i++) - free (namelist [i]); - free (namelist); - - return list; -} - -/** - * get UIO attribute - * @param info UIO device info struct - * @param attr attribute name - * @returns UIO attribute content or NULL on failure - */ -char *uio_get_attr (struct uio_info_t* info, char *attr) -{ - char filename [PATH_MAX]; - - if (!info || !attr) - { - g_warning (_("uio_get_attr: %s\n"), g_strerror (EINVAL)); - return NULL; - } - snprintf (filename, PATH_MAX, "%s/attr/%s", info->path, attr); - - return first_line_from_file (filename); -} - -/** - * set UIO attribute - * @param info UIO device info struct - * @param attr attribute name - * @param value attribute content - * @returns 0 on succes or -1 on failure - */ -int uio_set_attr (struct uio_info_t* info, char *attr, char *value) -{ - char filename [PATH_MAX]; - int err, fd, ret = -1; - size_t len; - - if (!info || !attr || !value) { - errno = EINVAL; - g_warning (_("uio_set_attr: %s"), g_strerror (errno)); - return -1; - } - snprintf (filename, PATH_MAX, "%s/attr/%s", info->path, attr); - - fd = open (filename, O_WRONLY); - if (fd < 0) - { - g_warning (_("open: %s"), g_strerror (errno)); - return -1; - } - - len = write (fd, value, strlen (value)); - if (len > 0) - ret = 0; - - err = errno; - close (fd); - errno = err; - - return ret; -} - -/** - * get binary UIO attribute - * @param info UIO device info struct - * @param attr attribute name - * @param count read count byte - * @returns UIO attribute content or NULL on failure - */ -void *uio_get_bin_attr (struct uio_info_t* info, char *attr, size_t count) -{ - char filename [PATH_MAX]; - void *value; - size_t len; - int err, fd; - - if (!info || !attr || count <= 0) - { - errno = EINVAL; - g_warning (_("uio_get_bin_attr: %s\n"), g_strerror (errno)); - return NULL; - } - - value = malloc (count); - if (!value) - { - errno = ENOMEM; - g_warning (_("uio_get_bin_attr: %s\n"), g_strerror (errno)); - return NULL; - } - - snprintf (filename, PATH_MAX, "%s/attr/%s", info->path, attr); - - fd = open (filename, O_RDONLY); - if (fd < 0) - { - free (value); - g_warning (_("open: %s"), g_strerror (errno)); - return NULL; - } - - len = read (fd, value, count); - if (len <= 0) - { - free (value); - value = NULL; - } - - err = errno; - close (fd); - errno = err; - - return value; -} - -/** - * set binary UIO attribute - * @param info UIO device info struct - * @param attr attribute name - * @param value attribute content - * @returns 0 on succes or -1 on failure - */ -int uio_set_bin_attr (struct uio_info_t* info, char *attr, - void *value, size_t count) -{ - char filename [PATH_MAX]; - int err, fd, ret = -1; - size_t len; - - if (!info || !attr || !value) { - errno = EINVAL; - g_warning (_("uio_set_attr: %s"), g_strerror (errno)); - return -1; - } - snprintf (filename, PATH_MAX, "%s/attr/%s", info->path, attr); - - fd = open (filename, O_WRONLY); - if (fd < 0) - { - g_warning (_("open: %s"), g_strerror (errno)); - return -1; - } - - len = write (fd, value, count); - if (len > 0) - ret = 0; - - err = errno; - close (fd); - errno = err; - - return ret; -} - -/** @} */ diff --git a/vivado/Software/lsuio/src/helper.c b/vivado/Software/lsuio/src/helper.c deleted file mode 100644 index b66541cc..00000000 --- a/vivado/Software/lsuio/src/helper.c +++ /dev/null @@ -1,295 +0,0 @@ -/* - * libuio - UserspaceIO helper library - * - * Copyright (C) 2011 Benedikt Spranger - * based on libUIO by Hans J. Koch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif /* HAVE_CONFIG_H */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include "libuio_internal.h" - -/** - * @defgroup libuio_helper generic libuio helper functions - * @ingroup libuio - * @brief helper functions - * @{ - */ - -/** - * read a line from a file - * @param filename file name - * @returns first line or NULL on failure - */ -char *first_line_from_file (char *filename) -{ - char c, *out; - int fd, len; - - fd = open (filename, O_RDONLY); - if (fd < 0) - { - g_warning (_("open: %s: %s"), filename, g_strerror (errno)); - return NULL; - } - - for (len = 0; ((read (fd, &c, 1) == 1) && (c != '\n')); len++); - lseek (fd, 0, SEEK_SET); - - out = malloc (len + 1); - if (!out) - { - errno = ENOMEM; - g_warning (_("malloc: %s"), g_strerror (errno)); - goto out; - } - - len = read (fd, out, len); - if (len < 0) - { - g_warning (_("read: %s"), g_strerror (errno)); - free (out); - out = NULL; - goto out; - } - - out [len] = 0; -out: - close (fd); - - return out; -} - -/** - * read device id from file - * @param filename file name - * @returns device id or 0 on failure - */ -dev_t devid_from_file (char *filename) -{ - FILE *fhan; - int major, minor; - dev_t devid = 0; - - fhan = fopen (filename, "r"); - if (!fhan) - { - g_warning (_("fopen: %s"), g_strerror (errno)); - goto out; - } - - if (fscanf (fhan, "%d:%d", &major, &minor) == 2) - devid = makedev (major, minor); - -out: - if (fhan) - fclose (fhan); - return devid; -} - -/** - * read a line from a file - * @param dir map directory - * @param maxmap available maps - * @returns maps or NULL on failure/no maps - */ -static struct uio_map_t *scan_maps (char *dir, int *maxmap) -{ - struct uio_map_t *map = NULL; - struct dirent **namelist; - char *tmp, name [PATH_MAX]; - int nr, i, t = 0; - - *maxmap = 0; - nr = scandir (dir, &namelist, 0, alphasort); - if (nr < 0) - return NULL; - - map = calloc (nr, sizeof (struct uio_map_t)); - if (!map) - { - errno = ENOMEM; - g_warning (_("calloc: %s"), g_strerror (errno)); - goto out; - } - - for (i = 0; i < nr; i++) - { - if (!strcmp (namelist [i]->d_name, ".") || - !strcmp (namelist [i]->d_name, "..")) - { - free (namelist [i]); - continue; - } - - snprintf (name, sizeof (name), "%s/%s/addr", - dir, namelist [i]->d_name); - tmp = first_line_from_file (name); - map [t].addr = strtoul (tmp, NULL, 0); - free (tmp); - - snprintf (name, sizeof (name), "%s/%s/name", - dir, namelist [i]->d_name); - map [t].name = first_line_from_file (name); - - snprintf (name, sizeof (name), "%s/%s/size", - dir, namelist [i]->d_name); - tmp = first_line_from_file (name); - map [t].size = strtoul (tmp, NULL, 0); - free (tmp); - map [t].offset = map [t].addr & (getpagesize () - 1); - map [t].map = MAP_FAILED; - - *maxmap = ++t; - - free (namelist [i]); - } -out: - free (namelist); - return map; -} - -/** - * search device node name by major/minor - * @param dir start in directory dir - * @param devid major/minor - * @param devname first matching device node name - * @returns -1 on error, 0 on not found and 1 on success - */ -static int search_major_minor (const char *dir, dev_t devid, char **devname) -{ - struct dirent **namelist; - struct stat stat; - char name [PATH_MAX]; - int i, nr, ret = 0; - - if (!devname) - { - errno = EINVAL; - g_warning (_("search_major_minor: %s"), g_strerror (errno)); - return -1; - } - - nr = scandir (dir, &namelist, 0, alphasort); - if (nr < 0) - { - g_warning (_("scandir: %s"), g_strerror (errno)); - return nr; - } - - for (i = 0; i < nr; i++) - { - if (!strcmp (namelist [i]->d_name, ".") || - !strcmp (namelist [i]->d_name, "..")) - continue; - - snprintf (name, sizeof (name), "%s/%s", - dir, namelist [i]->d_name); - - ret = lstat (name, &stat); - if (ret < 0) - { - g_warning (_("lstat: %s"), g_strerror (errno)); - goto out; - } - - if (S_ISDIR (stat.st_mode)) - { - ret = search_major_minor (name, devid, devname); - if (ret != 0) - goto out; - } - - if (S_ISCHR (stat.st_mode)) - { - if (stat.st_rdev != devid) - continue; - - *devname = strdup (name); - if (!*devname) - { - errno = ENOMEM; - g_warning (_("strdup: %s"), g_strerror (errno)); - ret = -1; - } - else - ret = 1; - goto out; - } - } -out: - for (i = 0; i < nr; i++) - free (namelist [i]); - - free (namelist); - - return ret; -} - -/** - * create UIO device info struct - * @param dir sysfs directory - * @param name uio device entry - * @returns UIO device info struct or NULL on failure - */ -struct uio_info_t *create_uio_info (char *dir, char *name) -{ - struct uio_info_t *info; - char filename [PATH_MAX]; - - info = calloc (1, sizeof (struct uio_info_t)); - if (!info) - return NULL; - - snprintf (filename, PATH_MAX, "%s/%s", dir, name); - info->path = strdup (filename); - - snprintf (filename, PATH_MAX, "%s/%s/name", dir, name); - info->name = first_line_from_file (filename); - - snprintf (filename, PATH_MAX, "%s/%s/version", dir, name); - info->version = first_line_from_file (filename); - - snprintf (filename, PATH_MAX, "%s/%s/dev", dir, name); - info->devid = devid_from_file (filename); - - search_major_minor ("/dev", info->devid, &info->devname); - - snprintf (filename, PATH_MAX, "%s/%s/maps", dir, name); - info->maps = scan_maps (filename, &info->maxmap); - - info->fd = -1; - - return info; -} - -/** @} */ diff --git a/vivado/Software/lsuio/src/libuio.h b/vivado/Software/lsuio/src/libuio.h deleted file mode 100644 index 36d72873..00000000 --- a/vivado/Software/lsuio/src/libuio.h +++ /dev/null @@ -1,102 +0,0 @@ -/* - * libuio - UserspaceIO helper library - * - * Copyright (C) 2011 Benedikt Spranger - * based on libUIO by Hans J. Koch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#ifndef LIBUIO_H -#define LIBUIO_H - -#include -#include - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -struct uio_info_t; - -/* base functions */ -struct uio_info_t **uio_find_devices (); -struct uio_info_t *uio_find_by_uio_name (char *uio_name); -struct uio_info_t *uio_find_by_uio_num (int num); -struct uio_info_t *uio_find_by_base_addr (unsigned int base_addr); -void uio_setsysfs_point (const char *sysfs_mpoint); -char *uio_get_name (struct uio_info_t* info); -char *uio_get_version (struct uio_info_t* info); -char *uio_get_devname (struct uio_info_t* info); -int uio_get_major (struct uio_info_t* info); -int uio_get_minor (struct uio_info_t* info); -dev_t uio_get_devid (struct uio_info_t* info); -int uio_get_fd (struct uio_info_t* info); -int uio_open (struct uio_info_t* info); -int uio_open_fix (struct uio_info_t* info, void *ptr); -int uio_open_private (struct uio_info_t* info); -int uio_close (struct uio_info_t* info); - -/* attribute functions */ -char **uio_list_attr (struct uio_info_t* info); -char *uio_get_attr (struct uio_info_t* info, char *attr); -int uio_set_attr (struct uio_info_t* info, char *attr, char *value); -void *uio_get_bin_attr (struct uio_info_t* info, char *attr, size_t count); -int uio_set_bin_attr (struct uio_info_t* info, char *attr, - void *value, size_t count); - -/* memory functions */ -int uio_get_maxmap (struct uio_info_t* info); -size_t uio_get_mem_size (struct uio_info_t* info, int map); -unsigned long uio_get_mem_addr (struct uio_info_t* info, int map); -void *uio_get_mem_map (struct uio_info_t* info, int map); -char *uio_get_mem_name (struct uio_info_t* info, int map_num); -size_t uio_get_offset (struct uio_info_t* info, int map); -int uio_get_map_index_by_name (struct uio_info_t* info, char *name); -int uio_read8 (struct uio_info_t* info, int map, unsigned long offset, - uint8_t *val); -int uio_read16 (struct uio_info_t* info, int map, unsigned long offset, - uint16_t *val); -int uio_read32 (struct uio_info_t* info, int map, unsigned long offset, - uint32_t *val); -int uio_read64 (struct uio_info_t* info, int map, unsigned long offset, - uint64_t *val); -int uio_write8 (struct uio_info_t* info, int map, unsigned long offset, - uint8_t val); -int uio_write16 (struct uio_info_t* info, int map, unsigned long offset, - uint16_t val); -int uio_write32 (struct uio_info_t* info, int map, unsigned long offset, - uint32_t val); -int uio_write64 (struct uio_info_t* info, int map, unsigned long offset, - uint64_t val); - -/* irq functions */ -int uio_enable_irq (struct uio_info_t* info); -int uio_disable_irq (struct uio_info_t* info); -int uio_irqwait_timeout (struct uio_info_t* info, struct timeval *timeout); - -static inline int uio_irqwait (struct uio_info_t* info) -{ - return uio_irqwait_timeout (info, NULL); -} - -#ifdef __cplusplus -} -#endif - -#endif /* LIBUIO_H */ diff --git a/vivado/Software/lsuio/src/libuio_internal.h b/vivado/Software/lsuio/src/libuio_internal.h deleted file mode 100644 index 0cd118e9..00000000 --- a/vivado/Software/lsuio/src/libuio_internal.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * libuio - UserspaceIO helper library - * - * Copyright (C) 2011 Benedikt Spranger - * based on libUIO by Hans J. Koch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#ifndef LIBUIO_INTERNAL_H -#define LIBUIO_INTERNAL_H - -#include "libuio.h" - -#ifdef USE_GLIB -#include -#else -#define g_strerror strerror -#define g_warning(...) fprintf(stderr, __VA_ARGS__) -#endif - -#if ENABLE_NLS -# include -# define _(Text) gettext (Text) -#else -# define textdomain(Domain) -# define _(Text) Text -#endif -#define N_(Text) Text - -struct uio_map_t { - unsigned long addr; - size_t size; - size_t offset; - char *name; - void *map; -}; - -struct uio_info_t { - char *path; - char *name; - char *version; - struct uio_map_t *maps; - char *devname; - dev_t devid; - int maxmap; - int fd; -}; - -struct uio_info_t* create_uio_info (char *dir, char* name); -char *first_line_from_file (char *filename); - -#endif /* LIBUIO_INTERNAL_H */ diff --git a/vivado/Software/lsuio/src/mem.c b/vivado/Software/lsuio/src/mem.c deleted file mode 100644 index 15983a0a..00000000 --- a/vivado/Software/lsuio/src/mem.c +++ /dev/null @@ -1,339 +0,0 @@ -/* - * libuio - UserspaceIO helper library - * - * Copyright (C) 2011 Benedikt Spranger - * based on libUIO by Hans J. Koch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License version 2.1 as published by the Free Software Foundation - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include "libuio_internal.h" - -/** - * @defgroup libuio_mem libuio memory functions - * @ingroup libuio_public - * @brief public memory functions - * @{ - */ - -/** - * get memory map size of UIO memory bar - * @param info UIO device info struct - * @param map_num memory bar number - * @return size of UIO memory bar or 0 on failure - */ -size_t uio_get_mem_size (struct uio_info_t* info, int map_num) -{ - if (!info || map_num >= info->maxmap) - return 0; - - return info->maps [map_num].size; -} - -/** - * get memory map offset of UIO memory bar - * @param info UIO device info struct - * @param map_num memory bar number - * @return size of UIO memory bar - */ -size_t uio_get_offset (struct uio_info_t* info, int map_num) -{ - if (!info || map_num >= info->maxmap) - return 0; - - return info->maps [map_num].offset; -} - -/** - * get memory map physical address of UIO memory bar - * @param info UIO device info struct - * @param map_num memory bar number - * @return physical address of UIO memory bar or 0 on failure - */ -unsigned long uio_get_mem_addr (struct uio_info_t* info, int map_num) -{ - if (!info || map_num >= info->maxmap) - return 0; - - return info->maps [map_num].addr; -} - -/** - * get memory map pointer - * @param info UIO device info struct - * @param map_num memory bar number - * @return UIO memory bar maped pointer or NULL on failure - */ -void *uio_get_mem_map (struct uio_info_t* info, int map_num) -{ - if (!info || - map_num >= info->maxmap || - info->maps [map_num].map == MAP_FAILED) - return NULL; - - return info->maps [map_num].map; -} - -/** - * get memory map name - * @param info UIO device info struct - * @param map_num memory bar number - * @return UIO memory bar name or NULL on failure - */ -char *uio_get_mem_name (struct uio_info_t* info, int map_num) -{ - if (!info || - map_num >= info->maxmap) - return NULL; - - return info->maps [map_num].name; -} - -/** - * get UIO device map count - * @param info UIO device info struct - * @return number of UIO memory bars - */ -int uio_get_maxmap(struct uio_info_t* info) -{ - if (!info) - return 0; - - return info->maxmap; -} - -/** - * get UIO device map number by map name - * @param info UIO device info struct - * @param char UIO device map name - * @return UIO device map number or -1 on failure - */ -int uio_get_map_index_by_name (struct uio_info_t* info, char *name) -{ - int i, ret = -1; - - if (!info || !name) - return -1; - - for (i = 0; i < info->maxmap; i++) - { - if (!strcmp (name, info->maps [i].name)) - { - ret = i; - break; - } - } - - return ret; -} - -/** - * read 8 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_read8 (struct uio_info_t* info, int map_num, unsigned long offset, - uint8_t *val) -{ - void *ptr; - - if (!info || !val) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *val = *(volatile uint8_t *) ptr; - - return 0; -} - -/** - * read 16 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_read16 (struct uio_info_t* info, int map_num, unsigned long offset, - uint16_t *val) -{ - void *ptr; - - if (!info || !val) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *val = *(volatile uint16_t *) ptr; - - return 0; -} - -/** - * read 32 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_read32 (struct uio_info_t* info, int map_num, unsigned long offset, - uint32_t *val) -{ - void *ptr; - - if (!info || !val) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *val = *(volatile uint32_t *) ptr; - - return 0; -} - -/** - * read 64 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_read64 (struct uio_info_t* info, int map_num, unsigned long offset, - uint64_t *val) -{ - void *ptr; - - if (!info || !val) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *val = *(volatile uint64_t *) ptr; - - return 0; -} - -/** - * write 8 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_write8 (struct uio_info_t* info, int map_num, unsigned long offset, - uint8_t val) -{ - void *ptr; - - if (!info) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *(volatile uint8_t *) ptr = val; - - return 0; -} - -/** - * write 16 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_write16 (struct uio_info_t* info, int map_num, unsigned long offset, - uint16_t val) -{ - void *ptr; - - if (!info) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *(volatile uint16_t *) ptr = val; - - return 0; -} - -/** - * write 32 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_write32 (struct uio_info_t* info, int map_num, unsigned long offset, - uint32_t val) -{ - void *ptr; - - if (!info) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *(volatile uint32_t *) ptr = val; - - return 0; -} - -/** - * write 64 bit from UIO device map - * @param info UIO device info struct - * @param map_num memory bar number - * @param offset register offset - * @param val register value - * @return 0 on success or -1 on failure - */ -int uio_write64 (struct uio_info_t* info, int map_num, unsigned long offset, - uint64_t val) -{ - void *ptr; - - if (!info) - return -1; - - ptr = info->maps [map_num].map + info->maps [map_num].offset + offset; - - *(volatile uint64_t *) ptr = val; - - return 0; -} - -/** @} */ diff --git a/vivado/Software/pysetup/python-versions.txt b/vivado/Software/pysetup/python-versions.txt deleted file mode 100644 index b8c5d40b..00000000 --- a/vivado/Software/pysetup/python-versions.txt +++ /dev/null @@ -1,2 +0,0 @@ -3.6.10 -3.6-dev \ No newline at end of file diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/ld-linux-armhf.so.3 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/ld-linux-armhf.so.3 deleted file mode 100644 index 8703d59c7fe205d1d11c48e7c58ed93f4fe12b74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101684 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

NxE8K*bj=wbjVcisc0M<+3D8f4E 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 VVJ=%{akKe<54eA@FL+wG{{@jOn3(_o diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/ld-linux.so.3 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/ld-linux.so.3 deleted file mode 100644 index 8703d59c7fe205d1d11c48e7c58ed93f4fe12b74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101684 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

NxE8K*bj=wbjVcisc0M<+3D8f4E z_wnVzfTaZeU`YB#SdJCaaYgWJ!3C~boPF;9coC?(OxQq%U#*mF(*t{d+Xi3;HPlIs~N8VxYdgO zgW?Reu#sfgk2B`!JfNoz(8_L0U4w^j)_nur+JQPs*Gtt3;Sg@Ic{K#{G|Z@zaJMp8 zuMqZh?Y3=o*7$z&yJ+)L^E0!H=%Z*_gWVQA%CMUy-s0GeBw8x6=A3)yrAiYHB|I4b$_qr(q z7|p3EZOpa;pS=M}c8$*6D!czn9>sdFSbZ30c{w$qpwD{JO_&L3{p7aYdnvu}f2KuY z2L@U+!(vFUDsbAkg{Niknb+n&6qD@y| zJ=ktc#ynrYL296rCKr!EX8slKa-4HGF2GGY3R(OS=mUWE(%_B&xK=?n4|mN!pnHRx z0Cyl@CwS#L$V0b72AT+P1$4^5TYruFCrHmh_$$asEmFu%k*^u<%|qbD4@1ZCCHQLO z{Ty-25VryDH(#I(T#E#JcLyP@fL##JJb>E-cpH8tWR^d`zXJYDdRlot$e8msDAmkt@L(&Y4+0eZ^fux zrEFLBio$3m>~7Ir!pIz9at)-2>}V15w8qyyJ}df3%q4Y_S+t zt3x`L8Vb3sX!CQ^-$0d5iS)D_&F`xv;Oz~`4VQ>2zMu1|q!umU!tdhs4CSt`^w1ZZ zJ~U<mr6 zyycp4moXP*gO=-V6Lkf2c>zhNCFgTpX5E(oRiIU6EfP1E3YI(W3t@z*tTMVphjfQE+HM$r5cYhgn zjSkJj`AowaDFSQVSV)hT%6wQFY+hvlVVwnLKrE=LvJkmSu!+M9~WV-_v7NCaKBqx zs@L8-S!RDqt~TN(l#4x!Q3wqCk$~gdLxQ*KFNgcJD0};&zmcc{?V5 z`t9VQ?k$XTw~n-4H#xay`Pb~(-*1+K&;6Y1VBPJ@+_92dl6_V2JCYNf9PDmR z7I_~$tFrKkXnQ@lk3?zYZ*T(xsU^Ysq3C7nho%{<*YE*Nk^Coi6_d|PEb_yfT1%u65-StA`a!|L zVxDbXJ?nI9M(%d(t|4V{C6xCrHzgJ_!NEl$?F9CoIcxqY^d+kwz=Cg#>r-D#(e+X31vg%6f6bUP{yySBN~7 zW61V<3h@q+kHs4uo`R$IRnS$>9Wg7+41A7RKrovjKl>|}IS^Z#kDtq@M$m116x>bu%sy`6jo`I^beo%NThY z6Y7jfJMdd`aC&h6ERv|nZDS7xp}kmJm0r>OgtNXV+X!cU;kMyUH^dg`bXB(A{m{`@ zGbFH?5S+7QJz(8F=ofJ&egnAq8O}ck-VcNSHqNtfyvH{i;XuHAfFD2x_~jZQMf7b# zz&V_0v*B*V+1HKt20sEU184yhFCD6s94yTl##iNax7kwZ?!Ryu_wb;lhNEj__l3~ zc{j#0jF&_*7OzMz>$t+s0y=XMNu9al^5{DxtJ_KrQt5`IjPB%zGSKJDhYT6&>H@qO zcJF)^EM#JaL6X1(53cPjl&Z!pp21#9BInVKG9bSEOiL|XK>Ck=C^r5gt zM6Wd@cz6;M|94x$;vL`vTW?ZnsK1^{LccYQUpxaRXu@wwveQWb5fRPQN#(p}2?S07p8<1+dF%Ln~o+vSL(@i{$WJ}@0G(dWZ9 zO15EK{_Dw;+mr{p3{?i`?v-#KhZgI;OKBQJ$h0@Lmg_8ZVAaNoQ&st{i zuP4v8K9limI^+tX)R$ZC}ds%{4TB0T_9*J|D(7i34u<$7FU*nIlWp!SGH31X9Q#be`^lXV5 zPTI0oIuEB@tEGcK&p*C~-s^rvR|`B#7^dhastt^!_vv3xJ`O4=Vb`RB(#7X-$46@1 zT^;58)&aanbtF!Y$dpuA8Mq4SPRNcobmjkzd%Zc*I6Bg7t+SOZ{@oVRpFXhjt}P2V z^kjEWvoSvjH!TR?)jsy-@bu;RrK~cJ+IZOy(A6Q=-)*kji+vB8H2hQOp5W);zli<2 z75)l9G2q8NpqUXj6aJS0MaZ)X_~IPOoCBTABmEuF)UN{Onn7y=x7-B|X$CC%J42EJ zwNwW*C6ANx;8yQaJt9!3~)aF?Em z4&tE&k>uz}%Skzd8+=+ZRw>7uB92(E`g-ih_O7JBV7*%rtp$8V5sCc8sYN*rIV_1* z)I^7k4)ZQj@h!HZsUy-UR-&?pWxHMh&9rQT3rAn{>12nccd*cy{Rte@W@>LX6M7A5 zD@Jvoz3u6pb3m7Y!$+vFnpE_*>kuQ|-WL<%j2TB?6EHJRdbY?&2&}L_gRHFHn!vfx z_qG0tHv~U{Z58mO1@I$)_T;U~=cjMro=;oPt!7=`T{OLfbvLes-}T+R>8CjPCKmpj zG`Dx3;BwNRrWUvEc&&%^*yO%h`fkWb4@*$dl0fM;CZ3E;v>J?Lq{cFaYqhz&za%h| zbKM@pNq0=b_?h~{lPp)oJw9ag3d>G#?Y@F^fPz}IyVLs9M@Zu` z>Y4Co>s{G6;{>zx{Q>6jk>f1TB2FfeqIEt;Y1JGn3D$DKMPAOaEjErH5jf!?>c)Z zKjiU#HD7Hzl`MUCto22VE6&1l%-G%BC7Ubm0nxmkLT*otk=BM;A6afaWD5a}WH8dX zSlzbb;Aj1H%OBNk=pX%Ui~F`WY(I-p8`kyru(y3b-a4Xv+H8w4&PRQ#+vXiy5Brn{ zA489eZ#4-p9x&n~@R@zzZi<3);X;B`++ggq!`-TC`re)}rMKNt9m6@=&-J>2D{sR+ z22UZn*Th|hF0IL&6c}Og6vBEX+%RB#hEV(HA(06+LxMNs_O&l3o8Z6&1KGkU_$v zn^v%{n_VhO(n~W^aSJqslWwE;2s}2sS9k~)p{<;S*SQ#Vz*a~5UmPwN=aHVi_cY!& zG2x2(q!G90kB)G)Y;T%7;?wz~!HK+U^5vMwb}PkMTH&w>7Q|a*J1E_}&E&G_2g9HWOwa9fffqKaf zSjQI4K$=qPZyX)&=d>XkZDwLqvXAJX>0=;W-Ej^yHf?pHMZVQ-yNVsUEfboFk8Yh4 zv6Z(ZR;IwdMUMlW|UW8b&A?vQLQwn@3s>iL1UXG^ve+R6zRm@Z0-Hrm`ae*#Mk zCam4&xkGAaJ+|W2Q^gME$trex@)`?XZiJTqfmO@V9(&Te8sWcNGi?m4i-+z+d)jYo z?&%C@eJXQt5sr$ahP^__b65|>bbaiGj0H5I94>p`iKC`&=f-8Mt=z!5VTI7UO0~GN zgt1uVz>BYouH3pqG9zAT3k^9mJ_>jJr$e7VhTcBe6KKLpZn{IIQ>m7bX~EzIfKhjq z&=*)XXyBLQ70hG38hovrcbH&*Zlb;vFEC;izt-9Q3pCD@4w%p%6M&Tu9#-XnyFz+# z2u{O+pd*f11C032O&^-)8mYyA%m}+#ONN<59E7F7_=o^w2i_g{)RMy4ZQ~;t3*I20 z{7oEDP0)Xbx5zr%_ug?q%~tvrECa#|Mu*)S|@hg+c1WN~9KYpst z_N+T)biIJUCW4|2RD(9-!S_iQ9$ZM8-u8ul`t7xzp7uX^?(XvRoqpSQ80qp9I$;6e z!hHwwl9q`s+mr4I%OPm6uTic3C#k)x)Sd!c{Wm<_@fI82R(RUou2et{e{DJ2qF=6; z+5?z#pgDcHHF%44uO51$rs={^?=zyZiCXwXVZA10fB63q_U>^}ReS&V+H)UfgyEu% zFzO7TDPRtYhN3wR!xjVswK{mIGhDLG#iH8@0doK=D?0~44Z#auDle#z)+3@p>M1)~ zXU0ouT2U#3V6{P%&HejcGiW}~Ij`UEk2QPGzOJ?QTA%f~zCUKtE+O5H8;8M!0Pg)_1OC45CiV~g?CjLiTExzjC*x~H=&Nt)8xHscRLC$}~ znr}gzuvN|ZTd&c0FKR0ii@^E6W4kD9NFo!LBdSAkr!!{-W_4bC9G7pI0B!skXgmg| zoEC1SoEFN%DJ_Vzmt&rj&=|W3v{uD4n9aEu-70=f?;Q63%46uMKV+=?j)it6a7Gjp zs>Qlh-oPNTtjobnF2RT_Z~H4`CWhUULVNQq+p>5gE80MNa_Qp%9HP`pm&_xZ@=%}W z`}bssxv0Z`0lt%(#^$8B5hI_VGWcYAq+;mEuPf-0(?W|OtCqIxT+TCSS-h)d;ds*0 zfz!g41sk1cm!Z_z)0NXkTe?5R;Z*29ahl<^F=FzZIP(zAR`Od1O!vpTga^Vj{MdK& zQfx#UdP2oZdkb0Woso1nS{I2Gr5|W(5%Xw-ECapHdG4VQtSLa)jcf>EB{O8bqEfHP zfza_EXcG;S>>KR*9M8&hPQY3*=cVy+6Yjq^W#D1F_oOq;wc3ouK3#3Lm=#!U4t1MH zpLVS_UtA$$zjThq-HTot9XI;^-R6OUZQ%Vdcm57+_kUq~<~AXpqRhnp9`J}9_N}<) z6_kz+@P{a2*!M@-g#B2QJV;d6aosJfQ+<`tjbbapv1}X*!+s8~{S123)2&#`aE$U% z2ks1CwSB9iluVSDHFkVl1Y9_mb+9pbBkc3mA{uAEli+80T z=ev*Dv~8PYqxgN%CZ7%cU5~+&(_KgU#w^qcc3tU1s28yGAp2HJb1g4({<&tvN$rNM z5PrFwFZQ=!|9>(J6ovAADgOg(t0g#cuWkP>yw@ssn`Wa;<`L%t)_bpZ3h=!R;`OS{16|(_R<#dCF>HO$yS<66O9MtA8q*zv8PMvX^0$90w1ms< zbmsk4XSS2jX?VW(e&2nh3@bVi5LKJSrFvGhiN29O|9h-kwSx>Bs|!P)9DyY=fcpvf zHnGr|RZC>+bFnTi?Uikw4GK@cR)5!se)_E+4W4ff#w-GA@CUu;;P zCy&9io+<3Z+=cy3_nuu;>b*y`Su=%{m>%}sLwkThAA3}YArVYOKNL7SaBTpmEK_bL zlV*25eCYlA6nl23{?K=z#fx=7Y&j&qa}F`KgpVs!R(kK-w%vCxc|_X)|F2R}nIw=| zzlfzht=fFArw6+F2h6DV>dyE>z0FtVp*Pi65{I=XsPe!?uC{o-@5>>IZu{4Q(T01T z^Ll^S#;L5bOtt+7*qe1tY501SW6dspSOwa~<@V>5pHx3Ax zIsJGhD2E}EqG5>M!k+Vn2U=mY4ckg4t?pcPFv(fz>gBhZ6M`yWMRboL4`;bcD@-kK zy$6BHk=BLt8}6ScA+tOE5Bbtqqr1a>{){zJ^6Prt6lZiT^^w!cLoU99=fhUM9?^U! zfr)izL_Q=gk3LHxqOKH8um^<01-$q9sFODK~rUAA)p@hf~?Y7tFB5+NrL>98%YStL`-a=+V|FKdVB2=uUW}aNHO__c3s_~jmun6NyR@aJ4(xB9 z@9J~fyDJVxHOsgE_3%8`kpSs9Q1||>3B5Kp`7otNiV6b@&G!2YU*98R6^Bb;-(>=U zdjoIz#}X~PNJ2g4S6jXi*1c%Mxkg|t0Szad;WK)SEPs8g5Unq&jff|D1N7S90r_FQ zCbqjP?+;_VVaWed!i#$!L0hO7GPqez!uR%&h9g@MuYq-~8l}7f_Cc(9VOZZ1PzdDD z-IuY3ZUzoC3Xk*WXemd$6xPaQT)Xpk=veT-0O!}@oED|vH$Y(EzaNSkr4#4>bqm)+ zFH?$hqD}BG-iR0y96NoTkO6EvzlQD?+i_THx8eM?4S1gf&&2;Tzrr;cYj_d%`A^=c zk+P!o?;*O=TtAOvCR6_+#DUzv%F+_*>|K@{EBl@!%z)g)!?Sb}B920_E)) zfWO1!0IBBER#%*=sB$sq&oSX5WIgb=N^9UT925_`l*)SE8RmM97SH)|5#$;uXXfZ? z>`kuwJ{{N(`VLO*MX$gp$m<^9EU&n(x#0AU9}jP&&KKPjy&t-P-JmEf%r>Vg{@y*5 z*7G>C)^*P%$PWYPuTN28Zz6XN`qth;$Y&@5{DDRJ>1;FypE!nuK4EWtI}K6Ze$->% z?VIl~bv$P__b}~W$!A;&%G_#}+nX{%xg8l=;3xcq6=jkmC1YHML)aaDu$HcHO^Aoi zF}%o45i~hp-u4s+Fm|nlTZb$Qhq<$Lr|V`&MqC`vB7;L{ul;9kC$950`tTyJQ@1@u z>IShvWLR(h{aS!Te9_89>(Z>IT7ujU_T+HRgZ~KcYqEdu9BUO$$R_Nuw>x>*1i!OO zc{Nu43wBBDM}d+!>HS$h7y5++w7CLBkMTqKv5hre?3gWv&B5EA; zOIKMmC6bLkW$N|5oAg_M5Y|-%!s=m*hA&VI6NTST$hZQFcte4b*??6urq?2BD^@@c zfq%)sgpyc85gORAOO6{ z=Y4QuNx2I<9%DO15VHR>rId806R0g1#843(?evBtmDQXp~FA6rp!#$$gNkD86 z^JBz;J>uJeJ)Rx@COe*0T{vu$s*(xyu@9?^uk);os=dsOul3q2;bA?2MRZ;fGj(sw z!OKKH+@){uC@14@+Qs<+N>OO0-2>KgCiG_qQ!;uBqxY(0wx(IfTHRNARU&(a0$NFM zLKPX*8;^ff(JK-Zu#Ht&Xl{wif;I{M#WkXh6h~@wVI;7CU~B7-WX0?Ew~H9)n))@B z;;mo9Ujw>QWn!z+-%dTdD@1KlzYQ(1q~5FmKRU%e-(s=skGXUCY@1a2hjRgZ&^`El zpqsqIxAF(vT`o^<_?0uUa~r%WM{nK9jo!jGWLcRlYg*LgZhUM*7-YN)K(s^LuYS8z zyd@2&CL8Rdw*+BTp_Xi~$~7%YvI6U?pH0;k53gu_Qf=ECUQ4csE8|$-@*?@zOH4&# zD>K@Ai)fpM^MPJO)+Y8BH>oTg79cEMK~%GegmpQ_LVrSXphF?hUjP|gZTv2tnQCIs z;EDI@knCi(xSmxZ+NS5cwrKv>vqsTpAttuVLB|JEL8VdpOi}2)rz(IeDVdCCninS2)7L9zIV>-Re+vIGzb^iK@5ej0sumkm-p9XsKL)aF9?_iUod>e1jYY~nUm zz}JGhW;9#ON;k;g|5lK=5aUPNALS;n-$JwXt)MQ6#CJ>Xi-aU1-K^pl^)cbJ{?Hx! ziksAymn|Qd!>%lWhC^@^x7ehoaEG`;Gi{UkI|q0d+Z9&6T~xjw9&y3O^0|^NW$_cx zAG)MS{Ax>nO@?lzyRI5I5d6i+A?Q7l^j(>XpNqqcuskjtT7ZS1MnNErW&Q3GwG`pG)v& zeSmU&GSjxk^_^GxpMobj-cOkDUVnvi-)L#+M^1{?Fr`jjuGlOF#iyti9_+3RS-A!? zXIH=1mWj=@Prd;n%37dj81TJjcg{O_QCR2gu^${o%~{|m6p8k-eq%u+3nZ$A_M}|R;Zi}=1fOzW8X*&4x956d|7dL~v@Q3JYV1iX=~3zA*jjoFQ8`{> zKIie`*3oHX{2fOSpA)Txf2WF{*GnqjCem`T^&{t~crW5$pP6bmt82Ic0y6Kp1`VVRCh0~e6Prze#OKZR{r?RUaj zQv@%SnE1yLm9P#o-oytM7Gwlsgb-d?Opnb>K_p3uyj>3jzwxSq4EPc??PX<6Ccer> z$3QE5(1<7Akz}N(6-H=5N*A)?jd*qv*poFTCd_0n$RLKgwC*%_yZqM3+ap!G+36XQre&@cgmMh( zVKW(Bbr-FN&m$sF)|zPjzZ6KL1pn5Vq#KxE*#;6U-!Rw}-}fDklkq>=>p^=7-&)+8 zMWZ{Ki$l2tM1F*oAdUn$MO9AvU8XyGGUws!9$S5?`z(5*suUi`>!6RL_73{?c<|t~ zH%Qp4c9&0*{R*gXkPBty6&JFpj`M@YAUl>?Qf(TM5q`UCQO0fz zkXd3Sum&S-Ukawiy!2k6D8@ETe-@Zri2g9)S?B>7qS-y_-f=7^a-~P z?m&MB7txhPE1!Mm`oSwgXKlmnzy9Njz6gp z6LovymnY=-0-EWURIYDegw8Pl?eWGp7!T~CXzq%j)$4LC_^)%Fb8B?`u)ih)**}1s zM5A&<=p_aAnG$%3%Yh)VDHjq-3s7e;FM%=93Lk!6X5i@2+d%GVacQ`GrKa|)ICE_r zFvQYec}zPmgu&nb1?WxOIW8*9E8zP_g41gKF=M<$vJii}M~D6YxOPYXB)1)B2@pZWhZdov@z;{ z+V0F`@VnLF3WKDKS+4@GBZZW^Y=o?YBEOKPm9Qu%fJ0N=Q&1a~HIfYgp4MXSJnmrD zEAYi4fEYwdSE6l|Xj|BbDfEl!DaMC{FYT$%{0wi^;;pB!^~1ISTMc?3fZH7N5Bn6* z_qq1T_o-XC1ytK*3q_wzg%5*@_9Dg?Vsowt_Mhpq>*FEi_48DxSL==C*Y zBQx?WC8?}yPJf2k8`0F0xhV$zO~HRSHbd`lUOCJ`f^Ry7%zB_UB}3yU;XTmmB@Z*KiQ!HKt{GVDYYns?to>0MuOZZg-L?s z-_0@5qetvCpSwa^TtzU8#X?Gc%5iI7hH|m$dEdjdH<&vgzZlBl9AVZk0VSJ5d)!3a zR-gN=m!ZA75_fyA1C5GOGjiJsn}|ezoMR&BGbIsyDaT=Lv++;kIMJMShH?S50WNM@ zgmJXa>aZxU1EUN@wEgKVHr}Rs3abTmUB@+?m5)sw* zK7@Y~;}&zW9iBu}qGP=53vuNRP=ds!SoYNQ-{u*R?~v#zrF*Nl$axtOtRIbpWWKy9 zVnBH`-VoVWT3>ct2VWrWIBmKB8KQhHsDv@W&@_*M_fMYXLh>%eZIMuk9Wi;Xy&eY% zjkD8deTV1JNXyO8s+E`{?ezaVc5T*oDlOujgZJ zwwXfkwbx-S268A?tu-d`M#i<4iLh!l^}cu=x$0)qdv@I^PeYH2mRKoO{1IdET=dlG^zN#T!)IhvKpu*!_2)urH$ZxJQ{QgXq!a7=?9Q}9 zl`#+7sfURFDEfV7cP=@!l!HBF==;p>TzH6np>@D8M(@1>FaDrsvGN?tsL!M^flP1_ zegm5+jU3bbgf6w23AQ#z*b`gVit$!&i7^VA8%ekaKdm*2TWX>8T4tr_ z_4ErxW#Ag-E3AQE2|_p-e*hWOzfM8dhHJioPAwSQ4LEn?O~fXkEJ3NleI>BFcNQW(;62#5 z8o^(K&)$Nq`6_&bfCSQ3oAb$1PRBvhIH!VphI?}KaI?W7M&x{>P_Tf?LRX=qUL$FQ z+|nql@!s9`CiZRNjl#M)IVZ$f`+*TcaWbf;QjDu{9Ou>=a^^}QA3QhtPaTeee^$tu zt4Dpl{SJCZY{BCrN9M=`>Q64|xMrf7i1N7!LE>K7?O&2T>H?em*$d!YdL1Dtm#mtE z1Vrum6;K?&?J4wnTnGDPrxTGbK~LzS+lllwj(PMo>pA>?nf?4GiJ@LC+POE9nw-xU zpuN&tt{=!$B2Z!cZZBM>)g@ByKRZB|5D02GW3ig)6>)TX>MqQII$+SJN9Y@?9A9`4w(VAh~nxCE(w91OLXbNKhI_vO%?sL44=n%cq5-;lt{zO{3rolnv^F zu{t5vfylF0pG=at&f8r!??+&3R3iTWX!|4@i6AZn@)z}7*AhX1;1;n5nD{*R;TU22?as=!&=n`z@pwu}d$d zt`sAO6qzsrRyhrg7lHqmO}PN{_b82rdv&Y%uwA`b2|bX+aNrU#oEDCU?{!A9&jAC1 zOxOv81R5Q!{PXawIf!CJ^I3vC} z_0E&*5vLY)J>O*G9zbET&8N~u8WlnL8 z8{MS#0d$jmAatH9k;BU!(x2q+6;((h%1}s2MNs1N3L^0(l>q^Uy zf`&{C2(iRli_H{0MP-e*(l`9)^W*D-xRdvBQ-Z9n{wp5o@&W+IW~0(MDU}C~%m@rp z@?(T(-9xVT+uS}Ip~viAu$6Cr$t%ulNFqm0&4FRC6-;;Giir5G0TpEY>6{r)67l@N zG|-sq1;Am$b}hEs{ssF0%425$;j0NznN?zzc!{lvwXXHL}z~yH%khj+7v=Avm?ro$GB6%y!-VQZ1-t@V_k+2d$M~v@e6i!h6Dz%5K!B#kN5mDL_{-?nf=Sh6K zOcc~>vgQ-`<3LXjIeU-*wMmTjrVO=r^#ExIgO32-HiqV~RdKW>cut_g0-B|J$2|Np zvhXs|!eqh(sb0K@$Z(n=SILt>njM#B$t4Dg0(IWsga4vI68qi*I%zrI-%lF)F2P?9 z@2CMyi^My;=GzfJz6!b5KwW*tXZTu1T1;lfq&2NIOW`e|^jGkO(BP7*ktd|FB#>&j zQ{b6GptpY*_5CpqabTd`o_L;D{4mz`$=Vu7vCx8vrBq`9#$Zv_c4@%w-in63xD-16S#QP1T+SN~k^b6+A> z98#E(%Ada#F9H%Z2QT{L`ugPwT;FnfbWd>-_p{;`Z6UCl7GjsKuwn zQl7jDoC4LV6geUpAZaemwNUPsW(VyH=}!fA^0TW_^N?ZmBz)|NUW)&)d8YQ``dsPC zw3X?{Qjt9&TW1*w54D4^Iw0p8B;&{i#T4ekLrp5ySCHs1KGY*7Kr<&b@lkKW%io7g zF!Ai0-pSq;@1!keplL8SFXO#c1=+JQs}V`Fx)^BOCK6<4|7&X@|CSV|p|vLTR3oWh zzL2}9?OATEop*P?;a_+68BF-UqgS-xE5-k9H_Z&T6#9(dC1|mvz?BzOH?Kbp^5l{N zv|8)G$}%&pKb0auYUa^=80a6IS((1day)faYC)F2B{%!35UKfqD~`!~)}KuPqHK&* z-1dgl(@xhX!nYIw_2m3|PCa=cuoO0$=UAczh2}0==tjMoz9x6YQf`kq>RD6A+mP04 zMgs4_R)tuG?v#x!J|uEQpvU!(DbmA3VTrAxk@#leM!`p~Xj97GvAn*V@YmlUVax5| z`AQ{$x58CH>+^T>?sjjO|9*O71dxG56A&W@bSg$~sN0QLu9_YjZ&IFwEy*tosCo2E z^jSfh>f0vrJuB#Z#CEE=MhtmSvY;g3z$tR2XMGm4ele@Hh)U~$v!0F|sOqMHuFL%^ zpZ8$T3c)^N{OUz?jNU0sf{ueg_V>gM zsK(JBb0z^e+{v&6-t1pDq`N~FJC_uYd9YvwjkZ~Sa0$&=gmooJyV9~b>FMUY6<0B5 z=*%R6dCx|Hvkya-JD|A%37u#>fVij$jHJjJHFPY~Y^~byD7bqka?k6T3M)O{UI<@u z{%Kes3Ezfm`k=kRJ)d0v`DiB7_Js`N!&n^iG$*!G{sTFv@QvKx{?VeP+!1qc`s%xH zA=k&5hZM-dc;;b>e@#c+X*tdIkyN!06g<~5J*CH5k1Wr9X(Mh1lD_N^kKZsVl1d($ zh*6=Xqap&M;%$pZn?lkDJzdorGSO-`U{pK{sZ{H;&isLEOys>W0^Z&aj)@Qc_n4qa ziucBZ`9H_R5_rA-_c5_-XiR+5*S+F@kBLxQtk7iOY1@lIpNVuE0pA8Vp5) zKkL~h6^r?d?w%F9pm`*XrC32@S@@pdoRY6@t8;DvqSaQ1&%|90`kq?M6RNNFg|{Rz z?sHB?%?g`Ggr!^_9%e(E@?Ge<6$dN0!+4V9azSRwP)%lLiS+fEm|abQv?iwROdnvp zK3Ee8Y7*R?_x$1eHAzBEq{vt1u1$Jd!3sJ*en0ShGc$29Bwk`nL5u?=QUYu`aU~h- zGWA-WRTJYKvmm(<&_-e$pY3a*IbaA`f(S-f!QyN#q*YQAo+H8&tv?gBv(^>_0UL9AbBq51CbUZ&Yv6M}apS6JP& zWOe6{2h7Nwrh_edb?4{<-Zy^HF1x;yt$<2<#S%y}y$4e9=U%YEu7J(Cq4eJ*!JH&*mDWXkmdV9W<) zXr{Js=^3liAHVKLb04D?e?DQD_5*VPp0LorXSuGLbvKW@sK*}r z4(Bn~82%rOVT|7-I*x}~7QjbzaWNgk^NS1OLmn8xRZg{~Z~0)CvHmqk({xO~dLtQL z+jQPk_AnEL|2p^0-D@!STOIvb|2g+xbFN&m*EJH-V$ z`E=C*2STGZX=LV6_@HlW(bCaSmDuVx;rho9g;iiQC`VEr8wnYu`8NROB=%#r8xIEZ(ww}`OZ=Jg#uZ2KXkf0dpK8g;-mJ7X4 zF?^^l5+q)yxDtdsg=3wsG322);3G|-Gx{5FxNz+5tGEX;a39rYeGJ*}6^8s~BP0UX zl)Q-iLwMc>=$2X!5b}HuoQhtDEQPY}1?ZCS-c67boA)E81OIbSMubgrttoGz_9S%o z(D;;GKF-}+QTi}Cdx2wmZ$+7&@t-S-i0|#6@qbnn_iFN3OP;eTY@wqs`+w7VO6ON# zrHFwCrhApx4-|GkA+5MR>ahLup%{C2rX3hflMJc&^wVc{a>G|Yl zIu~YlPI`bk2N(Ts>a1_3v^5ksLMC{45aU?HMjBkBU)Q~#bJNrS=M2}%qs3MCR-O}u z3%UKk$8xVY985_ypeIrQ;Xwdb2LSdI7n7>`^8E`5S} zc;0eqt5*-dD(HdNGU*tw#SOp{52tePyXN`8VMsc~c9=ql{&-p+d_MIuAP~+tnv%{+ zo9H$AX>Z5a5aIQdpx4#1%!Ez{Fn4ut%lV6jj5lkZ0>T}Q{eKGhZn2}amN>J9%8YuI zi7|cU?~9!75{)=e3%?d(l=HQa&$U-^f7sCsV9hbK9<)AhlQW2}nFkNLFX0_SWrj15 zks6$^xg&q&s-xAQeASTYVO`PWLZWB*#|G#=)r)_GbJV7)tosnu`onqoEAlL=I*Qit z0T7x*{F8lyT~8f#^Sth!#ESIadJ-$s|Lw_~eH$O>$)0B)?8yzs+~c8auX{ZFV{doH zpWk}0>#e%uS%Y0;j=m9xb>6trvZ!`3=cn)Lvb3HR;EIV6RJnIGYP{N2e;OnFI_fL} zrzJ6p;P+bazE%kY; z;ojPdeAz)5F+mHJuJu<>^rGl@%&R*mRi{1BzGDxxFZMbetJL2!ipzVRj@7{~|9bba zoj9hcqwCgQTr~l)09U&gy4EH_==_>Hbni7>H^X)Bbl1oq=z0T3w5~e`yF&0Z1MWT1 zZF%6{!7jOb)Q7rTaBsbMpaoQBz2AaM)l(m6!HfsS`tL)v*o=1`bIrE%H)gKbOXru~ z!}3cKb7Mn`oXGj-;1R96sz;s~kvfH=d8ZH)h$!v+f$Q)?o!xnUPpfkjH12;792GZe zNdG6}tNW7Sd5zeHfsv?vO*3iuArHPd*|2v!kF_ETF)^@LtiyUh*Mcp3LC^mQI|$Z{ z4LCl21!A@F{}{?NoX`Fc@irOoJ;nX+y++6alsEB=)YDiypl7;^?LOEfay~&nSY_;b z$i3204uPMOdYknv#J}CODV!u?WSyo79yMb!YUvfeyw$7AF&=d3*Fkzz+GdlI3GI$O z0X9v}3F9ZlHBwH(7IRDnbchB-l9e6E@PU;sjYAAzAhWTrD}2D3BCat~%-cj!o7r(cG8fSo)P}m zDU`$MEM7!?!DQMg3U)VQ^CSV$f_hnvIT}&|>ODu?t`^cZwkMBm^505brGK z-@q6%@uK46%fa1>DUbUE{3ohsAO{44tfr!T3;fpmWL+DOlIb*WoEC2lLqyyB^&=CCG;DS>E}q+8(j zNeHXA81Qf2Eo#X-i*Zwlyk<1&;$3Xf{>E#d&%L$K@ih5!=W8or8|rb?r&X}UO|)m< ztU-+!(cZo+QK_Vqi4d1Df#_omMxUk+xD~}XyU$slb{uk>q~SVne4>9}J(mf(%Km&YGVE+kAL$>Z00$tUvwBbfB`msf2&Is4uID zNQ`&8OnnGv!$3s!W=X;2bj7rL*T~)-hK;;FHA{k%iYJ z7>o>#(4H^lUO-RNUWUs*e1QrgkEH@PB^?o9h!$E`T!4OG=BZG)vT=XnVtx znfeX}6z!aa(zE<*Q8kdC z8yWabh}3$vKGmfu;-6`y+93&gM_2VPb_W}k_A5Ix8@X~DBeSNX&Oz)FL2ZhsGznBI z$udDu>nR0miWz?XJ0ZB~S@szqn;b-}@2Bi}>PuEDna(s({{#?8Mf1HRbo-6$6t&WMyM9=1q+YNmLsAnpFyZMC)fjW;xR)RU-l$p2+J& z3vdOrT0Ga1n>}3!(41)_q6q7HbG}QTw6@_gd*QNfZDMPJC^B0K|L$01WLwxWK^Sh@ z>~!F3>#8XJC+!mw6bGMeN;i75P6_;a9a}a;J7{ji{H!RKPaLep%xQQoi21?3zDz$v zT#5OfKDWN}YT+wG8rdLTBu>2B|I(Lt2VW`!|MC8T2dQKS{MSwVtA(I)VYupLT=nwt z8=k(ptd2EMdY82Ud;qkYAj@p%)lJ+0o7|{ zjF^cAW$pLezpUSLG;=oACB1jX$Q0icpgY%|wF+t9TW4ZKny|hY8=n9YRysQ~eawx~ ztl`5sV~s0b(-cywJCXy^1K^s>5@1F?RY5<^1n1PtiA7L@(}6 zX7jQQh<-&LFylim_Vsq{?-%E)Y9(yrb=rU5 z!?W=k-U?GUtyV&Eb)NfKi~ZUDTi!m2LBOmWb+iuw0}8cQ1Ij6O?ahQsTqznJF< z>RA^-hGL``K3@Rcap~CC9vA?R)a^46H*lXv@)tI-eV{cFHNn^MTP0!zU`4_^OhebZ zr-i$*-GO)G?%uy%B*bzw>#Nh|!LEmF*5x=34vl^Td?`c^NHpkueF3enp8BHSyw5p1 z!2>%HnMGUl^uQm@H(Y1F$5>g0EW~uh{RR1#o`AR8pX;r-J8}j61~(7VtlU(_Osc-y zRdg%idL@Zv>(l(PUVhv{>5KMqes-J?M_4`_h#XG^KhWaP$aC?ckKJO4fSDt|6tcw^~d1j<=2qJ z68*{*Brs|Pu>f3fKLD=DhfeoQ z(86M^X!OIET>yW_h3wnh4y&T}3irA73dhtc=o}&p=8$-34qdj+NMF`m5Pxs95#BPm z5V`#s$<;2v3jyFaoBZyeOKce}Q=jk*3}d_h*eWi@VOZkDofm&*^wBaR;{s|tMa&)jWxH2B`1neg|_}kQyT&^X+yNI#w0dhqgxFDTX&L{m*=A43l3lE%fKkJH=PZ$V~9|3zl_38(Q zFfb`zgq)QWRRq@5fi*9|Zvpa19*Xba;Nb4%40&;2a8LtX)x|XUPo)5(^{>FOJPug~ zWyT5Uwy1Z#$T<>hKgIt(JY(lp$S(B%Gsp{#tjp)HKcgNP0oc~yIrgW4ZFh{2 zgDA)92=Rc<%#Ljlu4%@xY+N(qIpDWe0G|rS{c)`PDEz~)y^Q}KqEH#74A`siPG5dB zl^A{MbVZKEFWU8@ zkRDm*hwXZ?3K;l)(V>VO(?v7k5_ma6dTtfVcHo-Nah~*uy7f3qdKe+DRjkxDcmmt% zayt=uvKei0Vo|GyNQ~#>9`$)pRAUqPeOFX|WO%;IlE0+ru#o)u1!zEyV+|tw{vvn* zJh>TK@GoyF_OG)1!k$R0gbs#|NM*ZT`F+fEcncD}B;=0c^{hm=L|%bZG8sBGKkINy zO$=;9B#hNuXm)NujF)(_cuF8-xgf+!Q6x;AMS}Cu0f)`sp5F!Zxmy^))YnGhC9<2@ zG_KiMmt_XcvBQda*OA6~0LgP$kr}uk-=Q{CF0z2~bV`VUBACrW{*013h5l}r{U)_~ z{skPTt`U5$l?jTmB1@t%mQ5I1^B>D%rrn0m4&|sa*sm1R)6Np~05r1S!dAN5ugU`1 zbQz5`(Ayk0HE(CBS|zcqA_eW$&+*@J)93BzR;3tO07}fQ3eo2`eS#9eKYm*HSv6MWNWkz z5o;bNW3FF#hW!rDN^Jc~f-JJ)b1X)NC*hk=KZPF|`xuSGP%dZpz$RapcBWm=g!Cvn zRXxn@J?(m;!zdvbB_xQB68gQz+ZFH$&CgQy5I#3ugB3vB_Jvy1W+G1*qlIZ?rInfH zUfG%Mm7KCiF_51?s*rf55@UIDI2Vw`|cIMNc8&a`6!T$w{eL5w~I z5gc0Bprmb$WQlH**+da$2xIAVh#yhe$2>whVhd+wGVLbOKidPvlhOYsel|Eby=_ms zNDRzf9;3y^jFtAtZr7($&0u2dDTT?!vEJ?4(?Z+smYG5eMUN=k6woSB&5{Da%aX$U zto^QU4q2}RsE#ISkD@1ldy@Ty?MsbHQy|w@B0otnkg}QW&J@j>k^K}#!#@$_0qnnb z#ZAo258D+owO!RC!Kmo6kGLr#ipS*qkv?W7y`sZ0J?mH&{JZ+-KQi%}V*ozU+7c${ zuxWI|Wk}p3S*cwK`BO2a*u22n4c$Zpl^{ITZC^-TdWy%CpuV0xvi3BV&TL;h6E)II zbInQ;m?(G#t4EqCY9wS0k)GyGRJS`6z_)30C}xpIesY}1WP%^dgx8~b|L7y8UFIOW zvR%vInVzZa<17>P6|#ixyw8U+ZH@a+D;aV zW}Np|Lw1hLegQhy$1>I6gc)P4N!`YXm?-)WIrG9qmIOf))`|A`**~(JR^x_OqI5K z6Dh{-ovvelP#wi=D(jaJ#M?-0)Ym+sQPQrFg0_(z>{#osn5B&bJc*_Xt5-{Jf5xOB zan2*w*E7<%Dc18hqM(D(H*R#*WK!^DXd#d>Suf`=^d3V78lu5>iOru5bEYuLu5(>>U>SN#L-!VfT58&w4&y!Vo>mv7_++MUgFLh&36w zH_*jxg74Q_lvI>#6#D<<3s`;Tyjio5E6#dPYsvb1awfNwdyez=IREj85Gl|j8DD8x ztYb-jsXWtR7p@~W$U^wB<;-H_surlgJTBwap4AjPH@3-C5qaQ_Oy&+HhA}WoFLce{$6JN^z-un#@ z$Fh!3?jBwLI=MoN9OQ#%f&}Ns+6|raF2fl3)V(PJ$Uqrc!G86ylI=!*RE>xvR zSy`z9*(wOXvoNvMp;ECF7mMOxL8l;jN>I5tEb0x?_(EpZ-mJNZ2}163ODy`<-{Yr` zM@)j}i#O1I#hzs*{;k5l<~PVq{5s?(aeLRiTKHGkq;kR^gY*Ol5E#epv2+Sdv_fd@yB zlP}hVn8-lyLCDDbC6Gd0{!YlrgH^GxA#pXd0IwLR*7FS;vPo+Y^-x0NeBwA{AYc~z zi=vg@JFE`bvIb-tdHGlCiQ=PBQpZy&Z%z3HtM zFM^C3uU&yg(hG<%7SMG@c^dv$&{HUua?i4=5=1D~c$7Wb1ZfL0^R!Es5V7P{N$JsW zyXQ8q{X3AMkCZI}A55A&w#mysrKoOAO>?~~%gu-wZ}2XO<~3rkvR^nvTQf9vgXvMU z`%*^QFQp?`evtB zrFz>i;00)Een4%5Qh-T_aj2?ehrTh5zee8r9aOHRh)lG%e&v3I{8ng#MzKkAXcvbT zzbb!!SbLKCMveV~`v&^yNAwZx zA@$b9Tu_FG)}u5*(9V)Wll4ltV(RS7mvr0AOV5vB3o_IjNZ4(}La+)dThqGxn?aMe z$lB*2Bf3I^H%+F!`Cf}gQG|vO{;oo(ha5Wm%1Vi}@hR(FPr> z+_0C%&`ck_bq*^l|EEAo82!SOvw(hWue0yq3oAF|;m9j5`f8#gz*wEO%RK4| zEYyu@Bn})2oe8|1t{lGRTMpTFNqf8}-egRsS!y)EfPSBTVfl9Eed%`5`%QDdce=4s zNyG1t!@l#$F!sQm;uUhXgdGivu+naZCC?%F4PQG~0v+!2b`mxNIF>Tx<_2%1Fk(+d z_mq^Ixzjc6RuM99&|CrII640}!R)f4<+X%E!ZTXaIOJ5S@XrEM&yK zIlppPDG6g3W0moh-9g;AxQF4pF%oy=S^TZLIBm{v&LBFsToL+H?S3xr{E7C^+{3j$ z3ArWRmWH}fsHqoXFhzP@Tp&v}Mq><1N>*A#n8^lfNRHUjLKFBB< zj&Y^qcGrf$k4Z#VE<~TWa}&Q@t452}vEiU+W@vyyS@`t!U&o9Hg^#2W8Y>y5-1WYy!@w@&wZF9LF24a)`YkcVhgpNnfovh9*ONli%|S6 z##+)}Tx;fBFBbX)Zwc!uf8=5bYvyQtE;I|?n_2JNl*2(QLJu2Y?oE_DX<|9B)*N5LW`X_WEo@5nvUh?P=NkE`BRF;Ty;^(j6;CjXo*k1^Yi;%KY~)$p%XQBA$z z%EyvqSx993_}_CgyEBsnmGMnBT=3BUXjzuQOx|K1(^J%E5Ih>ML6TQbW~N-WpUBu7 zbLo6k2F=?^wMwJMOriD#CbAYedz#jn{p_%{0@tD2aUR-wGCme|hP^R2FSu)Q+>xKL zmA#j#1RQ$PSMZ0;1KyZ~skeGta@Y#uZp~x2A~Peb_0XkD8m+a{GyM@Iq%_4^=0G!G zyfr;D;YoU?p6kgxnmJj}YQ92?)&p<%bM~FfONfx!o0$YzLDDF0i)CcI_7=UmH#0~W z-uSi?HEbh>89)pFJ9!ZiS`1T7YdvuTA~d0U^PT~2xW+D-4ois_kb&(*=59x&ldd3T zHJ>JsLu71$<&(z?(mqLe-LfiuRw`ouv-(m8vSb5k|3nHIi!5;P|HDj5q!v!C zd;(BP*6LrleF~cI4dJPWsYPM4eA2}t(3TS80xl4oxre1vp|At@Nwt|>DoAFP&#l9{ z*X>AK5r91DL71K8b91xxb#++|7q9n>gPDrE!()&~m7>R%gn!|Pai)Q$w9!a*JpbR9 z+!3&mKyw|*^}3{_k!(*E{BHQ=J+wxjIlU&oo*4+<2D4IfpiMH2_G&i!f%c%;yJ1G^ ztjq)2S*h{P*Rvn1n}+#Mu`zvXnc#x-f#xYLdJupN_xChb#&}~a^|+@_uSi(=~ zxpyu!_UpjVxX>Z4N`m}lK=SgI+!^swG3fdNb{{*I^@H@RGX~VIwCX{7R&vKOs1EN6 zbTf*G^LX>pnBOmlu}`w^u!Tn!Lsu zZGBph#OKWQh}9-r;45>}!30aJB&5Y5omZLcpK;yUfx1nLMZPbTub@Ych5sX+s|W53 zTO~TQ9&wF8T}V;0oAI6H?c6+`5q1 z7>@?r1)av=6g){xwO?v@%+P$Yki;aih9%Ym+9i+`XIgc@E?#22=rrdVLsSg}auekT zi*tQhKll~s)f?E5P-R0w2IcX~1;$8qd?KJ(krGKnLCPbjH_l9+X3xgn667|%cg@S8 z8TQD_sI`OE0JX6(fx|6Jthk>PvRj-|etusKa8?_Umx~xYg2;MAk+!zJh+aml-`L*d zn6(Z1An_GwOJ*g<^g3n)Dudp|>hdnunfXromXOc|_Ndq&0;A$)-XDwMJ+Fo`_T118 zM*)2Qa*=u7BMAC*gPxOC_gMoWMUnNA2uj-vQY3swPajtY8xp1OyCJ13?VDrdKLoP) zo&xi=um9$lo@+C$^h?s-WTq~%Zb$6B1o@SNI2>(jZm-zq0{@KPlBr(NQ{4{7_^lU`xoiyKoF81p7R;zo2Nbp948yOAYd88AbqUcwvuZ z^ile~rg~l#Qyb|%DX)b-U3ArR^91YkI(kNr>%K*9KV41E38E((CbLY5C`ig*2Ld$j z^g6;AG@lgJNUG)WXiF$i7&C)d2Dl691C;C4m?SlHzVdSz;&lYi3wK{F`#)FDf8gqq zxYqLs!E@p7RZXAjeqz)Bjf2&g#CT%lCu%khnLVV)f0|T#J;Sd~*_6)Bq!|o2DgQcf zmVg?fk36AgBTx9nQ%WIj&t*hSzN6kX>+JvXFV%?J&cC!!vq%Uu(OC5=bNl6s{$*xw zjJe$+6;^`>&#p1^=jollIJBIbg6zq2(}j1DZ>Wg~{k#268JrVT0=C4so_|wK4OEJ`~X$gI!N_>)At2A^U)H4!GS8 zCzYmsb3^NBwnn#{H`t zyQaHUx#B-F_6m`Ispr{AZgQ%t+D_pES2ssBUSy2=9J~aU?o?4eD!GG{B za%Jpdb;zVa@Z>ADyo@rggtcJ3SF8f^ix!;IoQPx92I1G=s=8AJGv2Zy2DvnGzq=vSebE_d-w22WairIT*kuw z9o}2ppMupIo?6nTOZZPYn#vfz^Os;pH({2)D}gm#GuZV#u=akp2eM(fYgu@I#=Um! za-_vJ1*XNN4~-`=uNqv%J;Ki5mOv9uxx&qB{WCtl?a91{dJIEU*&WB&IwNZtnpw|aYcG`W)BymxuQ{8Ng?+_A^_k6W}6{6j#KfKov6;RfBV#Y%o0x#u{ z28f>OKw24EsYx#<%jj zmnt~@ltqF%TMga1sMQnxpR7gJ>M0xF;K$Zr%oy2s&CM6au?#zri|rV*2zsgDe|EI_ zO54SrVW3kv7CkQ}!Ms@VgjEs{37anQl(bpM25Y+FcH|koy>|^k$$l2n_l^y zkwg43GR}=Lb+Cnryh#P#NSfGb(;&ZSR)2~nWvTN}e9ce>#LLcuc>2Gc*KVqrW0^^< zjChHqC)L;9lX>AGH-1$d=${0!9v{R{W>NM_Pkw+aC z0qR?^*b$OJX)ZHE)hYs~T;6ZiwcE+~RTQvbLUq@B8MQr!T?{%6;zc4t#~GCGCWar<#D33w*Xc#7%>mY z`FQw`TZ|r@Y_HDEd2Bm4Yms&m-D3N_{W$pI*kky9fgQ5ih_!)a8+RDh*}oWvepiv* zn61fKoP(>J#vIM!#fwv%+)ZaL6M8Z)!qDmHY|6x1YR!g`f))D7p#iybbDnZaRVVVw z^qe6uC!q!@Z3@cWmvh-7X-$&Ip~DP*Q^?LXxp!Wkaz;{eMoS3;uWz#Fa=6yhzFMbW z?Vk@BoUz3Ra1u~E{fu_ow6p~Hva8B_S}=_I2s?VvNSx|iRUX|RzviyIW17Xl?wSdc zopVR{*5g;LRD97b0gikYUxj{<^+cvI&|L~Pp1yIU&9o-2M$M}E6M0p65jCL-skq3^ z;5(V}rI=48{4e$&NkBFSnL$tXRw8NB`HZ;Hg|av?vo{EIwGum}6|OaEPAu+idIYwA zGZ=CsnIY=w45`K3xE$fcHsDI(-d6^O%)#~V5E>F-tB2TtdpSwK_SlO32Es8t?E4Vr zA*c{uE+^y==H+0lE<{{prt@N103CNibD z^8JuanMkXdB!f$u&Chj)59NxvQdzOAR9?(|ApKA+JZhNRMAp2im)R1V$a56;_O6Xe ze}if!80BSNC0?bnvLbzhtt4+q+ah1C^g{0NJVyI|E=o|uJBJl}wZ7%WJGJ?;)>@hA z&?ndrg*%6l5hag>KvJ#qX^S9`BR~I%UTV`dk>8Rjj{e-gcM{`>(jxGv{%LwTw=6G0 zDAHHhz(X$$DB606N?3QAhU{ZBicJ#*?@iw2KAU{XhivjLQ)~-{_om-8k&G?KGr5Tj zCzA*A3^5KVS8h_4`IMLFf3ZD1$9pThtmJOcuR7J8EZTY!ZIjWd&!9xw{V{Z7vK5;OuMhVmgJiiZgE zQQkq6m-OGt8v*HSvu&O;UJX8$gi!|;7YhN!0j0x=hn0>f4%imBT`oi$@cuKeqy2cF zf6)FR=+WWD!?z79U5EAuY#m9ZB=6GthNPi>(79cIXjGo0^%SEJ0)#^SaO;MmWtQO> z>w%d4c4Q3`kf-$r@=?%+BFZc2dn%-c0}AJw&Qk|Q>^TAtjFM7wp07OzXUgFSDg-5h z0zrn*J`1>L2-hA3{u9E>{r(z<^KVv;f@Xq}FUKkFl&Kn6|CDRFB27CAC@mVGv|uco zRG;XH)=zpc;JZ_7}Zghh_yrxeRi6j4WZX_z(7A2hRcwZ?I*CeI4 zNF-54W&9`lPwTuqUt@TrqHb8E^jtt>2jpr*)9pCky;F!X-n3Ul-nC5>X23d4M<|Ch z!gv*^*Fn5ru9t=Z{tA4aZPvh>j1nu&_pU35lR{#xT={%Kg%in6tHy&+6`HEKzrTK} zYX|ZRFhm(o!hY>xSg#FudXk8bbtQWCid5p;Ckq*gz2Zp7LhdQ9r*SxeV|SPUY&^`(zS0iIp<59a37_PYKNSWZYQjklJIb$6t|l%2 z=xW1e_%WDXrAFQHmYmUkj{o^5K{;}yvluP-wh6oSA$22#=R$~PUGUrbq37VgmAfXa zvrun?ck2C9(lq|50r&grODE-9`&dQ_cKdF9T|G0EjxS{z)s8JhX%P>Z9b!fW5T|T+8Wu z^uQLwN*>8KCZA~|GOk3?B9on|rzOczW+YIo2TJ@~e~C;SEfdlyrmxh#(!OeyF&Bil zlV{e<<`46ziJU~Aw#nPy&7s`*5%@;%j2OX{1EH+wbD-z+jRRF!M&~)~z~ypo^G*9u zaJ(Pz=2-Ebdq~R4LA*IuyyI4;yrNO2D*OAN6>qv*KySas0B3Rw=xj51bC4$|;QBPK zgK+&T;z|S=y?=Bhq|+Dh4Fak!fJQ#8Vz94gU+8eW3QRq@Jkz4nu+UwFb`JEsl?iT# z#vK8=!?@EXob-YAwA5db>T|#JPu<=aZ);zar+VMNx6@5(mY_bFs6#BuEdUL0xE_P+ zCG^@uuc`>v2$Z)3A0y@CUDd+A|7f76Zb9-3P8A#wk@gz>aNQU~4Bz1hhTp(S$W~Md z*zB%Y!-b zo7*&3X6kNzIQ8KWL35Tr^p-yMd_1@t?ez2-eF4aE@56T?RP1X;z`mTK$epS40eT#r z_0pWN(BdT$pBI>^G_T$IALll9PC!3(cYIi$Exarj_Dw9m~;$=b+&d=21J)ZY&2wNRjRRK>1 z5^IO!@m6|Q9{-*mx{=bh^HiJRyfY->uwG(?jwzG-nM$oG-DK${?KMe3 zx`be=1JU7#s6IUz7^nz^X%vl*es!$$l|#WZl^4lMxMJ{tw59r5(PrYxf_ObYPw);_ zVZY_7XJQhBdCnM*HQu+Tm*@P*bBXs(y{>(O=``ebOG5$;X}rAk zOKBs2gKXoUfo6>kQfRu0|JEr#u_#$vFDq31kLbK)nz%HY$4)Q&ZJ zwaR?9VwFy+I<_z=L~5nEbvSl=@?xQRMOdzE12~)?0sVMB&wAEP&;WR0kQBjkPCixs z&}Kc=z8zB^1$6NC^V5aR`rFV8;wq?oX^RadD9TX+iMnPxwoo6^*k8sgEtDGRDWBHl zlKm|2RR&(FX{5ocgnp$_&?O?;96MdZXsv3|M!lzA!eO+IMcWyA|DS{@o{n?Jx?dSj zo7UOcQmPB??b#o2WqLjV-jw>jio0{_LD+O{W=s2irPP{>S#Us8l@)V)I~>cp6}bO` z#{2&2#EMS?KXDak;!%VJ#gGHOL&z71>GdXD??+6jWyl=W5%{czUZpxkA?(n5+gM?) zGgiGIL~hl2c=IYl{%p#l?{Ms?CYrvhN2}ALDMq9&cB=<(a#)J?NP)p0`mE{{KVbDM zu!D`$9`;xd1@S~pJ*)=t`Lm&AoW2ulu@y6J2rm`(>ACYdVaX_|@G+&v_)KR!G3y)7 z5%qQOk7Ovrc~r)SrlBM~rG9yqq#;kZ7My1p1|;@vdgr-OX;Q4~s|`0Wr>YZ}xSdAl z$+xRAI(zav9P66Bc)?gOc z;jzYmljZ}C^hLA=b7TCMh5}}sgpG@35comGkVHIrLkA?^# zRUM8Wn&_%DGF=Le3swflyIBK#7C_ea~Q~h z!GSb0A}f_{US)VJ&1sNrqWei^6MPta#E6^>E3#z{PBY${yA7#n@TB1Ro!z9^oW%2U zOnezuYoAR_xpeD4vwjQBsQode$&&N`bRI!G=Db@VQ#$FHd24zsvxzHb;@Hib^>*7S zc#R+Bm36UC&*6*lCCT&7pLd>>nUmweWnk2OdW_K)pVF0Rc`>N-j&+hn;YqDW>R0Pz zi?=7W7Ad<`vNZsR?PRkQ-mmE!f5hD%t?pbhr51Bzh>7|$f_GobH2ju}-@b>p=5d}> z4pM)&X7b}bsi%;twUY8IUgJs6NBWp`4O;Otd?JOI%Iu7~65mjPzI9@JH6ffss6}Xa zm5?71PWPu@#5cf7H=AmV8t1O9q_UUSO;&tq5)SN5WxNx|d*1S8?Kj)@tDr z%2_DD9)b)3TJbd#V8NXY#ZE()q0f>qTuZHlt+JsPjtP2E#Zn7lXfG*{gPI7Nq|}-} zt7a}g;{p@^vHn^e<+2cUwXo3W(Pn%Tbt%SPMzuJoT>sspf^T<>zdcaPPwmnC8|Y1WXuCss`)7I|^NhlO+JA>Jof(d^-P@SwHh5%Uvp4a6 z&;oy_(!{d|hwwVeh4HvTmO^r>{0Ji1WXAumDiHK-=AjUBqkHZunjKFLhT`Q!}Q z>JgNl1{?q&BnrojUxgFVvbHy z_qnj4DhDI*fyV-8uC`Am^ybrP3_lz^;a}e&?OO1_d;`mjpSJaG}1h{2Yqty$p%_#e9LRb({@G^$d}oDG538d!R~t;&i&Bq zG=L`7A~-=G&*GjE*K-hRkv@Un8$dg6Av}lheV=Y`#(F+cc)hZa_kr|zD(Xe~4kR+$ z8kYk6Ky?9n)#Sbm+Y1tv4x89W*o3X;NYor_bQ&~500^+!5d9bnud`8)|H%-Q_8NFU z%;t%-eb^tRqL;HhZ(|Rr2wpf}SX~v|FkSHT=!(VQSAqT-3hO|H|H8SjK=!HkNB_@r zPE^ko6a~;(vNEN;j^DUj?UGXHX?piMGCcW#PtVSW95K#ffUft~IIGf{M!9_vOX;31 zqt_8$;{)yqFd%F6*t7hA_MSyh;F`8w|1|t>A}(Kr{TE_2V$Cx+n*#SrA~4gx4xZ2C zA6XE>wz*?{tyX7d;`N|wS?U=KY_SdqD{|i%bwGdn9M(|mqKMk_zlQ1(!_OczwCkO< z>*)S-yp@cX@(=S*KofHtPK^6w_UV;%7o3$b+krkz@xGsu`9f+JiBscgcS;qNF1Om4 zhtnULoqWwk)KuGeXKppP9%`Om>pcIZDJL}2RN4Kp5#uB^#Tw|x7J=7+P>J@?6UV#I z+xXd8@sLmGv7F=J>(}D+u_$I3yzoxXf%bF+uvFGYzymz!9i9c~I2^LJI&V>K6*Lg@ z;i;!c7z13nEfgKBM#g^>g0D!pnj^W#^MG1Yvj8*0fgUWUyF>yX zwmKldY>wi)9q+$c{*ZX?#r;{q1bUJ z^N2b(my845^?YgUbu6Nurtk!O4grxR2DZGrrapq60H!uDvoGgGSsuxg;9feTGyzeFIF zunq44qrq+J!zyvwm`5vEsX4&^YV2D$nJZ)WyW7CyVg3 zV2oMhvDT=v!cP>mr-&SW8&*MM+th9Nh!1Fh-ma8{PO73jjFBEYujhf(OtjmjGcMHQ zZK|7>{rsXD`+^Vm+$qgHN}PrrJlDWH#7#X6oX^CA zKY*?mEIdN%+iA`@bjS3(h#G4(Kog>tYg+07fcDzsW;#0 z&n&93^0V&VK0py?D0TR>&S4~C@U7KClykVY_J#s;^c?sCHpcKbj^!D0E8wwQ#OgN% zbH)v<+`#GhG!$paUdJ96oe5@jc7OVQie2-5>ihk(6C+;jrM=YwjXU7<9-x%9=FWL| zpyXl)eAIjkFK-XN!K}NF9)!P-{DK^_p0!GVk<@6agLU>(q&mCZv7`mNUC&(gz2{2> zLDEbhE0=&DvC`w&OG3XEP;bu0m?1fVtwI<5dbGvIfpzg!sGmI#+8$dE`Fh&0+hXVkuf&Sm z<5=6vj2p@K=Dc`=qEYw@PspSfXQgBd1%@5Dy^asNAIZBVm0hIT;&n0>>y6tHytf_*J@(SXnwZQko_4jxt5VDQWa)IqSk|BF> zUxRSL41NHfTY~Ek5Y|DyaUAi>h@U|G8A3juxrEqxbU3dNULOU1KmVS7%=uL8Q>IyC zA%$*t3)M4)c*Dn|!qRd>;GY8WI!HD!;>l!+QqMKWr=b3oNiw=}dg#r?7S*8b}{C zOl%@7h%RHUaoFAipVPdKgaSto+4MV`(}Mz4J;#Kkp}kPb=xJ6?ar5032JuQ`d8FL#s@ZR*N4;xIwc-nxVMeI zZ^gSm0Re8{{W$OyH|Y1&%UaFgt~cJTnL(f#N=6cP&ouzC?FT zQ6HjA_;e<-yX@&SXQt?!}mCz>+OPX$3C0g64UWz0l=$!FQyP2gU>r^ zB{P=LlX>>q)hiN~jS&v#7V2NbNnCuGuH`*TRvTvED>gm+Pv?T-)rQsCI8i@5bJ=P` zH~eqZJq&-N9(~aG${E>|_xg9Ip|X1EBTJpjRnSoE4B z3rw-MEXBzZ>p5p7VYD}Gct%a18Tcw3v z&cLUZR|7q%aNtFr!G7e7(-?XQp0whC(oS1IkrU4#UAZAEmbN*{ ze|;a<4A$fiK}BB;qgYs9OdXi{r@Ao0Jer}8nUgR!fTwQ8+#UwRjj@o2M!IZIhHN6N z0p-Tf@@01p6i{1j-oA4AXuikeiAQPf`}*bPY0HSZ$MMoV7AN+1@ z6@?a>qEdod{3lT_TD$V5uYk>V0(^7SbT5ZiUP1yi+zqxW%pJ6alg%raldx}%J&qN< zKVl6H7U)bPF(1!+kN^G}^jJ~DyjxZF1kgE7wB{CJ<#OsRagOn2*w3$CTzKOjDW^35 zNVVSIfs{B+7;(Ugxe?4?xb`i0Pfz=Qlltxb-_1@rkec`7SD8J4Z@O`O*)WO|k@!VN zEk~mN2CC-@ozT&LIi}8;pG~3;SScz3<}Fxi&|M<^g^7PCPd;_0zN7BgGKo-bKkC^< z^*DO((Os0Xft~F`Kqs%1154(xUaZsIIJO)zqM(Hqx`tfD*~IO5wi_0M z%WaU&pTbV&BCx0DhcHob_1(+2R$YXjG)4_7jV)MuKB#NSjHP>Tyo$aZrdgf(YJcAn z@w^+)#U`vM)K9Qdigqqn7}o0jtj=XtXCS<;u{E`z0DQNlvpP2%NLW#%54O^$nfmEV zyO+@WYi<ApU|PES|kOyEDynLaYRnwjCUC!oBS!NI`3 z5qTGrPmU2 zHNbc4aeUwV%C(u;xt|8F@ZB5JQ@S4$ZpfC0({Dx;1Ak>Xw2w9Eiz%Qe`|6*LfhU*hl z7BCbx{79$xGb9#aI?|bxueK7ljky04;w=S`AK;!<#gHt7vq<0jBkZ|wF9_Fagzu47 z(r2*0$v+zG#qj|buy18{TZTcu6;{HqQWqcAqIc;@W|K>cbmzk-oAPx*v+168l$YXS z{z;$5SlIPb{rlCB8fMPjJ^N?79ADg}@k*87@7vAr8yAmy8kCTiq3mr4J6?fY7V%i@ znmID&y00p|fm0=3WmM*d=38zTsjX-nt2@~g;-1p@h4rzkLkZAF5Z957SJhQpMwP~f^lN5C-0$efPkukgi zz6A><9JDe0=o2#ro`B@UY7M3wQboZIc;xnuR@86SD{YKcQb0Lur)=_q{1ZBT{%q_g zwe-1C&(o0d;Tm(7$6jHzVPhr7j}j=-Z0Opbol6#g-|SfrHk%g0(xH@}gWX-`lGhAJ zg}jgyT&DmP?|XN>)SHQT{S^dWtm$WrG5KRjLJ9>!nv-QPHR1OHr~APYtP$ z1fICtv5@*XginSeH8OD6WNq$g-y~nVLi%NU6xHMv;Sfp%X1kO(08Lpc1;W-Rty0-d zS~56+X$nQF4#Zb}iu6Y9(63hx*+{>G>~G13k~ZW`;tp+Qgc&Ik9W)po!**+?c|w;fGs)f`Rz>-{lk>-lRN z@%hdfQK{>A#B51L&&|ZCvo)PvFW^hC^OhAS17Q^0$o)Hh50u@Z4P*+C-Oa1VPy`^< zmwvDQr#SPY{8)ZZ5d9t{kYzSoKb&&}65A5t3cmA|W-bi8?Hx08vAV4pNg@HiUO03q zX^p{U@Oi)6@N?34uyp&bS^j%6;aQ%29~dl^QgG}n$tjmhupXBQSDX#)4xF8X)J@2(OtcpGbtU;eDo2)z{h%G+9Y=i!= zZ3SvXM?_W)Te{}X*#m4jkm<1>5K`DO`ki;W*wWe?)P4;TVf3vTK6yb8@M7oHI-7W- zZ%ss(`-XlDsJ!5#I`r%i^z0%l?N`#@uWQ*%Jn>BZG4yJrr&n*lmaNq}FO_0rd=CDT zw?HOjrm^p%%|RK^fX~QSW#Bd|HqjA7dkZaAmqY62v9?d%b$OaV>D+7U4~DJi!?)0f zDuwqI=%K0J(ZAQudDri6Sc+C)DoMD{j3{}S)gDsHA1KGUWmXi@Q`bnU)tT7l<6PB(toG^No zP(JoYrl(Uj@J~NJ4q96Uh8fFW!?{IO@q#d(CxT=%(2k3NrVZYzf#OKk;!M*3+`t#O z%}fcql`WP`A2ZRv?&l^}e8sQeB|pD>Kl=Av?z2W3Kkc_Ti^hI_D)ONqk3;zruiKL5 z7@%`O=@mXbEvpS%jFN4zq$p*|0+(>xPNVeGDD|{cmx$PW8l|2_si#qD5PYI@s)y2v znuz&5uNo?ZAPZgFrrUNJ>Am6}E&8NXKg~MDGj6cz*(O8V1p2&tAraa(YDL9tuYR4b zG9aZv4pDO0UM{ekD(%p6YWNh_%%;8cy7n*jQu>6qq9E3koLUoSqZ-{f}Lr*?6h}-fQs7bnIL<18AjZfvDY$S9@+w&|b z0WN{~vnyw$WE-r=${00=mA}Wa+X>A`@VaJMnW(P%?PJDHlGi;tM+&_TXeYLs*?F&W zKug})7R&_$6+smRgq6;WmIZ+mtz#$2>h_bx@Jm)GdFoY)N))n}gopB~FxF{!jFwHd z5b+aND7;8K&#J~)C;Cc8UmuFZ3^iSs{)9kOng9#&(J&8iO6RfubA57&^rU7+ia>-2K?zB#|&qQ zosD|qe*1x)AU@-I&7Ot+-Ib4x8A8uYjCTYRuE*p4Zd~&aXNpe|lGd+p)B%0+gpa7k z;tcC?XI9A%&dhA81siY0qzHOiWAM78{v&wBkXWf7I+Ywz53dg3W72u{>!tMgBK|lJGEKb>3w%Q>nBH1 zomYJe^pT+V%h@E8ezx`HDw*^T>z8d3$z@Wi>n|sTVh%H~*O!g)zpT^bVh3=v3p#O# zV_amC{K~9JXtN}j-(53n+z_W!`!|Z1r`-p6{0|JU+Gc?7{v07JtX|?QBMZ_arB=*Z zvq+TFMzsjpCmalAwP?Cc11tp$;L~??sQH@U-|i-4{`f=+aNb%I1XfqKV^+q*0D;4A|%g484&17C!or1d-7 z5|J8Rx3leG8KrWdjEFZ}uj{?)uGj|B%AR-hm+FV5X`rhVY`kB71^u1Y;K3d5ZmCG` z=nGi!XEtjhQ&U*rJ%QD#!b57jCdk7N+NCM?{-tlUZlgDF;V~Zx2=AbOupT7JKD1W_ zWN`cttUzlFrI3!JF!U5%bd((tQgiypIguZC)qYFzJX|#K~neO zix2cn+~8G_n$l_LFqFX}s8LSR7%dP?hDA-pIxi7b!y+StBRzj(!~5dMNS|PQ`5>NB zJ@v}fcSUVb`mToGzoKho-#scD>${pihJ=3;M7Eq=aB74i%r_n9efO&dhF?2YE$k`^ z;1iuPB|Mfn*>sve^pjDqXapK-5zgfG#SyqR9rfj#Du?kqEy|1#^auxy;ICc;r^xM{ zy0NL4#PZPMGO)$)+31J?;vyq1a8i1nz&G3PJ^@)G@|u@S<%GTkXDnXW1DPyb!E%d~ zSMYH>+u#pM39#%0N?26YFr0y5O95;n=SdQ_JR~Z=%g&)k_q@oZa`$O^!M#Jsvl9Eu z(}?9qX_>*4CaJ#eP`b7s>>wr@OhOTtoN*fzAmOwJ$_?*+S>4 zQNsKxGD&6)ykZ>bd(Q3n5+_T=Wor3FU|aqfQj*JZ&-1NxZjYzGEYm{+{Je3b9dp+w z$nzb9R}kp_Bt!h0@?fP52wQH)`<`0M>PWTooX85AC#l zzG`xm(c0Gn+4{0%s^O%pDNe>&!6Fgn<3z=bYqXIzA6Z7H=_QGpY?hS8@`3xXNA7}F z{NQnNDMaFAl#5YI8H1i@^59tmr@iW@(G#Q5 z7xR0H?UL0bYNNGq{p6@p+j=`KhYcG|TMSGG+F#Ax;g%HSCBrCq{@z1rl(I(~>u=ES zK*A}4+-TvJ=e^PVbvqM&$FAC@06JKl!Mk*uo~fA<#yOdpT$?){md9m=U@fmf9m`uO zt@&BCd{|nzh9b9UaViWpetLrmr`C<5p&NbL`k9@CJM5v@?}(1*=4LzEfqqdiWqL(T zv7QOT_l_#ICGdV9Tme0lqPClWN%Wc3z#p;?ouffJ=#HS=uE*GziEsjQz^@1@%mYP; z1%!3j=Z7GcVXyDRp7Q|Rk0LyYpgbZ!%9hWUDKF?dNo+>vN3Xgaw|ePJpsb^oPOvAK z?Ugci5U-xg)@yNB|}Pf!7Kx5gi{iNq|KX1dG`*#vikTbDqp8&-o#TS~6&1$7c$x zZC8<2I~xkGg`0^e>t(i*i1R-X^)0);FYg7S<5lDV&2<}@)NYmGG)BKBoq61jH+m&= zDE>%*@gn9D9qJd4;8Rd-S)x@PRbv-HQO+|uixX?x6^t7)Z`yia%qXhM@D&*vfK^PT zgZ^TTB8}Bh+6abqpL|XdX2}2}og-x_uMM)Da62{v)2{`4(*}fa^vz_16aF;GjP4vpx#x%LSgv*85lD;$}=I~7ZK>ZJ`i+5 z{_G?nMF3>j{MD`Gf8z{QNn6*kFJO#W#xUZ3Hxr{Ye1cuju2H`M_9gv| zYE)oTIm0vMt?Lw^4O=z5;6Tc6yzR)j{YV;9 zwwn5hCLE78YjEyPU>lwi<^|&Y3R2u$R(Q#bdm}1_^pPv1#M@9Y6x^(^-c_ zY4Lf;3^Yb+qta*n8ii*c=(7*p?RL!Tl0i04doUI~xTf=&gQ00s%m@#jZL+J>w;jW8 zd+|*c$#|vuHPljdI{@uZFw(Z?!)lsn=;_16>y5z3+j<<9Q99_e1imQQ^nyJAa~^#I zmd(KSe30)6(ES{=vdICANbCus5pxKgci~?LVL!qG1iIIg^6A1Gm5IO-O$iMXo)E?u z-huX9pErT&z`OTq{{r}J;=}aIEE7J^bMW@i=}FzR)0uLak#f^_*Gv`yFT?gT_Q{ah z&_Q|JI%!TEY}Hp8@{G~{(m#DUM+!TZEndd7k;Hj|FOwx42HN-7)w8_AtQ7TM4QzhC~}JAAz)tzIKmqb%V4PdJnn>d~!)r=M_@f!QM6%WeV2_n+@N{@5+u z%JDvy-wA)S`+Dm4nVq5=QEVe0q$7;Wj7M?D;TVs3wGAcBjNOg?x_5_=!w^wDjBpIs z)#$gsAtVVKaL&n}oqyB|J30Go2SZ1RskQQf<0_&ez>`jQb2| zf*9X)FIU@!d@;5|jxqvG!{dhV7PO$s^@=(lA=4SB_J_{!m>Osx1%1&fAsptn+m7~I zU$g=b6#Lpq%|7rwt#F@g^2y{*BnoomMeiMKmqQL){4e*#qeJAK<5DTNoP~|TX)g9EU@kk*kZ+C|CEP3%w1Vk zT>qYcJR`*(KpwUawwyck=dAba@E=#*e z*iMuYmh(#v<;l{TWQZHlt7=ahOnh+N&>$sWr4Kk4ww?ojDhxIq0ZwK)5&zzUvsnn& z<^z_}lefdxfAV68;V=5uI;!z6nk9X0O`vPo9Xlu<3?qDDl$(cd1p682;*PjH@Qq9v zBfMHSkaXHY6mSOh@I_eokPfO}nOE!4`xh}lZ?mCVI`zTL6>1ehQ07uC&L@sb!vEoCJgwzl6@MUE8YxrEoNUK z{*MIi6$5*QNKic8>9{~s^H7)Z7=ID?TnxTtP+tD**k3`9*g<@*BuD)~Wf@(R?wLB& zzq`M;J!hx8c>h>e-?Lx#KRfMzdG_u8XTRuwHtc_S)`({Z{!B;Y893japtVTA?!axQ zGX@7~h1~eO=$Si+6c5Ma9nX32KX@K8Wy1X*p6Bp9FmC_j`~&d(uK&aHp?Ln~{^xz6 z>3;=%w6;>R4|pl?HqC5yJKlEE_H%V?CB8!|#XueWEjsWmqVYcc`%n5yhUd8c^3+Gz z?W!Z}wr5(Ti-y=TT82$E9Z~f4_zCs>UT4Jas^`UFq|?*;l0m&+i@g4dwRhnB{hyTo z6y90a|IUB%Jk%`6g8#$wtMGhy|MR}-65coURq)El(IC*ZQ+dyE-E+ofkz$lZHS_dA zd{K=C-s9^%_t(|v^m1bp`c#HI=)Qs+%@70e-q&tA3P=s^-2cNVx0d>~BYCG?;K z1Pj6`1RFvlLR*=Xh3wVf?_-B^`RKzsUJlPI2hcY&JblOUW9yQWg@)uZOW4*3 z-lQ47M~7UAX#6$2eB9PAo$J(JLeEvr^OU<`mLq2y&W!)GPvp-w$3&?4iKTfC&;Gs@&OGzU9uQ!9YF zC##9ZX^Kk-KMuK3$Idn{iN+;q|N79mL!|XQ5l?u^R_D(i7=NhS4DkD-;Ee?we`t)% z&V&ZZ1Db{GK`Cu`&>!pgVkZ$x5ExG@Ra8qQikU&N8fj}CHZn2R+J+j@wv-@_8>1>hrgqhe@6?UJ1CN9+CI4r-#!ZbG8)gIIo-5>1if_{Xjzb_;(wP- zJVEt;!OKc8Le8NQnW2wZRU$j|7280b*OG#2J!V;8V%%WvHxqSd;WW=9y;qU4;~W& zs2BVHtvpED{q_I9@&?NN!+$9ko?s6S{5Gh4IVf-ZzbWro+DHGcyn(!@VZNjJV+8%L zf0SBQG_%Rjf?=@!DpjHvSK?HQIx!Vvjd1YUM{La`j8Y1`yOOo8^!8n@x7!O{=^Z;< zZ+E0s+nU)hdYAq>_?KU*Y~U^aPrt0jFS0PEP0jpIzd~+mB@?+CP8-bo9|saldv6n) zOj^(3TtRCBtV`(^*fV6bd?^hSxuLXXN|*FbPK%TcsaXupehyXw!tJrs_W!$}JyLc! zF$f5d*sB$KJ!F*>96k(f-iE+}9!mhmL@+ObPfiCkqDRyRLK_|{_){OZF;j<$rde`p z0DOl&ZCP6IvE^fg>j*%pY~#3KzPV1pzop+&Qwx8IwXLxAfqYKxkga=UdDGA>P2U!8O-zz`e=+Cub~c`c!bVGboPNgiENEXyhs>k zmt^^)>slD@b;#@1xn_6nbiLX6x@-2GU9LCpY^?efBa!CH!U84M(w8IVD@lOGX(O0v zm;}rx(R5ytBzPqRVw`$GXDzVPw1$NwDX_D47NbQDc#8Jr(1|`g)|lB+eoLjH{v9tR z?{D=kVB)v}J|sI>W}Vj%iqvo?(u3Rq0_3^CTJUljoQv8PF>yc- zvg(4xD#(i^EM&%`4Pge%I^sQ3M8U{{#9*$5mYO+IX7y=+d}0bt9%JVQOKq>iiwjW) z(lzQ$Io}tfF1~lkXE>9dX;XWRL(M4vIp;jJR+wS4qCN~XU^#dMMcqtcV<)?0_mnO# zQP<*2P{RscGW_5+#8`(O^hG^~7JuhVFg>W{K6sRom$9^6rd_~PJcX7iYhiKFK*TRi zl7pJIOSG(BicTnZ2iJ<}|vpbxuC$bx`JcBLrmz4XS%At$PDAjXo>adird1f1jaLUzAFUPa`MN zaLgKT(BG3sI!a9$l!wahDX}3F^=77pji&TKKo7)p!s>lc?s+F1^q_8dP}93NRQxcz znV)Rura`(193)lTX&b&&2TH#imsFZOtJ8kK=b++%53uYaOa+TxTExVZf|6>3>u=C^ zR9aQs*S1bPcm4o#@Hy(23}ujp2TwL*oHDhU4N5Z4jH61qpKek!3td^3m>M|sysJ?- zE=y`vS2=O+9WC5MOKSbDPD31m-x`=n%}V@Ee={PjM$96uqiF;af^%+6vl_oS=c=1s zP>nH?7k}wO98&9lRb9LMs#1Jc1jmj@78YiB8yHT;LqA_CsTaEH{6^#?#E^738 zxuS9Wt8X^SmQ*y3TmD9)bU{U9_@dVvIYUKbSo*p~@i*$`=KlU`LfjyQ4m0`?=Sl@F z!_#-Qi>`*D4B8Lq<8LG?^VMp%yXF5>-=;zJZ9;v&LVdqNeRre2yHVdF)VB!rEkJz> zP+tM{6;R(S)He(DO+kHA{!M+G2Gtj34Ad8NclF)>YkhAHs_!+__blrB1?syW_1%T~ zzK!~>Lw#RGeP2d>m!rN*P~SzU?*h~}9rZQ*oBG}yR9}=aP+#bjUtNs)5^Y7JoXq(f`iF9Ks1JB1duM9dtCHHc8$b&U)3uAQ7GfOD z)cReYsa0N2K%9U$9&tQkEn+R=XvEQoBM?U*4o4i0SdCbXI0SJB;vmF9hyxJ^B32<* zAyy(*B9L`pyR+;t7Luj)c`u_6T z^s9C1Q;kmb*+y&VsYWsMY-1f_Ct|AxX${hdortYrNQWVf*ooL0-q`)Yz#e!p+y(YF%xZCzL*@<>OXiO4e@Wgx9V8nKAD zE)?ldq!EjV>(ofA(;GRIfi?!Bje$k)_V<&izn@HJhdn5}uWfSCb|(da*0Bh&r>(m0 z8m)<^8pZ7I8tbx8H99}~uJJ4UX5G=)2!0Pv(iM&WNoc}5v|nidh)L*=B;>Ui>BUIz zy4h&m)#&LP+PAb^F%i$8TxT}YC|BHp^o~=FH$kH`p9u69&8H6aqxo1-KXDh*s9y^D zk@oLCjFo{l651{VN&_au|35llw4ec#P0eV}B0j6GrSDSf^jLD;iFzn?CD&D%CD&Jw5?a$Q|%xej{zkNfMt_GviErR@$! zc@Zd&wmll}=dKzXz;XQDhE%A?t^1xk*fVGR8#-VMC^zBjLw)=NIXIdRxCve0B+xq^J_63I*th>TE&@0R zEZvQRo6rtULI*w11|;?I3`CrRD9=DyLpcV0XQ94x(1SDjf5LAQFwI^2rH`jqi<1*O zh~Ian|Ng)^Y0em0<61G?Tm+lW;buQQ5l5IIv+c0B% zx>UBFS_1^4R+f#Zsc1cwU)gFNlr|%sI4GTnG&3m8AbsljLGK&!{-CrO>BK?lM5LKP zX$I+2&kTA$6Ymd7n~_c&luksN8I)#_K9w=(eI4E(lr|%sI4GTnH1wYCx0gZs)T{^T zQ(C+~C~ZbMaZoxDX=YFwxX`VqrVM&tjrRwo%}6H>N+%-C3`#RdpBg*peHGpxlr|%s zI4GTnG&3m8Abo1+p!W&hACxvDoj53+h%_@O%@7rMJbijg`LijdoTmP+T(F3lEw@nl z1QB1YqWYPWnkCRxID7A8lT62Ula7yCC5(rk6-mTL&88McnNpLgpECv$5VM4&)FkOQ zfDXra=rGI-&!_FkU913|(Gs`{0l#`}ZPW~3<{4*Z^oG^N9VG=nsy!-4dv`FMX&+Ke=%!-3xu zk*0JwkYPrOilFIvn^t5otW6OpEL zIFM$LrgS)vJ{5-d2c^wOQ#u^@JrQY2hXZK_X-bC!=~DrCe^ABnOnLoB2R%0vBn3 zKIyYzpwYhPfwNxoyhwD^haOneV)!u<+1XF8hyNSBrd8=d&yej$u<)Pij*(+m>2qvt z>EVU|klU?q*L?-pL5w#INVedHDxKoZ$RRH%a#DW*o;_ zIgWHIUL0n~ZIw#TG?Qe?r=VDCeb0~fJb$u_bW1xby1nQ-57T!Z8T7ofkVK+{jNLUH zUs$<|da@c{+y1?YB7A&lQuF)yKl3AjBsYQI1LT$8+V<-6>cL^_m~Z*KP0dPOlCE$U z+wSXw-XH2RT7nEI{8(2JY!=*(ww_SF5PCCiNANvGw~sg-l2InHNbghc2V`wn zT*XPx73tU2>}z9v5)GtoD_`5nc!%;ehv+-!@V3tco^SShi`a?08y>llno?|wfgsK zm~avv4IH9h>cjX(yQT`r2GHJozsJM_U%Z1vW!iuW<&734)Algok)FD|33+s1n<`PO z2W?W`Z<9%MnI5!C*WO`L1Vg8IQ_Ue2TJ`%LQXa{hd3yaWa`5hNm%`I7=wilko_6hN zW4%dT8J~)lZL-hPKM%zF#jrq(w;QOY+C$l`iP9*$96gUO;S=fd>Ga0eptYUg^66Id z9|A3o*4yovj2fr4c>A!>b0(YMW3QK#XS9q;QgpLo(xC4F9$1`7+~KJ^J3Y~$gHI{? zJ!sv>x;AvvZz4xtoTndRP-?XS7Svp3=g|!GrBlyA&=J_~JpSzAouK%4GroS4xPtnZ^D4<*ntW0O5pM9b9GqsGcq>K(9ltm`e85$_%7rWn}NTE^(f_X56v zPdD2=2Q}Z&M^Etn7f^OwlFpPCshqeZj&VvI+Pn@P)ZC7_-IP*vxLVZ%N)cx$`@WZ=-g_h{ zCAM$$P)hM0N$N`I=#fWa^w2lr@UG1B?jpP^yFYrABVk2~?>y4HgN~j@b?t#>zQtQd z#zU*cqiei@j+yaV{%##s&rTA((6#|uXNTyB8BfNK$0%v8*YfuJBj%oq&&iB|+u%KX$bjtgCs zI=wuUxesr7btil1N$PpW3-7ErKZ5V0quDKremYW~m$|sRprcR{`e#Z<9~;HD`0yj_WBBG9CHxfoXg<~M87s3A4IAq=*y(Jyw~bXK8fM*HaWK!m709C$ z{pJ6)cYU#O9Or#0$+2{CV>fY|rfJiWQCg&m5c#SjX$Opfw{ZV>rF)C|oKERG+YNoNMC#6^i>5(HFLA$FnZC}|&m?~zg4ra|;50n@AD%cJ)Tlt9N%uX*ZJmW6a zR<1a+^%cBac4y|6ohyrtmD>DVtx<0{^D}O3b!KjbiJAJP)!97ZF0QUDt?Gj37i!n$ zrrl@jwW}!$KEDV(ijt+}#mjT^btW5E7N135&ppGJ z)kfVVjC%=aIP;6swfULFYqhxrrUl_^wRt4n=_~c=tFB|-R+ekib^K|~hVE-&z9F#7 z^~U1-GcL#Fa+LU}r{OLxt;{VhG@O-dOC0pd3;Y*}?In`OKTLBw(g@okg4-#_k$bA)No7lwUx_@%VsFZ1HG?2J6&6{-74gv-|6|QE7MnP zrmlN=X?6Npn`Pi;rfXPtml|^~aM*fmbNl42?vpn+yRf)iUs{?*^Kyad8ujVb<(z`Z z#T=2QZjLzefb()~0aCysqx+R{oEps24gd816&_l!eP~=7&o|~4E-#u)jf=^1>%w0; zPtGJ7ROY#qk)D`5b^6RF9zT2T32&|G2d(p>UA>NqyiNdVe=~}=qKl3*njRY)O~*^D zKAKJ`eV3g2^70}Wxb0WccuGM;VO^>dqv;9NO5zT{RMU&1I8$rXy08E|AIp|aO{s7_ zij%;vu+b^p&v@<7&vhBKd$tiMh+vWSDu_12B#t@|W(txj6ix0W!BhziC^cGnEFHyv zC8W)THcKn9^23B!u`xeb>#eUt$1CV^S`J~9#mW-{0_ijhJYdjLP>PZ7B}fZcNka%t zFdhyjg#-#)Ayp!+mH||aKH3*!jCRXQB2<~u*q8yU7fCcj@F!IUW6F;F0+lDm=q6d) zcVR?%?TYKS-6*|2p+2rAZ&Z*(zL5691vNId8H13IjZcg_tWs$@PN+~Y+(6b&-Hx~I z`q`!%`XWEgY{9xfH(8)o<{QfQG7l6yu|nkj=tTDoBzTKQH2(?|7kDf9r|Y0iRu`;=Z9AvP>)PMQGZIZ#quPgNcWi zXKTv~$a1s+;5gbM0Pob7FD*9ej#cPZn_rq+m~j^tvF(j@tkWw@_f@=+Kkl_!<0?)t z743tf?SMMcr?oZsUbHpvUTZW~uhreF_2q^7Jl+Q_2gvosxrLSbvOBw4Tb@C=!7*=9 zOa|B?_4&Dlt8)vp0C994?TKwJ<9;z2-(BFk-fsX|ET{6Uiu-y`B#vVUx)uHdby_DiuXx zw7OEeG+!^%bW+!A%d?F##CsV-n_aG51JI4q^KnmYc$)#%*JgYZ3+6?U7AH>1njvoo z2`zGRfbdqjfmQA2K1Hw{G<#yVr*FKTgcRd!;s17cGcctP zd>EpqeKz2e2JO~KwFXh_wYR(-&VUTU_zXqX&@?nNyc73IxePv8l-(r2&~St&a%jsb zeRN9#fF?N_J3GLj6Q>!70EGaogf}U!GTiX_NQEp&Gfd8wvQA(LurlgF44zcY4KIR+ zt1w539r=*Z6mn<|J|f#9A*HIBy-KO1lwQYHq1h+bHs}RzE_j$S%Ny|)8VPo!AFxB* z-VA(cN6P`*f_|DjnU8g>iO6bj2z4$jkib*^4)k6Kr6VgX!U`@OJ9f;d`mKNp9_u^u z+kx~mAY)8-GqH@7L=?d#3$r3p$c(WshZOxJ)FZIQNiqt`xfzpY8K;GFU9by?SZ*3X zeHOjH0pvu$srk9aiZW)1T3%g{j>yx?rpw$FC(D=-(+Eh}5wh5Tv@3$rv}Z}o0q8nd zzo_K15$VzcSt(iL1R4>39yNDj4J8pFdR?H9{01G}RmTVQdY-?JTBlu5vm@gSIzrU?=YZ7_cQ87|^{_ zYBfrG-EN%F&1|*3b=aKkUNDx9lkXTb5XsR}b!c+*#wV=-n#5?WqU%(*8AOn3$pOxt>_ zz*fdO%pc&-C@nJRFhgN%cc~K@oY4G)^H?iP(u^?>SvSZlawfiAW?)ChcpL>MV@e(4 zlGFBZWU3*QHQZleeUS3S*|`fSC-AOq5rA#k*}O|z1VNl+G*uTaiu4q7n8=$vl#GE7 zCmwrY`y?5X32-ocAsFo}Ddw}@ss!|`J5*F1Q$iE8tDh1Q91!@@r|pei;9eZ8Z>Y_7 z1r4up60v7wXFro2m5x25L#ML#O_&v^plw0u7(1b>2+sjD5bP}blZYY%#!jDs4mtSRf0%1#qzsxVEh)|yaga3xbgj1A5A zUF#3%m`BxTCblQ^H91aFPUN_rp13h2e)@f(>|NVAH`LClCx+Y6w3z(Fo_wfX%Q^+l zdAH$A?8`8ITn7EA2_b9aURxWJG!(jwurqkl3b%U_ibukYTP^zLGW1HNO1+j=;mAM= zq>SxW{dTznuMn24G`j58man->)2Gf9=9$qD;V3U!hrJ*SiWmZM5MAd|*EtR>dKWs| zH9A|?DPanxA6Fc#9&EIOu{bAwY&`mJ+!CE;7GrI zj+<8OG7r{U+d!RwF%P3%=@DS63?!g3M5**fQXhtqdDBq=3)l}j(k6b(2DEd8FqgK| zu?Hv3U{16bX+Zlr-EVX2U~HUL8GJyAx>4E_IRh0$5?$+iNQ{UzZ_*AJY&8i!-9vay zcz`aTXkqIsqUCiRucN0!#w<$~I^GNG`)DSu8b*~03Ghtdb=XRM+G&3yk527N527NY zNP~3-4FyLtK0_-E8qov56<&zlxHr5x{ zCvm3ga6E4P2yVu4Vu=mvd0CcN_S5Qmu>Iazp^Nowqu&eH%@z!8=|ga0Y`EBV+OND7 zqNwnGoU{^gULhUpFCyXHZ04blyW z{KA+Q8>)6`&d&W_T1fr7QKZlo8?rPs2$Q~}SOZh|2P~1F3gCX*F>WR3^(5rC`wEf| zGg2}7%~>-Gh!d;hvWS_Q{Uf#y@7{Trtx0FBJx(1<6#-|M>*~ZOCr*fJZ;R%Bv|w?G zxn(W>d`%l&AjXgg^1?9ex;HQ;c2L!E1MKWeyw%7Wt5f#&)O=OP0m?crZ$gag$0UH+FQ*z^RB|AA_ zQ`kWeI&N2u?Wspe+#T1pOnkG~g*Bs(p@2frEA5z>Sju+6XpJNDS>ST(SIC9|dP{Gr zN7dM*I)7eGPSSByW3VFZI@TSe%r{3~oRfJW_*9!KBJ&`rJ09(`IBK=SCZr7JR&c`K zNi-hb-jRB*h!`h%Q!K`G>$8Jch1@4|TvUe@1 zF=NoOvE0+%8Ru4|W6lm~J!MxC%?+F8RvC5~c!Wu|1&R0d(ewr?qrkZO`Lld6Pue2K z+1@9wikKB0+c9hbar)h83#K!tU^u6&CJQtshidyCmL@z7ag#N>I>e44`4V@_HG&p749*TnlV` zp*D?tHP-fC+8MWUpyOfV!CG)zNvMy1(L3tTkA;Q#2@}5$P8L^Q3-K-u4BAhDtrX6b zAfjZ#96;LG*E)DYn1R?H=T*1c?-A{#y>_N|Qgyvjp%fjPvv6btU7q>ni(=Vn7fx_# z^f?3p_!NPimM}BC8(JNtXVC*ViQ{1u&oUlLVum`%k48^<-7aly*bwwWU|#I;Op4Ti z9UH@nqMv5`MwgU#F%C2-yZ}o|c8B2rB9fu!mNUun8ARS`X<5S$$To1Sq}srl5xadw zK+G*&)S~|;_PW>G4%;D*9KOhX^R=MqNxZ$Kf=)Nvv6eGPFIJ=oX+;|{3$q?k$H4Cq z60!^qLcc>j-&9U?e!w(ZCH9RKfyXO22Sq;-Jg2|)Yy0v7nh=|~W({Z^$ec=opgneg z28HULc8mluW{WiCTo$ynmD`VRi%>+UbngzdiCIUwcD^3>;9`s{pgOEKUCy7J;VSt5 zQM|F$BrMsX!-1e9@&)EwN;u<#_7lM2dccV1elNGSg~!4ULm6I_xw;zL7}LU+UKK+| z;}CEY+pU%;jZ>$j5A3y3{0m!2J6Lm^K-UIMDD!OE?DJ#qW&wNq3MUVbA3u(ML>s8B z4b&3{fF`S1aoU10$3FF08NHUdp1GpAhlL|JqCZ;*A#l+UPTC}>=m34>W=- zS3F(OaV0}x%oTPF;T7gbP^V1%kzO8DAO+37p-40chx0A~dt#L!jm#y{VY+L~QuXMg zA`!VUggiGJrxrOwdUV3Hsp%2Mn;;b|Nc^m#dc?Y2dIK;&?2|mgcF7ysh}!hK5HDGa zXAb+T$=W1@-3q*$x!Lrh(Vd(->L3d!A`B9c9Ej=E=9@?tgjQtNf1rdiyI`r2$MZAF zn>Z&UUM1FmL}sKqcs^*^7$E1JV>i9)HNddmGeH6{^eYiH$2lPqTDBc%&lH=>?K%u8 zPY)PL$hUgM$~8OOBrrCYK8@{|zG+37&P$FlsfNuu$U+*)TC$-FnG0)=bnW&N6bBcO z>0f*S5>S>3>J-YzmO}P@${@=Iii-7&PuFi1fsHuwQ>S7C32|dTGI7{O$9#dRat_Tv z=wnqh1@{BW!6qhD>e2BBgTN!#aER_=wq_di!s2>%H53@!O{bczdMDz2S*r z7kt8Zt5-OtCjy#q#x4*7i*1ais74F-m0FD%tTn9|juD2F85FMgiI&`p># z+5u?3!+!Sd8#9k{Fw&ZiFXy~u*2+F73DFSwkiIwEZaaOF*Xx4AfSs9A4QB+2cmo`P zsZRoke`4PA9d82ac(T;z=4;=RzaBZ|dXbyi7XQuL0G4eX;`$Qzt2Kd2Q; zo+!kf^f@?}rQ&T~7-i5L*Pv~x5w|unIo-zk;r<&pRc$5kumbV)wS>J08bal&x21b*I-FAjmgW5Xpv6^QqwIbtwKHt?ChO$@E6 z>5M(r?n;!F1&klkP#ehX+peE7ofkoid3{LqV`(GmkF3zolkh2!$it`7r>!9&DR)vF z2D4vW*ylyiL2^~W=|g+1+qj)W9z8|giqX5CY!6hTAglJ);QaKeA5Y_6(hRD>I^|LI9xzgAm}#`Nf5hGa}@c>d_DvlpcBKK7?9agmUAN4xDJC$R2>VAV=efFl8r3H zh9M!#la;fOoq}MwaAt6_LK6aO5SHIQdY*jCA}g1hp7vlF(3cN=P9 z`l+X$lEXFpOaVbPLDTAsowTZtTvg)~(GD(U$C-nCz&s-u5H%5fzz1{keG(4r3f?p? zargKfO>1cyBn(36;DtWheq7{A7dvQRPl=5opn{`KIuM32;R8HySzE-X!+k)r+~Kd_ zpjwb%h{VKkru7#WL-94@sP}pyu6x`NCF}x3Y!7=~Vuw;K$hQ(WlZLWIG%8^pnQy#w zu!9DVb&lU$R^gTM0}8VTwZu|d7agl8$tm?Y;kvk(u?zj^1KTd#lh z;oGkr-o5qJpa1;rBMd*mw;wu>C(0jwn$HJrfAJ6TJo?J*r9Z~= z_1AAdgXe1xym9+gJfFk2bAN#6C-HplPYHMX_S1i+^SANjd-uz`w^mU889WL9DxQS@ zJv?8;v->w1Zu@U{Z;fy;2iE}w4k&OyfddL0P~d<92NXDN!mh#H5cX{Iz*1_+OL@Vh$wx4Wl)_v@e!LK~m>D&oQ4z;F6|8o&R8-#i=r7yKsC z_Z{bnZ#m9i@rQuSHB3un?~`Sr2cI9n>lUDo;CT+uAHK62{|L|f@c!q>UD|pA>tcY3vy<9W+og;gF4Snu+e->YM{?-RH+___ioL4|UUa#RjvXo;`QVWcjXXT^b0Z%<{0k!=8TrLSA3gj_BOg2T$Ot|uI#ro` z0(-}f^U=!M*PKeaflWdj`*$ihZXQ(d+`PTrtQl#?O@)YM7r27UY!-($8Zylb~JC=(Y8H4X;0t4 zZQ*El^Cr$Lr_FBRJfw*$n#t|t4W#WwINmMX7Vc?u!27LnJ4(ExoEOi5Gne?OQzLT! z9lqzY7u(`RKgh!UTW7@K&9T|b!r`Y&3D^A%JkLcVa=(T&=ZKeu`)#Dz9_Qp7ehBs4 zua7tn5D9YuUAaDwe>qmd(NCDcj_TKtCY^b)J;Htww{1^Gb9)4Tf}wvAj`x>wTeu~R zdI@l6Y-cF5$*-6+`+emo{Eg3zINw6rUUnR>BLgs9n@>3W^hAEKFJ5orwrRe99dHjZ VVJ=%{akKe<54eA@FL+wG{{@jOn3(_o diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libBrokenLocale.so.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libBrokenLocale.so.1 deleted file mode 100644 index b79414dd09276c1faed76d56b709329a69b15367..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5648 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Ϋ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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libacl.so.1.1.0 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libacl.so.1.1.0 deleted file mode 100644 index 83c893e706bab80d56a6d68d07c698d9678d7caa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22144 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Ϋ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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaio.so.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaio.so.1 deleted file mode 100644 index d34bc9c96c89ea9011725a4e20f115037eada749..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4884 zcmeHLZ){Ul6hH6v&qg<9UCJMokZmq9fi;tW68S=>yg7rQg!#chX1hMtr(IjxS717H z2~!|q9L|v_EI~~SL=(GYi<*G*gCQz0!gmdZXrhM14#tK-t-s%EFVx@%{pN?B=J(Dy z_x#Si@1A>??7SB@Y&0}Y6D2Nb5qig5BCDZ)@Qdhf@vN2x@gi0y^PRZjQ-A9&!b4|J zocMv;L=L=G#1MuL0bYP{9jZLO2R^|#rgAU?t_I z0KgWdV^f!0`gHp2!bjg-7r4H6W?;?s_%9>(zswjxZk404{|1ru{;c-Maox?>JfIeM z=d&Xxwhla5N6jEK2mQH z)}7*VR>l0o%J<0*nEiMm9EsE;9)g|(e_@$_5b=9TKKWhn`Htk@3*A@dvle5>uP?=U z-s6ZbFZqkB43>UxQB`*V_i&S+*XogoMld{qU7AU#w*J z&a9a=yRC#})61B4Hg$72ZN|-T#^gZM%-HE(`Y4SZS`E4I3^9v-^Ayc$v za$imkOQX-IF(lu7&6V4J&3#>_@{_ORe4E^c{^1J`d%oAl8VvWF-nXicp6HMx4Tdyo zP3yp~y{5I~&(-Aer&r;Ra(LqEGX0ob7(SKi$WOS(+Qz+B=9_Iw=AE9dve&cr@y|Mh%>kw>OX4NlB1lM8r{=TjYn6LV$ul`?zg zhAoo^bI%xsxt|O3oVWK+>c&v6)@U5p-*fes;m00*;EfmDIsa+yvC4QU zS7$6RR*a8;qknL>F+}djT4R;5!q6HEb4Lpv><+c6NTmXm3REgksX(Oyl?qfUP^mzr z0{_zr)Zx9@H(dR*kX(%BfW7n~G|KF02jKglUk7Rc_J6+@3d!~OxAzZdD9J-FrSTty zJ-U(*8=kNkj##3x2lPD98WOLsDpak_(|zuGcR*X9Epjc^?$GYk?{Y2Cmg-GfSrZjx z_cS)T;tL68Vrb9oa72QMq-_R!6WL%SYsI6jR#Y4>7S6;Z80}AF`umF7P8TD)%yh;| zCjRDhBg;1T*bXz?XZ0YOgcr$VBpBNASTJncX)BVoP54+0?O`O_8@CeAs=fUi&Dyfp z=l6-35}KivpmlX*DW0>aH+eiOA_`lTpFE-k;GE>~3<*EL7`fCu%eInF9?zWMSt~(` zBWv+2l-A{06HORX>oT9%0PtSW<{crn!7g7Hu51N3H}4p~I}q#DVi+Tz@)ST0!o_bo zXyp05M#ZVwxAp)`Cr^d}Y>wX^l#oZn0P@M>_l;Wc=qpk4_F({=lo}^*jdGyXtL`nc Z84iKRep`v+-FUZBpbI>-z&Awk{sPuFf`0%2 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaio.so.1.0.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaio.so.1.0.1 deleted file mode 100644 index d34bc9c96c89ea9011725a4e20f115037eada749..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4884 zcmeHLZ){Ul6hH6v&qg<9UCJMokZmq9fi;tW68S=>yg7rQg!#chX1hMtr(IjxS717H z2~!|q9L|v_EI~~SL=(GYi<*G*gCQz0!gmdZXrhM14#tK-t-s%EFVx@%{pN?B=J(Dy z_x#Si@1A>??7SB@Y&0}Y6D2Nb5qig5BCDZ)@Qdhf@vN2x@gi0y^PRZjQ-A9&!b4|J zocMv;L=L=G#1MuL0bYP{9jZLO2R^|#rgAU?t_I z0KgWdV^f!0`gHp2!bjg-7r4H6W?;?s_%9>(zswjxZk404{|1ru{;c-Maox?>JfIeM z=d&Xxwhla5N6jEK2mQH z)}7*VR>l0o%J<0*nEiMm9EsE;9)g|(e_@$_5b=9TKKWhn`Htk@3*A@dvle5>uP?=U z-s6ZbFZqkB43>UxQB`*V_i&S+*XogoMld{qU7AU#w*J z&a9a=yRC#})61B4Hg$72ZN|-T#^gZM%-HE(`Y4SZS`E4I3^9v-^Ayc$v za$imkOQX-IF(lu7&6V4J&3#>_@{_ORe4E^c{^1J`d%oAl8VvWF-nXicp6HMx4Tdyo zP3yp~y{5I~&(-Aer&r;Ra(LqEGX0ob7(SKi$WOS(+Qz+B=9_Iw=AE9dve&cr@y|Mh%>kw>OX4NlB1lM8r{=TjYn6LV$ul`?zg zhAoo^bI%xsxt|O3oVWK+>c&v6)@U5p-*fes;m00*;EfmDIsa+yvC4QU zS7$6RR*a8;qknL>F+}djT4R;5!q6HEb4Lpv><+c6NTmXm3REgksX(Oyl?qfUP^mzr z0{_zr)Zx9@H(dR*kX(%BfW7n~G|KF02jKglUk7Rc_J6+@3d!~OxAzZdD9J-FrSTty zJ-U(*8=kNkj##3x2lPD98WOLsDpak_(|zuGcR*X9Epjc^?$GYk?{Y2Cmg-GfSrZjx z_cS)T;tL68Vrb9oa72QMq-_R!6WL%SYsI6jR#Y4>7S6;Z80}AF`umF7P8TD)%yh;| zCjRDhBg;1T*bXz?XZ0YOgcr$VBpBNASTJncX)BVoP54+0?O`O_8@CeAs=fUi&Dyfp z=l6-35}KivpmlX*DW0>aH+eiOA_`lTpFE-k;GE>~3<*EL7`fCu%eInF9?zWMSt~(` zBWv+2l-A{06HORX>oT9%0PtSW<{crn!7g7Hu51N3H}4p~I}q#DVi+Tz@)ST0!o_bo zXyp05M#ZVwxAp)`Cr^d}Y>wX^l#oZn0P@M>_l;Wc=qpk4_F({=lo}^*jdGyXtL`nc Z84iKRep`v+-FUZBpbI>-z&Awk{sPuFf`0%2 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libanl.so.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libanl.so.1 deleted file mode 100644 index 5458c32ed18619529c87eb88d872d7d917d71711..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14208 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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libattr.so.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libattr.so.1 deleted file mode 100644 index 8ae47caec5a25cfe837d5bc22ec75bfe3281afaf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13808 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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libattr.so.1.1.0 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libattr.so.1.1.0 deleted file mode 100644 index 8ae47caec5a25cfe837d5bc22ec75bfe3281afaf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13808 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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaudit.so.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaudit.so.1 deleted file mode 100644 index 94f495c5c45a570054e6412a548837d8edf1ace3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87700 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

K2ay`U05bz%_4T^m+t&^KbR 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 Q%NEAZCEYvW0y0eZe^_77+W-In diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaudit.so.1.0.0 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libaudit.so.1.0.0 deleted file mode 100644 index 94f495c5c45a570054e6412a548837d8edf1ace3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87700 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

K2ay`U05bz%_4T^m+t&^KbR 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 Q%NEAZCEYvW0y0eZe^_77+W-In diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libblkid.so.1 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libblkid.so.1 deleted file mode 100644 index 2947fafd5d4f93fa4baf23b01e1b503479159632..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96588 zcmb4s3tW^{8uxkU#&A`ErWp0C@O&#rsa5P(`q+V zY!$Ugt@V~NURo^`GAp;+&KQ>0q*8~g4vNjI+`j+w&Oyi7zTfxzrak=6{XFM6&w0*s zF0Z>JDNPgvfpz?pOwTAZX(VHD!20d6aj_H^m(!yD9O3yp-7lCy+E%K35ad)pa zMBryfUUF&*SeaaZ#Z-Y+ocFjhJs6YVG(24al;#Rdy5@0OR7j4}JK6|ExWh#wo?J)T zQ&;9^Bltf*Djx#(G}67>PY7j<9F-^92@zyUxbaUu%ho*g_FsEdpR509N5ZVw$QeVI zRsSP16KS*IbZ`N1t0Fa4#!Re>P8E&VHxfh&XC57+TK2+tw7&)|-BL;{b&RlpsGqu&X*ui#F? zeFNwH`xb%k;J%0Z0q(zWb~x`}qv@kU|C7hwxcu|^K}pFE7QB4r+^A>2Y>w-;sO_P5 z^=;dC-tPCy7bE?R=ci_5ue$zi>EGAf9Prrc&#(8plrY)x-n4P54&zzA^mD ziN&|3_gOfgU|sz`mh5Y+ieB@aB{(H9V#)VoSDgJJe9QICQNoYW@4uHGxk?%N&9-O8 z{QPU^e*?z-;fU+k^y`Al-}nFIACGRH{6kXxrWK1_ul{QNE-)t3uK~0yDDQKuQ1Sd{ z8w28UPycu6*ZI_Y{jbMA-#xcbG)t{*R(_*2!LPu@+xvpDr%%CYAf?)+Txl__<} z_~bL`Iqn&^_oYuMpZ;=U+34n<{l)Um+bWMgxNAcHVaH2yhyOl#hhb&xnOhk-?|vE5 ze{17|!e9ITkiBa8R8`@uVC!Qs&Ida!7=Gr59xoicph?oSzu^3N?ukW<{m*!hQHQ^9 zsK=+2CltmUx`=*C)|EA?JZbc|3*5SUK{;$71;u}qUKi96^5kFcsY;Hdbn#v?i-do# zPyG#k_cBm^$tS(ptNsU&4lQu^r-QGQ6cztb`My5kxjyy#ld|SN%I`fVC>-w7Ketc$ zRUAI5Atc>;FX{1U*nU%vrl_bKIPMW^4I&+H(Op zeTz?fPEALur@Y%Itnq1oflv6DPgwBbZ<$Yja(wcy@Chru!o=Ute9AZY(7($oKlN{< z4}UU!`g6r6e>b1{I@ST=3e~sJhrh8t<$v+vcd$?UXMFNM>C>K9cBVsn`9AF(@XA2+ z{MDzv8$Rvd@aZqDSsgzrKhUSXuYKsL_o?qOpY$Jm!XNq6x7jECRUdkL_>N}>aX_MP zolkj%k36;e=m(2W`L})Av-pHx@Zs;9KJ*XtY5$TBKmY5)pGu$bM?US9`_$LsrOzTj z`xT$^&wBMo2Y;kb`TaiiANQgEcc1i;KIKDw!m&Q>wR+J<^UvXxPU92fQ~!HD?GN&) z|2v=baG&zaea7P>l>cxdW9h&yEQl?}_~*c&p<$r#uLv*rgRxFL{1)g94iN69TOl7Q zS&R+f>2C1%*LKgkLFFF^gw9tBchff^->Z*!Y$Qsb0)6QZOSq%GbD*Q!Gag%)(l0@N zKhN~YDuvIZ{FO&Nb~A;~pnM;d0H256FA;833XJ$n>FYrM9IyTi2}T0{J-`~<6)5A2RbjHGXH~{0} zzZ~UJ59Pmw{{D*ouH@+_K+mh-ZwJ3yLI3OEKS0hOj`|nOWz5CHFM!_{k>0_-5$M0* z#n0|Y|K2P8bMUjq#8?_H-;Ma?HC~g@z6Jas*(3T|(B7*%?~T6&>0cr}naj&B=wH$d ztmC{tv`-p7+GA@|`3!^~c#JUvuWvf!L9Mx0{}Axw^S{Ba;N>TQz9D~QEScw*K;I6? z5ABhtzP@PhRwiR3c(^y{NdY|oIeje{@geB#;Kve_e*pXd$mw&Du-Pkp5&E%V0>+28 z{}|FgMtVp7S!nN7j9)r0|2pt?JYy?(I1uSIpr@n#r+wt*2-083hMmRp|A78~;MM
8_=H@v+nipL7(ya9`rr- z8e`Z4%lSuOyq@)%AA`}~TaeF=@#qcD-yuI8<7b3?XRgFK0B?V$g0ZJ2+>`I!h`%`5 zv&SX=EkHYCF<+8-d#izufWLG=K;P`P~A> z^g-vrCb_-`;5iI>kMM9d!kOS7*dnK|Lc2R4ZwaV}+TQ~HEd>9JJUtKT3z0sUhfkvX zQm^tXBV*>Ad2=%g=4a;5&&XgIDU+Yb$j-^nnQ1AQpOZiNiE+8}=H^V!oSvKGN&EAZ zjI6@Uj2V`>nYor%ka5CG8Bg;X#^q)f6yy}3oxFU@-1##yvdpvD%$)f-b6;Ww^YiD= zTae49=gzidXCN{oD>KWS!?H4SbLVC8=)46T(VlEG@^f-f*SzUDjJzF%vv}Ezj6(Ef z{)jl9ke%}q`t#D<%sDv>Rb`no^Sx3m=ws&moQ&z9b}pOa-7Xa@07(TonfX~}qBS=M zS#suNIX9yOIGKxEy)1=I79G zdn60PjDXBrdC284c&T8n*C==jdAh`ha_+qQIz_Q}NtH+8{&Y*hz2y4}5*;Agk_C~S zS70f`Xl1`-DaZlo85uJ=4%%b1ayIrIJ;5IN}5`!bP|B2`aHW!{YJ%np6&nKPd0 zc3-7(759;4nG0fln)c3>GdF8qHpuqwDvfnV3=-y&+6H#$g&Cj)Ba@%`GU;+zX<)tU zP+0}wX2yb?mvZLLC-vh!;b&m^=;(6}i6bo>7zj@A-Kc`RoGk1CNM6wSte3N8H6o8a z!VqA2`Qtc~2MP1?X+q0NkCw&U46K(q`B+mK=quzRo6AVs=H_J0!vfl&4dnGMBZDNH zyct99Hkmn}c_g0Jh5VeCA-d$7;aP2v`qB)Keg`w4emf?WXNdk}OcxYn&g{rEd+xlK z=Vr_(kjL30X5Pa|BKJQ^hy*D==S3)l`xTBy8axgDnFRbv3a5@*?--W*$o3}HlfZ?1 z{=B?-x$|b;FOEd5PeMmfwoG8z%$z$1Vv%v5y1XyX9LrqGoCR|-EKoT26zzRk=H+2F zWMXLl?^!^a1tSc@gOu(6wWd7t!h-+FmuJD0n=vncHp8+xl!4nMSO5~YoWh)}m+;qe zKkGSHpgiVVXcfPonKWSclKy1k^JVjHX4Y^k#ig9WBpJGJ1_w4K# zKbZ(xX8*JVRejIOxvz}8gZR@zUUPxU%M8cz=`l|468on`ea6zmj1I1MDEWIFzL)M< zps?amR|Xf%8$5*NXTpSHh{~ey2q;hNK`i+&TXVA?f_h$1_)up49P<l*DlvLkGvPXP@Q8JEBHnKSn=4um7~% ze}AkW&ffyOa(S2d|MmOU{Qp~?4lBLO+#jM86*j_j7w!3rt7_KaD9#hBMjZX;iBa=B z@(nip^q(3zJ94NIx|c?NN>gJ;-_a7)MD0+R{2etac%F`$2&t^6oC>L)a0i8+dWcG@ zUx{6~=f4-bejH5aTj6j$`S}C3^~i;Dp`3G_JJLGNCMb>SI5_qrxg4Es(77h<>Amw1 zwg2|YLuZ?mr{fHi>LFeo^2$T!os_5J9F+1G)YywZQcxk*QQ*@NeBYNKT{@1`qQBTq+h)*iC zRQU=PnqwTtWRB?^b2%>N zSj4fE;{lE*IG*8H&9Q}JP!(^Nqk&@rM+9PJ#dI9}$c`pwgBD9134dXDiNlR26>7IIw7aTCYg z9LqS`IaYDJ%(021>UZ8g$7qg5j*~g2b1dYzlH=PPcXK?#v4W$WV--hsne&-rD91RC zMvloG(>WG$T*>imj+;2{=6HnTcN{NptmhbX#nXN`M;%84#{`a(IGQ--akO$Q;#kVD zf}@>dCC4U?s;i!MwH(7Z#&b;OIE`a2$2^Wj97{QF<9LAM367N*e%+c=)!Sjq7W zM~S1h#?xL9$8e6Z97l7U#xa+pm17adVvYwmp5$1~QQ{a>>uE2XqmE+&$4ML~bDYm{ z1;>>f*K^#?@es!|9IH9ja}28E?Q+y{G;*BGaT-Sx$83&fj)ffG=D3Mt8OI8al^ic~ zlsIbfXou{BaE`GYjT|R)oW{|_F`J{AV?&9RJQ1xGta7f06Mp+m(nnqwTt zc#i2D%^Y(%zRhtH$5M_J9PJz{IW}=r;VmomU&~R?F`naSj?*~iaX;y9UOI>%`o zO&qg1nmOij%;PwpV-udj=3E3IL_x-$Z;`8E5{WaS8{xtV-d&Vjxgl68#Y|)39%>IMA(h7Qo}AJ*bODbJ#H8w?yJKIvGvvwqMc|$?9lXt zxG#<+#J#eC5Et8Vgq?ARPl!$3XhJ+*N+85T0V82o+({E+^O{E39q;@Jp_nEUhT%?{ zuqR{F2=TzdMA)0LY(i{?&4hjM&YTbr0P+a?F*cu2hj-(I5qNt;7|EEGFbZ!o2(c+% zN!XvUw+RO@Rz&z9-VPAz!B4`0;3wfA@RKkW@4pEj0$&MnvAvt{VepsG0R9pV0e=aH z;_jSq7-JQLaoCp<4#zuR!V!4eKsXX_xC!y_p^^}9pw19t+%6D~Vyub~Zxt>R;tfDG z;p6x&f^ZDpTo5KO)kvt3mAVwyd}sc%)s~)nlS!^nHYbYo)4#uBw2F9Oo zCdQx8jPWP5VEhSZfe#4})eI9@oz{A^T2=MX6;;*yS2|U_Q>AqsyOMiUV1?r=ME2D? zzxDp+?cdC;N3L}EOMEx`7U^+Rr;iz^h&Gn@*nc@mwEZOd-+Sf{Oi5^MPB}uUVf{WztGE{=jAth z`AzV9_hYhGTAG*N=#wwrE6w2L*ZbrP_eu-(@&|eORbKv<=6n2Zg5R6AYOk~^pR`J^ zwC}w9Cw%f9@=7c7@^AO@mwNfvd-;pJ{42fuRxf{{mp{+TZ}#$=y!`22{z+c`WG{b$ zmp>kUZ=S^Zgmqqd!@T?RdHGLx`Hy({4|w@^ zd-=C{`8Rp_i@p4Bd-+#*`4@Zn=X?2cz5Ll;{%KzR$zJ|6FTc^tKN|i}!~0i4b?;wM z8s4c==+-)MGW&bq_J@VJ?d`RthXl4=!1?(EZSpHdZEB%WIkZc!MMljab|!DUdcwwZ z7IViQHa`3aKJJ2h1^L$_zkg~#@*-ovghFHQUauH8hA8WPESMU?9C_n4DNm=fL3ivu z#gOr=y#6zRRl}vB9KD$jn4mrQiZLLyOW`8pti%4OKgy;}U1SV1x4ZKi+TEYEYf^>C zMaEuv+M@?ht~<&Vq1-oz1-1rZO|tf2p;42nFe8tR=u_I(k3U+iO*rV>wpCz1{aavV z$lpD+$Am@3kb|4jqs+ZkftBetg{U)iO%ZepjqUELYfA70DdcG9yDhgGhE7QIbvQDv%JnpV9Se^i0|HBMGO7v(3wGF>1MZuMRyDGEEInNcy@{Y3drcXS5 z8I1Ph;2x@Rjn}6wHZuJLyPv3Z)!iA8dNqBR`K;e#mGR~`5>i+#num!Bx9s~t69~kRc}tzIJ#F&LfL~YTg|%?L+nG%TN||jr~H~umzc+j=gk5r z(_Nz++vFVA96I>lYdK<0OS<5QpC!0*TO~`odsBV9c(mFzzTI7XL?e&GjD{ml#Js`E zU*U9LXk=_UoGz6pUt}yP(}6#d&PaHCtiOKloL|>Uz1Ux5u2s^0%SVahTq@=M%qVlUqgNTV zJ2bqw!&;1bKwC;Cq54 zZ@dJVVfr!lNQ~)pOMh{pF=Ar7drgBbrLsmFMUvX@$#(af4SiF7pC#zF%p%EM(GZ^U z8`@lGT!PTzhMp;rvnli%LN7HuD`_Y0PV{qxR7F~{z`@*xX!GtwfBO(n%wn4y@#yJ^ zdWyT{2+$p^mJ-_Ck0131()a7PqIarSybX5X$qsM;>L$v zmYWnNA@d8&Vj6vwcyfOaQDH{95~*EF5{Ee0!(ruY;7T#pt_3|s^{i3wPloTwdW}fj zSXnO^+TCJ38;pE#nU5jhW80?>)kx#mKC{^9895>%0PgUBGQv+9}t#q;g% z(l(OLTswF%&LD1`&RnC~XPb9g`e!D(R0>mOt|`mZ-xO}znW?TCmYOap4ZY1_eos{P zbSXM3Fry(;%Ok)yrE6F#)imC&oPE~s#_5O6M-v}6U$c*zea_ENS!&7Kf7p__AMMsA ze^x2QSr0X`&T9L@**$Fu;H0V6b+}TBFFGv89!4yU-sIZ#hZoJJoRRhd+h?;WwU<5B zM&qP(HMi(&%Gu}rgvxgJzuFEa4m1DTK2q!}e(4NIc@#52UIFTMIvLG?#4)5IOk-gY!vM!vc5syv0Qg$raZ}$?Ts`w{~S^J3b>7zszRh9&eQS_$hw>DH% znw3TK-p^XAaYR?ylFmYt=in@fta(~&HtrLPo#79IH+3v1u z)7z*;PkS%hmAXg73CM8_^i?^|N+AYiQ{K4!w<;$7-W0P0Q?>atrVh-1q+*TSC=AlwoLvQtxTMPD1 z5>>9Pt$syJ|FT^W%bkBo35+}sUK8iC>+)=q!AFJ6$7!hXm?IzxbQnH$E*JNS`<+iF z>*X-%zh1Q@sUO=XJQ1~L!o*jhV@ZqkMX9m&Bpf4tPr(K-z1j~ ztNYTae3iuMCCp;1`PT>p{NmNY%QR|l$@YhfGlY)sSRdj&DtNpzg4rM7;m zjRl{>Yi8I4wh4N;qye@L%?sdbaEt2^hWjg=4(>U)`E`suY`f#lZCn*W~6)lGzWgN1;(3*;*^cs=$6pn)a8(-4S~u_q=Kh zZY=c=Shr2QB&Gf3Rik#@#*ec_otPbwh+e${Za;6wxD@F`Vcnx*z=mOnjjmPc8yr+3 zd}Oyxzr)(i)fgdn^6c zXx8@CU98bWv7*G<0EJNey`(K2R~x7tG%j%c_flvDMy~ZD@UU~h&T--)v7h*~6lJ(5 zg_W_G1Q%PL4jK;CQ2$1>FK|(rNXjTjs1$l)`2U;ndjg>S!{gO z*t59V*lQhlU#7)8-3fVSu5H#Y77vbLu9uf~HE4?3-BNWotdE~m)4X7=b=H2HA=R$- zp?x>9b(+n>x^}m!hGgco>gC{coBQ~6n(aSfRO(-cgI&1T*r%9!`3mZvZTHkZ8np)$ zY0&CP)EodjQLQslOUtU4$}KHj))OshHc?w)Xe(f|P^>^}KU7ms@wH;(vrCi3UK_AN z)NI@xxmUkOEhZn9e$`>kepIB99Z{nI#r>A*L}r8*mflmw{)Qh8$qosPd zsM(M#29)&P$W{vx!WwD~b|V$r+b&&7T8seh{;U!Je_LAR#QLE2>%{bJ|26^=NWut1uC8=sYN$Mr(!hyxcOVYNu zCB|->n~j>{OOoA4qq*3qEvA0<1PyO4eNIvZK@zoX?r*NsIHcQ&wDpgdwGTWH`w5;#X zO3{pT{#i*^L2F1r(SIBhYr}_S+8MX@71jl8YL_ zqCnm5;KmgJQ>6iUksn8j&xmXt#&(17PmDvgNDMt$ zWqba8m2~cyrbTl6G9EvF&*H12%q)7S89KlO9U$mjot2%}k|yX>d}`mtnocvrpapth z?hBFK*IumYE@;Me9@l-`4_Etam>|Z$)@XC@ynf;8S1A)@yQ9s$?fO>UR-e5@!@#{B z8oKX|az>f;yGim?bzcSX7CTW}XjM41FL-rgZKuIZ*DE-vsOy^E$}VWH%dU$xK~d{d zNaK+HL5_fp;`cS$UEkHPT^FUvWm6?V)(xc9mRsW?2c51j7YA%lkOq{sxofX|X6$`i z80}e2!_>V_cSzj^>**R6#bUJOia`NChHidDya)>*aJ{gO^~cBHn2CAK!Hw$!SyZYt zz%XF@BuTGhgT^#Hu{V0hQ<8p?NB*{9#!YbqZXRgfk?4?ES-4$QcT!b}njJOTq|J$- zG)h}uoXA{qILs=?hdVJbDz3K`nv5h)!W-|LM13xPL|?Jr31pXzV>59ilVWiQ2aA^L-l@sr}1(+=nuKBUEk&ox_<7;$P}#duwC2S z%dQ1oA&Q8XVH*Y^HrxCR^1gKKV`oqB1-1`pn0xKG6SFQ>&|#ie#Gr?s{!N$r7kTw9 zaSu)bwCu#?d9H5k^UH1S=mu6EyT`NU!`@(jCKexO2?Bc( zNd79mxCXBD3eNC>M!1TrIPXU|;WECzOzna*n>_4x zXlGfX=~l@iNROOu)`$!}I$pokGRQp6rBH6oT&vM#Do^|2RG`g0t-&DX9aYQz=Nc|M z*+(85em&}(4;OzB`?}O%)J>;BC7NLD?*-W5JDQ`+8#QXNqn`K%I+gL%Gqj=Jx$Q$w zJu6VhG`KOT38;fCoMj@NCcINdmUxNgua%!-&9m4aktvX{vt;@l`^aRn%h`i|yKpMB zR#imOC^aaNHo{)A*zcbKgRnyzbkni+c2}LUv1=fU7(6Il^g|fy%^;_J|Lsu2V4OFp zT?<-pwj@rjRkI6r_RnN7QVfLF9?=@V-)|#}Ic1N5eka*r|5OxB5=q}}xlOGdms>mO zFo@v@)iw~d8#T()56E;@)a%5~vc26&4j-!D=u8$>8~k>vU9YqyqlN1&KR`mdseU6l zQC)JHI6r#*hC3JV#qK29Bj#8cq zTacJ(GljRg|52|Nt+pYcy3MU=U{QK8=GnZXZSD%3W>NZUNT;=^mq=Zp@0vS@ zmJ5+AQWFzYj(?28B`5-H0ocQq-0ljg@dJh$Sj=zsPh~0k#U22gfND8WPpkeQ^m!CU zIQtIM+a21C9s9hYcG^jQZQp;(I`M>qS_+7%u(OyXyQkhysdb%dP_UyQCJ^bN1~auK zbu-L~Q37%68MEC!5IY{)N50rjExsnxy%lyqn|phGKUv~v)w)=t5Z;20UzYfeqeqHC z93*orxV>BIzztf{RQWvNyyo}QT~bJMBX<<(K2`lWaInpdw>XhQM7CxW%Bfup{aDhJ zySJk!)`?4+a`tY+eqP!lu;`l}{bl-Vl-LuTzP3+heH>&`akvey2xcJ!i$waDDt~9qM^T@m}~a zo!HAf4Ay&wBN%N6a$kq0u_)D^WGQ6yVq>xtG&)(*j@Fs!e3eBE1($wln=Gk1Grijp zXYQXG+!z`-AVsrxp;5WIA-(u;c$E&ieFE8PWi+#$Z8|g7aO~5tD%6fLXC00+H$lRt zo6l;7nyODLq5mV1Bd_i^C+#?gw2@^xxGi1Mrm@)f9Wmx}ntz?{eAgbCR#)mgkD2hT z#1e*?!f{5T5>H&fmyTVh-- z2H#r#^hR-Ex=K7Hu~O(OMW9)|8k~4aXbcqsP0aNVt7Z?2P{1-`tFg;>Ro?uR2x;LafI$P;CG4lAcUiBeQb!dnThQY&d|tvw8`a z^^AH$=&)YqK*&*+EJuE_9F0s-t|bnA)l5A5-2PBRn|pArawD@T^M<4(h$@_Lw7KJJ zX@%K`vjpYZHus%sYB{(?xsl53^y0=KC_<81}jlmroch*GUlu7+(?ttwG& ze7aUCykpOIQqD0=^Y$V=X|{8U_^q+0m@K!TuML!hx0M?wLt;);zksx4?7*n)UZBmt zE>NM6gwZFF+Ekrf>XE0*mpt>a^bXd3_~YPy_yuPPK$5F}mtjv(x?FrDb(MI>_(<|2 zDN~>gXxE^`dBJehJ)@S^hcWiJC%f%_&8Vs}h!Gfx3DpLhPP9hQUXOMcHyt>Cu&VZ| z_ejP;*qvIzvBGMFShT-mmk6C*tI)d~s*R~h4HzZbCk;SJr-Rm!`kKC})H01(dbyzU zuT+){-_X^(Au+-+QXUhgyXEYjDnu_bcEgO4=csIGu{ zT_K$>+XGWW#YM&|;K{6N*Jck-oYjbZo)PDkT?-k?gWy{3${a@s=##SpeeLYt9rncROhd5b^mhxoRntRm{jXfZU{6_ zRXy*X-T=FHNWyPp3oJ2Gd3`JDNL^tR!IR2*_bD$?mh=_pa*v6Snp z=}cG4+b;$U+u(4G$xdA$S(7HJ#4vuFu~BZhFV2kjwukKhaMs_%2yhSa%~Fj1V{(uS9iop$0XQKy?FZ}yw853 zU5c$ehB@6R_PYpu)wo;rrr1ZE=t>I=Y*yxdlp7(YMLw6LY!tLeW7=~6#`Z@v_Faie zd#n4#wVzRXoG1)Wi`$cQ^}^RuYzg(8>@#WNDyq8|ER}(g7g@}Ds{g^YBDL_Cm^MIN zwIdPZs(Rq!_@vI~w&n`MQ%0@4oJdlW!W{ zd2@qD4&FWIxzk!{o7faKeYb%{w7Orqj&_H!$gCNle9#GLyY7T!g;Z}cgdDB1DF*gB z6MyjYy3du!H5{i=b<35?#>uKl!={@1XI6m9FiV-uWJ$J_Sad_5_FuzVaXMwP#2>}2 z@AwI}4HiMC8pE6B>E6u5HKDTEwkbxT>-G)Sb7IA^i3tL3~c)$*-vwS~%r zl`HF(3Tk^V^Qm#;aEkL*;%$e2>hH8hHd#%~5ptAdzSX_{8qUm)(i(OPn4_nua`ZX+D)YUevKF;3TxZltJ;@Cv!~im)SXai>Q-o8 zn)8zsR>a<=HFmI_ZDa$mtG23L3WeGws1<86EXsANF@M2L2if;S?S0IXvHmEkU{m#b ze!pI9bwA!fwv}RI)?sDI)3ySCAyVV&Cn)X+jZ>v4UBI|h{1rw#iJRx(RH5WY-Y-A2 zCFlb9IG#k`JbI6MaNDUUVS~;(NVf&>ek#yU>J#QxjY@b2D_G0tg8uuO0O7?(CbSqU zZd6!*mJG8(G0)iGC+t7fXoR1kJv^rzNsgbOg@3M5>^h#bsLo%pz5M$c)v5vK9;phg z3s8*|lj;K17ol$sAd~~YFsPuB1yT$PffEl)`5=lBt|p+?k3 z^`J)oZs+^rd?f(6RIt2Nt3v7m*x0&2A*@cJ1(i`LbxMD0(!x5({JF=)GBI6BTQWXL zXTMkz7G)EUVQte_bm=*JY5e9RYo^18(vENJ4I1}IAauJAo#zv+Xc0LR?E5+-Ew7Q?GrxZUi zVZR}jHHP`4{avh4CqU;Wk>-WYg*;S9;YHKrm3gZAu}XtEtfbYQhmxkU^dzlg*qpDV zNkv~vVbmQH5LiQ`MV>BGFqjyaAIjpN6Yg9?cfrcY_<4M*$`YLbY z261IsM5+dM!^N7AB&L7FUL^L#>la!rb(IsF4s_X)IAk{VipqjIHTw$VAK_97U!k@k zS(Y*d*|jX&wh_(gqM#+t|3|1oRHdGL&ZSen}tS_9>@;lN3#n1(p{}? zvEf@MQFOssg@u&X^EZF;$owiudsEp`(QnP0xPer!{T{a)u=xG(50Kf_B>^@T)z$RI z{!!+F{eF!hn(w8cQk+YrvHs6tCnTTd&H~+m%DUoc;&KdbNwz5>LGfSOh$027S6_+sg6F47^pT>EX%>WB+ViTLs`cF`xA4%T^x4ZvnRhAi! z(in!~{Z7Pw=^(9N{bKrDNb8Ta#-wgmsyj~@`)Vyd{l_aKS#D9z1&(xwzVk!QCCF*E zB}A}yg>`|*Er5ovYU6F=!kI2BTUq9kOWkqCBkzWGs-ejlbRgv5vNF|f=<=8-oQ>jU zvR#4E3`tOw5l`*VdW3YggnR6y6=j&gN+s?%28yb(yrYoYB;2jGV~3|~vg4FwcUSD% z+ua{XA-128zt*WNQEcoc=1&h7hfV+8N%ge5D?zDz+NKm7)Ek;RKge~s?SD_yl&?s{ zehu-S^QiYA`yp#?fSziVKNyby9vK#fC(R-ylsG@QtJoiGe>k1UoXUcHdwgep91?)53Lv3rSME zOET8#cGW0#V@1`@R`<$U4Q5Mb>hqE^Aqw)ds1jTpVG#S0{J)`H&zcP5SW}*n?sbCg z2X3*6)sBlb1ESC}>pJd5XnOde*(0mybcSNlCf14pQC-Km90%|UU@?`-$dt=IZ$F2; z=fL4DiO@L0@$=dZU3zELsg+cRfOephLW&YGvxOJylxppHDyzlpq?>;g`fD&yo#X7o ziQ>Fb=I7PhPovHx0Y(Sv#c7YHhXHk?%v01Qr-`G3+hZ_~Dr~S4`P&3G(P)1Va{r(_ zM_S!YwXZw-CsWVKCV3LK?w6S8UA3NGWxVZi`QRJp;Xw2ZZ+2PD*f zJ}IS(r#1n)5$#E_0Ufoo@^5j%rY#@m5|rZ(lZITKs5zGwrEC`1Zdzl(!7!8}UD6FN zg;bl`-B;TMk=}+LwguY)%`v7KAwI-@Ky%SRFJeWbYrSAUD$7 zn51q@Q{RLJ!k%JzAjuofA*QMoo*mzEKb$brs?dsib$Pe9Tr0o0((yKjqRn{pB^+b+ zd3!SYpzIT43b&2RWx6O+{81flI*3lv?<`V#uq*O8+sp1)T?zj5KC#8UN7k#Y?muut zKRhhk*6OaT?j{M3W%l*l7H(82P6vrB_6AP)b>c9b-$Mq+^@B|xnW~oUl%Q1!`@4(j zwf>3+?O5$}0sBMEEw)owJ&&O0z0QANc{{1csj!ranvhi$xJzA@O>5Oub@1sdi=gY8 zGTr_9h+l#A% zSk`BuW+6@y`}i5!lc?)fs3yl@_m_}m9yozL=rrw1?_z!$G=G*DX@1ZGn}daxr;6jm zr_E1^?4Pafoz+=*H+7;iHbW?(`VW>DeYm|J_f|sl90<-{T<2y8-ryzIlz9qEYZbkb6!!dd`}pmd^bF9a?&Y>^1ZvX@xIQ^ zA{vP{tix@e-1!?M)N>+A{k@I;mcHp3W8Dw<_haD#;5_|Jko#Ns|LpIUwh^f#<^Epq z>Tg`C;@!cbZ;!wFvmS5m=y43@@4oBz_t+rzp0%E|q1@xX=&@q6FkG?D)8k<{cVXH- zqJnzv-!a18y?*AtUJn-`2LlAWK=hRbT?KE-R(W`1_@1#@aA9yX zPcPQ^CBa(K$nRY{q2*4bAD?syo#%d))#o3vEr-<@XoBo5m)Do&0^N}<&pWuHOtpgzz>9&Tv65;|$deeoB$Y^S zls|7@X;W@oWDDY_CP9@nZ*{V~<1VBXFTppoxp%jb{YI-xi#zvP1NsrY($kN&Z$0<9 zs={fu7WbRi6lO&gw9>?ATlT)8u>3cw+|ZEmN8=CTePg>Cqw(%FdJiwe$A&FJiTrCU zLRF=bgq{>T%vMZmsCgJ}x;CnA$|Y$HP>ZpJZ`)?IMa-r`Qb7VT1~C|7snQdf?S zRoaE&v4t$Q0q4YdN7vmJ41qSq@XJnNIE6{}KECz(3(zgb<**McczJBjzLZ&@<%mSZE{ep%xt;|7FobuS<$5HG*-LiN~(wzzlK(#W#p*>y|22VYFG-U^;iBQ>cm?7$YqV?SH&ahd0r#r#@-)p3E*SzE zg#Z@Q2a?ckD>?J7Wr)B7T0$ z`c#YiQ`A)NAZpV!Q)FA>q4uKN%!HGCyuFSZe8TR(!7q}=RE^hdqvV{=Yf>w#`#cUF zecC|p!iM2Kx82>|rYyoc)^?5fd{sKA3A;x8dCM{(GYXdFTbbbYGpY?Leut9a`fw>? zUhwG1Q#iTmZT`hiiLq{RPq|j@q;sCrDd#N2x5|c_&e4O%G%eXnbWYVQx%JB4zzt7h zrEPJ4)llFJ*gz-CE!h3P=loB~wLYE`*A~40H;9i%piEwiJG;TpmEh-j#nxjf(fco% z-pV$-3wSsIFVd77UhcK-wx7Wuj*fUd2IHb!h1NpLwZn&lrXMio%=MeK-ThXZEyW+V zI!h7D@YX58^|L(MQ#7nmv$SWUf9LRW7PU(9HwX_W+&pbnu73oU+XRW;AG~L$9z2hn zl9jE;sVMB)o6=HPgz|lsD{Lu7u})d67as$61LQW>TQ#JMlzLGk38UKGFSPl|7UcLg zj8lk4j2xKjFox6k-;m!U|7KN-1E_>TEeSF4qGCgfdnIn&X4yv-PKp`sSXB6Q%uvT? zg()!)J8lLO+<-BB?`;PRbaUw% zt^Qfwhc4i!zrF9>l9TE?xIE7lET~rxNB=5o3$C`fL+S>+aqnLE+@B1s8b|Z-?O4e2wp_;kLuI!QJ@^_d9Tpb^(Ap&yFc*TYK2%fUN^wgd}yz-?;SRhw)$6F3?S`eS6f zxW#>~4(GG|8=b=T2yp4CR;Isrj_K;0!ul5X+xY(KsQ8sKMZa+n3 z(Gp{@s9LLD%LYDS$9K_sqkXV^-_l#tqw=}^L+Qo$dgcmi(TF;%D81TR-Fq;%Rj3#5 zg7G&2yG|B6#O{Yv4IOrbJ;m;}eyKxXIbF8(#Xj`!)fy(~`e5W~3`*+Q;7Y6`G!MnP zGkC$G+M(XbTz_p=Z9Z*NzlRf>!6zJcXBU+G)v1(wQ;QwY0rcj3rxNY;Z#9S~aogDH zo+Z=qDg1-Qe>)fR{{0pAKH1op5wA7q>vup}qn3-Gq! zBs6|%wd0J{qbs1XbSYxM&K7rB9j#Q~TAAxtD~t47^RJX-xexEv;cTqPPu!M@6-jgY5 zv~jqQcr_%+R5=O0xnQbI9JY za!nW2=T0Zz)eSRhe}tYCBK*Si&=lM?j4G_c2nJ#-ttKO;6qOYIU zsN`=1w0lST^jBL;68~H2MUH5#E*X%x9?)f6` zBJA(ui#@a|K$4C!Ivx=|zQbuIvU^g1{AghbVKU+5H+`0sn#bUpO7cxdwovDrQ2y5|%k)PE>kUz^J5H{<3wmX@ zC(1GLa!deXzQ${NYHuFSuvq}L`K5#DPvLZJaQlDpBCFYLkooI+gFU>%j<0Z44w7Qk z53oO4VQ(?KO=)%it+~#uZqzCSQEz!9^R>*Qnb%EkV8r@i->@5X9cZ(PD{=o3WWX1= z3T>lSI4K3`4x5@Wj+@X5)!U5M(OXgLDderT_2ef=8`U9@%2xNY%_nj8x!o3HQKIxY z^A}Q(btTrN<2Y|VlJY{K2|Pd6ko zJES*CiMciGnD@JbN7LTKw>;Cxx)}7leJQwkMH(S%?DgttIJakk$#`el?yi8<^4Q&Z z6%VVleI!z~v{vp;?2hkxtIW;VG2k>nf6EbNIcNDavGHO$X7NhMV!fjhZxtx#87Vxk z+Ck@y-C_S43}^9uZi4)}VytYfPRF-JOn*ZD3h~BiPut7T_U8`Iw|iudZ}d}DCSwF* zZ!`T~*dFxOfx?pzcAv)yP~bKvzWs+yO?tc8J@|SFF!8Xc*KTT+CO{W z;MgF0vwP8<#p9pNXzn~EF9 ztXpTDtn*{Z8+vT>Gp++o^uq2PU{avIdm|Z`?Bd_vxo4ofTi0 zL~XZ3%szqdCK6zwjCBb@f*6stD-*AmTgq_j8F|rv4=D0iufwa>z$ftKL3qFiVw^Zb z6sis;K7hBmtT;iOg0EwQ;cf1fup@6elCcZ&EAhv7J5RPA#9JBl<}`5>UdFS=J)pAH zy`znKuuM{|Z+0KQhWi28RvBg9fE<6fHse*hTEv&&eS>45rw6IdlC@I@ORd&PwOl>@ z4A!pcSi73t(RWKfk?Kw#g}3;ZPB**Hpge;duW6WJNlA&p4J3P40V!&B2VFbmjM`xQ zzfZK{^@u;d zD?8aT0WTtH7T#>thziKH4wg8*4{vt|fg^41?=fCu&?e%eVf{#EXRCX4i+(!2MQ+%$ z$l2_k#d{Wwo^`vgXQd4}xQ*&QlQ`2kh0eFPfgDzN=lcEElMdS z2;nx?q7N$9&`sueC7c3I1*e9iH)?)`ukEATqSLqyJ!BK~*;qLPFS5Z8oU`=B4hwfo zU2h8yvqApn=snQZzN#42nM>75S6YgwnaD{0!s>A;g;|9PSB26VbITz_sj6zHA;heB z*)I%JxW*_pB_`G`ecqK=)64s;1~O%Tsnne)L6VN^N(3s-gA)VtbcMa zR`No~*5Z1tP0+>T=54r*EEK#Xku4IOG9E2GBI}*;tba!MV7xHURrpn@aiafjQqrlk zXBUWyk&0o85i^n=KO^V^%hyUmRS!w1hfAAQXsqoNePaKT*sEu8H#)EDDRrZwQ-0FG zvqGI(JF&L7r^+=(WpR!1&vq?Q36i>Kr6eRQ5KlYRjY{O}#`A?fdgA8ma^6|4egQmh z=>mM;ph&Q|mUKd?s?VGQjdWfdm`7Gj+OyuF4qJ@0rxmw1Z<3wcpY_KJ6TCTJEz$~* zY}cp8;vOFwcx{iWFYEl3%M%Cw7=V{1bmAe5ZpJQYxG~OH7rr5>&siZ(Tc`31lT>9? zHU{<;F&rNXUnAD0Zx3YT)+%B2i}Ou)>RpO0xJ1L`CA z6r?SdnKP+RxKy+}jm(%b6U;db0`KQOgJk{ceV^<4|GBQiIdhhKzrXi){oJJIB zE{rVBdxhj8dDcpCr?N73c&qS*>vP8({+)CO?3(zR@_(`a6zK~wYX{$r-;93hj<^pZ z+inDndfKHydKN^5(e)+#XlwTtx*xn6lShc%LSABg4nWFKO^mjck%^iV@S zorJ5z3F)xy(5kOVdeEli<{-@w3Z5g8{U<**Fso6grlOwX@TRek$Wj3=RvuEB<+HR7 z<%!S!vGxO1r`)rFYe0NIhok+@)keN)IF7lXR$< z>+p6IUnW}Vd=kGm>^u8cphZniQu`ek@6)UOYvp^*6m--PgR&xu-N?|T1NhxvcnegrQHN)E}DLhJyst6>B-AO+mV2pWd;@C;H( z6sePr*A9h^7JkeGWuVA{dvp9FW+L*}Ncm?Y|Lm&L77Zd;enzy6hPor1X*-Ah`qq(# zw}>9LRTzV}h;F*HMUD4twmxokzQI$x?&$vDc^JmoL4ZvdQR*!qSOi@owi8v>! zLa0I2wjR)q|IPqLjCFk&JasG8^V{JOpZ$e25DMBxa) zaqA=|2M)sTAHX606F7SK{U8p)`73z8?QNNj)`g*#OK)I}kIAr&&P47>r*j|av|RL- z55IK36#D@>i}9qZ8U;%Ne6ZW=t8{3AcN@U5#5CKEn4g5KLd8$Axy*Dj3#rqU8wUBI zRS0(y`*-8U_*`1g7?$Q9$#qKl)xL5Abo{9I4f2)(@fzfhWbTMadk z8ORedulmTpxZGoWGT#%eclV9!4YiIC-0ObNy{{YW4&oa?H`*mW??tvJ(HMR-x}nN#0F+ zuX)Ry)QKC*Q!|4hF{DmFjLj4||4UB9&}3MVri+YZ5xC0Exg;Uo40_ncz6<@NPLDcY zZ6Iwv339>R_^xqw!_s+6`@ga$qXRZr`|lQ!rf?~)O6uwf(Qw+tYGkUkoZ|I-`Lf)sp$vsJb};L-bZ z$z^fSZ=u}NB4Cjr(NW=uYT4qCj@pdTkl5%5fi84(r`*uJp+xGxYi#3X4H+%N*Ku_Y zpK$5+&&z+;I}b+Nl~;iGKLH#|T<^!(f}?=Qo$%^^8FD9SyI`znFJ;`9Q-~65$<`(& znVH-7sMfDx-EB;?Mf~o5wRr@~9h?!3tEHdYIVN6MFbAv%ksa*_xy4f-nctha3 zzeX(96?WAn!lx7cs`kiCXq{Vy_8UYN+hD(T5B|!(z@r0?s+Fu~Cv10wM75r-M%6IR`Ba!^rk@V6YO zfv81_n}HaJ2h{dI>hq5VUY_U&6Cc+2HDvF!J8rl^E25aaA& zjIEi+K}&J0!m*s-KGj%Y z357oh)%c?25uzwH4k?SDv8T7U5gM;M_Z{1@o$Rv}A-OmZj| zSIfm1e7oycCC2Uxw!;o3M(^9=MrgfGVFWj{$oc0%dj~J^)810_$6l;Sx6qGQap*yd ziKi~SY>Mb2sxlB|W|7{GTZa%kwuGlq<~P83(IrcOwnrfnKO7Peg;tyXD~}f6L>6YAZYFaD*A~=TJ=ODl@VOOBtlhl%-u0|ls; zaFGZCJ*-^BAM#`3DVu~N85mObFn32%HlGfz_I3F5?J;%#x~Gd(jdRJ>k2zHDtYn}R9m4*Oya>dB(L_QZK7iy*d?8B934$2actA9II;Pcn z7};Lafo3}CO?P(&wTYsmevNyv#=vv%t$Wg%>RA;T!=LrAbP`&1Dq7+Ybi>TGaJ~=h zbA*p9nz9s6csx;Eqe>}5IByS}%B;*y$|Y}PHPI`{_YpLCE6M*>38fF^SLKHD8O%`W zt)*DuV(~oaSGJUC$}`FMkg5uJv}$b?@F^vp-yO-HKzr07OzNNvpCVrFLrB}&bX=uZ zIfz%W7JUsYsgChgu>Y6N3P^LFo;EeWkUKAzDfjE0eU1P=)nkrS9rp>hZr1jKR~*I- zbJ!%Z{Zc*a$VkWC&N#dp@+{S}Hj+N!;FY$;rHRn6l$xUKW+EHC zAU}i_1kON+bxiI6{hTyWSOhm7I>WZl(=c_mAn7uVrbm$d@iwX*x zK%Uck)^ZxeZ3BTpPYnoyqyV}LdgK#+LCn7n=S2M4Tnf#Mi3Oh^f41=hIqxCszbkKn zzpRgIFv&` zgD+SPyHy&*7O%`fjw>W@hMg92ZMms&Q7j~xgduUNn&CVPdOMsSqSv4u z?}q;cQ-JLunrv65opP4jOZlE*Q_zi9X@Fi*SF7Y^jJI_X*)Hx|A)E zyVMk&O*HqNPJ_KEg*qYn_63uELg$uWzDNr!gf_ zojx_I&@ z{loSM5ZgxcSNj*69^vJr=2Abg?v7!UK84rkp$DBghz<7%aX@3pvv$uQanU~D1sJQq zSGbB>SRHL13KWA-*yl)(A9fWuawEw4NyY56HzThC*CTuk>i-A=1kASPcp?%7(X`OZ zJ+oN0=ON>#=1t}YjBIf-_mGj@Z!-7e#(A!>=gg-)I!@^t{?J9~KKW)HzEtctaGRWRww#;1 zgmG0G#&HqG%}yprxo5d?AgA0n(G$1mW6uju58z}d&tUGQB|%Ol`+`#zG~Jltty8I9 z8NjLbah}kHO4o>ozwjo?qq!ibf}M@J=(!9J{m}Dx|ALo)NP)a3abd=IZoM&Zse${{ zYYE?kHxF^@S4hs2mPQy?8&7fvxGc}n=K@|i>*XE{*e7%4n^7LQ9hguDIh9i`f5>=( zd!IYMbemJg9&V1xRJk5}^oTo46XaxB%`3BwGdazE#>HwTc|LsVtao;gAXn??T}~A{ zoU@CGweg(B$;!7nRq|AiKCB-~Q7~+$Gl*HhXbD^FgmsOWV&aN8+9_j} z8japa*~i{vp)9r9 zG0M}uQ{qXR4ChdHMIaYs)Ra7Iq|w&QYo|SrE|a;ui*|C)qXi~<4zK*md!kzr7t865 z^lO`NFV!=LIqw-VFB<*Vn^U-&AJStiDA*+QZK`Kl+G=C1hcnFPrg8D8)iDkw*Jzvy z&1BEUMLThQ-us4PC-*crfMZ>wNAGm9bgVJUdv^F-<5!-GPj%xIr5cxeZV%K+!^}ah z6TQDo--PSao*%;cZ~Dq5!HWT>Ih^Y3+;#xFhhk51;!pmk8QG*Yi1w9pGv z9yVU^TuvR#$zPMXMvRChwUYPddZ47gn&uck_RO3b&8hdH77Kr`#bmEMbhYsd?@yt# zxzSQBnx=QwLNUQ3j$UEB;JuwWlwHRyow>=*&h~TJV znX7e{X5UWWBLo<;JR9fEG@kXWT-lRTqis&`-B1e+GlL7oT+(QGk3Mt`M%ruB3><}; z3?H7%Ej6w%>bW$pR&&AopIMW=T$J3EwCW7^u<;1W^^j3k@`dL^l;G)ypE7E>eq0#0 z%BU#Ax9JnT@2p&E{Mh^5(3xCsZYa0HD0i*WbKcx!(vqj<592b?A`clE*Ra)@-n`6( z#&h19WwG2vwER3H>smQwocGg36O5<5Wr|SlLG~}P+EDJi=e8*h9Jy zGp?bjAA914O)^g8jv$p}&gA*W2->wS{tIvMh-FTO;gNC>7s@G1CwNAxFL;YGG_K0| zySe#Jn!Z9tGo9`|(?iRB>Y4S>LJkk{H zrc~`ZzVJ(Kp;Mtyl|AoND`L4MZnCG|e8HOld_{D=bd$U?M;tYi~V(ZQ-B>lwF^mAS*Ix6-q@l#2nl zr{`OQ13(u~Kz;{}EGbDMss9KNs!sYLp z(!`L6G~7$W9mKgWziB6F7)Q~Cz(T!4myV6AuRG#4$~28*HHOBqGGlTHX9UK}Ovr=a z$+KF7`LOYe$F;m>3DB(ukTRcfk7asu$~YAt^fcw}P4&NW#(h5n4|I39qD5GLTMti^ z`Ac-Xe&PIu9YRCvCFt1}n|1s_GZp!hIY<8qem{}>ey$6i4x+I|$gLq?Qjsmfqwpdb z3JK;yD|`(jQ}ivu^xNM+4qa;vITpYvf#42Kb99<5kjTOwKOVl{EyAr^ z474xVxH87sw^4B(J7kB&#)|ZmAu%`Wm^Y`2y2L(Q$haTSKK71| zj(>EX$u&8KF#h|koo8}y&OO)U_wYY`L+%~HI}XbKE&2WbI{v@rzq^Hj{bVz0xAvKr z9V-5D2f1SclIGf@yMYT$#c#5$c4RpnYeq>{V6@NBOhlBc8o#{rj)~!+O)+VB^F_8* z?N;cNt@3Vfw<^;EIX?zAxvRpxoQrR_s?zC{K+a#nWQxe8WfV+{~$GzRvJm^ zH>8tH(&@+f@233a-9ge_q>p!1UGM6pyYM{fx-a|79G7?I81R>A+rNhPi2CK1zp8oG zJvDccuif&$t@*WkYF;Cyc5ls9jj^4j_^h+kzt{ZGU*_HIp1j|a@@D@w@7M0hd*ffG z=4}1F51*G(Q~qsg9ZgRkz1xd!`;7lp7t)KTksj&Aj;7qBf7OpQ@T8sUNIW+2zR#_6 zew8(&Vrs>1Q;;n+f-=bKL18sUtFfX0o{n#s0(s!&$eIwbNxZ>gc=BJxi=ay+4xWl8 zy8zIygjh+8!8FjH**9h8omJhS{q%dfwg_L|Y!Rm3q~8h9D|vY?p@}{qyd_I$f_L9p z@1o20nSQeMwH6^AD*ih=iJhlvYTttYDvm)7wp8R670fH(KmU7f1CU!$Rd?Xu`~9;( zd68QmDK`tx<|ZPy9WJ6JBKiIP7WU*U+i&`@E5C1%-v>8r8>b?#1RQ@|w_C11*X>c{ zhW$71soTeh>;7Zig8rs%KfejP84g6R1C8F2#nvn^X!7(xDb(S5Ij$pcO+Cie%*S<4 zT-W0MJY0w1+KB5XaUFnb3*O1YHA~*d{XyiNCd&pbu2vaB8ZE(@dF1*T10&y=mv}j( z(HN|)nPzwr&ve1(q-W&4kYLS9|9d8R=E``yr|No-4c;j|BkwW6=Q`ipB-gA8!h1B{ zn{HTb$XrDkcCJF4vXsLhL%!j>!~c|A|NfMuOYRUql{FcJFIvOpPcA9XY79Ws9%o!r~b;V)5iF;cT_%gbGlP2SNVdP{IsqX z@iam10L1(8!438?QM_mI(oa2$mcETIz8AM_+|kM&hjxnWg`ojL%#keT&uc{PW4A6q z<_qwtU!kMrNcX&$Pz%i7a@^NO4--c|P&RkeB_+k%u;z@SMt z_*7zsGeC_sZP-R=wXmiQ4>O)t%E8HJI8`cmO~^9fkV!l83j+U|Sh)!wk{|R1x%mK=&A+aqq3yMKVS0!1-V;<6${t(>1)}Ra#H1pIE0| zy83^)O~L(Z&P6QIne^lH!fSTq9dUf<4q)k;iFqbN0sLz=G|f611{B9JYF#8rXC249 zN)?SKR#fn4gI(h>&sI5ml@dFs+}>N_c-1Ju2aXnDK?B(d>7?VkY`?xK?hWAM9ROwk z4lRzaUWdIC2f;PONEk=BkKtJB;pY%btV_S|T@q(2;nOPN(ZKhpEN-Ep1y#WokuXSG z6AkZ6Mb*NHt=2=PUSG%dIXli25ek0?S~gCMqxPnEy8_P*T`8Yrg#|AHxEt1TpZuN$b_=BcE*B&Tp@jV+E#F2|VI6H3Ui8z$ZvP88^rd zMbPF`gH<&N{11KhS>H1C{Q4w3Wr?;{NoP6h85QuEg0A%z8H!F*i%bZK(*%;tpl>=O z;{7ENH2;-`V%>$V9h_4OeE#@Dv*UR@EX%TXshSy8p2Q7l7fy7vd zb~U^f6wobVOi7rFx9$2RRNPHlfjNo)!A!Wv4&ijou>F4fzC_I%LaY)-yDj7cf;ZlT zJsw)5Jsxh`nx%DOYdJw52zb4JC9Bb8a!z`BWYdPZrz;}i!xq)p!PdfNuS#3Tg{9F2 zR1x+%d37j|N@+b>Be_KYE^|!eH9GNmQ$h_i^{_HEejw8XPe^mp(?~iW!^^EhM$#bZ z8Pe#qweUEkcjMhc5+UeM<$A+4*tF_Vp0lq})E*qfCa`%<=)@PwLnp(I{|FHM-wV4R ztvv1R8B}2$KfwH8ZijH7BLy*9%wfVq?`!b;@Dr;)!LlU#d&rGoe+=LH!@B8w-msHBkQQ8cy+Q zi(qO1-l{qf(E=9UQaMtxqL3aveS?V^FG(3rcx1#9-vQ*Um%JCIO5O`ZK4^Sla95sW zuHVg-0nKO;Qjo8rGv9r%lTp#NS77_&>l})AW!Pzj$f>G^y;Z;!B$3!Me{>0{3qkai z0nwL=`wCGL@PCQ_(Dt%Je*ZQHtU1&e9`>AiU1JA5xM{<}uYS`6)m8+^q8o$dnn2J( zU07PbG&b#kLlnl`hCG_-Z|6JvfIEWY7@;FLn{g0-_-$5;gfZ9xbccGgDExQ}vyhC0 zp&t_&$M8n3VeU`4{@9CteB9*snk{o;vo^uQ8ru0sgWRg1FmM!9Vp-&ZUo{mN&@A((#qKvBaV=Z4~5I8KU@7@SRBFJ=|1)_F4)rA_Ao`H^oY% z9!mEqcGCEiM3vQx!l$=cGx0_}*s;K*LvL7+GaH0lbR-wQrN}bJ-zTC_dyA^cnc%NC z;ZIoDFMCOInTqz?nt^rE25Xa56iRQC+00;W6Fw@SYfg`c7giHIXGp~JKFsJV=FvP= zKs=Ma0H#yp2f3x7!^g|Y$=+e-J8?7m`Y|~{KY&qP9>Hf=pEn1XIMMnZw5?>{FdfC%pIqM zc23^8bDQ9vQ#JjiSc`SseG@+}e`$Th40e#goK^$`J6)QzvrfF7BcpXA?1g9t8avpC zK$Hhc9%N7vkr?pv!`?My1j8Ds3X<$}1PvA*QiZf$gy&5n-aCjdh?kBiT>sTSyDwmj z!3)0T)A9bc{;~w?)UiagIAVw48y$8{3*T(?Fub7itnk+;p$kP}FzOP6RK`GqL3qhT zBSCW_bX)+!MCL3%#j|v8u>zxF=;I#3|_@|a{B{Tx=hE%=Mu}mKR?vKvE?Ai z@4e=Yj|Wer-wU3+o(rB3&%ZrmEjPf7)?9$S1o1W2MjZp&oCtjWZ$&nW&_V_@WaHzc zH z@~Y585&QFzUIJDY@@|&${sO-H1UE($Y&QvZWXcCxsl3zf(~{K^W!c;=yRRGkj&%Hw z(}!SYFTIs*O^+Zozw~P?Z$c!G2+VepiXVFtbUy8^a^`)4w^e}MvJ$~1>5&oz9E;D| z_99-K*e=QZ^2ee7qb;kFjM(>o-Q2Gv-Eh$qF_Krg<&=on=#b1*UUiu4BiVNi^eU80 zw@qYGkDOciRoX6mb2SjJLKYu|%y$s$k&!o$c>(MS|M|N;po!Lv3yDuW>1A*>h&%b{ z55Fl`7GK4jCFi*~he~z#-y`dmKh}}>$OdArQIWLX0vqFf=!-OHccv%qU$U!m_7dP% zYJp!#Bi?unc%-1oIIpBG>hIiiz))sDxV2EekztWCG=R$+8vr#2sU{l06=R)^S@hWUd!Ao3VT9 z8g3nz1*r*Gk@fNdcDJlZSx?re8OUY7^!19mCznt_A3HBb9Kil3^su?J(6?#Ud1@9h z3e!ZrPVb|Ct5g1T>4rJcO3L+7uT8*Mql3P`whU2$VT`gcv@tArwtc2@{w0$3Ecud4 zDc}=Shm}Ws!iWyyCHT2LZpl=PBr0S)awa>!C`$^)L1zhE^-3vnX9w;rH~WOucQ%{* zD1h9fTzGl<1dU-WH!UMYYIC)y+{anx0-1{J{X*@IG}D-w_YwRBi_V4)JbK|9UwUUSdg0HX=Py7;y9M7sRt*J?6v)=xCN<56QC22tvmAq@R7sk5T#=4A{E9OtBThyXnjm5MOO>mP zx)iA#aOp=y{AI%g1?pAkkna@*&J~B)Z+~lyZCZ0Q1$uO!@MLQuJPt!03DCZa!g^OP z_%g2H(jrK?wstIWgiVkmg_Vxb2}+zFcVJYHe9qBrf(pMDVcjZ+uK7jiM~7ifJ%{m^ zhvQKkd@*8ka2zA&BE;K6W@3HI~0Dh8!R`ARTCLlFD`4$(nFpdyULPI>GQQU24d@h-l53=tCms zC0zU=fl5GjG@FGzKf^CSxePo9km{bC4=fzWVn5i( zyAALLB;Hyd`N+Ny%scQWX`Ke-sE`AQEY{sk{Vr;^D0Fv`e9t(pn`r81qrY88;JUVu z&?zl1M_RpG38k>)VaH)(Y=FT(1uj9in@O}{Z5nxE-3(Eh+lPc6!WmCMT zfWNOC5$EyH%J~rEM!3gBqYS*rUVJAaE}7`i;N|5rCdAYjqc#H{dZse+QW^G@Br)AR zC9id#&>btMs?wOCsu>$4>xZ2c2kQ9*4iVnMqYVRBwhFW1@o!#0!#|JoKzut^Fd&p0 z&;z3|!hFKR81;v0j+no`N+>0X3qSol{1j0JjES_(`c?U6t#0S0)%8=VthK9C!hZ0|n0!kSvK@X_} z@0u@4CAjDqh5QffMojuKQi4t8q$LQge#~byyk&}k96!rCDt{xts_MD>#_;!XOg+&O zJWzEEd%6;93C2nqjdr|($OXG%;H41dZfH!tj0lBGx{_7oFej4H|&1|*Ai(2 zZGyLaBRql$?ehr(5%X7%cOwzo{zL@jW+}F22tPJDjvo#xlXrvoEyk~WW&!C-_#J`E zCtu~EJoGiI`D>{(q%WJcP}Dq>2Q8Tz2y9SNqEjuD!NT91O(#cHg~XFKBkR}GkcS8* za$>h1#E|zh!ry+37;S(aW&wF#hbWV)3e}~)%3m&PI!k#8@7@4HZ3;N^5FlpygdtLk zkawL@8OWEDQHJ`LA+G?1`xN%k0dDIl!oMU}`}vqQ=sfQ7G2|ZhsX4X7Ot|4f#t06a zpm$yDMdr{h9}T=$9iKQf1Zja@V+`KqhzU=+2?)3}5OA@6&Ldw@hCpfLuJQpVwlY3H zDPCb;mT#z%nd$ic_B6B0dP#gYF%&zzmP7CCr)@z=&x7h7^Fdu6DgYZ3(h z_DSpg=BLbI(g=t{J;wmWpupNq8Uy5wVYd%d1!Jxunv~4M)MN)8g+0K@^~M0{eupr- z?d~1SnqjxmhWRMVUL1uuW`g#N>ZCseS(i=UTz(8OnNPu|Ip^A$yQ_Vc+~yM&LOz&m z1FCp>mh(UP@DL86BD0(~)~KA6itHz$cGBu}>?koWfM9r1ktXLSQGjA7@7K>CQ_J#iO>f;Z+?26k{qf-NV6uYWlQNQ$IUn&hp-$_K|ne{8Cd-dl1^Y zSR4yp6Z!FW$=AN?H5174s0&89(2MjC z>Krz}SlAm}pIqsbE3=$aqt>MwdCqxe`kd~I`Yd$)@JyC-T>LXkrt{ykM)9-A92fJf zGV>&Fx4EgF@4BDI`6HZ*fLXH>)}=4f)pn`O`_+=3c#_@E(U4Mp=pbMC-&XJuH7i$8 zD^hGgIF@&}Wilov&1sv)V*D6M2XB5>F9UZ10Nz8m-pDK7#s1)J zN!X867i@r5c#2teCK7b@B~h2%A!MRo|7AzJ?lGcWXG!fE+10LANAikQD|%OlRDa|U z1Qm1udq(yV6aX^tHG zwY-Xq5cofpexQ`~=52SryM{(j`Q zK+jBS(Jh1QRV=_Spd9l!k^eD&4fj?)XdY_8{Gk>z{>lJ_&4?7|5T67sK=Q9 zAM3FW^*CS+%plrvLAZG{uS)TUa<@T#`0LiEYTn%O*KI%XPi2lpnN9yynY(wj{ojqB z7D0~^*J1qlOI&>OkTibuJILty&X-rE`a}6&`@fVw1m&N%ouWWB4H!dN70s3*goQc&AQa-0ryZE?BbK<4Oe?KxB8s_8eQ+T40rD87nX$n~f zULMUq#)n5%Vzxt1RX$3Z-AR9}74~y^ANBYd2kJ4&Le_!Bo61jM9e4)oK-Qo7V=hoY z(ru{CVo@q1;Qd`;dp#!vX`hPX1lDo##pXYOyGd*S$Ki+vMCk=J+ zwvi}FX4?esLxxh*0Q;tVCeBbtMGcMYEz;Ta$j>VhxQ^JLD+GIqn3VXIsfRrfGoFmP zw_5Ts+tE7(emMsv+i?sIc84vk#8b(n&_9(jB3#5#ByY8;NdAlGZzX0s5P8;^ti7%Iv zIkE|u-fVe=o9+*kxRAizWUlnQnvMPGNleln@Oj3@pDpX4N6rS{N3}p+EG6i}r6yzJ ze=Pp}Ij8{_yd6*XG$OD2F+N8qoigP(cgOvNcTJMkK{68(+qUreR?46*3MfK5%+nO1 zCAw>i;1^-)W9wU81oXRI7J@*Zg@_`gxJpk_Oh#PMR2l3uWTcWZOhlR9w?Bds9e1QH z>07NX+Gw5;OL?|gu0!LfD7sEinebniD5d2rnvvz)9781#?#X^FyxEeJfveY`gDf_E zelZJvTzvYl8c55!Z09$5wZOPbAf67!a!`pt#DT*fw2;M~8mihB;r$L-iM*68`xd_} z*e{YYoN%d_#lT}A?~!-d#??Mq33*P%?6oV)vUx=*xla{o_;{4LLwFjIl;r7l*mTwJ zkZ0J>y2XEQ1CUQyGU{qcgdTbUJvsoK_t+-x=t|U<)Ky(QBX(oWu*AT#+Mejb9uI5~mwtiZ7V^4tzHkt_A~|f_X~7-3`H;zLuir7X&nA<{Ufi-bF}aHH1lusG*J2zsz-GX@_e#=*N_0zn z`}dB!a?jqbyol#ucjUDVo;%AEM^^!#5u?9D$Uz!J`XRrU(^`GI@Sl!GDV5*APd7q( zB3xoG*mLidhk#ioxLS=?t@X^~hTLGQY{h6G%creK&h`88fYzoG^vf`4Ia-8+zNoC| z2^+Z4{3&Q;N)#4;(52#*{KURMHDldol%hw=Pmj-3hF)R@E1?lq0c})v*{~wHu{)!; z^@2?EX_Myiaq%a_zO(Lpv;pvgIxacpub_3>j2|Bd0#A`) zg#c`V&m3x`qK5X1Xk1%_j<$=An}hv28D=v@=0h=AktmP2gKe(_Vprhld{9~JIoRC{sO$e4e!rV23=;#lHm&w zV3*ro_N z9|%GLr$G-T2%BJ+oq$;3Z0x=%5J?_F&*_8 zK$h+nvYj1pDT0SiqAwNOjM4-|3c`v8$|}!8lqasuo!2^C&y%hRH|-VL;U#+-x*tLK zxPjJntDl9`LV@1#?PX|9#!~TKd!1tpY`lW~5=JEC)&@$~qm)GB61!$EvR-cS7G8D;cH+eIV)1ZDgEuz9mIT>E{jFFW zJzmS5qx`tROBA%3pwBB{t!{H-S zE(o`7v~t8EBM8@l>QHb>LW`c8gu0%+O)%X?p#^?KyZ&mE=M9O};k^ZD^IvS~5vh{XkVzbu}$Z_a-rp0=OKH&|yNr3GlU^Jq1qMHYks4X;aWqi-m4 zcm*5m+FvI4+u>=n!;2e%ZH_a>p3W=0f15;cLw^}TgC2x@5CjcnH*;zqHdgpnJ2518 zJ?hvY{M1exbXN6*aMU>z_HA-+Mu#i{I#2_dzdJC-Ck~;hr;+xfxb~-Qk@>&y+j9#+~PP_9&*zXj?6^p9P+ zU;g&G<8JYkAsT4t%{ka;DE8kJyl^@@g-}hMQZX!Q5^1Fd^ zGR{9EU&B55UjOz-U@D4u^E=z!{O_(ASxwtIIj@Vo2=x{usdUp4qo?1r?$tzZaeB$@ zWOCKbUeI#Dzm_yxR<;XCotiX4jStX9P~)0A{i zr7rlLSH!%;M8uXbsD<`Uv8bL>EUJd`hx>x_mbu6}*CM>=3v@pRO=G*Tu#M>XN!&bX zy*linwpfZy?qy#hQD!2c2g4@hUmf#&Upfc}9|(Js|IT9H8L4%D0^M2-TmOSGe!6w_ zS&FJ&M^Rxom*QY>Sa95J`>dw&d&ZIo-v^d2w;J_q^ERnRkG8VShoq~pHYNJ@m{<#K z*fH@m_B-E-Qr@eV4M#pZ%!DH;WL9_aH6)Hf#C|?xwwi1kU)mlp(pGMkH`cfQ1SIGY zb;;(kHE+3-7&>lS&8!Obl_Vg%N7}-{t+fkdq#PPQC~jGhxVZ{DfzT;vs|$CM%|$JW z#N_xJ_Fzdr*)9ykn+-r^V%-ZQE@N7&0~`fOqfciVWERz7F884>OD*-aLxFav)q z9CzDeOjo((DD?!XH44P2M2vClEltLF!5vlS82{Dx`xuXsat&|wkMZ9e%kN23*OexV zGduqPl9u`Rh?HOaZCORH0A|-fm@%q+pIQN50^*oDJ(> z9Y1m!S2u9QVh=y+2qL@7m8DDx+bTN+KK}sS%D4}=strI^DOa~@x@ln1cmove5~6?V z%2|CYM^@kvM8%)84_`*CzpP>9G9qof-6}WGt!%QgL&jG*Q@q zG%9Q}plkFB9(WAA3vUaSR=LKL{qX1m;pwg)R}!Bi4c=YSz6tGB*7^2T30JGwUM+@Y z1Mf{X!yIn5`Zjt3xsn}I)#>SHYfSKmn_6XxP}y>0ezo`J`YZvGwV_>j-1m#)-{ScC z6ux=6!abf=WU3^8-E|!ON;}r8Wn@eZGdnDp10S!YC^KjMoI8;`?SJ0(ni!ya4f0+j z@OOe4Blc$=D>F4FGV>cZ$X>#;m+-7zNNep|O3)kR_6R~VHj=T_40^EKg_tFSpB|K> zY|_|DE5g{?)HSxY!F~cCEm(D^#!5>bbc0GzBClXV`x+a|EK2u!cA2CxB$RZ7%V=E! zu8n9Ay+We&&Q?p+P9ll?Q+zIwiq5G1MhvTeteQ~h?G^idyV`3i&^zfF(89yxwN)9$ zx;DY*s|5aW)SxxChcT!8si|Bk*6Cfp7^M9O_%pdAg-q`_x^!&yKQYd8FUp$>o`dyT zC2uZ&3Lbh?kUJ#kQBfQ5G5;uH`BlKWcvNJ^yr2FqaFTA>nGzx$QBx_yZr?_cj4?9) z6M09g${-34x2Y=2MO{JKl1)oWd?hV?tNZ)5H+HYCv@)$!<4EjnzP*J#5_VWtKTT9c zkQAngY=kOVT^(!PXzEv2WIEsiuLTQRs6?%?Yl3tp>kV>+4?f8eHILfCT_;snvxQQ>k_#yyX<=hYtN5f`i3Tu?G7f;J7Q_{@&}P&+8y_s<2D+ zdbwXCOx8c%nP?5}>I0)Qq>7eoWvqL(WEU%FCo*j`T`Wdnhi&L7rKe=Pk@&d8eAu9H zF6HX$}SMDpMGY8E{bI_w#ITnyG=gQ8D~WHwvgiseN|ADnK>v zvuxp&@5~lsf)DW76L#_P-62ts|3lVtME8-^q~c}J38-}6i!pByG%O$PM?gam0u4b} z$aOIsPr^PTPe${1xN*=yhScumft)yIfQ@<;dtZsHC5itH{qgXf&CrN5`5ke+ZA{!P zJLS$%PvK?y@o0LzhTbqP zeivisLhN5E3N@`cR>)FS)F7Y-K~H#U@WgBni4=bogd8(U}lt30>1PQlwUo^sP_D(0H~69+XQ z1=LGc;If+9?6C9|#&=^*yWcG|qhq;S)UD|Q+@hwM33yvi05 z{}cQQdJpZ7c5f5rbewbef3*ocIzDkEp>0Rt7%Ax?H}NUZ74!o}oCX>fRnE6!O1aD| zE0`hAxRi}K7gV>YSql0rmCxJfo4ku z$H;6qLVOSX}y6E)&*>eBy%ddj7?&vK6Mu0t=9K06prkeVnZvzutzMBxV?QzGN- zi2S=YFUy%3N*6-=RzzA{6fVN*PQ{$EUv&gwFIs$^P7t=e!gCGpI%Kbp!tQhQrEvaB zXwpnP=s^*Ame;_Ph4ZH!yZZTcHOE#{lnn=iIE}_MEl+l4?O(TBY>#{>P6kh5zeaht z*b#X+PO#JN5%LFMai)P3tW_!gTTD3ckJwLi9-vc|iDx{T7#%o;9GsL6K3LgU69NCyB?Y318 zG+X)sy{%LXOsu$%ErD*Wl_{ilzuBsUZgwU3xNmKk)8-lGfcG8-Lh4~&_DMEh37^KY zwU1@|58@Bja7Xf*h4x!2D^ve4>;dBfl6Iwym@(;Dj*7eAM$)<4V*VC^&kT^+NWF_K z*%BsCvrvzS@5vZb1fi!Han~ug@-3ny;rtW)3ttpUaE*Cyl-<;P^|kOTGVI_{tO^sCS0Gp~-wm+fg23flUC z%Z~+u{bk6q^49_-9&Mc6Z&RRk%?@>`j^878ucr(v*U#i=R}egtnO3EzL#T&EWqjpI zbHEYGtkIY9vNPHI{o7Bh)o1j#tl{>fWmerfYwe$*F!Y~5@G|A@fr_2Wgvs{tstt({Y6=4KY(XZ9@LOn`>?HnKQqoW6|i>1|~!qE&LW~ydIU;ldXuT@wp za1`L!fy1^Ec!W5=i*pRl zgVZxbp%0Ku!%xY|G?k@h^c|#6B2`f7{;|AUw7{k-D@)-^$!?sTcb^xtt=Rtxe%i@= zu9?~cJc2fs(7KJ3&VMcr#}2FX?{b{2i?bzi+#+Z&ELIk_r5MQfZ9-JrkJ}XJ->KDW zxWbAyLH7qO!;NKsZO8kgZCDig!nfeRvkkLdcDxF=hDE*p!Xrf#Ld81l>X7PbTafDc zZT=_T{3slTH{h*NVhXa;1#IM9-;*}s<^PLKUUmF;-x;M%6h4Cuo2<|zLICJ;yNjr6>*Ldj$_f>cq|EQSp!1CdHd< zq46@ZV+6cl8b6>1?l6ZV&BU%g6|g4?6?4nB87ryFc6u8Xcf-aEp|@#kxFy^+t1E46 z{Z-laGl&d~;EuUWW3SXPUEgOly)ch52(TF>0%42D2hD;AdGRwF(T5Pf#x}v!Dc^55 z6AlP-_j5Mo;h1kG#`EOR&F2n1m17 zCVcGEcxF$7H%t-sO7P5vv_kD}6H35K`u!OEU#dIbeh)~jn&!BbgloL!`$3w=Ht^qz zo&a|8Uk2+QLHX%y)Xng!VsSuXOnfl3IYhTb zdTW^vIvQ!_V#M5k_nLLbL#`mS^ci2V7?;hu2h!S1$QXL+m33UP7@JMMQY^+~Gx$Hy zC@XG*z4($NA9Uv+>dE80-b_)yNcHvWpMKZ55dD)NEJS&AmBY=UnDt~7nO!mPfbn0? zbB%`wObY+zPS~(^wh6r@T}a88g4%J8vdcv!bj31x}SMS@Aq^p z3+|nvbUTe1ifEhW`&KH@Uf=)e+ku^9dK16BJosFyw@ow7t6QQvdfM|G5TL?m$lh1J z3$D4C^r*5Sn0grFIJ;{ct0aA>Abi!Pgf+(|ibFHg!)s=xYizRDKQ!II*!AmzNJ;%y z*}Ss(x>SE`cieYR-He|2t}!V`9~D89 ze%4wb#t(fG+BO}uZEeC8UjVTrdNkeEV)PXJu5t6kcY{4?Rh#f=%MEGddmN>Uu`XrC zLgw5KD)n;t{+xFqZ~I$M$q$8IIB>TB+}qm9v~Bcg8v8E*A@xe2v7`;lsf@( zmR374k&X`F7l0EV6x1E~Hjh)AOolwIjq@1OfN7Q%Zv@5x?$g8kPds*QCh|dyc?xgQ zuj3Zxfp)ea0Nk-fr0bbs*QFAEjy3imaQ>pY``6goIez(T8$WgO%jHuuvzkIy1Kk_D z#BJn-970=mFj>yj0HV<*C6`IsnQfNw6IJ@nKQH-l}P))L`n|d-r>YA3 zqDe~`shR2bwxG-?JLPXd{}YeBS0?B;JUrHM)PO~KR5aN~REjHs{+^oNCX5gvIr=Gl zx+t`@B=UP43-g#^7o@f=K--GIkvDhqx9th6;W0R*SP7gr&GxtTZXg;^Dk?fQ>LZML z20j?nh;;bUTX;i#$y*n(deD(Jku8T`=z+3yrlv6c@o*|Kz?RiCDy`OQO)E>s_lyGf z>ETpl&t}WRYDlEOvsKCl)zwr1|Eb6IDz`59+Xlv9g=PJ!h2Hor9E{z>VbCmSG$&BbL@2AOaMv<(6cs3n{mjHDgu;;P>Lpz{172J}>GH zoJI>M77u}CQd6V__Ig-(wE3k2zcidV=Uq{91 zh+uB7PtTawM!~LM`-dcUL=q3t`tW)d8*!R&(q_2EUK9xKhV= z$62e>+vxkF%@-WxouDHJI1{`~wZT)&OttI``69T)|Gp|-T^(E)wA*2?az_OJe2Lmk z7s~f)O0=bdK($|YoOY?zRqpWMZ!SS^NRz!alRNBPsrCWiIR)uvm}RFaXf#<}a0$tu z)v4l;Zb8s)r7hY_-@g-a(<&YMFHz?p`7|M)-aK6pSVmHOv4gA^M}MO%T5B~${yxp6 zsP5pYdg37Gr}2C80_e?fChy&|228)Z1`s;g0WWu~CGZ9z6mq;MttIfK`00r|!l_OR z-`%xj0@fs=hnD>6(l-(R>Zt_ViRf+MDMXLFhOzRnUsnMB54^dh^7JyJXPM!wXSHPG zi?MHBs(}7USgO)P<5(1$Y2?RN6FFzhh&w`L2l1RE<8)DbmS+q@{F&Iu?!Ae(92v3H z?q#WWgp@mX`_%6rPD{b5Deftpe=BW#LwtXoa@%?ttePVHI8 z{j!$cb8s!QXVF^Oo&oFGJ-@7z?>V?mv1idb<(`ALFY&F312d??VsUfs8g9S@fm&N}Va^?8{ ze69ljcjhYbe@Ctg|6j~iIcjpG}5riXmx@F8W6P^Wi zXfuEoLWc>8mDMDNhPl=g!U%%9h2|rzF}wk`1nZyb(};29S%laz)QRZ*fZr3JVf%7< z5A)kVRrweZhUbvgGJ#}3IkA%2htQi*7NyN2IWDk2{H9g!*lI!S|=+0 zA~i+owe!n+^I@RMBqe<{+Czc%VE6j=iVRv4s5ec+(heJ0q({>2@58Q4=n*}71a(or z;np!~c&e!o_xlmhZDN3I1LTt?(gHowNKYp9P6sLuR;?qzahH+E_wK#VHv}D7mMZBK zv*1;9@~(c7w9!t)i}fm#7xdgq7qPp)Z3tVeDxl&yTlW=p;)29Ire|C-dhu24nA%7M zAsW5>>!pRhO+KnnUk^JvO_iP9Mnzgk3#w_KtQoDSrF`m^bf;RbL-{GRBta26XaZVw z&@(PMUF*r%IHK=jmt6TFRuHW%%lQ>U^rhd}NqW=oTsFx8rB zsVr30wK{QicAc1KjH!;Sejeqc*;-FGL_2N4U5hcU+Tedv{@qpfwG%EX;H3DRZm|o9 zGKPkwkO5#_DL{m69))y5{NF!y^;n;i;);;PE}0xFX*&BFHE>sjYbk2QC{Zf~S{pT^ z2LNNHM_M5IUDl*>n;H4uTfNv4MWa$dm%UBmIh4<)b_gTde^znM^nAp(sJDRXmBO2V z4qgL|`zzPjy_6o~ZaZaI468*{ZS7L5p6LZX3wEVo3#fvD_0)b#1r>SFty9rHMeC;5)Iukrza<{xm@9x?=+ek{f>+#R8rwAIsJM;n z$$ZgntbQ8N<(3LN_DZqn&|3b!Wox{dN7;RUY^NWV7FJ-SQN$;b@nPQrj5K+g9%HRv z8iUaW^bu-o(~zUiUO?(^R5IOrFH8MeWpbuH{e8&8P9;6IDe|bI_5ZZ@<^fG!S^xNb zLc%V_eXR{3iXw}M)@rRuNFG5ED5%Ayg8>4GvPnQeJ7cKrRHqwtX+dr4bQ`;=sBM*M zp{?E9nb2y-UF)=sf?76B1cdMBJWm24+IQanet-Pl=;gWldhWUBo_p@Ovesl?+Tk^2 zG5=Gw`q zrL>CPFYsIJSC-;)9 za_ClR)v#>>3?)HF!cq4zj;|3%8PcX!@14*A`4ZCSxTiaFlyapU&tbeM)E`<#U332C zsQrDfok#7%lTTMqIv{CgJon&a`_Sc48fXn)KCv1;YHkK;5Z_sSaO4R7_5JUvgZR+e ziF})F(sg!t`6%4`n{>H;98alM*L<-57b~3sUbZ6ToS{57d$N64;rbeR`;$%Atm2%F zi)Lfb*^?m|5K5;5TFHxJ08jpAug%^SKF@dKj;Ut_@lJm;liUEkA>s+m+?RvDxOsC> z5KfkrO{dJBuiS5Z)F_5;h6}XR)^!H&N*}!KNO?)Nbla|D|48|KYTjobSrNs5Xdk}M z3ok_aGza@kX!7#$!@aD-keQk1M^tAUcsg_z7mv}L!UK*gNdCD{;9md3T-S2RoQZcT zAY*NbrLz&gLl}FniwA4*{+*u;IlZQ3tq08DAK+!OHro$Zxfk=~@yKanPhNA8*KhSR z`8oUyV%s6AIt62pU(uYnpm(7vH{sSokRzcpWDV%v6@WtFm>p_&=Sbw=G{jbWsc zi^hpV5SwVOm*eF(5zBbK-my*rPubA2KGFp zxU0CW5=dG5o4ajG(Mx8WJG=G}oj&hq-_e0H;ak*O_qIRPakm~@ewQBmH+VXuEwwid zd&`Uu7=3HT)(n8ozgLC*5$CAyI^zsu+GyD;-nIL2W16>kH68;mD@Lv{JZrt*SZegE zk-a3TS&aUs@R=4_<1ucbJw_RCpcXx9#j9lK#Y(>R=E}X?)NiY0J7*ZBji0l1#s&7N z$YrHfwnJ7GrkQR`SiIQaQS)b^CnnaUTW1&vZq^x>Sj&vljj~sKYdmVa8b9YAwoi5B zKHrMkNVkH!w%dwwJy5PZ4RYYDW|x)vQf868f)uiCi1DITwiD%gP^n^^X9XDF%s;u0 zYc7^-;y0j{-L|KM^FY?Lrd%A=LuQFVdGl28XE#5d^5aO7!lY3*l;b}9XPTRH)St}z zyd@!}6WU`hOV{D`_(9-XRr0|GHjy=bW{%a4u6<+UZyQ6|l4J zFq^1s`r2%)SzR+T_k;bTYKFF#H~UZahu(1SnXjqOovq+cgH}s{Cht}C>sE@j`N2Hu z@XY5JUg?=s?$sP4NrRr>SkyYIgK!gT8eKlPr?$UPZO5`n%BBJ3RrBb*B8C~W4wCi* zFz$Xl-Dr^Thic`#`V5uwpyiZ(k~|GsoI;n2rF~!qcJ>mnvzLvqGvVf0v42x?Tf<`6 z3pZ^)bc*F(G;=-WR$CD!9l283Udt%gU;NbSo zqkrK&EAb@QgK`Q&e@Bn1*&+0})=GWoAHE*zjCaKPwk3O|&A1<3<>9!0&<43(56A5T z(%mq3@35E({y2K?8<d376_u0b_33?>*sMy$)yZ-mJIuB`&4^v%U`H1!I&%>5F9+ z=Qz>rf@SU0UvZY+Q5st#j?+Y|PYvNT^tcQ?-X;O%=j`!G=<(p#$u;cxo3;_?aV1X7 zoG|HAQ>9ka_x3iq*S9U+i{6exugmYL@vjkkeSKTvUg~$Mmuuh8Zd32=f01@rV*jrL ze64S@?3rd==V-%A^-*~1D4vgtCRl67jVi0fg4KX2(7)PX>zm+9?SknPc_!cU#AGO^eoatR+5}!e`V^oDb~o{b!A2Zxl2?$AZ6)dk2Km&Oj?) z)RvDXV0Fi9>fNAP1WjgG6BGf$D`J5b=={UEXB0nj-u<}u?+qSYhwVq)0T6l3y*1gc z_H?Poc6C1s^^_PZ3>fpQH4vpJa3?;x`wMGt4YxxhjuiFdP`^FcC(K;}`5Kt*i^csR z-5W^~URR=ZmE>}7+QQH`X$L$valAaJ4jNGO?L(ZegtWg2{VF6;*lt_W9&Fs89)_DE zyQ5Zu?^%gmeW&dayC3aKaSGF6tH(Z$?wgQ|$Zjqfb^E1Dyme2$tTvkCSlmO5Z8EH) zGdIxYEVx|Q8PZ9}O`EmdEMSxG%+h?cz_-Glx7?g3-3n?kK)MsOBKMCmNjKYyae7@W z+d3Z9s#m*bi&uL<>%igA>E}^t&y^FWiH!#|djg6X?KudKOa*nvnq;wxaYWw@x#&^) zpXv=^Gc8E5PZ3jT&x<075$wQP=md1T^2cEwO$s}(Q$UOb{ge|Y&~G0tvVN;=h#MM|` z$_1B?jzdXfCho2sgPwZ6>qk(o$x-j1t>1z!XE=%TsqnzQC>YeaRN>L?*NU2Ot9Z{X z17f|N$9=y5I@OMYl+SfYg50#lp>EX{X4o)BS|O|4pnm5h+678DjlGIIKP7IbkQ>*G z+d(bfn~Qn>Sf8z=$%gt3J&2w|zXgc>7SKigM!lwO2#`^)$zscd75XJ>X&Ph2Fy4Ht zEeZM)FqV)X9Kw&r3C2y^aeHO;qt%}of~z+`ug|iF==9TjF6nXz1_uu=)lJ*>BlNDL zDEUWUR{L@S?e*^+M zO~>1P)i8g@48&V58@<~#LoR}A6IeN?5R(3o7{OWYXNFN|gCn4)}(>AKhgAc79k2yl`x^~-) z-H1!CLM|UByh1@1162_gIGsZQE(3+Ao$3IL<*MhW)u=h#PH~ zDa7{1i-P1g2>Pa4Z5hA+#X8WDQ>(50_us4>UKwq*O}lILOefSBH)V7 z-|)7*!%Z?VZE){#xaDwPb+}nIGmst#R;_e=&5m!KSpU5&kakk+dD2IOa~quJT(D1izF%{wFYRzQ@V7K0XJ^3oZpRSw}aB&KB^uB|)qbX$y zTHS_puhma6h~X^s?`OPg{jk&6ZXNiRH);nRY+aHauUe&5BpEE(;_*E6m2`PjNp_Ha ziz9%8O^!3TjY;MF#`*8>+j7~9t=Bx6(C?jx?J~39o<}ts;6rpSX}BW&4{`hywEA0c z6onCy46gU9jK#g8R@;NW`&V*f)q;Kc?^7TtLTR>xCOdDQDoA@l<7x(Utp*1{GPoda z5Z+QP)r>>01^X*jlRCn8WHbTS%z7if*0Uu z=RbdMSiI-k@^{$gGL6^U+-C2$F~_fwZiGHpRS5YlMt=7pzeCp)J^8g=3%8v7N;hgk|eg~{9&zjyHJUot@+xBX?n+#ti__zT$^`|B|` zZO`0#jDLz>f>)IKSpZR)fT+OWrv4ryVrNWHSjvG7Z`kx5Cl7-{^G!xeBv%y%5kjwC zTW;V&LnCsv&Y1h5eprc~3wX=-oqq2T?^OE24*qR=>G65eN9Uo4 z7U1yEHF@=qfWv=UW!q%XmqnaN>C0^57nWpjeQwwuM*V0$D^T`wz*`vLE#q43=xjjd zlzN4s)wY}J;egDp##ZnYT5TI4D>4W%cf!34srum!+JLt}$J!s*CEpTI(F$FK^MsSk zG}-dw1ShXvog=uH$eudUYWw)Arf0<4uRdl~$16aQwUWd;_$0IO7Q}<|CIHgy`{=Z7 z*1QhQI*oM816XNgTVxlbP;QKkFx8juaWOWoTsq#Wd9O~2v>2_(A z8toc*?N{q~p>%?{1VG$hu1@SJzvil1c(3@tVd{U#b>!#ZA^s7U01i#S|^{*Zvsr7=p@`Bx;ell`Tf{Qxs4QZ+kJI8`cZmqH1bKooq<1L zMV)j*gwGbh+-?|x$LpXqFU7&00{Rz*zAwXk4F44{B!Mv?iQ6ON*JB^;EuDT}C^XyR z1)R}nQ6m=x$!1HiVP-W~~nrV20%d5zGk78WFVYY-rgsL&g>6L#WG z{ft{95>9-VVYcOlZ5(oCp+8yfM}H*aO+$jTXB&*8zsF10EHEyJ+&?vf1IH_G4jAxN zOB~l~!@H-DWt(Dn2Y140erI3x-r*ZI@+23iZ1GTov)wvUIq~qIrYOku`t9Im`fV9f z6@^`mywh(7*=Q87fA8FBooe{jx^nc3mMMmp)LW4kH@4NLgbq_`+Y-;_6O{Tq`eS$` zZ~*#OhISn2hCUugAJ9E4^nuQ)b(@PVK_3hd`d|}wcvmfRTACgTHGI|LjTcXG%Dshc zX|;XOKy5x>&oFBVOC9TY3GWQzCWZrR9qXt^nOVuu9|#@JhpN@ax2sw6VA(eH085J9 z`vGpI8h=?>`&l`kYDl&ZpOCtIxH^|kuxN9E9u_E5Dq+I+rSVQjVic13)7 zyw!I8upE0A`}>0+gSfGpZe@Sp9cnZ(%e>N@zQ5)r{30GJXM#*- zVuN@5JmIX1UR)-O_!qp)DTV|&>hLtmmREDjdwUl5O`vCL$!N*);XRsIMOxDgUai@H zll!PA_g%2RyYFv&rFtmep@Du}ZRqKfc6n4?qjCiF*GAccJQ~0D`O5AMYN*u~)NmSM zI7OcF4ZdI7+jbFrjGp&3c8y=7{$JbU*ivYorMjop#__|Bi`)*y6y(W1Ym6Q6HEXr8 zD;{|LNDfhu-z_9PfcrR15lxZtdf@ zoG;MrecJ1!v%TNHVe@K_!fqzGy3Qc#tM)$12{M)xcIy^{=5z0(O9h&+oL_?X;y3Nv z$V)b-LRyG!i7bZR)Cx15whXT&KHVs2w~-K^kPWq*Ld}4)FGA*k5d{YdEhniVajX`4 zY|bw{s4i*r^71}Sxh#>D9jCpBD3x_eh!-11baqmMdg8o>AC{U&l&JBE5(XuA?7+M)J~SgQD7@Ki2EPGqk=@&fT_5;oWr5TezQ(RC3Wb4R>5_*xnP~ zTBq967>4q@PSCBvSe|xV^qw%ZLu>;Dd?l3Mf*T2(VxWQaNKy{1wwNnadZtylXQ=Rw z7vs0uLa(f|av@(@|9VXvyC&>^i(xjxknZ8-)!u^c;m~PLt-~$Y$P07oq@LU_dl(^ z2wq%{Ju3Oi16tQO_nq-?=KLSy+qBoQat+jaPsZp%Yoqk#fg@zEtW+WIiN(Hi8$Mg2 zY4~yhN(lS&z=r@yT+~*;iHE1x8LGwR5$jYbT2rH+SNQ2dElTCC*2^KsKae9X2&cFg z^hT@g@yna7e*+yid>`q+St9d0?p4`lJJIdAGnllYW{$NCh3@jTnqe1*2xAq8v7)&| zGYPBUWh-7w=f<|#j&wWoAZ+Ld4GDgTPbDn4?7UYxn!g3S{Y|4dULSzY-3YS}CI#jQ z%=GGH`{3Cdu*SZI7x;jUp*Q>6{`A&JY!l}Zd-yTK^J=ftpERllco;nzKXJq$OhkIM zIh`w>a@i*f`(b&t1yq1I(wIM!DUCNIAE88Wj^Y5lT!1scZutS+);XXy`c@|>m55JZx4g39UuravFEa@LMyjC{RzgDYAMtm|fH^oxq zN4=qYy}o-_b24+{3zP}JFX5+k^E(Q^1Q)-J)zjZ!AF@r&npb%MUZkP5L-^r1>1wep zxvp7w!?w7K^qz~QnX92qqIs3{v3Y3c|gGe7ui_LMC%nlwb8Kw19dQ?pq0PCpg@gE4j|OLjB3y`txpm%nlHDi`FbN zdiWRIYF0w~E8ZsT7O0#h3-4r&@4NLg8@d#!C_Rmhjd~DsF?_vTf?3 z+?UAa94A>m7WPRk8xP7q3$KUp^0U#{6F{FSIM~u)@wWA73&o>bT=x57wL#~w>Megz zL$Q{)#QG2R2skfH349{7JtE-Jv0WQPb1Ee~jXH3;eC6vS&|dh5EAVOtHxt zE7;qw?YF7~iLG0h&x8-d16ynlUT4+P!Uw=jBiZd1TikUIJ_@_w7F)nIYSox7gEio- z(0hD?RQ5@;T5OlDdhB>f?Zsc~d9UkoJ;lCxm128!vB=qN>-JJlES61i^u&7G9B|8+ z-$`D2k=h)qU2l7EFSVCi|0j)Kv)zwcbh7J7><6NV_oJnE2cCgU!sF^Fy!8FR-fr7U zwD*G0Ug-Y>w@>WFpU~=XXhfI+N{H$|_WCj4l!(hBPEp1~2LenSObQH02WEk}Iu1JA z$20cL9PsL@MgADgud%}X8tgW|-o8rn>n+^RcFr%?IWrh@rmC~goVhg^b7Zh%j)3;O zA_um1ohNe469#@X;T+=2ZP@p@Lyvqq^vG`%^vEy4YZ`5~wA(~M(Mjdd@}H0oo$qB> zYDl*{!Ftp(&=6xF%OWpik##L0<=lO~k=m0N?BDH2kNbAu&D1CTPTB`YffgzpRXxhk zp*-mob(~i6D1NEk7i&4z@qj>n+?nHeojs}HddbJ2L_91-SSe%yqt0~O*0gYd%c>Ll>`L^&?hqgm?f8(DXX;w_c=ov4WCK!wQ_ zq^Z3Hx+j0NnpVE#Rds?=k`5jgc|m}6T?bJ538E5|(9U z_I6(hG)uRwL(m5EDSQ>sg{MTkvA74ekte#UpM@wG3HevI*gm~l2+EIiu2XK`+DRkN zvyQNXS68@%9TmbhI>O$(n&lF#+KK2@q$Mvw12!S`)@7`SKNsSU(E z<3iik8+>DVNF9cPQ=^^xd8;38a)iZF-ZyMp?K8nI7@o|+XJ9|sZJT>5V%~qSlOpce zxji%DC-RL3ake~r_4sf1ImU%X<*!#oNUFVgW)B;G=C{evcn+T^G4|@KK2`s$@Aq~7#wkVvx9n;VxoxlQ`N}?=9Y)%2o4IQYXaS-)qWF7+ zmd&!~2_ZAPM#hhv+uJ*n?MtkNU&VQB#(a*38HxF7;i2aq<_OHYFqdEs!91%5?SSuo zm`a$U7|eGK^x?Hzq5RDmurmW+MxS`c;l?; zIWzgch5K*c6fg4iY*cwl8vh>jY9k*c?U2M^AC40k+)D&Be|yUd+6238dvCuP8en-V zbd4o0{*BNwjjv_SJaPY%CM!IyMIUk(iC4A9z=9hLl1fSAn?aDn0e&F)>x1^cDf&;G zb8>4;1u|do5;Sb$4d_sk?!tS) z6vya1g4_Rox+$9NN;%7X7tFe5Qm_E_*uVa~!#gddIF zJ%LX`V}F}%Vb?6|31pyuEcTs>`8Tg;e$mp;122hLoVVEtCVX!V2Yfhona~5%(oJKu z7-MwH9uc3^X29L4G7a91uI#o&3;jONGGVT)`4_3|#&@OMc=YuPvdtbB{bRWMG}=>^ zkd2ueW#ND+yq3p}W8+%rt;qGiLtEk$9(}&=xZS&gxbXwg%eaj#^lw(jka=l`rQ7M< zgr%}mCuCK$;DkCJu&n}JNktBi~58^pP11n-`?iImw`6*YEL5D|x&CL*O_=u%uZ4t*Y)dbUPCL#`^N*?4et+&C27*i$dD9ZSF;uuSFAHn33^{-| zhT3C!_997NJce84DX7y|?SlZXXQA~W1?3X|S8A44bwSUi7hhQ&xUt*Tcq?Ng?v@8{ z-rsGT(D|K}^4`t=W|dV%3q9O<Z|b zjx*0L+u^Qq0efsVFLmIiF5B%c+IzC5jpjr4g98rPKM0Jkd1zir&8GdE_x~pinsZtR zQslUwcxe@OuH0(8?*9jL6yDqZbcaK_2DjvC_cf@gyZ?BsuU)pTE^exK%tGz1)AYKy&OkES zkll(nSwDq8z~6_N4++vJ(pmCF{UQ6)yGU}IB(-axGwbL{Dt!!3@cwcAdhF`ubxZ-t zLST+P9sa?{K^`kRwN;_elOxKhcwsC)jp-xjpxKM zej4k^PM9o}$ZunT8}<=JHnTHQm>*_ndL7CCJX|_+5N2<^y>oz1jj!fry}CM7m@%Mv zFuEfDjP!h2yV5YaqFW)1Zq#Mh@Gozh`Q-=b_B73sE?Ym0x#EEI#?BJyjm~1}#V*_2 zF8`@-sLxs=aYDJrFuP`@VOou61n@}Y$Qto&Kk&OF8Z7ac1Kbvxfit@%^KxK;GP`(3 z^h3b#kuzfZ0?@9}V%w4!=03IU`;Mff^}vVV_iiMK7h2DRyPunAeze(YZ<(QO(_^Ey zB{f0YGGBV8<~7_=&eZneOT>m2lrCE#xIf-?z4*ZCzu-3c6JE%&OcmNn@u|JrZf^jL zF9x?xYF@Fi5_0Us*C4*wSxZR3obhzIXz3>SF$Ftab!v9+d-eGsU+fpo@#~ z?U1wp|DmU9Z_99-M-hZmSYU+=+#iz(I##-E{_VT82Y-}Ssv$MbwnDQN=wR;oHe1TA zL34>(*$%xQXc>nVD$mqBh1P9QSJbaGkmT7XmYTGI(1mgI1lyv<*-PdaPSI?;`uqC= z#Qg<*d+{`Q7E0XffpOwh7Wmx0a`f%J9oMkdL{(qK>AnDS zLXsaC<*{<^mTE#?c#s&(z`^l@otF5y4kD4u=)4+|d!d_)qY!$RB z&1vw+sj~YZ%r6Q$DQx2pRDnmzn%2wu<0U*<_~`nvQfZ~8K@v0|mJ3ofcw~BR_UrIy z_1e;98`9~uW2VM`i(iFTC3M_WdQ`R9Qrm}v%h5G?Vc24eY==*?+^0%=q#k&v;vDKk zeU$<#aDCgPz2^B+-sff6D}UA;SXa1i^14ydmUXcW49D83XyYJDbeRNNx%%U+T3MJl zAAKxC>{H}P4WD^)Q=W(R=P%8kVK?gK)3}(A)o1G^)?CL4B+0T*Mh-}vpB z%Sz4<@Z4ov+$rk#_|QBA@mD zMQ{;`4UlJP;BN<;V1no>xY-C2cKkHSfC$PRqlCjtf|sY zg53;DU>Q#AHh0+`>`LZ?N~xZIw##Fn5(7Ep1#!qiR??EOx?L8qs&x zHlS8sw)?8X$~>CZdkTEC2oH;Vs#g0;eYAC~)N_ZX0jEQ;UX?2JHa8_J%ySERNaC@1 zy=~;)KFxR(3-=7~>C3-dOZsh)5V90Il(;>EdP0h>secRP3GRQoy_;?sDmc7n z1bu>?T-5ruaFXwtF&Q#8kDr2uu~}FLW<$65PvX3O4DQ4Spqm(mXeYv-w9bd$(qNr` z44kG=R9MH3-mTa7I}Dem+kBBa%k{z(o7WRY)3gloYdu1+?IFFN?(j;m(90> zaOGl4)I8rC)>7Xa-D{<|1t;4w-0uHCd6*aahi;)R)RNY-Ht6r!hPlXsw_#@D#h$fq zt)scP&F;4k^KsHPd%ueb4HADJ>BMyj4Sp-P+56Y28UmnmU_k5=Ue(~A&0grTMRqL# zHRMrs!Jd3E`S1eADbY8eIOl>MYKD$Ua9Cboyz+4yCE5|XYg_`JOi zCuApvv5CK1&fAX#V(+O1{Ra-h72!7SSHRo9%m5vSpNFA*I~#k!KKwDepr5$ScD$Y2I$$T(TV7uI_YTtZM%oKoZ4M3w(p0W>s83;3| z5O=v1c#-FJUF_q~C1ISGCY*cyNj3@`OmRQ*tzE7>1KnqIs&)o?&qVF|gDih?#C=3| z<-{^j8_l-%#_9Yo)+K_y4R$g88R%9xV~=8IATfRh(*BZd&<4L%T0xSwbcQ6JlG7;x zG{}!<<3;!M+BvBAy&oZlR`j{&M~W@pBBIlE#2(AWR;i^;oYcFv0&jY;u}7+>J8G3C zd-=q4p(cA!lPYVp!+)7<^NA^f|ErBm@r?Bh-m^SoPfnIWJCXkI1V=35HLTw|QHb{} z;+0t!^UEMN+HCs?Czhw|ar;i$6AIgKE01mCw(jci3+BLY;c&C4)%GXo)cXd~4PRAH z6nfldd$IGBJuRv(b^}Hz4!p+Hz5N~K5XP9dmrl}~ZA(y&*6QsDS%Q!U_xcMViH*~( zT0UNptV&r>^P>pk7w-pu0%kkR5}3ch@Gyg62%bK~iRkXlX8x^tw>0#MruUXnhN)ZH zY|w2gaKqbdyKk{T;jWov&KaWQe!3-Zl5q1Z#lBn)|VHrOQIeU+5v*8_$@pNLtI%HkDI;6O(4v78P z5Au==I;kY8gZThc_+O-%GJ+&8w9!Zlo%Vu8%`=c0^nPiopvy?vbj^I9Ad9BN$?YC+ zXq#{=me$g%_2Rm88S9eO#99IrpjIYbpZKyxK4pX2UVj!k)4FW)?LGp<@uk@izfzJR ziETKZO0?i}_CbRGN6_olW(&G?+8&DA@li^=T#$U)9#iPM-VD4w|@l- zd()DZaDX5A-Z}e%i;rrC?islCBpy2AnhCMZy6hcAJe8jEmJns^WsU;OUdQY_|3xmGUU)#=kuTJc_4p4}m@|IsCZ} z1wRBU_luoF@cQt`l}lH4+5XX)BVcZSYqKrk3ac%u7v+GO?gMWPhUnV4W4vn%=hQWg zE#IhCwhS#F0NQ3)InK0NNvG94=xH-5#Nq0$~jPx$< za=2A4ZWY{|i<^V{lO&h)N~Cvjm&2`cajW3wT-+SopUieiABFTT?sB+QE^ZavoQs=- z`;$nQ^a`YRahJoba&fER=3Lwy+@IX*l3tGVF79%;RW5E7+?

gZq>IF6kN4ySU5Y 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

gZq>IF6kN4ySU5Y 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 St3uIjYjnv2}+M5u9@p-lqu|t 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�MG8X!a++*i7JQVEDCmlQY~hH5utbO7 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�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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcap.so.2 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcap.so.2 deleted file mode 100644 index 32167e9cb7091f0a444bf31f70339b32de1c82e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13932 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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcap.so.2.24 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcap.so.2.24 deleted file mode 100644 index 32167e9cb7091f0a444bf31f70339b32de1c82e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13932 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 diff --git a/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcgmanager.so.0 b/vivado/Software/sysroots/linux/lib/arm-linux-gnueabihf/libcgmanager.so.0 deleted file mode 100644 index ec9f076180f9ebfb076d38ca7509b0c6798aad50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79216 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