├── .gitignore ├── hardware ├── stl │ └── holder.stl ├── images │ ├── schema.pdf │ ├── pcb-thumb.png │ ├── mu-scribble.gif │ └── schema-thumb.png ├── gerbers │ ├── mcu-eight-NPTH.drl │ ├── mcu-eight-Edge_Cuts.gbr │ ├── mcu-eight-PTH.drl │ ├── mcu-eight-B_Cu.gbr │ ├── mcu-eight-F_Cu.gbr │ ├── mcu-eight-B_SilkS.gbr │ └── mcu-eight-F_SilkS.gbr └── kicad │ ├── mcu-eight.pro │ └── mcu-eight.sch ├── src ├── spi.h ├── platform.h ├── target.ld ├── usb-midi.h ├── display-transport.c ├── display.h ├── platform-private.h ├── spi.c ├── platform.c ├── display.c ├── main.c ├── font.c └── usb-midi.c ├── .gitmodules ├── Makefile └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | build/** 2 | *.sw? 3 | -------------------------------------------------------------------------------- /hardware/stl/holder.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biappi/muScribble/HEAD/hardware/stl/holder.stl -------------------------------------------------------------------------------- /hardware/images/schema.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biappi/muScribble/HEAD/hardware/images/schema.pdf -------------------------------------------------------------------------------- /hardware/images/pcb-thumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biappi/muScribble/HEAD/hardware/images/pcb-thumb.png -------------------------------------------------------------------------------- /hardware/images/mu-scribble.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biappi/muScribble/HEAD/hardware/images/mu-scribble.gif -------------------------------------------------------------------------------- /hardware/images/schema-thumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biappi/muScribble/HEAD/hardware/images/schema-thumb.png -------------------------------------------------------------------------------- /src/spi.h: -------------------------------------------------------------------------------- 1 | void spi_init(int polarity, int phase); 2 | char spi_read(void); 3 | void spi_write(const char byte); 4 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "unicore-mx"] 2 | path = unicore-mx 3 | url = https://gitlab.com/insane-adding-machines/unicore-mx 4 | -------------------------------------------------------------------------------- /src/platform.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | #define WFI() __asm__ volatile ("wfi") 4 | 5 | void platform_init(void); 6 | void platform_poll(void); 7 | uint32_t platform_jiffies(void); 8 | -------------------------------------------------------------------------------- /src/target.ld: -------------------------------------------------------------------------------- 1 | MEMORY 2 | { 3 | ram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K 4 | rom (rx) : ORIGIN = 0x08000000, LENGTH = 256K 5 | } 6 | 7 | INCLUDE libucmx_stm32f4.ld 8 | 9 | -------------------------------------------------------------------------------- /src/usb-midi.h: -------------------------------------------------------------------------------- 1 | const struct usbd_info usb_midi_device_info; 2 | 3 | void usb_midi_set_config( 4 | usbd_device *usbd_dev, 5 | const struct usb_config_descriptor *cfg 6 | ); 7 | 8 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-NPTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.4-0-10_14)} date 2020 April 04, Saturday 17:49:43 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-04-04T17:49:43+02:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.4-0-10_14) 6 | ; #@! TF.FileFunction,NonPlated,1,2,NPTH 7 | FMAT,2 8 | INCH 9 | % 10 | G90 11 | G05 12 | T0 13 | M30 14 | -------------------------------------------------------------------------------- /src/display-transport.c: -------------------------------------------------------------------------------- 1 | #include "platform-private.h" 2 | #include "spi.h" 3 | 4 | void display_transport_reset(void) 5 | { 6 | volatile int j; 7 | 8 | gpio_set(SPI_DISP_RESET_PORT, SPI_DISP_RESET_PIN); 9 | 10 | for(j = 0; j < 48000; j++) 11 | ; 12 | 13 | gpio_clear(SPI_DISP_RESET_PORT, SPI_DISP_RESET_PIN); 14 | 15 | for(j = 0; j < 480000; j++) 16 | ; 17 | 18 | gpio_set(SPI_DISP_RESET_PORT, SPI_DISP_RESET_PIN); 19 | } 20 | 21 | void display_transport_set_control(void) 22 | { 23 | gpio_clear(SPI_DISP_DC_PORT, SPI_DISP_DC_PIN); 24 | } 25 | 26 | void display_transport_set_data(void) 27 | { 28 | gpio_set(SPI_DISP_DC_PORT, SPI_DISP_DC_PIN); 29 | } 30 | 31 | void display_transport_write(char byte) 32 | { 33 | spi_write(byte); 34 | for (volatile int d = 0; d < 100; d++) ; 35 | } 36 | 37 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-Edge_Cuts.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.4-0-10_14)* 2 | G04 #@! TF.CreationDate,2020-04-04T17:45:35+02:00* 3 | G04 #@! TF.ProjectId,Untitled,556e7469-746c-4656-942e-6b696361645f,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Profile,NP* 6 | %FSLAX46Y46*% 7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 8 | G04 Created by KiCad (PCBNEW (5.1.4-0-10_14)) date 2020-04-04 17:45:35* 9 | %MOMM*% 10 | %LPD*% 11 | G04 APERTURE LIST* 12 | %ADD10C,0.050000*% 13 | %ADD11C,0.100000*% 14 | G04 APERTURE END LIST* 15 | D10* 16 | X292671500Y-12700000D02* 17 | X292671500Y-41973500D01* 18 | D11* 19 | X292671500Y-12700000D02* 20 | X12700000Y-12700000D01* 21 | X12700000Y-41973500D02* 22 | X292671500Y-41973500D01* 23 | X12700000Y-12700000D02* 24 | X12700000Y-41973500D01* 25 | M02* 26 | -------------------------------------------------------------------------------- /hardware/kicad/mcu-eight.pro: -------------------------------------------------------------------------------- 1 | update=2019 November 03, Sunday 21:42:49 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [pcbnew] 9 | version=1 10 | LastNetListRead= 11 | UseCmpFile=1 12 | PadDrill=0.600000000000 13 | PadDrillOvalY=0.600000000000 14 | PadSizeH=1.500000000000 15 | PadSizeV=1.500000000000 16 | PcbTextSizeV=1.500000000000 17 | PcbTextSizeH=1.500000000000 18 | PcbTextThickness=0.300000000000 19 | ModuleTextSizeV=1.000000000000 20 | ModuleTextSizeH=1.000000000000 21 | ModuleTextSizeThickness=0.150000000000 22 | SolderMaskClearance=0.000000000000 23 | SolderMaskMinWidth=0.000000000000 24 | DrawSegmentWidth=0.200000000000 25 | BoardOutlineThickness=0.100000000000 26 | ModuleOutlineThickness=0.150000000000 27 | [cvpcb] 28 | version=1 29 | NetIExt=net 30 | [eeschema] 31 | version=1 32 | LibDir= 33 | [eeschema/libraries] 34 | [schematic_editor] 35 | version=1 36 | PageLayoutDescrFile= 37 | PlotDirectoryName= 38 | SubpartIdSeparator=0 39 | SubpartFirstId=65 40 | NetFmtName=Pcbnew 41 | SpiceAjustPassiveValues=0 42 | LabSize=50 43 | ERC_TestSimilarLabels=1 44 | -------------------------------------------------------------------------------- /src/display.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | void display_init(void); 6 | void display_goto_line_column(int line, int column); 7 | void display_send_data(const uint8_t *buf, const size_t len); 8 | void display_set_color_inverted(bool x); 9 | void display_send_empty_screen(void); 10 | void display_send_character(char c); 11 | void display_send_string(const char *string); 12 | 13 | void display_send_2x_width_character(char c); 14 | void display_send_2x_character_top(char c); 15 | void display_send_2x_character_bottom(char c); 16 | 17 | typedef enum { 18 | display_selection_1, 19 | display_selection_2, 20 | display_selection_3, 21 | display_selection_4, 22 | display_selection_5, 23 | display_selection_6, 24 | display_selection_7, 25 | display_selection_8, 26 | display_selection_all, 27 | display_selection_none, 28 | } display_selection_t; 29 | 30 | void display_select(display_selection_t selection); 31 | 32 | void display_transport_reset(void); 33 | void display_transport_set_control(void); 34 | void display_transport_set_data(void); 35 | void display_transport_write(char byte); 36 | 37 | -------------------------------------------------------------------------------- /src/platform-private.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include 8 | #include 9 | #include 10 | 11 | 12 | #define SPI1_PIN_AF 5 /* Alt mode for SPI */ 13 | 14 | #define SPI1_CLOCK_PIN GPIO5 /* A5 */ 15 | #define SPI1_MISO_PIN GPIO6 /* A6 - disconnected */ 16 | #define SPI1_MOSI_PIN GPIO7 /* A7 */ 17 | 18 | 19 | #define SPI_DISP_RESET_PORT GPIOB 20 | #define SPI_DISP_RESET_PIN GPIO0 21 | 22 | #define SPI_DISP_DC_PORT GPIOB 23 | #define SPI_DISP_DC_PIN GPIO1 24 | 25 | // Port A 26 | #define DISP_CS1 GPIO15 27 | 28 | // Port B 29 | #define DISP_CS2 GPIO3 30 | #define DISP_CS3 GPIO4 31 | #define DISP_CS4 GPIO5 32 | #define DISP_CS5 GPIO6 33 | #define DISP_CS6 GPIO7 34 | #define DISP_CS7 GPIO8 35 | #define DISP_CS8 GPIO9 36 | 37 | #define DISP_CS_PORTA DISP_CS1 38 | #define DISP_CS_PORTB ( \ 39 | DISP_CS2 | \ 40 | DISP_CS3 | \ 41 | DISP_CS4 | \ 42 | DISP_CS5 | \ 43 | DISP_CS6 | \ 44 | DISP_CS7 | \ 45 | DISP_CS8 \ 46 | ) 47 | 48 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | CROSS_COMPILE := arm-none-eabi- 2 | 3 | CC := $(CROSS_COMPILE)gcc 4 | LD := $(CROSS_COMPILE)gcc 5 | OBJCOPY := $(CROSS_COMPILE)objcopy 6 | 7 | CFLAGS := -mcpu=cortex-m3 -mthumb -nostartfiles -mfloat-abi=soft -ffreestanding 8 | LDFLAGS := -mcpu=cortex-m3 -mthumb -nostartfiles -Wl,-gc-sections -specs=nosys.specs 9 | 10 | # - # 11 | 12 | PROJ_NAME := test 13 | 14 | BUILD_DIR := build 15 | SRC_DIR := src 16 | UCMX_DIR := unicore-mx 17 | 18 | ELF_PATH := $(BUILD_DIR)/$(PROJ_NAME).elf 19 | BIN_PATH := $(BUILD_DIR)/$(PROJ_NAME).bin 20 | 21 | # = # 22 | 23 | UCMX_A := $(UCMX_DIR)/lib/libucmx_stm32f4.a 24 | LD_SCRIPT := $(SRC_DIR)/target.ld 25 | 26 | CFLAGS += -I$(UCMX_DIR)/include -DSTM32F4 27 | LDFLAGS += -L$(UCMX_DIR)/lib -lucmx_stm32f4 28 | 29 | SRC_FILES := $(wildcard $(SRC_DIR)/*.c) 30 | OBJ_FILES := $(patsubst $(SRC_DIR)/%.c,$(BUILD_DIR)/%.o,$(SRC_FILES)) 31 | 32 | CFLAGS += -g -ggdb3 -O0 33 | 34 | all: $(ELF_PATH) $(BIN_PATH) 35 | 36 | 37 | $(BUILD_DIR)/.build: 38 | @mkdir -p $(BUILD_DIR) 39 | @touch $(BUILD_DIR)/.build 40 | 41 | 42 | $(BUILD_DIR)/%.o: $(SRC_DIR)/%.c 43 | $(CC) $(CFLAGS) -c -o $@ $^ 44 | 45 | 46 | $(UCMX_A): 47 | make -C $(UCMX_DIR) TARGETS=stm32/f4 FP_FLAGS="-mfloat-abi=soft" 48 | 49 | 50 | $(ELF_PATH): $(BUILD_DIR)/.build $(UCMX_A) $(OBJ_FILES) 51 | $(LD) -o $@ $(OBJ_FILES) $(LDFLAGS) -T$(LD_SCRIPT) 52 | 53 | 54 | $(BIN_PATH): $(ELF_PATH) 55 | $(OBJCOPY) -O binary $^ $@ 56 | 57 | 58 | .PHONY: flash 59 | flash: $(BIN_PATH) 60 | st-flash write $(BIN_PATH) 0x8000000 61 | -------------------------------------------------------------------------------- /src/spi.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include 6 | #include 7 | 8 | #define SPI1 (0x40013000) 9 | #define SPI1_CR1 (*(volatile uint32_t *)(SPI1)) 10 | #define SPI1_CR2 (*(volatile uint32_t *)(SPI1 + 0x04)) 11 | #define SPI1_SR (*(volatile uint32_t *)(SPI1 + 0x08)) 12 | #define SPI1_DR (*(volatile uint32_t *)(SPI1 + 0x0c)) 13 | 14 | #define SPI_CR1_CLOCK_PHASE (1 << 0) 15 | #define SPI_CR1_CLOCK_POLARITY (1 << 1) 16 | #define SPI_CR1_MASTER (1 << 2) 17 | #define SPI_CR1_BAUDRATE (7 << 3) 18 | #define SPI_CR1_SPI_EN (1 << 6) 19 | #define SPI_CR1_LSBFIRST (1 << 7) 20 | #define SPI_CR1_SSI (1 << 8) 21 | #define SPI_CR1_SSM (1 << 9) 22 | #define SPI_CR1_16BIT_FORMAT (1 << 11) 23 | #define SPI_CR1_TX_CRC_NEXT (1 << 12) 24 | #define SPI_CR1_HW_CRC_EN (1 << 13) 25 | #define SPI_CR1_BIDIOE (1 << 14) 26 | 27 | #define SPI_CR2_SSOE (1 << 2) 28 | 29 | #define SPI_SR_RX_NOTEMPTY (1 << 0) 30 | #define SPI_SR_TX_EMPTY (1 << 1) 31 | #define SPI_SR_BUSY (1 << 7) 32 | 33 | void spi_init(int polarity, int phase) 34 | { 35 | SPI1_CR1 = SPI_CR1_MASTER | (5 << 3) | (polarity << 1) | (phase << 0); 36 | SPI1_CR2 |= SPI_CR2_SSOE; 37 | SPI1_CR1 |= SPI_CR1_SPI_EN; 38 | } 39 | 40 | uint8_t spi_read(void) 41 | { 42 | volatile uint32_t reg; 43 | 44 | do { 45 | reg = SPI1_SR; 46 | } while(!(reg & SPI_SR_RX_NOTEMPTY)); 47 | 48 | return (uint8_t)SPI1_DR; 49 | } 50 | 51 | void spi_write(const char byte) 52 | { 53 | volatile uint32_t reg; 54 | 55 | do { 56 | reg = SPI1_SR; 57 | } while ((reg & SPI_SR_TX_EMPTY) == 0); 58 | 59 | SPI1_DR = byte; 60 | 61 | do { 62 | reg = SPI1_SR; 63 | } while ((reg & SPI_SR_TX_EMPTY) == 0); 64 | } 65 | 66 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # µScribble 2 | 3 | An hardware USB [Scribble Strip](https://www.sweetwater.com/insync/scribble-strip/) 4 | that supports the Mackie Control Protocol. 5 | 6 | µScribble in action 11 | 12 | 13 | ## Introduction 14 | 15 | µScribble is an USB Midi gadget designed to be a companion to inexpensive faderboxes 16 | without displays. It should be compatible with any DAW that supports control surfaces. 17 | I've personally used it with [Apple Logic Pro](https://www.apple.com/logic-pro/) and 18 | [Ableton Live](https://www.ableton.com/en/live/). 19 | 20 | The hardware itself is very simple an d based around an 21 | [STM32F4](https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html) 22 | evaluation board, sometimes known as "blackpill", while the displays are the SPI variant 23 | of the ubiquitous [SSD1306 OLED screens](https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf). 24 | 25 | The software is implemented using the [unicore-mx](https://github.com/insane-adding-machines/unicore-mx) 26 | fork of [libopencm3](https://github.com/libopencm3/libopencm3) as it has a slighlty 27 | better support for the stm32 target platform. It should be relatively easy to port 28 | the application code to any microcontroller of choice. 29 | 30 | 31 | ## Hardware design files 32 | 33 | The hardware is designed using the [KiCad EDA](https://kicad.org) 34 | 35 | * [KiCad project directory](hardware/kicad) 36 | * [Schematic diagram PDF](hardware/images/schema.pdf) 37 | 38 | Schematic diagram thumbnail 44 | 45 | * [Gerber fabrication files directory](hardware/gerbers) 46 | 47 | PCB diagram thumbnail 53 | 54 | 55 | ## Software 56 | 57 | The firmware depends on the `arm-none-eabi-gcc` toolchain, and to compile it 58 | it's sufficient to invoke 59 | 60 | ``` 61 | make 62 | ``` 63 | 64 | As a convenience, if you have the [STLink](https://github.com/stlink-org/stlink/) 65 | tools installed, you can flash the firmware to the device using the `st-flash` command 66 | with 67 | 68 | ``` 69 | make flash 70 | ``` 71 | -------------------------------------------------------------------------------- /src/platform.c: -------------------------------------------------------------------------------- 1 | #include "platform.h" 2 | #include "platform-private.h" 3 | 4 | #include "spi.h" 5 | #include "display.h" 6 | #include "usb-midi.h" 7 | 8 | usbd_device *usbd_dev; 9 | 10 | static volatile uint32_t jiffies = 0; 11 | 12 | static void platform_init_clock(void) 13 | { 14 | rcc_clock_setup_hse_3v3(&rcc_hse_25mhz_3v3[RCC_CLOCK_3V3_120MHZ]); 15 | 16 | rcc_periph_clock_enable(RCC_SPI1); 17 | rcc_periph_clock_enable(RCC_GPIOA); 18 | rcc_periph_clock_enable(RCC_GPIOB); 19 | } 20 | 21 | static void platform_init_gpio_usb(void) 22 | { 23 | gpio_mode_setup( 24 | GPIOA, 25 | GPIO_MODE_AF, 26 | GPIO_PUPD_PULLUP, 27 | GPIO9 | GPIO11 | GPIO12 28 | ); 29 | 30 | gpio_set_af( 31 | GPIOA, 32 | GPIO_AF10, 33 | GPIO9 | GPIO11 | GPIO12 34 | ); 35 | } 36 | 37 | static void platform_init_gpio_spi(void) 38 | { 39 | gpio_mode_setup( 40 | GPIOA, 41 | GPIO_MODE_OUTPUT, 42 | GPIO_PUPD_PULLUP, 43 | DISP_CS1 44 | ); 45 | 46 | gpio_mode_setup( 47 | GPIOB, 48 | GPIO_MODE_OUTPUT, 49 | GPIO_PUPD_PULLUP, 50 | ( 51 | SPI_DISP_RESET_PIN | 52 | SPI_DISP_DC_PIN | 53 | DISP_CS_PORTB 54 | ) 55 | ); 56 | 57 | gpio_mode_setup( 58 | GPIOA, 59 | GPIO_MODE_AF, 60 | GPIO_PUPD_PULLUP, 61 | SPI1_MOSI_PIN | SPI1_MISO_PIN | SPI1_CLOCK_PIN 62 | ); 63 | 64 | gpio_set_af( 65 | GPIOA, 66 | SPI1_PIN_AF, 67 | SPI1_MOSI_PIN | SPI1_MISO_PIN | SPI1_CLOCK_PIN 68 | ); 69 | } 70 | 71 | static void platform_init_usb(void) 72 | { 73 | usbd_dev = usbd_init(USBD_STM32_OTG_FS, NULL, &usb_midi_device_info); 74 | usbd_register_set_config_callback(usbd_dev, usb_midi_set_config); 75 | } 76 | 77 | static void platform_init_display(void) 78 | { 79 | gpio_clear(GPIOA, DISP_CS_PORTA); 80 | gpio_clear(GPIOB, DISP_CS_PORTB); 81 | 82 | spi_init(0, 0); 83 | display_transport_reset(); 84 | display_init(); 85 | } 86 | 87 | void sys_tick_handler() 88 | { 89 | jiffies++; 90 | } 91 | 92 | uint32_t platform_jiffies(void) 93 | { 94 | return jiffies; 95 | } 96 | 97 | static void platform_init_systick(void) 98 | { 99 | /* clock rate / 1000 to get 1mS interrupt rate */ 100 | systick_set_reload(168000); 101 | systick_set_clocksource(STK_CSR_CLKSOURCE_AHB); 102 | systick_counter_enable(); 103 | systick_interrupt_enable(); 104 | } 105 | 106 | void platform_init(void) 107 | { 108 | platform_init_clock(); 109 | platform_init_gpio_usb(); 110 | platform_init_gpio_spi(); 111 | platform_init_display(); 112 | platform_init_usb(); 113 | platform_init_systick(); 114 | } 115 | 116 | void platform_poll(void) 117 | { 118 | usbd_poll(usbd_dev, 0); 119 | } 120 | 121 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-PTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.4-0-10_14)} date 2020 April 04, Saturday 17:49:43 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-04-04T17:49:43+02:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.4-0-10_14) 6 | ; #@! TF.FileFunction,Plated,1,2,PTH 7 | FMAT,2 8 | INCH 9 | T1C0.0157 10 | T2C0.0394 11 | % 12 | G90 13 | G05 14 | T1 15 | X0.85Y-0.955 16 | X0.95Y-1.0 17 | X1.0525Y-1.04 18 | X1.1553Y-1.0847 19 | X1.2525Y-1.1225 20 | X1.3503Y-1.1647 21 | X2.2675Y-0.9525 22 | X2.37Y-1.0 23 | X2.4675Y-1.0425 24 | X2.5675Y-1.0825 25 | X2.6675Y-1.125 26 | X2.77Y-1.1625 27 | X3.6854Y-0.9654 28 | X3.785Y-1.0 29 | X3.885Y-1.0443 30 | X3.985Y-1.0825 31 | X4.0825Y-1.1275 32 | X4.1825Y-1.1625 33 | X4.86Y-0.9725 34 | X4.9568Y-1.0157 35 | X5.0575Y-1.045 36 | X5.2575Y-1.0893 37 | X5.505Y-1.1275 38 | X5.6125Y-1.1625 39 | X6.4775Y-0.9775 40 | X6.5725Y-1.0125 41 | X6.6725Y-1.0568 42 | X6.7725Y-1.0853 43 | X6.875Y-1.135 44 | X6.9725Y-1.1635 45 | X7.9375Y-0.9825 46 | X8.0332Y-1.0282 47 | X8.135Y-1.0575 48 | X8.2375Y-1.086 49 | X8.3375Y-1.1325 50 | X8.4375Y-1.17 51 | X9.355Y-0.985 52 | X9.455Y-1.0275 53 | X9.555Y-1.06 54 | X9.65Y-1.1025 55 | X9.75Y-1.1325 56 | X9.86Y-1.165 57 | X10.77Y-0.9825 58 | X10.8725Y-1.03 59 | X10.97Y-1.0625 60 | X11.065Y-1.105 61 | X11.1725Y-1.1375 62 | X11.27Y-1.1825 63 | T2 64 | X4.3575Y-0.6625 65 | X4.3575Y-1.2628 66 | X4.4575Y-0.6625 67 | X4.4575Y-1.2628 68 | X4.5575Y-0.6628 69 | X4.5575Y-1.2625 70 | X4.6575Y-0.6625 71 | X4.6575Y-1.2625 72 | X4.7575Y-0.6625 73 | X4.7575Y-1.2625 74 | X4.8575Y-0.6625 75 | X4.8575Y-1.2625 76 | X4.9575Y-0.6625 77 | X4.9575Y-1.2625 78 | X5.0575Y-0.6625 79 | X5.0575Y-1.2625 80 | X5.1575Y-0.6625 81 | X5.1575Y-1.2628 82 | X5.2575Y-0.6625 83 | X5.2575Y-1.2625 84 | X5.3575Y-0.6625 85 | X5.3575Y-1.2625 86 | X5.4575Y-0.6625 87 | X5.4575Y-1.2625 88 | X5.5575Y-0.6628 89 | X5.5575Y-1.2625 90 | X5.6575Y-0.6625 91 | X5.6575Y-1.2625 92 | X5.7575Y-0.6625 93 | X5.7575Y-1.2625 94 | X5.8575Y-0.6625 95 | X5.8575Y-1.2625 96 | X5.9575Y-0.6625 97 | X5.9575Y-1.2625 98 | X6.0575Y-0.6625 99 | X6.0575Y-1.2628 100 | X6.1575Y-0.6625 101 | X6.1575Y-1.2625 102 | X6.2575Y-0.6625 103 | X6.2575Y-1.2625 104 | X10.6716Y-1.5271 105 | X7.8369Y-1.5271 106 | X7.9369Y-1.5271 107 | X8.0369Y-1.5271 108 | X8.1369Y-1.5271 109 | X8.2369Y-1.5271 110 | X8.3369Y-1.5271 111 | X8.4369Y-1.5271 112 | X2.2676Y-1.5271 113 | X9.2542Y-1.5271 114 | X9.3542Y-1.5271 115 | X9.4542Y-1.5271 116 | X9.5542Y-1.5271 117 | X2.7676Y-1.5271 118 | X2.1676Y-1.5271 119 | X9.6542Y-1.5271 120 | X9.7542Y-1.5271 121 | X9.8542Y-1.5271 122 | X2.3676Y-1.5271 123 | X2.4676Y-1.5271 124 | X2.5676Y-1.5271 125 | X2.6676Y-1.5271 126 | X10.7716Y-1.5271 127 | X10.8716Y-1.5271 128 | X10.9716Y-1.5271 129 | X11.0716Y-1.5271 130 | X11.1716Y-1.5271 131 | X11.2716Y-1.5271 132 | X0.7503Y-1.5271 133 | X0.8503Y-1.5271 134 | X0.9503Y-1.5271 135 | X3.9849Y-1.5271 136 | X3.5849Y-1.5271 137 | X3.6849Y-1.5271 138 | X3.7849Y-1.5271 139 | X3.8849Y-1.5271 140 | X1.0503Y-1.5271 141 | X1.1503Y-1.5271 142 | X1.2503Y-1.5271 143 | X1.3503Y-1.5271 144 | X4.0849Y-1.5271 145 | X4.1849Y-1.5271 146 | X6.3725Y-1.5325 147 | X6.4725Y-1.5325 148 | X6.5725Y-1.5325 149 | X6.6725Y-1.5325 150 | X6.7725Y-1.5325 151 | X6.8725Y-1.5325 152 | X6.9725Y-1.5325 153 | X5.0023Y-1.5271 154 | X5.1023Y-1.5271 155 | X5.2023Y-1.5271 156 | X5.3023Y-1.5271 157 | X5.4023Y-1.5271 158 | X5.5023Y-1.5271 159 | X5.6023Y-1.5271 160 | T0 161 | M30 162 | -------------------------------------------------------------------------------- /src/display.c: -------------------------------------------------------------------------------- 1 | #include "display.h" 2 | #include "platform-private.h" 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | #include 9 | #include 10 | 11 | extern const unsigned char font[256][8]; 12 | 13 | #define WIDTH 128 14 | #define PIXEL_HEIGHT 64 15 | #define HEIGHT (PIXEL_HEIGHT / 8) 16 | 17 | #define SSD1306_MEMORYMODE 0x20 18 | #define SSD1306_COLUMNADDR 0x21 19 | #define SSD1306_PAGEADDR 0x22 20 | #define SSD1306_SETCONTRAST 0x81 21 | #define SSD1306_CHARGEPUMP 0x8D 22 | #define SSD1306_SEGREMAP 0xA0 23 | #define SSD1306_DISPLAYALLON_RESUME 0xA4 24 | #define SSD1306_DISPLAYALLON 0xA5 25 | #define SSD1306_NORMALDISPLAY 0xA6 26 | #define SSD1306_INVERTDISPLAY 0xA7 27 | #define SSD1306_SETMULTIPLEX 0xA8 28 | #define SSD1306_DISPLAYOFF 0xAE 29 | #define SSD1306_DISPLAYON 0xAF 30 | #define SSD1306_COMSCANINC 0xC0 31 | #define SSD1306_COMSCANDEC 0xC8 32 | #define SSD1306_SETDISPLAYOFFSET 0xD3 33 | #define SSD1306_SETDISPLAYCLOCKDIV 0xD5 34 | #define SSD1306_SETPRECHARGE 0xD9 35 | #define SSD1306_SETCOMPINS 0xDA 36 | #define SSD1306_SETVCOMDETECT 0xDB 37 | #define SSD1306_SETLOWCOLUMN 0x00 38 | #define SSD1306_SETHIGHCOLUMN 0x10 39 | #define SSD1306_SETSTARTLINE 0x40 40 | #define SSD1306_RIGHT_HORIZONTAL_SCROLL 0x26 41 | #define SSD1306_LEFT_HORIZONTAL_SCROLL 0x27 42 | #define SSD1306_VERTICAL_AND_RIGHT_HORIZONTAL_SCROLL 0x29 43 | #define SSD1306_VERTICAL_AND_LEFT_HORIZONTAL_SCROLL 0x2A 44 | #define SSD1306_DEACTIVATE_SCROLL 0x2E 45 | #define SSD1306_ACTIVATE_SCROLL 0x2F 46 | #define SSD1306_SET_VERTICAL_SCROLL_AREA 0xA3 47 | 48 | void display_send_data(const uint8_t *buf, const size_t len) 49 | { 50 | display_transport_set_data(); 51 | 52 | for (int i = 0; i < len; i++) 53 | display_transport_write(buf[i]); 54 | } 55 | 56 | static inline void display_send_cmd(uint8_t cmd) 57 | { 58 | display_transport_set_control(); 59 | display_transport_write(cmd); 60 | } 61 | 62 | static inline void display_send_cmd1(uint8_t cmd, uint8_t arg1) 63 | { 64 | display_transport_set_control(); 65 | display_transport_write(cmd); 66 | display_transport_write(arg1); 67 | } 68 | 69 | static inline void display_send_cmd2(uint8_t cmd, uint8_t arg1, uint8_t arg2) 70 | { 71 | display_transport_set_control(); 72 | display_transport_write(cmd); 73 | display_transport_write(arg1); 74 | display_transport_write(arg2); 75 | } 76 | 77 | void display_send_character(char c) { 78 | display_send_data(font[c], 8); 79 | } 80 | 81 | void display_send_2x_width_character(char c) { 82 | const uint8_t *glyph = font[c]; 83 | uint8_t doubled[8 * 2]; 84 | 85 | for (int i = 0; i < 8; i++) { 86 | uint8_t line = glyph[i]; 87 | 88 | uint8_t top_line = line; 89 | 90 | doubled[(i * 2) ] = top_line; 91 | doubled[(i * 2) + 1] = top_line; 92 | } 93 | 94 | display_send_data(doubled, 16); 95 | } 96 | 97 | void display_send_2x_character_top(char c) { 98 | const uint8_t *glyph = font[c]; 99 | uint8_t doubled[8 * 2]; 100 | 101 | for (int i = 0; i < 8; i++) { 102 | uint8_t line = glyph[i]; 103 | 104 | uint8_t top_line = 105 | ((line & 0x01) ) | 106 | ((line & 0x01) << 1) | 107 | ((line & 0x02) << 1) | 108 | ((line & 0x02) << 2) | 109 | ((line & 0x04) << 2) | 110 | ((line & 0x04) << 3) | 111 | ((line & 0x08) << 3) | 112 | ((line & 0x08) << 4) 113 | ; 114 | 115 | doubled[(i * 2) ] = top_line; 116 | doubled[(i * 2) + 1] = top_line; 117 | } 118 | 119 | display_send_data(doubled, 16); 120 | } 121 | 122 | void display_send_2x_character_bottom(char c) { 123 | const uint8_t *glyph = font[c]; 124 | uint8_t doubled[8 * 2]; 125 | 126 | for (int i = 0; i < 8; i++) { 127 | uint8_t line = glyph[i]; 128 | 129 | uint8_t top_line = 130 | ((line & 0x10) >> 4) | 131 | ((line & 0x10) >> 3) | 132 | ((line & 0x20) >> 3) | 133 | ((line & 0x20) >> 2) | 134 | ((line & 0x40) >> 2) | 135 | ((line & 0x40) >> 1) | 136 | ((line & 0x80) >> 1) | 137 | ((line & 0x80) ) 138 | ; 139 | 140 | doubled[(i * 2) ] = top_line; 141 | doubled[(i * 2) + 1] = top_line; 142 | } 143 | 144 | display_send_data(doubled, 16); 145 | } 146 | 147 | void display_send_string(const char *string) { 148 | while (*string != 0) 149 | display_send_character(*string++); 150 | } 151 | 152 | void display_send_empty_line(void) { 153 | uint8_t test[32] = {0x00}; 154 | display_send_data(test, sizeof(test)); 155 | display_send_data(test, sizeof(test)); 156 | display_send_data(test, sizeof(test)); 157 | display_send_data(test, sizeof(test)); 158 | } 159 | 160 | void display_send_empty_screen(void) { 161 | display_goto_line_column(0, 0); 162 | for (int i = 0; i < 8; i++) 163 | display_send_empty_line(); 164 | } 165 | 166 | void display_goto_line_column(int line, int column) { 167 | display_send_cmd2(SSD1306_PAGEADDR, line & 0x0f, 0xff); 168 | display_send_cmd2(SSD1306_COLUMNADDR, column & 0x7f, WIDTH - 1); 169 | } 170 | 171 | void display_init(void) { 172 | display_send_cmd(SSD1306_DISPLAYOFF); 173 | display_send_cmd1(SSD1306_CHARGEPUMP, 0x14); 174 | display_send_cmd1(SSD1306_MEMORYMODE, 0x00); 175 | display_send_empty_screen(); 176 | display_send_cmd(SSD1306_DISPLAYON); 177 | } 178 | 179 | void display_select_all() { 180 | gpio_clear(GPIOA, DISP_CS_PORTA); 181 | gpio_clear(GPIOB, DISP_CS_PORTB); 182 | } 183 | 184 | void display_select_none() { 185 | gpio_set(GPIOA, DISP_CS_PORTA); 186 | gpio_set(GPIOB, DISP_CS_PORTB); 187 | } 188 | 189 | void display_select(display_selection_t s) { 190 | switch(s) { 191 | case display_selection_1: 192 | display_select_none(); 193 | gpio_clear(GPIOA, DISP_CS1); 194 | break; 195 | 196 | case display_selection_2: 197 | display_select_none(); 198 | gpio_clear(GPIOB, DISP_CS2); 199 | break; 200 | 201 | case display_selection_3: 202 | display_select_none(); 203 | gpio_clear(GPIOB, DISP_CS3); 204 | break; 205 | 206 | case display_selection_4: 207 | display_select_none(); 208 | gpio_clear(GPIOB, DISP_CS4); 209 | break; 210 | 211 | case display_selection_5: 212 | display_select_none(); 213 | gpio_clear(GPIOB, DISP_CS5); 214 | break; 215 | 216 | case display_selection_6: 217 | display_select_none(); 218 | gpio_clear(GPIOB, DISP_CS6); 219 | break; 220 | 221 | case display_selection_7: 222 | display_select_none(); 223 | gpio_clear(GPIOB, DISP_CS7); 224 | break; 225 | 226 | case display_selection_8: 227 | display_select_none(); 228 | gpio_clear(GPIOB, DISP_CS8); 229 | break; 230 | 231 | case display_selection_all: 232 | display_select_all(); 233 | break; 234 | 235 | case display_selection_none: 236 | display_select_none(); 237 | break; 238 | } 239 | } 240 | 241 | void display_set_color_inverted(bool x) { 242 | if (x) 243 | display_send_cmd(SSD1306_INVERTDISPLAY); 244 | else 245 | display_send_cmd(SSD1306_NORMALDISPLAY); 246 | } 247 | -------------------------------------------------------------------------------- /src/main.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | #include "platform.h" 8 | #include "display.h" 9 | 10 | 11 | #define MIN(a,b) (((a)<(b))?(a):(b)) 12 | #define MAX(a,b) (((a)>(b))?(a):(b)) 13 | 14 | 15 | char logic_peak_levels[8] = { 0 }; 16 | char logic_peak_offset[8] = { 0 }; 17 | 18 | char logic_control_strip[2][8][7] = { 0 }; 19 | 20 | uint8_t nibble_char(uint8_t x) { 21 | return (x < 10) ? ('0' + x) : ('a' + (x - 10)); 22 | } 23 | 24 | void byte_string(char * string, uint8_t byte) { 25 | string[0] = nibble_char((byte & 0xf0) >> 4); 26 | string[1] = nibble_char((byte & 0x0f) ); 27 | } 28 | 29 | void send_small_dump(const uint8_t * buf, size_t len) { 30 | // 1 1 31 | // 01234567890123456 32 | static uint8_t string[] = "00 00 00 00 00 "; 33 | 34 | for (int i = 0; i < 5; i++) { 35 | string[(i * 3) ] = '-'; 36 | string[(i * 3) + 1] = '-'; 37 | } 38 | 39 | for (int i = 0; i < MIN(len, 5); i++) { 40 | byte_string(string + (i * 3), buf[i]); 41 | } 42 | 43 | 44 | display_send_string(string); 45 | } 46 | enum usb_midi_packet_types { 47 | usb_midi_sysex_start_or_continue = 0x04, 48 | usb_midi_sysex_ends_single_byte = 0x05, 49 | usb_midi_sysex_ends_two_bytes = 0x06, 50 | usb_midi_sysex_ends_three_bytes = 0x07, 51 | usb_midi_channel_pressure = 0x0d, 52 | }; 53 | 54 | 55 | struct buffer { 56 | size_t len; 57 | uint8_t buf[255]; 58 | }; 59 | 60 | struct sysex_parser { 61 | enum { 62 | sysex_parser_idle, 63 | sysex_parser_accumulating, 64 | sysex_parser_ended, 65 | } state; 66 | 67 | struct buffer sysex; 68 | }; 69 | 70 | void sysex_parse(struct sysex_parser * parser, const uint8_t * packet) 71 | { 72 | const uint8_t 73 | cable_id = (packet[0] & 0xf0) >> 0; 74 | 75 | const enum usb_midi_packet_types 76 | packet_type = (packet[0] & 0x0f); 77 | 78 | struct buffer 79 | *sysex = &(parser->sysex); 80 | 81 | switch (packet_type) { 82 | case usb_midi_sysex_start_or_continue: 83 | switch (parser->state) { 84 | case sysex_parser_idle: 85 | case sysex_parser_ended: 86 | sysex->len = 0; 87 | break; 88 | 89 | case sysex_parser_accumulating: 90 | break; 91 | } 92 | 93 | sysex->buf[sysex->len++] = packet[1]; 94 | sysex->buf[sysex->len++] = packet[2]; 95 | sysex->buf[sysex->len++] = packet[3]; 96 | parser->state = sysex_parser_accumulating; 97 | break; 98 | 99 | case usb_midi_sysex_ends_single_byte: 100 | sysex->buf[sysex->len++] = packet[1]; 101 | parser->state = sysex_parser_ended; 102 | break; 103 | 104 | case usb_midi_sysex_ends_two_bytes: 105 | sysex->buf[sysex->len++] = packet[1]; 106 | sysex->buf[sysex->len++] = packet[2]; 107 | parser->state = sysex_parser_ended; 108 | break; 109 | 110 | case usb_midi_sysex_ends_three_bytes: 111 | sysex->buf[sysex->len++] = packet[1]; 112 | sysex->buf[sysex->len++] = packet[2]; 113 | sysex->buf[sysex->len++] = packet[3]; 114 | parser->state = sysex_parser_ended; 115 | break; 116 | } 117 | } 118 | 119 | 120 | void usb_midi_received_callback(const uint8_t * buf, size_t len) 121 | { 122 | static struct sysex_parser parser = { 0 }; 123 | 124 | for (int i = 0; i < len / 4; i++) { 125 | const uint8_t 126 | *packet = buf + (i * 4); 127 | 128 | const uint8_t 129 | cable_id = (packet[0] & 0xf0) >> 0; 130 | 131 | const enum usb_midi_packet_types 132 | packet_type = (packet[0] & 0x0f); 133 | 134 | switch (packet_type) { 135 | case usb_midi_channel_pressure: { 136 | const uint8_t level = (packet[2] & 0x0f); 137 | const uint8_t channel = (packet[2] & 0x70) >> 4; 138 | logic_peak_levels[channel] = level; 139 | logic_peak_offset[channel] = 0; 140 | break; 141 | } 142 | } 143 | 144 | sysex_parse(&parser, packet); 145 | 146 | if (parser.state == sysex_parser_ended) { 147 | const uint8_t * midiData = parser.sysex.buf; 148 | 149 | parser.state = sysex_parser_idle; 150 | 151 | if ( 152 | (midiData[0] == 0xf0) && 153 | (midiData[5] == 0x12) 154 | ) { 155 | const uint8_t offset = midiData[6]; 156 | const uint8_t *src = &midiData[7]; 157 | uint8_t *dst = (((uint8_t *)logic_control_strip) + offset); 158 | 159 | while (*src != 0xf7) { 160 | *dst++ = *src++; 161 | } 162 | } 163 | } 164 | 165 | } 166 | } 167 | 168 | // - // 169 | 170 | void draw_peak_levels(uint8_t t) 171 | { 172 | #define bar_size 128 173 | 174 | uint8_t data[bar_size] = { 0 }; 175 | 176 | int l = logic_peak_levels[t]; 177 | int e = 0; 178 | 179 | if (l) { 180 | l = MIN(l, 0xc); 181 | 182 | e = (l * 128) / 12 - logic_peak_offset[t]; 183 | logic_peak_offset[t] -= 8; 184 | if (e < 0) { 185 | e = 0; 186 | logic_peak_levels[t] = 0; 187 | } 188 | } 189 | 190 | for (int i = 0; i < bar_size; i++) { 191 | bool is_on = (i < e); 192 | bool is_odd = ((i % 2) == 0); 193 | bool tick = ((i % 4) == 0); 194 | bool tick_mask = 0x3c; 195 | 196 | uint8_t mark = 0x00; // tick ? 0x42 : 0x00; 197 | uint8_t border = 0x81; 198 | uint8_t dot = is_on && is_odd ? 0xff : 0x00; 199 | 200 | data[i] = dot | border; 201 | } 202 | 203 | display_send_data(data, bar_size); 204 | 205 | } 206 | 207 | void draw_logic_strip() 208 | { 209 | for (int t = 0; t < 8; t++) { 210 | display_select(display_selection_1 + t); 211 | 212 | display_goto_line_column(0, 0); 213 | 214 | for (int i = 0; i < 7; i++) { 215 | display_send_2x_character_top(logic_control_strip[0][t][i]); 216 | } 217 | 218 | display_goto_line_column(1, 0); 219 | 220 | for (int i = 0; i < 7; i++) { 221 | display_send_2x_character_bottom(logic_control_strip[0][t][i]); 222 | } 223 | 224 | display_goto_line_column(3, 0); 225 | 226 | for (int i = 0; i < 7; i++) { 227 | display_send_2x_character_top(logic_control_strip[1][t][i]); 228 | } 229 | 230 | display_goto_line_column(4, 0); 231 | 232 | for (int i = 0; i < 7; i++) { 233 | display_send_2x_character_bottom(logic_control_strip[1][t][i]); 234 | } 235 | 236 | display_goto_line_column(6, 0); 237 | draw_peak_levels(t); 238 | } 239 | } 240 | 241 | void draw_at_startup() 242 | { 243 | display_select(display_selection_all); 244 | display_goto_line_column(0, 0); 245 | 246 | for ( 247 | display_selection_t s = display_selection_1; 248 | s <= display_selection_8; 249 | s++ 250 | ) { 251 | // 01234567 252 | char string[] = "DISP "; 253 | string[4] = s - display_selection_1 + '1'; 254 | display_select(s); 255 | 256 | char *s; 257 | 258 | s = string; 259 | while (*s != 0) { 260 | display_send_2x_character_top(*s++); 261 | } 262 | 263 | s = string; 264 | while (*s != 0) { 265 | display_send_2x_character_bottom(*s++); 266 | } 267 | } 268 | } 269 | 270 | int main(void) 271 | { 272 | platform_init(); 273 | draw_at_startup(); 274 | 275 | const uint32_t jiffies_mult = 30; // redraw every N jiffies_mult 276 | 277 | while (1) { 278 | uint32_t poll_time = platform_jiffies(); 279 | 280 | draw_logic_strip(); 281 | 282 | uint32_t after_draw = platform_jiffies(); 283 | 284 | { 285 | display_select(display_selection_8); 286 | display_goto_line_column(6, 0); 287 | 288 | char buffer[8]; 289 | snprintf(buffer, sizeof(buffer), "%d", after_draw - poll_time); 290 | display_send_string(buffer); 291 | } 292 | 293 | for (int i = 0; i < jiffies_mult; i++) { 294 | do { 295 | platform_poll(); 296 | WFI(); 297 | } while(poll_time == platform_jiffies()); 298 | } 299 | } 300 | 301 | } 302 | 303 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-B_Cu.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.4-0-10_14)* 2 | G04 #@! TF.CreationDate,2020-04-04T17:45:35+02:00* 3 | G04 #@! TF.ProjectId,Untitled,556e7469-746c-4656-942e-6b696361645f,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Copper,L2,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.4-0-10_14)) date 2020-04-04 17:45:35* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10O,1.300000X3.000000*% 14 | %ADD11O,1.700000X1.700000*% 15 | %ADD12R,1.700000X1.700000*% 16 | %ADD13C,0.800000*% 17 | %ADD14C,0.250000*% 18 | G04 APERTURE END LIST* 19 | D10* 20 | X110680500Y-32075120D03* 21 | X110680500Y-16827500D03* 22 | X113220500Y-32075120D03* 23 | X113220500Y-16827500D03* 24 | X115760500Y-32067500D03* 25 | X115760500Y-16835120D03* 26 | X118300500Y-32067500D03* 27 | X118300500Y-16827500D03* 28 | X120840500Y-32067500D03* 29 | X120840500Y-16827500D03* 30 | X123380500Y-32067500D03* 31 | X123380500Y-16827500D03* 32 | X125920500Y-32067500D03* 33 | X125920500Y-16827500D03* 34 | X128460500Y-32067500D03* 35 | X128460500Y-16827500D03* 36 | X131000500Y-32075120D03* 37 | X131000500Y-16827500D03* 38 | X133540500Y-32067500D03* 39 | X133540500Y-16827500D03* 40 | X136080500Y-32067500D03* 41 | X136080500Y-16827500D03* 42 | X138620500Y-32067500D03* 43 | X138620500Y-16827500D03* 44 | X141160500Y-32067500D03* 45 | X141160500Y-16835120D03* 46 | X143700500Y-32067500D03* 47 | X143700500Y-16827500D03* 48 | X146240500Y-32067500D03* 49 | X146240500Y-16827500D03* 50 | X148780500Y-32067500D03* 51 | X148780500Y-16827500D03* 52 | X151320500Y-32067500D03* 53 | X151320500Y-16827500D03* 54 | X153860500Y-32075120D03* 55 | X153860500Y-16827500D03* 56 | X156400500Y-32067500D03* 57 | X156400500Y-16827500D03* 58 | X158940500Y-32067500D03* 59 | X158940500Y-16827500D03* 60 | D11* 61 | X19057525Y-38788321D03* 62 | X21597525Y-38788321D03* 63 | X24137525Y-38788321D03* 64 | X26677525Y-38788321D03* 65 | X29217525Y-38788321D03* 66 | X31757525Y-38788321D03* 67 | D12* 68 | X34297525Y-38788321D03* 69 | D11* 70 | X55057525Y-38788321D03* 71 | X57597525Y-38788321D03* 72 | X60137525Y-38788321D03* 73 | X62677525Y-38788321D03* 74 | X65217525Y-38788321D03* 75 | X67757525Y-38788321D03* 76 | D12* 77 | X70297525Y-38788321D03* 78 | D11* 79 | X91057525Y-38788321D03* 80 | X93597525Y-38788321D03* 81 | X96137525Y-38788321D03* 82 | X98677525Y-38788321D03* 83 | X101217525Y-38788321D03* 84 | X103757525Y-38788321D03* 85 | D12* 86 | X106297525Y-38788321D03* 87 | D11* 88 | X271057525Y-38788321D03* 89 | X273597525Y-38788321D03* 90 | X276137525Y-38788321D03* 91 | X278677525Y-38788321D03* 92 | X281217525Y-38788321D03* 93 | X283757525Y-38788321D03* 94 | D12* 95 | X286297525Y-38788321D03* 96 | D11* 97 | X235057525Y-38788321D03* 98 | X237597525Y-38788321D03* 99 | X240137525Y-38788321D03* 100 | X242677525Y-38788321D03* 101 | X245217525Y-38788321D03* 102 | X247757525Y-38788321D03* 103 | D12* 104 | X250297525Y-38788321D03* 105 | D11* 106 | X199057525Y-38788321D03* 107 | X201597525Y-38788321D03* 108 | X204137525Y-38788321D03* 109 | X206677525Y-38788321D03* 110 | X209217525Y-38788321D03* 111 | X211757525Y-38788321D03* 112 | D12* 113 | X214297525Y-38788321D03* 114 | D11* 115 | X161861500Y-38925500D03* 116 | X164401500Y-38925500D03* 117 | X166941500Y-38925500D03* 118 | X169481500Y-38925500D03* 119 | X172021500Y-38925500D03* 120 | X174561500Y-38925500D03* 121 | D12* 122 | X177101500Y-38925500D03* 123 | D11* 124 | X127057525Y-38788321D03* 125 | X129597525Y-38788321D03* 126 | X132137525Y-38788321D03* 127 | X134677525Y-38788321D03* 128 | X137217525Y-38788321D03* 129 | X139757525Y-38788321D03* 130 | D12* 131 | X142297525Y-38788321D03* 132 | D13* 133 | X34297525Y-29583475D03* 134 | X70358000Y-29527500D03* 135 | X106235500Y-29527500D03* 136 | X142557500Y-29527500D03* 137 | X177101500Y-29554000D03* 138 | X214312500Y-29718000D03* 139 | X250444000Y-29591000D03* 140 | X286258000Y-30035500D03* 141 | X31813500Y-28511500D03* 142 | X67754500Y-28575000D03* 143 | X103695500Y-28638500D03* 144 | X139827000Y-28638500D03* 145 | X174625000Y-28829000D03* 146 | X211772500Y-28765500D03* 147 | X247650000Y-28765500D03* 148 | X283781500Y-28892500D03* 149 | X21590000Y-24257000D03* 150 | X57594500Y-24193500D03* 151 | X93609163Y-24521163D03* 152 | X123444000Y-24701500D03* 153 | X164528500Y-24828500D03* 154 | X201612500Y-24955500D03* 155 | X237617000Y-25019000D03* 156 | X273558000Y-24955500D03* 157 | X24130000Y-25400000D03* 158 | X60198000Y-25400000D03* 159 | X96139000Y-25400000D03* 160 | X125901501Y-25799999D03* 161 | X166941500Y-25717500D03* 162 | X204044499Y-26117499D03* 163 | X240157000Y-26098500D03* 164 | X276161500Y-26162000D03* 165 | X26733500Y-26416000D03* 166 | X62674500Y-26479500D03* 167 | X98679000Y-26524999D03* 168 | X128460500Y-26543000D03* 169 | X169481500Y-26842499D03* 170 | X206629000Y-26860500D03* 171 | X242697000Y-26924000D03* 172 | X278638000Y-26987500D03* 173 | X29344525Y-27551475D03* 174 | X65214500Y-27495500D03* 175 | X101219000Y-27495500D03* 176 | X133540500Y-27667999D03* 177 | X172021500Y-27567499D03* 178 | X209232500Y-27585500D03* 179 | X245110000Y-28003500D03* 180 | X281051000Y-28067000D03* 181 | D14* 182 | X70302025Y-29583475D02* 183 | X70358000Y-29527500D01* 184 | X34297525Y-29583475D02* 185 | X70302025Y-29583475D01* 186 | X70358000Y-29527500D02* 187 | X106235500Y-29527500D01* 188 | X106235500Y-29527500D02* 189 | X142557500Y-29527500D01* 190 | X174276998Y-29554000D02* 191 | X177101500Y-29554000D01* 192 | X174250498Y-29527500D02* 193 | X174276998Y-29554000D01* 194 | X142557500Y-29527500D02* 195 | X174250498Y-29527500D01* 196 | X214148500Y-29554000D02* 197 | X214312500Y-29718000D01* 198 | X177101500Y-29554000D02* 199 | X214148500Y-29554000D01* 200 | X250317000Y-29718000D02* 201 | X250444000Y-29591000D01* 202 | X214312500Y-29718000D02* 203 | X250317000Y-29718000D01* 204 | X286213499Y-29990999D02* 205 | X286258000Y-30035500D01* 206 | X250843999Y-29990999D02* 207 | X286213499Y-29990999D01* 208 | X250444000Y-29591000D02* 209 | X250843999Y-29990999D01* 210 | X67691000Y-28511500D02* 211 | X67754500Y-28575000D01* 212 | X31813500Y-28511500D02* 213 | X67691000Y-28511500D01* 214 | X103632000Y-28575000D02* 215 | X103695500Y-28638500D01* 216 | X67754500Y-28575000D02* 217 | X103632000Y-28575000D01* 218 | X103695500Y-28638500D02* 219 | X115443000Y-28638500D01* 220 | X115443000Y-28638500D02* 221 | X139827000Y-28638500D01* 222 | X174434500Y-28638500D02* 223 | X174625000Y-28829000D01* 224 | X139827000Y-28638500D02* 225 | X174434500Y-28638500D01* 226 | X211709000Y-28829000D02* 227 | X211772500Y-28765500D01* 228 | X174625000Y-28829000D02* 229 | X211709000Y-28829000D01* 230 | X211772500Y-28765500D02* 231 | X247650000Y-28765500D01* 232 | X280803498Y-28892500D02* 233 | X283781500Y-28892500D01* 234 | X280676498Y-28765500D02* 235 | X280803498Y-28892500D01* 236 | X247650000Y-28765500D02* 237 | X280676498Y-28765500D01* 238 | X57531000Y-24257000D02* 239 | X57594500Y-24193500D01* 240 | X21590000Y-24257000D02* 241 | X57531000Y-24257000D01* 242 | X93281500Y-24193500D02* 243 | X93609163Y-24521163D01* 244 | X57594500Y-24193500D02* 245 | X93281500Y-24193500D01* 246 | X123263663Y-24521163D02* 247 | X123444000Y-24701500D01* 248 | X93609163Y-24521163D02* 249 | X123263663Y-24521163D01* 250 | X164401500Y-24701500D02* 251 | X164528500Y-24828500D01* 252 | X123444000Y-24701500D02* 253 | X164401500Y-24701500D01* 254 | X201485500Y-24828500D02* 255 | X201612500Y-24955500D01* 256 | X164528500Y-24828500D02* 257 | X201485500Y-24828500D01* 258 | X237553500Y-24955500D02* 259 | X237617000Y-25019000D01* 260 | X201612500Y-24955500D02* 261 | X237553500Y-24955500D01* 262 | X273494500Y-25019000D02* 263 | X273558000Y-24955500D01* 264 | X237617000Y-25019000D02* 265 | X273494500Y-25019000D01* 266 | X24130000Y-25400000D02* 267 | X60198000Y-25400000D01* 268 | X60198000Y-25400000D02* 269 | X96139000Y-25400000D01* 270 | X96538999Y-25799999D02* 271 | X125901501Y-25799999D01* 272 | X96139000Y-25400000D02* 273 | X96538999Y-25799999D01* 274 | X166859001Y-25799999D02* 275 | X166941500Y-25717500D01* 276 | X125901501Y-25799999D02* 277 | X166859001Y-25799999D01* 278 | X167341499Y-26117499D02* 279 | X204044499Y-26117499D01* 280 | X166941500Y-25717500D02* 281 | X167341499Y-26117499D01* 282 | X240138001Y-26117499D02* 283 | X240157000Y-26098500D01* 284 | X204044499Y-26117499D02* 285 | X240138001Y-26117499D01* 286 | X276098000Y-26098500D02* 287 | X276161500Y-26162000D01* 288 | X240157000Y-26098500D02* 289 | X276098000Y-26098500D01* 290 | X62611000Y-26416000D02* 291 | X62674500Y-26479500D01* 292 | X26733500Y-26416000D02* 293 | X62611000Y-26416000D01* 294 | X62674500Y-26479500D02* 295 | X98633501Y-26479500D01* 296 | X128442499Y-26524999D02* 297 | X128460500Y-26543000D01* 298 | X98679000Y-26524999D02* 299 | X128442499Y-26524999D01* 300 | X169381000Y-26942999D02* 301 | X169481500Y-26842499D01* 302 | X128860499Y-26942999D02* 303 | X169381000Y-26942999D01* 304 | X128460500Y-26543000D02* 305 | X128860499Y-26942999D01* 306 | X206610999Y-26842499D02* 307 | X206629000Y-26860500D01* 308 | X169481500Y-26842499D02* 309 | X206610999Y-26842499D01* 310 | X242633500Y-26860500D02* 311 | X242697000Y-26924000D01* 312 | X206629000Y-26860500D02* 313 | X242633500Y-26860500D01* 314 | X242697000Y-26924000D02* 315 | X278257000Y-26924000D01* 316 | X65158525Y-27551475D02* 317 | X65214500Y-27495500D01* 318 | X29344525Y-27551475D02* 319 | X65158525Y-27551475D01* 320 | X65214500Y-27495500D02* 321 | X101219000Y-27495500D01* 322 | X133368001Y-27495500D02* 323 | X133540500Y-27667999D01* 324 | X101219000Y-27495500D02* 325 | X133368001Y-27495500D01* 326 | X171921000Y-27667999D02* 327 | X172021500Y-27567499D01* 328 | X133540500Y-27667999D02* 329 | X171921000Y-27667999D01* 330 | X206280998Y-27585500D02* 331 | X209232500Y-27585500D01* 332 | X206262997Y-27567499D02* 333 | X206280998Y-27585500D01* 334 | X172021500Y-27567499D02* 335 | X206262997Y-27567499D01* 336 | X242703498Y-28003500D02* 337 | X245110000Y-28003500D01* 338 | X242285498Y-27585500D02* 339 | X242703498Y-28003500D01* 340 | X209232500Y-27585500D02* 341 | X242285498Y-27585500D01* 342 | X280860500Y-28003500D02* 343 | X281051000Y-27813000D01* 344 | X245110000Y-28003500D02* 345 | X280860500Y-28003500D01* 346 | M02* 347 | -------------------------------------------------------------------------------- /hardware/kicad/mcu-eight.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | LIBS:Untitled-cache 3 | EELAYER 30 0 4 | EELAYER END 5 | $Descr A4 11693 8268 6 | encoding utf-8 7 | Sheet 1 1 8 | Title "" 9 | Date "" 10 | Rev "" 11 | Comp "" 12 | Comment1 "" 13 | Comment2 "" 14 | Comment3 "" 15 | Comment4 "" 16 | $EndDescr 17 | $Comp 18 | L Connector:Conn_01x07_Female S1 19 | U 1 1 5DC05E08 20 | P 5050 2650 21 | F 0 "S1" V 5215 2630 50 0000 C CNN 22 | F 1 "Screen 1" V 5124 2630 50 0000 C CNN 23 | F 2 "Untitled:display-spi" H 5050 2650 50 0001 C CNN 24 | F 3 "~" H 5050 2650 50 0001 C CNN 25 | 1 5050 2650 26 | 0 -1 -1 0 27 | $EndComp 28 | $Comp 29 | L Connector:Conn_01x07_Female S2 30 | U 1 1 5DC076E7 31 | P 5800 2650 32 | F 0 "S2" V 5965 2630 50 0000 C CNN 33 | F 1 "Screen 2" V 5874 2630 50 0000 C CNN 34 | F 2 "Untitled:display-spi" H 5800 2650 50 0001 C CNN 35 | F 3 "~" H 5800 2650 50 0001 C CNN 36 | 1 5800 2650 37 | 0 -1 -1 0 38 | $EndComp 39 | $Comp 40 | L Connector:Conn_01x07_Female S3 41 | U 1 1 5DC2A3C6 42 | P 6550 2650 43 | F 0 "S3" V 6715 2630 50 0000 C CNN 44 | F 1 "Screen 3" V 6624 2630 50 0000 C CNN 45 | F 2 "Untitled:display-spi" H 6550 2650 50 0001 C CNN 46 | F 3 "~" H 6550 2650 50 0001 C CNN 47 | 1 6550 2650 48 | 0 -1 -1 0 49 | $EndComp 50 | $Comp 51 | L Connector:Conn_01x07_Female S4 52 | U 1 1 5DC2A3CC 53 | P 7300 2650 54 | F 0 "S4" V 7465 2630 50 0000 C CNN 55 | F 1 "Screen 4" V 7374 2630 50 0000 C CNN 56 | F 2 "Untitled:display-spi" H 7300 2650 50 0001 C CNN 57 | F 3 "~" H 7300 2650 50 0001 C CNN 58 | 1 7300 2650 59 | 0 -1 -1 0 60 | $EndComp 61 | $Comp 62 | L Connector:Conn_01x07_Female S5 63 | U 1 1 5DC35800 64 | P 8050 2650 65 | F 0 "S5" V 8215 2630 50 0000 C CNN 66 | F 1 "Screen 5" V 8124 2630 50 0000 C CNN 67 | F 2 "Untitled:display-spi" H 8050 2650 50 0001 C CNN 68 | F 3 "~" H 8050 2650 50 0001 C CNN 69 | 1 8050 2650 70 | 0 -1 -1 0 71 | $EndComp 72 | $Comp 73 | L Connector:Conn_01x07_Female S6 74 | U 1 1 5DC35806 75 | P 8800 2650 76 | F 0 "S6" V 8965 2630 50 0000 C CNN 77 | F 1 "Screen 6" V 8874 2630 50 0000 C CNN 78 | F 2 "Untitled:display-spi" H 8800 2650 50 0001 C CNN 79 | F 3 "~" H 8800 2650 50 0001 C CNN 80 | 1 8800 2650 81 | 0 -1 -1 0 82 | $EndComp 83 | $Comp 84 | L Connector:Conn_01x07_Female S7 85 | U 1 1 5DC3580C 86 | P 9550 2650 87 | F 0 "S7" V 9715 2630 50 0000 C CNN 88 | F 1 "Screen 7" V 9624 2630 50 0000 C CNN 89 | F 2 "Untitled:display-spi" H 9550 2650 50 0001 C CNN 90 | F 3 "~" H 9550 2650 50 0001 C CNN 91 | 1 9550 2650 92 | 0 -1 -1 0 93 | $EndComp 94 | $Comp 95 | L Connector:Conn_01x07_Female S8 96 | U 1 1 5DC35812 97 | P 10300 2650 98 | F 0 "S8" V 10465 2630 50 0000 C CNN 99 | F 1 "Screen 8" V 10374 2630 50 0000 C CNN 100 | F 2 "Untitled:display-spi" H 10300 2650 50 0001 C CNN 101 | F 3 "~" H 10300 2650 50 0001 C CNN 102 | 1 10300 2650 103 | 0 -1 -1 0 104 | $EndComp 105 | Wire Wire Line 106 | 4750 2850 4750 3050 107 | Wire Wire Line 108 | 4750 3050 5500 3050 109 | Wire Wire Line 110 | 5500 3050 5500 2850 111 | Wire Wire Line 112 | 5500 3050 6250 3050 113 | Wire Wire Line 114 | 6250 3050 6250 2850 115 | Connection ~ 5500 3050 116 | Wire Wire Line 117 | 6250 3050 7000 3050 118 | Wire Wire Line 119 | 7000 3050 7000 2850 120 | Connection ~ 6250 3050 121 | Wire Wire Line 122 | 7000 3050 7750 3050 123 | Connection ~ 7000 3050 124 | Wire Wire Line 125 | 7750 3050 7750 2850 126 | Wire Wire Line 127 | 7750 3050 8500 3050 128 | Wire Wire Line 129 | 8500 3050 8500 2850 130 | Connection ~ 7750 3050 131 | Wire Wire Line 132 | 8500 3050 9250 3050 133 | Wire Wire Line 134 | 9250 3050 9250 2850 135 | Connection ~ 8500 3050 136 | Wire Wire Line 137 | 9250 3050 10000 3050 138 | Wire Wire Line 139 | 10000 3050 10000 2850 140 | Connection ~ 9250 3050 141 | Wire Wire Line 142 | 4850 3200 5600 3200 143 | Wire Wire Line 144 | 5600 3200 6350 3200 145 | Connection ~ 5600 3200 146 | Wire Wire Line 147 | 6350 3200 7100 3200 148 | Connection ~ 6350 3200 149 | Wire Wire Line 150 | 7100 3200 7850 3200 151 | Connection ~ 7100 3200 152 | Wire Wire Line 153 | 7850 3200 8600 3200 154 | Connection ~ 7850 3200 155 | Wire Wire Line 156 | 8600 3200 9350 3200 157 | Connection ~ 8600 3200 158 | Wire Wire Line 159 | 9350 3200 10100 3200 160 | Connection ~ 9350 3200 161 | Wire Wire Line 162 | 4950 3350 5700 3350 163 | Wire Wire Line 164 | 5700 3350 6450 3350 165 | Connection ~ 5700 3350 166 | Wire Wire Line 167 | 6450 3350 7200 3350 168 | Connection ~ 6450 3350 169 | Wire Wire Line 170 | 7200 3350 7950 3350 171 | Connection ~ 7200 3350 172 | Wire Wire Line 173 | 7950 3350 8700 3350 174 | Connection ~ 7950 3350 175 | Wire Wire Line 176 | 8700 3350 9450 3350 177 | Connection ~ 8700 3350 178 | Wire Wire Line 179 | 9450 3350 10200 3350 180 | Connection ~ 9450 3350 181 | Wire Wire Line 182 | 5050 3500 5800 3500 183 | Wire Wire Line 184 | 5800 3500 6550 3500 185 | Connection ~ 5800 3500 186 | Wire Wire Line 187 | 6550 3500 7300 3500 188 | Connection ~ 6550 3500 189 | Wire Wire Line 190 | 7300 3500 8050 3500 191 | Connection ~ 7300 3500 192 | Wire Wire Line 193 | 8050 3500 8800 3500 194 | Connection ~ 8050 3500 195 | Wire Wire Line 196 | 8800 3500 9550 3500 197 | Connection ~ 8800 3500 198 | Wire Wire Line 199 | 9550 3500 10300 3500 200 | Connection ~ 9550 3500 201 | Wire Wire Line 202 | 10400 3650 9650 3650 203 | Wire Wire Line 204 | 9650 3650 8900 3650 205 | Connection ~ 9650 3650 206 | Wire Wire Line 207 | 8900 3650 8150 3650 208 | Connection ~ 8900 3650 209 | Wire Wire Line 210 | 8150 3650 7400 3650 211 | Connection ~ 8150 3650 212 | Wire Wire Line 213 | 7400 3650 6650 3650 214 | Connection ~ 7400 3650 215 | Wire Wire Line 216 | 5900 3650 6650 3650 217 | Connection ~ 6650 3650 218 | Wire Wire Line 219 | 5900 3650 5150 3650 220 | Connection ~ 5900 3650 221 | Wire Wire Line 222 | 5250 3800 6000 3800 223 | Wire Wire Line 224 | 6000 3800 6750 3800 225 | Connection ~ 6000 3800 226 | Wire Wire Line 227 | 6750 3800 7500 3800 228 | Connection ~ 6750 3800 229 | Wire Wire Line 230 | 7500 3800 8250 3800 231 | Connection ~ 7500 3800 232 | Wire Wire Line 233 | 8250 3800 9000 3800 234 | Connection ~ 8250 3800 235 | Connection ~ 9000 3800 236 | Wire Wire Line 237 | 9000 3800 9750 3800 238 | Wire Wire Line 239 | 9750 3800 10500 3800 240 | Connection ~ 9750 3800 241 | Text Label 2650 2450 2 50 ~ 0 242 | 5V 243 | Text Label 2650 2650 2 50 ~ 0 244 | 3v3 245 | Text Label 2650 2750 2 50 ~ 0 246 | B10 247 | Text Label 2650 2850 2 50 ~ 0 248 | B2 249 | Text Label 2650 2950 2 50 ~ 0 250 | B1 251 | Text Label 2650 3050 2 50 ~ 0 252 | B0 253 | Text Label 2650 3150 2 50 ~ 0 254 | A7 255 | Text Label 2650 3250 2 50 ~ 0 256 | A6 257 | Text Label 2650 3350 2 50 ~ 0 258 | A5 259 | Text Label 2650 3450 2 50 ~ 0 260 | A4 261 | Text Label 2650 3550 2 50 ~ 0 262 | A3 263 | Text Label 2650 3650 2 50 ~ 0 264 | A2 265 | Text Label 2650 3750 2 50 ~ 0 266 | A1 267 | Text Label 2650 3850 2 50 ~ 0 268 | A0 269 | Text GLabel 2750 2550 2 50 Input ~ 0 270 | GND 271 | Text GLabel 2750 2650 2 50 Input ~ 0 272 | 3v3 273 | Text Label 2650 2550 2 50 ~ 0 274 | GND 275 | Text GLabel 4500 3050 0 50 Input ~ 0 276 | GND 277 | Text GLabel 4500 3200 0 50 Input ~ 0 278 | 3v3 279 | Wire Wire Line 280 | 4500 3200 4850 3200 281 | Connection ~ 4850 3200 282 | Wire Wire Line 283 | 4500 3050 4750 3050 284 | Connection ~ 4750 3050 285 | Text GLabel 4500 3350 0 50 Input ~ 0 286 | SPI_CLK 287 | Text GLabel 4500 3500 0 50 Input ~ 0 288 | SPI_MOSI 289 | Text GLabel 4500 3650 0 50 Input ~ 0 290 | D_RES 291 | Text GLabel 4500 3800 0 50 Input ~ 0 292 | D_DC# 293 | Wire Wire Line 294 | 4850 2850 4850 3200 295 | Wire Wire Line 296 | 4950 2850 4950 3350 297 | Wire Wire Line 298 | 5050 2850 5050 3500 299 | Wire Wire Line 300 | 5150 2850 5150 3650 301 | Wire Wire Line 302 | 5250 2850 5250 3800 303 | Wire Wire Line 304 | 5600 2850 5600 3200 305 | Wire Wire Line 306 | 5700 2850 5700 3350 307 | Wire Wire Line 308 | 5800 2850 5800 3500 309 | Wire Wire Line 310 | 5900 2850 5900 3650 311 | Wire Wire Line 312 | 6000 2850 6000 3800 313 | Wire Wire Line 314 | 6350 2850 6350 3200 315 | Wire Wire Line 316 | 6450 2850 6450 3350 317 | Wire Wire Line 318 | 6550 2850 6550 3500 319 | Wire Wire Line 320 | 6650 2850 6650 3650 321 | Wire Wire Line 322 | 6750 2850 6750 3800 323 | Wire Wire Line 324 | 7100 2850 7100 3200 325 | Wire Wire Line 326 | 7200 2850 7200 3350 327 | Wire Wire Line 328 | 7300 2850 7300 3500 329 | Wire Wire Line 330 | 7400 2850 7400 3650 331 | Wire Wire Line 332 | 7500 2850 7500 3800 333 | Wire Wire Line 334 | 7850 2850 7850 3200 335 | Wire Wire Line 336 | 7950 2850 7950 3350 337 | Wire Wire Line 338 | 8050 2850 8050 3500 339 | Wire Wire Line 340 | 8150 2850 8150 3650 341 | Wire Wire Line 342 | 8250 2850 8250 3800 343 | Wire Wire Line 344 | 8600 2850 8600 3200 345 | Wire Wire Line 346 | 8700 2850 8700 3350 347 | Wire Wire Line 348 | 8800 2850 8800 3500 349 | Wire Wire Line 350 | 8900 2850 8900 3650 351 | Wire Wire Line 352 | 9000 2850 9000 3800 353 | Wire Wire Line 354 | 9350 2850 9350 3200 355 | Wire Wire Line 356 | 9450 2850 9450 3350 357 | Wire Wire Line 358 | 9550 2850 9550 3500 359 | Wire Wire Line 360 | 9650 2850 9650 3650 361 | Wire Wire Line 362 | 9750 2850 9750 3800 363 | Wire Wire Line 364 | 10100 2850 10100 3200 365 | Wire Wire Line 366 | 10200 2850 10200 3350 367 | Wire Wire Line 368 | 10300 2850 10300 3500 369 | Wire Wire Line 370 | 10400 2850 10400 3650 371 | Wire Wire Line 372 | 10500 2850 10500 3800 373 | Wire Wire Line 374 | 4500 3350 4950 3350 375 | Connection ~ 4950 3350 376 | Wire Wire Line 377 | 4500 3500 5050 3500 378 | Connection ~ 5050 3500 379 | Wire Wire Line 380 | 4500 3650 5150 3650 381 | Connection ~ 5150 3650 382 | Wire Wire Line 383 | 4500 3800 5250 3800 384 | Connection ~ 5250 3800 385 | Text GLabel 2750 3350 2 50 Input ~ 0 386 | SPI_CLK 387 | Text GLabel 2750 3150 2 50 Input ~ 0 388 | SPI_MOSI 389 | Text GLabel 2750 3050 2 50 Input ~ 0 390 | D_RES 391 | Text GLabel 2750 2950 2 50 Input ~ 0 392 | D_DC# 393 | Wire Wire Line 394 | 2750 3350 2400 3350 395 | Wire Wire Line 396 | 2750 3150 2400 3150 397 | Wire Wire Line 398 | 2750 3050 2400 3050 399 | Wire Wire Line 400 | 2750 2950 2400 2950 401 | Wire Wire Line 402 | 2750 2650 2400 2650 403 | Wire Wire Line 404 | 2750 2550 2400 2550 405 | Text GLabel 5350 3950 3 50 Input ~ 0 406 | CS1 407 | Text GLabel 6100 3950 3 50 Input ~ 0 408 | CS2 409 | Text GLabel 6850 3950 3 50 Input ~ 0 410 | CS3 411 | Text GLabel 7600 3950 3 50 Input ~ 0 412 | CS4 413 | Text GLabel 8350 3950 3 50 Input ~ 0 414 | CS5 415 | Text GLabel 9100 3950 3 50 Input ~ 0 416 | CS6 417 | Text GLabel 9850 3950 3 50 Input ~ 0 418 | CS7 419 | Text GLabel 10600 3950 3 50 Input ~ 0 420 | CS8 421 | Wire Wire Line 422 | 5350 2850 5350 3950 423 | Wire Wire Line 424 | 6100 2850 6100 3950 425 | Wire Wire Line 426 | 6850 3950 6850 2850 427 | Wire Wire Line 428 | 7600 2850 7600 3950 429 | Wire Wire Line 430 | 8350 3950 8350 2850 431 | Wire Wire Line 432 | 9100 3950 9100 2850 433 | Wire Wire Line 434 | 9850 3950 9850 2850 435 | Wire Wire Line 436 | 10600 2850 10600 3950 437 | Text GLabel 1500 3350 0 50 Input ~ 0 438 | CS1 439 | Text GLabel 1500 3450 0 50 Input ~ 0 440 | CS2 441 | Text GLabel 1500 3550 0 50 Input ~ 0 442 | CS3 443 | Text GLabel 1500 3650 0 50 Input ~ 0 444 | CS4 445 | Text GLabel 1500 3750 0 50 Input ~ 0 446 | CS5 447 | Text GLabel 1500 3850 0 50 Input ~ 0 448 | CS6 449 | Text GLabel 1500 3950 0 50 Input ~ 0 450 | CS7 451 | Text GLabel 1500 4050 0 50 Input ~ 0 452 | CS8 453 | Text Label 1800 2550 2 50 ~ 0 454 | B13 455 | Text Label 1800 2750 2 50 ~ 0 456 | B15 457 | Text Label 1800 2850 2 50 ~ 0 458 | A8 459 | Text Label 1800 2950 2 50 ~ 0 460 | A9 461 | Text Label 1800 3050 2 50 ~ 0 462 | A10 463 | Text Label 1800 3250 2 50 ~ 0 464 | A12 465 | Text Label 1800 3350 2 50 ~ 0 466 | A15 467 | Text Label 1800 3450 2 50 ~ 0 468 | B3 469 | Text Label 1800 3550 2 50 ~ 0 470 | B4 471 | Text Label 1800 3650 2 50 ~ 0 472 | B5 473 | Text Label 1800 3750 2 50 ~ 0 474 | B6 475 | Text Label 1800 3850 2 50 ~ 0 476 | B7 477 | Text Label 1800 3950 2 50 ~ 0 478 | B8 479 | Text Label 1800 4050 2 50 ~ 0 480 | B9 481 | Text Label 1800 2650 2 50 ~ 0 482 | B14 483 | Text Label 1800 3150 2 50 ~ 0 484 | A11 485 | Text Label 1800 2450 2 50 ~ 0 486 | B12 487 | Wire Wire Line 488 | 1900 4050 1500 4050 489 | Wire Wire Line 490 | 1900 3950 1500 3950 491 | Wire Wire Line 492 | 1900 3850 1500 3850 493 | Wire Wire Line 494 | 1900 3750 1500 3750 495 | Wire Wire Line 496 | 1900 3650 1500 3650 497 | Wire Wire Line 498 | 1900 3550 1500 3550 499 | Wire Wire Line 500 | 1900 3450 1500 3450 501 | Wire Wire Line 502 | 1900 3350 1500 3350 503 | $Comp 504 | L Connector_Generic:Conn_02x20_Counter_Clockwise U1 505 | U 1 1 5DFF7356 506 | P 2100 3350 507 | F 0 "U1" H 2150 4467 50 0000 C CNN 508 | F 1 "MCU" H 2150 4376 50 0000 C CNN 509 | F 2 "Untitled:YAAJ_BohPill" H 2100 3350 50 0001 C CNN 510 | F 3 "~" H 2100 3350 50 0001 C CNN 511 | 1 2100 3350 512 | 1 0 0 -1 513 | $EndComp 514 | $EndSCHEMATC 515 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-F_Cu.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.4-0-10_14)* 2 | G04 #@! TF.CreationDate,2020-04-04T17:45:35+02:00* 3 | G04 #@! TF.ProjectId,Untitled,556e7469-746c-4656-942e-6b696361645f,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Copper,L1,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.4-0-10_14)) date 2020-04-04 17:45:35* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10O,1.300000X3.000000*% 14 | %ADD11O,1.700000X1.700000*% 15 | %ADD12R,1.700000X1.700000*% 16 | %ADD13C,0.800000*% 17 | %ADD14C,0.250000*% 18 | G04 APERTURE END LIST* 19 | D10* 20 | X110680500Y-32075120D03* 21 | X110680500Y-16827500D03* 22 | X113220500Y-32075120D03* 23 | X113220500Y-16827500D03* 24 | X115760500Y-32067500D03* 25 | X115760500Y-16835120D03* 26 | X118300500Y-32067500D03* 27 | X118300500Y-16827500D03* 28 | X120840500Y-32067500D03* 29 | X120840500Y-16827500D03* 30 | X123380500Y-32067500D03* 31 | X123380500Y-16827500D03* 32 | X125920500Y-32067500D03* 33 | X125920500Y-16827500D03* 34 | X128460500Y-32067500D03* 35 | X128460500Y-16827500D03* 36 | X131000500Y-32075120D03* 37 | X131000500Y-16827500D03* 38 | X133540500Y-32067500D03* 39 | X133540500Y-16827500D03* 40 | X136080500Y-32067500D03* 41 | X136080500Y-16827500D03* 42 | X138620500Y-32067500D03* 43 | X138620500Y-16827500D03* 44 | X141160500Y-32067500D03* 45 | X141160500Y-16835120D03* 46 | X143700500Y-32067500D03* 47 | X143700500Y-16827500D03* 48 | X146240500Y-32067500D03* 49 | X146240500Y-16827500D03* 50 | X148780500Y-32067500D03* 51 | X148780500Y-16827500D03* 52 | X151320500Y-32067500D03* 53 | X151320500Y-16827500D03* 54 | X153860500Y-32075120D03* 55 | X153860500Y-16827500D03* 56 | X156400500Y-32067500D03* 57 | X156400500Y-16827500D03* 58 | X158940500Y-32067500D03* 59 | X158940500Y-16827500D03* 60 | D11* 61 | X19057525Y-38788321D03* 62 | X21597525Y-38788321D03* 63 | X24137525Y-38788321D03* 64 | X26677525Y-38788321D03* 65 | X29217525Y-38788321D03* 66 | X31757525Y-38788321D03* 67 | D12* 68 | X34297525Y-38788321D03* 69 | D11* 70 | X55057525Y-38788321D03* 71 | X57597525Y-38788321D03* 72 | X60137525Y-38788321D03* 73 | X62677525Y-38788321D03* 74 | X65217525Y-38788321D03* 75 | X67757525Y-38788321D03* 76 | D12* 77 | X70297525Y-38788321D03* 78 | D11* 79 | X91057525Y-38788321D03* 80 | X93597525Y-38788321D03* 81 | X96137525Y-38788321D03* 82 | X98677525Y-38788321D03* 83 | X101217525Y-38788321D03* 84 | X103757525Y-38788321D03* 85 | D12* 86 | X106297525Y-38788321D03* 87 | D11* 88 | X271057525Y-38788321D03* 89 | X273597525Y-38788321D03* 90 | X276137525Y-38788321D03* 91 | X278677525Y-38788321D03* 92 | X281217525Y-38788321D03* 93 | X283757525Y-38788321D03* 94 | D12* 95 | X286297525Y-38788321D03* 96 | D11* 97 | X235057525Y-38788321D03* 98 | X237597525Y-38788321D03* 99 | X240137525Y-38788321D03* 100 | X242677525Y-38788321D03* 101 | X245217525Y-38788321D03* 102 | X247757525Y-38788321D03* 103 | D12* 104 | X250297525Y-38788321D03* 105 | D11* 106 | X199057525Y-38788321D03* 107 | X201597525Y-38788321D03* 108 | X204137525Y-38788321D03* 109 | X206677525Y-38788321D03* 110 | X209217525Y-38788321D03* 111 | X211757525Y-38788321D03* 112 | D12* 113 | X214297525Y-38788321D03* 114 | D11* 115 | X161861500Y-38925500D03* 116 | X164401500Y-38925500D03* 117 | X166941500Y-38925500D03* 118 | X169481500Y-38925500D03* 119 | X172021500Y-38925500D03* 120 | X174561500Y-38925500D03* 121 | D12* 122 | X177101500Y-38925500D03* 123 | D11* 124 | X127057525Y-38788321D03* 125 | X129597525Y-38788321D03* 126 | X132137525Y-38788321D03* 127 | X134677525Y-38788321D03* 128 | X137217525Y-38788321D03* 129 | X139757525Y-38788321D03* 130 | D12* 131 | X142297525Y-38788321D03* 132 | D13* 133 | X34297525Y-29583475D03* 134 | X70358000Y-29527500D03* 135 | X106235500Y-29527500D03* 136 | X142557500Y-29527500D03* 137 | X177101500Y-29554000D03* 138 | X214312500Y-29718000D03* 139 | X250444000Y-29591000D03* 140 | X286258000Y-30035500D03* 141 | X31813500Y-28511500D03* 142 | X67754500Y-28575000D03* 143 | X103695500Y-28638500D03* 144 | X139827000Y-28638500D03* 145 | X174625000Y-28829000D03* 146 | X211772500Y-28765500D03* 147 | X247650000Y-28765500D03* 148 | X283781500Y-28892500D03* 149 | X21590000Y-24257000D03* 150 | X57594500Y-24193500D03* 151 | X93609163Y-24521163D03* 152 | X123444000Y-24701500D03* 153 | X164528500Y-24828500D03* 154 | X201612500Y-24955500D03* 155 | X237617000Y-25019000D03* 156 | X273558000Y-24955500D03* 157 | X24130000Y-25400000D03* 158 | X60198000Y-25400000D03* 159 | X96139000Y-25400000D03* 160 | X125901501Y-25799999D03* 161 | X166941500Y-25717500D03* 162 | X204044499Y-26117499D03* 163 | X240157000Y-26098500D03* 164 | X276161500Y-26162000D03* 165 | X26733500Y-26416000D03* 166 | X62674500Y-26479500D03* 167 | X98679000Y-26524999D03* 168 | X128460500Y-26543000D03* 169 | X169481500Y-26842499D03* 170 | X206629000Y-26860500D03* 171 | X242697000Y-26924000D03* 172 | X278638000Y-26987500D03* 173 | X29344525Y-27551475D03* 174 | X65214500Y-27495500D03* 175 | X101219000Y-27495500D03* 176 | X133540500Y-27667999D03* 177 | X172021500Y-27567499D03* 178 | X209232500Y-27585500D03* 179 | X245110000Y-28003500D03* 180 | X281051000Y-28067000D03* 181 | D14* 182 | X34297525Y-38788321D02* 183 | X34297525Y-29583475D01* 184 | X70358000Y-38727846D02* 185 | X70297525Y-38788321D01* 186 | X70358000Y-29527500D02* 187 | X70358000Y-38727846D01* 188 | X106235500Y-38726296D02* 189 | X106297525Y-38788321D01* 190 | X106235500Y-29527500D02* 191 | X106235500Y-38726296D01* 192 | X142557500Y-38528346D02* 193 | X142297525Y-38788321D01* 194 | X142557500Y-29527500D02* 195 | X142557500Y-38528346D01* 196 | X177101500Y-29554000D02* 197 | X177101500Y-38925500D01* 198 | X214312500Y-38773346D02* 199 | X214297525Y-38788321D01* 200 | X214312500Y-29718000D02* 201 | X214312500Y-38773346D01* 202 | X250444000Y-38641846D02* 203 | X250297525Y-38788321D01* 204 | X250444000Y-29591000D02* 205 | X250444000Y-38641846D01* 206 | X286258000Y-38748796D02* 207 | X286297525Y-38788321D01* 208 | X286258000Y-30035500D02* 209 | X286258000Y-38748796D01* 210 | X106235500Y-29527500D02* 211 | X112649000Y-29527500D01* 212 | X113220500Y-30099000D02* 213 | X113220500Y-32075120D01* 214 | X112649000Y-29527500D02* 215 | X113220500Y-30099000D01* 216 | X31757525Y-28567475D02* 217 | X31813500Y-28511500D01* 218 | X31757525Y-38788321D02* 219 | X31757525Y-28567475D01* 220 | X67754500Y-38785296D02* 221 | X67757525Y-38788321D01* 222 | X67754500Y-28575000D02* 223 | X67754500Y-38785296D01* 224 | X103695500Y-38726296D02* 225 | X103757525Y-38788321D01* 226 | X103695500Y-28638500D02* 227 | X103695500Y-38726296D01* 228 | X139827000Y-38718846D02* 229 | X139757525Y-38788321D01* 230 | X139827000Y-28638500D02* 231 | X139827000Y-38718846D01* 232 | X174625000Y-38862000D02* 233 | X174561500Y-38925500D01* 234 | X174625000Y-28829000D02* 235 | X174625000Y-38862000D01* 236 | X211772500Y-38773346D02* 237 | X211757525Y-38788321D01* 238 | X211772500Y-28765500D02* 239 | X211772500Y-38773346D01* 240 | X247650000Y-38680796D02* 241 | X247757525Y-38788321D01* 242 | X247650000Y-28765500D02* 243 | X247650000Y-38680796D01* 244 | X283781500Y-38764346D02* 245 | X283757525Y-38788321D01* 246 | X283781500Y-28892500D02* 247 | X283781500Y-38764346D01* 248 | X115760500Y-31217500D02* 249 | X115760500Y-32067500D01* 250 | X113181500Y-28638500D02* 251 | X115760500Y-31217500D01* 252 | X103695500Y-28638500D02* 253 | X113181500Y-28638500D01* 254 | X21597525Y-24264525D02* 255 | X21590000Y-24257000D01* 256 | X21597525Y-38788321D02* 257 | X21597525Y-24264525D01* 258 | X57594500Y-38785296D02* 259 | X57597525Y-38788321D01* 260 | X57594500Y-24193500D02* 261 | X57594500Y-38785296D01* 262 | X93609163Y-38776683D02* 263 | X93597525Y-38788321D01* 264 | X93609163Y-24521163D02* 265 | X93609163Y-38776683D01* 266 | X123444000Y-32004000D02* 267 | X123380500Y-32067500D01* 268 | X123444000Y-24701500D02* 269 | X123444000Y-32004000D01* 270 | X164528500Y-38798500D02* 271 | X164401500Y-38925500D01* 272 | X164528500Y-24828500D02* 273 | X164528500Y-38798500D01* 274 | X201612500Y-38773346D02* 275 | X201597525Y-38788321D01* 276 | X201612500Y-24955500D02* 277 | X201612500Y-38773346D01* 278 | X237617000Y-25019000D02* 279 | X237617000Y-39433500D01* 280 | X273558000Y-38748796D02* 281 | X273597525Y-38788321D01* 282 | X273558000Y-24955500D02* 283 | X273558000Y-38748796D01* 284 | X129251321Y-38788321D02* 285 | X129597525Y-38788321D01* 286 | X123380500Y-32917500D02* 287 | X129251321Y-38788321D01* 288 | X123380500Y-32067500D02* 289 | X123380500Y-32917500D01* 290 | X24137525Y-25407525D02* 291 | X24130000Y-25400000D01* 292 | X24137525Y-38788321D02* 293 | X24137525Y-25407525D01* 294 | X60198000Y-38727846D02* 295 | X60137525Y-38788321D01* 296 | X60198000Y-25400000D02* 297 | X60198000Y-38727846D01* 298 | X96139000Y-38786846D02* 299 | X96137525Y-38788321D01* 300 | X96139000Y-25400000D02* 301 | X96139000Y-38786846D01* 302 | X125901501Y-32048501D02* 303 | X125920500Y-32067500D01* 304 | X125901501Y-25799999D02* 305 | X125901501Y-32048501D01* 306 | X166941500Y-25717500D02* 307 | X166941500Y-38925500D01* 308 | X204044499Y-38695295D02* 309 | X204137525Y-38788321D01* 310 | X204044499Y-26117499D02* 311 | X204044499Y-38695295D01* 312 | X240157000Y-38768846D02* 313 | X240137525Y-38788321D01* 314 | X240157000Y-26098500D02* 315 | X240157000Y-38768846D01* 316 | X276161500Y-38764346D02* 317 | X276137525Y-38788321D01* 318 | X276161500Y-26162000D02* 319 | X276161500Y-38764346D01* 320 | X125920500Y-32917500D02* 321 | X131791321Y-38788321D01* 322 | X131791321Y-38788321D02* 323 | X132137525Y-38788321D01* 324 | X125920500Y-32067500D02* 325 | X125920500Y-32917500D01* 326 | X26677525Y-26471975D02* 327 | X26733500Y-26416000D01* 328 | X26677525Y-38788321D02* 329 | X26677525Y-26471975D01* 330 | X62674500Y-38785296D02* 331 | X62677525Y-38788321D01* 332 | X62674500Y-26479500D02* 333 | X62674500Y-38785296D01* 334 | X98679000Y-38786846D02* 335 | X98677525Y-38788321D01* 336 | X98679000Y-26524999D02* 337 | X98679000Y-38786846D01* 338 | X128460500Y-26543000D02* 339 | X128460500Y-32067500D01* 340 | X128460500Y-32917500D02* 341 | X134331321Y-38788321D01* 342 | X134331321Y-38788321D02* 343 | X134677525Y-38788321D01* 344 | X128460500Y-32067500D02* 345 | X128460500Y-32917500D01* 346 | X169481500Y-26842499D02* 347 | X169481500Y-38925500D01* 348 | X206629000Y-38739796D02* 349 | X206677525Y-38788321D01* 350 | X206629000Y-26860500D02* 351 | X206629000Y-38739796D01* 352 | X242697000Y-38768846D02* 353 | X242677525Y-38788321D01* 354 | X242697000Y-26924000D02* 355 | X242697000Y-38768846D01* 356 | X278638000Y-38748796D02* 357 | X278677525Y-38788321D01* 358 | X278638000Y-27495500D02* 359 | X278638000Y-26987500D01* 360 | X278638000Y-27305000D02* 361 | X278638000Y-27495500D01* 362 | X278638000Y-27495500D02* 363 | X278638000Y-38748796D01* 364 | X29217525Y-27678475D02* 365 | X29344525Y-27551475D01* 366 | X29217525Y-38788321D02* 367 | X29217525Y-27678475D01* 368 | X65214500Y-38785296D02* 369 | X65217525Y-38788321D01* 370 | X65214500Y-27495500D02* 371 | X65214500Y-38785296D01* 372 | X101219000Y-38786846D02* 373 | X101217525Y-38788321D01* 374 | X101219000Y-27495500D02* 375 | X101219000Y-38786846D01* 376 | X133540500Y-27667999D02* 377 | X133540500Y-32067500D01* 378 | X133540500Y-35111296D02* 379 | X137217525Y-38788321D01* 380 | X133540500Y-32067500D02* 381 | X133540500Y-35111296D01* 382 | X172021500Y-27567499D02* 383 | X172021500Y-38925500D01* 384 | X209232500Y-38773346D02* 385 | X209217525Y-38788321D01* 386 | X209232500Y-27585500D02* 387 | X209232500Y-38773346D01* 388 | X245110000Y-38680796D02* 389 | X245217525Y-38788321D01* 390 | X245110000Y-28003500D02* 391 | X245110000Y-38680796D01* 392 | X281051000Y-38621796D02* 393 | X281217525Y-38788321D01* 394 | X281051000Y-27813000D02* 395 | X281051000Y-38621796D01* 396 | X133540500Y-17677500D02* 397 | X133540500Y-16827500D01* 398 | X131977500Y-19240500D02* 399 | X133540500Y-17677500D01* 400 | X19621500Y-19240500D02* 401 | X131977500Y-19240500D01* 402 | X19057525Y-19804475D02* 403 | X19621500Y-19240500D01* 404 | X19057525Y-38788321D02* 405 | X19057525Y-19804475D01* 406 | X55057525Y-38788321D02* 407 | X55057525Y-21020985D01* 408 | X136080500Y-17677500D02* 409 | X136080500Y-16827500D01* 410 | X134067490Y-19690510D02* 411 | X136080500Y-17677500D01* 412 | X56388000Y-19690510D02* 413 | X134067490Y-19690510D01* 414 | X55057525Y-21020985D02* 415 | X56388000Y-19690510D01* 416 | X91057525Y-38788321D02* 417 | X91057525Y-26047495D01* 418 | X136157480Y-20140520D02* 419 | X138620500Y-17677500D01* 420 | X96964500Y-20140520D02* 421 | X136157480Y-20140520D01* 422 | X138620500Y-17677500D02* 423 | X138620500Y-16827500D01* 424 | X91057525Y-26047495D02* 425 | X96964500Y-20140520D01* 426 | X138255090Y-20590530D02* 427 | X141160500Y-17685120D01* 428 | X121186822Y-37938322D02* 429 | X119865490Y-36616990D01* 430 | X126207526Y-37938322D02* 431 | X121186822Y-37938322D01* 432 | X141160500Y-17685120D02* 433 | X141160500Y-16835120D01* 434 | X125078470Y-20590530D02* 435 | X138255090Y-20590530D01* 436 | X119865490Y-25803510D02* 437 | X125078470Y-20590530D01* 438 | X119865490Y-36616990D02* 439 | X119865490Y-25803510D01* 440 | X127057525Y-38788321D02* 441 | X126207526Y-37938322D01* 442 | X161861500Y-21780500D02* 443 | X161861500Y-38925500D01* 444 | X160671530Y-20590530D02* 445 | X161861500Y-21780500D01* 446 | X145713530Y-20590530D02* 447 | X160671530Y-20590530D01* 448 | X143700500Y-18577500D02* 449 | X145713530Y-20590530D01* 450 | X143700500Y-16827500D02* 451 | X143700500Y-18577500D01* 452 | X199057525Y-24877025D02* 453 | X199057525Y-38788321D01* 454 | X194321020Y-20140520D02* 455 | X199057525Y-24877025D01* 456 | X148703520Y-20140520D02* 457 | X194321020Y-20140520D01* 458 | X146240500Y-17677500D02* 459 | X148703520Y-20140520D01* 460 | X146240500Y-16827500D02* 461 | X146240500Y-17677500D01* 462 | X235057525Y-27666525D02* 463 | X235057525Y-38788321D01* 464 | X227081510Y-19690510D02* 465 | X235057525Y-27666525D01* 466 | X150793510Y-19690510D02* 467 | X227081510Y-19690510D01* 468 | X148780500Y-17677500D02* 469 | X150793510Y-19690510D01* 470 | X148780500Y-16827500D02* 471 | X148780500Y-17677500D01* 472 | X271057525Y-38788321D02* 473 | X271057525Y-21502525D01* 474 | X151320500Y-17677500D02* 475 | X151320500Y-16827500D01* 476 | X152883500Y-19240500D02* 477 | X151320500Y-17677500D01* 478 | X268795500Y-19240500D02* 479 | X152883500Y-19240500D01* 480 | X271057525Y-21502525D02* 481 | X268795500Y-19240500D01* 482 | M02* 483 | -------------------------------------------------------------------------------- /src/font.c: -------------------------------------------------------------------------------- 1 | const unsigned char font[256][8] = { 2 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 3 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 4 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 5 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 6 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 7 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 8 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 9 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 10 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 11 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 12 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 13 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 14 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 15 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 16 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 17 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 18 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 19 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 20 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 21 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 22 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 23 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 24 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 25 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 26 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 27 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 28 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 29 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 30 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 31 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 32 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 33 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 34 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 35 | { 0x00, 0x00, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00 }, 36 | { 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00 }, 37 | { 0x28, 0xfe, 0x28, 0xfe, 0x28, 0x00, 0x00, 0x00 }, 38 | { 0x48, 0x54, 0xfe, 0x54, 0x24, 0x00, 0x00, 0x00 }, 39 | { 0x46, 0x26, 0x10, 0xc8, 0xc4, 0x00, 0x00, 0x00 }, 40 | { 0x6c, 0x92, 0xac, 0x40, 0xa0, 0x00, 0x00, 0x00 }, 41 | { 0x00, 0x00, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00 }, 42 | { 0x38, 0x44, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00 }, 43 | { 0x00, 0x00, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00 }, 44 | { 0x44, 0x28, 0xfe, 0x28, 0x44, 0x00, 0x00, 0x00 }, 45 | { 0x10, 0x10, 0x7c, 0x10, 0x10, 0x00, 0x00, 0x00 }, 46 | { 0x00, 0x80, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00 }, 47 | { 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00 }, 48 | { 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00 }, 49 | { 0x40, 0x20, 0x10, 0x08, 0x04, 0x00, 0x00, 0x00 }, 50 | { 0x7c, 0xa2, 0x92, 0x8a, 0x7c, 0x00, 0x00, 0x00 }, 51 | { 0x00, 0x84, 0xfe, 0x80, 0x00, 0x00, 0x00, 0x00 }, 52 | { 0xc4, 0xa2, 0x92, 0x92, 0x8c, 0x00, 0x00, 0x00 }, 53 | { 0x42, 0x82, 0x92, 0x9a, 0x66, 0x00, 0x00, 0x00 }, 54 | { 0x30, 0x28, 0x24, 0xfe, 0x20, 0x00, 0x00, 0x00 }, 55 | { 0x4e, 0x8a, 0x8a, 0x8a, 0x72, 0x00, 0x00, 0x00 }, 56 | { 0x78, 0x94, 0x92, 0x92, 0x62, 0x00, 0x00, 0x00 }, 57 | { 0x02, 0xe2, 0x12, 0x0a, 0x06, 0x00, 0x00, 0x00 }, 58 | { 0x6c, 0x92, 0x92, 0x92, 0x6c, 0x00, 0x00, 0x00 }, 59 | { 0x8c, 0x92, 0x92, 0x52, 0x3c, 0x00, 0x00, 0x00 }, 60 | { 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00 }, 61 | { 0x00, 0x80, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00 }, 62 | { 0x10, 0x28, 0x44, 0x82, 0x00, 0x00, 0x00, 0x00 }, 63 | { 0x28, 0x28, 0x28, 0x28, 0x28, 0x00, 0x00, 0x00 }, 64 | { 0x00, 0x82, 0x44, 0x28, 0x10, 0x00, 0x00, 0x00 }, 65 | { 0x04, 0x02, 0xb2, 0x0a, 0x04, 0x00, 0x00, 0x00 }, 66 | { 0x7c, 0x82, 0xba, 0xb2, 0x9c, 0x00, 0x00, 0x00 }, 67 | { 0xf8, 0x24, 0x22, 0x24, 0xf8, 0x00, 0x00, 0x00 }, 68 | { 0xfe, 0x92, 0x92, 0x92, 0x6c, 0x00, 0x00, 0x00 }, 69 | { 0x7c, 0x82, 0x82, 0x82, 0x44, 0x00, 0x00, 0x00 }, 70 | { 0xfe, 0x82, 0x82, 0x82, 0x7c, 0x00, 0x00, 0x00 }, 71 | { 0xfe, 0x92, 0x92, 0x92, 0x82, 0x00, 0x00, 0x00 }, 72 | { 0xfe, 0x12, 0x12, 0x12, 0x02, 0x00, 0x00, 0x00 }, 73 | { 0x7c, 0x82, 0x82, 0xa2, 0xe2, 0x00, 0x00, 0x00 }, 74 | { 0xfe, 0x10, 0x10, 0x10, 0xfe, 0x00, 0x00, 0x00 }, 75 | { 0x00, 0x82, 0xfe, 0x82, 0x00, 0x00, 0x00, 0x00 }, 76 | { 0x40, 0x80, 0x80, 0x80, 0x7e, 0x00, 0x00, 0x00 }, 77 | { 0xfe, 0x10, 0x28, 0x44, 0x82, 0x00, 0x00, 0x00 }, 78 | { 0xfe, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00 }, 79 | { 0xfe, 0x04, 0x18, 0x04, 0xfe, 0x00, 0x00, 0x00 }, 80 | { 0xfe, 0x08, 0x10, 0x20, 0xfe, 0x00, 0x00, 0x00 }, 81 | { 0x7c, 0x82, 0x82, 0x82, 0x7c, 0x00, 0x00, 0x00 }, 82 | { 0xfe, 0x12, 0x12, 0x12, 0x0c, 0x00, 0x00, 0x00 }, 83 | { 0x7c, 0x82, 0xa2, 0x42, 0xbc, 0x00, 0x00, 0x00 }, 84 | { 0xfe, 0x12, 0x32, 0x52, 0x8c, 0x00, 0x00, 0x00 }, 85 | { 0x4c, 0x92, 0x92, 0x92, 0x64, 0x00, 0x00, 0x00 }, 86 | { 0x02, 0x02, 0xfe, 0x02, 0x02, 0x00, 0x00, 0x00 }, 87 | { 0x7e, 0x80, 0x80, 0x80, 0x7e, 0x00, 0x00, 0x00 }, 88 | { 0x3e, 0x40, 0x80, 0x40, 0x3e, 0x00, 0x00, 0x00 }, 89 | { 0xfe, 0x40, 0x30, 0x40, 0xfe, 0x00, 0x00, 0x00 }, 90 | { 0xc6, 0x28, 0x10, 0x28, 0xc6, 0x00, 0x00, 0x00 }, 91 | { 0x06, 0x08, 0xf0, 0x08, 0x06, 0x00, 0x00, 0x00 }, 92 | { 0xc2, 0xa2, 0x92, 0x8a, 0x86, 0x00, 0x00, 0x00 }, 93 | { 0xfe, 0xfe, 0x82, 0x82, 0x82, 0x00, 0x00, 0x00 }, 94 | { 0x04, 0x08, 0x10, 0x20, 0x40, 0x00, 0x00, 0x00 }, 95 | { 0x82, 0x82, 0x82, 0xfe, 0xfe, 0x00, 0x00, 0x00 }, 96 | { 0x20, 0x10, 0x08, 0x10, 0x20, 0x00, 0x00, 0x00 }, 97 | { 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00 }, 98 | { 0x00, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00 }, 99 | { 0x70, 0x88, 0x88, 0x50, 0xf8, 0x00, 0x00, 0x00 }, 100 | { 0xfe, 0x50, 0x88, 0x88, 0x70, 0x00, 0x00, 0x00 }, 101 | { 0x00, 0x70, 0x88, 0x88, 0x88, 0x00, 0x00, 0x00 }, 102 | { 0x70, 0x88, 0x88, 0x50, 0xfe, 0x00, 0x00, 0x00 }, 103 | { 0x70, 0xa8, 0xa8, 0xa8, 0x30, 0x00, 0x00, 0x00 }, 104 | { 0x00, 0x10, 0xfc, 0x12, 0x00, 0x00, 0x00, 0x00 }, 105 | { 0x30, 0x48, 0x48, 0x50, 0xf8, 0x00, 0x00, 0x00 }, 106 | { 0xfe, 0x08, 0x08, 0x08, 0xf0, 0x00, 0x00, 0x00 }, 107 | { 0x00, 0x88, 0xfa, 0x80, 0x00, 0x00, 0x00, 0x00 }, 108 | { 0x00, 0x00, 0x00, 0xfa, 0x00, 0x00, 0x00, 0x00 }, 109 | { 0xfe, 0x20, 0x30, 0x48, 0x80, 0x00, 0x00, 0x00 }, 110 | { 0x00, 0x82, 0xfe, 0x80, 0x00, 0x00, 0x00, 0x00 }, 111 | { 0xf8, 0x08, 0xf0, 0x08, 0x08, 0xf0, 0x00, 0x00 }, 112 | { 0xf8, 0x08, 0x08, 0x08, 0xf0, 0x00, 0x00, 0x00 }, 113 | { 0x70, 0x88, 0x88, 0x88, 0x70, 0x00, 0x00, 0x00 }, 114 | { 0xf8, 0x50, 0x88, 0x88, 0x70, 0x00, 0x00, 0x00 }, 115 | { 0x70, 0x88, 0x88, 0x50, 0xf8, 0x00, 0x00, 0x00 }, 116 | { 0xf8, 0x10, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00 }, 117 | { 0x90, 0xa8, 0xa8, 0xa8, 0x48, 0x00, 0x00, 0x00 }, 118 | { 0x08, 0x08, 0xfe, 0x08, 0x08, 0x00, 0x00, 0x00 }, 119 | { 0x78, 0x80, 0x80, 0x80, 0xf8, 0x00, 0x00, 0x00 }, 120 | { 0x18, 0x60, 0x80, 0x60, 0x18, 0x00, 0x00, 0x00 }, 121 | { 0x78, 0x80, 0x78, 0x80, 0x80, 0x78, 0x00, 0x00 }, 122 | { 0x88, 0x50, 0x20, 0x50, 0x88, 0x00, 0x00, 0x00 }, 123 | { 0x00, 0x78, 0x40, 0x40, 0xf8, 0x00, 0x00, 0x00 }, 124 | { 0x88, 0xc8, 0xa8, 0x98, 0x88, 0x00, 0x00, 0x00 }, 125 | { 0x00, 0x10, 0x6c, 0x82, 0x82, 0x00, 0x00, 0x00 }, 126 | { 0x00, 0x00, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00 }, 127 | { 0x82, 0x82, 0x6c, 0x10, 0x00, 0x00, 0x00, 0x00 }, 128 | { 0x20, 0x10, 0x10, 0x10, 0x08, 0x00, 0x00, 0x00 }, 129 | { 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x00, 0x00 }, 130 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 131 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 132 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 133 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 134 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 135 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 136 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 137 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 138 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 139 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 140 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 141 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 142 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 143 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 144 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 145 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 146 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 147 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 148 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 149 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 150 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 151 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 152 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 153 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 154 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 155 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 156 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 157 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 158 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 159 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 160 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 161 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 162 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 163 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 164 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 165 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 166 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 167 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 168 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 169 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 170 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 171 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 172 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 173 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 174 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 175 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 176 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 177 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 178 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 179 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 180 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 181 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 182 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 183 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 184 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 185 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 186 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 187 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 188 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 189 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 190 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 191 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 192 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 193 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 194 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 195 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 196 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 197 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 198 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 199 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 200 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 201 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 202 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 203 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 204 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 205 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 206 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 207 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 208 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 209 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 210 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 211 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 212 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 213 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 214 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 215 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 216 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 217 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 218 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 219 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 220 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 221 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 222 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 223 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 224 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 225 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 226 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 227 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 228 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 229 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 230 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 231 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 232 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 233 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 234 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 235 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 236 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 237 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 238 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 239 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 240 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 241 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 242 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 243 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 244 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 245 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 246 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 247 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 248 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 249 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 250 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 251 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 252 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 253 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 254 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 255 | { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 256 | { 0x00, 0x04, 0x06, 0x33, 0x7a, 0x7a, 0xf4, 0xd0 }, 257 | { 0xa0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00 }, 258 | }; 259 | -------------------------------------------------------------------------------- /src/usb-midi.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the unicore-mx project. 3 | * 4 | * Copyright (C) 2014 Daniel Thompson 5 | * Copyright (C) 2015 Kuldeep Singh Dhaka 6 | * 7 | * This library is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU Lesser General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This library is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU Lesser General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU Lesser General Public License 18 | * along with this library. If not, see . 19 | */ 20 | 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | 27 | void usb_midi_received_callback(const uint8_t * buf, size_t len); 28 | 29 | /* 30 | * All references in this file come from Universal Serial Bus Device Class 31 | * Definition for MIDI Devices, release 1.0. 32 | */ 33 | 34 | /* 35 | * Table B-1: MIDI Adapter Device Descriptor 36 | */ 37 | static const struct usb_device_descriptor dev_desc = { 38 | .bLength = USB_DT_DEVICE_SIZE, 39 | .bDescriptorType = USB_DT_DEVICE, 40 | .bcdUSB = 0x0200, /* was 0x0110 in Table B-1 example descriptor */ 41 | .bDeviceClass = 0, /* device defined at interface level */ 42 | .bDeviceSubClass = 0, 43 | .bDeviceProtocol = 0, 44 | .bMaxPacketSize0 = 64, 45 | .idVendor = 0x6666, /* Prototype product vendor ID */ 46 | .idProduct = 0x5119, /* dd if=/dev/random bs=2 count=1 | hexdump */ 47 | .bcdDevice = 0x0100, 48 | .iManufacturer = 1, /* index to string desc */ 49 | .iProduct = 2, /* index to string desc */ 50 | .iSerialNumber = 0, 51 | .bNumConfigurations = 1 52 | }; 53 | 54 | static const struct usb_string_descriptor string_lang_list = { 55 | .bLength = USB_DT_STRING_SIZE(2), 56 | .bDescriptorType = USB_DT_STRING, 57 | .wData = { 58 | USB_LANGID_ENGLISH_UNITED_STATES, 59 | USB_LANGID_HINDI 60 | } 61 | }; 62 | 63 | /* string descriptor string_[0..5] generated using usb-string.py */ 64 | 65 | static const struct usb_string_descriptor string_0 = { 66 | .bLength = USB_DT_STRING_SIZE(10), 67 | .bDescriptorType = USB_DT_STRING, 68 | /* unicore-mx */ 69 | .wData = { 70 | 0x0075, 0x006e, 0x0069, 0x0063, 0x006f, 0x0072, 0x0065, 0x002d, 71 | 0x006d, 0x0078 72 | } 73 | }; 74 | 75 | static const struct usb_string_descriptor string_1 = { 76 | .bLength = USB_DT_STRING_SIZE(9), 77 | .bDescriptorType = USB_DT_STRING, 78 | /* MIDI Demo */ 79 | .wData = { 80 | 0x004d, 0x0049, 0x0044, 0x0049, 0x0020, 0x0044, 0x0065, 0x006d, 81 | 0x006f 82 | } 83 | }; 84 | 85 | /* 86 | * MIDI = मिडी 87 | * Demo, DEMO = नमूना 88 | */ 89 | 90 | static const struct usb_string_descriptor string_2 = { 91 | .bLength = USB_DT_STRING_SIZE(10), 92 | .bDescriptorType = USB_DT_STRING, 93 | /* यूनिकोर-मस */ 94 | .wData = { 95 | 0x092f, 0x0942, 0x0928, 0x093f, 0x0915, 0x094b, 0x0930, 0x002d, 96 | 0x092e, 0x0938 97 | } 98 | }; 99 | 100 | static const struct usb_string_descriptor string_3 = { 101 | .bLength = USB_DT_STRING_SIZE(10), 102 | .bDescriptorType = USB_DT_STRING, 103 | /* मिडी नमूना */ 104 | .wData = { 105 | 0x092e, 0x093f, 0x0921, 0x0940, 0x0020, 0x0928, 0x092e, 0x0942, 106 | 0x0928, 0x093e 107 | } 108 | }; 109 | 110 | static const struct usb_string_descriptor **string_data[2] = { 111 | (const struct usb_string_descriptor *[]){&string_0, &string_1}, 112 | (const struct usb_string_descriptor *[]){&string_2, &string_3} 113 | }; 114 | 115 | static const struct usbd_info_string string = { 116 | .lang_list = &string_lang_list, 117 | .count = 2, 118 | .data = string_data 119 | }; 120 | 121 | static const struct __attribute__((packed)) { 122 | /* 123 | * Table B-2: MIDI Adapter Configuration Descriptor 124 | */ 125 | struct usb_config_descriptor config; 126 | 127 | /* 128 | * Table B-3: MIDI Adapter Standard AC Interface Descriptor 129 | */ 130 | struct usb_interface_descriptor audio_control_iface; 131 | 132 | /* 133 | * Table B-4: MIDI Adapter Class-specific AC Interface Descriptor 134 | */ 135 | struct { 136 | struct usb_audio_header_descriptor_head header_head; 137 | struct usb_audio_header_descriptor_body header_body; 138 | } __attribute__((packed)) audio_control_functional_descriptors; 139 | 140 | /* 141 | * Table B-5: MIDI Adapter Standard MS Interface Descriptor 142 | */ 143 | struct usb_interface_descriptor midi_streaming_iface; 144 | 145 | /* 146 | * Class-specific MIDI streaming interface descriptor 147 | */ 148 | struct { 149 | struct usb_midi_header_descriptor header; 150 | struct usb_midi_in_jack_descriptor in_embedded; 151 | struct usb_midi_in_jack_descriptor in_external; 152 | struct usb_midi_out_jack_descriptor out_embedded; 153 | struct usb_midi_out_jack_descriptor out_external; 154 | } __attribute__((packed)) midi_streaming_functional_descriptors; 155 | 156 | struct { 157 | /* 158 | * Standard endpoint descriptor 159 | */ 160 | struct usb_endpoint_descriptor bulk_endp; 161 | 162 | /* 163 | * Midi specific endpoint descriptor. 164 | */ 165 | struct usb_midi_endpoint_descriptor midi_bulk_endp; 166 | } __attribute__((packed)) out, in; 167 | } config_desc = { 168 | .config = { 169 | .bLength = USB_DT_CONFIGURATION_SIZE, 170 | .bDescriptorType = USB_DT_CONFIGURATION, 171 | .wTotalLength = sizeof(config_desc), 172 | .bNumInterfaces = 2, /* control and data */ 173 | .bConfigurationValue = 1, 174 | .iConfiguration = 0, 175 | .bmAttributes = 0x80, /* bus powered */ 176 | .bMaxPower = 0x32 177 | }, 178 | 179 | .audio_control_iface = { 180 | .bLength = USB_DT_INTERFACE_SIZE, 181 | .bDescriptorType = USB_DT_INTERFACE, 182 | .bInterfaceNumber = 0, 183 | .bAlternateSetting = 0, 184 | .bNumEndpoints = 0, 185 | .bInterfaceClass = USB_CLASS_AUDIO, 186 | .bInterfaceSubClass = USB_AUDIO_SUBCLASS_CONTROL, 187 | .bInterfaceProtocol = 0, 188 | .iInterface = 0, 189 | }, 190 | 191 | .audio_control_functional_descriptors = { 192 | .header_head = { 193 | .bLength = sizeof(struct usb_audio_header_descriptor_head) + 194 | 1 * sizeof(struct usb_audio_header_descriptor_body), 195 | .bDescriptorType = USB_AUDIO_DT_CS_INTERFACE, 196 | .bDescriptorSubtype = USB_AUDIO_TYPE_HEADER, 197 | .bcdADC = 0x0100, 198 | .wTotalLength = 199 | sizeof(struct usb_audio_header_descriptor_head) + 200 | 1 * sizeof(struct usb_audio_header_descriptor_body), 201 | .binCollection = 1, 202 | }, 203 | .header_body = { 204 | .baInterfaceNr = 0x01, 205 | }, 206 | }, 207 | 208 | .midi_streaming_iface = { 209 | .bLength = USB_DT_INTERFACE_SIZE, 210 | .bDescriptorType = USB_DT_INTERFACE, 211 | .bInterfaceNumber = 1, 212 | .bAlternateSetting = 0, 213 | .bNumEndpoints = 2, 214 | .bInterfaceClass = USB_CLASS_AUDIO, 215 | .bInterfaceSubClass = USB_AUDIO_SUBCLASS_MIDISTREAMING, 216 | .bInterfaceProtocol = 0, 217 | .iInterface = 0, 218 | }, 219 | 220 | .midi_streaming_functional_descriptors = { 221 | /* Table B-6: Midi Adapter Class-specific MS Interface Descriptor */ 222 | .header = { 223 | .bLength = sizeof(struct usb_midi_header_descriptor), 224 | .bDescriptorType = USB_AUDIO_DT_CS_INTERFACE, 225 | .bDescriptorSubtype = USB_MIDI_SUBTYPE_MS_HEADER, 226 | .bcdMSC = 0x0100, 227 | .wTotalLength = 228 | sizeof(struct usb_midi_header_descriptor) + 229 | sizeof(struct usb_midi_in_jack_descriptor) * 2 + 230 | sizeof(struct usb_midi_out_jack_descriptor) * 2, 231 | }, 232 | 233 | /* Table B-7: MIDI Adapter MIDI IN Jack Descriptor (Embedded) */ 234 | .in_embedded = { 235 | .bLength = sizeof(struct usb_midi_in_jack_descriptor), 236 | .bDescriptorType = USB_AUDIO_DT_CS_INTERFACE, 237 | .bDescriptorSubtype = USB_MIDI_SUBTYPE_MIDI_IN_JACK, 238 | .bJackType = USB_MIDI_JACK_TYPE_EMBEDDED, 239 | .bJackID = 0x01, 240 | .iJack = 0x00, 241 | }, 242 | 243 | /* Table B-8: MIDI Adapter MIDI IN Jack Descriptor (External) */ 244 | .in_external = { 245 | .bLength = sizeof(struct usb_midi_in_jack_descriptor), 246 | .bDescriptorType = USB_AUDIO_DT_CS_INTERFACE, 247 | .bDescriptorSubtype = USB_MIDI_SUBTYPE_MIDI_IN_JACK, 248 | .bJackType = USB_MIDI_JACK_TYPE_EXTERNAL, 249 | .bJackID = 0x02, 250 | .iJack = 0x00, 251 | }, 252 | 253 | /* Table B-9: MIDI Adapter MIDI OUT Jack Descriptor (Embedded) */ 254 | .out_embedded = { 255 | .head = { 256 | .bLength = sizeof(struct usb_midi_out_jack_descriptor), 257 | .bDescriptorType = USB_AUDIO_DT_CS_INTERFACE, 258 | .bDescriptorSubtype = USB_MIDI_SUBTYPE_MIDI_OUT_JACK, 259 | .bJackType = USB_MIDI_JACK_TYPE_EMBEDDED, 260 | .bJackID = 0x03, 261 | .bNrInputPins = 1, 262 | }, 263 | .source[0] = { 264 | .baSourceID = 0x02, 265 | .baSourcePin = 0x01, 266 | }, 267 | .tail = { 268 | .iJack = 0x00, 269 | } 270 | }, 271 | 272 | /* Table B-10: MIDI Adapter MIDI OUT Jack Descriptor (External) */ 273 | .out_external = { 274 | .head = { 275 | .bLength = sizeof(struct usb_midi_out_jack_descriptor), 276 | .bDescriptorType = USB_AUDIO_DT_CS_INTERFACE, 277 | .bDescriptorSubtype = USB_MIDI_SUBTYPE_MIDI_OUT_JACK, 278 | .bJackType = USB_MIDI_JACK_TYPE_EXTERNAL, 279 | .bJackID = 0x04, 280 | .bNrInputPins = 1, 281 | }, 282 | .source[0] = { 283 | .baSourceID = 0x01, 284 | .baSourcePin = 0x01, 285 | }, 286 | .tail = { 287 | .iJack = 0x00, 288 | } 289 | } 290 | }, 291 | 292 | .out = { 293 | .bulk_endp = { 294 | /* Table B-11: MIDI Adapter Standard Bulk OUT Endpoint Descriptor */ 295 | .bLength = USB_DT_ENDPOINT_SIZE, 296 | .bDescriptorType = USB_DT_ENDPOINT, 297 | .bEndpointAddress = 0x01, 298 | .bmAttributes = USB_ENDPOINT_ATTR_BULK, 299 | .wMaxPacketSize = 0x40, 300 | .bInterval = 0x00, 301 | }, 302 | 303 | .midi_bulk_endp = { 304 | /* Table B-12: MIDI Adapter Class-specific Bulk OUT Endpoint 305 | * Descriptor 306 | */ 307 | .head = { 308 | .bLength = sizeof(struct usb_midi_endpoint_descriptor), 309 | .bDescriptorType = USB_AUDIO_DT_CS_ENDPOINT, 310 | .bDescriptorSubType = USB_MIDI_SUBTYPE_MS_GENERAL, 311 | .bNumEmbMIDIJack = 1, 312 | }, 313 | .jack[0] = { 314 | .baAssocJackID = 0x01, 315 | }, 316 | } 317 | }, 318 | 319 | .in = { 320 | .bulk_endp = { 321 | /* Table B-11: MIDI Adapter Standard Bulk IN Endpoint Descriptor */ 322 | .bLength = USB_DT_ENDPOINT_SIZE, 323 | .bDescriptorType = USB_DT_ENDPOINT, 324 | .bEndpointAddress = 0x81, 325 | .bmAttributes = USB_ENDPOINT_ATTR_BULK, 326 | .wMaxPacketSize = 0x40, 327 | .bInterval = 0x00, 328 | }, 329 | 330 | .midi_bulk_endp = { 331 | /* Table B-14: MIDI Adapter Class-specific Bulk IN Endpoint 332 | * Descriptor 333 | */ 334 | .head = { 335 | .bLength = sizeof(struct usb_midi_endpoint_descriptor), 336 | .bDescriptorType = USB_AUDIO_DT_CS_ENDPOINT, 337 | .bDescriptorSubType = USB_MIDI_SUBTYPE_MS_GENERAL, 338 | .bNumEmbMIDIJack = 1, 339 | }, 340 | .jack[0] = { 341 | .baAssocJackID = 0x03, 342 | }, 343 | } 344 | } 345 | }; 346 | 347 | const struct usbd_info usb_midi_device_info= { 348 | .device = { 349 | .desc = &dev_desc, 350 | .string = &string 351 | }, 352 | 353 | .config = {{ 354 | .desc = (const struct usb_config_descriptor *) &config_desc, 355 | .string = &string 356 | }} 357 | }; 358 | 359 | /* SysEx identity message, preformatted with correct USB framing information */ 360 | const uint8_t sysex_identity[] = { 361 | 0x04, /* USB Framing (3 byte SysEx) */ 362 | 0xf0, /* SysEx start */ 363 | 0x7e, /* non-realtime */ 364 | 0x00, /* Channel 0 */ 365 | 0x04, /* USB Framing (3 byte SysEx) */ 366 | 0x7d, /* Educational/prototype manufacturer ID */ 367 | 0x66, /* Family code (byte 1) */ 368 | 0x66, /* Family code (byte 2) */ 369 | 0x04, /* USB Framing (3 byte SysEx) */ 370 | 0x51, /* Model number (byte 1) */ 371 | 0x19, /* Model number (byte 2) */ 372 | 0x00, /* Version number (byte 1) */ 373 | 0x04, /* USB Framing (3 byte SysEx) */ 374 | 0x00, /* Version number (byte 2) */ 375 | 0x01, /* Version number (byte 3) */ 376 | 0x00, /* Version number (byte 4) */ 377 | 0x05, /* USB Framing (1 byte SysEx) */ 378 | 0xf7, /* SysEx end */ 379 | 0x00, /* Padding */ 380 | 0x00, /* Padding */ 381 | }; 382 | 383 | static bool error_recoverable(usbd_transfer_status status) 384 | { 385 | switch (status) { 386 | case USBD_ERR_TIMEOUT: 387 | case USBD_ERR_IO: 388 | case USBD_ERR_BABBLE: 389 | case USBD_ERR_DTOG: 390 | case USBD_ERR_SHORT_PACKET: 391 | case USBD_ERR_OVERFLOW: 392 | return true; 393 | 394 | case USBD_ERR_RES_UNAVAIL: 395 | case USBD_SUCCESS: 396 | case USBD_ERR_SIZE: 397 | case USBD_ERR_CONN: 398 | case USBD_ERR_INVALID: 399 | case USBD_ERR_CONFIG_CHANGE: 400 | case USBD_ERR_CANCEL: 401 | default: 402 | return false; 403 | } 404 | } 405 | 406 | static void resubmit_for_recoverable_error(usbd_device *usbd_dev, 407 | const usbd_transfer *transfer, usbd_transfer_status status, 408 | usbd_urb_id urb_id) 409 | { 410 | (void) urb_id; 411 | 412 | if (status != USBD_SUCCESS) { 413 | if (error_recoverable(status)) { 414 | usbd_transfer_submit(usbd_dev, transfer); 415 | } 416 | } 417 | } 418 | 419 | static void send_sysex_identify(usbd_device *usbd_dev) 420 | { 421 | const usbd_transfer transfer = { 422 | .ep_type = USBD_EP_BULK, 423 | .ep_addr = 0x81, 424 | .ep_size = 64, 425 | .ep_interval = USBD_INTERVAL_NA, 426 | .buffer = (void *) sysex_identity, 427 | .length = sizeof(sysex_identity), 428 | .flags = USBD_FLAG_NO_SUCCESS_CALLBACK, 429 | .timeout = USBD_TIMEOUT_NEVER, 430 | .callback = resubmit_for_recoverable_error 431 | }; 432 | 433 | usbd_transfer_submit(usbd_dev, &transfer); 434 | } 435 | 436 | static void usbmidi_data_rx_cb(usbd_device *usbd_dev, 437 | const usbd_transfer *transfer, usbd_transfer_status status, 438 | usbd_urb_id urb_id) 439 | { 440 | (void) urb_id; 441 | 442 | if (status != USBD_SUCCESS) { 443 | return; 444 | } 445 | 446 | if (transfer->transferred) { 447 | 448 | usb_midi_received_callback( 449 | transfer->buffer, 450 | transfer->transferred 451 | ); 452 | 453 | /* This implementation treats any message from the host as a SysEx 454 | * identity request. This works well enough providing the host 455 | * packs the identify request in a single 8 byte USB message. 456 | */ 457 | 458 | // send_sysex_identify(usbd_dev); 459 | } 460 | 461 | /* Accept more data from host */ 462 | usbd_transfer_submit(usbd_dev, transfer); 463 | 464 | // usbmidi_target_data_rx_cb(); 465 | } 466 | 467 | void usb_midi_set_config( 468 | usbd_device *usbd_dev, 469 | const struct usb_config_descriptor *cfg 470 | ) { 471 | (void)cfg; 472 | 473 | usbd_ep_prepare(usbd_dev, 0x01, USBD_EP_BULK, 64, USBD_INTERVAL_NA, 474 | USBD_EP_NONE); 475 | usbd_ep_prepare(usbd_dev, 0x81, USBD_EP_BULK, 64, USBD_INTERVAL_NA, 476 | USBD_EP_NONE); 477 | 478 | static uint8_t buf[64]; 479 | 480 | const usbd_transfer transfer = { 481 | .ep_type = USBD_EP_BULK, 482 | .ep_addr = 0x01, 483 | .ep_size = 64, 484 | .ep_interval = USBD_INTERVAL_NA, 485 | .buffer = buf, 486 | .length = sizeof(buf), 487 | .flags = USBD_FLAG_NONE, 488 | .timeout = USBD_TIMEOUT_NEVER, 489 | .callback = usbmidi_data_rx_cb, 490 | }; 491 | 492 | usbd_transfer_submit(usbd_dev, &transfer); 493 | } 494 | 495 | static volatile usbd_urb_id button_event_urb_id = USBD_INVALID_URB_ID; 496 | 497 | static void button_send_event_callback(usbd_device *usbd_dev, 498 | const usbd_transfer *transfer, usbd_transfer_status status, 499 | usbd_urb_id urb_id) 500 | { 501 | (void) urb_id; 502 | 503 | if (status != USBD_SUCCESS) { 504 | if (error_recoverable(status)) { 505 | button_event_urb_id = usbd_transfer_submit(usbd_dev, transfer); 506 | return; 507 | } 508 | } 509 | 510 | button_event_urb_id = USBD_INVALID_URB_ID; 511 | } 512 | 513 | static void button_send_event(usbd_device *usbd_dev, int pressed) 514 | { 515 | static char buf[4] = { 0x08, /* USB framing: virtual cable 0, note on */ 516 | 0x80, /* MIDI command: note on, channel 1 */ 517 | 60, /* Note 60 (middle C) */ 518 | 64, /* "Normal" velocity */ 519 | }; 520 | 521 | buf[0] |= pressed; 522 | buf[1] |= pressed << 4; 523 | 524 | if (button_event_urb_id != USBD_INVALID_URB_ID) { 525 | /* already in progress */ 526 | return; 527 | } 528 | 529 | const usbd_transfer transfer = { 530 | .ep_type = USBD_EP_BULK, 531 | .ep_addr = 0x81, 532 | .ep_size = 64, 533 | .ep_interval = USBD_INTERVAL_NA, 534 | .buffer = buf, 535 | .length = sizeof(buf), 536 | .flags = USBD_FLAG_NONE, 537 | .timeout = USBD_TIMEOUT_NEVER, 538 | .callback = button_send_event_callback 539 | }; 540 | 541 | button_event_urb_id = usbd_transfer_submit(usbd_dev, &transfer); 542 | } 543 | 544 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-B_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.4-0-10_14)* 2 | G04 #@! TF.CreationDate,2020-04-04T17:45:35+02:00* 3 | G04 #@! TF.ProjectId,Untitled,556e7469-746c-4656-942e-6b696361645f,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.4-0-10_14)) date 2020-04-04 17:45:35* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,0.100000*% 14 | %ADD11C,0.120000*% 15 | %ADD12C,0.150000*% 16 | G04 APERTURE END LIST* 17 | D10* 18 | G36* 19 | X154975560Y-28011120D02* 20 | G01* 21 | X155483560Y-28011120D01* 22 | X155483560Y-28519120D01* 23 | X154975560Y-28519120D01* 24 | X154975560Y-28011120D01* 25 | G37* 26 | X154975560Y-28011120D02* 27 | X155483560Y-28011120D01* 28 | X155483560Y-28519120D01* 29 | X154975560Y-28519120D01* 30 | X154975560Y-28011120D01* 31 | G36* 32 | X154975560Y-25471120D02* 33 | G01* 34 | X155483560Y-25471120D01* 35 | X155483560Y-25979120D01* 36 | X154975560Y-25979120D01* 37 | X154975560Y-25471120D01* 38 | G37* 39 | X154975560Y-25471120D02* 40 | X155483560Y-25471120D01* 41 | X155483560Y-25979120D01* 42 | X154975560Y-25979120D01* 43 | X154975560Y-25471120D01* 44 | G36* 45 | X154975560Y-22931120D02* 46 | G01* 47 | X155483560Y-22931120D01* 48 | X155483560Y-23439120D01* 49 | X154975560Y-23439120D01* 50 | X154975560Y-22931120D01* 51 | G37* 52 | X154975560Y-22931120D02* 53 | X155483560Y-22931120D01* 54 | X155483560Y-23439120D01* 55 | X154975560Y-23439120D01* 56 | X154975560Y-22931120D01* 57 | G36* 58 | X154975560Y-20391120D02* 59 | G01* 60 | X155483560Y-20391120D01* 61 | X155483560Y-20899120D01* 62 | X154975560Y-20899120D01* 63 | X154975560Y-20391120D01* 64 | G37* 65 | X154975560Y-20391120D02* 66 | X155483560Y-20391120D01* 67 | X155483560Y-20899120D01* 68 | X154975560Y-20899120D01* 69 | X154975560Y-20391120D01* 70 | D11* 71 | X153959560Y-29535120D02* 72 | X153959560Y-19375120D01* 73 | X156499560Y-29535120D02* 74 | X153959560Y-29535120D01* 75 | X156499560Y-19375120D02* 76 | X156499560Y-29535120D01* 77 | X153959560Y-19375120D02* 78 | X156499560Y-19375120D01* 79 | D10* 80 | G36* 81 | X108400500Y-20942500D02* 82 | G01* 83 | X113480500Y-20942500D01* 84 | X113480500Y-27927500D01* 85 | X108400500Y-27927500D01* 86 | X108400500Y-20942500D01* 87 | G37* 88 | X108400500Y-20942500D02* 89 | X113480500Y-20942500D01* 90 | X113480500Y-27927500D01* 91 | X108400500Y-27927500D01* 92 | X108400500Y-20942500D01* 93 | D11* 94 | X112684560Y-20962620D02* 95 | X112684560Y-27947620D01* 96 | X161930500Y-13227500D02* 97 | X108280500Y-13227500D01* 98 | X161880500Y-35827500D02* 99 | X161930500Y-13227500D01* 100 | X108280500Y-35827500D02* 101 | X161880500Y-35827500D01* 102 | X108280500Y-13227500D02* 103 | X108280500Y-35827500D01* 104 | D12* 105 | X106870404Y-13422380D02* 106 | X106870404Y-14231904D01* 107 | X106822785Y-14327142D01* 108 | X106775166Y-14374761D01* 109 | X106679928Y-14422380D01* 110 | X106489452Y-14422380D01* 111 | X106394214Y-14374761D01* 112 | X106346595Y-14327142D01* 113 | X106298976Y-14231904D01* 114 | X106298976Y-13422380D01* 115 | X105298976Y-14422380D02* 116 | X105870404Y-14422380D01* 117 | X105584690Y-14422380D02* 118 | X105584690Y-13422380D01* 119 | X105679928Y-13565238D01* 120 | X105775166Y-13660476D01* 121 | X105870404Y-13708095D01* 122 | X148470976Y-35313880D02* 123 | X148804309Y-34837690D01* 124 | X149042404Y-35313880D02* 125 | X149042404Y-34313880D01* 126 | X148661452Y-34313880D01* 127 | X148566214Y-34361500D01* 128 | X148518595Y-34409119D01* 129 | X148470976Y-34504357D01* 130 | X148470976Y-34647214D01* 131 | X148518595Y-34742452D01* 132 | X148566214Y-34790071D01* 133 | X148661452Y-34837690D01* 134 | X149042404Y-34837690D01* 135 | X156138595Y-13533500D02* 136 | X156233833Y-13485880D01* 137 | X156376690Y-13485880D01* 138 | X156519547Y-13533500D01* 139 | X156614785Y-13628738D01* 140 | X156662404Y-13723976D01* 141 | X156710023Y-13914452D01* 142 | X156710023Y-14057309D01* 143 | X156662404Y-14247785D01* 144 | X156614785Y-14343023D01* 145 | X156519547Y-14438261D01* 146 | X156376690Y-14485880D01* 147 | X156281452Y-14485880D01* 148 | X156138595Y-14438261D01* 149 | X156090976Y-14390642D01* 150 | X156090976Y-14057309D01* 151 | X156281452Y-14057309D01* 152 | X159738785Y-13485880D02* 153 | X159267071Y-13485880D01* 154 | X159521071Y-13866833D01* 155 | X159412214Y-13866833D01* 156 | X159339642Y-13914452D01* 157 | X159303357Y-13962071D01* 158 | X159267071Y-14057309D01* 159 | X159267071Y-14295404D01* 160 | X159303357Y-14390642D01* 161 | X159339642Y-14438261D01* 162 | X159412214Y-14485880D01* 163 | X159629928Y-14485880D01* 164 | X159702500Y-14438261D01* 165 | X159738785Y-14390642D01* 166 | X158940500Y-14390642D02* 167 | X158904214Y-14438261D01* 168 | X158940500Y-14485880D01* 169 | X158976785Y-14438261D01* 170 | X158940500Y-14390642D01* 171 | X158940500Y-14485880D01* 172 | X158650214Y-13485880D02* 173 | X158178500Y-13485880D01* 174 | X158432500Y-13866833D01* 175 | X158323642Y-13866833D01* 176 | X158251071Y-13914452D01* 177 | X158214785Y-13962071D01* 178 | X158178500Y-14057309D01* 179 | X158178500Y-14295404D01* 180 | X158214785Y-14390642D01* 181 | X158251071Y-14438261D01* 182 | X158323642Y-14485880D01* 183 | X158541357Y-14485880D01* 184 | X158613928Y-14438261D01* 185 | X158650214Y-14390642D01* 186 | X154050976Y-13485880D02* 187 | X154527166Y-13485880D01* 188 | X154574785Y-13962071D01* 189 | X154527166Y-13914452D01* 190 | X154431928Y-13866833D01* 191 | X154193833Y-13866833D01* 192 | X154098595Y-13914452D01* 193 | X154050976Y-13962071D01* 194 | X154003357Y-14057309D01* 195 | X154003357Y-14295404D01* 196 | X154050976Y-14390642D01* 197 | X154098595Y-14438261D01* 198 | X154193833Y-14485880D01* 199 | X154431928Y-14485880D01* 200 | X154527166Y-14438261D01* 201 | X154574785Y-14390642D01* 202 | X153717642Y-13485880D02* 203 | X153384309Y-14485880D01* 204 | X153050976Y-13485880D01* 205 | X151725261Y-13962071D02* 206 | X151582404Y-14009690D01* 207 | X151534785Y-14057309D01* 208 | X151487166Y-14152547D01* 209 | X151487166Y-14295404D01* 210 | X151534785Y-14390642D01* 211 | X151582404Y-14438261D01* 212 | X151677642Y-14485880D01* 213 | X152058595Y-14485880D01* 214 | X152058595Y-13485880D01* 215 | X151725261Y-13485880D01* 216 | X151630023Y-13533500D01* 217 | X151582404Y-13581119D01* 218 | X151534785Y-13676357D01* 219 | X151534785Y-13771595D01* 220 | X151582404Y-13866833D01* 221 | X151630023Y-13914452D01* 222 | X151725261Y-13962071D01* 223 | X152058595Y-13962071D01* 224 | X151010976Y-14485880D02* 225 | X150820500Y-14485880D01* 226 | X150725261Y-14438261D01* 227 | X150677642Y-14390642D01* 228 | X150582404Y-14247785D01* 229 | X150534785Y-14057309D01* 230 | X150534785Y-13676357D01* 231 | X150582404Y-13581119D01* 232 | X150630023Y-13533500D01* 233 | X150725261Y-13485880D01* 234 | X150915738Y-13485880D01* 235 | X151010976Y-13533500D01* 236 | X151058595Y-13581119D01* 237 | X151106214Y-13676357D01* 238 | X151106214Y-13914452D01* 239 | X151058595Y-14009690D01* 240 | X151010976Y-14057309D01* 241 | X150915738Y-14104928D01* 242 | X150725261Y-14104928D01* 243 | X150630023Y-14057309D01* 244 | X150582404Y-14009690D01* 245 | X150534785Y-13914452D01* 246 | X149185261Y-13962071D02* 247 | X149042404Y-14009690D01* 248 | X148994785Y-14057309D01* 249 | X148947166Y-14152547D01* 250 | X148947166Y-14295404D01* 251 | X148994785Y-14390642D01* 252 | X149042404Y-14438261D01* 253 | X149137642Y-14485880D01* 254 | X149518595Y-14485880D01* 255 | X149518595Y-13485880D01* 256 | X149185261Y-13485880D01* 257 | X149090023Y-13533500D01* 258 | X149042404Y-13581119D01* 259 | X148994785Y-13676357D01* 260 | X148994785Y-13771595D01* 261 | X149042404Y-13866833D01* 262 | X149090023Y-13914452D01* 263 | X149185261Y-13962071D01* 264 | X149518595Y-13962071D01* 265 | X148375738Y-13914452D02* 266 | X148470976Y-13866833D01* 267 | X148518595Y-13819214D01* 268 | X148566214Y-13723976D01* 269 | X148566214Y-13676357D01* 270 | X148518595Y-13581119D01* 271 | X148470976Y-13533500D01* 272 | X148375738Y-13485880D01* 273 | X148185261Y-13485880D01* 274 | X148090023Y-13533500D01* 275 | X148042404Y-13581119D01* 276 | X147994785Y-13676357D01* 277 | X147994785Y-13723976D01* 278 | X148042404Y-13819214D01* 279 | X148090023Y-13866833D01* 280 | X148185261Y-13914452D01* 281 | X148375738Y-13914452D01* 282 | X148470976Y-13962071D01* 283 | X148518595Y-14009690D01* 284 | X148566214Y-14104928D01* 285 | X148566214Y-14295404D01* 286 | X148518595Y-14390642D01* 287 | X148470976Y-14438261D01* 288 | X148375738Y-14485880D01* 289 | X148185261Y-14485880D01* 290 | X148090023Y-14438261D01* 291 | X148042404Y-14390642D01* 292 | X147994785Y-14295404D01* 293 | X147994785Y-14104928D01* 294 | X148042404Y-14009690D01* 295 | X148090023Y-13962071D01* 296 | X148185261Y-13914452D01* 297 | X146645261Y-13962071D02* 298 | X146502404Y-14009690D01* 299 | X146454785Y-14057309D01* 300 | X146407166Y-14152547D01* 301 | X146407166Y-14295404D01* 302 | X146454785Y-14390642D01* 303 | X146502404Y-14438261D01* 304 | X146597642Y-14485880D01* 305 | X146978595Y-14485880D01* 306 | X146978595Y-13485880D01* 307 | X146645261Y-13485880D01* 308 | X146550023Y-13533500D01* 309 | X146502404Y-13581119D01* 310 | X146454785Y-13676357D01* 311 | X146454785Y-13771595D01* 312 | X146502404Y-13866833D01* 313 | X146550023Y-13914452D01* 314 | X146645261Y-13962071D01* 315 | X146978595Y-13962071D01* 316 | X146073833Y-13485880D02* 317 | X145407166Y-13485880D01* 318 | X145835738Y-14485880D01* 319 | X144105261Y-13962071D02* 320 | X143962404Y-14009690D01* 321 | X143914785Y-14057309D01* 322 | X143867166Y-14152547D01* 323 | X143867166Y-14295404D01* 324 | X143914785Y-14390642D01* 325 | X143962404Y-14438261D01* 326 | X144057642Y-14485880D01* 327 | X144438595Y-14485880D01* 328 | X144438595Y-13485880D01* 329 | X144105261Y-13485880D01* 330 | X144010023Y-13533500D01* 331 | X143962404Y-13581119D01* 332 | X143914785Y-13676357D01* 333 | X143914785Y-13771595D01* 334 | X143962404Y-13866833D01* 335 | X144010023Y-13914452D01* 336 | X144105261Y-13962071D01* 337 | X144438595Y-13962071D01* 338 | X143010023Y-13485880D02* 339 | X143200500Y-13485880D01* 340 | X143295738Y-13533500D01* 341 | X143343357Y-13581119D01* 342 | X143438595Y-13723976D01* 343 | X143486214Y-13914452D01* 344 | X143486214Y-14295404D01* 345 | X143438595Y-14390642D01* 346 | X143390976Y-14438261D01* 347 | X143295738Y-14485880D01* 348 | X143105261Y-14485880D01* 349 | X143010023Y-14438261D01* 350 | X142962404Y-14390642D01* 351 | X142914785Y-14295404D01* 352 | X142914785Y-14057309D01* 353 | X142962404Y-13962071D01* 354 | X143010023Y-13914452D01* 355 | X143105261Y-13866833D01* 356 | X143295738Y-13866833D01* 357 | X143390976Y-13914452D01* 358 | X143438595Y-13962071D01* 359 | X143486214Y-14057309D01* 360 | X141565261Y-13962071D02* 361 | X141422404Y-14009690D01* 362 | X141374785Y-14057309D01* 363 | X141327166Y-14152547D01* 364 | X141327166Y-14295404D01* 365 | X141374785Y-14390642D01* 366 | X141422404Y-14438261D01* 367 | X141517642Y-14485880D01* 368 | X141898595Y-14485880D01* 369 | X141898595Y-13485880D01* 370 | X141565261Y-13485880D01* 371 | X141470023Y-13533500D01* 372 | X141422404Y-13581119D01* 373 | X141374785Y-13676357D01* 374 | X141374785Y-13771595D01* 375 | X141422404Y-13866833D01* 376 | X141470023Y-13914452D01* 377 | X141565261Y-13962071D01* 378 | X141898595Y-13962071D01* 379 | X140422404Y-13485880D02* 380 | X140898595Y-13485880D01* 381 | X140946214Y-13962071D01* 382 | X140898595Y-13914452D01* 383 | X140803357Y-13866833D01* 384 | X140565261Y-13866833D01* 385 | X140470023Y-13914452D01* 386 | X140422404Y-13962071D01* 387 | X140374785Y-14057309D01* 388 | X140374785Y-14295404D01* 389 | X140422404Y-14390642D01* 390 | X140470023Y-14438261D01* 391 | X140565261Y-14485880D01* 392 | X140803357Y-14485880D01* 393 | X140898595Y-14438261D01* 394 | X140946214Y-14390642D01* 395 | X139025261Y-13962071D02* 396 | X138882404Y-14009690D01* 397 | X138834785Y-14057309D01* 398 | X138787166Y-14152547D01* 399 | X138787166Y-14295404D01* 400 | X138834785Y-14390642D01* 401 | X138882404Y-14438261D01* 402 | X138977642Y-14485880D01* 403 | X139358595Y-14485880D01* 404 | X139358595Y-13485880D01* 405 | X139025261Y-13485880D01* 406 | X138930023Y-13533500D01* 407 | X138882404Y-13581119D01* 408 | X138834785Y-13676357D01* 409 | X138834785Y-13771595D01* 410 | X138882404Y-13866833D01* 411 | X138930023Y-13914452D01* 412 | X139025261Y-13962071D01* 413 | X139358595Y-13962071D01* 414 | X137930023Y-13819214D02* 415 | X137930023Y-14485880D01* 416 | X138168119Y-13438261D02* 417 | X138406214Y-14152547D01* 418 | X137787166Y-14152547D01* 419 | X136485261Y-13962071D02* 420 | X136342404Y-14009690D01* 421 | X136294785Y-14057309D01* 422 | X136247166Y-14152547D01* 423 | X136247166Y-14295404D01* 424 | X136294785Y-14390642D01* 425 | X136342404Y-14438261D01* 426 | X136437642Y-14485880D01* 427 | X136818595Y-14485880D01* 428 | X136818595Y-13485880D01* 429 | X136485261Y-13485880D01* 430 | X136390023Y-13533500D01* 431 | X136342404Y-13581119D01* 432 | X136294785Y-13676357D01* 433 | X136294785Y-13771595D01* 434 | X136342404Y-13866833D01* 435 | X136390023Y-13914452D01* 436 | X136485261Y-13962071D01* 437 | X136818595Y-13962071D01* 438 | X135913833Y-13485880D02* 439 | X135294785Y-13485880D01* 440 | X135628119Y-13866833D01* 441 | X135485261Y-13866833D01* 442 | X135390023Y-13914452D01* 443 | X135342404Y-13962071D01* 444 | X135294785Y-14057309D01* 445 | X135294785Y-14295404D01* 446 | X135342404Y-14390642D01* 447 | X135390023Y-14438261D01* 448 | X135485261Y-14485880D01* 449 | X135770976Y-14485880D01* 450 | X135866214Y-14438261D01* 451 | X135913833Y-14390642D01* 452 | X134447642Y-14200166D02* 453 | X134084785Y-14200166D01* 454 | X134520214Y-14485880D02* 455 | X134266214Y-13485880D01* 456 | X134012214Y-14485880D01* 457 | X133359071Y-14485880D02* 458 | X133794500Y-14485880D01* 459 | X133576785Y-14485880D02* 460 | X133576785Y-13485880D01* 461 | X133649357Y-13628738D01* 462 | X133721928Y-13723976D01* 463 | X133794500Y-13771595D01* 464 | X132669642Y-13485880D02* 465 | X133032500Y-13485880D01* 466 | X133068785Y-13962071D01* 467 | X133032500Y-13914452D01* 468 | X132959928Y-13866833D01* 469 | X132778500Y-13866833D01* 470 | X132705928Y-13914452D01* 471 | X132669642Y-13962071D01* 472 | X132633357Y-14057309D01* 473 | X132633357Y-14295404D01* 474 | X132669642Y-14390642D01* 475 | X132705928Y-14438261D01* 476 | X132778500Y-14485880D01* 477 | X132959928Y-14485880D01* 478 | X133032500Y-14438261D01* 479 | X133068785Y-14390642D01* 480 | X131907642Y-14200166D02* 481 | X131544785Y-14200166D01* 482 | X131980214Y-14485880D02* 483 | X131726214Y-13485880D01* 484 | X131472214Y-14485880D01* 485 | X130819071Y-14485880D02* 486 | X131254500Y-14485880D01* 487 | X131036785Y-14485880D02* 488 | X131036785Y-13485880D01* 489 | X131109357Y-13628738D01* 490 | X131181928Y-13723976D01* 491 | X131254500Y-13771595D01* 492 | X130528785Y-13581119D02* 493 | X130492500Y-13533500D01* 494 | X130419928Y-13485880D01* 495 | X130238500Y-13485880D01* 496 | X130165928Y-13533500D01* 497 | X130129642Y-13581119D01* 498 | X130093357Y-13676357D01* 499 | X130093357Y-13771595D01* 500 | X130129642Y-13914452D01* 501 | X130565071Y-14485880D01* 502 | X130093357Y-14485880D01* 503 | X129367642Y-14200166D02* 504 | X129004785Y-14200166D01* 505 | X129440214Y-14485880D02* 506 | X129186214Y-13485880D01* 507 | X128932214Y-14485880D01* 508 | X128279071Y-14485880D02* 509 | X128714500Y-14485880D01* 510 | X128496785Y-14485880D02* 511 | X128496785Y-13485880D01* 512 | X128569357Y-13628738D01* 513 | X128641928Y-13723976D01* 514 | X128714500Y-13771595D01* 515 | X127553357Y-14485880D02* 516 | X127988785Y-14485880D01* 517 | X127771071Y-14485880D02* 518 | X127771071Y-13485880D01* 519 | X127843642Y-13628738D01* 520 | X127916214Y-13723976D01* 521 | X127988785Y-13771595D01* 522 | X126827642Y-14200166D02* 523 | X126464785Y-14200166D01* 524 | X126900214Y-14485880D02* 525 | X126646214Y-13485880D01* 526 | X126392214Y-14485880D01* 527 | X125739071Y-14485880D02* 528 | X126174500Y-14485880D01* 529 | X125956785Y-14485880D02* 530 | X125956785Y-13485880D01* 531 | X126029357Y-13628738D01* 532 | X126101928Y-13723976D01* 533 | X126174500Y-13771595D01* 534 | X125267357Y-13485880D02* 535 | X125194785Y-13485880D01* 536 | X125122214Y-13533500D01* 537 | X125085928Y-13581119D01* 538 | X125049642Y-13676357D01* 539 | X125013357Y-13866833D01* 540 | X125013357Y-14104928D01* 541 | X125049642Y-14295404D01* 542 | X125085928Y-14390642D01* 543 | X125122214Y-14438261D01* 544 | X125194785Y-14485880D01* 545 | X125267357Y-14485880D01* 546 | X125339928Y-14438261D01* 547 | X125376214Y-14390642D01* 548 | X125412500Y-14295404D01* 549 | X125448785Y-14104928D01* 550 | X125448785Y-13866833D01* 551 | X125412500Y-13676357D01* 552 | X125376214Y-13581119D01* 553 | X125339928Y-13533500D01* 554 | X125267357Y-13485880D01* 555 | X124094785Y-14200166D02* 556 | X123618595Y-14200166D01* 557 | X124190023Y-14485880D02* 558 | X123856690Y-13485880D01* 559 | X123523357Y-14485880D01* 560 | X123142404Y-14485880D02* 561 | X122951928Y-14485880D01* 562 | X122856690Y-14438261D01* 563 | X122809071Y-14390642D01* 564 | X122713833Y-14247785D01* 565 | X122666214Y-14057309D01* 566 | X122666214Y-13676357D01* 567 | X122713833Y-13581119D01* 568 | X122761452Y-13533500D01* 569 | X122856690Y-13485880D01* 570 | X123047166Y-13485880D01* 571 | X123142404Y-13533500D01* 572 | X123190023Y-13581119D01* 573 | X123237642Y-13676357D01* 574 | X123237642Y-13914452D01* 575 | X123190023Y-14009690D01* 576 | X123142404Y-14057309D01* 577 | X123047166Y-14104928D01* 578 | X122856690Y-14104928D01* 579 | X122761452Y-14057309D01* 580 | X122713833Y-14009690D01* 581 | X122666214Y-13914452D01* 582 | X121554785Y-14200166D02* 583 | X121078595Y-14200166D01* 584 | X121650023Y-14485880D02* 585 | X121316690Y-13485880D01* 586 | X120983357Y-14485880D01* 587 | X120507166Y-13914452D02* 588 | X120602404Y-13866833D01* 589 | X120650023Y-13819214D01* 590 | X120697642Y-13723976D01* 591 | X120697642Y-13676357D01* 592 | X120650023Y-13581119D01* 593 | X120602404Y-13533500D01* 594 | X120507166Y-13485880D01* 595 | X120316690Y-13485880D01* 596 | X120221452Y-13533500D01* 597 | X120173833Y-13581119D01* 598 | X120126214Y-13676357D01* 599 | X120126214Y-13723976D01* 600 | X120173833Y-13819214D01* 601 | X120221452Y-13866833D01* 602 | X120316690Y-13914452D01* 603 | X120507166Y-13914452D01* 604 | X120602404Y-13962071D01* 605 | X120650023Y-14009690D01* 606 | X120697642Y-14104928D01* 607 | X120697642Y-14295404D01* 608 | X120650023Y-14390642D01* 609 | X120602404Y-14438261D01* 610 | X120507166Y-14485880D01* 611 | X120316690Y-14485880D01* 612 | X120221452Y-14438261D01* 613 | X120173833Y-14390642D01* 614 | X120126214Y-14295404D01* 615 | X120126214Y-14104928D01* 616 | X120173833Y-14009690D01* 617 | X120221452Y-13962071D01* 618 | X120316690Y-13914452D01* 619 | X118971785Y-13962071D02* 620 | X118862928Y-14009690D01* 621 | X118826642Y-14057309D01* 622 | X118790357Y-14152547D01* 623 | X118790357Y-14295404D01* 624 | X118826642Y-14390642D01* 625 | X118862928Y-14438261D01* 626 | X118935500Y-14485880D01* 627 | X119225785Y-14485880D01* 628 | X119225785Y-13485880D01* 629 | X118971785Y-13485880D01* 630 | X118899214Y-13533500D01* 631 | X118862928Y-13581119D01* 632 | X118826642Y-13676357D01* 633 | X118826642Y-13771595D01* 634 | X118862928Y-13866833D01* 635 | X118899214Y-13914452D01* 636 | X118971785Y-13962071D01* 637 | X119225785Y-13962071D01* 638 | X118064642Y-14485880D02* 639 | X118500071Y-14485880D01* 640 | X118282357Y-14485880D02* 641 | X118282357Y-13485880D01* 642 | X118354928Y-13628738D01* 643 | X118427500Y-13723976D01* 644 | X118500071Y-13771595D01* 645 | X117375214Y-13485880D02* 646 | X117738071Y-13485880D01* 647 | X117774357Y-13962071D01* 648 | X117738071Y-13914452D01* 649 | X117665500Y-13866833D01* 650 | X117484071Y-13866833D01* 651 | X117411500Y-13914452D01* 652 | X117375214Y-13962071D01* 653 | X117338928Y-14057309D01* 654 | X117338928Y-14295404D01* 655 | X117375214Y-14390642D01* 656 | X117411500Y-14438261D01* 657 | X117484071Y-14485880D01* 658 | X117665500Y-14485880D01* 659 | X117738071Y-14438261D01* 660 | X117774357Y-14390642D01* 661 | X116431785Y-13962071D02* 662 | X116322928Y-14009690D01* 663 | X116286642Y-14057309D01* 664 | X116250357Y-14152547D01* 665 | X116250357Y-14295404D01* 666 | X116286642Y-14390642D01* 667 | X116322928Y-14438261D01* 668 | X116395500Y-14485880D01* 669 | X116685785Y-14485880D01* 670 | X116685785Y-13485880D01* 671 | X116431785Y-13485880D01* 672 | X116359214Y-13533500D01* 673 | X116322928Y-13581119D01* 674 | X116286642Y-13676357D01* 675 | X116286642Y-13771595D01* 676 | X116322928Y-13866833D01* 677 | X116359214Y-13914452D01* 678 | X116431785Y-13962071D01* 679 | X116685785Y-13962071D01* 680 | X115524642Y-14485880D02* 681 | X115960071Y-14485880D01* 682 | X115742357Y-14485880D02* 683 | X115742357Y-13485880D01* 684 | X115814928Y-13628738D01* 685 | X115887500Y-13723976D01* 686 | X115960071Y-13771595D01* 687 | X114871500Y-13819214D02* 688 | X114871500Y-14485880D01* 689 | X115052928Y-13438261D02* 690 | X115234357Y-14152547D01* 691 | X114762642Y-14152547D01* 692 | X113891785Y-13962071D02* 693 | X113782928Y-14009690D01* 694 | X113746642Y-14057309D01* 695 | X113710357Y-14152547D01* 696 | X113710357Y-14295404D01* 697 | X113746642Y-14390642D01* 698 | X113782928Y-14438261D01* 699 | X113855500Y-14485880D01* 700 | X114145785Y-14485880D01* 701 | X114145785Y-13485880D01* 702 | X113891785Y-13485880D01* 703 | X113819214Y-13533500D01* 704 | X113782928Y-13581119D01* 705 | X113746642Y-13676357D01* 706 | X113746642Y-13771595D01* 707 | X113782928Y-13866833D01* 708 | X113819214Y-13914452D01* 709 | X113891785Y-13962071D01* 710 | X114145785Y-13962071D01* 711 | X112984642Y-14485880D02* 712 | X113420071Y-14485880D01* 713 | X113202357Y-14485880D02* 714 | X113202357Y-13485880D01* 715 | X113274928Y-13628738D01* 716 | X113347500Y-13723976D01* 717 | X113420071Y-13771595D01* 718 | X112730642Y-13485880D02* 719 | X112258928Y-13485880D01* 720 | X112512928Y-13866833D01* 721 | X112404071Y-13866833D01* 722 | X112331500Y-13914452D01* 723 | X112295214Y-13962071D01* 724 | X112258928Y-14057309D01* 725 | X112258928Y-14295404D01* 726 | X112295214Y-14390642D01* 727 | X112331500Y-14438261D01* 728 | X112404071Y-14485880D01* 729 | X112621785Y-14485880D01* 730 | X112694357Y-14438261D01* 731 | X112730642Y-14390642D01* 732 | X111351785Y-13962071D02* 733 | X111242928Y-14009690D01* 734 | X111206642Y-14057309D01* 735 | X111170357Y-14152547D01* 736 | X111170357Y-14295404D01* 737 | X111206642Y-14390642D01* 738 | X111242928Y-14438261D01* 739 | X111315500Y-14485880D01* 740 | X111605785Y-14485880D01* 741 | X111605785Y-13485880D01* 742 | X111351785Y-13485880D01* 743 | X111279214Y-13533500D01* 744 | X111242928Y-13581119D01* 745 | X111206642Y-13676357D01* 746 | X111206642Y-13771595D01* 747 | X111242928Y-13866833D01* 748 | X111279214Y-13914452D01* 749 | X111351785Y-13962071D01* 750 | X111605785Y-13962071D01* 751 | X110444642Y-14485880D02* 752 | X110880071Y-14485880D01* 753 | X110662357Y-14485880D02* 754 | X110662357Y-13485880D01* 755 | X110734928Y-13628738D01* 756 | X110807500Y-13723976D01* 757 | X110880071Y-13771595D01* 758 | X110154357Y-13581119D02* 759 | X110118071Y-13533500D01* 760 | X110045500Y-13485880D01* 761 | X109864071Y-13485880D01* 762 | X109791500Y-13533500D01* 763 | X109755214Y-13581119D01* 764 | X109718928Y-13676357D01* 765 | X109718928Y-13771595D01* 766 | X109755214Y-13914452D01* 767 | X110190642Y-14485880D01* 768 | X109718928Y-14485880D01* 769 | X159773833Y-34313880D02* 770 | X159440500Y-35313880D01* 771 | X159107166Y-34313880D01* 772 | X158440500Y-34790071D02* 773 | X158297642Y-34837690D01* 774 | X158250023Y-34885309D01* 775 | X158202404Y-34980547D01* 776 | X158202404Y-35123404D01* 777 | X158250023Y-35218642D01* 778 | X158297642Y-35266261D01* 779 | X158392880Y-35313880D01* 780 | X158773833Y-35313880D01* 781 | X158773833Y-34313880D01* 782 | X158440500Y-34313880D01* 783 | X158345261Y-34361500D01* 784 | X158297642Y-34409119D01* 785 | X158250023Y-34504357D01* 786 | X158250023Y-34599595D01* 787 | X158297642Y-34694833D01* 788 | X158345261Y-34742452D01* 789 | X158440500Y-34790071D01* 790 | X158773833Y-34790071D01* 791 | X156890357Y-35218642D02* 792 | X156926642Y-35266261D01* 793 | X157035500Y-35313880D01* 794 | X157108071Y-35313880D01* 795 | X157216928Y-35266261D01* 796 | X157289500Y-35171023D01* 797 | X157325785Y-35075785D01* 798 | X157362071Y-34885309D01* 799 | X157362071Y-34742452D01* 800 | X157325785Y-34551976D01* 801 | X157289500Y-34456738D01* 802 | X157216928Y-34361500D01* 803 | X157108071Y-34313880D01* 804 | X157035500Y-34313880D01* 805 | X156926642Y-34361500D01* 806 | X156890357Y-34409119D01* 807 | X156164642Y-35313880D02* 808 | X156600071Y-35313880D01* 809 | X156382357Y-35313880D02* 810 | X156382357Y-34313880D01* 811 | X156454928Y-34456738D01* 812 | X156527500Y-34551976D01* 813 | X156600071Y-34599595D01* 814 | X155910642Y-34313880D02* 815 | X155438928Y-34313880D01* 816 | X155692928Y-34694833D01* 817 | X155584071Y-34694833D01* 818 | X155511500Y-34742452D01* 819 | X155475214Y-34790071D01* 820 | X155438928Y-34885309D01* 821 | X155438928Y-35123404D01* 822 | X155475214Y-35218642D01* 823 | X155511500Y-35266261D01* 824 | X155584071Y-35313880D01* 825 | X155801785Y-35313880D01* 826 | X155874357Y-35266261D01* 827 | X155910642Y-35218642D01* 828 | X154350357Y-35218642D02* 829 | X154386642Y-35266261D01* 830 | X154495500Y-35313880D01* 831 | X154568071Y-35313880D01* 832 | X154676928Y-35266261D01* 833 | X154749500Y-35171023D01* 834 | X154785785Y-35075785D01* 835 | X154822071Y-34885309D01* 836 | X154822071Y-34742452D01* 837 | X154785785Y-34551976D01* 838 | X154749500Y-34456738D01* 839 | X154676928Y-34361500D01* 840 | X154568071Y-34313880D01* 841 | X154495500Y-34313880D01* 842 | X154386642Y-34361500D01* 843 | X154350357Y-34409119D01* 844 | X153624642Y-35313880D02* 845 | X154060071Y-35313880D01* 846 | X153842357Y-35313880D02* 847 | X153842357Y-34313880D01* 848 | X153914928Y-34456738D01* 849 | X153987500Y-34551976D01* 850 | X154060071Y-34599595D01* 851 | X152971500Y-34647214D02* 852 | X152971500Y-35313880D01* 853 | X153152928Y-34266261D02* 854 | X153334357Y-34980547D01* 855 | X152862642Y-34980547D01* 856 | X151810357Y-35218642D02* 857 | X151846642Y-35266261D01* 858 | X151955500Y-35313880D01* 859 | X152028071Y-35313880D01* 860 | X152136928Y-35266261D01* 861 | X152209500Y-35171023D01* 862 | X152245785Y-35075785D01* 863 | X152282071Y-34885309D01* 864 | X152282071Y-34742452D01* 865 | X152245785Y-34551976D01* 866 | X152209500Y-34456738D01* 867 | X152136928Y-34361500D01* 868 | X152028071Y-34313880D01* 869 | X151955500Y-34313880D01* 870 | X151846642Y-34361500D01* 871 | X151810357Y-34409119D01* 872 | X151084642Y-35313880D02* 873 | X151520071Y-35313880D01* 874 | X151302357Y-35313880D02* 875 | X151302357Y-34313880D01* 876 | X151374928Y-34456738D01* 877 | X151447500Y-34551976D01* 878 | X151520071Y-34599595D01* 879 | X150395214Y-34313880D02* 880 | X150758071Y-34313880D01* 881 | X150794357Y-34790071D01* 882 | X150758071Y-34742452D01* 883 | X150685500Y-34694833D01* 884 | X150504071Y-34694833D01* 885 | X150431500Y-34742452D01* 886 | X150395214Y-34790071D01* 887 | X150358928Y-34885309D01* 888 | X150358928Y-35123404D01* 889 | X150395214Y-35218642D01* 890 | X150431500Y-35266261D01* 891 | X150504071Y-35313880D01* 892 | X150685500Y-35313880D01* 893 | X150758071Y-35266261D01* 894 | X150794357Y-35218642D01* 895 | X146954785Y-35028166D02* 896 | X146478595Y-35028166D01* 897 | X147050023Y-35313880D02* 898 | X146716690Y-34313880D01* 899 | X146383357Y-35313880D01* 900 | X145859547Y-34313880D02* 901 | X145764309Y-34313880D01* 902 | X145669071Y-34361500D01* 903 | X145621452Y-34409119D01* 904 | X145573833Y-34504357D01* 905 | X145526214Y-34694833D01* 906 | X145526214Y-34932928D01* 907 | X145573833Y-35123404D01* 908 | X145621452Y-35218642D01* 909 | X145669071Y-35266261D01* 910 | X145764309Y-35313880D01* 911 | X145859547Y-35313880D01* 912 | X145954785Y-35266261D01* 913 | X146002404Y-35218642D01* 914 | X146050023Y-35123404D01* 915 | X146097642Y-34932928D01* 916 | X146097642Y-34694833D01* 917 | X146050023Y-34504357D01* 918 | X146002404Y-34409119D01* 919 | X145954785Y-34361500D01* 920 | X145859547Y-34313880D01* 921 | X144414785Y-35028166D02* 922 | X143938595Y-35028166D01* 923 | X144510023Y-35313880D02* 924 | X144176690Y-34313880D01* 925 | X143843357Y-35313880D01* 926 | X142986214Y-35313880D02* 927 | X143557642Y-35313880D01* 928 | X143271928Y-35313880D02* 929 | X143271928Y-34313880D01* 930 | X143367166Y-34456738D01* 931 | X143462404Y-34551976D01* 932 | X143557642Y-34599595D01* 933 | X141874785Y-35028166D02* 934 | X141398595Y-35028166D01* 935 | X141970023Y-35313880D02* 936 | X141636690Y-34313880D01* 937 | X141303357Y-35313880D01* 938 | X141017642Y-34409119D02* 939 | X140970023Y-34361500D01* 940 | X140874785Y-34313880D01* 941 | X140636690Y-34313880D01* 942 | X140541452Y-34361500D01* 943 | X140493833Y-34409119D01* 944 | X140446214Y-34504357D01* 945 | X140446214Y-34599595D01* 946 | X140493833Y-34742452D01* 947 | X141065261Y-35313880D01* 948 | X140446214Y-35313880D01* 949 | X139334785Y-35028166D02* 950 | X138858595Y-35028166D01* 951 | X139430023Y-35313880D02* 952 | X139096690Y-34313880D01* 953 | X138763357Y-35313880D01* 954 | X138525261Y-34313880D02* 955 | X137906214Y-34313880D01* 956 | X138239547Y-34694833D01* 957 | X138096690Y-34694833D01* 958 | X138001452Y-34742452D01* 959 | X137953833Y-34790071D01* 960 | X137906214Y-34885309D01* 961 | X137906214Y-35123404D01* 962 | X137953833Y-35218642D01* 963 | X138001452Y-35266261D01* 964 | X138096690Y-35313880D01* 965 | X138382404Y-35313880D01* 966 | X138477642Y-35266261D01* 967 | X138525261Y-35218642D01* 968 | X136794785Y-35028166D02* 969 | X136318595Y-35028166D01* 970 | X136890023Y-35313880D02* 971 | X136556690Y-34313880D01* 972 | X136223357Y-35313880D01* 973 | X135461452Y-34647214D02* 974 | X135461452Y-35313880D01* 975 | X135699547Y-34266261D02* 976 | X135937642Y-34980547D01* 977 | X135318595Y-34980547D01* 978 | X134254785Y-35028166D02* 979 | X133778595Y-35028166D01* 980 | X134350023Y-35313880D02* 981 | X134016690Y-34313880D01* 982 | X133683357Y-35313880D01* 983 | X132873833Y-34313880D02* 984 | X133350023Y-34313880D01* 985 | X133397642Y-34790071D01* 986 | X133350023Y-34742452D01* 987 | X133254785Y-34694833D01* 988 | X133016690Y-34694833D01* 989 | X132921452Y-34742452D01* 990 | X132873833Y-34790071D01* 991 | X132826214Y-34885309D01* 992 | X132826214Y-35123404D01* 993 | X132873833Y-35218642D01* 994 | X132921452Y-35266261D01* 995 | X133016690Y-35313880D01* 996 | X133254785Y-35313880D01* 997 | X133350023Y-35266261D01* 998 | X133397642Y-35218642D01* 999 | X131714785Y-35028166D02* 1000 | X131238595Y-35028166D01* 1001 | X131810023Y-35313880D02* 1002 | X131476690Y-34313880D01* 1003 | X131143357Y-35313880D01* 1004 | X130381452Y-34313880D02* 1005 | X130571928Y-34313880D01* 1006 | X130667166Y-34361500D01* 1007 | X130714785Y-34409119D01* 1008 | X130810023Y-34551976D01* 1009 | X130857642Y-34742452D01* 1010 | X130857642Y-35123404D01* 1011 | X130810023Y-35218642D01* 1012 | X130762404Y-35266261D01* 1013 | X130667166Y-35313880D01* 1014 | X130476690Y-35313880D01* 1015 | X130381452Y-35266261D01* 1016 | X130333833Y-35218642D01* 1017 | X130286214Y-35123404D01* 1018 | X130286214Y-34885309D01* 1019 | X130333833Y-34790071D01* 1020 | X130381452Y-34742452D01* 1021 | X130476690Y-34694833D01* 1022 | X130667166Y-34694833D01* 1023 | X130762404Y-34742452D01* 1024 | X130810023Y-34790071D01* 1025 | X130857642Y-34885309D01* 1026 | X129174785Y-35028166D02* 1027 | X128698595Y-35028166D01* 1028 | X129270023Y-35313880D02* 1029 | X128936690Y-34313880D01* 1030 | X128603357Y-35313880D01* 1031 | X128365261Y-34313880D02* 1032 | X127698595Y-34313880D01* 1033 | X128127166Y-35313880D01* 1034 | X126325261Y-34790071D02* 1035 | X126182404Y-34837690D01* 1036 | X126134785Y-34885309D01* 1037 | X126087166Y-34980547D01* 1038 | X126087166Y-35123404D01* 1039 | X126134785Y-35218642D01* 1040 | X126182404Y-35266261D01* 1041 | X126277642Y-35313880D01* 1042 | X126658595Y-35313880D01* 1043 | X126658595Y-34313880D01* 1044 | X126325261Y-34313880D01* 1045 | X126230023Y-34361500D01* 1046 | X126182404Y-34409119D01* 1047 | X126134785Y-34504357D01* 1048 | X126134785Y-34599595D01* 1049 | X126182404Y-34694833D01* 1050 | X126230023Y-34742452D01* 1051 | X126325261Y-34790071D01* 1052 | X126658595Y-34790071D01* 1053 | X125468119Y-34313880D02* 1054 | X125372880Y-34313880D01* 1055 | X125277642Y-34361500D01* 1056 | X125230023Y-34409119D01* 1057 | X125182404Y-34504357D01* 1058 | X125134785Y-34694833D01* 1059 | X125134785Y-34932928D01* 1060 | X125182404Y-35123404D01* 1061 | X125230023Y-35218642D01* 1062 | X125277642Y-35266261D01* 1063 | X125372880Y-35313880D01* 1064 | X125468119Y-35313880D01* 1065 | X125563357Y-35266261D01* 1066 | X125610976Y-35218642D01* 1067 | X125658595Y-35123404D01* 1068 | X125706214Y-34932928D01* 1069 | X125706214Y-34694833D01* 1070 | X125658595Y-34504357D01* 1071 | X125610976Y-34409119D01* 1072 | X125563357Y-34361500D01* 1073 | X125468119Y-34313880D01* 1074 | X123688928Y-34790071D02* 1075 | X123580071Y-34837690D01* 1076 | X123543785Y-34885309D01* 1077 | X123507500Y-34980547D01* 1078 | X123507500Y-35123404D01* 1079 | X123543785Y-35218642D01* 1080 | X123580071Y-35266261D01* 1081 | X123652642Y-35313880D01* 1082 | X123942928Y-35313880D01* 1083 | X123942928Y-34313880D01* 1084 | X123688928Y-34313880D01* 1085 | X123616357Y-34361500D01* 1086 | X123580071Y-34409119D01* 1087 | X123543785Y-34504357D01* 1088 | X123543785Y-34599595D01* 1089 | X123580071Y-34694833D01* 1090 | X123616357Y-34742452D01* 1091 | X123688928Y-34790071D01* 1092 | X123942928Y-34790071D01* 1093 | X122781785Y-35313880D02* 1094 | X123217214Y-35313880D01* 1095 | X122999500Y-35313880D02* 1096 | X122999500Y-34313880D01* 1097 | X123072071Y-34456738D01* 1098 | X123144642Y-34551976D01* 1099 | X123217214Y-34599595D01* 1100 | X121148928Y-34790071D02* 1101 | X121040071Y-34837690D01* 1102 | X121003785Y-34885309D01* 1103 | X120967500Y-34980547D01* 1104 | X120967500Y-35123404D01* 1105 | X121003785Y-35218642D01* 1106 | X121040071Y-35266261D01* 1107 | X121112642Y-35313880D01* 1108 | X121402928Y-35313880D01* 1109 | X121402928Y-34313880D01* 1110 | X121148928Y-34313880D01* 1111 | X121076357Y-34361500D01* 1112 | X121040071Y-34409119D01* 1113 | X121003785Y-34504357D01* 1114 | X121003785Y-34599595D01* 1115 | X121040071Y-34694833D01* 1116 | X121076357Y-34742452D01* 1117 | X121148928Y-34790071D01* 1118 | X121402928Y-34790071D01* 1119 | X120677214Y-34409119D02* 1120 | X120640928Y-34361500D01* 1121 | X120568357Y-34313880D01* 1122 | X120386928Y-34313880D01* 1123 | X120314357Y-34361500D01* 1124 | X120278071Y-34409119D01* 1125 | X120241785Y-34504357D01* 1126 | X120241785Y-34599595D01* 1127 | X120278071Y-34742452D01* 1128 | X120713500Y-35313880D01* 1129 | X120241785Y-35313880D01* 1130 | X118971785Y-34790071D02* 1131 | X118862928Y-34837690D01* 1132 | X118826642Y-34885309D01* 1133 | X118790357Y-34980547D01* 1134 | X118790357Y-35123404D01* 1135 | X118826642Y-35218642D01* 1136 | X118862928Y-35266261D01* 1137 | X118935500Y-35313880D01* 1138 | X119225785Y-35313880D01* 1139 | X119225785Y-34313880D01* 1140 | X118971785Y-34313880D01* 1141 | X118899214Y-34361500D01* 1142 | X118862928Y-34409119D01* 1143 | X118826642Y-34504357D01* 1144 | X118826642Y-34599595D01* 1145 | X118862928Y-34694833D01* 1146 | X118899214Y-34742452D01* 1147 | X118971785Y-34790071D01* 1148 | X119225785Y-34790071D01* 1149 | X118064642Y-35313880D02* 1150 | X118500071Y-35313880D01* 1151 | X118282357Y-35313880D02* 1152 | X118282357Y-34313880D01* 1153 | X118354928Y-34456738D01* 1154 | X118427500Y-34551976D01* 1155 | X118500071Y-34599595D01* 1156 | X117592928Y-34313880D02* 1157 | X117520357Y-34313880D01* 1158 | X117447785Y-34361500D01* 1159 | X117411500Y-34409119D01* 1160 | X117375214Y-34504357D01* 1161 | X117338928Y-34694833D01* 1162 | X117338928Y-34932928D01* 1163 | X117375214Y-35123404D01* 1164 | X117411500Y-35218642D01* 1165 | X117447785Y-35266261D01* 1166 | X117520357Y-35313880D01* 1167 | X117592928Y-35313880D01* 1168 | X117665500Y-35266261D01* 1169 | X117701785Y-35218642D01* 1170 | X117738071Y-35123404D01* 1171 | X117774357Y-34932928D01* 1172 | X117774357Y-34694833D01* 1173 | X117738071Y-34504357D01* 1174 | X117701785Y-34409119D01* 1175 | X117665500Y-34361500D01* 1176 | X117592928Y-34313880D01* 1177 | X116808119Y-34313880D02* 1178 | X116189071Y-34313880D01* 1179 | X116522404Y-34694833D01* 1180 | X116379547Y-34694833D01* 1181 | X116284309Y-34742452D01* 1182 | X116236690Y-34790071D01* 1183 | X116189071Y-34885309D01* 1184 | X116189071Y-35123404D01* 1185 | X116236690Y-35218642D01* 1186 | X116284309Y-35266261D01* 1187 | X116379547Y-35313880D01* 1188 | X116665261Y-35313880D01* 1189 | X116760500Y-35266261D01* 1190 | X116808119Y-35218642D01* 1191 | X115760500Y-35218642D02* 1192 | X115712880Y-35266261D01* 1193 | X115760500Y-35313880D01* 1194 | X115808119Y-35266261D01* 1195 | X115760500Y-35218642D01* 1196 | X115760500Y-35313880D01* 1197 | X115379547Y-34313880D02* 1198 | X114760500Y-34313880D01* 1199 | X115093833Y-34694833D01* 1200 | X114950976Y-34694833D01* 1201 | X114855738Y-34742452D01* 1202 | X114808119Y-34790071D01* 1203 | X114760500Y-34885309D01* 1204 | X114760500Y-35123404D01* 1205 | X114808119Y-35218642D01* 1206 | X114855738Y-35266261D01* 1207 | X114950976Y-35313880D01* 1208 | X115236690Y-35313880D01* 1209 | X115331928Y-35266261D01* 1210 | X115379547Y-35218642D01* 1211 | X112958595Y-34361500D02* 1212 | X113053833Y-34313880D01* 1213 | X113196690Y-34313880D01* 1214 | X113339547Y-34361500D01* 1215 | X113434785Y-34456738D01* 1216 | X113482404Y-34551976D01* 1217 | X113530023Y-34742452D01* 1218 | X113530023Y-34885309D01* 1219 | X113482404Y-35075785D01* 1220 | X113434785Y-35171023D01* 1221 | X113339547Y-35266261D01* 1222 | X113196690Y-35313880D01* 1223 | X113101452Y-35313880D01* 1224 | X112958595Y-35266261D01* 1225 | X112910976Y-35218642D01* 1226 | X112910976Y-34885309D01* 1227 | X113101452Y-34885309D01* 1228 | X110870976Y-34313880D02* 1229 | X111347166Y-34313880D01* 1230 | X111394785Y-34790071D01* 1231 | X111347166Y-34742452D01* 1232 | X111251928Y-34694833D01* 1233 | X111013833Y-34694833D01* 1234 | X110918595Y-34742452D01* 1235 | X110870976Y-34790071D01* 1236 | X110823357Y-34885309D01* 1237 | X110823357Y-35123404D01* 1238 | X110870976Y-35218642D01* 1239 | X110918595Y-35266261D01* 1240 | X111013833Y-35313880D01* 1241 | X111251928Y-35313880D01* 1242 | X111347166Y-35266261D01* 1243 | X111394785Y-35218642D01* 1244 | X110537642Y-34313880D02* 1245 | X110204309Y-35313880D01* 1246 | X109870976Y-34313880D01* 1247 | M02* 1248 | -------------------------------------------------------------------------------- /hardware/gerbers/mcu-eight-F_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.4-0-10_14)* 2 | G04 #@! TF.CreationDate,2020-04-04T17:45:35+02:00* 3 | G04 #@! TF.ProjectId,Untitled,556e7469-746c-4656-942e-6b696361645f,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.4-0-10_14)) date 2020-04-04 17:45:35* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,0.120000*% 14 | %ADD11C,0.150000*% 15 | G04 APERTURE END LIST* 16 | D10* 17 | X12707525Y-38788321D02* 18 | X12707525Y-12753321D01* 19 | X40647525Y-12753321D02* 20 | X12707525Y-12753321D01* 21 | X40647525Y-40693321D02* 22 | X12707525Y-40693321D01* 23 | X12707525Y-38788321D02* 24 | X12707525Y-40693321D01* 25 | X40647525Y-12753321D02* 26 | X40647525Y-40693321D01* 27 | X35627525Y-38788321D02* 28 | X35627525Y-40118321D01* 29 | X35627525Y-40118321D02* 30 | X34297525Y-40118321D01* 31 | X33027525Y-40118321D02* 32 | X17727525Y-40118321D01* 33 | X17727525Y-37458321D02* 34 | X17727525Y-40118321D01* 35 | X33027525Y-37458321D02* 36 | X17727525Y-37458321D01* 37 | X33027525Y-37458321D02* 38 | X33027525Y-40118321D01* 39 | X48707525Y-38788321D02* 40 | X48707525Y-12753321D01* 41 | X76647525Y-12753321D02* 42 | X48707525Y-12753321D01* 43 | X76647525Y-40693321D02* 44 | X48707525Y-40693321D01* 45 | X48707525Y-38788321D02* 46 | X48707525Y-40693321D01* 47 | X76647525Y-12753321D02* 48 | X76647525Y-40693321D01* 49 | X71627525Y-38788321D02* 50 | X71627525Y-40118321D01* 51 | X71627525Y-40118321D02* 52 | X70297525Y-40118321D01* 53 | X69027525Y-40118321D02* 54 | X53727525Y-40118321D01* 55 | X53727525Y-37458321D02* 56 | X53727525Y-40118321D01* 57 | X69027525Y-37458321D02* 58 | X53727525Y-37458321D01* 59 | X69027525Y-37458321D02* 60 | X69027525Y-40118321D01* 61 | X84707525Y-38788321D02* 62 | X84707525Y-12753321D01* 63 | X112647525Y-12753321D02* 64 | X84707525Y-12753321D01* 65 | X112647525Y-40693321D02* 66 | X84707525Y-40693321D01* 67 | X84707525Y-38788321D02* 68 | X84707525Y-40693321D01* 69 | X112647525Y-12753321D02* 70 | X112647525Y-40693321D01* 71 | X107627525Y-38788321D02* 72 | X107627525Y-40118321D01* 73 | X107627525Y-40118321D02* 74 | X106297525Y-40118321D01* 75 | X105027525Y-40118321D02* 76 | X89727525Y-40118321D01* 77 | X89727525Y-37458321D02* 78 | X89727525Y-40118321D01* 79 | X105027525Y-37458321D02* 80 | X89727525Y-37458321D01* 81 | X105027525Y-37458321D02* 82 | X105027525Y-40118321D01* 83 | X264707525Y-38788321D02* 84 | X264707525Y-12753321D01* 85 | X292647525Y-12753321D02* 86 | X264707525Y-12753321D01* 87 | X292647525Y-40693321D02* 88 | X264707525Y-40693321D01* 89 | X264707525Y-38788321D02* 90 | X264707525Y-40693321D01* 91 | X292647525Y-12753321D02* 92 | X292647525Y-40693321D01* 93 | X287627525Y-38788321D02* 94 | X287627525Y-40118321D01* 95 | X287627525Y-40118321D02* 96 | X286297525Y-40118321D01* 97 | X285027525Y-40118321D02* 98 | X269727525Y-40118321D01* 99 | X269727525Y-37458321D02* 100 | X269727525Y-40118321D01* 101 | X285027525Y-37458321D02* 102 | X269727525Y-37458321D01* 103 | X285027525Y-37458321D02* 104 | X285027525Y-40118321D01* 105 | X228707525Y-38788321D02* 106 | X228707525Y-12753321D01* 107 | X256647525Y-12753321D02* 108 | X228707525Y-12753321D01* 109 | X256647525Y-40693321D02* 110 | X228707525Y-40693321D01* 111 | X228707525Y-38788321D02* 112 | X228707525Y-40693321D01* 113 | X256647525Y-12753321D02* 114 | X256647525Y-40693321D01* 115 | X251627525Y-38788321D02* 116 | X251627525Y-40118321D01* 117 | X251627525Y-40118321D02* 118 | X250297525Y-40118321D01* 119 | X249027525Y-40118321D02* 120 | X233727525Y-40118321D01* 121 | X233727525Y-37458321D02* 122 | X233727525Y-40118321D01* 123 | X249027525Y-37458321D02* 124 | X233727525Y-37458321D01* 125 | X249027525Y-37458321D02* 126 | X249027525Y-40118321D01* 127 | X192707525Y-38788321D02* 128 | X192707525Y-12753321D01* 129 | X220647525Y-12753321D02* 130 | X192707525Y-12753321D01* 131 | X220647525Y-40693321D02* 132 | X192707525Y-40693321D01* 133 | X192707525Y-38788321D02* 134 | X192707525Y-40693321D01* 135 | X220647525Y-12753321D02* 136 | X220647525Y-40693321D01* 137 | X215627525Y-38788321D02* 138 | X215627525Y-40118321D01* 139 | X215627525Y-40118321D02* 140 | X214297525Y-40118321D01* 141 | X213027525Y-40118321D02* 142 | X197727525Y-40118321D01* 143 | X197727525Y-37458321D02* 144 | X197727525Y-40118321D01* 145 | X213027525Y-37458321D02* 146 | X197727525Y-37458321D01* 147 | X213027525Y-37458321D02* 148 | X213027525Y-40118321D01* 149 | X155511500Y-38925500D02* 150 | X155511500Y-12890500D01* 151 | X183451500Y-12890500D02* 152 | X155511500Y-12890500D01* 153 | X183451500Y-40830500D02* 154 | X155511500Y-40830500D01* 155 | X155511500Y-38925500D02* 156 | X155511500Y-40830500D01* 157 | X183451500Y-12890500D02* 158 | X183451500Y-40830500D01* 159 | X178431500Y-38925500D02* 160 | X178431500Y-40255500D01* 161 | X178431500Y-40255500D02* 162 | X177101500Y-40255500D01* 163 | X175831500Y-40255500D02* 164 | X160531500Y-40255500D01* 165 | X160531500Y-37595500D02* 166 | X160531500Y-40255500D01* 167 | X175831500Y-37595500D02* 168 | X160531500Y-37595500D01* 169 | X175831500Y-37595500D02* 170 | X175831500Y-40255500D01* 171 | X120707525Y-38788321D02* 172 | X120707525Y-12753321D01* 173 | X148647525Y-12753321D02* 174 | X120707525Y-12753321D01* 175 | X148647525Y-40693321D02* 176 | X120707525Y-40693321D01* 177 | X120707525Y-38788321D02* 178 | X120707525Y-40693321D01* 179 | X148647525Y-12753321D02* 180 | X148647525Y-40693321D01* 181 | X143627525Y-38788321D02* 182 | X143627525Y-40118321D01* 183 | X143627525Y-40118321D02* 184 | X142297525Y-40118321D01* 185 | X141027525Y-40118321D02* 186 | X125727525Y-40118321D01* 187 | X125727525Y-37458321D02* 188 | X125727525Y-40118321D01* 189 | X141027525Y-37458321D02* 190 | X125727525Y-37458321D01* 191 | X141027525Y-37458321D02* 192 | X141027525Y-40118321D01* 193 | D11* 194 | X25915620Y-17603082D02* 195 | X26058477Y-17650701D01* 196 | X26296572Y-17650701D01* 197 | X26391810Y-17603082D01* 198 | X26439429Y-17555463D01* 199 | X26487048Y-17460225D01* 200 | X26487048Y-17364987D01* 201 | X26439429Y-17269749D01* 202 | X26391810Y-17222130D01* 203 | X26296572Y-17174511D01* 204 | X26106096Y-17126892D01* 205 | X26010858Y-17079273D01* 206 | X25963239Y-17031654D01* 207 | X25915620Y-16936416D01* 208 | X25915620Y-16841178D01* 209 | X25963239Y-16745940D01* 210 | X26010858Y-16698321D01* 211 | X26106096Y-16650701D01* 212 | X26344191Y-16650701D01* 213 | X26487048Y-16698321D01* 214 | X27439429Y-17650701D02* 215 | X26868001Y-17650701D01* 216 | X27153715Y-17650701D02* 217 | X27153715Y-16650701D01* 218 | X27058477Y-16793559D01* 219 | X26963239Y-16888797D01* 220 | X26868001Y-16936416D01* 221 | X18890858Y-36605463D02* 222 | X18843239Y-36653082D01* 223 | X18700382Y-36700701D01* 224 | X18605144Y-36700701D01* 225 | X18462286Y-36653082D01* 226 | X18367048Y-36557844D01* 227 | X18319429Y-36462606D01* 228 | X18271810Y-36272130D01* 229 | X18271810Y-36129273D01* 230 | X18319429Y-35938797D01* 231 | X18367048Y-35843559D01* 232 | X18462286Y-35748321D01* 233 | X18605144Y-35700701D01* 234 | X18700382Y-35700701D01* 235 | X18843239Y-35748321D01* 236 | X18890858Y-35795940D01* 237 | X19271810Y-36653082D02* 238 | X19414667Y-36700701D01* 239 | X19652763Y-36700701D01* 240 | X19748001Y-36653082D01* 241 | X19795620Y-36605463D01* 242 | X19843239Y-36510225D01* 243 | X19843239Y-36414987D01* 244 | X19795620Y-36319749D01* 245 | X19748001Y-36272130D01* 246 | X19652763Y-36224511D01* 247 | X19462286Y-36176892D01* 248 | X19367048Y-36129273D01* 249 | X19319429Y-36081654D01* 250 | X19271810Y-35986416D01* 251 | X19271810Y-35891178D01* 252 | X19319429Y-35795940D01* 253 | X19367048Y-35748321D01* 254 | X19462286Y-35700701D01* 255 | X19700382Y-35700701D01* 256 | X19843239Y-35748321D01* 257 | X20835620Y-35430701D02* 258 | X20835620Y-34430701D01* 259 | X21073715Y-34430701D01* 260 | X21216572Y-34478321D01* 261 | X21311810Y-34573559D01* 262 | X21359429Y-34668797D01* 263 | X21407048Y-34859273D01* 264 | X21407048Y-35002130D01* 265 | X21359429Y-35192606D01* 266 | X21311810Y-35287844D01* 267 | X21216572Y-35383082D01* 268 | X21073715Y-35430701D01* 269 | X20835620Y-35430701D01* 270 | X22407048Y-35335463D02* 271 | X22359429Y-35383082D01* 272 | X22216572Y-35430701D01* 273 | X22121334Y-35430701D01* 274 | X21978477Y-35383082D01* 275 | X21883239Y-35287844D01* 276 | X21835620Y-35192606D01* 277 | X21788001Y-35002130D01* 278 | X21788001Y-34859273D01* 279 | X21835620Y-34668797D01* 280 | X21883239Y-34573559D01* 281 | X21978477Y-34478321D01* 282 | X22121334Y-34430701D01* 283 | X22216572Y-34430701D01* 284 | X22359429Y-34478321D01* 285 | X22407048Y-34525940D01* 286 | X23518477Y-36700701D02* 287 | X23185144Y-36224511D01* 288 | X22947048Y-36700701D02* 289 | X22947048Y-35700701D01* 290 | X23328001Y-35700701D01* 291 | X23423239Y-35748321D01* 292 | X23470858Y-35795940D01* 293 | X23518477Y-35891178D01* 294 | X23518477Y-36034035D01* 295 | X23470858Y-36129273D01* 296 | X23423239Y-36176892D01* 297 | X23328001Y-36224511D01* 298 | X22947048Y-36224511D01* 299 | X23947048Y-36176892D02* 300 | X24280382Y-36176892D01* 301 | X24423239Y-36700701D02* 302 | X23947048Y-36700701D01* 303 | X23947048Y-35700701D01* 304 | X24423239Y-35700701D01* 305 | X24804191Y-36653082D02* 306 | X24947048Y-36700701D01* 307 | X25185144Y-36700701D01* 308 | X25280382Y-36653082D01* 309 | X25328001Y-36605463D01* 310 | X25375620Y-36510225D01* 311 | X25375620Y-36414987D01* 312 | X25328001Y-36319749D01* 313 | X25280382Y-36272130D01* 314 | X25185144Y-36224511D01* 315 | X24994667Y-36176892D01* 316 | X24899429Y-36129273D01* 317 | X24851810Y-36081654D01* 318 | X24804191Y-35986416D01* 319 | X24804191Y-35891178D01* 320 | X24851810Y-35795940D01* 321 | X24899429Y-35748321D01* 322 | X24994667Y-35700701D01* 323 | X25232763Y-35700701D01* 324 | X25375620Y-35748321D01* 325 | X25939429Y-35430701D02* 326 | X25939429Y-34430701D01* 327 | X26177525Y-34430701D01* 328 | X26320382Y-34478321D01* 329 | X26415620Y-34573559D01* 330 | X26463239Y-34668797D01* 331 | X26510858Y-34859273D01* 332 | X26510858Y-35002130D01* 333 | X26463239Y-35192606D01* 334 | X26415620Y-35287844D01* 335 | X26320382Y-35383082D01* 336 | X26177525Y-35430701D01* 337 | X25939429Y-35430701D01* 338 | X27463239Y-35430701D02* 339 | X26891810Y-35430701D01* 340 | X27177525Y-35430701D02* 341 | X27177525Y-34430701D01* 342 | X27082286Y-34573559D01* 343 | X26987048Y-34668797D01* 344 | X26891810Y-34716416D01* 345 | X28479429Y-36700701D02* 346 | X28479429Y-35700701D01* 347 | X28717525Y-35700701D01* 348 | X28860382Y-35748321D01* 349 | X28955620Y-35843559D01* 350 | X29003239Y-35938797D01* 351 | X29050858Y-36129273D01* 352 | X29050858Y-36272130D01* 353 | X29003239Y-36462606D01* 354 | X28955620Y-36557844D01* 355 | X28860382Y-36653082D01* 356 | X28717525Y-36700701D01* 357 | X28479429Y-36700701D01* 358 | X29669905Y-35700701D02* 359 | X29765144Y-35700701D01* 360 | X29860382Y-35748321D01* 361 | X29908001Y-35795940D01* 362 | X29955620Y-35891178D01* 363 | X30003239Y-36081654D01* 364 | X30003239Y-36319749D01* 365 | X29955620Y-36510225D01* 366 | X29908001Y-36605463D01* 367 | X29860382Y-36653082D01* 368 | X29765144Y-36700701D01* 369 | X29669905Y-36700701D01* 370 | X29574667Y-36653082D01* 371 | X29527048Y-36605463D01* 372 | X29479429Y-36510225D01* 373 | X29431810Y-36319749D01* 374 | X29431810Y-36081654D01* 375 | X29479429Y-35891178D01* 376 | X29527048Y-35795940D01* 377 | X29574667Y-35748321D01* 378 | X29669905Y-35700701D01* 379 | X30424191Y-34430701D02* 380 | X30757525Y-35430701D01* 381 | X31090858Y-34430701D01* 382 | X31995620Y-35335463D02* 383 | X31948001Y-35383082D01* 384 | X31805144Y-35430701D01* 385 | X31709905Y-35430701D01* 386 | X31567048Y-35383082D01* 387 | X31471810Y-35287844D01* 388 | X31424191Y-35192606D01* 389 | X31376572Y-35002130D01* 390 | X31376572Y-34859273D01* 391 | X31424191Y-34668797D01* 392 | X31471810Y-34573559D01* 393 | X31567048Y-34478321D01* 394 | X31709905Y-34430701D01* 395 | X31805144Y-34430701D01* 396 | X31948001Y-34478321D01* 397 | X31995620Y-34525940D01* 398 | X32995620Y-35335463D02* 399 | X32948001Y-35383082D01* 400 | X32805144Y-35430701D01* 401 | X32709905Y-35430701D01* 402 | X32567048Y-35383082D01* 403 | X32471810Y-35287844D01* 404 | X32424191Y-35192606D01* 405 | X32376572Y-35002130D01* 406 | X32376572Y-34859273D01* 407 | X32424191Y-34668797D01* 408 | X32471810Y-34573559D01* 409 | X32567048Y-34478321D01* 410 | X32709905Y-34430701D01* 411 | X32805144Y-34430701D01* 412 | X32948001Y-34478321D01* 413 | X32995620Y-34525940D01* 414 | X33535620Y-35748321D02* 415 | X33440382Y-35700701D01* 416 | X33297525Y-35700701D01* 417 | X33154667Y-35748321D01* 418 | X33059429Y-35843559D01* 419 | X33011810Y-35938797D01* 420 | X32964191Y-36129273D01* 421 | X32964191Y-36272130D01* 422 | X33011810Y-36462606D01* 423 | X33059429Y-36557844D01* 424 | X33154667Y-36653082D01* 425 | X33297525Y-36700701D01* 426 | X33392763Y-36700701D01* 427 | X33535620Y-36653082D01* 428 | X33583239Y-36605463D01* 429 | X33583239Y-36272130D01* 430 | X33392763Y-36272130D01* 431 | X34011810Y-36700701D02* 432 | X34011810Y-35700701D01* 433 | X34583239Y-36700701D01* 434 | X34583239Y-35700701D01* 435 | X35059429Y-36700701D02* 436 | X35059429Y-35700701D01* 437 | X35297525Y-35700701D01* 438 | X35440382Y-35748321D01* 439 | X35535620Y-35843559D01* 440 | X35583239Y-35938797D01* 441 | X35630858Y-36129273D01* 442 | X35630858Y-36272130D01* 443 | X35583239Y-36462606D01* 444 | X35535620Y-36557844D01* 445 | X35440382Y-36653082D01* 446 | X35297525Y-36700701D01* 447 | X35059429Y-36700701D01* 448 | X61915620Y-17603082D02* 449 | X62058477Y-17650701D01* 450 | X62296572Y-17650701D01* 451 | X62391810Y-17603082D01* 452 | X62439429Y-17555463D01* 453 | X62487048Y-17460225D01* 454 | X62487048Y-17364987D01* 455 | X62439429Y-17269749D01* 456 | X62391810Y-17222130D01* 457 | X62296572Y-17174511D01* 458 | X62106096Y-17126892D01* 459 | X62010858Y-17079273D01* 460 | X61963239Y-17031654D01* 461 | X61915620Y-16936416D01* 462 | X61915620Y-16841178D01* 463 | X61963239Y-16745940D01* 464 | X62010858Y-16698321D01* 465 | X62106096Y-16650701D01* 466 | X62344191Y-16650701D01* 467 | X62487048Y-16698321D01* 468 | X62868001Y-16745940D02* 469 | X62915620Y-16698321D01* 470 | X63010858Y-16650701D01* 471 | X63248953Y-16650701D01* 472 | X63344191Y-16698321D01* 473 | X63391810Y-16745940D01* 474 | X63439429Y-16841178D01* 475 | X63439429Y-16936416D01* 476 | X63391810Y-17079273D01* 477 | X62820382Y-17650701D01* 478 | X63439429Y-17650701D01* 479 | X54890858Y-36605463D02* 480 | X54843239Y-36653082D01* 481 | X54700382Y-36700701D01* 482 | X54605144Y-36700701D01* 483 | X54462286Y-36653082D01* 484 | X54367048Y-36557844D01* 485 | X54319429Y-36462606D01* 486 | X54271810Y-36272130D01* 487 | X54271810Y-36129273D01* 488 | X54319429Y-35938797D01* 489 | X54367048Y-35843559D01* 490 | X54462286Y-35748321D01* 491 | X54605144Y-35700701D01* 492 | X54700382Y-35700701D01* 493 | X54843239Y-35748321D01* 494 | X54890858Y-35795940D01* 495 | X55271810Y-36653082D02* 496 | X55414667Y-36700701D01* 497 | X55652763Y-36700701D01* 498 | X55748001Y-36653082D01* 499 | X55795620Y-36605463D01* 500 | X55843239Y-36510225D01* 501 | X55843239Y-36414987D01* 502 | X55795620Y-36319749D01* 503 | X55748001Y-36272130D01* 504 | X55652763Y-36224511D01* 505 | X55462286Y-36176892D01* 506 | X55367048Y-36129273D01* 507 | X55319429Y-36081654D01* 508 | X55271810Y-35986416D01* 509 | X55271810Y-35891178D01* 510 | X55319429Y-35795940D01* 511 | X55367048Y-35748321D01* 512 | X55462286Y-35700701D01* 513 | X55700382Y-35700701D01* 514 | X55843239Y-35748321D01* 515 | X56835620Y-35430701D02* 516 | X56835620Y-34430701D01* 517 | X57073715Y-34430701D01* 518 | X57216572Y-34478321D01* 519 | X57311810Y-34573559D01* 520 | X57359429Y-34668797D01* 521 | X57407048Y-34859273D01* 522 | X57407048Y-35002130D01* 523 | X57359429Y-35192606D01* 524 | X57311810Y-35287844D01* 525 | X57216572Y-35383082D01* 526 | X57073715Y-35430701D01* 527 | X56835620Y-35430701D01* 528 | X58407048Y-35335463D02* 529 | X58359429Y-35383082D01* 530 | X58216572Y-35430701D01* 531 | X58121334Y-35430701D01* 532 | X57978477Y-35383082D01* 533 | X57883239Y-35287844D01* 534 | X57835620Y-35192606D01* 535 | X57788001Y-35002130D01* 536 | X57788001Y-34859273D01* 537 | X57835620Y-34668797D01* 538 | X57883239Y-34573559D01* 539 | X57978477Y-34478321D01* 540 | X58121334Y-34430701D01* 541 | X58216572Y-34430701D01* 542 | X58359429Y-34478321D01* 543 | X58407048Y-34525940D01* 544 | X59518477Y-36700701D02* 545 | X59185144Y-36224511D01* 546 | X58947048Y-36700701D02* 547 | X58947048Y-35700701D01* 548 | X59328001Y-35700701D01* 549 | X59423239Y-35748321D01* 550 | X59470858Y-35795940D01* 551 | X59518477Y-35891178D01* 552 | X59518477Y-36034035D01* 553 | X59470858Y-36129273D01* 554 | X59423239Y-36176892D01* 555 | X59328001Y-36224511D01* 556 | X58947048Y-36224511D01* 557 | X59947048Y-36176892D02* 558 | X60280382Y-36176892D01* 559 | X60423239Y-36700701D02* 560 | X59947048Y-36700701D01* 561 | X59947048Y-35700701D01* 562 | X60423239Y-35700701D01* 563 | X60804191Y-36653082D02* 564 | X60947048Y-36700701D01* 565 | X61185144Y-36700701D01* 566 | X61280382Y-36653082D01* 567 | X61328001Y-36605463D01* 568 | X61375620Y-36510225D01* 569 | X61375620Y-36414987D01* 570 | X61328001Y-36319749D01* 571 | X61280382Y-36272130D01* 572 | X61185144Y-36224511D01* 573 | X60994667Y-36176892D01* 574 | X60899429Y-36129273D01* 575 | X60851810Y-36081654D01* 576 | X60804191Y-35986416D01* 577 | X60804191Y-35891178D01* 578 | X60851810Y-35795940D01* 579 | X60899429Y-35748321D01* 580 | X60994667Y-35700701D01* 581 | X61232763Y-35700701D01* 582 | X61375620Y-35748321D01* 583 | X61939429Y-35430701D02* 584 | X61939429Y-34430701D01* 585 | X62177525Y-34430701D01* 586 | X62320382Y-34478321D01* 587 | X62415620Y-34573559D01* 588 | X62463239Y-34668797D01* 589 | X62510858Y-34859273D01* 590 | X62510858Y-35002130D01* 591 | X62463239Y-35192606D01* 592 | X62415620Y-35287844D01* 593 | X62320382Y-35383082D01* 594 | X62177525Y-35430701D01* 595 | X61939429Y-35430701D01* 596 | X63463239Y-35430701D02* 597 | X62891810Y-35430701D01* 598 | X63177525Y-35430701D02* 599 | X63177525Y-34430701D01* 600 | X63082286Y-34573559D01* 601 | X62987048Y-34668797D01* 602 | X62891810Y-34716416D01* 603 | X64479429Y-36700701D02* 604 | X64479429Y-35700701D01* 605 | X64717525Y-35700701D01* 606 | X64860382Y-35748321D01* 607 | X64955620Y-35843559D01* 608 | X65003239Y-35938797D01* 609 | X65050858Y-36129273D01* 610 | X65050858Y-36272130D01* 611 | X65003239Y-36462606D01* 612 | X64955620Y-36557844D01* 613 | X64860382Y-36653082D01* 614 | X64717525Y-36700701D01* 615 | X64479429Y-36700701D01* 616 | X65669905Y-35700701D02* 617 | X65765144Y-35700701D01* 618 | X65860382Y-35748321D01* 619 | X65908001Y-35795940D01* 620 | X65955620Y-35891178D01* 621 | X66003239Y-36081654D01* 622 | X66003239Y-36319749D01* 623 | X65955620Y-36510225D01* 624 | X65908001Y-36605463D01* 625 | X65860382Y-36653082D01* 626 | X65765144Y-36700701D01* 627 | X65669905Y-36700701D01* 628 | X65574667Y-36653082D01* 629 | X65527048Y-36605463D01* 630 | X65479429Y-36510225D01* 631 | X65431810Y-36319749D01* 632 | X65431810Y-36081654D01* 633 | X65479429Y-35891178D01* 634 | X65527048Y-35795940D01* 635 | X65574667Y-35748321D01* 636 | X65669905Y-35700701D01* 637 | X66424191Y-34430701D02* 638 | X66757525Y-35430701D01* 639 | X67090858Y-34430701D01* 640 | X67995620Y-35335463D02* 641 | X67948001Y-35383082D01* 642 | X67805144Y-35430701D01* 643 | X67709905Y-35430701D01* 644 | X67567048Y-35383082D01* 645 | X67471810Y-35287844D01* 646 | X67424191Y-35192606D01* 647 | X67376572Y-35002130D01* 648 | X67376572Y-34859273D01* 649 | X67424191Y-34668797D01* 650 | X67471810Y-34573559D01* 651 | X67567048Y-34478321D01* 652 | X67709905Y-34430701D01* 653 | X67805144Y-34430701D01* 654 | X67948001Y-34478321D01* 655 | X67995620Y-34525940D01* 656 | X68995620Y-35335463D02* 657 | X68948001Y-35383082D01* 658 | X68805144Y-35430701D01* 659 | X68709905Y-35430701D01* 660 | X68567048Y-35383082D01* 661 | X68471810Y-35287844D01* 662 | X68424191Y-35192606D01* 663 | X68376572Y-35002130D01* 664 | X68376572Y-34859273D01* 665 | X68424191Y-34668797D01* 666 | X68471810Y-34573559D01* 667 | X68567048Y-34478321D01* 668 | X68709905Y-34430701D01* 669 | X68805144Y-34430701D01* 670 | X68948001Y-34478321D01* 671 | X68995620Y-34525940D01* 672 | X69535620Y-35748321D02* 673 | X69440382Y-35700701D01* 674 | X69297525Y-35700701D01* 675 | X69154667Y-35748321D01* 676 | X69059429Y-35843559D01* 677 | X69011810Y-35938797D01* 678 | X68964191Y-36129273D01* 679 | X68964191Y-36272130D01* 680 | X69011810Y-36462606D01* 681 | X69059429Y-36557844D01* 682 | X69154667Y-36653082D01* 683 | X69297525Y-36700701D01* 684 | X69392763Y-36700701D01* 685 | X69535620Y-36653082D01* 686 | X69583239Y-36605463D01* 687 | X69583239Y-36272130D01* 688 | X69392763Y-36272130D01* 689 | X70011810Y-36700701D02* 690 | X70011810Y-35700701D01* 691 | X70583239Y-36700701D01* 692 | X70583239Y-35700701D01* 693 | X71059429Y-36700701D02* 694 | X71059429Y-35700701D01* 695 | X71297525Y-35700701D01* 696 | X71440382Y-35748321D01* 697 | X71535620Y-35843559D01* 698 | X71583239Y-35938797D01* 699 | X71630858Y-36129273D01* 700 | X71630858Y-36272130D01* 701 | X71583239Y-36462606D01* 702 | X71535620Y-36557844D01* 703 | X71440382Y-36653082D01* 704 | X71297525Y-36700701D01* 705 | X71059429Y-36700701D01* 706 | X97915620Y-17603082D02* 707 | X98058477Y-17650701D01* 708 | X98296572Y-17650701D01* 709 | X98391810Y-17603082D01* 710 | X98439429Y-17555463D01* 711 | X98487048Y-17460225D01* 712 | X98487048Y-17364987D01* 713 | X98439429Y-17269749D01* 714 | X98391810Y-17222130D01* 715 | X98296572Y-17174511D01* 716 | X98106096Y-17126892D01* 717 | X98010858Y-17079273D01* 718 | X97963239Y-17031654D01* 719 | X97915620Y-16936416D01* 720 | X97915620Y-16841178D01* 721 | X97963239Y-16745940D01* 722 | X98010858Y-16698321D01* 723 | X98106096Y-16650701D01* 724 | X98344191Y-16650701D01* 725 | X98487048Y-16698321D01* 726 | X98820382Y-16650701D02* 727 | X99439429Y-16650701D01* 728 | X99106096Y-17031654D01* 729 | X99248953Y-17031654D01* 730 | X99344191Y-17079273D01* 731 | X99391810Y-17126892D01* 732 | X99439429Y-17222130D01* 733 | X99439429Y-17460225D01* 734 | X99391810Y-17555463D01* 735 | X99344191Y-17603082D01* 736 | X99248953Y-17650701D01* 737 | X98963239Y-17650701D01* 738 | X98868001Y-17603082D01* 739 | X98820382Y-17555463D01* 740 | X90890858Y-36605463D02* 741 | X90843239Y-36653082D01* 742 | X90700382Y-36700701D01* 743 | X90605144Y-36700701D01* 744 | X90462286Y-36653082D01* 745 | X90367048Y-36557844D01* 746 | X90319429Y-36462606D01* 747 | X90271810Y-36272130D01* 748 | X90271810Y-36129273D01* 749 | X90319429Y-35938797D01* 750 | X90367048Y-35843559D01* 751 | X90462286Y-35748321D01* 752 | X90605144Y-35700701D01* 753 | X90700382Y-35700701D01* 754 | X90843239Y-35748321D01* 755 | X90890858Y-35795940D01* 756 | X91271810Y-36653082D02* 757 | X91414667Y-36700701D01* 758 | X91652763Y-36700701D01* 759 | X91748001Y-36653082D01* 760 | X91795620Y-36605463D01* 761 | X91843239Y-36510225D01* 762 | X91843239Y-36414987D01* 763 | X91795620Y-36319749D01* 764 | X91748001Y-36272130D01* 765 | X91652763Y-36224511D01* 766 | X91462286Y-36176892D01* 767 | X91367048Y-36129273D01* 768 | X91319429Y-36081654D01* 769 | X91271810Y-35986416D01* 770 | X91271810Y-35891178D01* 771 | X91319429Y-35795940D01* 772 | X91367048Y-35748321D01* 773 | X91462286Y-35700701D01* 774 | X91700382Y-35700701D01* 775 | X91843239Y-35748321D01* 776 | X92835620Y-35430701D02* 777 | X92835620Y-34430701D01* 778 | X93073715Y-34430701D01* 779 | X93216572Y-34478321D01* 780 | X93311810Y-34573559D01* 781 | X93359429Y-34668797D01* 782 | X93407048Y-34859273D01* 783 | X93407048Y-35002130D01* 784 | X93359429Y-35192606D01* 785 | X93311810Y-35287844D01* 786 | X93216572Y-35383082D01* 787 | X93073715Y-35430701D01* 788 | X92835620Y-35430701D01* 789 | X94407048Y-35335463D02* 790 | X94359429Y-35383082D01* 791 | X94216572Y-35430701D01* 792 | X94121334Y-35430701D01* 793 | X93978477Y-35383082D01* 794 | X93883239Y-35287844D01* 795 | X93835620Y-35192606D01* 796 | X93788001Y-35002130D01* 797 | X93788001Y-34859273D01* 798 | X93835620Y-34668797D01* 799 | X93883239Y-34573559D01* 800 | X93978477Y-34478321D01* 801 | X94121334Y-34430701D01* 802 | X94216572Y-34430701D01* 803 | X94359429Y-34478321D01* 804 | X94407048Y-34525940D01* 805 | X95518477Y-36700701D02* 806 | X95185144Y-36224511D01* 807 | X94947048Y-36700701D02* 808 | X94947048Y-35700701D01* 809 | X95328001Y-35700701D01* 810 | X95423239Y-35748321D01* 811 | X95470858Y-35795940D01* 812 | X95518477Y-35891178D01* 813 | X95518477Y-36034035D01* 814 | X95470858Y-36129273D01* 815 | X95423239Y-36176892D01* 816 | X95328001Y-36224511D01* 817 | X94947048Y-36224511D01* 818 | X95947048Y-36176892D02* 819 | X96280382Y-36176892D01* 820 | X96423239Y-36700701D02* 821 | X95947048Y-36700701D01* 822 | X95947048Y-35700701D01* 823 | X96423239Y-35700701D01* 824 | X96804191Y-36653082D02* 825 | X96947048Y-36700701D01* 826 | X97185144Y-36700701D01* 827 | X97280382Y-36653082D01* 828 | X97328001Y-36605463D01* 829 | X97375620Y-36510225D01* 830 | X97375620Y-36414987D01* 831 | X97328001Y-36319749D01* 832 | X97280382Y-36272130D01* 833 | X97185144Y-36224511D01* 834 | X96994667Y-36176892D01* 835 | X96899429Y-36129273D01* 836 | X96851810Y-36081654D01* 837 | X96804191Y-35986416D01* 838 | X96804191Y-35891178D01* 839 | X96851810Y-35795940D01* 840 | X96899429Y-35748321D01* 841 | X96994667Y-35700701D01* 842 | X97232763Y-35700701D01* 843 | X97375620Y-35748321D01* 844 | X97939429Y-35430701D02* 845 | X97939429Y-34430701D01* 846 | X98177525Y-34430701D01* 847 | X98320382Y-34478321D01* 848 | X98415620Y-34573559D01* 849 | X98463239Y-34668797D01* 850 | X98510858Y-34859273D01* 851 | X98510858Y-35002130D01* 852 | X98463239Y-35192606D01* 853 | X98415620Y-35287844D01* 854 | X98320382Y-35383082D01* 855 | X98177525Y-35430701D01* 856 | X97939429Y-35430701D01* 857 | X99463239Y-35430701D02* 858 | X98891810Y-35430701D01* 859 | X99177525Y-35430701D02* 860 | X99177525Y-34430701D01* 861 | X99082286Y-34573559D01* 862 | X98987048Y-34668797D01* 863 | X98891810Y-34716416D01* 864 | X100479429Y-36700701D02* 865 | X100479429Y-35700701D01* 866 | X100717525Y-35700701D01* 867 | X100860382Y-35748321D01* 868 | X100955620Y-35843559D01* 869 | X101003239Y-35938797D01* 870 | X101050858Y-36129273D01* 871 | X101050858Y-36272130D01* 872 | X101003239Y-36462606D01* 873 | X100955620Y-36557844D01* 874 | X100860382Y-36653082D01* 875 | X100717525Y-36700701D01* 876 | X100479429Y-36700701D01* 877 | X101669905Y-35700701D02* 878 | X101765144Y-35700701D01* 879 | X101860382Y-35748321D01* 880 | X101908001Y-35795940D01* 881 | X101955620Y-35891178D01* 882 | X102003239Y-36081654D01* 883 | X102003239Y-36319749D01* 884 | X101955620Y-36510225D01* 885 | X101908001Y-36605463D01* 886 | X101860382Y-36653082D01* 887 | X101765144Y-36700701D01* 888 | X101669905Y-36700701D01* 889 | X101574667Y-36653082D01* 890 | X101527048Y-36605463D01* 891 | X101479429Y-36510225D01* 892 | X101431810Y-36319749D01* 893 | X101431810Y-36081654D01* 894 | X101479429Y-35891178D01* 895 | X101527048Y-35795940D01* 896 | X101574667Y-35748321D01* 897 | X101669905Y-35700701D01* 898 | X102424191Y-34430701D02* 899 | X102757525Y-35430701D01* 900 | X103090858Y-34430701D01* 901 | X103995620Y-35335463D02* 902 | X103948001Y-35383082D01* 903 | X103805144Y-35430701D01* 904 | X103709905Y-35430701D01* 905 | X103567048Y-35383082D01* 906 | X103471810Y-35287844D01* 907 | X103424191Y-35192606D01* 908 | X103376572Y-35002130D01* 909 | X103376572Y-34859273D01* 910 | X103424191Y-34668797D01* 911 | X103471810Y-34573559D01* 912 | X103567048Y-34478321D01* 913 | X103709905Y-34430701D01* 914 | X103805144Y-34430701D01* 915 | X103948001Y-34478321D01* 916 | X103995620Y-34525940D01* 917 | X104995620Y-35335463D02* 918 | X104948001Y-35383082D01* 919 | X104805144Y-35430701D01* 920 | X104709905Y-35430701D01* 921 | X104567048Y-35383082D01* 922 | X104471810Y-35287844D01* 923 | X104424191Y-35192606D01* 924 | X104376572Y-35002130D01* 925 | X104376572Y-34859273D01* 926 | X104424191Y-34668797D01* 927 | X104471810Y-34573559D01* 928 | X104567048Y-34478321D01* 929 | X104709905Y-34430701D01* 930 | X104805144Y-34430701D01* 931 | X104948001Y-34478321D01* 932 | X104995620Y-34525940D01* 933 | X105535620Y-35748321D02* 934 | X105440382Y-35700701D01* 935 | X105297525Y-35700701D01* 936 | X105154667Y-35748321D01* 937 | X105059429Y-35843559D01* 938 | X105011810Y-35938797D01* 939 | X104964191Y-36129273D01* 940 | X104964191Y-36272130D01* 941 | X105011810Y-36462606D01* 942 | X105059429Y-36557844D01* 943 | X105154667Y-36653082D01* 944 | X105297525Y-36700701D01* 945 | X105392763Y-36700701D01* 946 | X105535620Y-36653082D01* 947 | X105583239Y-36605463D01* 948 | X105583239Y-36272130D01* 949 | X105392763Y-36272130D01* 950 | X106011810Y-36700701D02* 951 | X106011810Y-35700701D01* 952 | X106583239Y-36700701D01* 953 | X106583239Y-35700701D01* 954 | X107059429Y-36700701D02* 955 | X107059429Y-35700701D01* 956 | X107297525Y-35700701D01* 957 | X107440382Y-35748321D01* 958 | X107535620Y-35843559D01* 959 | X107583239Y-35938797D01* 960 | X107630858Y-36129273D01* 961 | X107630858Y-36272130D01* 962 | X107583239Y-36462606D01* 963 | X107535620Y-36557844D01* 964 | X107440382Y-36653082D01* 965 | X107297525Y-36700701D01* 966 | X107059429Y-36700701D01* 967 | X277915620Y-17603082D02* 968 | X278058477Y-17650701D01* 969 | X278296572Y-17650701D01* 970 | X278391810Y-17603082D01* 971 | X278439429Y-17555463D01* 972 | X278487048Y-17460225D01* 973 | X278487048Y-17364987D01* 974 | X278439429Y-17269749D01* 975 | X278391810Y-17222130D01* 976 | X278296572Y-17174511D01* 977 | X278106096Y-17126892D01* 978 | X278010858Y-17079273D01* 979 | X277963239Y-17031654D01* 980 | X277915620Y-16936416D01* 981 | X277915620Y-16841178D01* 982 | X277963239Y-16745940D01* 983 | X278010858Y-16698321D01* 984 | X278106096Y-16650701D01* 985 | X278344191Y-16650701D01* 986 | X278487048Y-16698321D01* 987 | X279058477Y-17079273D02* 988 | X278963239Y-17031654D01* 989 | X278915620Y-16984035D01* 990 | X278868001Y-16888797D01* 991 | X278868001Y-16841178D01* 992 | X278915620Y-16745940D01* 993 | X278963239Y-16698321D01* 994 | X279058477Y-16650701D01* 995 | X279248953Y-16650701D01* 996 | X279344191Y-16698321D01* 997 | X279391810Y-16745940D01* 998 | X279439429Y-16841178D01* 999 | X279439429Y-16888797D01* 1000 | X279391810Y-16984035D01* 1001 | X279344191Y-17031654D01* 1002 | X279248953Y-17079273D01* 1003 | X279058477Y-17079273D01* 1004 | X278963239Y-17126892D01* 1005 | X278915620Y-17174511D01* 1006 | X278868001Y-17269749D01* 1007 | X278868001Y-17460225D01* 1008 | X278915620Y-17555463D01* 1009 | X278963239Y-17603082D01* 1010 | X279058477Y-17650701D01* 1011 | X279248953Y-17650701D01* 1012 | X279344191Y-17603082D01* 1013 | X279391810Y-17555463D01* 1014 | X279439429Y-17460225D01* 1015 | X279439429Y-17269749D01* 1016 | X279391810Y-17174511D01* 1017 | X279344191Y-17126892D01* 1018 | X279248953Y-17079273D01* 1019 | X270890858Y-36605463D02* 1020 | X270843239Y-36653082D01* 1021 | X270700382Y-36700701D01* 1022 | X270605144Y-36700701D01* 1023 | X270462286Y-36653082D01* 1024 | X270367048Y-36557844D01* 1025 | X270319429Y-36462606D01* 1026 | X270271810Y-36272130D01* 1027 | X270271810Y-36129273D01* 1028 | X270319429Y-35938797D01* 1029 | X270367048Y-35843559D01* 1030 | X270462286Y-35748321D01* 1031 | X270605144Y-35700701D01* 1032 | X270700382Y-35700701D01* 1033 | X270843239Y-35748321D01* 1034 | X270890858Y-35795940D01* 1035 | X271271810Y-36653082D02* 1036 | X271414667Y-36700701D01* 1037 | X271652763Y-36700701D01* 1038 | X271748001Y-36653082D01* 1039 | X271795620Y-36605463D01* 1040 | X271843239Y-36510225D01* 1041 | X271843239Y-36414987D01* 1042 | X271795620Y-36319749D01* 1043 | X271748001Y-36272130D01* 1044 | X271652763Y-36224511D01* 1045 | X271462286Y-36176892D01* 1046 | X271367048Y-36129273D01* 1047 | X271319429Y-36081654D01* 1048 | X271271810Y-35986416D01* 1049 | X271271810Y-35891178D01* 1050 | X271319429Y-35795940D01* 1051 | X271367048Y-35748321D01* 1052 | X271462286Y-35700701D01* 1053 | X271700382Y-35700701D01* 1054 | X271843239Y-35748321D01* 1055 | X272835620Y-35430701D02* 1056 | X272835620Y-34430701D01* 1057 | X273073715Y-34430701D01* 1058 | X273216572Y-34478321D01* 1059 | X273311810Y-34573559D01* 1060 | X273359429Y-34668797D01* 1061 | X273407048Y-34859273D01* 1062 | X273407048Y-35002130D01* 1063 | X273359429Y-35192606D01* 1064 | X273311810Y-35287844D01* 1065 | X273216572Y-35383082D01* 1066 | X273073715Y-35430701D01* 1067 | X272835620Y-35430701D01* 1068 | X274407048Y-35335463D02* 1069 | X274359429Y-35383082D01* 1070 | X274216572Y-35430701D01* 1071 | X274121334Y-35430701D01* 1072 | X273978477Y-35383082D01* 1073 | X273883239Y-35287844D01* 1074 | X273835620Y-35192606D01* 1075 | X273788001Y-35002130D01* 1076 | X273788001Y-34859273D01* 1077 | X273835620Y-34668797D01* 1078 | X273883239Y-34573559D01* 1079 | X273978477Y-34478321D01* 1080 | X274121334Y-34430701D01* 1081 | X274216572Y-34430701D01* 1082 | X274359429Y-34478321D01* 1083 | X274407048Y-34525940D01* 1084 | X275518477Y-36700701D02* 1085 | X275185144Y-36224511D01* 1086 | X274947048Y-36700701D02* 1087 | X274947048Y-35700701D01* 1088 | X275328001Y-35700701D01* 1089 | X275423239Y-35748321D01* 1090 | X275470858Y-35795940D01* 1091 | X275518477Y-35891178D01* 1092 | X275518477Y-36034035D01* 1093 | X275470858Y-36129273D01* 1094 | X275423239Y-36176892D01* 1095 | X275328001Y-36224511D01* 1096 | X274947048Y-36224511D01* 1097 | X275947048Y-36176892D02* 1098 | X276280382Y-36176892D01* 1099 | X276423239Y-36700701D02* 1100 | X275947048Y-36700701D01* 1101 | X275947048Y-35700701D01* 1102 | X276423239Y-35700701D01* 1103 | X276804191Y-36653082D02* 1104 | X276947048Y-36700701D01* 1105 | X277185144Y-36700701D01* 1106 | X277280382Y-36653082D01* 1107 | X277328001Y-36605463D01* 1108 | X277375620Y-36510225D01* 1109 | X277375620Y-36414987D01* 1110 | X277328001Y-36319749D01* 1111 | X277280382Y-36272130D01* 1112 | X277185144Y-36224511D01* 1113 | X276994667Y-36176892D01* 1114 | X276899429Y-36129273D01* 1115 | X276851810Y-36081654D01* 1116 | X276804191Y-35986416D01* 1117 | X276804191Y-35891178D01* 1118 | X276851810Y-35795940D01* 1119 | X276899429Y-35748321D01* 1120 | X276994667Y-35700701D01* 1121 | X277232763Y-35700701D01* 1122 | X277375620Y-35748321D01* 1123 | X277939429Y-35430701D02* 1124 | X277939429Y-34430701D01* 1125 | X278177525Y-34430701D01* 1126 | X278320382Y-34478321D01* 1127 | X278415620Y-34573559D01* 1128 | X278463239Y-34668797D01* 1129 | X278510858Y-34859273D01* 1130 | X278510858Y-35002130D01* 1131 | X278463239Y-35192606D01* 1132 | X278415620Y-35287844D01* 1133 | X278320382Y-35383082D01* 1134 | X278177525Y-35430701D01* 1135 | X277939429Y-35430701D01* 1136 | X279463239Y-35430701D02* 1137 | X278891810Y-35430701D01* 1138 | X279177525Y-35430701D02* 1139 | X279177525Y-34430701D01* 1140 | X279082286Y-34573559D01* 1141 | X278987048Y-34668797D01* 1142 | X278891810Y-34716416D01* 1143 | X280479429Y-36700701D02* 1144 | X280479429Y-35700701D01* 1145 | X280717525Y-35700701D01* 1146 | X280860382Y-35748321D01* 1147 | X280955620Y-35843559D01* 1148 | X281003239Y-35938797D01* 1149 | X281050858Y-36129273D01* 1150 | X281050858Y-36272130D01* 1151 | X281003239Y-36462606D01* 1152 | X280955620Y-36557844D01* 1153 | X280860382Y-36653082D01* 1154 | X280717525Y-36700701D01* 1155 | X280479429Y-36700701D01* 1156 | X281669905Y-35700701D02* 1157 | X281765144Y-35700701D01* 1158 | X281860382Y-35748321D01* 1159 | X281908001Y-35795940D01* 1160 | X281955620Y-35891178D01* 1161 | X282003239Y-36081654D01* 1162 | X282003239Y-36319749D01* 1163 | X281955620Y-36510225D01* 1164 | X281908001Y-36605463D01* 1165 | X281860382Y-36653082D01* 1166 | X281765144Y-36700701D01* 1167 | X281669905Y-36700701D01* 1168 | X281574667Y-36653082D01* 1169 | X281527048Y-36605463D01* 1170 | X281479429Y-36510225D01* 1171 | X281431810Y-36319749D01* 1172 | X281431810Y-36081654D01* 1173 | X281479429Y-35891178D01* 1174 | X281527048Y-35795940D01* 1175 | X281574667Y-35748321D01* 1176 | X281669905Y-35700701D01* 1177 | X282424191Y-34430701D02* 1178 | X282757525Y-35430701D01* 1179 | X283090858Y-34430701D01* 1180 | X283995620Y-35335463D02* 1181 | X283948001Y-35383082D01* 1182 | X283805144Y-35430701D01* 1183 | X283709905Y-35430701D01* 1184 | X283567048Y-35383082D01* 1185 | X283471810Y-35287844D01* 1186 | X283424191Y-35192606D01* 1187 | X283376572Y-35002130D01* 1188 | X283376572Y-34859273D01* 1189 | X283424191Y-34668797D01* 1190 | X283471810Y-34573559D01* 1191 | X283567048Y-34478321D01* 1192 | X283709905Y-34430701D01* 1193 | X283805144Y-34430701D01* 1194 | X283948001Y-34478321D01* 1195 | X283995620Y-34525940D01* 1196 | X284995620Y-35335463D02* 1197 | X284948001Y-35383082D01* 1198 | X284805144Y-35430701D01* 1199 | X284709905Y-35430701D01* 1200 | X284567048Y-35383082D01* 1201 | X284471810Y-35287844D01* 1202 | X284424191Y-35192606D01* 1203 | X284376572Y-35002130D01* 1204 | X284376572Y-34859273D01* 1205 | X284424191Y-34668797D01* 1206 | X284471810Y-34573559D01* 1207 | X284567048Y-34478321D01* 1208 | X284709905Y-34430701D01* 1209 | X284805144Y-34430701D01* 1210 | X284948001Y-34478321D01* 1211 | X284995620Y-34525940D01* 1212 | X285535620Y-35748321D02* 1213 | X285440382Y-35700701D01* 1214 | X285297525Y-35700701D01* 1215 | X285154667Y-35748321D01* 1216 | X285059429Y-35843559D01* 1217 | X285011810Y-35938797D01* 1218 | X284964191Y-36129273D01* 1219 | X284964191Y-36272130D01* 1220 | X285011810Y-36462606D01* 1221 | X285059429Y-36557844D01* 1222 | X285154667Y-36653082D01* 1223 | X285297525Y-36700701D01* 1224 | X285392763Y-36700701D01* 1225 | X285535620Y-36653082D01* 1226 | X285583239Y-36605463D01* 1227 | X285583239Y-36272130D01* 1228 | X285392763Y-36272130D01* 1229 | X286011810Y-36700701D02* 1230 | X286011810Y-35700701D01* 1231 | X286583239Y-36700701D01* 1232 | X286583239Y-35700701D01* 1233 | X287059429Y-36700701D02* 1234 | X287059429Y-35700701D01* 1235 | X287297525Y-35700701D01* 1236 | X287440382Y-35748321D01* 1237 | X287535620Y-35843559D01* 1238 | X287583239Y-35938797D01* 1239 | X287630858Y-36129273D01* 1240 | X287630858Y-36272130D01* 1241 | X287583239Y-36462606D01* 1242 | X287535620Y-36557844D01* 1243 | X287440382Y-36653082D01* 1244 | X287297525Y-36700701D01* 1245 | X287059429Y-36700701D01* 1246 | X241915620Y-17603082D02* 1247 | X242058477Y-17650701D01* 1248 | X242296572Y-17650701D01* 1249 | X242391810Y-17603082D01* 1250 | X242439429Y-17555463D01* 1251 | X242487048Y-17460225D01* 1252 | X242487048Y-17364987D01* 1253 | X242439429Y-17269749D01* 1254 | X242391810Y-17222130D01* 1255 | X242296572Y-17174511D01* 1256 | X242106096Y-17126892D01* 1257 | X242010858Y-17079273D01* 1258 | X241963239Y-17031654D01* 1259 | X241915620Y-16936416D01* 1260 | X241915620Y-16841178D01* 1261 | X241963239Y-16745940D01* 1262 | X242010858Y-16698321D01* 1263 | X242106096Y-16650701D01* 1264 | X242344191Y-16650701D01* 1265 | X242487048Y-16698321D01* 1266 | X242820382Y-16650701D02* 1267 | X243487048Y-16650701D01* 1268 | X243058477Y-17650701D01* 1269 | X234890858Y-36605463D02* 1270 | X234843239Y-36653082D01* 1271 | X234700382Y-36700701D01* 1272 | X234605144Y-36700701D01* 1273 | X234462286Y-36653082D01* 1274 | X234367048Y-36557844D01* 1275 | X234319429Y-36462606D01* 1276 | X234271810Y-36272130D01* 1277 | X234271810Y-36129273D01* 1278 | X234319429Y-35938797D01* 1279 | X234367048Y-35843559D01* 1280 | X234462286Y-35748321D01* 1281 | X234605144Y-35700701D01* 1282 | X234700382Y-35700701D01* 1283 | X234843239Y-35748321D01* 1284 | X234890858Y-35795940D01* 1285 | X235271810Y-36653082D02* 1286 | X235414667Y-36700701D01* 1287 | X235652763Y-36700701D01* 1288 | X235748001Y-36653082D01* 1289 | X235795620Y-36605463D01* 1290 | X235843239Y-36510225D01* 1291 | X235843239Y-36414987D01* 1292 | X235795620Y-36319749D01* 1293 | X235748001Y-36272130D01* 1294 | X235652763Y-36224511D01* 1295 | X235462286Y-36176892D01* 1296 | X235367048Y-36129273D01* 1297 | X235319429Y-36081654D01* 1298 | X235271810Y-35986416D01* 1299 | X235271810Y-35891178D01* 1300 | X235319429Y-35795940D01* 1301 | X235367048Y-35748321D01* 1302 | X235462286Y-35700701D01* 1303 | X235700382Y-35700701D01* 1304 | X235843239Y-35748321D01* 1305 | X236835620Y-35430701D02* 1306 | X236835620Y-34430701D01* 1307 | X237073715Y-34430701D01* 1308 | X237216572Y-34478321D01* 1309 | X237311810Y-34573559D01* 1310 | X237359429Y-34668797D01* 1311 | X237407048Y-34859273D01* 1312 | X237407048Y-35002130D01* 1313 | X237359429Y-35192606D01* 1314 | X237311810Y-35287844D01* 1315 | X237216572Y-35383082D01* 1316 | X237073715Y-35430701D01* 1317 | X236835620Y-35430701D01* 1318 | X238407048Y-35335463D02* 1319 | X238359429Y-35383082D01* 1320 | X238216572Y-35430701D01* 1321 | X238121334Y-35430701D01* 1322 | X237978477Y-35383082D01* 1323 | X237883239Y-35287844D01* 1324 | X237835620Y-35192606D01* 1325 | X237788001Y-35002130D01* 1326 | X237788001Y-34859273D01* 1327 | X237835620Y-34668797D01* 1328 | X237883239Y-34573559D01* 1329 | X237978477Y-34478321D01* 1330 | X238121334Y-34430701D01* 1331 | X238216572Y-34430701D01* 1332 | X238359429Y-34478321D01* 1333 | X238407048Y-34525940D01* 1334 | X239518477Y-36700701D02* 1335 | X239185144Y-36224511D01* 1336 | X238947048Y-36700701D02* 1337 | X238947048Y-35700701D01* 1338 | X239328001Y-35700701D01* 1339 | X239423239Y-35748321D01* 1340 | X239470858Y-35795940D01* 1341 | X239518477Y-35891178D01* 1342 | X239518477Y-36034035D01* 1343 | X239470858Y-36129273D01* 1344 | X239423239Y-36176892D01* 1345 | X239328001Y-36224511D01* 1346 | X238947048Y-36224511D01* 1347 | X239947048Y-36176892D02* 1348 | X240280382Y-36176892D01* 1349 | X240423239Y-36700701D02* 1350 | X239947048Y-36700701D01* 1351 | X239947048Y-35700701D01* 1352 | X240423239Y-35700701D01* 1353 | X240804191Y-36653082D02* 1354 | X240947048Y-36700701D01* 1355 | X241185144Y-36700701D01* 1356 | X241280382Y-36653082D01* 1357 | X241328001Y-36605463D01* 1358 | X241375620Y-36510225D01* 1359 | X241375620Y-36414987D01* 1360 | X241328001Y-36319749D01* 1361 | X241280382Y-36272130D01* 1362 | X241185144Y-36224511D01* 1363 | X240994667Y-36176892D01* 1364 | X240899429Y-36129273D01* 1365 | X240851810Y-36081654D01* 1366 | X240804191Y-35986416D01* 1367 | X240804191Y-35891178D01* 1368 | X240851810Y-35795940D01* 1369 | X240899429Y-35748321D01* 1370 | X240994667Y-35700701D01* 1371 | X241232763Y-35700701D01* 1372 | X241375620Y-35748321D01* 1373 | X241939429Y-35430701D02* 1374 | X241939429Y-34430701D01* 1375 | X242177525Y-34430701D01* 1376 | X242320382Y-34478321D01* 1377 | X242415620Y-34573559D01* 1378 | X242463239Y-34668797D01* 1379 | X242510858Y-34859273D01* 1380 | X242510858Y-35002130D01* 1381 | X242463239Y-35192606D01* 1382 | X242415620Y-35287844D01* 1383 | X242320382Y-35383082D01* 1384 | X242177525Y-35430701D01* 1385 | X241939429Y-35430701D01* 1386 | X243463239Y-35430701D02* 1387 | X242891810Y-35430701D01* 1388 | X243177525Y-35430701D02* 1389 | X243177525Y-34430701D01* 1390 | X243082286Y-34573559D01* 1391 | X242987048Y-34668797D01* 1392 | X242891810Y-34716416D01* 1393 | X244479429Y-36700701D02* 1394 | X244479429Y-35700701D01* 1395 | X244717525Y-35700701D01* 1396 | X244860382Y-35748321D01* 1397 | X244955620Y-35843559D01* 1398 | X245003239Y-35938797D01* 1399 | X245050858Y-36129273D01* 1400 | X245050858Y-36272130D01* 1401 | X245003239Y-36462606D01* 1402 | X244955620Y-36557844D01* 1403 | X244860382Y-36653082D01* 1404 | X244717525Y-36700701D01* 1405 | X244479429Y-36700701D01* 1406 | X245669905Y-35700701D02* 1407 | X245765144Y-35700701D01* 1408 | X245860382Y-35748321D01* 1409 | X245908001Y-35795940D01* 1410 | X245955620Y-35891178D01* 1411 | X246003239Y-36081654D01* 1412 | X246003239Y-36319749D01* 1413 | X245955620Y-36510225D01* 1414 | X245908001Y-36605463D01* 1415 | X245860382Y-36653082D01* 1416 | X245765144Y-36700701D01* 1417 | X245669905Y-36700701D01* 1418 | X245574667Y-36653082D01* 1419 | X245527048Y-36605463D01* 1420 | X245479429Y-36510225D01* 1421 | X245431810Y-36319749D01* 1422 | X245431810Y-36081654D01* 1423 | X245479429Y-35891178D01* 1424 | X245527048Y-35795940D01* 1425 | X245574667Y-35748321D01* 1426 | X245669905Y-35700701D01* 1427 | X246424191Y-34430701D02* 1428 | X246757525Y-35430701D01* 1429 | X247090858Y-34430701D01* 1430 | X247995620Y-35335463D02* 1431 | X247948001Y-35383082D01* 1432 | X247805144Y-35430701D01* 1433 | X247709905Y-35430701D01* 1434 | X247567048Y-35383082D01* 1435 | X247471810Y-35287844D01* 1436 | X247424191Y-35192606D01* 1437 | X247376572Y-35002130D01* 1438 | X247376572Y-34859273D01* 1439 | X247424191Y-34668797D01* 1440 | X247471810Y-34573559D01* 1441 | X247567048Y-34478321D01* 1442 | X247709905Y-34430701D01* 1443 | X247805144Y-34430701D01* 1444 | X247948001Y-34478321D01* 1445 | X247995620Y-34525940D01* 1446 | X248995620Y-35335463D02* 1447 | X248948001Y-35383082D01* 1448 | X248805144Y-35430701D01* 1449 | X248709905Y-35430701D01* 1450 | X248567048Y-35383082D01* 1451 | X248471810Y-35287844D01* 1452 | X248424191Y-35192606D01* 1453 | X248376572Y-35002130D01* 1454 | X248376572Y-34859273D01* 1455 | X248424191Y-34668797D01* 1456 | X248471810Y-34573559D01* 1457 | X248567048Y-34478321D01* 1458 | X248709905Y-34430701D01* 1459 | X248805144Y-34430701D01* 1460 | X248948001Y-34478321D01* 1461 | X248995620Y-34525940D01* 1462 | X249535620Y-35748321D02* 1463 | X249440382Y-35700701D01* 1464 | X249297525Y-35700701D01* 1465 | X249154667Y-35748321D01* 1466 | X249059429Y-35843559D01* 1467 | X249011810Y-35938797D01* 1468 | X248964191Y-36129273D01* 1469 | X248964191Y-36272130D01* 1470 | X249011810Y-36462606D01* 1471 | X249059429Y-36557844D01* 1472 | X249154667Y-36653082D01* 1473 | X249297525Y-36700701D01* 1474 | X249392763Y-36700701D01* 1475 | X249535620Y-36653082D01* 1476 | X249583239Y-36605463D01* 1477 | X249583239Y-36272130D01* 1478 | X249392763Y-36272130D01* 1479 | X250011810Y-36700701D02* 1480 | X250011810Y-35700701D01* 1481 | X250583239Y-36700701D01* 1482 | X250583239Y-35700701D01* 1483 | X251059429Y-36700701D02* 1484 | X251059429Y-35700701D01* 1485 | X251297525Y-35700701D01* 1486 | X251440382Y-35748321D01* 1487 | X251535620Y-35843559D01* 1488 | X251583239Y-35938797D01* 1489 | X251630858Y-36129273D01* 1490 | X251630858Y-36272130D01* 1491 | X251583239Y-36462606D01* 1492 | X251535620Y-36557844D01* 1493 | X251440382Y-36653082D01* 1494 | X251297525Y-36700701D01* 1495 | X251059429Y-36700701D01* 1496 | X205915620Y-17603082D02* 1497 | X206058477Y-17650701D01* 1498 | X206296572Y-17650701D01* 1499 | X206391810Y-17603082D01* 1500 | X206439429Y-17555463D01* 1501 | X206487048Y-17460225D01* 1502 | X206487048Y-17364987D01* 1503 | X206439429Y-17269749D01* 1504 | X206391810Y-17222130D01* 1505 | X206296572Y-17174511D01* 1506 | X206106096Y-17126892D01* 1507 | X206010858Y-17079273D01* 1508 | X205963239Y-17031654D01* 1509 | X205915620Y-16936416D01* 1510 | X205915620Y-16841178D01* 1511 | X205963239Y-16745940D01* 1512 | X206010858Y-16698321D01* 1513 | X206106096Y-16650701D01* 1514 | X206344191Y-16650701D01* 1515 | X206487048Y-16698321D01* 1516 | X207344191Y-16650701D02* 1517 | X207153715Y-16650701D01* 1518 | X207058477Y-16698321D01* 1519 | X207010858Y-16745940D01* 1520 | X206915620Y-16888797D01* 1521 | X206868001Y-17079273D01* 1522 | X206868001Y-17460225D01* 1523 | X206915620Y-17555463D01* 1524 | X206963239Y-17603082D01* 1525 | X207058477Y-17650701D01* 1526 | X207248953Y-17650701D01* 1527 | X207344191Y-17603082D01* 1528 | X207391810Y-17555463D01* 1529 | X207439429Y-17460225D01* 1530 | X207439429Y-17222130D01* 1531 | X207391810Y-17126892D01* 1532 | X207344191Y-17079273D01* 1533 | X207248953Y-17031654D01* 1534 | X207058477Y-17031654D01* 1535 | X206963239Y-17079273D01* 1536 | X206915620Y-17126892D01* 1537 | X206868001Y-17222130D01* 1538 | X198890858Y-36605463D02* 1539 | X198843239Y-36653082D01* 1540 | X198700382Y-36700701D01* 1541 | X198605144Y-36700701D01* 1542 | X198462286Y-36653082D01* 1543 | X198367048Y-36557844D01* 1544 | X198319429Y-36462606D01* 1545 | X198271810Y-36272130D01* 1546 | X198271810Y-36129273D01* 1547 | X198319429Y-35938797D01* 1548 | X198367048Y-35843559D01* 1549 | X198462286Y-35748321D01* 1550 | X198605144Y-35700701D01* 1551 | X198700382Y-35700701D01* 1552 | X198843239Y-35748321D01* 1553 | X198890858Y-35795940D01* 1554 | X199271810Y-36653082D02* 1555 | X199414667Y-36700701D01* 1556 | X199652763Y-36700701D01* 1557 | X199748001Y-36653082D01* 1558 | X199795620Y-36605463D01* 1559 | X199843239Y-36510225D01* 1560 | X199843239Y-36414987D01* 1561 | X199795620Y-36319749D01* 1562 | X199748001Y-36272130D01* 1563 | X199652763Y-36224511D01* 1564 | X199462286Y-36176892D01* 1565 | X199367048Y-36129273D01* 1566 | X199319429Y-36081654D01* 1567 | X199271810Y-35986416D01* 1568 | X199271810Y-35891178D01* 1569 | X199319429Y-35795940D01* 1570 | X199367048Y-35748321D01* 1571 | X199462286Y-35700701D01* 1572 | X199700382Y-35700701D01* 1573 | X199843239Y-35748321D01* 1574 | X200835620Y-35430701D02* 1575 | X200835620Y-34430701D01* 1576 | X201073715Y-34430701D01* 1577 | X201216572Y-34478321D01* 1578 | X201311810Y-34573559D01* 1579 | X201359429Y-34668797D01* 1580 | X201407048Y-34859273D01* 1581 | X201407048Y-35002130D01* 1582 | X201359429Y-35192606D01* 1583 | X201311810Y-35287844D01* 1584 | X201216572Y-35383082D01* 1585 | X201073715Y-35430701D01* 1586 | X200835620Y-35430701D01* 1587 | X202407048Y-35335463D02* 1588 | X202359429Y-35383082D01* 1589 | X202216572Y-35430701D01* 1590 | X202121334Y-35430701D01* 1591 | X201978477Y-35383082D01* 1592 | X201883239Y-35287844D01* 1593 | X201835620Y-35192606D01* 1594 | X201788001Y-35002130D01* 1595 | X201788001Y-34859273D01* 1596 | X201835620Y-34668797D01* 1597 | X201883239Y-34573559D01* 1598 | X201978477Y-34478321D01* 1599 | X202121334Y-34430701D01* 1600 | X202216572Y-34430701D01* 1601 | X202359429Y-34478321D01* 1602 | X202407048Y-34525940D01* 1603 | X203518477Y-36700701D02* 1604 | X203185144Y-36224511D01* 1605 | X202947048Y-36700701D02* 1606 | X202947048Y-35700701D01* 1607 | X203328001Y-35700701D01* 1608 | X203423239Y-35748321D01* 1609 | X203470858Y-35795940D01* 1610 | X203518477Y-35891178D01* 1611 | X203518477Y-36034035D01* 1612 | X203470858Y-36129273D01* 1613 | X203423239Y-36176892D01* 1614 | X203328001Y-36224511D01* 1615 | X202947048Y-36224511D01* 1616 | X203947048Y-36176892D02* 1617 | X204280382Y-36176892D01* 1618 | X204423239Y-36700701D02* 1619 | X203947048Y-36700701D01* 1620 | X203947048Y-35700701D01* 1621 | X204423239Y-35700701D01* 1622 | X204804191Y-36653082D02* 1623 | X204947048Y-36700701D01* 1624 | X205185144Y-36700701D01* 1625 | X205280382Y-36653082D01* 1626 | X205328001Y-36605463D01* 1627 | X205375620Y-36510225D01* 1628 | X205375620Y-36414987D01* 1629 | X205328001Y-36319749D01* 1630 | X205280382Y-36272130D01* 1631 | X205185144Y-36224511D01* 1632 | X204994667Y-36176892D01* 1633 | X204899429Y-36129273D01* 1634 | X204851810Y-36081654D01* 1635 | X204804191Y-35986416D01* 1636 | X204804191Y-35891178D01* 1637 | X204851810Y-35795940D01* 1638 | X204899429Y-35748321D01* 1639 | X204994667Y-35700701D01* 1640 | X205232763Y-35700701D01* 1641 | X205375620Y-35748321D01* 1642 | X205939429Y-35430701D02* 1643 | X205939429Y-34430701D01* 1644 | X206177525Y-34430701D01* 1645 | X206320382Y-34478321D01* 1646 | X206415620Y-34573559D01* 1647 | X206463239Y-34668797D01* 1648 | X206510858Y-34859273D01* 1649 | X206510858Y-35002130D01* 1650 | X206463239Y-35192606D01* 1651 | X206415620Y-35287844D01* 1652 | X206320382Y-35383082D01* 1653 | X206177525Y-35430701D01* 1654 | X205939429Y-35430701D01* 1655 | X207463239Y-35430701D02* 1656 | X206891810Y-35430701D01* 1657 | X207177525Y-35430701D02* 1658 | X207177525Y-34430701D01* 1659 | X207082286Y-34573559D01* 1660 | X206987048Y-34668797D01* 1661 | X206891810Y-34716416D01* 1662 | X208479429Y-36700701D02* 1663 | X208479429Y-35700701D01* 1664 | X208717525Y-35700701D01* 1665 | X208860382Y-35748321D01* 1666 | X208955620Y-35843559D01* 1667 | X209003239Y-35938797D01* 1668 | X209050858Y-36129273D01* 1669 | X209050858Y-36272130D01* 1670 | X209003239Y-36462606D01* 1671 | X208955620Y-36557844D01* 1672 | X208860382Y-36653082D01* 1673 | X208717525Y-36700701D01* 1674 | X208479429Y-36700701D01* 1675 | X209669905Y-35700701D02* 1676 | X209765144Y-35700701D01* 1677 | X209860382Y-35748321D01* 1678 | X209908001Y-35795940D01* 1679 | X209955620Y-35891178D01* 1680 | X210003239Y-36081654D01* 1681 | X210003239Y-36319749D01* 1682 | X209955620Y-36510225D01* 1683 | X209908001Y-36605463D01* 1684 | X209860382Y-36653082D01* 1685 | X209765144Y-36700701D01* 1686 | X209669905Y-36700701D01* 1687 | X209574667Y-36653082D01* 1688 | X209527048Y-36605463D01* 1689 | X209479429Y-36510225D01* 1690 | X209431810Y-36319749D01* 1691 | X209431810Y-36081654D01* 1692 | X209479429Y-35891178D01* 1693 | X209527048Y-35795940D01* 1694 | X209574667Y-35748321D01* 1695 | X209669905Y-35700701D01* 1696 | X210424191Y-34430701D02* 1697 | X210757525Y-35430701D01* 1698 | X211090858Y-34430701D01* 1699 | X211995620Y-35335463D02* 1700 | X211948001Y-35383082D01* 1701 | X211805144Y-35430701D01* 1702 | X211709905Y-35430701D01* 1703 | X211567048Y-35383082D01* 1704 | X211471810Y-35287844D01* 1705 | X211424191Y-35192606D01* 1706 | X211376572Y-35002130D01* 1707 | X211376572Y-34859273D01* 1708 | X211424191Y-34668797D01* 1709 | X211471810Y-34573559D01* 1710 | X211567048Y-34478321D01* 1711 | X211709905Y-34430701D01* 1712 | X211805144Y-34430701D01* 1713 | X211948001Y-34478321D01* 1714 | X211995620Y-34525940D01* 1715 | X212995620Y-35335463D02* 1716 | X212948001Y-35383082D01* 1717 | X212805144Y-35430701D01* 1718 | X212709905Y-35430701D01* 1719 | X212567048Y-35383082D01* 1720 | X212471810Y-35287844D01* 1721 | X212424191Y-35192606D01* 1722 | X212376572Y-35002130D01* 1723 | X212376572Y-34859273D01* 1724 | X212424191Y-34668797D01* 1725 | X212471810Y-34573559D01* 1726 | X212567048Y-34478321D01* 1727 | X212709905Y-34430701D01* 1728 | X212805144Y-34430701D01* 1729 | X212948001Y-34478321D01* 1730 | X212995620Y-34525940D01* 1731 | X213535620Y-35748321D02* 1732 | X213440382Y-35700701D01* 1733 | X213297525Y-35700701D01* 1734 | X213154667Y-35748321D01* 1735 | X213059429Y-35843559D01* 1736 | X213011810Y-35938797D01* 1737 | X212964191Y-36129273D01* 1738 | X212964191Y-36272130D01* 1739 | X213011810Y-36462606D01* 1740 | X213059429Y-36557844D01* 1741 | X213154667Y-36653082D01* 1742 | X213297525Y-36700701D01* 1743 | X213392763Y-36700701D01* 1744 | X213535620Y-36653082D01* 1745 | X213583239Y-36605463D01* 1746 | X213583239Y-36272130D01* 1747 | X213392763Y-36272130D01* 1748 | X214011810Y-36700701D02* 1749 | X214011810Y-35700701D01* 1750 | X214583239Y-36700701D01* 1751 | X214583239Y-35700701D01* 1752 | X215059429Y-36700701D02* 1753 | X215059429Y-35700701D01* 1754 | X215297525Y-35700701D01* 1755 | X215440382Y-35748321D01* 1756 | X215535620Y-35843559D01* 1757 | X215583239Y-35938797D01* 1758 | X215630858Y-36129273D01* 1759 | X215630858Y-36272130D01* 1760 | X215583239Y-36462606D01* 1761 | X215535620Y-36557844D01* 1762 | X215440382Y-36653082D01* 1763 | X215297525Y-36700701D01* 1764 | X215059429Y-36700701D01* 1765 | X168719595Y-17740261D02* 1766 | X168862452Y-17787880D01* 1767 | X169100547Y-17787880D01* 1768 | X169195785Y-17740261D01* 1769 | X169243404Y-17692642D01* 1770 | X169291023Y-17597404D01* 1771 | X169291023Y-17502166D01* 1772 | X169243404Y-17406928D01* 1773 | X169195785Y-17359309D01* 1774 | X169100547Y-17311690D01* 1775 | X168910071Y-17264071D01* 1776 | X168814833Y-17216452D01* 1777 | X168767214Y-17168833D01* 1778 | X168719595Y-17073595D01* 1779 | X168719595Y-16978357D01* 1780 | X168767214Y-16883119D01* 1781 | X168814833Y-16835500D01* 1782 | X168910071Y-16787880D01* 1783 | X169148166Y-16787880D01* 1784 | X169291023Y-16835500D01* 1785 | X170195785Y-16787880D02* 1786 | X169719595Y-16787880D01* 1787 | X169671976Y-17264071D01* 1788 | X169719595Y-17216452D01* 1789 | X169814833Y-17168833D01* 1790 | X170052928Y-17168833D01* 1791 | X170148166Y-17216452D01* 1792 | X170195785Y-17264071D01* 1793 | X170243404Y-17359309D01* 1794 | X170243404Y-17597404D01* 1795 | X170195785Y-17692642D01* 1796 | X170148166Y-17740261D01* 1797 | X170052928Y-17787880D01* 1798 | X169814833Y-17787880D01* 1799 | X169719595Y-17740261D01* 1800 | X169671976Y-17692642D01* 1801 | X161694833Y-36742642D02* 1802 | X161647214Y-36790261D01* 1803 | X161504357Y-36837880D01* 1804 | X161409119Y-36837880D01* 1805 | X161266261Y-36790261D01* 1806 | X161171023Y-36695023D01* 1807 | X161123404Y-36599785D01* 1808 | X161075785Y-36409309D01* 1809 | X161075785Y-36266452D01* 1810 | X161123404Y-36075976D01* 1811 | X161171023Y-35980738D01* 1812 | X161266261Y-35885500D01* 1813 | X161409119Y-35837880D01* 1814 | X161504357Y-35837880D01* 1815 | X161647214Y-35885500D01* 1816 | X161694833Y-35933119D01* 1817 | X162075785Y-36790261D02* 1818 | X162218642Y-36837880D01* 1819 | X162456738Y-36837880D01* 1820 | X162551976Y-36790261D01* 1821 | X162599595Y-36742642D01* 1822 | X162647214Y-36647404D01* 1823 | X162647214Y-36552166D01* 1824 | X162599595Y-36456928D01* 1825 | X162551976Y-36409309D01* 1826 | X162456738Y-36361690D01* 1827 | X162266261Y-36314071D01* 1828 | X162171023Y-36266452D01* 1829 | X162123404Y-36218833D01* 1830 | X162075785Y-36123595D01* 1831 | X162075785Y-36028357D01* 1832 | X162123404Y-35933119D01* 1833 | X162171023Y-35885500D01* 1834 | X162266261Y-35837880D01* 1835 | X162504357Y-35837880D01* 1836 | X162647214Y-35885500D01* 1837 | X163639595Y-35567880D02* 1838 | X163639595Y-34567880D01* 1839 | X163877690Y-34567880D01* 1840 | X164020547Y-34615500D01* 1841 | X164115785Y-34710738D01* 1842 | X164163404Y-34805976D01* 1843 | X164211023Y-34996452D01* 1844 | X164211023Y-35139309D01* 1845 | X164163404Y-35329785D01* 1846 | X164115785Y-35425023D01* 1847 | X164020547Y-35520261D01* 1848 | X163877690Y-35567880D01* 1849 | X163639595Y-35567880D01* 1850 | X165211023Y-35472642D02* 1851 | X165163404Y-35520261D01* 1852 | X165020547Y-35567880D01* 1853 | X164925309Y-35567880D01* 1854 | X164782452Y-35520261D01* 1855 | X164687214Y-35425023D01* 1856 | X164639595Y-35329785D01* 1857 | X164591976Y-35139309D01* 1858 | X164591976Y-34996452D01* 1859 | X164639595Y-34805976D01* 1860 | X164687214Y-34710738D01* 1861 | X164782452Y-34615500D01* 1862 | X164925309Y-34567880D01* 1863 | X165020547Y-34567880D01* 1864 | X165163404Y-34615500D01* 1865 | X165211023Y-34663119D01* 1866 | X166322452Y-36837880D02* 1867 | X165989119Y-36361690D01* 1868 | X165751023Y-36837880D02* 1869 | X165751023Y-35837880D01* 1870 | X166131976Y-35837880D01* 1871 | X166227214Y-35885500D01* 1872 | X166274833Y-35933119D01* 1873 | X166322452Y-36028357D01* 1874 | X166322452Y-36171214D01* 1875 | X166274833Y-36266452D01* 1876 | X166227214Y-36314071D01* 1877 | X166131976Y-36361690D01* 1878 | X165751023Y-36361690D01* 1879 | X166751023Y-36314071D02* 1880 | X167084357Y-36314071D01* 1881 | X167227214Y-36837880D02* 1882 | X166751023Y-36837880D01* 1883 | X166751023Y-35837880D01* 1884 | X167227214Y-35837880D01* 1885 | X167608166Y-36790261D02* 1886 | X167751023Y-36837880D01* 1887 | X167989119Y-36837880D01* 1888 | X168084357Y-36790261D01* 1889 | X168131976Y-36742642D01* 1890 | X168179595Y-36647404D01* 1891 | X168179595Y-36552166D01* 1892 | X168131976Y-36456928D01* 1893 | X168084357Y-36409309D01* 1894 | X167989119Y-36361690D01* 1895 | X167798642Y-36314071D01* 1896 | X167703404Y-36266452D01* 1897 | X167655785Y-36218833D01* 1898 | X167608166Y-36123595D01* 1899 | X167608166Y-36028357D01* 1900 | X167655785Y-35933119D01* 1901 | X167703404Y-35885500D01* 1902 | X167798642Y-35837880D01* 1903 | X168036738Y-35837880D01* 1904 | X168179595Y-35885500D01* 1905 | X168743404Y-35567880D02* 1906 | X168743404Y-34567880D01* 1907 | X168981500Y-34567880D01* 1908 | X169124357Y-34615500D01* 1909 | X169219595Y-34710738D01* 1910 | X169267214Y-34805976D01* 1911 | X169314833Y-34996452D01* 1912 | X169314833Y-35139309D01* 1913 | X169267214Y-35329785D01* 1914 | X169219595Y-35425023D01* 1915 | X169124357Y-35520261D01* 1916 | X168981500Y-35567880D01* 1917 | X168743404Y-35567880D01* 1918 | X170267214Y-35567880D02* 1919 | X169695785Y-35567880D01* 1920 | X169981500Y-35567880D02* 1921 | X169981500Y-34567880D01* 1922 | X169886261Y-34710738D01* 1923 | X169791023Y-34805976D01* 1924 | X169695785Y-34853595D01* 1925 | X171283404Y-36837880D02* 1926 | X171283404Y-35837880D01* 1927 | X171521500Y-35837880D01* 1928 | X171664357Y-35885500D01* 1929 | X171759595Y-35980738D01* 1930 | X171807214Y-36075976D01* 1931 | X171854833Y-36266452D01* 1932 | X171854833Y-36409309D01* 1933 | X171807214Y-36599785D01* 1934 | X171759595Y-36695023D01* 1935 | X171664357Y-36790261D01* 1936 | X171521500Y-36837880D01* 1937 | X171283404Y-36837880D01* 1938 | X172473880Y-35837880D02* 1939 | X172569119Y-35837880D01* 1940 | X172664357Y-35885500D01* 1941 | X172711976Y-35933119D01* 1942 | X172759595Y-36028357D01* 1943 | X172807214Y-36218833D01* 1944 | X172807214Y-36456928D01* 1945 | X172759595Y-36647404D01* 1946 | X172711976Y-36742642D01* 1947 | X172664357Y-36790261D01* 1948 | X172569119Y-36837880D01* 1949 | X172473880Y-36837880D01* 1950 | X172378642Y-36790261D01* 1951 | X172331023Y-36742642D01* 1952 | X172283404Y-36647404D01* 1953 | X172235785Y-36456928D01* 1954 | X172235785Y-36218833D01* 1955 | X172283404Y-36028357D01* 1956 | X172331023Y-35933119D01* 1957 | X172378642Y-35885500D01* 1958 | X172473880Y-35837880D01* 1959 | X173228166Y-34567880D02* 1960 | X173561500Y-35567880D01* 1961 | X173894833Y-34567880D01* 1962 | X174799595Y-35472642D02* 1963 | X174751976Y-35520261D01* 1964 | X174609119Y-35567880D01* 1965 | X174513880Y-35567880D01* 1966 | X174371023Y-35520261D01* 1967 | X174275785Y-35425023D01* 1968 | X174228166Y-35329785D01* 1969 | X174180547Y-35139309D01* 1970 | X174180547Y-34996452D01* 1971 | X174228166Y-34805976D01* 1972 | X174275785Y-34710738D01* 1973 | X174371023Y-34615500D01* 1974 | X174513880Y-34567880D01* 1975 | X174609119Y-34567880D01* 1976 | X174751976Y-34615500D01* 1977 | X174799595Y-34663119D01* 1978 | X175799595Y-35472642D02* 1979 | X175751976Y-35520261D01* 1980 | X175609119Y-35567880D01* 1981 | X175513880Y-35567880D01* 1982 | X175371023Y-35520261D01* 1983 | X175275785Y-35425023D01* 1984 | X175228166Y-35329785D01* 1985 | X175180547Y-35139309D01* 1986 | X175180547Y-34996452D01* 1987 | X175228166Y-34805976D01* 1988 | X175275785Y-34710738D01* 1989 | X175371023Y-34615500D01* 1990 | X175513880Y-34567880D01* 1991 | X175609119Y-34567880D01* 1992 | X175751976Y-34615500D01* 1993 | X175799595Y-34663119D01* 1994 | X176339595Y-35885500D02* 1995 | X176244357Y-35837880D01* 1996 | X176101500Y-35837880D01* 1997 | X175958642Y-35885500D01* 1998 | X175863404Y-35980738D01* 1999 | X175815785Y-36075976D01* 2000 | X175768166Y-36266452D01* 2001 | X175768166Y-36409309D01* 2002 | X175815785Y-36599785D01* 2003 | X175863404Y-36695023D01* 2004 | X175958642Y-36790261D01* 2005 | X176101500Y-36837880D01* 2006 | X176196738Y-36837880D01* 2007 | X176339595Y-36790261D01* 2008 | X176387214Y-36742642D01* 2009 | X176387214Y-36409309D01* 2010 | X176196738Y-36409309D01* 2011 | X176815785Y-36837880D02* 2012 | X176815785Y-35837880D01* 2013 | X177387214Y-36837880D01* 2014 | X177387214Y-35837880D01* 2015 | X177863404Y-36837880D02* 2016 | X177863404Y-35837880D01* 2017 | X178101500Y-35837880D01* 2018 | X178244357Y-35885500D01* 2019 | X178339595Y-35980738D01* 2020 | X178387214Y-36075976D01* 2021 | X178434833Y-36266452D01* 2022 | X178434833Y-36409309D01* 2023 | X178387214Y-36599785D01* 2024 | X178339595Y-36695023D01* 2025 | X178244357Y-36790261D01* 2026 | X178101500Y-36837880D01* 2027 | X177863404Y-36837880D01* 2028 | X133915620Y-17603082D02* 2029 | X134058477Y-17650701D01* 2030 | X134296572Y-17650701D01* 2031 | X134391810Y-17603082D01* 2032 | X134439429Y-17555463D01* 2033 | X134487048Y-17460225D01* 2034 | X134487048Y-17364987D01* 2035 | X134439429Y-17269749D01* 2036 | X134391810Y-17222130D01* 2037 | X134296572Y-17174511D01* 2038 | X134106096Y-17126892D01* 2039 | X134010858Y-17079273D01* 2040 | X133963239Y-17031654D01* 2041 | X133915620Y-16936416D01* 2042 | X133915620Y-16841178D01* 2043 | X133963239Y-16745940D01* 2044 | X134010858Y-16698321D01* 2045 | X134106096Y-16650701D01* 2046 | X134344191Y-16650701D01* 2047 | X134487048Y-16698321D01* 2048 | X135344191Y-16984035D02* 2049 | X135344191Y-17650701D01* 2050 | X135106096Y-16603082D02* 2051 | X134868001Y-17317368D01* 2052 | X135487048Y-17317368D01* 2053 | X126890858Y-36605463D02* 2054 | X126843239Y-36653082D01* 2055 | X126700382Y-36700701D01* 2056 | X126605144Y-36700701D01* 2057 | X126462286Y-36653082D01* 2058 | X126367048Y-36557844D01* 2059 | X126319429Y-36462606D01* 2060 | X126271810Y-36272130D01* 2061 | X126271810Y-36129273D01* 2062 | X126319429Y-35938797D01* 2063 | X126367048Y-35843559D01* 2064 | X126462286Y-35748321D01* 2065 | X126605144Y-35700701D01* 2066 | X126700382Y-35700701D01* 2067 | X126843239Y-35748321D01* 2068 | X126890858Y-35795940D01* 2069 | X127271810Y-36653082D02* 2070 | X127414667Y-36700701D01* 2071 | X127652763Y-36700701D01* 2072 | X127748001Y-36653082D01* 2073 | X127795620Y-36605463D01* 2074 | X127843239Y-36510225D01* 2075 | X127843239Y-36414987D01* 2076 | X127795620Y-36319749D01* 2077 | X127748001Y-36272130D01* 2078 | X127652763Y-36224511D01* 2079 | X127462286Y-36176892D01* 2080 | X127367048Y-36129273D01* 2081 | X127319429Y-36081654D01* 2082 | X127271810Y-35986416D01* 2083 | X127271810Y-35891178D01* 2084 | X127319429Y-35795940D01* 2085 | X127367048Y-35748321D01* 2086 | X127462286Y-35700701D01* 2087 | X127700382Y-35700701D01* 2088 | X127843239Y-35748321D01* 2089 | X128835620Y-35430701D02* 2090 | X128835620Y-34430701D01* 2091 | X129073715Y-34430701D01* 2092 | X129216572Y-34478321D01* 2093 | X129311810Y-34573559D01* 2094 | X129359429Y-34668797D01* 2095 | X129407048Y-34859273D01* 2096 | X129407048Y-35002130D01* 2097 | X129359429Y-35192606D01* 2098 | X129311810Y-35287844D01* 2099 | X129216572Y-35383082D01* 2100 | X129073715Y-35430701D01* 2101 | X128835620Y-35430701D01* 2102 | X130407048Y-35335463D02* 2103 | X130359429Y-35383082D01* 2104 | X130216572Y-35430701D01* 2105 | X130121334Y-35430701D01* 2106 | X129978477Y-35383082D01* 2107 | X129883239Y-35287844D01* 2108 | X129835620Y-35192606D01* 2109 | X129788001Y-35002130D01* 2110 | X129788001Y-34859273D01* 2111 | X129835620Y-34668797D01* 2112 | X129883239Y-34573559D01* 2113 | X129978477Y-34478321D01* 2114 | X130121334Y-34430701D01* 2115 | X130216572Y-34430701D01* 2116 | X130359429Y-34478321D01* 2117 | X130407048Y-34525940D01* 2118 | X131518477Y-36700701D02* 2119 | X131185144Y-36224511D01* 2120 | X130947048Y-36700701D02* 2121 | X130947048Y-35700701D01* 2122 | X131328001Y-35700701D01* 2123 | X131423239Y-35748321D01* 2124 | X131470858Y-35795940D01* 2125 | X131518477Y-35891178D01* 2126 | X131518477Y-36034035D01* 2127 | X131470858Y-36129273D01* 2128 | X131423239Y-36176892D01* 2129 | X131328001Y-36224511D01* 2130 | X130947048Y-36224511D01* 2131 | X131947048Y-36176892D02* 2132 | X132280382Y-36176892D01* 2133 | X132423239Y-36700701D02* 2134 | X131947048Y-36700701D01* 2135 | X131947048Y-35700701D01* 2136 | X132423239Y-35700701D01* 2137 | X132804191Y-36653082D02* 2138 | X132947048Y-36700701D01* 2139 | X133185144Y-36700701D01* 2140 | X133280382Y-36653082D01* 2141 | X133328001Y-36605463D01* 2142 | X133375620Y-36510225D01* 2143 | X133375620Y-36414987D01* 2144 | X133328001Y-36319749D01* 2145 | X133280382Y-36272130D01* 2146 | X133185144Y-36224511D01* 2147 | X132994667Y-36176892D01* 2148 | X132899429Y-36129273D01* 2149 | X132851810Y-36081654D01* 2150 | X132804191Y-35986416D01* 2151 | X132804191Y-35891178D01* 2152 | X132851810Y-35795940D01* 2153 | X132899429Y-35748321D01* 2154 | X132994667Y-35700701D01* 2155 | X133232763Y-35700701D01* 2156 | X133375620Y-35748321D01* 2157 | X133939429Y-35430701D02* 2158 | X133939429Y-34430701D01* 2159 | X134177525Y-34430701D01* 2160 | X134320382Y-34478321D01* 2161 | X134415620Y-34573559D01* 2162 | X134463239Y-34668797D01* 2163 | X134510858Y-34859273D01* 2164 | X134510858Y-35002130D01* 2165 | X134463239Y-35192606D01* 2166 | X134415620Y-35287844D01* 2167 | X134320382Y-35383082D01* 2168 | X134177525Y-35430701D01* 2169 | X133939429Y-35430701D01* 2170 | X135463239Y-35430701D02* 2171 | X134891810Y-35430701D01* 2172 | X135177525Y-35430701D02* 2173 | X135177525Y-34430701D01* 2174 | X135082286Y-34573559D01* 2175 | X134987048Y-34668797D01* 2176 | X134891810Y-34716416D01* 2177 | X136479429Y-36700701D02* 2178 | X136479429Y-35700701D01* 2179 | X136717525Y-35700701D01* 2180 | X136860382Y-35748321D01* 2181 | X136955620Y-35843559D01* 2182 | X137003239Y-35938797D01* 2183 | X137050858Y-36129273D01* 2184 | X137050858Y-36272130D01* 2185 | X137003239Y-36462606D01* 2186 | X136955620Y-36557844D01* 2187 | X136860382Y-36653082D01* 2188 | X136717525Y-36700701D01* 2189 | X136479429Y-36700701D01* 2190 | X137669905Y-35700701D02* 2191 | X137765144Y-35700701D01* 2192 | X137860382Y-35748321D01* 2193 | X137908001Y-35795940D01* 2194 | X137955620Y-35891178D01* 2195 | X138003239Y-36081654D01* 2196 | X138003239Y-36319749D01* 2197 | X137955620Y-36510225D01* 2198 | X137908001Y-36605463D01* 2199 | X137860382Y-36653082D01* 2200 | X137765144Y-36700701D01* 2201 | X137669905Y-36700701D01* 2202 | X137574667Y-36653082D01* 2203 | X137527048Y-36605463D01* 2204 | X137479429Y-36510225D01* 2205 | X137431810Y-36319749D01* 2206 | X137431810Y-36081654D01* 2207 | X137479429Y-35891178D01* 2208 | X137527048Y-35795940D01* 2209 | X137574667Y-35748321D01* 2210 | X137669905Y-35700701D01* 2211 | X138424191Y-34430701D02* 2212 | X138757525Y-35430701D01* 2213 | X139090858Y-34430701D01* 2214 | X139995620Y-35335463D02* 2215 | X139948001Y-35383082D01* 2216 | X139805144Y-35430701D01* 2217 | X139709905Y-35430701D01* 2218 | X139567048Y-35383082D01* 2219 | X139471810Y-35287844D01* 2220 | X139424191Y-35192606D01* 2221 | X139376572Y-35002130D01* 2222 | X139376572Y-34859273D01* 2223 | X139424191Y-34668797D01* 2224 | X139471810Y-34573559D01* 2225 | X139567048Y-34478321D01* 2226 | X139709905Y-34430701D01* 2227 | X139805144Y-34430701D01* 2228 | X139948001Y-34478321D01* 2229 | X139995620Y-34525940D01* 2230 | X140995620Y-35335463D02* 2231 | X140948001Y-35383082D01* 2232 | X140805144Y-35430701D01* 2233 | X140709905Y-35430701D01* 2234 | X140567048Y-35383082D01* 2235 | X140471810Y-35287844D01* 2236 | X140424191Y-35192606D01* 2237 | X140376572Y-35002130D01* 2238 | X140376572Y-34859273D01* 2239 | X140424191Y-34668797D01* 2240 | X140471810Y-34573559D01* 2241 | X140567048Y-34478321D01* 2242 | X140709905Y-34430701D01* 2243 | X140805144Y-34430701D01* 2244 | X140948001Y-34478321D01* 2245 | X140995620Y-34525940D01* 2246 | X141535620Y-35748321D02* 2247 | X141440382Y-35700701D01* 2248 | X141297525Y-35700701D01* 2249 | X141154667Y-35748321D01* 2250 | X141059429Y-35843559D01* 2251 | X141011810Y-35938797D01* 2252 | X140964191Y-36129273D01* 2253 | X140964191Y-36272130D01* 2254 | X141011810Y-36462606D01* 2255 | X141059429Y-36557844D01* 2256 | X141154667Y-36653082D01* 2257 | X141297525Y-36700701D01* 2258 | X141392763Y-36700701D01* 2259 | X141535620Y-36653082D01* 2260 | X141583239Y-36605463D01* 2261 | X141583239Y-36272130D01* 2262 | X141392763Y-36272130D01* 2263 | X142011810Y-36700701D02* 2264 | X142011810Y-35700701D01* 2265 | X142583239Y-36700701D01* 2266 | X142583239Y-35700701D01* 2267 | X143059429Y-36700701D02* 2268 | X143059429Y-35700701D01* 2269 | X143297525Y-35700701D01* 2270 | X143440382Y-35748321D01* 2271 | X143535620Y-35843559D01* 2272 | X143583239Y-35938797D01* 2273 | X143630858Y-36129273D01* 2274 | X143630858Y-36272130D01* 2275 | X143583239Y-36462606D01* 2276 | X143535620Y-36557844D01* 2277 | X143440382Y-36653082D01* 2278 | X143297525Y-36700701D01* 2279 | X143059429Y-36700701D01* 2280 | M02* 2281 | --------------------------------------------------------------------------------