From b9044963b0728cc251702682c59f2baa61fbb014 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Fri, 18 Nov 2016 17:36:57 +0000 Subject: [PATCH 01/64] Add ADF4351 --- bin/adf4351 | Bin 0 -> 26016 bytes scripts/a.sh | 1 + scripts/ctlvco.sh | 40 +++ src/adf4351/Makefile | 13 + src/adf4351/adf4351 | Bin 0 -> 26016 bytes src/adf4351/adf4351.c | 591 +++++++++++++++++++++++++++++++++++++++ src/adf4351/adf4351.h | 198 +++++++++++++ src/adf4351/ctladf4351.c | 92 ++++++ 8 files changed, 935 insertions(+) create mode 100755 bin/adf4351 create mode 100755 scripts/ctlvco.sh create mode 100644 src/adf4351/Makefile create mode 100755 src/adf4351/adf4351 create mode 100644 src/adf4351/adf4351.c create mode 100644 src/adf4351/adf4351.h create mode 100644 src/adf4351/ctladf4351.c diff --git a/bin/adf4351 b/bin/adf4351 new file mode 100755 index 0000000000000000000000000000000000000000..5a6b04ccb0528c852f514546baf954ef01bac5a5 GIT binary patch literal 26016 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 literal 0 HcmV?d00001 diff --git a/scripts/a.sh b/scripts/a.sh index 8959c73..774a60c 100755 --- a/scripts/a.sh +++ b/scripts/a.sh @@ -97,6 +97,7 @@ case "$MODE_OUTPUT" in OUTPUT=videots MODE=IQ $PATHSCRIPT"/ctlfilter.sh" + $PATHSCRIPT"/ctlvco.sh" #GAIN=0 ;; QPSKRF) diff --git a/scripts/ctlvco.sh b/scripts/ctlvco.sh new file mode 100755 index 0000000..ff35833 --- /dev/null +++ b/scripts/ctlvco.sh @@ -0,0 +1,40 @@ +########## ctlvco.sh ############ + +# Called by a.sh in IQ mode to set ADF4351 +# vco to correct frequency + +############ Set Environment Variables ############### + +PATHSCRIPT=/home/pi/rpidatv/scripts +PATHRPI=/home/pi/rpidatv/bin +CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" + +############### Function to read Config File ############### + +get_config_var() { +lua - "$1" "$2" <F(jWJo3t&10OI@UU(T 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 literal 0 HcmV?d00001 diff --git a/src/adf4351/adf4351.c b/src/adf4351/adf4351.c new file mode 100644 index 0000000..537eee8 --- /dev/null +++ b/src/adf4351/adf4351.c @@ -0,0 +1,591 @@ +/***************************************************************************//** + * @file adf4350.c + * @brief Implementation of ADF4350 Driver. + * @author DBogdan (dragos.bogdan@analog.com) + * +******************************************************************************** + * Copyright 2012-2015(c) Analog Devices, Inc. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * - Neither the name of Analog Devices, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * - The use of this software may or may not infringe the patent rights + * of one or more patent holders. This license does not release you + * from the requirement that you obtain separate licenses from these + * patent holders to use this software. + * - Use of the software either in source or binary form, must be run + * on or directly connected to an Analog Devices Inc. component. + * + * THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * +*******************************************************************************/ +/* wiringPiSPI.c: + * Simplified SPI access routines + * Copyright (c) 2012-2015 Gordon Henderson + *********************************************************************** + * This file is part of wiringPi: + * https://projects.drogon.net/raspberry-pi/wiringpi/ + * + * wiringPi is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * wiringPi is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with wiringPi. + * If not, see . + *********************************************************************** + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "adf4351.h" + +// The SPI bus parameters +// Variables as they need to be passed as pointers later on + +const static char *spiDev0 = "/dev/spidev0.0" ; +const static char *spiDev1 = "/dev/spidev0.1" ; +const static uint8_t spiBPW = 8 ; +const static uint16_t spiDelay = 0 ; + +static uint32_t spiSpeeds [2] ; +static int spiFds [2] ; + +int SPIDataRW (int channel, unsigned char *data, int len) +{ + struct spi_ioc_transfer spi ; + + channel &= 1 ; + +// Mentioned in spidev.h but not used in the original kernel documentation +// test program )-: + + memset (&spi, 0, sizeof (spi)) ; + + spi.tx_buf = (unsigned long)data ; + spi.rx_buf = (unsigned long)data ; + spi.len = len ; + spi.delay_usecs = spiDelay ; + spi.speed_hz = spiSpeeds [channel] ; + spi.bits_per_word = spiBPW ; + + //return ioctl (spiFds [channel], SPI_IOC_MESSAGE(1), &spi) ; + return 0; +} + +/***************************************************************************//** + * @brief Was used to open the spi device set up the SPI mode. Now unused + * + * @param data - int channel, int speed, int mode + * + * @return Always Returns 0 +*******************************************************************************/ + +int SPISetupMode (int channel, int speed, int mode) +{ + int fd ; + + mode &= 3 ; // Mode is 0, 1, 2 or 3 + channel &= 1 ; // Channel is 0 or 1 + + return 0; +} + + +/******************************************************************************/ +/************************ Local variables and types ***************************/ +/******************************************************************************/ +static struct adf4350_state +{ + struct adf4350_platform_data *pdata; + uint32_t clkin; + uint32_t chspc; /* Channel Spacing */ + uint32_t fpfd; /* Phase Frequency Detector */ + uint32_t min_out_freq; + uint32_t r0_fract; + uint32_t r0_int; + uint32_t r1_mod; + uint32_t r4_rf_div_sel; + uint32_t regs[6]; + uint32_t regs_hw[6]; + uint32_t val; +}adf4350_st; + +uint8_t adf4350_slave_select; + +/***************************************************************************//** + * @brief Writes 4 bytes (32 bits) of data to ADF4350. + * + * @param data - Data value to write + * + * @return Always Returns 0 +*******************************************************************************/ +int32_t adf4350_write(uint32_t data) +{ + // Nominate pins using WiringPi numbers + + // LE pin 27 wPi 30 + // CLK pin 29 wPi 21 + // Data pin 31 wPi 22 + + uint8_t LE_4351_GPIO = 30; + uint8_t CLK_4351_GPIO = 21; + uint8_t DATA_4351_GPIO = 22; + + // Kick wiringPi into action. Essential! + + //if (wiringPiSetup () == -1) + //printf("Wiring Pi not set up "); + + // Set all nominated pins to outputs + + pinMode(LE_4351_GPIO, OUTPUT); + pinMode(CLK_4351_GPIO, OUTPUT); + pinMode(DATA_4351_GPIO, OUTPUT); + + // Set idle conditions + + digitalWrite(LE_4351_GPIO, HIGH); + digitalWrite(CLK_4351_GPIO, LOW); + digitalWrite(DATA_4351_GPIO, LOW); + + //Select device LE low + + digitalWrite(LE_4351_GPIO, LOW); + + printf(" ADF4351 Register (one of the five) Updated\n"); + // Initialise loop + + uint16_t i; + + // Send all 32 bits + + for (i = 0; i <32; i++) + { + // Test left-most bit + + if (data & 0x80000000) + digitalWrite(DATA_4351_GPIO, HIGH); + else + digitalWrite(DATA_4351_GPIO, LOW); + + // Pulse clock + + digitalWrite(CLK_4351_GPIO, HIGH); + delay(1); + digitalWrite(CLK_4351_GPIO, LOW); + delay(1); + // shift data left so next bit will be leftmost + + data <<= 1; + } + + //Set ADF4351 LE high + + digitalWrite(LE_4351_GPIO, HIGH); + + return 0; +} + +/***************************************************************************//** + * @brief Updates the registers values. + * + * @param st - The selected structure. + * + * @return Returns 0 in case of success or negative error code. +*******************************************************************************/ +int32_t adf4350_sync_config(struct adf4350_state *st) +{ + int32_t ret, i, doublebuf = 0; + + for (i = ADF4350_REG5; i >= ADF4350_REG0; i--) + { + if ((st->regs_hw[i] != st->regs[i]) || + ((i == ADF4350_REG0) && doublebuf)) + { + switch (i) + { + case ADF4350_REG1: + case ADF4350_REG4: + doublebuf = 1; + break; + } + + st->val = (st->regs[i] | i); + ret = adf4350_write(st->val); + if (ret < 0) + return ret; + st->regs_hw[i] = st->regs[i]; + } + } + + return 0; +} + +/***************************************************************************//** + * @brief Increases the R counter value until the ADF4350_MAX_FREQ_PFD is + * greater than PFD frequency. + * + * @param st - The selected structure. + * @param r_cnt - Initial r_cnt value. + * + * @return Returns 0 in case of success or negative error code. +*******************************************************************************/ +int32_t adf4350_tune_r_cnt(struct adf4350_state *st, uint16_t r_cnt) +{ + struct adf4350_platform_data *pdata = st->pdata; + + do + { + r_cnt++; + st->fpfd = (st->clkin * (pdata->ref_doubler_en ? 2 : 1)) / + (r_cnt * (pdata->ref_div2_en ? 2 : 1)); + } while (st->fpfd > ADF4350_MAX_FREQ_PFD); + + return r_cnt; +} + +/***************************************************************************//** + * @brief Computes the greatest common divider of two numbers + * + * @return Returns the gcd. +*******************************************************************************/ +uint32_t gcd(uint32_t x, uint32_t y) +{ + int32_t tmp; + + tmp = y > x ? x : y; + + + while((x % tmp) || (y % tmp)) + { + tmp--; + } + + return tmp; +} + +/***************************************************************************//** + * @brief Sets the ADF4350 frequency. + * + * @param st - The selected structure. + * @param freq - The desired frequency value. + * + * @return calculatedFrequency - The actual frequency value that was set. +*******************************************************************************/ +int64_t adf4350_set_freq(struct adf4350_state *st, uint64_t freq) +{ + struct adf4350_platform_data *pdata = st->pdata; + uint64_t tmp; + uint32_t div_gcd, prescaler, chspc; + uint16_t mdiv, r_cnt = 0; + uint8_t band_sel_div; + int32_t ret; + + if ((freq > ADF4350_MAX_OUT_FREQ) || (freq < ADF4350_MIN_OUT_FREQ)) + return -1; + + if (freq > ADF4350_MAX_FREQ_45_PRESC) { + prescaler = ADF4350_REG1_PRESCALER; + mdiv = 75; + } + else + { + prescaler = 0; + mdiv = 23; + } + + st->r4_rf_div_sel = 0; + + while (freq < ADF4350_MIN_VCO_FREQ) + { + freq <<= 1; + st->r4_rf_div_sel++; + } + + /* + * Allow a predefined reference division factor + * if not set, compute our own + */ + if (pdata->ref_div_factor) + r_cnt = pdata->ref_div_factor - 1; + + chspc = st->chspc; + + do + { + do + { + do + { + r_cnt = adf4350_tune_r_cnt(st, r_cnt); + st->r1_mod = st->fpfd / chspc; + if (r_cnt > ADF4350_MAX_R_CNT) + { + /* try higher spacing values */ + chspc++; + r_cnt = 0; + } + } while ((st->r1_mod > ADF4350_MAX_MODULUS) && r_cnt); + } while (r_cnt == 0); + + + tmp = freq * (uint64_t)st->r1_mod + (st->fpfd > 1); + + tmp = (tmp / st->fpfd); /* Div round closest (n + d/2)/d */ + + st->r0_fract = tmp % st->r1_mod; + tmp = tmp / st->r1_mod; + + st->r0_int = tmp; + } while (mdiv > st->r0_int); + + band_sel_div = st->fpfd % ADF4350_MAX_BANDSEL_CLK > ADF4350_MAX_BANDSEL_CLK / 2 ? + st->fpfd / ADF4350_MAX_BANDSEL_CLK + 1 : + st->fpfd / ADF4350_MAX_BANDSEL_CLK; + + if (st->r0_fract && st->r1_mod) { + div_gcd = gcd(st->r1_mod, st->r0_fract); + st->r1_mod /= div_gcd; + st->r0_fract /= div_gcd; + } + else + { + st->r0_fract = 0; + st->r1_mod = 1; + } + + st->regs[ADF4350_REG0] = ADF4350_REG0_INT(st->r0_int) | + ADF4350_REG0_FRACT(st->r0_fract); + + st->regs[ADF4350_REG1] = ADF4350_REG1_PHASE(1) | + ADF4350_REG1_MOD(st->r1_mod) | + prescaler; + + st->regs[ADF4350_REG2] = + ADF4350_REG2_10BIT_R_CNT(r_cnt) | + ADF4350_REG2_DOUBLE_BUFF_EN | + (pdata->ref_doubler_en ? ADF4350_REG2_RMULT2_EN : 0) | + (pdata->ref_div2_en ? ADF4350_REG2_RDIV2_EN : 0) | + (pdata->r2_user_settings & (ADF4350_REG2_PD_POLARITY_POS | + ADF4350_REG2_LDP_6ns | ADF4350_REG2_LDF_INT_N | + ADF4350_REG2_CHARGE_PUMP_CURR_uA(5000) | + ADF4350_REG2_MUXOUT(0x7) | ADF4350_REG2_NOISE_MODE(0x9))); + + st->regs[ADF4350_REG3] = pdata->r3_user_settings & + (ADF4350_REG3_12BIT_CLKDIV(0xFFF) | + ADF4350_REG3_12BIT_CLKDIV_MODE(0x3) | + ADF4350_REG3_12BIT_CSR_EN); + + st->regs[ADF4350_REG4] = + ADF4350_REG4_FEEDBACK_FUND | + ADF4350_REG4_RF_DIV_SEL(st->r4_rf_div_sel) | + ADF4350_REG4_8BIT_BAND_SEL_CLKDIV(band_sel_div) | + ADF4350_REG4_RF_OUT_EN | + (pdata->r4_user_settings & + (ADF4350_REG4_OUTPUT_PWR(0x3) | + ADF4350_REG4_AUX_OUTPUT_PWR(0x3) | + ADF4350_REG4_AUX_OUTPUT_EN | + ADF4350_REG4_AUX_OUTPUT_FUND | + ADF4350_REG4_MUTE_TILL_LOCK_EN)); + + st->regs[ADF4350_REG5] = ADF4350_REG5_LD_PIN_MODE_DIGITAL | 0x00180000; + + ret = adf4350_sync_config(st); + if(ret < 0) + { + return ret; + } + + tmp = (uint64_t)((st->r0_int * st->r1_mod) + st->r0_fract) * (uint64_t)st->fpfd; + tmp = tmp / ((uint64_t)st->r1_mod * ((uint64_t)1 << st->r4_rf_div_sel)); + + return tmp; +} + +/***************************************************************************//** + * @brief Initializes the ADF4350. + * + * @param spiBaseAddr - SPI peripheral AXI base address. + * @param ssNo - Slave select line on which the slave is connected. + * + * @return Returns 0 in case of success or negative error code. +*******************************************************************************/ +int32_t adf4350_setup(uint32_t spi_device_id, uint8_t slave_select, + adf4350_init_param init_param) +{ + struct adf4350_state *st = &adf4350_st; + + adf4350_slave_select = slave_select; + + SPISetupMode(spi_device_id,500000,0);//To CHeck last parameters : fixeme ! + st->pdata = (struct adf4350_platform_data *)malloc(sizeof(*st->pdata)); + if (!st->pdata) + return -1; + + st->pdata->clkin = init_param.clkin; + + st->pdata->channel_spacing = init_param.channel_spacing; + + st->pdata->power_up_frequency = init_param.power_up_frequency; + st->pdata->ref_div_factor = init_param.reference_div_factor; + st->pdata->ref_doubler_en = init_param.reference_doubler_enable; + st->pdata->ref_div2_en = init_param.reference_div2_enable; + + /* r2_user_settings */ + + st->pdata->r2_user_settings = init_param.phase_detector_polarity_positive_enable ? + ADF4350_REG2_PD_POLARITY_POS : 0; + st->pdata->r2_user_settings |= init_param.lock_detect_precision_6ns_enable ? + ADF4350_REG2_LDP_6ns : 0; + st->pdata->r2_user_settings |= init_param.lock_detect_function_integer_n_enable ? + ADF4350_REG2_LDF_INT_N : 0; + st->pdata->r2_user_settings |= ADF4350_REG2_CHARGE_PUMP_CURR_uA(init_param.charge_pump_current); + st->pdata->r2_user_settings |= ADF4350_REG2_MUXOUT(init_param.muxout_select); + st->pdata->r2_user_settings |= init_param.low_spur_mode_enable ? ADF4350_REG2_NOISE_MODE(0x3) : 0; + + /* r3_user_settings */ + + st->pdata->r3_user_settings = init_param.cycle_slip_reduction_enable ? + ADF4350_REG3_12BIT_CSR_EN : 0; + st->pdata->r3_user_settings |= init_param.charge_cancellation_enable ? + ADF4351_REG3_CHARGE_CANCELLATION_EN : 0; + st->pdata->r3_user_settings |= init_param.anti_backlash_3ns_enable ? + ADF4351_REG3_ANTI_BACKLASH_3ns_EN : 0; + st->pdata->r3_user_settings |= init_param.band_select_clock_mode_high_enable ? + ADF4351_REG3_BAND_SEL_CLOCK_MODE_HIGH : 0; + st->pdata->r3_user_settings |= ADF4350_REG3_12BIT_CLKDIV(init_param.clk_divider_12bit); + st->pdata->r3_user_settings |= ADF4350_REG3_12BIT_CLKDIV_MODE(init_param.clk_divider_mode); + + /* r4_user_settings */ + + st->pdata->r4_user_settings = init_param.aux_output_enable ? + ADF4350_REG4_AUX_OUTPUT_EN : 0; + st->pdata->r4_user_settings |= init_param.aux_output_fundamental_enable ? + ADF4350_REG4_AUX_OUTPUT_FUND : 0; + st->pdata->r4_user_settings |= init_param.mute_till_lock_enable ? + ADF4350_REG4_MUTE_TILL_LOCK_EN : 0; + st->pdata->r4_user_settings |= ADF4350_REG4_OUTPUT_PWR(init_param.output_power); + st->pdata->r4_user_settings |= ADF4350_REG4_AUX_OUTPUT_PWR(init_param.aux_output_power); + + adf4350_out_altvoltage0_refin_frequency(st->pdata->clkin); + adf4350_out_altvoltage0_frequency_resolution(st->pdata->channel_spacing); + adf4350_out_altvoltage0_frequency(st->pdata->power_up_frequency); + + printf("ADF4350 successfully initialized.\n"); + /*int i; + for(i=0;i<6;i++) + printf("RegHw%d %x\n",i,st->regs[i]); + printf("Reg2 %x\n",st->pdata->r2_user_settings); + printf("Reg3 %x\n",st->pdata->r3_user_settings); + printf("Reg4 %x\n",st->pdata->r4_user_settings);*/ + + return 0; +} + +/***************************************************************************//** + * @brief Stores PLL 0 frequency in Hz. + * + * @param Hz - The selected frequency. + * + * @return Returns the selected frequency. +*******************************************************************************/ +int64_t adf4350_out_altvoltage0_frequency(int64_t Hz) +{ + return adf4350_set_freq(&adf4350_st, Hz); +} + +/***************************************************************************//** + * @brief Stores PLL 0 frequency resolution/channel spacing in Hz. + * + * @param Hz - The selected frequency. + * + * @return Returns the selected frequency. +*******************************************************************************/ +int32_t adf4350_out_altvoltage0_frequency_resolution(int32_t Hz) +{ + if(Hz != INT32_MAX) + { + adf4350_st.chspc = Hz; + } + + return adf4350_st.chspc; +} + +/***************************************************************************//** + * @brief Sets PLL 0 REFin frequency in Hz. + * + * @param Hz - The selected frequency. + * + * @return Returns the selected frequency. +*******************************************************************************/ +int64_t adf4350_out_altvoltage0_refin_frequency(int64_t Hz) +{ + if(Hz != INT32_MAX) + { + adf4350_st.clkin = Hz; + } + + return adf4350_st.clkin; +} + +/***************************************************************************//** + * @brief Powers down the PLL. + * + * @param pwd - Power option. + * Example: 0 - Power up the PLL. + * 1 - Power down the PLL. + * + * @return Returns the PLL's power status. +*******************************************************************************/ +int32_t adf4350_out_altvoltage0_powerdown(int32_t pwd) +{ + struct adf4350_state *st = &adf4350_st; + + if(pwd == 1) + { + st->regs[ADF4350_REG2] |= ADF4350_REG2_POWER_DOWN_EN; + adf4350_sync_config(st); + } + if(pwd == 0) + { + st->regs[ADF4350_REG2] &= ~ADF4350_REG2_POWER_DOWN_EN; + adf4350_sync_config(st); + } + + return (st->regs[ADF4350_REG2] & ADF4350_REG2_POWER_DOWN_EN); +} diff --git a/src/adf4351/adf4351.h b/src/adf4351/adf4351.h new file mode 100644 index 0000000..1370709 --- /dev/null +++ b/src/adf4351/adf4351.h @@ -0,0 +1,198 @@ +/***************************************************************************//** + * @file adf4350.h + * @brief Header file of ADF4350 Driver. + * @author DBogdan (dragos.bogdan@analog.com) +******************************************************************************** + * Copyright 2012-2015(c) Analog Devices, Inc. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * - Neither the name of Analog Devices, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * - The use of this software may or may not infringe the patent rights + * of one or more patent holders. This license does not release you + * from the requirement that you obtain separate licenses from these + * patent holders to use this software. + * - Use of the software either in source or binary form, must be run + * on or directly connected to an Analog Devices Inc. component. + * + * THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * +*******************************************************************************/ +#ifndef __ADF4350_H__ +#define __ADF4350_H__ + +/******************************************************************************/ +/***************************** Include Files **********************************/ +/******************************************************************************/ +#include + +/******************************************************************************/ +/********************** Macros and Constants Definitions **********************/ +/******************************************************************************/ + +/* Channels */ +#define ADF4350_RX_CHANNEL 0 +#define ADF4350_TX_CHANNEL 1 + +/* Registers */ +#define ADF4350_REG0 0 +#define ADF4350_REG1 1 +#define ADF4350_REG2 2 +#define ADF4350_REG3 3 +#define ADF4350_REG4 4 +#define ADF4350_REG5 5 + +/* REG0 Bit Definitions */ +#define ADF4350_REG0_FRACT(x) (((x) & 0xFFF) << 3) +#define ADF4350_REG0_INT(x) (((x) & 0xFFFF) << 15) + +/* REG1 Bit Definitions */ +#define ADF4350_REG1_MOD(x) (((x) & 0xFFF) << 3) +#define ADF4350_REG1_PHASE(x) (((x) & 0xFFF) << 15) +#define ADF4350_REG1_PRESCALER (1 << 27) + +/* REG2 Bit Definitions */ +#define ADF4350_REG2_COUNTER_RESET_EN (1 << 3) +#define ADF4350_REG2_CP_THREESTATE_EN (1 << 4) +#define ADF4350_REG2_POWER_DOWN_EN (1 << 5) +#define ADF4350_REG2_PD_POLARITY_POS (1 << 6) +#define ADF4350_REG2_LDP_6ns (1 << 7) +#define ADF4350_REG2_LDP_10ns (0 << 7) +#define ADF4350_REG2_LDF_FRACT_N (0 << 8) +#define ADF4350_REG2_LDF_INT_N (1 << 8) +#define ADF4350_REG2_CHARGE_PUMP_CURR_uA(x) (((((x)-312) / 312) & 0xF) << 9) +#define ADF4350_REG2_DOUBLE_BUFF_EN (1 << 13) +#define ADF4350_REG2_10BIT_R_CNT(x) ((x) << 14) +#define ADF4350_REG2_RDIV2_EN (1 << 24) +#define ADF4350_REG2_RMULT2_EN (1 << 25) +#define ADF4350_REG2_MUXOUT(x) ((x) << 26) +#define ADF4350_REG2_NOISE_MODE(x) ((x) << 29) + +/* REG3 Bit Definitions */ +#define ADF4350_REG3_12BIT_CLKDIV(x) ((x) << 3) +#define ADF4350_REG3_12BIT_CLKDIV_MODE(x) ((x) << 16) +#define ADF4350_REG3_12BIT_CSR_EN (1 << 18) +#define ADF4351_REG3_CHARGE_CANCELLATION_EN (1 << 21) +#define ADF4351_REG3_ANTI_BACKLASH_3ns_EN (1 << 22) +#define ADF4351_REG3_BAND_SEL_CLOCK_MODE_HIGH (1 << 23) + +/* REG4 Bit Definitions */ +#define ADF4350_REG4_OUTPUT_PWR(x) ((x) << 3) +#define ADF4350_REG4_RF_OUT_EN (1 << 5) +#define ADF4350_REG4_AUX_OUTPUT_PWR(x) ((x) << 6) +#define ADF4350_REG4_AUX_OUTPUT_EN (1 << 8) +#define ADF4350_REG4_AUX_OUTPUT_FUND (1 << 9) +#define ADF4350_REG4_AUX_OUTPUT_DIV (0 << 9) +#define ADF4350_REG4_MUTE_TILL_LOCK_EN (1 << 10) +#define ADF4350_REG4_VCO_PWRDOWN_EN (1 << 11) +#define ADF4350_REG4_8BIT_BAND_SEL_CLKDIV(x) ((x) << 12) +#define ADF4350_REG4_RF_DIV_SEL(x) ((x) << 20) +#define ADF4350_REG4_FEEDBACK_DIVIDED (0 << 23) +#define ADF4350_REG4_FEEDBACK_FUND (1 << 23) + +/* REG5 Bit Definitions */ +#define ADF4350_REG5_LD_PIN_MODE_LOW (0 << 22) +#define ADF4350_REG5_LD_PIN_MODE_DIGITAL (1 << 22) +#define ADF4350_REG5_LD_PIN_MODE_HIGH (3 << 22) + +/* Specifications */ +#define ADF4350_MAX_OUT_FREQ 4400000000ULL /* Hz */ +#define ADF4350_MIN_OUT_FREQ 34375000 /* Hz */ +#define ADF4350_MIN_VCO_FREQ 2200000000ULL /* Hz */ +#define ADF4350_MAX_FREQ_45_PRESC 3000000000ULL /* Hz */ +#define ADF4350_MAX_FREQ_PFD 32000000 /* Hz */ +#define ADF4350_MAX_BANDSEL_CLK 125000 /* Hz */ +#define ADF4350_MAX_FREQ_REFIN 250000000 /* Hz */ +#define ADF4350_MAX_MODULUS 4095 +#define ADF4350_MAX_R_CNT 1023 + +/******************************************************************************/ +/************************ Types Definitions ***********************************/ +/******************************************************************************/ +struct adf4350_platform_data +{ + uint32_t clkin; + uint32_t channel_spacing; + uint64_t power_up_frequency; + + uint16_t ref_div_factor; /* 10-bit R counter */ + uint8_t ref_doubler_en; + uint8_t ref_div2_en; + + uint32_t r2_user_settings; + uint32_t r3_user_settings; + uint32_t r4_user_settings; + int32_t gpio_lock_detect; +}; + +typedef struct +{ + uint32_t clkin; + uint32_t channel_spacing; + uint32_t power_up_frequency; + uint32_t reference_div_factor; + uint8_t reference_doubler_enable; + uint8_t reference_div2_enable; + + /* r2_user_settings */ + uint8_t phase_detector_polarity_positive_enable; + uint8_t lock_detect_precision_6ns_enable; + uint8_t lock_detect_function_integer_n_enable; + uint32_t charge_pump_current; + uint32_t muxout_select; + uint8_t low_spur_mode_enable; + + /* r3_user_settings */ + uint8_t cycle_slip_reduction_enable; + uint8_t charge_cancellation_enable; + uint8_t anti_backlash_3ns_enable; + uint8_t band_select_clock_mode_high_enable; + uint32_t clk_divider_12bit; + uint32_t clk_divider_mode; + + /* r4_user_settings */ + uint8_t aux_output_enable; + uint8_t aux_output_fundamental_enable; + uint8_t mute_till_lock_enable; + uint32_t output_power; + uint32_t aux_output_power; +}adf4350_init_param; + +/******************************************************************************/ +/************************ Functions Declarations ******************************/ +/******************************************************************************/ +/*! Initializes the ADF4350. */ +int32_t adf4350_setup(uint32_t spi_device_id, uint8_t slave_select, + adf4350_init_param init_param); +/*! Writes 4 bytes of data to ADF4350. */ +int32_t adf4350_write(uint32_t data); +/*! Stores PLL 0 frequency in Hz. */ +int64_t adf4350_out_altvoltage0_frequency(int64_t Hz); +/*! Stores PLL 0 frequency resolution/channel spacing in Hz. */ +int32_t adf4350_out_altvoltage0_frequency_resolution(int32_t Hz); +/*! Sets PLL 0 REFin frequency in Hz. */ +int64_t adf4350_out_altvoltage0_refin_frequency(int64_t Hz); +/*! Powers down the PLL. */ +int32_t adf4350_out_altvoltage0_powerdown(int32_t pwd); + +#endif // __ADF4350_H__ + diff --git a/src/adf4351/ctladf4351.c b/src/adf4351/ctladf4351.c new file mode 100644 index 0000000..f98400d --- /dev/null +++ b/src/adf4351/ctladf4351.c @@ -0,0 +1,92 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "adf4351.h" + +adf4350_init_param MyAdf= +{.clkin=25000000, +.channel_spacing=5000, +.power_up_frequency=437000000, +.reference_div_factor=0, +.reference_doubler_enable=0, +.reference_div2_enable=0, + + // r2_user_settings +.phase_detector_polarity_positive_enable=1, +.lock_detect_precision_6ns_enable=0, +.lock_detect_function_integer_n_enable=0, +.charge_pump_current=7, // FixMe +.muxout_select=0, +.low_spur_mode_enable=1, + + // r3_user_settings +.cycle_slip_reduction_enable=1, +.charge_cancellation_enable=0, +.anti_backlash_3ns_enable=0, +.band_select_clock_mode_high_enable=1, +.clk_divider_12bit=0, +.clk_divider_mode=0, + + // r4_user_settings +.aux_output_enable=1, +.aux_output_fundamental_enable=1, +.mute_till_lock_enable=0, +.output_power=0,//-4dbm +.aux_output_power=0 + +}; +uint32_t registers[6] = {0x4580A8, 0x80080C9, 0x4E42, 0x4B3, 0xBC803C, 0x580005}; +//REG 0 +//REG1 1000000000001000000011001 001 +//REG2 100111001000 010 +//REG3 10010110 011 +//REG4 101111001000000000111 100 + + +/***************************************************************************//** + * @brief Powers off or sets the Synth frequency. + * + * @param "off" or freq in MHz (float). + * + * @return 0 or 1 if freq out of bounds +*******************************************************************************/ + +int main(int argc, char *argv[]) +{ + if (wiringPiSetup() == -1); + + if (strcmp(argv[1], "off") == 0) + { + // Turn VCO Off and return + + adf4350_out_altvoltage0_powerdown(1); + + return 0; + } + else if ( atof(argv[1])>=35 && atof(argv[1])<=4400 ) + { + // Valid freq, so set it + uint32_t adf4350_requested_frequency = 1000000 * atof(argv[1]); + + adf4350_setup(0,0,MyAdf); + adf4350_out_altvoltage0_frequency(adf4350_requested_frequency); + + return 0; + } + else + { + // Requested freq out of limits so print error and return 1 + printf("ERROR: Requested Frequency out of limits"); + + return 1; + + } +} From bd5cb3a038d99fe316a561a4e9bbde96c532ac52 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Fri, 18 Nov 2016 18:03:50 +0000 Subject: [PATCH 02/64] Add ADF4351 make --- install.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/install.sh b/install.sh index 2819e3f..d9da173 100755 --- a/install.sh +++ b/install.sh @@ -45,7 +45,10 @@ cd ../ make sudo make install - +#install adf4351 +cd /home/pi/rpidatv/src/adf4351 +make +cp adf4351 ../../bin/ #install rtl_sdr cd /home/pi From 4c15e0aa6a37113364a508b0603b585f5ae087cf Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Fri, 18 Nov 2016 18:05:25 +0000 Subject: [PATCH 03/64] Add ADF4351 make --- update.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/update.sh b/update.sh index a459b75..fb9130a 100755 --- a/update.sh +++ b/update.sh @@ -28,5 +28,11 @@ make clean make sudo make install +#install adf4351 +cd /home/pi/rpidatv/src/adf4351 +make +cp adf4351 ../../bin/ +cd /home/pi/rpidatv + From d7383f3bbef8e1d18ba4c35bd6cd8849b26eeca8 Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 22 Nov 2016 19:42:59 +0000 Subject: [PATCH 04/64] Rewritten GUI --- src/gui/rpidatvtouch.c | 556 ++++++++++++++++++++++++----------------- 1 file changed, 323 insertions(+), 233 deletions(-) diff --git a/src/gui/rpidatvtouch.c b/src/gui/rpidatvtouch.c index 6dc735f..86bc07e 100644 --- a/src/gui/rpidatvtouch.c +++ b/src/gui/rpidatvtouch.c @@ -40,12 +40,12 @@ int wscreen, hscreen; float scaleXvalue, scaleYvalue; // Coeff ratio from Screen/TouchArea -typedef struct { +typedef struct { int r,g,b; } color_t; -typedef struct { +typedef struct { char Text[255]; color_t Color; } status_t; @@ -53,40 +53,58 @@ typedef struct { #define MAX_STATUS 10 typedef struct { int x,y,w,h; - + status_t Status[MAX_STATUS]; int IndexStatus; int NoStatus; int LastEventTime; } button_t; -#define MAX_BUTTON 20 +#define MAX_BUTTON 25 int IndexButtonInArray=0; button_t ButtonArray[MAX_BUTTON]; int IsDisplayOn=0; #define TIME_ANTI_BOUNCE 500 -//GLOBAL PARAM + +//GLOBAL PARAMETERS + int fec; int SR; char ModeInput[255]; -int TabSR[5]= {125,250,333,500,1000}; +char freqtxt[255]; + +// Values to be stored in and read from rpidatvconfig.txt: + +int TabSR[5]= {250,333,500,1000,2000}; int TabFec[5]={1,2,3,5,7}; char TabModeInput[5][255]={"CAMMPEG-2","CAMH264","PATERNAUDIO","FILETS","CARRIER"}; -int Inversed=0;//Display is inversed (Waveshare) +char TabFreq[5][255]={"71","146.5","437","1249","1255"}; + +int Inversed=0;//Display is inversed (Waveshare=1) + pthread_t thfft,thbutton; -GetConfigParam(char *PathConfigFile,char *Param, char *Value) +/***************************************************************************//** + * @brief Looks up the value of Param in PathConfigFile and sets value + * Used to look up the configuration from rpidatvconfig.txt + * + * @param PatchConfigFile (str) the name of the configuration text file + * @param Param the string labeling the parameter + * @param Value the looked-up value of the parameter + * + * @return void +*******************************************************************************/ + +void GetConfigParam(char *PathConfigFile,char *Param, char *Value) { char * line = NULL; - size_t len = 0; + size_t len = 0; int read; - //printf("Read %s\n",PathConfigFile); - FILE *fp=fopen(PathConfigFile,"r"); + FILE *fp=fopen(PathConfigFile,"r"); if(fp!=0) { while ((read = getline(&line, &len, fp)) != -1) { - //printf("%s", line); if(strncmp (line,Param,strlen(Param)) == 0) { strcpy(Value,line+strlen(Param)+1); @@ -100,10 +118,10 @@ GetConfigParam(char *PathConfigFile,char *Param, char *Value) else printf("Config file not found \n"); fclose(fp); - + } -SetConfigParam(char *PathConfigFile,char *Param,char *Value) +void SetConfigParam(char *PathConfigFile,char *Param,char *Value) { char * line = NULL; size_t len = 0; @@ -113,7 +131,7 @@ SetConfigParam(char *PathConfigFile,char *Param,char *Value) strcat(BackupConfigName,".bak"); //printf("Read %s\n",PathConfigFile); FILE *fp=fopen(PathConfigFile,"r"); - + FILE *fw=fopen(BackupConfigName,"w+"); if(fp!=0) { @@ -155,8 +173,8 @@ int IsButtonPushed(int NbButton,int x,int y) } else { - scaledX = wscreen-y/scaleXvalue; //FOR INVERSED TOUCSCREEN (AIW) - scaledY = hscreen-x/scaleYvalue; + scaledX = wscreen-y/scaleXvalue; //FOR INVERSED TOUCSCREEN (AIW) + scaledY = hscreen-x/scaleYvalue; } //printf("x=%d y=%d scaledx %d scaledy %d\n",x,y,scaledX,scaledY); int margin=20; @@ -169,7 +187,7 @@ int IsButtonPushed(int NbButton,int x,int y) } else return 0; - + } int AddButton(int x,int y,int w,int h) @@ -185,27 +203,25 @@ int AddButton(int x,int y,int w,int h) return IndexButtonInArray++; } -AddButtonStatus(int ButtonIndex,char *Text,color_t *Color) +int AddButtonStatus(int ButtonIndex,char *Text,color_t *Color) { button_t *Button=&(ButtonArray[ButtonIndex]); strcpy(Button->Status[Button->IndexStatus].Text,Text); Button->Status[Button->IndexStatus].Color=*Color; - return Button->IndexStatus++; - + return Button->IndexStatus++; } -DrawButton(int ButtonIndex) +void DrawButton(int ButtonIndex) { button_t *Button=&(ButtonArray[ButtonIndex]); - + Fill(Button->Status[Button->NoStatus].Color.r, Button->Status[Button->NoStatus].Color.g, Button->Status[Button->NoStatus].Color.b, 1); Roundrect(Button->x,Button->y,Button->w,Button->h, Button->w/10, Button->w/10); Fill(255, 255, 255, 1); // White text TextMid(Button->x+Button->w/2, Button->y+Button->h/2, Button->Status[Button->NoStatus].Text, SerifTypeface, Button->w/strlen(Button->Status[Button->NoStatus].Text)/*25*/); - } -SetButtonStatus(int ButtonIndex,int Status) +void SetButtonStatus(int ButtonIndex,int Status) { button_t *Button=&(ButtonArray[ButtonIndex]); Button->NoStatus=Status; @@ -215,15 +231,15 @@ int GetButtonStatus(int ButtonIndex) { button_t *Button=&(ButtonArray[ButtonIndex]); return Button->NoStatus; - + } -GetNextPicture(char *PictureName) +void GetNextPicture(char *PictureName) { - + DIR *d; struct dirent *dir; - + d = opendir(ImageFolder); if (d) { @@ -235,18 +251,15 @@ GetNextPicture(char *PictureName) if( len > 4 && strcmp(dir->d_name + len - 4, ".jpg") == 0) { printf("%s\n", dir->d_name); - + strncpy(PictureName,dir->d_name,strlen(dir->d_name)-4); break; } - - } + } } - + closedir(d); } - - } int openTouchScreen(int NoDevice) @@ -285,7 +298,7 @@ Supported events: int getTouchScreenDetails(int *screenXmin,int *screenXmax,int *screenYmin,int *screenYmax) { - unsigned short id[4]; + //unsigned short id[4]; unsigned long bit[EV_MAX][NBITS(KEY_MAX)]; char name[256] = "Unknown"; int abs[6] = {0}; @@ -325,9 +338,9 @@ int getTouchScreenDetails(int *screenXmin,int *screenXmax,int *screenYmin,int *s } } - } + } } - + return IsAtouchDevice; } @@ -339,7 +352,7 @@ int getTouchSample(int *rawX, int *rawY, int *rawPressure) size_t rb; /* the events (up to 64 at once) */ struct input_event ev[64]; - static int Last_event=0; + //static int Last_event=0; //not used? rb=read(fd,ev,sizeof(struct input_event)*64); *rawX=-1;*rawY=-1; int StartTouch=0; @@ -388,13 +401,12 @@ int getTouchSample(int *rawX, int *rawY, int *rawPressure) void UpdateWindow() { int i; - for(i=0;i/dev/null 2>/dev/null" if((strcmp(ModeInput,TabModeInput[0])==0)||(strcmp(ModeInput,TabModeInput[1])==0)) //CAM { printf("DISPLAY OFF \n"); - IsDisplayOn=0; + IsDisplayOn=0; finish(); - + system("v4l2-ctl --overlay=1 >/dev/null 2>/dev/null"); } - + system(PATH_SCRIPT_A); - + } -TransmitStop() +void TransmitStop() { printf("Transmit Stop\n"); + system("sudo /home/pi/rpidatv/bin/adf4351 off"); // Turn the VCO off system("sudo killall rpidatv >/dev/null 2>/dev/null"); system("sudo killall ffmpeg >/dev/null 2>/dev/null"); system("sudo killall tcanim >/dev/null 2>/dev/null"); @@ -483,55 +504,50 @@ void coordpoint(VGfloat x, VGfloat y, VGfloat size, VGfloat pcolor[4]) { #define FFT_SIZE 256 int FinishedButton=0; + void *DisplayFFT(void * arg) { FILE * pFileIQ = NULL; int fft_size=FFT_SIZE; fftwf_complex *fftin; - fftin = (fftwf_complex *)fftwf_malloc(sizeof(fftwf_complex) * fft_size); - fftout = (fftwf_complex *)fftwf_malloc(sizeof(fftwf_complex) * fft_size); + fftin = (fftwf_complex *)fftwf_malloc(sizeof(fftwf_complex) * fft_size); + fftout = (fftwf_complex *)fftwf_malloc(sizeof(fftwf_complex) * fft_size); fftwf_plan plan ; plan = fftwf_plan_dft_1d(fft_size, fftin, fftout, FFTW_FORWARD, FFTW_ESTIMATE ); - system("mkfifo fifo.iq"); - printf("Entering FFT thread\n"); + printf("Entering FFT thread\n"); pFileIQ = fopen("fifo.iq", "r"); - - + while(FinishedButton==0) - { - int Nbread; - int log2_N=11; //FFT 1024 - int ret; - + { + int Nbread; // not used? + int log2_N=11; //FFT 1024 not used? + int ret; // not used? + Nbread=fread( fftin,sizeof(fftwf_complex),FFT_SIZE,pFileIQ); fftwf_execute( plan ); - + //printf("NbRead %d %d\n",Nbread,sizeof(struct GPU_FFT_COMPLEX)); - + fseek(pFileIQ,(1200000-FFT_SIZE)*sizeof(fftwf_complex),SEEK_CUR); } fftwf_free(fftin); fftwf_free(fftout); - } - void *WaitButtonEvent(void * arg) { -int rawX, rawY, rawPressure,i; - + int rawX, rawY, rawPressure; - while(getTouchSample(&rawX, &rawY, &rawPressure)==0); FinishedButton=1; } -ProcessLeandvb() +void ProcessLeandvb() { - #define PATH_SCRIPT_LEAN "sudo /home/pi/rpidatv/scripts/leandvbgui.sh 2>&1" + #define PATH_SCRIPT_LEAN "sudo /home/pi/rpidatv/scripts/leandvbgui.sh 2>&1" char *line=NULL; size_t len = 0; ssize_t read; @@ -544,25 +560,25 @@ ProcessLeandvb() RGBA(255, 255, 128,1, shapecolor); printf("Entering LeandProcess\n"); - FinishedButton=0; + FinishedButton=0; // Thread FFT pthread_create (&thfft,NULL, &DisplayFFT,NULL); - + //END ThreadFFT - // Thread FFT + +// Thread FFT pthread_create (&thbutton,NULL, &WaitButtonEvent,NULL); - -//END ThreadFFT +//END ThreadFFT fp=popen(PATH_SCRIPT_LEAN, "r"); if(fp==NULL) printf("Process error\n"); while (((read = getline(&line, &len, fp)) != -1)&&(FinishedButton==0)) { - + char strTag[20]; int NbData; static int Decim=0; @@ -574,10 +590,11 @@ ProcessLeandvb() static float FREQ=0; if((strcmp(strTag,"SYMBOLS")==0)) { - + token = strtok(line," "); token = strtok(NULL," "); sscanf(token,"%d",&NbData); + if(Decim%25==0) { //Start(wscreen,hscreen); @@ -590,7 +607,7 @@ ProcessLeandvb() { strcpy(sLock,"Lock"); Fill(0,255,0, 1); - + } else { @@ -599,7 +616,7 @@ ProcessLeandvb() } Roundrect(200,0,100,50, 10, 10); Fill(255, 255, 255, 1); // White text - Text(200, 20, sLock, SerifTypeface, 25); + Text(200, 20, sLock, SerifTypeface, 25); //Signal Strength char sSignalStrength[100]; @@ -617,30 +634,28 @@ ProcessLeandvb() Roundrect(500,0,(MER*8),50, 10, 10); Fill(255, 255, 255, 1); // White text Text(500,20, sMER, SerifTypeface, 25); - - - } + if(Decim%25==0) { static VGfloat PowerFFTx[FFT_SIZE]; static VGfloat PowerFFTy[FFT_SIZE]; StrokeWidth(2); - + Stroke(150, 150, 200, 0.8); int i; if(fftout!=NULL) { for(i=0;i=0)&&(i<=4)) //SR + if((i>=0)&&(i<=4)) //Frequency + { + SelectFreq(i); + } + if((i>=5)&&(i<=9)) //SR { SelectSR(i); } - if((i>=5)&&(i<=9)) //FEC + if((i>=10)&&(i<=14)) //FEC { SelectFec(i); } - if((i>=10)&&(i<=14)) //Source + if((i>=15)&&(i<=19)) //Source { SelectSource(i,1); } - if((i>=15)&&(i<=16)) //Source + if((i>=20)&&(i<=21)) //PTT { - + printf("Status %d\n",GetButtonStatus(i)); - if((i==15)&&(GetButtonStatus(i)==0)) + if((i==20)&&(GetButtonStatus(i)==0)) { - - - usleep(500000); SelectPTT(i,1); UpdateWindow(); TransmitStart(); - break; + break; } - if((i==15)&&(GetButtonStatus(i)==1)) + if((i==20)&&(GetButtonStatus(i)==1)) { - - TransmitStop(); usleep(500000); SelectPTT(i,0); - UpdateWindow(); + UpdateWindow(); break; } - if(i==16) + if(i==21) { printf("DISPLAY OFF \n"); //finish(); BackgroundRGB(0,0,0,255); ReceiveStart(); BackgroundRGB(255,255,255,255); - IsDisplayOn=1; - - SelectPTT(15,0); - SelectPTT(16,0); + IsDisplayOn=1; + + SelectPTT(20,0); + SelectPTT(21,0); UpdateWindow(); IsDisplayOn=1; //usleep(500000); @@ -853,29 +867,29 @@ int rawX, rawY, rawPressure,i; if(IsDisplayOn==1) { UpdateWindow(); - // DrawButton(i); + // DrawButton(i) // End(); } /*if((i==0)&&(GetButtonStatus(i)==0)) - { + { printf("DISPLAY OFF \n"); finish(); IsDisplayOn=0; } if((i==0)&&(GetButtonStatus(i)==1)) - { + { printf("DISPLAY ON \n"); init(&wscreen, &hscreen); Start(wscreen,hscreen); - IsDisplayOn=1; + IsDisplayOn=1; UpdateWindow(); }*/ //FixMe : Add a Antibounce } } //circleCursor(scaledX,h-scaledY); - + // key = getchar(); // if (key == endchar || key == '\n') { @@ -888,7 +902,10 @@ static void terminate(int dummy) { printf("Terminate\n"); - + char Commnd[255]; + sprintf(Commnd,"stty echo"); + system(Commnd); + /*restoreterm(); finish();*/ exit(1); @@ -897,15 +914,15 @@ terminate(int dummy) // main initializes the system and shows the picture. // Exit and clean up when you hit [RETURN]. int main(int argc, char **argv) { - int n; - char *progname = argv[0]; + // int n; // not used? + // char *progname = argv[0]; // not used? int NoDeviceEvent=0; saveterm(); init(&wscreen, &hscreen); rawterm(); int screenXmax, screenXmin; int screenYmax, screenYmin; - int ReceiveDirect=0; + int ReceiveDirect=0; int i; for (i = 0; i < 16; i++) { struct sigaction sa; @@ -944,101 +961,137 @@ int main(int argc, char **argv) { - int wbuttonsize=wscreen/5; - int hbuttonsize=hscreen/5; + int wbuttonsize=wscreen/5; + int hbuttonsize=hscreen/6; +// Frequency int button=AddButton(0*wbuttonsize+20,0+hbuttonsize*0+20,wbuttonsize*0.9,hbuttonsize*0.9); color_t Col; Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR125",&Col); + AddButtonStatus(button," 71 MHz ",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR125",&Col); + AddButtonStatus(button," 71 MHz ",&Col); button=AddButton(1*wbuttonsize+20,hbuttonsize*0+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR250",&Col); + AddButtonStatus(button,"146.5 MHz",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR250",&Col); + AddButtonStatus(button,"146.5 MHz",&Col); button=AddButton(2*wbuttonsize+20,hbuttonsize*0+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR333",&Col); + AddButtonStatus(button,"437 MHz ",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR333",&Col); + AddButtonStatus(button,"437 MHz ",&Col); button=AddButton(3*wbuttonsize+20,hbuttonsize*0+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR500",&Col); + AddButtonStatus(button,"1249 MHz",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR500",&Col); + AddButtonStatus(button,"1249 MHz",&Col); button=AddButton(4*wbuttonsize+20,hbuttonsize*0+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; + AddButtonStatus(button,"1255 MHz",&Col); + Col.r=0;Col.g=128;Col.b=0; + AddButtonStatus(button,"1255 MHz",&Col); + +// Symbol Rate + + button=AddButton(0*wbuttonsize+20,0+hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; + AddButtonStatus(button,"SR 250",&Col); + Col.r=0;Col.g=128;Col.b=0; + AddButtonStatus(button,"SR 250",&Col); + + button=AddButton(1*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; + AddButtonStatus(button,"SR 333",&Col); + Col.r=0;Col.g=128;Col.b=0; + AddButtonStatus(button,"SR 333",&Col); + + button=AddButton(2*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; + AddButtonStatus(button,"SR 500",&Col); + Col.r=0;Col.g=128;Col.b=0; + AddButtonStatus(button,"SR 500",&Col); + + button=AddButton(3*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"SR1000",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"SR1000",&Col); -// FEC - button=AddButton(0*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + + button=AddButton(4*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; + AddButtonStatus(button,"SR2000",&Col); + Col.r=0;Col.g=128;Col.b=0; + AddButtonStatus(button,"SR2000",&Col); + +// FEC + + button=AddButton(0*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"FEC 1/2",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"FEC 1/2",&Col); - - button=AddButton(1*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + + button=AddButton(1*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"FEC 2/3",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"FEC 2/3",&Col); - -button=AddButton(2*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + + button=AddButton(2*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"FEC 3/4",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"FEC 3/4",&Col); - -button=AddButton(3*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + + button=AddButton(3*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"FEC 5/6",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"FEC 5/6",&Col); -button=AddButton(4*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); + button=AddButton(4*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"FEC 7/8",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"FEC 7/8",&Col); //SOURCE -button=AddButton(0*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); - Col.r=0;Col.g=0;Col.b=128; + + button=AddButton(0*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"CAM MPEG2",&Col); Col.r=0;Col.g=128;Col.b=0; AddButtonStatus(button,"CAM MPEG2",&Col); - - button=AddButton(1*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); - Col.r=0;Col.g=0;Col.b=128; + + button=AddButton(1*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); + Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"CAM H264",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"CAM H264",&Col); + AddButtonStatus(button,"CAM H264",&Col); -char PictureName[255]; + char PictureName[255]; //strcpy(PictureName,ImageFolder); GetNextPicture(PictureName); -button=AddButton(2*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); + + button=AddButton(2*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"Patern",&Col); + AddButtonStatus(button,"Pattern",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,PictureName,&Col); - + AddButtonStatus(button,"Pattern",&Col); -button=AddButton(3*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); + button=AddButton(3*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"TS File",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"Video Name",&Col); + AddButtonStatus(button,"TSFile",&Col); -button=AddButton(4*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0.9); + button=AddButton(4*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"Carrier",&Col); Col.r=0;Col.g=128;Col.b=0; @@ -1046,36 +1099,69 @@ button=AddButton(4*wbuttonsize+20,hbuttonsize*2+20,wbuttonsize*0.9,hbuttonsize*0 //TRANSMIT -button=AddButton(0*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*1.2,hbuttonsize*1.2); + button=AddButton(0*wbuttonsize+20,hbuttonsize*4+20,wbuttonsize*1.2,hbuttonsize*1.2); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"TX ",&Col); Col.r=255;Col.g=0;Col.b=0; - AddButtonStatus(button,"TX ON",&Col); + AddButtonStatus(button,"TX ON",&Col); -button=AddButton(1*wbuttonsize*3+20,hbuttonsize*3+20,wbuttonsize*1.2,hbuttonsize*1.2); + button=AddButton(1*wbuttonsize*3+20,hbuttonsize*4+20,wbuttonsize*1.2,hbuttonsize*1.2); Col.r=0;Col.g=0;Col.b=128; AddButtonStatus(button,"RX ",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"RX ON",&Col); - + AddButtonStatus(button,"RX ON",&Col); + Start(wscreen,hscreen); IsDisplayOn=1; - - char Param[]="symbolrate"; - char Value[255]; +// Determine button highlights + + // Frequency + + char Param[255]; + char Value[255]; + strcpy(Param,"freqoutput"); + GetConfigParam(PATH_CONFIG,Param,Value); + strcpy(freqtxt,Value); + printf("Value=%s %s\n",Value,"Freq"); + if(strcmp(Value,"71")==0) + { + SelectFreq(0); + } + if(strcmp(Value,"146.5")==0) + { + SelectFreq(1); + } + if(strcmp(Value,"437")==0) + { + SelectFreq(2); + } + if(strcmp(Value,"1249")==0) + { + SelectFreq(3); + } + if(strcmp(Value,"1255")==0) + { + SelectFreq(4); + } + + // Symbol Rate + + strcpy(Param,"symbolrate"); GetConfigParam(PATH_CONFIG,Param,Value); - SR=atoi(Value); + printf("Value=%s %s\n",Value,"SR"); switch(SR) { - case 125:SelectSR(0);break; - case 250:SelectSR(1);break; - case 333:SelectSR(2);break; - case 500:SelectSR(3);break; - case 1000:SelectSR(4);break; + case 125:SelectSR(5);break; + case 250:SelectSR(6);break; + case 333:SelectSR(7);break; + case 500:SelectSR(8);break; + case 1000:SelectSR(9);break; } + // FEC + strcpy(Param,"fec"); strcpy(Value,""); GetConfigParam(PATH_CONFIG,Param,Value); @@ -1083,42 +1169,46 @@ button=AddButton(1*wbuttonsize*3+20,hbuttonsize*3+20,wbuttonsize*1.2,hbuttonsize fec=atoi(Value); switch(fec) { - case 1:SelectFec(5);break; - case 2:SelectFec(6);break; - case 3:SelectFec(7);break; - case 5:SelectFec(8);break; - case 7:SelectFec(9);break; + case 1:SelectFec(10);break; + case 2:SelectFec(11);break; + case 3:SelectFec(12);break; + case 5:SelectFec(13);break; + case 7:SelectFec(14);break; } - + + // Input Mode + strcpy(Param,"modeinput"); GetConfigParam(PATH_CONFIG,Param,Value); strcpy(ModeInput,Value); + printf("Value=%s %s\n",Value,"Input Mode"); // if(strcmp(Value,"CAMH264")==0) { - SelectSource(11,1); - + SelectSource(16,1); } if(strcmp(Value,"CAMMPEG-2")==0) { - SelectSource(10,1); - + SelectSource(15,1); } if(strcmp(Value,"PATERNAUDIO")==0) { - SelectSource(12,1); - + SelectSource(17,1); } if(strcmp(Value,"CARRIER")==0) { - SelectSource(13,1); + SelectSource(18,1); } + UpdateWindow(); - + + + printf("Update Window\n"); + // RESIZE JPEG TO BE DONE /*char PictureName[255]; strcpy(PictureName,ImageFolder); GetNextPicture(PictureName); - + Image(0,0,300,200,PictureName); End(); From 4048804505dd4c01390ea44eca457686ff97e698 Mon Sep 17 00:00:00 2001 From: davecrump Date: Wed, 23 Nov 2016 17:23:58 +0000 Subject: [PATCH 05/64] Better implementation of boo/config.txt chnages for touchscreen --- scripts/langfr.sh | 3 +- scripts/langgb.sh | 5 +- scripts/menu.sh | 185 ++++++++++++++++++++++++++++------------------ 3 files changed, 120 insertions(+), 73 deletions(-) diff --git a/scripts/langfr.sh b/scripts/langfr.sh index 8042037..4d60554 100644 --- a/scripts/langfr.sh +++ b/scripts/langfr.sh @@ -91,11 +91,12 @@ AutostartSetupConsole="Menu console(ce menu)" AutostartSetupDisplay="Graphique(avec ecran tactile)" AutostartSetupButton="Boutons poussoires" -StrDisplaySetupTitle="Configure un ecran tactile" +StrDisplaySetupTitle="Configure un ecran tactile - apres reboot" StrDisplaySetupContext="Choix:" DisplaySetupTontec="Ecran Tontec 3,5 pouces" DisplaySetupHDMI="HDMI tactile" DisplaySetupRpiLCD="Rpi LCD" +DisplaySetupConsole="Network Console" StrIPSetupTitle="Configure en IP Statique" StrIPSetupContext="Exemple: 192.168.1.60" diff --git a/scripts/langgb.sh b/scripts/langgb.sh index cb8f3e2..c72c4fc 100644 --- a/scripts/langgb.sh +++ b/scripts/langgb.sh @@ -88,11 +88,12 @@ AutostartSetupConsole="Console menu" AutostartSetupDisplay="Display with touchscreen" AutostartSetupButton="Push buttons" -StrDisplaySetupTitle="Touchscreen setup" +StrDisplaySetupTitle="Touchscreen setup - needs reboot after setting" StrDisplaySetupContext="Choice:" DisplaySetupTontec="Tontec 3,5 inches" DisplaySetupHDMI="HDMI touchscreen" DisplaySetupRpiLCD="Rpi LCD" +DisplaySetupConsole="Network Console" StrIPSetupTitle="Setup a static IP" StrIPSetupContext="Example: 192.168.1.60" @@ -104,7 +105,7 @@ StrMainMenuOutput="Output select" StrMainMenuCall="Station call setup" StrMainMenuSystem="System setup" StrMainMenuExitTitle="Exit" -StrMainMenuExitContext="Thanks to use RpiDATV... 73's de F5OEO(evaristec@gmail.com)" +StrMainMenuExitContext="Thanks for using RpiDATV... 73's de F5OEO(evaristec@gmail.com)" ########## FILE ################# diff --git a/scripts/menu.sh b/scripts/menu.sh index c4eff7d..6512704 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -1,5 +1,9 @@ #!/bin/bash - + +############ Set Environment Variables ############### + +PATHSCRIPT=/home/pi/rpidatv/scripts +PATHRPI=/home/pi/rpidatv/bin set_config_var() { lua - "$1" "$2" "$3" < "$3.bak" @@ -51,7 +55,7 @@ fi RET=$? if [ $RET -eq 1 ]; then ## This is the section where you control what happens when the user hits Cancel -Cancel +Cancel elif [ $RET -eq 0 ]; then if [[ -d "/$1$pathselect" ]]; then Filebrowser "/$1$pathselect" @@ -59,7 +63,6 @@ elif [ $RET -eq 0 ]; then ## Do your thing here, this is just a stub of the code I had to do what I wanted the script to do. fileout=`file "$1$pathselect"` filename=`readlink -m $1$pathselect` - else echo pathselect $1$pathselect whiptail --title "$FileMenuTitle" --msgbox "$FileMenuContext" 8 44 @@ -67,9 +70,7 @@ elif [ $RET -eq 0 ]; then unset imgpath Filebrowser fi - fi - } Pathbrowser() { @@ -95,7 +96,7 @@ elif [ $RET -eq 0 ]; then fileout=`file "$1$pathselect"` filenametemp=`readlink -m $1$pathselect` filename=`dirname $filenametemp` - + else echo pathselect $1$pathselect whiptail --title "$FileMenuTitle" --msgbox "$FileMenuContext" 8 44 @@ -103,9 +104,8 @@ elif [ $RET -eq 0 ]; then unset imgpath Pathbrowser fi - -fi +fi } do_input_setup() { @@ -244,7 +244,6 @@ case "$MODE_INPUT" in Radio9=OFF Radio10=OFF ;; - esac chinput=$(whiptail --title "$StrInputSetupTitle" --radiolist \ @@ -282,28 +281,27 @@ chinput=$(whiptail --title "$StrInputSetupTitle" --radiolist \ ;; IPTSIN) UDPINADDR=$(get_config_var udpinaddr $CONFIGFILE) - + UDPINADDR=$(whiptail --inputbox "$StrInputSetupIPTSINName" 8 78 $UDPINADDR --title "$StrInputSetupIPTSINTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then set_config_var udpinaddr "$UDPINADDR" $CONFIGFILE - fi + fi ;; ANALOGCAM) ANALOGCAMNAME=$(get_config_var analogcamname $CONFIGFILE) - ANALOGCAMNAME=$(whiptail --inputbox "$StrInputSetupANALOGCAMName" 8 78 $ANALOGCAMNAME --title "$StrInputSetupANALOGCAMTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then set_config_var analogcamname "$ANALOGCAMNAME" $CONFIGFILE - fi + fi ;; VNC) VNCADDR=$(get_config_var vncaddr $CONFIGFILE) - + VNCADDR=$(whiptail --inputbox "$StrInputSetupVNCName" 8 78 $VNCADDR --title "$StrInputSetupVNCTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then set_config_var vncaddr "$VNCADDR" $CONFIGFILE - fi - ;; + fi + ;; esac set_config_var modeinput "$chinput" $CONFIGFILE fi @@ -411,56 +409,56 @@ choutput=$(whiptail --title "$StrOutputSetupTitle" --radiolist \ "DTX1" "$StrOutputSetupDTX1" $Radio5 \ "DATVEXPRESS" "$StrOutputSetupDATVExpress" $Radio6 \ "IP" "$StrOutputSetupIP" $Radio7 3>&2 2>&1 1>&3) -if [ $? -eq 0 ]; then - +if [ $? -eq 0 ]; then + case "$choutput" in - IQ) + IQ) PIN_I=$(get_config_var gpio_i $CONFIGFILE) PIN_I=$(whiptail --inputbox "$StrPIN_IContext" 8 78 $PIN_I --title "$StrPIN_ITitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var gpio_i "$PIN_I" $CONFIGFILE + set_config_var gpio_i "$PIN_I" $CONFIGFILE fi PIN_Q=$(get_config_var gpio_q $CONFIGFILE) PIN_Q=$(whiptail --inputbox "$StrPIN_QContext" 8 78 $PIN_Q --title "$StrPIN_QTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var gpio_q "$PIN_Q" $CONFIGFILE + set_config_var gpio_q "$PIN_Q" $CONFIGFILE fi - ;; + ;; QPSKRF) FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) - FREQ=$(whiptail --inputbox "$StrOutputRFFreqContext" 8 78 $FREQ_OUTPUT --title "$StrOutputRFFreqTitle" 3>&1 1>&2 2>&3) - if [ $? -eq 0 ]; then - set_config_var freqoutput "$FREQ" $CONFIGFILE - fi + ##FREQ=$(whiptail --inputbox "$StrOutputRFFreqContext" 8 78 $FREQ_OUTPUT --title "$StrOutputRFFreqTitle" 3>&1 1>&2 2>&3) + ##if [ $? -eq 0 ]; then + ## set_config_var freqoutput "$FREQ" $CONFIGFILE + ##fi GAIN_OUTPUT=$(get_config_var rfpower $CONFIGFILE) GAIN=$(whiptail --inputbox "$StrOutputRFGainContext" 8 78 $GAIN_OUTPUT --title "$StrOutputRFGainTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var rfpower "$GAIN" $CONFIGFILE + set_config_var rfpower "$GAIN" $CONFIGFILE fi ;; BATC) BATC_OUTPUT=$(get_config_var batcoutput $CONFIGFILE) ADRESS=$(whiptail --inputbox "$StrOutputBATCContext" 8 78 $BATC_OUTPUT --title "$StrOutputBATCTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var batcoutput "$ADRESS" $CONFIGFILE - fi + set_config_var batcoutput "$ADRESS" $CONFIGFILE + fi ;; DIGITHIN) PIN_I=$(get_config_var gpio_i $CONFIGFILE) PIN_I=$(whiptail --inputbox "$StrPIN_IContext" 8 78 $PIN_I --title "$StrPIN_ITitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var gpio_i "$PIN_I" $CONFIGFILE + set_config_var gpio_i "$PIN_I" $CONFIGFILE fi PIN_Q=$(get_config_var gpio_q $CONFIGFILE) PIN_Q=$(whiptail --inputbox "$StrPIN_QContext" 8 78 $PIN_Q --title "$StrPIN_QTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var gpio_q "$PIN_Q" $CONFIGFILE + set_config_var gpio_q "$PIN_Q" $CONFIGFILE fi FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) FREQ=$(whiptail --inputbox "$StrOutputRFFreqContext" 8 78 $FREQ_OUTPUT --title "$StrOutputRFFreqTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var freqoutput "$FREQ" $CONFIGFILE - fi + set_config_var freqoutput "$FREQ" $CONFIGFILE + fi sudo ./si570 -f $FREQ -m off ;; DTX1) ;; @@ -468,22 +466,22 @@ if [ $? -eq 0 ]; then FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) FREQ=$(whiptail --inputbox "$StrOutputRFFreqContext" 8 78 $FREQ_OUTPUT --title "$StrOutputRFFreqTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var freqoutput "$FREQ" $CONFIGFILE + set_config_var freqoutput "$FREQ" $CONFIGFILE fi GAIN_OUTPUT=$(get_config_var rfpower $CONFIGFILE) GAIN=$(whiptail --inputbox "$StrOutputRFGainContext" 8 78 $GAIN_OUTPUT --title "$StrOutputRFGainTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var rfpower "$GAIN" $CONFIGFILE + set_config_var rfpower "$GAIN" $CONFIGFILE fi ;; - IP) + IP) UDPOUTADDR=$(get_config_var udpoutaddr $CONFIGFILE) - + UDPOUTADDR=$(whiptail --inputbox "$StrOutputSetupIPTSOUTName" 8 78 $UDPOUTADDR --title "$StrOutputSetupIPTSOUTTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then set_config_var udpoutaddr "$UDPOUTADDR" $CONFIGFILE - fi - ;; + fi + ;; esac set_config_var modeoutput "$choutput" $CONFIGFILE fi @@ -554,7 +552,7 @@ do_fec_setup() "7" "7/8" $Radio5 3>&2 2>&1 1>&3) if [ $? -eq 0 ]; then set_config_var fec "$FEC" $CONFIGFILE -fi +fi } do_PID_setup() @@ -573,39 +571,48 @@ set_config_var pidaudio "$PID" $CONFIGFILE fi } +do_freq_setup() +{ +FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) +FREQ=$(whiptail --inputbox "$StrOutputRFFreqContext" 8 78 $FREQ_OUTPUT --title "$StrOutputRFFreqTitle" 3>&1 1>&2 2>&3) +if [ $? -eq 0 ]; then + set_config_var freqoutput "$FREQ" $CONFIGFILE +fi +} + do_output_setup() { menuchoice=$(whiptail --title "$StrOutputTitle" --menu "$StrOutputContext" 16 78 5 \ "1 SymbolRate" "$StrOutputSR" \ "2 FEC" "$StrOutputFEC" \ "3 Output mode" "$StrOutputMode" \ "4 PID" "$StrPIDSetup" \ + "5 Frequency" "$StrOutputRFFreqContext" \ 3>&2 2>&1 1>&3) case "$menuchoice" in 1\ *) do_symbolrate_setup ;; 2\ *) do_fec_setup ;; 3\ *) do_output_setup_mode ;; - 4\ *) do_PID_setup ;; + 4\ *) do_PID_setup ;; + 5\ *) do_freq_setup ;; esac } do_transmit() { - $PATHSCRIPT"/a.sh" >/dev/null 2>/dev/null & #$PATHSCRIPT"/a.sh" & do_status do_stop_transmit - } do_stop_transmit() { sudo killall rpidatv >/dev/null 2>/dev/null sudo killall ffmpeg >/dev/null 2>/dev/null - sudo killall tcanim >/dev/null 2>/dev/null + sudo killall tcanim >/dev/null 2>/dev/null sudo killall avc2ts >/dev/null 2>/dev/null - + sudo $PATHRPI"/adf4351" off } do_display_on() @@ -716,45 +723,83 @@ do_display_setup() { MODE_DISPLAY=$(get_config_var display $CONFIGFILE) case "$MODE_DISPLAY" in - Tontec35) + + Tontec35) Radio1=ON Radio2=OFF Radio3=OFF + Radio4=OFF ;; HDMITouch) Radio1=OFF Radio2=ON Radio3=OFF - ;; + Radio4=OFF + ;; Waveshare) Radio1=OFF Radio2=OFF Radio3=ON + Radio4=OFF ;; + Console) + Radio1=OFF + Radio2=OFF + Radio3=OFF + Radio4=ON + ;; *) Radio1=ON Radio2=OFF Radio3=OFF - + Radio4=OFF esac chdisplay=$(whiptail --title "$StrDisplaySetupTitle" --radiolist \ - "$StrDisplaySetupContext" 20 78 8 \ - "Tontec35" "$DisplaySetupTontec" $Radio1 \ - "HDMITouch" "$DisplaySetupHDMI" $Radio2 \ - "Waveshare" "$DisplaySetupRpiLCD" $Radio3 \ - 3>&2 2>&1 1>&3) + "$StrDisplaySetupContext" 20 78 8 \ + "Tontec35" "$DisplaySetupTontec" $Radio1 \ + "HDMITouch" "$DisplaySetupHDMI" $Radio2 \ + "Waveshare" "$DisplaySetupRpiLCD" $Radio3 \ + "Console" "$DisplaySetupConsole" $Radio4 \ + 3>&2 2>&1 1>&3) + +## This section modifies and replaces the end of /boot/config.txt +## to allow (only) the correct LCD drivers to be loaded at next boot + +## Set constants for the amendment of /boot/config.txt below + +PATHCONFIGS="/home/pi/rpidatv/scripts/configs" ## Path to config files +lead='^## Begin LCD Driver' ## Marker for start of inserted message +tail='^## End LCD Driver' ## Marker for start of inserted message +CHANGEFILE="/boot/config.txt" ## File requiring added message +APPENDFILE=$PATHCONFIGS"/lcd_markers.txt" ## File containing both markers +TRANSFILE=$PATHCONFIGS"/transfer.txt" ## File used for transfer + +if [ $? -eq 0 ]; then ## If the selection has changed + + grep -q "$lead" "$CHANGEFILE" ## Is the first marker already present? + if [ $? -ne 0 ]; then + sudo bash -c 'cat '$APPENDFILE' >> '$CHANGEFILE' ' ## If not append the markers + fi -if [ $? -eq 0 ]; then - - case "$chdisplay" in - Tontec35) sudo bash -c 'echo -e "\ndtparam=spi=on\ndtoverlay=mz61581\n" >> /boot/config.txt' ;; - HDMITouch) sudo bash -c 'echo -e "\nhdmi_group=2\nhdmi_mode=1\nhdmi_mode=87\nhdmi_cvt 800 480 60 6 0 0 0\ndtparam=spi=on\n\ndtoverlay=ads7846,cs=1,penirq=25,penirq_pull=2,speed=50000,keep_vref_on=0,swapxy=0,pmax=255,xohms=150,xmin=200,xmax=3900,ymin=200,ymax=3900" >> /boot/config.txt' ;; - Waveshare) sudo bash -c 'echo -e "\ndtparam=spi=on\ndtoverlay=waveshare35a\ndtoverlay=ads7846,cs=1,penirq=17,penirq_pull=2,speed=1000000,keep_vref_on=1,swapxy=1,pmax=255,xohms=60,xmin=200,xmax=3900,ymin=200,ymax=3900\n" >> /boot/config.txt' ;; + case "$chdisplay" in ## Select the correct driver text - - esac - set_config_var display "$chdisplay" $CONFIGFILE + Tontec35) INSERTFILE=$PATHCONFIGS"/tontec35.txt" ;; ## Message to be added + HDMITouch) INSERTFILE=$PATHCONFIGS"/hdmitouch.txt" ;; + Waveshare) INSERTFILE=$PATHCONFIGS"/waveshare.txt" ;; + Console) INSERTFILE=$PATHCONFIGS"/console.txt" ;; + + esac + + ## Replace whatever is between the markers with the driver text + + sed -e "/$lead/,/$tail/{ /$lead/{p; r $INSERTFILE + }; /$tail/p; d }" $CHANGEFILE >> $TRANSFILE + + sudo cp "$TRANSFILE" "$CHANGEFILE" ## Copy from the transfer file + rm $TRANSFILE ## Delete the transfer file + + set_config_var display "$chdisplay" $CONFIGFILE fi } @@ -822,26 +867,26 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" #do_display_on #"1 Transmission" "Demarre la transmission"\ menuchoice=$(whiptail --title "$StrMainMenuTitle" --menu "$INFO" 16 82 6 \ - "0 Transmit" "Go transmit" \ + "0 Transmit" "Go to transmit" \ "1 Source" "$StrMainMenuSource" \ - "2 Sortie" "$StrMainMenuOutput" \ + "2 Output" "$StrMainMenuOutput" \ "3 Station" "$StrMainMenuCall" \ "4 Receive" "Receive via rtlsdr" \ "5 System" "$StrMainMenuSystem" \ 3>&2 2>&1 1>&3) - + case "$menuchoice" in - 0\ *) do_transmit ;; + 0\ *) do_transmit ;; 1\ *) do_input_setup ;; 2\ *) do_output_setup ;; 3\ *) do_station_setup ;; - 4\ *) do_receive ;; - 5\ *) do_system_setup ;; + 4\ *) do_receive ;; + 5\ *) do_system_setup ;; *) - + whiptail --title "$StrMainMenuExitTitle" --msgbox "$StrMainMenuExitContext" 8 78 status=1 - + kill -1 $(pidof -x frmenu.sh) >/dev/null 2>/dev/null kill -1 $(pidof -x gbmenu.sh) >/dev/null 2>/dev/null sleep 1 From cfe61bae79471805f06519496385f746384d0981 Mon Sep 17 00:00:00 2001 From: davecrump Date: Thu, 24 Nov 2016 09:59:29 +0000 Subject: [PATCH 06/64] Add scripts for touchscreen drivers --- scripts/configs/console.txt | 2 ++ scripts/configs/hdmitouch.txt | 7 +++++++ scripts/configs/lcd_markers.txt | 4 ++++ scripts/configs/tontec35.txt | 3 +++ scripts/configs/waveshare.txt | 3 +++ 5 files changed, 19 insertions(+) create mode 100644 scripts/configs/console.txt create mode 100644 scripts/configs/hdmitouch.txt create mode 100644 scripts/configs/lcd_markers.txt create mode 100644 scripts/configs/tontec35.txt create mode 100644 scripts/configs/waveshare.txt diff --git a/scripts/configs/console.txt b/scripts/configs/console.txt new file mode 100644 index 0000000..cb6a2b3 --- /dev/null +++ b/scripts/configs/console.txt @@ -0,0 +1,2 @@ +## Console selected + diff --git a/scripts/configs/hdmitouch.txt b/scripts/configs/hdmitouch.txt new file mode 100644 index 0000000..002e14d --- /dev/null +++ b/scripts/configs/hdmitouch.txt @@ -0,0 +1,7 @@ +hdmi_group=2 +hdmi_mode=1 +hdmi_mode=87 +hdmi_cvt 800 480 60 6 0 0 0 +dtparam=spi=on + +dtoverlay=ads7846,cs=1,penirq=25,penirq_pull=2,speed=50000,keep_vref_on=0,swapxy=0,pmax=255,xohms=150,xmin=200,xmax=3900,ymin=200,ymax=3900 diff --git a/scripts/configs/lcd_markers.txt b/scripts/configs/lcd_markers.txt new file mode 100644 index 0000000..57bb02b --- /dev/null +++ b/scripts/configs/lcd_markers.txt @@ -0,0 +1,4 @@ + +## Begin LCD Driver +## No driver loaded +## End LCD Driver diff --git a/scripts/configs/tontec35.txt b/scripts/configs/tontec35.txt new file mode 100644 index 0000000..d44134e --- /dev/null +++ b/scripts/configs/tontec35.txt @@ -0,0 +1,3 @@ +dtparam=spi=on +dtoverlay=mz61581 + diff --git a/scripts/configs/waveshare.txt b/scripts/configs/waveshare.txt new file mode 100644 index 0000000..5ac9aed --- /dev/null +++ b/scripts/configs/waveshare.txt @@ -0,0 +1,3 @@ +dtparam=spi=on +dtoverlay=waveshare35a +dtoverlay=ads7846,cs=1,penirq=17,penirq_pull=2,speed=1000000,keep_vref_on=1,swapxy=1,pmax=255,xohms=60,xmin=200,xmax=3900,ymin=200,ymax=3900 From f8e5a1a3b714442735ec14dd8eb0768d32988b35 Mon Sep 17 00:00:00 2001 From: davecrump Date: Thu, 24 Nov 2016 10:23:57 +0000 Subject: [PATCH 07/64] Corrected SR detection at gui start-up --- src/gui/rpidatvtouch.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gui/rpidatvtouch.c b/src/gui/rpidatvtouch.c index 86bc07e..730a90c 100644 --- a/src/gui/rpidatvtouch.c +++ b/src/gui/rpidatvtouch.c @@ -1153,11 +1153,11 @@ int main(int argc, char **argv) { printf("Value=%s %s\n",Value,"SR"); switch(SR) { - case 125:SelectSR(5);break; - case 250:SelectSR(6);break; - case 333:SelectSR(7);break; - case 500:SelectSR(8);break; - case 1000:SelectSR(9);break; + case 250:SelectSR(5);break; + case 333:SelectSR(6);break; + case 500:SelectSR(7);break; + case 1000:SelectSR(8);break; + case 2000:SelectSR(9);break; } // FEC From 2df23aab0d84199539149e87db46cc14a255555b Mon Sep 17 00:00:00 2001 From: davecrump Date: Sat, 26 Nov 2016 18:32:53 +0000 Subject: [PATCH 08/64] Now includes band switching and works over ranges, not discrete SRs and freqs --- scripts/ctlfilter.sh | 96 +++++++++++++++++++++++++++++++------------- 1 file changed, 68 insertions(+), 28 deletions(-) diff --git a/scripts/ctlfilter.sh b/scripts/ctlfilter.sh index e6d0298..0925fe2 100755 --- a/scripts/ctlfilter.sh +++ b/scripts/ctlfilter.sh @@ -1,28 +1,55 @@ ########## ctlfilter.sh ############ # Called by a.sh in IQ mode to switch in correct -# Nyquist Filter +# Nyquist Filter and band switching +# Written by Dave G8GKQ 26 Nov 16 -############ Set Environment Variables ############### +# SR Outputs: + +# <130 000 +# <260 001 +# <360 010 +# <550 011 +# <1100 100 +# >=1100 101 + +# Band Outputs: + +# <100 00 (71 MHz) +# <250 01 (146.5 MHz) +# <950 10 (437 MHz) +# <4400 11 (1255 MHz) +# Non integer frequencies are rounded down + +############ Set Environment Variables ############### PATHSCRIPT=/home/pi/rpidatv/scripts CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" -############### PIN DEFINITION ########### +############### PIN DEFINITIONS ########### -#filter_bit0 LSB of filter control word=GPIO 16 / Header 36 +#filter_bit0 LSB of filter control word = BCM 16 / Header 36 filter_bit0=16 -#filter_bit1 Mid Bit of filter control word=GPIO 26 / Header 37 +#filter_bit1 Mid Bit of filter control word = BCM 26 / Header 37 filter_bit1=26 -#filter_bit0 MSB of filter control word=GPIO 20 / Header 38 +#filter_bit0 MSB of filter control word = BCM 20 / Header 38 filter_bit2=20 +#band_bit_0 LSB of band switching word = BCM 1 / Header 28 +band_bit0=1 + +#band_bit_1 MSB of band switching word = BCM 19 / Header 35 +band_bit1=19 + +# Set all as outputs gpio -g mode $filter_bit0 out gpio -g mode $filter_bit1 out gpio -g mode $filter_bit2 out +gpio -g mode $band_bit0 out +gpio -g mode $band_bit1 out ############### Function to read Config File ############### @@ -47,45 +74,58 @@ SYMBOLRATEK=$(get_config_var symbolrate $CONFIGFILE) ############### Switch GPIOs based on Symbol Rate ######## -case "$SYMBOLRATEK" in - 125) +if (( $SYMBOLRATEK \< 130 )); then gpio -g write $filter_bit0 0; gpio -g write $filter_bit1 0; - gpio -g write $filter_bit2 0; - ;; - 250) - gpio -g write $filter_bit0 1; + gpio -g write $filter_bit2 0; +elif (( $SYMBOLRATEK \< 260 )); then + gpio -g write $filter_bit0 1; gpio -g write $filter_bit1 0; gpio -g write $filter_bit2 0; - ;; - 333) +elif (( $SYMBOLRATEK \< 360 )); then gpio -g write $filter_bit0 0; gpio -g write $filter_bit1 1; gpio -g write $filter_bit2 0; - ;; - 500) +elif (( $SYMBOLRATEK \< 550 )); then gpio -g write $filter_bit0 1; gpio -g write $filter_bit1 1; gpio -g write $filter_bit2 0; - ;; - 1000) +elif (( $SYMBOLRATEK \< 1100 )); then gpio -g write $filter_bit0 0; gpio -g write $filter_bit1 0; gpio -g write $filter_bit2 1; - ;; - 2000) +else gpio -g write $filter_bit0 1; gpio -g write $filter_bit1 0; gpio -g write $filter_bit2 1; - ;; - *) - gpio -g write $filter_bit0 1; - gpio -g write $filter_bit1 0; - gpio -g write $filter_bit2 1; - ;; -esac +fi + +############### Read Frequency ######################### + +FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) + +INT_FREQ_OUTPUT=${FREQ_OUTPUT%.*} + +############### Switch GPIOs based on Frequency ######## + +if (( $INT_FREQ_OUTPUT \< 100 )); then + gpio -g write $band_bit0 0; + gpio -g write $band_bit1 0; +elif (( $INT_FREQ_OUTPUT \< 250 )); then + gpio -g write $band_bit0 1; + gpio -g write $band_bit1 0; +elif (( $INT_FREQ_OUTPUT \< 950 )); then + gpio -g write $band_bit0 0; + gpio -g write $band_bit1 1; +elif (( $INT_FREQ_OUTPUT \< 4400 )); then + gpio -g write $band_bit0 1; + gpio -g write $band_bit1 1; +else + gpio -g write $band_bit0 0; + gpio -g write $band_bit1 0; +fi ### End ### -# Revert to a.sh # +# Revert to menu.sh or a.sh # From cb1cfce0933ae2673789cb23050250df2cd2eb42 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sat, 26 Nov 2016 21:39:34 +0000 Subject: [PATCH 09/64] initial laguage selection --- scripts/menu.sh | 15 ++++++++++++++- scripts/rpidatvconfig.txt | 10 ++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/scripts/menu.sh b/scripts/menu.sh index 6512704..097d719 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -4,6 +4,8 @@ PATHSCRIPT=/home/pi/rpidatv/scripts PATHRPI=/home/pi/rpidatv/bin +CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" + set_config_var() { lua - "$1" "$2" "$3" < "$3.bak" @@ -840,7 +842,18 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" do_transmit } -#********************************************* MAIN MENU ************************************************** +#********************************************* MAIN MENU ********************************* +#************************* Execution of Console Menu starts here ************************* + +# Check Language + +LANG=$(get_config_var language $CONFIGFILE) +if [ "$LANG" == "en" ]; then + source $PATHSCRIPT"/langgb.sh" +else + source $PATHSCRIPT"/langfr.sh" +fi + status="0" OnStartup #$PATHRPI"/rpibutton.sh" & diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index fdc30c9..4e9bc06 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -1,9 +1,9 @@ modeinput=PATERNAUDIO -symbolrate=250 -fec=7 -freqoutput=437 +symbolrate=2000 +fec=2 +freqoutput=1255 rfpower=7 -modeoutput=QPSKRF +modeoutput=IQ tsvideofile=/home/pi/rpidatv/video/f4day.ts call=F5OEO paternfile=/home/pi/rpidatv/video @@ -17,3 +17,5 @@ pathmedia=/home/pi/rpidatv/video locator=JNO6EP pidstart=1000 pidaudio=1002 +display=Waveshare +language=en From 74205c7802f92ab2fa231d32f613b30d035fcd68 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sat, 26 Nov 2016 22:19:49 +0000 Subject: [PATCH 10/64] Called ctlfilter in DigiThin mode --- scripts/a.sh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts/a.sh b/scripts/a.sh index 774a60c..5e9f717 100755 --- a/scripts/a.sh +++ b/scripts/a.sh @@ -114,7 +114,9 @@ case "$MODE_OUTPUT" in OUTPUT=videots DIGITHIN_MODE=1 MODE=DIGITHIN - #GAIN=0 + $PATHSCRIPT"/ctlfilter.sh" + $PATHSCRIPT"/ctlvco.sh" + #GAIN=0 ;; DTX1) MODE=PARALLEL @@ -312,8 +314,6 @@ $PATHRPI"/avc2ts" -b $BITRATE_VIDEO -m $BITRATE_TS -x $VIDEO_WIDTH -y $VIDEO_HEI ;; #============================================ ANALOG ============================================================= - - "ANALOGCAM") sudo modprobe -r bcm2835_v4l2 case "$MODE_OUTPUT" in @@ -329,6 +329,7 @@ $PATHRPI"/avc2ts" -b $BITRATE_VIDEO -m $BITRATE_TS -x $VIDEO_WIDTH -y $VIDEO_HEI ;; +#============================================ DESKTOP ============================================================= "DESKTOP") sudo modprobe -r bcm2835_v4l2 case "$MODE_OUTPUT" in @@ -359,11 +360,11 @@ $PATHRPI"/mnc" -l -i eth0 -p $PORT $UDPINADDR > videots & # *********************************** TRANSPORT STREAM INPUT FILE ****************************************** "FILETS") - + case "$MODE_OUTPUT" in "BATC") sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -i $TSVIDEOFILE -y $OUTPUT_BATC & ;; - + *) sudo $PATHRPI"/rpidatv" -i $TSVIDEOFILE -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q &;; esac From 52e495579d1f702f682c2590f49aae1eafc1eb4f Mon Sep 17 00:00:00 2001 From: davecrump Date: Sat, 26 Nov 2016 22:30:52 +0000 Subject: [PATCH 11/64] no change --- scripts/rpidatvconfig.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index fdc30c9..ca63a5a 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -1,9 +1,9 @@ modeinput=PATERNAUDIO -symbolrate=250 +symbolrate=2000 fec=7 freqoutput=437 rfpower=7 -modeoutput=QPSKRF +modeoutput=IQ tsvideofile=/home/pi/rpidatv/video/f4day.ts call=F5OEO paternfile=/home/pi/rpidatv/video From efdf92663856be5266662e38177eee6303065a96 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 27 Nov 2016 12:56:46 +0000 Subject: [PATCH 12/64] Test with menu --- scripts/menu.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/menu.sh b/scripts/menu.sh index 097d719..dfabe07 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -4,7 +4,7 @@ PATHSCRIPT=/home/pi/rpidatv/scripts PATHRPI=/home/pi/rpidatv/bin -CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" +##CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" set_config_var() { @@ -848,11 +848,11 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" # Check Language LANG=$(get_config_var language $CONFIGFILE) -if [ "$LANG" == "en" ]; then - source $PATHSCRIPT"/langgb.sh" -else - source $PATHSCRIPT"/langfr.sh" -fi +##if [ "$LANG" == "en" ]; then +## source $PATHSCRIPT"/langgb.sh" +##else +## source $PATHSCRIPT"/langfr.sh" +##fi status="0" OnStartup From e724aac9a57667ef09092d0509f0b53a3e16737e Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 27 Nov 2016 22:40:41 +0000 Subject: [PATCH 13/64] Completed Language Menu --- scripts/configs/keyfr | 10 +++++ scripts/configs/keygb | 10 +++++ scripts/configs/keyus | 10 +++++ scripts/langfr.sh | 5 +++ scripts/langgb.sh | 9 ++++- scripts/menu.sh | 80 ++++++++++++++++++++++++++++----------- scripts/rpidatvconfig.txt | 2 +- 7 files changed, 100 insertions(+), 26 deletions(-) create mode 100644 scripts/configs/keyfr create mode 100644 scripts/configs/keygb create mode 100644 scripts/configs/keyus diff --git a/scripts/configs/keyfr b/scripts/configs/keyfr new file mode 100644 index 0000000..f4b3425 --- /dev/null +++ b/scripts/configs/keyfr @@ -0,0 +1,10 @@ +# KEYBOARD CONFIGURATION FILE + +# Consult the keyboard(5) manual page. + +XKBMODEL="pc105" +XKBLAYOUT="fr" +XKBVARIANT="" +XKBOPTIONS="" + +BACKSPACE="guess" diff --git a/scripts/configs/keygb b/scripts/configs/keygb new file mode 100644 index 0000000..b6e6925 --- /dev/null +++ b/scripts/configs/keygb @@ -0,0 +1,10 @@ +# KEYBOARD CONFIGURATION FILE + +# Consult the keyboard(5) manual page. + +XKBMODEL="pc105" +XKBLAYOUT="gb" +XKBVARIANT="" +XKBOPTIONS="" + +BACKSPACE="guess" diff --git a/scripts/configs/keyus b/scripts/configs/keyus new file mode 100644 index 0000000..3fecbcc --- /dev/null +++ b/scripts/configs/keyus @@ -0,0 +1,10 @@ +# KEYBOARD CONFIGURATION FILE + +# Consult the keyboard(5) manual page. + +XKBMODEL="pc105" +XKBLAYOUT="us" +XKBVARIANT="" +XKBOPTIONS="" + +BACKSPACE="guess" diff --git a/scripts/langfr.sh b/scripts/langfr.sh index 4d60554..6d40834 100644 --- a/scripts/langfr.sh +++ b/scripts/langfr.sh @@ -101,6 +101,11 @@ DisplaySetupConsole="Network Console" StrIPSetupTitle="Configure en IP Statique" StrIPSetupContext="Exemple: 192.168.1.60" +######## LANGUAGE MENU ######### + +StrLanguageTitle="Configure la Langue" +StrKeyboardChange="Redemarrage apres reglage" + ######## MAIN MENU ######### StrMainMenuTitle="RpiDATV GUI Version 2.0 (F5OEO Evariste)" StrMainMenuSource="Selection de la source" diff --git a/scripts/langgb.sh b/scripts/langgb.sh index c72c4fc..4778c9e 100644 --- a/scripts/langgb.sh +++ b/scripts/langgb.sh @@ -98,10 +98,15 @@ DisplaySetupConsole="Network Console" StrIPSetupTitle="Setup a static IP" StrIPSetupContext="Example: 192.168.1.60" +######## LANGUAGE MENU ######### + +StrLanguageTitle="Language Selection" +StrKeyboardChange="Needs reboot after setting" + ######## MAIN MENU ######### StrMainMenuTitle="RpiDATV GUI Version 2.0 (F5OEO Evariste)" -StrMainMenuSource="Source select" -StrMainMenuOutput="Output select" +StrMainMenuSource="Select Video Source" +StrMainMenuOutput="Configure Output" StrMainMenuCall="Station call setup" StrMainMenuSystem="System setup" StrMainMenuExitTitle="Exit" diff --git a/scripts/menu.sh b/scripts/menu.sh index dfabe07..81e56eb 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -4,8 +4,8 @@ PATHSCRIPT=/home/pi/rpidatv/scripts PATHRPI=/home/pi/rpidatv/bin -##CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" - +CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" +PATHCONFIGS="/home/pi/rpidatv/scripts/configs" ## Path to config files set_config_var() { lua - "$1" "$2" "$3" < "$3.bak" @@ -692,7 +692,7 @@ case "$MODE_STARTUP" in Radio1=ON Radio2=OFF Radio3=OFF - + esac chstartup=$(whiptail --title "$StrAutostartSetupTitle" --radiolist \ @@ -702,8 +702,7 @@ chstartup=$(whiptail --title "$StrAutostartSetupTitle" --radiolist \ "Button" "$AutostartSetupButton" $Radio3 \ 3>&2 2>&1 1>&3) -if [ $? -eq 0 ]; then - +if [ $? -eq 0 ]; then case "$chstartup" in Console) cp $PATHSCRIPT"/install_bashrc" /home/pi/.bashrc >/dev/null 2>/dev/null;; Display) MODE_DISPLAY=$(get_config_var display $CONFIGFILE) @@ -713,9 +712,9 @@ if [ $? -eq 0 ]; then *) cp $PATHSCRIPT"/install_display.fr" /home/pi/.bashrc >/dev/null 2>/dev/null;; esac;; - + Button) cp $PATHSCRIPT"/install_button" /home/pi/.bashrc >/dev/null 2>/dev/null;; - + esac set_config_var startup "$chstartup" $CONFIGFILE fi @@ -770,21 +769,20 @@ chdisplay=$(whiptail --title "$StrDisplaySetupTitle" --radiolist \ ## Set constants for the amendment of /boot/config.txt below -PATHCONFIGS="/home/pi/rpidatv/scripts/configs" ## Path to config files -lead='^## Begin LCD Driver' ## Marker for start of inserted message -tail='^## End LCD Driver' ## Marker for start of inserted message -CHANGEFILE="/boot/config.txt" ## File requiring added message +lead='^## Begin LCD Driver' ## Marker for start of inserted text +tail='^## End LCD Driver' ## Marker for end of inserted text +CHANGEFILE="/boot/config.txt" ## File requiring added text APPENDFILE=$PATHCONFIGS"/lcd_markers.txt" ## File containing both markers TRANSFILE=$PATHCONFIGS"/transfer.txt" ## File used for transfer -if [ $? -eq 0 ]; then ## If the selection has changed +if [ $? -eq 0 ]; then ## If the selection has changed - grep -q "$lead" "$CHANGEFILE" ## Is the first marker already present? + grep -q "$lead" "$CHANGEFILE" ## Is the first marker already present? if [ $? -ne 0 ]; then sudo bash -c 'cat '$APPENDFILE' >> '$CHANGEFILE' ' ## If not append the markers fi - case "$chdisplay" in ## Select the correct driver text + case "$chdisplay" in ## Select the correct driver text Tontec35) INSERTFILE=$PATHCONFIGS"/tontec35.txt" ;; ## Message to be added HDMITouch) INSERTFILE=$PATHCONFIGS"/hdmitouch.txt" ;; @@ -825,9 +823,39 @@ menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 esac } +do_language_setup() +{ +menuchoice=$(whiptail --title "$StrLanguageTitle" --menu "$StrOutputContext" 16 78 6 \ + "1 French Menus" "Menus Francais" \ + "2 English Menus" "Change Menus to English" \ + "3 French Keyboard" "$StrKeyboardChange" \ + "4 UK Keyboard" "$StrKeyboardChange" \ + "5 US Keyboard" "$StrKeyboardChange" \ + 3>&2 2>&1 1>&3) + case "$menuchoice" in + 1\ *) set_config_var menulanguage "fr" $CONFIGFILE ;; + 2\ *) set_config_var menulanguage "en" $CONFIGFILE ;; + 3\ *) sudo cp $PATHCONFIGS"/keyfr" /etc/default/keyboard ;; + 4\ *) sudo cp $PATHCONFIGS"/keygb" /etc/default/keyboard ;; + 5\ *) sudo cp $PATHCONFIGS"/keyus" /etc/default/keyboard ;; + esac + + # Check Language + + MENU_LANG=$(get_config_var menulanguage $CONFIGFILE) + + # Set Language + + if [ "$MENU_LANG" == "en" ]; then + source $PATHSCRIPT"/langgb.sh" + else + source $PATHSCRIPT"/langfr.sh" + fi +} + OnStartup() { - CALL=$(get_config_var call $CONFIGFILE) +CALL=$(get_config_var call $CONFIGFILE) MODE_INPUT=$(get_config_var modeinput $CONFIGFILE) MODE_OUTPUT=$(get_config_var modeoutput $CONFIGFILE) SYMBOLRATEK=$(get_config_var symbolrate $CONFIGFILE) @@ -847,14 +875,18 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" # Check Language -LANG=$(get_config_var language $CONFIGFILE) -##if [ "$LANG" == "en" ]; then -## source $PATHSCRIPT"/langgb.sh" -##else -## source $PATHSCRIPT"/langfr.sh" -##fi +MENU_LANG=$(get_config_var menulanguage $CONFIGFILE) + +# Set Language + +if [ "$MENU_LANG" == "en" ]; then + source $PATHSCRIPT"/langgb.sh" +else + source $PATHSCRIPT"/langfr.sh" +fi status="0" + OnStartup #$PATHRPI"/rpibutton.sh" & sleep 0.2 @@ -878,14 +910,15 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" #do_transmit #do_status #do_display_on -#"1 Transmission" "Demarre la transmission"\ - menuchoice=$(whiptail --title "$StrMainMenuTitle" --menu "$INFO" 16 82 6 \ + + menuchoice=$(whiptail --title "$StrMainMenuTitle" --menu "$INFO" 16 82 8 \ "0 Transmit" "Go to transmit" \ "1 Source" "$StrMainMenuSource" \ "2 Output" "$StrMainMenuOutput" \ "3 Station" "$StrMainMenuCall" \ "4 Receive" "Receive via rtlsdr" \ "5 System" "$StrMainMenuSystem" \ + "6 Language" "Set Language and Keyboard" \ 3>&2 2>&1 1>&3) case "$menuchoice" in @@ -895,6 +928,7 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" 3\ *) do_station_setup ;; 4\ *) do_receive ;; 5\ *) do_system_setup ;; + 6\ *) do_language_setup ;; *) whiptail --title "$StrMainMenuExitTitle" --msgbox "$StrMainMenuExitContext" 8 78 diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index 4e9bc06..9fb63a3 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -18,4 +18,4 @@ locator=JNO6EP pidstart=1000 pidaudio=1002 display=Waveshare -language=en +menulanguage=en From b8213dc17c338358e0bfeef7892c2b0dc38bc074 Mon Sep 17 00:00:00 2001 From: davecrump Date: Wed, 30 Nov 2016 16:10:35 +0000 Subject: [PATCH 14/64] Add language and autostart to menu structure --- scripts/configs/autologin.conf | 3 + scripts/configs/button.bashrc | 112 +++++++++++++++++ scripts/configs/console.bashrc | 121 ++++++++++++++++++ scripts/configs/console_tx.bashrc | 121 ++++++++++++++++++ scripts/configs/display.bashrc | 113 +++++++++++++++++ scripts/configs/displaywaveshare.bashrc | 113 +++++++++++++++++ scripts/configs/prompt.bashrc | 118 +++++++++++++++++ scripts/configs/rpidatvconfig.fr | 21 ++++ scripts/langfr.sh | 14 ++- scripts/langgb.sh | 14 ++- scripts/menu.sh | 161 +++++++++++++++--------- scripts/rpidatvconfig.txt | 8 +- 12 files changed, 850 insertions(+), 69 deletions(-) create mode 100644 scripts/configs/autologin.conf create mode 100644 scripts/configs/button.bashrc create mode 100644 scripts/configs/console.bashrc create mode 100644 scripts/configs/console_tx.bashrc create mode 100644 scripts/configs/display.bashrc create mode 100644 scripts/configs/displaywaveshare.bashrc create mode 100644 scripts/configs/prompt.bashrc create mode 100644 scripts/configs/rpidatvconfig.fr diff --git a/scripts/configs/autologin.conf b/scripts/configs/autologin.conf new file mode 100644 index 0000000..ea5c0ca --- /dev/null +++ b/scripts/configs/autologin.conf @@ -0,0 +1,3 @@ +[Service] +ExecStart= +ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux diff --git a/scripts/configs/button.bashrc b/scripts/configs/button.bashrc new file mode 100644 index 0000000..2aafae4 --- /dev/null +++ b/scripts/configs/button.bashrc @@ -0,0 +1,112 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if [ -f /etc/bash_completion ] && ! shopt -oq posix; then + . /etc/bash_completion +fi + +## Uncomment to enable tidy shutdown by hardware button +## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 +## See https://github.com/philcrump/pi-sdn +## sudo pi-sdn 3 2 & + + + ./rpidatv/scripts/rpibutton.sh + diff --git a/scripts/configs/console.bashrc b/scripts/configs/console.bashrc new file mode 100644 index 0000000..81776b8 --- /dev/null +++ b/scripts/configs/console.bashrc @@ -0,0 +1,121 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w \$\[\033[00m\] ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# colored GCC warnings and errors +#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi +#con2fbmap 1 1 + +## Uncomment to enable tidy shutdown by hardware button +## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 +## See https://github.com/philcrump/pi-sdn +## sudo pi-sdn 3 2 & + +./rpidatv/scripts/menu.sh menu diff --git a/scripts/configs/console_tx.bashrc b/scripts/configs/console_tx.bashrc new file mode 100644 index 0000000..02d3fbd --- /dev/null +++ b/scripts/configs/console_tx.bashrc @@ -0,0 +1,121 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w \$\[\033[00m\] ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# colored GCC warnings and errors +#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi +#con2fbmap 1 1 + +## Uncomment to enable tidy shutdown by hardware button +## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 +## See https://github.com/philcrump/pi-sdn +## sudo pi-sdn 3 2 & + +./rpidatv/scripts/menu.sh diff --git a/scripts/configs/display.bashrc b/scripts/configs/display.bashrc new file mode 100644 index 0000000..f65e158 --- /dev/null +++ b/scripts/configs/display.bashrc @@ -0,0 +1,113 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if [ -f /etc/bash_completion ] && ! shopt -oq posix; then + . /etc/bash_completion +fi + +## Uncomment to enable tidy shutdown by hardware button +## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 +## See https://github.com/philcrump/pi-sdn +## sudo pi-sdn 3 2 & + +sudo killall fbcp +fbcp & + ./rpidatv/bin/rpidatvgui + diff --git a/scripts/configs/displaywaveshare.bashrc b/scripts/configs/displaywaveshare.bashrc new file mode 100644 index 0000000..d50ef51 --- /dev/null +++ b/scripts/configs/displaywaveshare.bashrc @@ -0,0 +1,113 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if [ -f /etc/bash_completion ] && ! shopt -oq posix; then + . /etc/bash_completion +fi + +## Uncomment to enable tidy shutdown by hardware button +## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 +## See https://github.com/philcrump/pi-sdn +## sudo pi-sdn 3 2 & + +sudo killall fbcp +fbcp & + ./rpidatv/bin/rpidatvgui 1 + diff --git a/scripts/configs/prompt.bashrc b/scripts/configs/prompt.bashrc new file mode 100644 index 0000000..b2dddad --- /dev/null +++ b/scripts/configs/prompt.bashrc @@ -0,0 +1,118 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w \$\[\033[00m\] ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# colored GCC warnings and errors +#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi + +## Uncomment to enable tidy shutdown by hardware button +## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 +## See https://github.com/philcrump/pi-sdn +## sudo pi-sdn 3 2 & diff --git a/scripts/configs/rpidatvconfig.fr b/scripts/configs/rpidatvconfig.fr new file mode 100644 index 0000000..09fb9fb --- /dev/null +++ b/scripts/configs/rpidatvconfig.fr @@ -0,0 +1,21 @@ +modeinput=PATERNAUDIO +symbolrate=250 +fec=7 +freqoutput=437 +rfpower=7 +modeoutput=QPSKRF +tsvideofile=/home/pi/rpidatv/video/f4day.ts +call=F5OEO +paternfile=/home/pi/rpidatv/video +udpinaddr=230.0.0.2 +pidvideo=1001 +pidpmt=1000 +serviceid=1 +gpio_i=12 +gpio_q=13 +pathmedia=/home/pi/rpidatv/video +locator=JNO6EP +pidstart=1000 +pidaudio=1002 +display=Waveshare +menulanguage=fr diff --git a/scripts/langfr.sh b/scripts/langfr.sh index 6d40834..15f33dc 100644 --- a/scripts/langfr.sh +++ b/scripts/langfr.sh @@ -85,11 +85,19 @@ StrAutostartMenu="Démarrage automatique" StrDisplayMenu="Ecran" StrIPMenu="Adresse IP" +######## AUTOSTART MENU ######### + StrAutostartSetupTitle="Configure le démarrage" StrAutostartSetupContext="Choix:" -AutostartSetupConsole="Menu console(ce menu)" -AutostartSetupDisplay="Graphique(avec ecran tactile)" -AutostartSetupButton="Boutons poussoires" +AutostartSetupPrompt="Log-on to Linux Command Prompt" +AutostartSetupConsole="Log-on to rpidatv Menu" +AutostartSetupDisplay="Log-on to start Graphique(avec ecran tactile)" +AutostartSetupButton="Log-on to enable Boutons poussoires" +AutostartSetupTX_boot="Boot-up to Transmit" +AutostartSetupDisplay_boot="Boot-up to Graphique(avec ecran tactile)" +AutostartSetupButton_boot="Boot-up to Boutons poussoires" + +######## TOUCHSCREEN MENU ######### StrDisplaySetupTitle="Configure un ecran tactile - apres reboot" StrDisplaySetupContext="Choix:" diff --git a/scripts/langgb.sh b/scripts/langgb.sh index 4778c9e..c93c567 100644 --- a/scripts/langgb.sh +++ b/scripts/langgb.sh @@ -82,11 +82,19 @@ StrAutostartMenu="Automatic startup" StrDisplayMenu="Display type" StrIPMenu="IP Address" +######## AUTOSTART MENU ######### + StrAutostartSetupTitle="Autostart setup" StrAutostartSetupContext="Choice:" -AutostartSetupConsole="Console menu" -AutostartSetupDisplay="Display with touchscreen" -AutostartSetupButton="Push buttons" +AutostartSetupPrompt="Log-on to Linux Command Prompt" +AutostartSetupConsole="Log-on to rpidatv Menu" +AutostartSetupDisplay="Log-on to start Touchscreen Display" +AutostartSetupButton="Log-on to enable Button Control" +AutostartSetupTX_boot="Boot-up to Transmit" +AutostartSetupDisplay_boot="Boot-up to Touchscreen Display" +AutostartSetupButton_boot="Boot-up to Button Control" + +######## TOUCHSCREEN MENU ######### StrDisplaySetupTitle="Touchscreen setup - needs reboot after setting" StrDisplaySetupContext="Choice:" diff --git a/scripts/menu.sh b/scripts/menu.sh index 81e56eb..e9c2153 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -602,10 +602,9 @@ menuchoice=$(whiptail --title "$StrOutputTitle" --menu "$StrOutputContext" 16 78 do_transmit() { - $PATHSCRIPT"/a.sh" >/dev/null 2>/dev/null & - #$PATHSCRIPT"/a.sh" & - do_status - do_stop_transmit + $PATHSCRIPT"/a.sh" >/dev/null 2>/dev/null & + do_status # Wait here transmitting until user presses a key + do_stop_transmit } do_stop_transmit() @@ -644,8 +643,6 @@ do_receive_status() whiptail --title "RECEIVE" --msgbox "$INFO" 8 78 sudo killall rpidatvgui >/dev/null 2>/dev/null sudo killall leandvb >/dev/null 2>/dev/null - - } do_receive() @@ -666,58 +663,101 @@ do_receive() /home/pi/rpidatv/bin/rpidatvgui 0 1 >/dev/null 2>/dev/null & do_receive_status;; esac - } do_autostart_setup() { -MODE_STARTUP=$(get_config_var startup $CONFIGFILE) -case "$MODE_STARTUP" in - Console) - Radio1=ON - Radio2=OFF - Radio3=OFF - ;; - Display) - Radio1=OFF - Radio2=ON - Radio3=OFF - ;; - Button) - Radio1=OFF - Radio2=OFF - Radio3=ON - ;; - *) - Radio1=ON - Radio2=OFF - Radio3=OFF - -esac - -chstartup=$(whiptail --title "$StrAutostartSetupTitle" --radiolist \ - "$StrAutostartSetupContext" 20 78 8 \ - "Console" "$AutostartSetupConsole" $Radio1 \ - "Display" "$AutostartSetupDisplay" $Radio2 \ - "Button" "$AutostartSetupButton" $Radio3 \ - 3>&2 2>&1 1>&3) - -if [ $? -eq 0 ]; then - case "$chstartup" in - Console) cp $PATHSCRIPT"/install_bashrc" /home/pi/.bashrc >/dev/null 2>/dev/null;; - Display) MODE_DISPLAY=$(get_config_var display $CONFIGFILE) - case "$MODE_DISPLAY" in - Waveshare) - cp $PATHSCRIPT"/install_display_inversed.fr" /home/pi/.bashrc >/dev/null 2>/dev/null;; - *) - cp $PATHSCRIPT"/install_display.fr" /home/pi/.bashrc >/dev/null 2>/dev/null;; - esac;; - - Button) cp $PATHSCRIPT"/install_button" /home/pi/.bashrc >/dev/null 2>/dev/null;; - - esac - set_config_var startup "$chstartup" $CONFIGFILE -fi + MODE_STARTUP=$(get_config_var startup $CONFIGFILE) + + Radio1=OFF + Radio2=OFF + Radio3=OFF + Radio4=OFF + Radio5=OFF + Radio6=OFF + Radio7=OFF + + case "$MODE_STARTUP" in + Prompt) + Radio1=ON;; + Console) + Radio2=ON;; + Display) + Radio3=ON;; + Button) + Radio4=ON;; + TX_boot) + Radio5=ON;; + Display_boot) + Radio6=ON;; + Button_boot) + Radio7=ON;; + *) + Radio1=ON;; + esac + + chstartup=$(whiptail --title "$StrAutostartSetupTitle" --radiolist \ + "$StrAutostartSetupContext" 20 78 8 \ + "Prompt" "$AutostartSetupPrompt" $Radio1 \ + "Console" "$AutostartSetupConsole" $Radio2 \ + "Display" "$AutostartSetupDisplay" $Radio3 \ + "Button" "$AutostartSetupButton" $Radio4 \ + "TX_boot" "$AutostartSetupTX_boot" $Radio5 \ + "Display_boot" "$AutostartSetupDisplay_boot" $Radio6 \ + "Button_boot" "$AutostartSetupButton_boot" $Radio7 \ + 3>&2 2>&1 1>&3) + + if [ $? -eq 0 ]; then + case "$chstartup" in + Prompt) + sudo systemctl disable getty@tty1.service + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + cp $PATHCONFIGS"/prompt.bashrc" /home/pi/.bashrc;; + Console) + sudo systemctl disable getty@tty1.service + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + cp $PATHCONFIGS"/console.bashrc" /home/pi/.bashrc;; + + ##$PATHSCRIPT"/install_bashrc" /home/pi/.bashrc >/dev/null 2>/dev/null;; + + Display) + sudo systemctl disable getty@tty1.service + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + MODE_DISPLAY=$(get_config_var display $CONFIGFILE) + case "$MODE_DISPLAY" in + Waveshare) + cp $PATHCONFIGS"/displaywaveshare.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + *) + cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + esac;; + Button) + sudo systemctl disable getty@tty1.service + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + cp $PATHCONFIGS"/button.bashrc" /home/pi/.bashrc;; + TX_boot) + sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ + sudo cp $PATHCONFIGS"/autologin.conf" /etc/systemd/system/getty@tty1.service.d/ + sudo systemctl enable getty@tty1.service + cp $PATHCONFIGS"/console_tx.bashrc" /home/pi/.bashrc;; + Display_boot) + sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ + sudo cp $PATHCONFIGS"/autologin.conf" /etc/systemd/system/getty@tty1.service.d/ + sudo systemctl enable getty@tty1.service + MODE_DISPLAY=$(get_config_var display $CONFIGFILE) + case "$MODE_DISPLAY" in + Waveshare) + cp $PATHCONFIGS"/displaywaveshare.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + *) + cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + esac;; + Button_boot) + sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ + sudo cp $PATHCONFIGS"/autologin.conf" /etc/systemd/system/getty@tty1.service.d/ + sudo systemctl enable getty@tty1.service + cp $PATHCONFIGS"/button.bashrc" /home/pi/.bashrc;; + esac + set_config_var startup "$chstartup" $CONFIGFILE + fi } do_display_setup() @@ -769,6 +809,7 @@ chdisplay=$(whiptail --title "$StrDisplaySetupTitle" --radiolist \ ## Set constants for the amendment of /boot/config.txt below +PATHCONFIGS="/home/pi/rpidatv/scripts/configs" ## Path to config files lead='^## Begin LCD Driver' ## Marker for start of inserted text tail='^## End LCD Driver' ## Marker for end of inserted text CHANGEFILE="/boot/config.txt" ## File requiring added text @@ -794,7 +835,7 @@ if [ $? -eq 0 ]; then ## If the selection has changed ## Replace whatever is between the markers with the driver text sed -e "/$lead/,/$tail/{ /$lead/{p; r $INSERTFILE - }; /$tail/p; d }" $CHANGEFILE >> $TRANSFILE + }; /$tail/p; d }" $CHANGEFILE >> $TRANSFILE sudo cp "$TRANSFILE" "$CHANGEFILE" ## Copy from the transfer file rm $TRANSFILE ## Delete the transfer file @@ -880,15 +921,17 @@ MENU_LANG=$(get_config_var menulanguage $CONFIGFILE) # Set Language if [ "$MENU_LANG" == "en" ]; then - source $PATHSCRIPT"/langgb.sh" + source $PATHSCRIPT"/langgb.sh" else - source $PATHSCRIPT"/langfr.sh" + source $PATHSCRIPT"/langfr.sh" fi status="0" -OnStartup -#$PATHRPI"/rpibutton.sh" & +if [ "$1" != "menu" ]; then # if tx on boot + OnStartup # go straight to transmit +fi + sleep 0.2 while [ "$status" -eq 0 ] diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index 9fb63a3..379695c 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -1,9 +1,9 @@ modeinput=PATERNAUDIO -symbolrate=2000 -fec=2 -freqoutput=1255 +symbolrate=250 +fec=7 +freqoutput=437 rfpower=7 -modeoutput=IQ +modeoutput=QPSKRF tsvideofile=/home/pi/rpidatv/video/f4day.ts call=F5OEO paternfile=/home/pi/rpidatv/video From 800794fa9249ac85e706c482841b130422c43ba9 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 4 Dec 2016 17:47:47 +0000 Subject: [PATCH 15/64] Add filter switching for 4MS SR --- scripts/ctlfilter.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/scripts/ctlfilter.sh b/scripts/ctlfilter.sh index 0925fe2..7a14231 100755 --- a/scripts/ctlfilter.sh +++ b/scripts/ctlfilter.sh @@ -2,7 +2,7 @@ # Called by a.sh in IQ mode to switch in correct # Nyquist Filter and band switching -# Written by Dave G8GKQ 26 Nov 16 +# Written by Dave G8GKQ 26 Nov 16 and 4 Dec 16 # SR Outputs: @@ -11,7 +11,8 @@ # <360 010 # <550 011 # <1100 100 -# >=1100 101 +# <2200 101 +# >=2200 110 # Band Outputs: @@ -94,10 +95,14 @@ elif (( $SYMBOLRATEK \< 1100 )); then gpio -g write $filter_bit0 0; gpio -g write $filter_bit1 0; gpio -g write $filter_bit2 1; -else +elif (( $SYMBOLRATEK \< 2200 )); then gpio -g write $filter_bit0 1; gpio -g write $filter_bit1 0; gpio -g write $filter_bit2 1; +else + gpio -g write $filter_bit0 0; + gpio -g write $filter_bit1 1; + gpio -g write $filter_bit2 1; fi ############### Read Frequency ######################### From 8be885c8818dd13e7f76fa6a4d63e3cccaeda581 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 4 Dec 2016 18:10:09 +0000 Subject: [PATCH 16/64] Removed disgnostics from adf4351.c --- bin/adf4351 | Bin 26016 -> 25656 bytes src/adf4351/adf4351 | Bin 26016 -> 25656 bytes src/adf4351/adf4351.c | 11 ++++------- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/bin/adf4351 b/bin/adf4351 index 5a6b04ccb0528c852f514546baf954ef01bac5a5..9b04f4b977ed16567dadf559ac3c4352a9c07b66 100755 GIT binary patch delta 11098 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ͼvyIOX7_z`biA%NG+@Q679I)a-B_aNeJqjQjH^02*+{T2uU=1LwX;;f{C- zg!GAd6}Wd{)8L!Hy+Q{+0`4WpyK=NWuG>OOk~L(JjE&V(v@H$J{I6ymc7M zXFE{14+O820(cBKV+1Z14L%LrbC6U1+-dUv4V*7~xCHF52RIY&-6{RQrO9)K{0JAk zhtsyTv-17he*WDjeYg+i&yI%}Wbi{!hq?n8LyXd`sz5NET4F^hT)Qrzwx>aURE zzF8Hc{Q-01CZEzfVrtynGLu&ZuA-{}^4RZ=se1tOhS(ERzXHfR1oy^=0NsC%Dtlg8 zh*!dX%u0hAF)toqaFDBJ%^T$X+3%KlmHe~c7Bo*3syETRU#R{uuQE`AKWbI0iq=7a zNeLm=sfz%;KU|1Esl}~>e0%HFgRPZ;C8Gqg;}=1AWt{q~wbJ*%B$YkC(s#y%YSjG7 gjLykeWyDbx80O9D+WGwp8gMJyZlnepFEY3M4>Bb1M*si- delta 11568 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 diff --git a/src/adf4351/adf4351 b/src/adf4351/adf4351 index 5a6b04ccb0528c852f514546baf954ef01bac5a5..9b04f4b977ed16567dadf559ac3c4352a9c07b66 100755 GIT binary patch delta 11098 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ͼvyIOX7_z`biA%NG+@Q679I)a-B_aNeJqjQjH^02*+{T2uU=1LwX;;f{C- zg!GAd6}Wd{)8L!Hy+Q{+0`4WpyK=NWuG>OOk~L(JjE&V(v@H$J{I6ymc7M zXFE{14+O820(cBKV+1Z14L%LrbC6U1+-dUv4V*7~xCHF52RIY&-6{RQrO9)K{0JAk zhtsyTv-17he*WDjeYg+i&yI%}Wbi{!hq?n8LyXd`sz5NET4F^hT)Qrzwx>aURE zzF8Hc{Q-01CZEzfVrtynGLu&ZuA-{}^4RZ=se1tOhS(ERzXHfR1oy^=0NsC%Dtlg8 zh*!dX%u0hAF)toqaFDBJ%^T$X+3%KlmHe~c7Bo*3syETRU#R{uuQE`AKWbI0iq=7a zNeLm=sfz%;KU|1Esl}~>e0%HFgRPZ;C8Gqg;}=1AWt{q~wbJ*%B$YkC(s#y%YSjG7 gjLykeWyDbx80O9D+WGwp8gMJyZlnepFEY3M4>Bb1M*si- delta 11568 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 diff --git a/src/adf4351/adf4351.c b/src/adf4351/adf4351.c index 537eee8..a38c0c5 100644 --- a/src/adf4351/adf4351.c +++ b/src/adf4351/adf4351.c @@ -166,11 +166,6 @@ int32_t adf4350_write(uint32_t data) uint8_t CLK_4351_GPIO = 21; uint8_t DATA_4351_GPIO = 22; - // Kick wiringPi into action. Essential! - - //if (wiringPiSetup () == -1) - //printf("Wiring Pi not set up "); - // Set all nominated pins to outputs pinMode(LE_4351_GPIO, OUTPUT); @@ -187,7 +182,8 @@ int32_t adf4350_write(uint32_t data) digitalWrite(LE_4351_GPIO, LOW); - printf(" ADF4351 Register (one of the five) Updated\n"); + // printf(" ADF4351 Register (one of the five) Updated\n"); + // Initialise loop uint16_t i; @@ -506,7 +502,8 @@ int32_t adf4350_setup(uint32_t spi_device_id, uint8_t slave_select, adf4350_out_altvoltage0_frequency_resolution(st->pdata->channel_spacing); adf4350_out_altvoltage0_frequency(st->pdata->power_up_frequency); - printf("ADF4350 successfully initialized.\n"); + // printf("ADF4350 successfully initialized.\n"); + /*int i; for(i=0;i<6;i++) printf("RegHw%d %x\n",i,st->regs[i]); From bf8fd00428ab6f0149dd79745adf72834653a936 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 4 Dec 2016 18:24:19 +0000 Subject: [PATCH 17/64] Added analog vid source to rpidatvconfig.txt --- scripts/rpidatvconfig.txt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index 295130a..5888912 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -1,21 +1,22 @@ -modeinput=PATERNAUDIO +modeinput=CAMH264 symbolrate=2000 fec=7 freqoutput=437 rfpower=7 modeoutput=IQ tsvideofile=/home/pi/rpidatv/video/f4day.ts -call=F5OEO +call=BATC paternfile=/home/pi/rpidatv/video udpinaddr=230.0.0.2 -pidvideo=1001 -pidpmt=1000 +pidvideo=256 +pidpmt=255 serviceid=1 gpio_i=12 gpio_q=13 pathmedia=/home/pi/rpidatv/video locator=JNO6EP -pidstart=1000 -pidaudio=1002 +pidstart=255 +pidaudio=257 display=Waveshare menulanguage=en +analogcamname=/dev/video0 From 217486330bf4faa030ab1621910a3d7655589a34 Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 6 Dec 2016 12:08:30 +0000 Subject: [PATCH 18/64] Impemented Wifi switching --- scripts/configs/button.bashrc | 16 +++- scripts/configs/console.bashrc | 15 +++- scripts/configs/console_tx.bashrc | 16 +++- scripts/configs/display.bashrc | 15 +++- scripts/configs/displaywaveshare.bashrc | 15 +++- scripts/configs/prompt.bashrc | 16 +++- scripts/configs/text.wifi_off | 6 ++ scripts/configs/wpa_markers.txt | 4 + scripts/configs/wpa_text.txt | 4 + scripts/menu.sh | 66 +++++++++++--- scripts/rpidatvconfig.txt | 1 + scripts/wifisetup.sh | 111 ++++++++++++++++++++++++ 12 files changed, 261 insertions(+), 24 deletions(-) mode change 100644 => 100755 scripts/configs/button.bashrc mode change 100644 => 100755 scripts/configs/console.bashrc mode change 100644 => 100755 scripts/configs/console_tx.bashrc mode change 100644 => 100755 scripts/configs/display.bashrc mode change 100644 => 100755 scripts/configs/displaywaveshare.bashrc mode change 100644 => 100755 scripts/configs/prompt.bashrc create mode 100755 scripts/configs/text.wifi_off create mode 100644 scripts/configs/wpa_markers.txt create mode 100644 scripts/configs/wpa_text.txt create mode 100755 scripts/wifisetup.sh diff --git a/scripts/configs/button.bashrc b/scripts/configs/button.bashrc old mode 100644 new mode 100755 index 2aafae4..2488b25 --- a/scripts/configs/button.bashrc +++ b/scripts/configs/button.bashrc @@ -102,11 +102,21 @@ if [ -f /etc/bash_completion ] && ! shopt -oq posix; then . /etc/bash_completion fi -## Uncomment to enable tidy shutdown by hardware button +## Tidy shutdown by hardware button ## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 ## See https://github.com/philcrump/pi-sdn -## sudo pi-sdn 3 2 & +## Calls .pi-sdn if present and runs "sudo pi-sdn 3 2 &" +if [ -f ~/.pi-sdn ]; then + . ~/.pi-sdn +fi + +## Facility to Disable WiFi +## Calls .wifi_off if present and runs "sudo ifconfig wlan0 down" + +if [ -f ~/.wifi_off ]; then + . ~/.wifi_off +fi - ./rpidatv/scripts/rpibutton.sh +./rpidatv/scripts/rpibutton.sh diff --git a/scripts/configs/console.bashrc b/scripts/configs/console.bashrc old mode 100644 new mode 100755 index 81776b8..602ec8b --- a/scripts/configs/console.bashrc +++ b/scripts/configs/console.bashrc @@ -113,9 +113,20 @@ if ! shopt -oq posix; then fi #con2fbmap 1 1 -## Uncomment to enable tidy shutdown by hardware button +## Tidy shutdown by hardware button ## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 ## See https://github.com/philcrump/pi-sdn -## sudo pi-sdn 3 2 & +## Calls .pi-sdn if present and runs "sudo pi-sdn 3 2 &" + +if [ -f ~/.pi-sdn ]; then + . ~/.pi-sdn +fi + +## Facility to Disable WiFi +## Calls .wifi_off if present and runs "sudo ifconfig wlan0 down" + +if [ -f ~/.wifi_off ]; then + . ~/.wifi_off +fi ./rpidatv/scripts/menu.sh menu diff --git a/scripts/configs/console_tx.bashrc b/scripts/configs/console_tx.bashrc old mode 100644 new mode 100755 index 02d3fbd..0aa2729 --- a/scripts/configs/console_tx.bashrc +++ b/scripts/configs/console_tx.bashrc @@ -113,9 +113,21 @@ if ! shopt -oq posix; then fi #con2fbmap 1 1 -## Uncomment to enable tidy shutdown by hardware button +## Tidy shutdown by hardware button ## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 ## See https://github.com/philcrump/pi-sdn -## sudo pi-sdn 3 2 & +## Calls .pi-sdn if present and runs "sudo pi-sdn 3 2 &" + +if [ -f ~/.pi-sdn ]; then + . ~/.pi-sdn +fi + +## Facility to Disable WiFi +## Calls .wifi_off if present and runs "sudo ifconfig wlan0 down" + +if [ -f ~/.wifi_off ]; then + . ~/.wifi_off +fi + ./rpidatv/scripts/menu.sh diff --git a/scripts/configs/display.bashrc b/scripts/configs/display.bashrc old mode 100644 new mode 100755 index f65e158..33c53b8 --- a/scripts/configs/display.bashrc +++ b/scripts/configs/display.bashrc @@ -102,10 +102,21 @@ if [ -f /etc/bash_completion ] && ! shopt -oq posix; then . /etc/bash_completion fi -## Uncomment to enable tidy shutdown by hardware button +## Tidy shutdown by hardware button ## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 ## See https://github.com/philcrump/pi-sdn -## sudo pi-sdn 3 2 & +## Calls .pi-sdn if present and runs "sudo pi-sdn 3 2 &" + +if [ -f ~/.pi-sdn ]; then + . ~/.pi-sdn +fi + +## Facility to Disable WiFi +## Calls .wifi_off if present and runs "sudo ifconfig wlan0 down" + +if [ -f ~/.wifi_off ]; then + . ~/.wifi_off +fi sudo killall fbcp fbcp & diff --git a/scripts/configs/displaywaveshare.bashrc b/scripts/configs/displaywaveshare.bashrc old mode 100644 new mode 100755 index d50ef51..7859bd6 --- a/scripts/configs/displaywaveshare.bashrc +++ b/scripts/configs/displaywaveshare.bashrc @@ -102,10 +102,21 @@ if [ -f /etc/bash_completion ] && ! shopt -oq posix; then . /etc/bash_completion fi -## Uncomment to enable tidy shutdown by hardware button +## Tidy shutdown by hardware button ## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 ## See https://github.com/philcrump/pi-sdn -## sudo pi-sdn 3 2 & +## Calls .pi-sdn if present and runs "sudo pi-sdn 3 2 &" + +if [ -f ~/.pi-sdn ]; then + . ~/.pi-sdn +fi + +## Facility to Disable WiFi +## Calls .wifi_off if present and runs "sudo ifconfig wlan0 down" + +if [ -f ~/.wifi_off ]; then + . ~/.wifi_off +fi sudo killall fbcp fbcp & diff --git a/scripts/configs/prompt.bashrc b/scripts/configs/prompt.bashrc old mode 100644 new mode 100755 index b2dddad..0acb62b --- a/scripts/configs/prompt.bashrc +++ b/scripts/configs/prompt.bashrc @@ -112,7 +112,19 @@ if ! shopt -oq posix; then fi fi -## Uncomment to enable tidy shutdown by hardware button +## Tidy shutdown by hardware button ## Button to 3.3v on physical pin 15. LED to indicate still running on pin 13 ## See https://github.com/philcrump/pi-sdn -## sudo pi-sdn 3 2 & +## Calls .pi-sdn if present and runs "sudo pi-sdn 3 2 &" + +if [ -f ~/.pi-sdn ]; then + . ~/.pi-sdn +fi + +## Facility to Disable WiFi +## Calls .wifi_off if present and runs "sudo ifconfig wlan0 down" + +if [ -f ~/.wifi_off ]; then + . ~/.wifi_off +fi + diff --git a/scripts/configs/text.wifi_off b/scripts/configs/text.wifi_off new file mode 100755 index 0000000..d480574 --- /dev/null +++ b/scripts/configs/text.wifi_off @@ -0,0 +1,6 @@ +## called by .bashrc at log-on to diable wifi +## If this file is not in ~, then wifi is allowed to start + +sudo ifconfig wlan0 down + +## Only way to restart wifi is to reboot diff --git a/scripts/configs/wpa_markers.txt b/scripts/configs/wpa_markers.txt new file mode 100644 index 0000000..258460e --- /dev/null +++ b/scripts/configs/wpa_markers.txt @@ -0,0 +1,4 @@ + +##STARTNW +## No network loaded +##ENDNW diff --git a/scripts/configs/wpa_text.txt b/scripts/configs/wpa_text.txt new file mode 100644 index 0000000..28dd283 --- /dev/null +++ b/scripts/configs/wpa_text.txt @@ -0,0 +1,4 @@ +network={ + ssid="PixienetG" + psk=b7a2fc71b648e214d337ca533c8c506167fc8f463477c50df379067cc3341912 +} diff --git a/scripts/menu.sh b/scripts/menu.sh index e9c2153..cdb516a 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -578,7 +578,7 @@ do_freq_setup() FREQ_OUTPUT=$(get_config_var freqoutput $CONFIGFILE) FREQ=$(whiptail --inputbox "$StrOutputRFFreqContext" 8 78 $FREQ_OUTPUT --title "$StrOutputRFFreqTitle" 3>&1 1>&2 2>&3) if [ $? -eq 0 ]; then - set_config_var freqoutput "$FREQ" $CONFIGFILE + set_config_var freqoutput "$FREQ" $CONFIGFILE fi } @@ -850,18 +850,62 @@ CURRENTIP=$(ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '( whiptail --title "IP" --msgbox "$CURRENTIP" 8 78 } +do_WiFi_setup() +{ +$PATHSCRIPT"/wifisetup.sh" +} + +do_WiFi_Off() +{ +sudo ifconfig wlan0 down ## Disable it now +cp $PATHCONFIGS"/text.wifi_off" /home/pi/.wifi_off ## Disable at start-up +} + +do_Enable_DigiThin() +{ +exit +} + +do_Exit() +{ +exit +} + +do_Reboot() +{ +sudo reboot now +} + +do_Shutdown() +{ +sudo shutdown now +} + + do_system_setup() { -menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 5 \ - "1 Autostart" "$StrAutostartMenu" \ - "2 Display" "$StrDisplayMenu" \ - "3 IP" "$StrIPMenu" \ - 3>&2 2>&1 1>&3) - case "$menuchoice" in - 1\ *) do_autostart_setup ;; - 2\ *) do_display_setup ;; - 3\ *) do_IP_setup ;; - esac +menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 9 \ + "1 Autostart" "$StrAutostartMenu" \ + "2 Display" "$StrDisplayMenu" \ + "3 IP" "$StrIPMenu" \ + "4 WiFi Set-up" "SSID and password" \ + "5 WiFi Off" "Turn the WiFi Off" \ + "6 Enable DigiThin" "Not Implemented Yet" \ + "7 Exit Menu" "Go to Command Line" \ + "8 Reboot" "Reboot the Raspberry Pi" \ + "9 ShutDown" "Shutdown for Safe Power Off" \ + 3>&2 2>&1 1>&3) + case "$menuchoice" in + 1\ *) do_autostart_setup ;; + 2\ *) do_display_setup ;; + 3\ *) do_IP_setup ;; + 4\ *) do_WiFi_setup ;; + 5\ *) do_WiFi_Off ;; + 6\ *) do_Enable_DigiThin ;; + 7\ *) do_Exit ;; + 8\ *) do_Reboot ;; + 9\ *) do_Shutdown ;; + esac } do_language_setup() diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index 5888912..4f7ba0d 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -20,3 +20,4 @@ pidaudio=257 display=Waveshare menulanguage=en analogcamname=/dev/video0 +startup=Prompt diff --git a/scripts/wifisetup.sh b/scripts/wifisetup.sh new file mode 100755 index 0000000..74009e8 --- /dev/null +++ b/scripts/wifisetup.sh @@ -0,0 +1,111 @@ +#!/bin/bash + +# Script used to set up WiFi from rpidatv menu + +reset # Clear the screen + +# Check that wifi has not been disabled + +if [ -f ~/.wifi_off ]; then + printf "WiFi was disabled at start-up.\n" + printf "You cannot set up the WiFi until it is re-enabled.\n" + printf "Do you want to re-enable it and reboot imediately?\n" + read -n 1 + printf "\n" + if [ "$REPLY" = "Y" ]; then + echo "rebooting" + rm ~/.wifi_off + sudo reboot now + else + if [ "$REPLY" = "y" ]; then + echo "rebooting" + rm ~/.wifi_off + sudo reboot now + else + exit + fi + fi +fi + +## Wifi is enabled so +## List the available networks + +printf "The following networks are available:\n" +printf "\n" +sudo iwlist wlan0 scan | grep 'ESSID' +printf "\n" +printf "Type the SSID of the network that you want to connect to (without qoutes) and press enter\n" +printf "\n" + +read SSID + +printf "\n" +printf "Type the network password and press enter\n" +printf "Characters will not be displayed\n" +printf "\n" + +stty -echo + +read PW + +stty echo +printf "\nWorking....\n\n" +stty -echo + +PSK_TEXT=$(wpa_passphrase "$SSID" "$PW" | grep 'psk=' | grep -v '#psk') + +PATHCONFIGS="/home/pi/rpidatv/scripts/configs" ## Path to config files + +## Build text for supplicant file + +rm $PATHCONFIGS"/wpa_text.txt" + +echo -e "network={" >> $PATHCONFIGS"/wpa_text.txt" +echo -e " ssid="\"""$SSID"\"" >> $PATHCONFIGS"/wpa_text.txt" +echo -e " "$PSK_TEXT >> $PATHCONFIGS"/wpa_text.txt" +echo -e "}" >> $PATHCONFIGS"/wpa_text.txt" + +## Copy the existing wpa_supplicant file to work on + +sudo cp /etc/wpa_supplicant/wpa_supplicant.conf $PATHCONFIGS"/wpa_supcopy.txt" +sudo chown pi:pi $PATHCONFIGS"/wpa_supcopy.txt" + +## Define the parameters for the replace script + +lead='^##STARTNW' ## Marker for start of inserted text +tail='^##ENDNW' ## Marker for end of inserted text +CHANGEFILE=$PATHCONFIGS"/wpa_supcopy.txt" ## File requiring added text +APPENDFILE=$PATHCONFIGS"/wpa_markers.txt" ## File containing both markers +TRANSFILE=$PATHCONFIGS"/transfer.txt" ## File used for transfer +INSERTFILE=$PATHCONFIGS"/wpa_text.txt" ## File to be included + +grep -q "$lead" "$CHANGEFILE" ## Is the first marker already present? +if [ $? -ne 0 ]; then + sudo bash -c 'cat '$APPENDFILE' >> '$CHANGEFILE' ' ## If not append the markers +fi + +## Replace whatever is between the markers with the insert text + +sed -e "/$lead/,/$tail/{ /$lead/{p; r $INSERTFILE + }; /$tail/p; d }" $CHANGEFILE >> $TRANSFILE + +sudo cp "$TRANSFILE" "$CHANGEFILE" ## Copy from the transfer file +rm $TRANSFILE ## Delete the transfer file + +## Give the file root ownership and copy it back over the original + +sudo chown root:root $PATHCONFIGS"/wpa_supcopy.txt" +sudo cp $PATHCONFIGS"/wpa_supcopy.txt" /etc/wpa_supplicant/wpa_supplicant.conf +sudo rm $PATHCONFIGS"/wpa_supcopy.txt" + +stty echo + +##bring wifi down and up again + +sudo ifdown wlan0 +sudo ifup wlan0 + +printf "WiFi Configured\n" +sleep 1 + +exit From 460b4dae62a51c31b9add524d9ef15ccf920653f Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 6 Dec 2016 20:16:53 +0000 Subject: [PATCH 19/64] Add Shutdown Menu and Wifi Corrections --- scripts/configs/text.pi-sdn | 8 +++ scripts/menu.sh | 105 ++++++++++++++++++++++++++---------- scripts/rpidatvconfig.txt | 6 +-- scripts/wifisetup.sh | 34 ++++++++---- 4 files changed, 112 insertions(+), 41 deletions(-) create mode 100755 scripts/configs/text.pi-sdn diff --git a/scripts/configs/text.pi-sdn b/scripts/configs/text.pi-sdn new file mode 100755 index 0000000..b09dd02 --- /dev/null +++ b/scripts/configs/text.pi-sdn @@ -0,0 +1,8 @@ +## called by .bashrc at log-on to enable hardware button shutdown +## If this file is in ~, then hardware button shutdown is enabled + +sudo ~/pi-sdn 3 2 & + +## + + diff --git a/scripts/menu.sh b/scripts/menu.sh index cdb516a..c88b2b6 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -711,28 +711,25 @@ do_autostart_setup() case "$chstartup" in Prompt) sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf >/dev/null 2>/dev/null cp $PATHCONFIGS"/prompt.bashrc" /home/pi/.bashrc;; Console) sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf >/dev/null 2>/dev/null cp $PATHCONFIGS"/console.bashrc" /home/pi/.bashrc;; - - ##$PATHSCRIPT"/install_bashrc" /home/pi/.bashrc >/dev/null 2>/dev/null;; - Display) sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf >/dev/null 2>/dev/null MODE_DISPLAY=$(get_config_var display $CONFIGFILE) case "$MODE_DISPLAY" in Waveshare) - cp $PATHCONFIGS"/displaywaveshare.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + cp $PATHCONFIGS"/displaywaveshare.bashrc" /home/pi/.bashrc;; *) - cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc;; esac;; Button) sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf + sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf /dev/null 2>/dev/null cp $PATHCONFIGS"/button.bashrc" /home/pi/.bashrc;; TX_boot) sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ @@ -863,25 +860,24 @@ cp $PATHCONFIGS"/text.wifi_off" /home/pi/.wifi_off ## Disable at start-up do_Enable_DigiThin() { -exit +whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 } -do_Exit() +do_125KS() { -exit +whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 } -do_Reboot() +do_EasyCap() { -sudo reboot now +whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 } -do_Shutdown() +do_Update() { -sudo shutdown now +whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 } - do_system_setup() { menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 9 \ @@ -891,9 +887,9 @@ menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 "4 WiFi Set-up" "SSID and password" \ "5 WiFi Off" "Turn the WiFi Off" \ "6 Enable DigiThin" "Not Implemented Yet" \ - "7 Exit Menu" "Go to Command Line" \ - "8 Reboot" "Reboot the Raspberry Pi" \ - "9 ShutDown" "Shutdown for Safe Power Off" \ + "7 Enable 125KS" "Not implemented yet" \ + "8 Set EasyCap" "Not implemented yet" \ + "9 Update" "Not implemented yet" \ 3>&2 2>&1 1>&3) case "$menuchoice" in 1\ *) do_autostart_setup ;; @@ -902,9 +898,9 @@ menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 4\ *) do_WiFi_setup ;; 5\ *) do_WiFi_Off ;; 6\ *) do_Enable_DigiThin ;; - 7\ *) do_Exit ;; - 8\ *) do_Reboot ;; - 9\ *) do_Shutdown ;; + 7\ *) do_125KS ;; + 8\ *) do_EasyCap ;; + 9\ *) do_Update ;; esac } @@ -938,6 +934,61 @@ menuchoice=$(whiptail --title "$StrLanguageTitle" --menu "$StrOutputContext" 16 fi } +do_Exit() +{ +exit +} + +do_Reboot() +{ +sudo reboot now +} + +do_Shutdown() +{ +sudo shutdown now +} + +do_TouchScreen() +{ +reset +~/rpidatv/bin/rpidatvgui 1 +} + +do_EnableButtonSD() +{ +cp $PATHCONFIGS"/text.pi-sdn" ~/.pi-sdn ## Load it at logon +~/.pi-sdn ## Load it now +} + +do_DisableButtonSD() +{ +rm ~/.pi-sdn ## Stop it being loaded at log-on +sudo pkill -x pi-sdn ## kill the current process +} + +do_shutdown_menu() +{ +menuchoice=$(whiptail --title "Shutdown Menu" --menu "Select Choice" 16 78 7 \ + "1 Shutdown now" "Immediate Shutdown" \ + "2 Reboot now" "Immediate reboot" \ + "3 Exit to Linux" "Exit menu to Command Prompt" \ + "4 Restore TouchScreen" "Exit Menu, restart LCD" \ + "5 Button Enable" "Enable Shutdown Button" \ + "6 Button Disable" "Disable Shutdown Button" \ + 3>&2 2>&1 1>&3) + case "$menuchoice" in + 1\ *) do_Shutdown ;; + 2\ *) do_Reboot ;; + 3\ *) do_Exit ;; + 4\ *) do_TouchScreen ;; + 5\ *) do_EnableButtonSD ;; + 6\ *) do_DisableButtonSD ;; + esac +} + + + OnStartup() { CALL=$(get_config_var call $CONFIGFILE) @@ -1006,7 +1057,8 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" "4 Receive" "Receive via rtlsdr" \ "5 System" "$StrMainMenuSystem" \ "6 Language" "Set Language and Keyboard" \ - 3>&2 2>&1 1>&3) + "7 Shutdown" "Shutdown and reboot options" \ + 3>&2 2>&1 1>&3) case "$menuchoice" in 0\ *) do_transmit ;; @@ -1016,7 +1068,8 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" 4\ *) do_receive ;; 5\ *) do_system_setup ;; 6\ *) do_language_setup ;; - *) + 7\ *) do_shutdown_menu ;; + *) whiptail --title "$StrMainMenuExitTitle" --msgbox "$StrMainMenuExitContext" 8 78 status=1 @@ -1029,7 +1082,5 @@ INFO=$CALL":"$MODE_INPUT"-->"$MODE_OUTPUT"("$SYMBOLRATEK"KSymbol FEC "$FECNUM"/" esac exitstatus1=$status1 done -else - whiptail --title "Testing" --msgbox "Bye" 8 78 exit diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index 4f7ba0d..ed9e9a5 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -1,7 +1,7 @@ modeinput=CAMH264 symbolrate=2000 fec=7 -freqoutput=437 +freqoutput=1249 rfpower=7 modeoutput=IQ tsvideofile=/home/pi/rpidatv/video/f4day.ts @@ -14,10 +14,10 @@ serviceid=1 gpio_i=12 gpio_q=13 pathmedia=/home/pi/rpidatv/video -locator=JNO6EP +locator=IO90LU pidstart=255 pidaudio=257 display=Waveshare menulanguage=en analogcamname=/dev/video0 -startup=Prompt +startup=Display diff --git a/scripts/wifisetup.sh b/scripts/wifisetup.sh index 74009e8..ee2122f 100755 --- a/scripts/wifisetup.sh +++ b/scripts/wifisetup.sh @@ -9,28 +9,40 @@ reset # Clear the screen if [ -f ~/.wifi_off ]; then printf "WiFi was disabled at start-up.\n" printf "You cannot set up the WiFi until it is re-enabled.\n" - printf "Do you want to re-enable it and reboot imediately?\n" + printf "Do you want to re-enable it and reboot immediately? (y/n)\n" read -n 1 printf "\n" if [ "$REPLY" = "Y" ]; then echo "rebooting" rm ~/.wifi_off sudo reboot now - else - if [ "$REPLY" = "y" ]; then - echo "rebooting" - rm ~/.wifi_off - sudo reboot now - else - exit - fi fi + if [ "$REPLY" = "y" ]; then + echo "rebooting" + rm ~/.wifi_off + sudo reboot now + fi + exit fi ## Wifi is enabled so -## List the available networks +## Check current network name + +printf "Current WiFi Status:\n\n" +iwgetid +printf "\nDo you want to set up a new network? (y/n)\n" +read -n 1 +printf "\n" +if [ "$REPLY" = "N" ]; then + exit +fi +if [ "$REPLY" = "n" ]; then + exit +fi + +## Set up new network -printf "The following networks are available:\n" +printf "\nThe following networks are available:\n" printf "\n" sudo iwlist wlan0 scan | grep 'ESSID' printf "\n" From 22536d0842b569eb251aef3bae679de0da36fa15 Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 6 Dec 2016 20:24:12 +0000 Subject: [PATCH 20/64] test --- test.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 test.txt diff --git a/test.txt b/test.txt new file mode 100644 index 0000000..9daeafb --- /dev/null +++ b/test.txt @@ -0,0 +1 @@ +test From c74f027b7c7fe6ac5d6b0a8048bc0e4edc9f512a Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 6 Dec 2016 20:55:34 +0000 Subject: [PATCH 21/64] test2 --- test.txt | 1 - 1 file changed, 1 deletion(-) delete mode 100644 test.txt diff --git a/test.txt b/test.txt deleted file mode 100644 index 9daeafb..0000000 --- a/test.txt +++ /dev/null @@ -1 +0,0 @@ -test From 462c3cfca07feda6ed4d9e36a10b1eb2853f53ca Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 6 Dec 2016 22:12:54 +0000 Subject: [PATCH 22/64] Deleted redundant files --- scripts/frmenu.sh | 9 --------- scripts/gbmenu.sh | 9 --------- scripts/keyfr | 10 ---------- scripts/keygb | 10 ---------- scripts/manual-launch.sh | 7 ------- 5 files changed, 45 deletions(-) delete mode 100755 scripts/frmenu.sh delete mode 100755 scripts/gbmenu.sh delete mode 100644 scripts/keyfr delete mode 100644 scripts/keygb delete mode 100755 scripts/manual-launch.sh diff --git a/scripts/frmenu.sh b/scripts/frmenu.sh deleted file mode 100755 index 254501c..0000000 --- a/scripts/frmenu.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash -PATHSCRIPT=/home/pi/rpidatv/scripts -CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" - -source $PATHSCRIPT"/langfr.sh" -source $PATHSCRIPT"/menu.sh" - - - diff --git a/scripts/gbmenu.sh b/scripts/gbmenu.sh deleted file mode 100755 index 6a966c5..0000000 --- a/scripts/gbmenu.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash -PATHSCRIPT=/home/pi/rpidatv/scripts -CONFIGFILE=$PATHSCRIPT"/rpidatvconfig.txt" - -source $PATHSCRIPT"/langgb.sh" -source $PATHSCRIPT"/menu.sh" - - - diff --git a/scripts/keyfr b/scripts/keyfr deleted file mode 100644 index f4b3425..0000000 --- a/scripts/keyfr +++ /dev/null @@ -1,10 +0,0 @@ -# KEYBOARD CONFIGURATION FILE - -# Consult the keyboard(5) manual page. - -XKBMODEL="pc105" -XKBLAYOUT="fr" -XKBVARIANT="" -XKBOPTIONS="" - -BACKSPACE="guess" diff --git a/scripts/keygb b/scripts/keygb deleted file mode 100644 index b6e6925..0000000 --- a/scripts/keygb +++ /dev/null @@ -1,10 +0,0 @@ -# KEYBOARD CONFIGURATION FILE - -# Consult the keyboard(5) manual page. - -XKBMODEL="pc105" -XKBLAYOUT="gb" -XKBVARIANT="" -XKBOPTIONS="" - -BACKSPACE="guess" diff --git a/scripts/manual-launch.sh b/scripts/manual-launch.sh deleted file mode 100755 index 67aac49..0000000 --- a/scripts/manual-launch.sh +++ /dev/null @@ -1,7 +0,0 @@ -PATHSCRIPT=/home/pi/rpidatv/scripts - -$PATHSCRIPT"/a.sh" -read -p "To exit : Press a key or CTL-C" -touche - - From 6aff6e6fb14af5bb4c0a1a614ecd63ed5e94fdaa Mon Sep 17 00:00:00 2001 From: davecrump Date: Wed, 7 Dec 2016 22:11:24 +0000 Subject: [PATCH 23/64] Added display switching based on config file --- bin/leandvb | Bin 0 -> 97708 bytes bin/rpidatvgui | Bin 0 -> 516260 bytes bin/tcanim | Bin 0 -> 489096 bytes src/gui/rpidatvtouch.c | 38 ++++++++++++++++++++++++++------------ 4 files changed, 26 insertions(+), 12 deletions(-) create mode 100755 bin/leandvb create mode 100755 bin/rpidatvgui create mode 100755 bin/tcanim diff --git a/bin/leandvb b/bin/leandvb new file mode 100755 index 0000000000000000000000000000000000000000..cde9018c43a683a566f013291d110c1cf28d5b40 GIT binary patch literal 97708 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 YgqJv-tLN9V;T$64J?_a|PV0BPZ}+vxp#T5? literal 0 HcmV?d00001 diff --git a/bin/rpidatvgui b/bin/rpidatvgui new file mode 100755 index 0000000000000000000000000000000000000000..75a20e9b60dcdb8f3a7c35ca34c51a4408fcd09d GIT binary patch literal 516260 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%0Dqwmlr!`Jd4wK7H}E=m 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 literal 0 HcmV?d00001 diff --git a/bin/tcanim b/bin/tcanim new file mode 100755 index 0000000000000000000000000000000000000000..aa1e508092889f339f2c8262e10ab65cc0ff8a9b GIT binary patch literal 489096 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%0Dc7IFU|AJrqh25v$kds}LP0|g!zc+rg`;0Hb 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

j|CUd~i~WNW)+l$b*SQYp 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¨fJs&MPPOEIozO|E*+4*Aaqrb&}4mVj3mRt{F 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 Nm?-D5kT4n1{|ntNHlF|h literal 0 HcmV?d00001 diff --git a/src/gui/rpidatvtouch.c b/src/gui/rpidatvtouch.c index 730a90c..9d89701 100644 --- a/src/gui/rpidatvtouch.c +++ b/src/gui/rpidatvtouch.c @@ -177,7 +177,7 @@ int IsButtonPushed(int NbButton,int x,int y) scaledY = hscreen-x/scaleYvalue; } //printf("x=%d y=%d scaledx %d scaledy %d\n",x,y,scaledX,scaledY); - int margin=20; + int margin=10; // was 20 if((scaledX<=(ButtonArray[NbButton].x+ButtonArray[NbButton].w-margin))&&(scaledX>=ButtonArray[NbButton].x+margin) && (scaledY<=(ButtonArray[NbButton].y+ButtonArray[NbButton].h-margin))&&(scaledY>=ButtonArray[NbButton].y+margin) /*&&(mymillis()-ButtonArray[NbButton].LastEventTime>TIME_ANTI_BOUNCE)*/) @@ -521,9 +521,9 @@ void *DisplayFFT(void * arg) while(FinishedButton==0) { - int Nbread; // not used? - int log2_N=11; //FFT 1024 not used? - int ret; // not used? + int Nbread; // value set later but not used + //int log2_N=11; //FFT 1024 not used? + //int ret; // not used? Nbread=fread( fftin,sizeof(fftwf_complex),FFT_SIZE,pFileIQ); fftwf_execute( plan ); @@ -552,10 +552,10 @@ void ProcessLeandvb() size_t len = 0; ssize_t read; - int rawX, rawY, rawPressure; + // int rawX, rawY, rawPressure; // not used FILE *fp; - VGfloat px[1000]; - VGfloat py[1000]; + // VGfloat px[1000]; // Variable not used + // VGfloat py[1000]; // Variable not used VGfloat shapecolor[4]; RGBA(255, 255, 128,1, shapecolor); @@ -783,7 +783,7 @@ void waituntil(int w,int h,int endchar) // int key; not used? int rawX, rawY, rawPressure,i; - int Toggle=0; + // int Toggle=0; not used for (;;) { @@ -924,6 +924,10 @@ int main(int argc, char **argv) { int screenYmax, screenYmin; int ReceiveDirect=0; int i; + char Param[255]; + char Value[255]; + +// Catch sigaction and call terminate for (i = 0; i < 16; i++) { struct sigaction sa; @@ -931,8 +935,18 @@ int main(int argc, char **argv) { sa.sa_handler = terminate; sigaction(i, &sa, NULL); } + +// Determine if using waveshare screen +// Either by first argument or from rpidatvconfig.txt if(argc>1) Inversed=atoi(argv[1]); + strcpy(Param,"display"); + + GetConfigParam(PATH_CONFIG,Param,Value); + if(strcmp(Value,"Waveshare")==0) + Inversed=1; + +// Determine if ReceiveDirect 2nd argument if(argc>2) ReceiveDirect=atoi(argv[2]); @@ -942,6 +956,7 @@ int main(int argc, char **argv) { ProcessLeandvb(); // For FrMenu and no } +// Check for presence of touchscreen for(NoDeviceEvent=0;NoDeviceEvent<5;NoDeviceEvent++) { if (openTouchScreen(NoDeviceEvent) == 1) @@ -954,13 +969,14 @@ int main(int argc, char **argv) { perror("No Touchscreen found"); exit(1); } + +// Calculate screen parameters scaleXvalue = ((float)screenXmax-screenXmin) / wscreen; //printf ("X Scale Factor = %f\n", scaleXvalue); scaleYvalue = ((float)screenYmax-screenYmin) / hscreen; //printf ("Y Scale Factor = %f\n", scaleYvalue); - - +// Define button grid int wbuttonsize=wscreen/5; int hbuttonsize=hscreen/6; @@ -1118,8 +1134,6 @@ int main(int argc, char **argv) { // Frequency - char Param[255]; - char Value[255]; strcpy(Param,"freqoutput"); GetConfigParam(PATH_CONFIG,Param,Value); strcpy(freqtxt,Value); From 04c9468a30a357b7e376aa93d6bde8350ba9b67a Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 8 Dec 2016 11:51:42 +0000 Subject: [PATCH 24/64] Updated for BATC Version --- README.md | 101 ++++++++++++++++++------------------------------------ 1 file changed, 34 insertions(+), 67 deletions(-) diff --git a/README.md b/README.md index 0316cdd..d886dca 100644 --- a/README.md +++ b/README.md @@ -1,81 +1,48 @@ ![rpidatv banner](/doc/img/spectreiq.jpg) # rpidatv -**rpidatv** is a digital television transmitter for Raspberry Pi (B,B+,PI2,PI3,Pizero) which output directly to GPIO. +**rpidatv** is a digital television transmitter for Raspberry Pi (B,B+,PI2,PI3,Pizero) which outputs directly to GPIO. This version has been developed for use with an external synthesized oscillaotor and modulator/filter board. *(Created by Evariste Courjaud F5OEO. Code is GPL)* -# Installation -Install a Raspbian Lite : ([Raspbian Lite](http://www.raspberrypi.org/downloads/raspbian/)) +# Installation for BATC Version -```sh -$ wget https://raw.githubusercontent.com/F5OEO/rpidatv/master/install.sh -$ chmod +x install.sh -$ ./install.sh -``` +The preferred installation method only needs a Windows PC connected to the same (inetrnet-connected) network as your Raspberry Pi. -# Hardware -Plug a wire on GPIO 12, means Pin 32 of the GPIO header : this act as the antenna. Length depend on transmit frequency, but with few centimeters it works for local testing. +- First download the March 2016 release of Raspbian Jessie Lite on to your Windows PC from here http://downloads.raspberrypi.org/raspbian_lite/images//raspbian_lite-2016-03-18/. Evariste has not tested with later Raspbian images. There are some problems with the latest version of Raspbian, which Evariste and I are working to resolve. -# Modulator -**rpidatv** is located in rpidatv/bin folder -``` -rpidatv -2.0.0 -Usage: -rpidatv -i File Input -s Symbolrate -c Fec [-o OutputMode] [-f frequency output] [-l] [-p Power] [-h] --i path to Transport File Input --s SymbolRate in KS (125-4000) --c Fec : 1/2 or 3/4 or 5/6 or 7/8 --m OutputMode - {RF(Modulate QSK in RF need -f option to set frequency)} - {IQ(Output QPSK I/Q} - {PARALLEL(Output parallel (DTX1,MINIMOD..)} - {IQWITHCLK(Output I/Q with CLK (F5LGJ)} - {DIGITHIN (Output I/Q for Digithin)} --f Frequency to output in RF Mode in MHZ --l loop file input --p Power on output 1..7 --x GPIO Pin output for I or RF {12,18,40} --y GPIO Pin output for Q {13,19,41,45} --h help (print this help). -Example : sudo ./rpidatv -i sample.ts -s 250 -c 1/2 -o RF -f 437.5 -l -``` - # Transport stream -**rpidatv** needs a DVB transport stream in input. In the past, ffmpeg was used to generate transport stream. Because ffmpeg is not completely DVB compliant and induces latency, an other tool is proposed : **avc2ts** +- Unzip the image and then transfer it to a Micro-SD Card using Win32diskimager https://sourceforge.net/projects/win32diskimager/ -# H264 encoder and transport stream encapsulator -**avc2ts** is located in rpidatv/bin folder -``` -avc2ts -1.0.0 -Usage: -rpi-avc2ts -o OutputFile -b BitrateVideo -m BitrateMux -x VideoWidth -y VideoHeight -f Framerate -n MulticastGroup [-d PTS/PCR][-v][-h] --o path to Transport File Output --b VideoBitrate in bit/s --m Multiplex Bitrate (should be around 1.4 VideoBitrate) --x VideoWidth (should be 16 pixel aligned) --y VideoHeight (should be 16 pixel aligned) --f Framerate (25 for example) --n Multicast group (optionnal) example 230.0.0.1:10000 --d Delay PTS/PCR in ms --v Enable Motion vectors --i IDR Period --t TypeInput {0=Picamera,1=InternalPatern,2=USB Camera,3=Rpi Display,4=VNC} --e Extra Arg: - - For usb camera name of device (/dev/video0) - - For VNC : IP address of VNC Server. Password must be datv --p Set the PidStart: Set PMT=PIDStart,Pidvideo=PidStart+1,PidAudio=PidStart+2 --s Set Servicename : Typically CALL --h help (print this help). -Example : ./rpi-avc2ts -o result.ts -b 1000000 -m 1400000 -x 640 -y 480 -f 25 -n 230.0.0.1:1000 -``` +- Power up the Pi with the new card inserted, and a network connection. No keyboard or display required. + +- Find the IP address of your Raspberry Pi using an IP Scanner (such as Advanced IP Scanner http://filehippo.com/download_advanced_ip_scanner/ for Windows, or Fing on an iPhone) to get the Pi's IP address + +- From your windows PC use Putty (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) to log in to the IP address that you noted earlier. + +- Log in (user: pi/password: raspberry), and type "sudo raspi-config" to open the configuration tool. Select option 1 to expand the file system to the whole disk. + +- Exit raspi-config (press tab twice then press return), and reboot. + +- Power-off, connect the camera, reconnect power and reboot. Log in again. + +- Cut and paste the following code in, one line at a time: -# Console interface -A console interface is provided under rpidatv/scripts ```sh -$ /home/pi/rpidatv/scripts/gbmenu.sh +wget https://raw.githubusercontent.com/davecrump/rpidatv/master/install.sh +chmod +x install.sh +./install.sh ``` -# Touchscreen interface -![Rpidatvgui](/doc/img/rpidatvgui.jpg) -A graphical interface is provided under rpidatv/bin/ folder +- For French menus and keyboard, replace the last line above with ```sh -$ /home/pi/rpidatv/bin/rpidatvgui +./install.sh fr ``` +- When it has finished, type "sudo reboot now", log in again and then start the software by typing: + +```sh +/home/pi/rpidatv/scripts/menu.sh menu +``` + +You can now explore the menu options and play. + +Evariste has only tested on an RPi2, I have been using an RPi3. I succeeded in generating a direct RF output (from GPIO pin 32) on 437 MHz at 333KS using the on-board camera as the source; it would not work reliably at higher SRs. The big win for me is that I could feed the I and Q signals from pins 32 and 33 directly into the LC filter on my old DigiLite modulator and generate a 2MS QPSK H264 DVB-S signal from the on-board camera. Some adjustment of the bias is required as the I and Q signals from the Pi are 3.3v, not 5v as provided by the DigiLite encoder. + + From 1341f57884f5b71a0e324bdfca21aaae2c70e7ab Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 8 Dec 2016 12:10:14 +0000 Subject: [PATCH 25/64] Updated to load BATC Version and Offer reboot --- install.sh | 109 +++++++++++++++++++++++++++++------------------------ 1 file changed, 59 insertions(+), 50 deletions(-) diff --git a/install.sh b/install.sh index d9da173..8896db3 100755 --- a/install.sh +++ b/install.sh @@ -1,89 +1,91 @@ #!/bin/bash -set -e +# Updated by davecrump on 20161208 + +set -e # Don't report errors.... + +# Update the package manager, then install the packages we need sudo dpkg --configure -a sudo apt-get clean sudo apt-get update sudo apt-get -y install apt-transport-https git rpi-update sudo apt-get -y install cmake libusb-1.0-0-dev g++ libx11-dev buffer libjpeg-dev indent libfreetype6-dev ttf-dejavu-core bc usbmount fftw3-dev wiringpi libvncserver-dev -#rpi-update to get latest firmware +# rpi-update to get latest firmware sudo rpi-update -# ---------- install rpidatv ----------- - +# Get the source software and copy to the Pi cd /home/pi -#git clone git://github.com/F5OEO/rpidatv -> BUG IN QEMU : Go to download method -wget https://github.com/F5OEO/rpidatv/archive/master.zip +wget https://github.com/davecrump/rpidatv/archive/master.zip unzip -o master.zip mv rpidatv-master rpidatv rm master.zip -#rpidatv core +# Compile rpidatv core cd rpidatv/src make sudo make install -#rpidatv gui + +# Compile rpidatv gui cd gui make sudo make install cd ../ -#avc2ts -cd avc2ts -#git clone git://github.com/kierank/libmpegts +# Get libmpegts and compile +cd avc2ts wget https://github.com/kierank/libmpegts/archive/master.zip unzip master.zip mv libmpegts-master libmpegts rm master.zip - cd libmpegts ./configure make -#make avc2ts + +# Compile avc2ts cd ../ make sudo make install -#install adf4351 +# Compile adf4351 cd /home/pi/rpidatv/src/adf4351 make cp adf4351 ../../bin/ -#install rtl_sdr +# Get rtl_sdr cd /home/pi -#git clone https://github.com/keenerd/rtl-sdr wget https://github.com/keenerd/rtl-sdr/archive/master.zip unzip master.zip mv rtl-sdr-master rtl-sdr rm master.zip +# Compile and install rtl-sdr cd rtl-sdr/ && mkdir build && cd build cmake ../ -DINSTALL_UDEV_RULES=ON make && sudo make install && sudo ldconfig sudo bash -c 'echo -e "\n# for RTL-SDR:\nblacklist dvb_usb_rtl28xxu\n" >> /etc/modprobe.d/blacklist.conf' cd ../../ -#install leandvb +# Get leandvb cd /home/pi/rpidatv/src -#git clone git://github.com/pabr/leansdr wget https://github.com/pabr/leansdr/archive/master.zip unzip master.zip mv leansdr-master leansdr rm master.zip +# Compile leandvb cd leansdr/src/apps make cp leandvb ../../../../bin/ - -#install tstools +# Get tstools cd /home/pi/rpidatv/src wget https://github.com/F5OEO/tstools/archive/master.zip unzip master.zip mv tstools-master tstools rm master.zip +# Compile tstools cd tstools make cp bin/ts2es ../../bin/ @@ -97,7 +99,6 @@ cd /home/pi/rpidatv/src/hello_video make cp hello_video.bin ../../bin/ - # TouchScreen GUI # FBCP : Duplicate Framebuffer 0 -> 1 cd /home/pi/ @@ -105,7 +106,8 @@ wget https://github.com/tasanakorn/rpi-fbcp/archive/master.zip unzip master.zip mv rpi-fbcp-master rpi-fbcp rm master.zip -#git clone https://github.com/tasanakorn/rpi-fbcp + +# Compile fbcp cd rpi-fbcp/ mkdir build cd build/ @@ -114,46 +116,53 @@ make sudo install fbcp /usr/local/bin/fbcp cd ../../ -#Install Waveshare DTOVERLAY +# Install Waveshare DTOVERLAY cd /home/pi/rpidatv/scripts/ sudo cp ./waveshare35a.dtbo /boot/overlays/ - -#Fallback IP to 192.168.1.60 +# Fallback IP to 192.168.1.60 sudo bash -c 'echo -e "\nprofile static_eth0\nstatic ip_address=192.168.1.60/24\nstatic routers=192.168.1.1\nstatic domain_name_servers=192.168.1.1\ninterface eth0\nfallback static_eth0" >> /etc/dhcpcd.conf' -#enable camera +# Enable camera sudo bash -c 'echo -e "\ngpu_mem=128\nstart_x=1\n" >> /boot/config.txt' -#disable sync option for usbmount +# Disable sync option for usbmount sudo sed -i 's/sync,//g' /etc/usbmount/usbmount.conf +# Install executable for hardware shutdown button +wget 'https://github.com/philcrump/pi-sdn/releases/download/v1.0/pi-sdn' -O /home/pi/pi-sdn +chmod +x /home/pi/pi-sdn -if [ "$1" == "Autostart" ]; -then -echo "Doing autostart..." -##Menu autostart +# Record Version Number cd /home/pi/rpidatv/scripts/ -##make kayboard in french -sudo cp keyfr /etc/default/keyboard -##do Menu as auto install -bash install_autostart.sh - -#change hostname -CURRENT_HOSTNAME=`sudo cat /etc/hostname | sudo tr -d " \t\n\r"` -NEW_HOSTNAME="rpidatv" -if [ $? -eq 0 ]; then - sudo sh -c "echo '$NEW_HOSTNAME' > /etc/hostname" - sudo sed -i "s/127.0.1.1.*$CURRENT_HOSTNAME/127.0.1.1\t$NEW_HOSTNAME/g" /etc/hosts -fi -#change password to tv -echo "pi:tv" | sudo chpasswd +cp latest_version.txt installed_version.txt +cd~ + +# Switch to French if required +if [ "$1" == "fr" ]; +then + echo "Installing French Language and Keyboard" + cd /home/pi/rpidatv/scripts/ + sudo cp configs/keyfr /etc/default/keyboard + cp configs/rpidatvconfig.fr rpidatvconfig.txt + echo "Completed French Install" else -echo "completed without autostart" + echo "Completed English Install" +fi + +# Offer reboot +printf "A reboot will be required before using the software." +printf "Do you want to reboot now? (y/n)\n" +read -n 1 +printf "\n" +if [ "$REPLY" = "Y" ]; then + echo "rebooting" + sudo reboot now +fi +if [ "$REPLY" = "y" ]; then + echo "rebooting" + sudo reboot now fi -#always enable HDMI at 720p -#sudo bash -c 'echo -e "\nhdmi_force_hotplug=1\nhdmi_drive=2\nhdmi_group=1\nhdmi_mode=4\n" >> /boot/config.txt' +exit -#remove script that starts raspi config on first boot -#sudo rm -rf /etc/profile.d/raspi-config.sh From 3a977596fd988639104ef89c0dcdc20968fa8d1c Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 8 Dec 2016 12:11:48 +0000 Subject: [PATCH 26/64] Clarified for reboot --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d886dca..3b1f0b5 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ chmod +x install.sh ./install.sh fr ``` -- When it has finished, type "sudo reboot now", log in again and then start the software by typing: +- When it has finished, accept the reboot offered or type "sudo reboot now", log in again and then start the software by typing: ```sh /home/pi/rpidatv/scripts/menu.sh menu From d05510a6f6814fee0abade82e305b251ea1ed860 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 8 Dec 2016 12:14:55 +0000 Subject: [PATCH 27/64] Added Version number --- scripts/latest_version.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 scripts/latest_version.txt diff --git a/scripts/latest_version.txt b/scripts/latest_version.txt new file mode 100644 index 0000000..f11f60b --- /dev/null +++ b/scripts/latest_version.txt @@ -0,0 +1 @@ +201612081 From aa8e0b3f005f9a16d80d02df1694d9a7fdfa5499 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Sat, 10 Dec 2016 12:07:04 +0000 Subject: [PATCH 28/64] Added more comments --- update.sh | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/update.sh b/update.sh index fb9130a..6223169 100755 --- a/update.sh +++ b/update.sh @@ -1,28 +1,31 @@ #!/bin/bash -set -e +# Updated by davecrump 20161210 + +set -e # Don't report errors # ---------- Update rpidatv ----------- cd /home/pi -#git clone git://github.com/F5OEO/rpidatv -> BUG IN QEMU : Go to download method wget https://github.com/F5OEO/rpidatv/archive/master.zip -O master.zip unzip -o master.zip cp -f -r rpidatv-master rpidatv rm master.zip -#rpidatv core +# Compile rpidatv core cd rpidatv/src make clean make sudo make install -#rpidatv gui + +# Compile rpidatv gui cd gui make clean make sudo make install cd ../ -#avc2ts + +# Compile avc2ts cd avc2ts make clean make From 955cad1c605d588c69be8d8990fe5f020dda13f6 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Sat, 10 Dec 2016 16:14:55 +0000 Subject: [PATCH 29/64] Tidy User Input Test --- install.sh | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/install.sh b/install.sh index 8896db3..29b7577 100755 --- a/install.sh +++ b/install.sh @@ -155,13 +155,9 @@ printf "A reboot will be required before using the software." printf "Do you want to reboot now? (y/n)\n" read -n 1 printf "\n" -if [ "$REPLY" = "Y" ]; then - echo "rebooting" - sudo reboot now -fi -if [ "$REPLY" = "y" ]; then - echo "rebooting" - sudo reboot now +if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; then + echo "rebooting" + sudo reboot now fi exit From bef13c05d6d04486a722561b46e8c950f289af07 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Sat, 10 Dec 2016 19:17:11 +0000 Subject: [PATCH 30/64] Correct typo --- install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install.sh b/install.sh index 29b7577..fe1c282 100755 --- a/install.sh +++ b/install.sh @@ -136,7 +136,7 @@ chmod +x /home/pi/pi-sdn # Record Version Number cd /home/pi/rpidatv/scripts/ cp latest_version.txt installed_version.txt -cd~ +cd /home/pi # Switch to French if required if [ "$1" == "fr" ]; From 924eaf38825f6e50f9aa33f382bd8780161b3845 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Sat, 10 Dec 2016 19:24:40 +0000 Subject: [PATCH 31/64] Tidied --- install.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/install.sh b/install.sh index fe1c282..fff7258 100755 --- a/install.sh +++ b/install.sh @@ -145,6 +145,7 @@ then cd /home/pi/rpidatv/scripts/ sudo cp configs/keyfr /etc/default/keyboard cp configs/rpidatvconfig.fr rpidatvconfig.txt + cd /home/pi echo "Completed French Install" else echo "Completed English Install" From 10cdca4f4703c09b289e96ae9ebf1e8e5d1e984e Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Tue, 13 Dec 2016 18:37:10 +0000 Subject: [PATCH 32/64] Updated for Jessie Lite 2016-11-29 --- README.md | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 3b1f0b5..396cf06 100644 --- a/README.md +++ b/README.md @@ -7,23 +7,19 @@ The preferred installation method only needs a Windows PC connected to the same (inetrnet-connected) network as your Raspberry Pi. -- First download the March 2016 release of Raspbian Jessie Lite on to your Windows PC from here http://downloads.raspberrypi.org/raspbian_lite/images//raspbian_lite-2016-03-18/. Evariste has not tested with later Raspbian images. There are some problems with the latest version of Raspbian, which Evariste and I are working to resolve. +- First download the November 2016 release of Raspbian Jessie Lite on to your Windows PC from here http://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-11-29/. - Unzip the image and then transfer it to a Micro-SD Card using Win32diskimager https://sourceforge.net/projects/win32diskimager/ -- Power up the Pi with the new card inserted, and a network connection. No keyboard or display required. +- Before you remove the card from your Windows PC, look at the card with windows explorer and go to the \boot directory. Create a new empty file called ssh in the \boot directory by right-clicking, selecting New, Text Document, and then change the name to ssh (not ssh.txt). You should get a window warning about changing the filename extension. Click OK. If you do not get this warbning, you have created a file called ssh.txt and you need to rename it ssh. + +- If you have a Pi Camera and/or touchscreen display, you can connect them now. Power up the Pi with the new card inserted, and a network connection. No keyboard or HDMI display are required. - Find the IP address of your Raspberry Pi using an IP Scanner (such as Advanced IP Scanner http://filehippo.com/download_advanced_ip_scanner/ for Windows, or Fing on an iPhone) to get the Pi's IP address - From your windows PC use Putty (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) to log in to the IP address that you noted earlier. -- Log in (user: pi/password: raspberry), and type "sudo raspi-config" to open the configuration tool. Select option 1 to expand the file system to the whole disk. - -- Exit raspi-config (press tab twice then press return), and reboot. - -- Power-off, connect the camera, reconnect power and reboot. Log in again. - -- Cut and paste the following code in, one line at a time: +- Log in (user: pi/password: raspberry) then cut and paste the following code in, one line at a time: ```sh wget https://raw.githubusercontent.com/davecrump/rpidatv/master/install.sh @@ -43,6 +39,4 @@ chmod +x install.sh You can now explore the menu options and play. -Evariste has only tested on an RPi2, I have been using an RPi3. I succeeded in generating a direct RF output (from GPIO pin 32) on 437 MHz at 333KS using the on-board camera as the source; it would not work reliably at higher SRs. The big win for me is that I could feed the I and Q signals from pins 32 and 33 directly into the LC filter on my old DigiLite modulator and generate a 2MS QPSK H264 DVB-S signal from the on-board camera. Some adjustment of the bias is required as the I and Q signals from the Pi are 3.3v, not 5v as provided by the DigiLite encoder. - - +I succeeded in generating a direct RF output (from GPIO pin 32) on 437 MHz at 333KS using the on-board camera as the source; it would not work reliably at higher SRs. The big win for me is that I could feed the I and Q signals from pins 32 and 33 directly into the LC filter on my old DigiLite modulator and generate a 2MS QPSK H264 DVB-S signal from the on-board camera. Some adjustment of the bias is required as the I and Q signals from the Pi are 3.3v, not 5v as provided by the DigiLite encoder. From 67b4f924236d338bc0242a15bc5ad968356178a8 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Tue, 13 Dec 2016 18:38:18 +0000 Subject: [PATCH 33/64] Correct Typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 396cf06..d8b22f5 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ The preferred installation method only needs a Windows PC connected to the same - Unzip the image and then transfer it to a Micro-SD Card using Win32diskimager https://sourceforge.net/projects/win32diskimager/ -- Before you remove the card from your Windows PC, look at the card with windows explorer and go to the \boot directory. Create a new empty file called ssh in the \boot directory by right-clicking, selecting New, Text Document, and then change the name to ssh (not ssh.txt). You should get a window warning about changing the filename extension. Click OK. If you do not get this warbning, you have created a file called ssh.txt and you need to rename it ssh. +- Before you remove the card from your Windows PC, look at the card with windows explorer and go to the \boot directory. Create a new empty file called ssh in the \boot directory by right-clicking, selecting New, Text Document, and then change the name to ssh (not ssh.txt). You should get a window warning about changing the filename extension. Click OK. If you do not get this warning, you have created a file called ssh.txt and you need to rename it ssh. - If you have a Pi Camera and/or touchscreen display, you can connect them now. Power up the Pi with the new card inserted, and a network connection. No keyboard or HDMI display are required. From f7ccd21c66bacf925723368858b8bb8b198ac8b7 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Wed, 14 Dec 2016 14:46:18 +0000 Subject: [PATCH 34/64] Another Typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d8b22f5..8d19a4e 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ # Installation for BATC Version -The preferred installation method only needs a Windows PC connected to the same (inetrnet-connected) network as your Raspberry Pi. +The preferred installation method only needs a Windows PC connected to the same (internet-connected) network as your Raspberry Pi. - First download the November 2016 release of Raspbian Jessie Lite on to your Windows PC from here http://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-11-29/. From 494f01762a45dfb1c884d530a28197d238c934ce Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Wed, 14 Dec 2016 14:47:02 +0000 Subject: [PATCH 35/64] Typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8d19a4e..32cf843 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ![rpidatv banner](/doc/img/spectreiq.jpg) # rpidatv -**rpidatv** is a digital television transmitter for Raspberry Pi (B,B+,PI2,PI3,Pizero) which outputs directly to GPIO. This version has been developed for use with an external synthesized oscillaotor and modulator/filter board. +**rpidatv** is a digital television transmitter for Raspberry Pi (B,B+,PI2,PI3,Pizero) which outputs directly to GPIO. This version has been developed for use with an external synthesized oscillator and modulator/filter board. *(Created by Evariste Courjaud F5OEO. Code is GPL)* # Installation for BATC Version From ad60890dede42df4fe289c723b46fb3beb89d947 Mon Sep 17 00:00:00 2001 From: davecrump Date: Wed, 14 Dec 2016 21:45:36 +0000 Subject: [PATCH 36/64] New script to check for updates --- scripts/check_for_update.sh | 45 +++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 scripts/check_for_update.sh diff --git a/scripts/check_for_update.sh b/scripts/check_for_update.sh new file mode 100755 index 0000000..69f947c --- /dev/null +++ b/scripts/check_for_update.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +## Download the latest_version file and convert it to a variable +cd /home/pi/rpidatv +rm /home/pi/rpidatv/latest_version.txt >/dev/null 2>/dev/null +wget -q https://raw.githubusercontent.com/davecrump/rpidatv/master/scripts/latest_version.txt +LATESTVERSION=$(head -c 9 latest_version.txt) + +## Check installed version +INSTALLEDVERSION=$(head -c 9 scripts/installed_version.txt) + +## Compare versions +if [ $LATESTVERSION -eq $INSTALLEDVERSION ]; +then + printf "The installed version "$INSTALLEDVERSION" is the latest available\n" + sleep 2 + exit +fi +if [ $LATESTVERSION -gt $INSTALLEDVERSION ]; +then + printf "The installed version is "$INSTALLEDVERSION".\n" + printf "The latest version is "$LATESTVERSION" do you want to upgrade now? (y/n)\n" + read -n 1 + printf "\n" + if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; + then + printf "\nUgrading now...\n" + cd /home/pi + rm update.sh >/dev/null 2>/dev/null + wget -q https://raw.githubusercontent.com/davecrump/rpidatv/master/update.sh + chmod +x update.sh + /home/pi/update.sh & + printf "Starting Update....\n" + exit + else + printf "Not upgrading\n" + printf "The installed version is "$INSTALLEDVERSION".\n" + printf "The latest version is "$LATESTVERSION".\n" + fi +else + printf "There has been an error, or the installed version is newer than the published version\n" + printf "The installed version is "$INSTALLEDVERSION".\n" + printf "The latest version is "$LATESTVERSION".\n" +fi + From 03802e370ae42e58883ad329f1f5703b41c32bb4 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Wed, 14 Dec 2016 21:56:24 +0000 Subject: [PATCH 37/64] Add reboot offer --- update.sh | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/update.sh b/update.sh index 6223169..fc1b266 100755 --- a/update.sh +++ b/update.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Updated by davecrump 20161210 +# Updated by davecrump 20161214 set -e # Don't report errors @@ -37,5 +37,15 @@ make cp adf4351 ../../bin/ cd /home/pi/rpidatv +# Offer reboot +printf "A reboot will be required before using the update." +printf "Do you want to reboot now? (y/n)\n" +read -n 1 +printf "\n" +if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; then + echo "rebooting" + sudo reboot now +fi +exit From 64993fbf644beeebc7ebfc7cec17b67cffa31000 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Wed, 14 Dec 2016 22:41:09 +0000 Subject: [PATCH 38/64] Source for update changed to davecrump to test update facility --- update.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/update.sh b/update.sh index fc1b266..ef5d319 100755 --- a/update.sh +++ b/update.sh @@ -7,7 +7,7 @@ set -e # Don't report errors # ---------- Update rpidatv ----------- cd /home/pi -wget https://github.com/F5OEO/rpidatv/archive/master.zip -O master.zip +wget https://github.com/davecrump/rpidatv/archive/master.zip -O master.zip unzip -o master.zip cp -f -r rpidatv-master rpidatv rm master.zip From 629f4d02e966eba9466eaac0a84c06d93861e907 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Wed, 14 Dec 2016 22:51:04 +0000 Subject: [PATCH 39/64] Force version number update --- update.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/update.sh b/update.sh index ef5d319..d6a690a 100755 --- a/update.sh +++ b/update.sh @@ -37,6 +37,10 @@ make cp adf4351 ../../bin/ cd /home/pi/rpidatv +# Update the version number +rm /home/pi/rpidatv/scripts/installed_version.txt +cp /home/pi/rpidatv/scripts/latest_version.txt /home/pi/rpidatv/scripts/installed_version.txt + # Offer reboot printf "A reboot will be required before using the update." printf "Do you want to reboot now? (y/n)\n" From f1f2bd53bc8a5f213e5d0ec889474f88bb3912da Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 22:11:04 +0000 Subject: [PATCH 40/64] Change launch of update script --- scripts/check_for_update.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/scripts/check_for_update.sh b/scripts/check_for_update.sh index 69f947c..3800b9e 100755 --- a/scripts/check_for_update.sh +++ b/scripts/check_for_update.sh @@ -24,13 +24,12 @@ then printf "\n" if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; then - printf "\nUgrading now...\n" + printf "\nUpgrading now...\n" cd /home/pi rm update.sh >/dev/null 2>/dev/null wget -q https://raw.githubusercontent.com/davecrump/rpidatv/master/update.sh chmod +x update.sh - /home/pi/update.sh & - printf "Starting Update....\n" + /home/pi/update.sh exit else printf "Not upgrading\n" From 09dd21a5af6d8ea729585163401ae97033f2227f Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 22:14:31 +0000 Subject: [PATCH 41/64] Improve dialogue --- update.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/update.sh b/update.sh index d6a690a..31bcd3f 100755 --- a/update.sh +++ b/update.sh @@ -1,6 +1,8 @@ #!/bin/bash -# Updated by davecrump 20161214 +# Updated by davecrump 20161215 + +printf "\nCommencing update.\n" set -e # Don't report errors @@ -42,12 +44,12 @@ rm /home/pi/rpidatv/scripts/installed_version.txt cp /home/pi/rpidatv/scripts/latest_version.txt /home/pi/rpidatv/scripts/installed_version.txt # Offer reboot -printf "A reboot will be required before using the update." +printf "A reboot will be required before using the update.\n" printf "Do you want to reboot now? (y/n)\n" read -n 1 printf "\n" if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; then - echo "rebooting" + printf "\nRebooting\n" sudo reboot now fi exit From 028eeffb6501b2f011e30abd13a6e08c0ffb22b3 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 22:26:11 +0000 Subject: [PATCH 42/64] test upgrade --- scripts/latest_version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/latest_version.txt b/scripts/latest_version.txt index f11f60b..6b3b08c 100644 --- a/scripts/latest_version.txt +++ b/scripts/latest_version.txt @@ -1 +1 @@ -201612081 +201612082 From ead1b87bfeddca71469e09437dbf5d22648f43f0 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 22:53:41 +0000 Subject: [PATCH 43/64] Corrected copy of unzipped update --- update.sh | 46 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 3 deletions(-) diff --git a/update.sh b/update.sh index 31bcd3f..a7cd19e 100755 --- a/update.sh +++ b/update.sh @@ -11,7 +11,11 @@ set -e # Don't report errors cd /home/pi wget https://github.com/davecrump/rpidatv/archive/master.zip -O master.zip unzip -o master.zip -cp -f -r rpidatv-master rpidatv +cp -f -r rpidatv-master/bin rpidatv +cp -f -r rpidatv-master/doc rpidatv +cp -f -r rpidatv-master/scripts rpidatv +cp -f -r rpidatv-master/src rpidatv +cp -f -r rpidatv-master/video rpidatv rm master.zip # Compile rpidatv core @@ -39,6 +43,44 @@ make cp adf4351 ../../bin/ cd /home/pi/rpidatv +# Get tstools +cd /home/pi/rpidatv/src +wget https://github.com/F5OEO/tstools/archive/master.zip +unzip master.zip +mv tstools-master tstools +rm master.zip + +# Compile tstools +cd tstools +make +cp bin/ts2es ../../bin/ + +#install H264 Decoder : hello_video +#compile ilcomponet first +cd /opt/vc/src/hello_pi/ +sudo ./rebuild.sh + +cd /home/pi/rpidatv/src/hello_video +make +cp hello_video.bin ../../bin/ + +# TouchScreen GUI +# FBCP : Duplicate Framebuffer 0 -> 1 +cd /home/pi/ +wget https://github.com/tasanakorn/rpi-fbcp/archive/master.zip +unzip master.zip +mv rpi-fbcp-master rpi-fbcp +rm master.zip + +# Compile fbcp +cd rpi-fbcp/ +mkdir build +cd build/ +cmake .. +make +sudo install fbcp /usr/local/bin/fbcp +cd ../../ + # Update the version number rm /home/pi/rpidatv/scripts/installed_version.txt cp /home/pi/rpidatv/scripts/latest_version.txt /home/pi/rpidatv/scripts/installed_version.txt @@ -53,5 +95,3 @@ if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; then sudo reboot now fi exit - - From 3ef7bf12e861d5ddff156432ad9beb0322483910 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 23:00:59 +0000 Subject: [PATCH 44/64] source the update script --- scripts/check_for_update.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/check_for_update.sh b/scripts/check_for_update.sh index 3800b9e..ae87465 100755 --- a/scripts/check_for_update.sh +++ b/scripts/check_for_update.sh @@ -29,7 +29,7 @@ then rm update.sh >/dev/null 2>/dev/null wget -q https://raw.githubusercontent.com/davecrump/rpidatv/master/update.sh chmod +x update.sh - /home/pi/update.sh + source /home/pi/update.sh exit else printf "Not upgrading\n" From c3d14f2cfe66a62320b8b1af72d39424c263f9fa Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 23:07:12 +0000 Subject: [PATCH 45/64] Delete old rpi-fbcp/build directory before creating --- update.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/update.sh b/update.sh index a7cd19e..a62163c 100755 --- a/update.sh +++ b/update.sh @@ -74,6 +74,7 @@ rm master.zip # Compile fbcp cd rpi-fbcp/ +rm -rf build mkdir build cd build/ cmake .. From 384e6801936202936f433a78df741c6e3040aa0b Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 23:11:06 +0000 Subject: [PATCH 46/64] delete tstools directory before copy --- update.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/update.sh b/update.sh index a62163c..f63d9b8 100755 --- a/update.sh +++ b/update.sh @@ -47,6 +47,7 @@ cd /home/pi/rpidatv cd /home/pi/rpidatv/src wget https://github.com/F5OEO/tstools/archive/master.zip unzip master.zip +rm -rf tstools mv tstools-master tstools rm master.zip From 9baefb4969098b7824d4db84864003e500fa6274 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Thu, 15 Dec 2016 23:16:46 +0000 Subject: [PATCH 47/64] Deelete old directories --- update.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/update.sh b/update.sh index f63d9b8..ab70ba0 100755 --- a/update.sh +++ b/update.sh @@ -70,6 +70,7 @@ cp hello_video.bin ../../bin/ cd /home/pi/ wget https://github.com/tasanakorn/rpi-fbcp/archive/master.zip unzip master.zip +rm -rf rpi-fbcp mv rpi-fbcp-master rpi-fbcp rm master.zip From af282ebb37baf92a9496fb8aa1edff9eb88ef40e Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Fri, 16 Dec 2016 21:42:30 +0000 Subject: [PATCH 48/64] Corrected to update scripts and binaries --- update.sh | 97 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 51 insertions(+), 46 deletions(-) diff --git a/update.sh b/update.sh index ab70ba0..3174f8d 100755 --- a/update.sh +++ b/update.sh @@ -1,6 +1,10 @@ #!/bin/bash -# Updated by davecrump 20161215 +# Updated by davecrump 20161216 + +# Modified to overwrite ~/rpidatv/scripts and +# ~/rpidatv/src, then compile +# rpidatv, rpidatv gui avc2ts and adf4351 printf "\nCommencing update.\n" @@ -9,14 +13,15 @@ set -e # Don't report errors # ---------- Update rpidatv ----------- cd /home/pi -wget https://github.com/davecrump/rpidatv/archive/master.zip -O master.zip +wget -q https://github.com/davecrump/rpidatv/archive/master.zip -O master.zip unzip -o master.zip -cp -f -r rpidatv-master/bin rpidatv -cp -f -r rpidatv-master/doc rpidatv +# cp -f -r rpidatv-master/bin rpidatv +# cp -f -r rpidatv-master/doc rpidatv cp -f -r rpidatv-master/scripts rpidatv cp -f -r rpidatv-master/src rpidatv -cp -f -r rpidatv-master/video rpidatv +# cp -f -r rpidatv-master/video rpidatv rm master.zip +rm -rf rpidatv-master # Compile rpidatv core cd rpidatv/src @@ -41,48 +46,48 @@ sudo make install cd /home/pi/rpidatv/src/adf4351 make cp adf4351 ../../bin/ -cd /home/pi/rpidatv - -# Get tstools -cd /home/pi/rpidatv/src -wget https://github.com/F5OEO/tstools/archive/master.zip -unzip master.zip -rm -rf tstools -mv tstools-master tstools -rm master.zip - -# Compile tstools -cd tstools -make -cp bin/ts2es ../../bin/ - -#install H264 Decoder : hello_video -#compile ilcomponet first -cd /opt/vc/src/hello_pi/ -sudo ./rebuild.sh - -cd /home/pi/rpidatv/src/hello_video -make -cp hello_video.bin ../../bin/ - -# TouchScreen GUI -# FBCP : Duplicate Framebuffer 0 -> 1 -cd /home/pi/ -wget https://github.com/tasanakorn/rpi-fbcp/archive/master.zip -unzip master.zip -rm -rf rpi-fbcp -mv rpi-fbcp-master rpi-fbcp -rm master.zip +cd /home/pi -# Compile fbcp -cd rpi-fbcp/ -rm -rf build -mkdir build -cd build/ -cmake .. -make -sudo install fbcp /usr/local/bin/fbcp -cd ../../ +## Get tstools +# cd /home/pi/rpidatv/src +# wget https://github.com/F5OEO/tstools/archive/master.zip +# unzip master.zip +# rm -rf tstools +# mv tstools-master tstools +# rm master.zip + +## Compile tstools +#cd tstools +#make +#cp bin/ts2es ../../bin/ + +## install H264 Decoder : hello_video +## compile ilcomponet first +#cd /opt/vc/src/hello_pi/ +#sudo ./rebuild.sh + +# cd /home/pi/rpidatv/src/hello_video +# make +#cp hello_video.bin ../../bin/ + +## TouchScreen GUI +## FBCP : Duplicate Framebuffer 0 -> 1 +#cd /home/pi/ +#wget https://github.com/tasanakorn/rpi-fbcp/archive/master.zip +#unzip master.zip +#rm -rf rpi-fbcp +#mv rpi-fbcp-master rpi-fbcp +#rm master.zip + +## Compile fbcp +#cd rpi-fbcp/ +#rm -rf build +#mkdir build +#cd build/ +#cmake .. +#make +#sudo install fbcp /usr/local/bin/fbcp +#cd ../../ # Update the version number rm /home/pi/rpidatv/scripts/installed_version.txt From 21056df24ce5fc4ec426088fac893966640ae611 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Fri, 16 Dec 2016 22:02:33 +0000 Subject: [PATCH 49/64] Correct latest_version.txt location --- scripts/check_for_update.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/scripts/check_for_update.sh b/scripts/check_for_update.sh index ae87465..7975ed6 100755 --- a/scripts/check_for_update.sh +++ b/scripts/check_for_update.sh @@ -1,13 +1,15 @@ #!/bin/bash ## Download the latest_version file and convert it to a variable -cd /home/pi/rpidatv -rm /home/pi/rpidatv/latest_version.txt >/dev/null 2>/dev/null +cd /home/pi/rpidatv/scripts +rm /home/pi/rpidatv/scripts/latest_version.txt >/dev/null 2>/dev/null wget -q https://raw.githubusercontent.com/davecrump/rpidatv/master/scripts/latest_version.txt LATESTVERSION=$(head -c 9 latest_version.txt) +rm /home/pi/rpidatv/scripts/latest_version.txt >/dev/null 2>/dev/null ## Check installed version -INSTALLEDVERSION=$(head -c 9 scripts/installed_version.txt) +INSTALLEDVERSION=$(head -c 9 installed_version.txt) +cd /home/pi ## Compare versions if [ $LATESTVERSION -eq $INSTALLEDVERSION ]; From 3f0cae5a2fd992c23b4d535463bfb8035eb65b12 Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 18 Dec 2016 17:08:18 +0000 Subject: [PATCH 50/64] Evariste's rpidatv improvements --- scripts/a.sh | 10 +- src/avc2ts/avc2ts.cpp | 197 +++++++++++++++++-------- src/gui/tcanim.c | 7 +- src/rpidatv.c | 329 +++++++++++++++++++++++++++--------------- 4 files changed, 363 insertions(+), 180 deletions(-) diff --git a/scripts/a.sh b/scripts/a.sh index 5e9f717..fe3d949 100755 --- a/scripts/a.sh +++ b/scripts/a.sh @@ -179,7 +179,7 @@ let BITRATE_TS=SYMBOLRATE*2*188*FECNUM/204/FECDEN #let BITRATE_VIDEO=(BITRATE_TS*7)/10-72000 audio -let BITRATE_VIDEO=(BITRATE_TS*5)/10-10000 +let BITRATE_VIDEO=(BITRATE_TS*75)/100-10000 let DELAY=(BITRATE_VIDEO*8)/10 let SYMBOLRATE_K=SYMBOLRATE/1000 @@ -284,11 +284,11 @@ case "$MODE_OUTPUT" in "IP") OUTPUT_FILE="" ;; *) - sudo nice -n -30 $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q &;; + sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q &;; esac -$PATHRPI"/avc2ts" -b $BITRATE_VIDEO -m $BITRATE_TS -x $VIDEO_WIDTH -y $VIDEO_HEIGHT -f $VIDEO_FPS -d 400 -i 100 $OUTPUT_FILE -t 3 -p $PIDPMT -s $CHANNEL $OUTPUT_IP & +$PATHRPI"/avc2ts" -b $BITRATE_VIDEO -m $BITRATE_TS -x $VIDEO_WIDTH -y $VIDEO_HEIGHT -f $VIDEO_FPS -i 100 $OUTPUT_FILE -t 3 -p $PIDPMT -s $CHANNEL $OUTPUT_IP & $PATHRPI"/tcanim" $PATERNFILE"/*10" "48" "72" "CQ" "CQ CQ CQ DE "$CALL" IN $LOCATOR - DATV $SYMBOLRATEK KS FEC "$FECNUM"/"$FECDEN & @@ -338,7 +338,7 @@ case "$MODE_OUTPUT" in "IP") OUTPUT_FILE="" ;; *) - sudo $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q &;; + sudo nice -n -30 $PATHRPI"/rpidatv" -i videots -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q &;; esac $PATHRPI"/avc2ts" -b $BITRATE_VIDEO -m $BITRATE_TS -x $VIDEO_WIDTH -y $VIDEO_HEIGHT -f $VIDEO_FPS -i 100 $OUTPUT_FILE -t 3 -p $PIDPMT -s $CHANNEL $OUTPUT_IP & @@ -366,7 +366,7 @@ case "$MODE_OUTPUT" in sudo nice -n -30 $PATHRPI"/ffmpeg" -loglevel $MODE_DEBUG -i $TSVIDEOFILE -y $OUTPUT_BATC & ;; *) - sudo $PATHRPI"/rpidatv" -i $TSVIDEOFILE -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -x $PIN_I -y $PIN_Q &;; + sudo $PATHRPI"/rpidatv" -i $TSVIDEOFILE -s $SYMBOLRATE_K -c $FECNUM"/"$FECDEN -f $FREQUENCY_OUT -p $GAIN -m $MODE -l -x $PIN_I -y $PIN_Q &;; esac ;; diff --git a/src/avc2ts/avc2ts.cpp b/src/avc2ts/avc2ts.cpp index ff1d105..0898903 100644 --- a/src/avc2ts/avc2ts.cpp +++ b/src/avc2ts/avc2ts.cpp @@ -955,8 +955,9 @@ namespace rpi_omx exposure_value->xEVCompensation = xEVCompensation; exposure_value->nSensitivity = nSensitivity; exposure_value->bAutoSensitivity = bAutoSensitivity; - exposure_value->bAutoShutterSpeed=OMX_TRUE; - /*exposure_value->nShutterSpeedMsec=15000;*/ + //exposure_value->bAutoShutterSpeed=OMX_TRUE; + exposure_value->bAutoShutterSpeed=OMX_FALSE; + exposure_value->nShutterSpeedMsec=10000; ERR_OMX( OMX_SetConfig(component_, OMX_IndexConfigCommonExposureValue, &exposure_value), "set camera exposure value"); } @@ -1070,7 +1071,7 @@ namespace rpi_omx portDef->format.video.xFramerate = cameraPortDef->format.video.xFramerate; portDef->format.video.nStride = cameraPortDef->format.video.nStride; portDef->format.video.nBitrate = bitrate; - printf("FPS=%x\n",cameraPortDef->format.video.xFramerate); + //printf("FPS=%x\n",cameraPortDef->format.video.xFramerate); if (framerate) portDef->format.video.xFramerate = framerate<<16; @@ -1143,9 +1144,10 @@ namespace rpi_omx Parameter idr_st; idr_st->nPortIndex= OPORT; idr_st->nIDRPeriod = idr_period; + printf("idr %d p%d\n",idr_st->nIDRPeriod,idr_st->nPFrames); //idr_st->nPFrames=nPFrames; ERR_OMX( OMX_GetParameter(component_, OMX_IndexConfigVideoAVCIntraPeriod, &idr_st)," Get idr"); - //idr_st->nPFrames=idr_period-1; + idr_st->nPFrames=idr_period-1; idr_st->nIDRPeriod = idr_period; ERR_OMX( OMX_SetParameter(component_, OMX_IndexConfigVideoAVCIntraPeriod, &idr_st), "set idr"); @@ -1275,12 +1277,12 @@ LOW_LATENCY mode is not a mode intended for general use. There was a specific us } //Set QP restrict QP : means if encoder choose a QP which is not in this range, Frame is dropped - void setQP(int QMin=10,int QMax=50) + void setQPLimits(int QMin=10,int QMax=50) { Parameter QPMin; QPMin->nPortIndex=OPORT; QPMin->nU32=QMin; - ERR_OMX( OMX_SetParameter(component_,OMX_IndexParamBrcmVideoEncodeMaxQuant, &QPMin)," QPMin"); + ERR_OMX( OMX_SetParameter(component_,OMX_IndexParamBrcmVideoEncodeMinQuant, &QPMin)," QPMin"); Parameter QPMax; QPMax->nPortIndex=OPORT; @@ -1288,7 +1290,33 @@ LOW_LATENCY mode is not a mode intended for general use. There was a specific us ERR_OMX( OMX_SetParameter(component_,OMX_IndexParamBrcmVideoEncodeMaxQuant, &QPMax)," QPMax"); } - + + void setQFromBitrate(int Bitrate,int fps,int Width,int Height,int MotionType=0) + { + int Coeff=2; + //int QPCalculation=10+Width*Height*fps*Coeff/((Bitrate)); + //For 720*576, 25fps : QP=280birate⁻(0,345) + int QPCalculation=281*pow(Bitrate*(25/fps)*(720/Width)*(576/Height)/1000.0,-0.345)+10; + printf("QP=%d\n",QPCalculation); + if(QPCalculation>48) QPCalculation=48; //Fixme + if(QPCalculation<10) QPCalculation=10; //Fixme + + setQPLimits(QPCalculation,QPCalculation); + } + +// ONLY IF RATECONTROL is not CBR/VBR + void setQP(int QPi,int QPp) +{ + Parameter QP; + QP->nPortIndex=OPORT; + QP->nQpI=QPi; + QP->nQpP=QPp; + QP->nQpB=0; // No B Frame, only zero is allowed + + ERR_OMX( OMX_SetParameter(component_,OMX_IndexParamBrcmVideoEncodeQpP, &QP)," QP"); + + +} void setMultiSlice(int SliceSize) { @@ -1359,7 +1387,7 @@ So the advice was for MMAL_VIDEO_INTRA_REFRESH_CYCLIC_MROWS and cir_mbs set prob VideoStat->nPortIndex= OPORT; ERR_OMX( OMX_GetParameter(component_, OMX_IndexConfigBrcmPortStats, &VideoStat)," Get VideoStat"); struct timespec t; - clock_gettime(CLOCK_MONOTONIC, &t); + clock_gettime(CLOCK_REALTIME, &t); printf("VideoStat : %s ByteCount %d Buffer %d - Frame %d = %d Skip %d Discard %d Max Delta%d:%d TIME %li\n",/*VideoStat->nByteCount.nLowPart*8*25/VideoStat->nFrameCount,*/debug,VideoStat->nByteCount.nLowPart,VideoStat->nBufferCount,VideoStat->nFrameCount,VideoStat->nBufferCount-VideoStat->nFrameCount*2,VideoStat->nFrameSkips,VideoStat->nDiscards,VideoStat->nMaxTimeDelta.nHighPart,VideoStat->nMaxTimeDelta.nLowPart,( t.tv_sec -tbefore.tv_sec )*1000ul + ( t.tv_nsec - tbefore.tv_nsec)/1000000); tbefore=t; Count++; @@ -1822,7 +1850,7 @@ class TSEncaspulator int64_t *pcr_list = NULL; uint8_t *out = NULL; size_t fn = 0; - #define MAX_SIZE_PICTURE 65535 + #define MAX_SIZE_PICTURE 128000 uint8_t InternalBuffer[MAX_SIZE_PICTURE]; int InternalBufferSize=0; int VideoPid; @@ -1833,7 +1861,8 @@ class TSEncaspulator uint8_t TsUdpBuffer[1316]; char *OutputFilename; char *UdpOutput; - + //int FirstFrame=true; + //struct timespec *TimeFirstFrame; int m_sock; struct sockaddr_in m_client; @@ -1861,8 +1890,8 @@ class TSEncaspulator tsmain.cbr = 1; tsmain.ts_type = TS_TYPE_DVB; tsmain.pcr_period = 35; - tsmain.pat_period = 450; - tsmain.sdt_period = 450; + tsmain.pat_period = 400; + tsmain.sdt_period = 400; tsmain.nit_period = 450; tsmain.tdt_period = 1950; tsmain.tot_period = 1950; @@ -1898,7 +1927,7 @@ class TSEncaspulator 40000,//Fix Me : should have to be calculated Videofps); if(OutputFilename) - vout = fopen(OutputFilename, "wb"); + vout = fopen(OutputFilename, "w+"); } @@ -1910,15 +1939,21 @@ class TSEncaspulator static int TotalFrameSize=0; int ret; int len; - - /*if(OmxFlags&OMX_BUFFERFLAG_CODECCONFIG) + /*if((FirstFrame==true)&&(Time!=NULL)) + { + TimeFirstFrame.tv_sec=Time->tv_sec; + TimeFirstFrame.tv_nsec=Time->tv_nsec; + FirstFrame=false; + + }*/ + if(OmxFlags&OMX_BUFFERFLAG_CODECCONFIG) { memcpy(InternalBuffer,buffer,size); InternalBufferSize+=size; } - else*/ - //if(OmxFlags&OMX_BUFFERFLAG_ENDOFFRAME) - if(OmxFlags&OMX_BUFFERFLAG_ENDOFNAL) + else + if(OmxFlags&OMX_BUFFERFLAG_ENDOFFRAME) + //if(OmxFlags&OMX_BUFFERFLAG_ENDOFNAL) { if((OmxFlags&OMX_BUFFERFLAG_ENDOFFRAME)&&!(OmxFlags&OMX_BUFFERFLAG_CODECCONFIG)) { @@ -1950,7 +1985,7 @@ class TSEncaspulator tsframe.pid=VideoPid; int MaxVideoBitrate=tsmain.muxrate-10000; //MINUS SI/PSI TotalFrameSize+=tsframe.size; - TimeToTransmitFrameUs= (TotalFrameSize*8.0*1000000.0/(float)MaxVideoBitrate); + TimeToTransmitFrameUs= (TotalFrameSize*8.0*1000000.0*1.1/(float)MaxVideoBitrate); //if(OmxFlags&OMX_BUFFERFLAG_SYNCFRAME) if(Time==NULL)//Frame base calculation { @@ -1967,9 +2002,9 @@ class TSEncaspulator } else { - //printf("%d:%d \n",Time->tv_sec,Time->tv_nsec);; - vdts=(Time->tv_sec*1000+Time->tv_nsec/1000000)*90L ; //TimeToTransmitFrameUs*90L/1000; - vpts=(Time->tv_sec*1000+Time->tv_nsec/1000000)*90L; + //printf("%d:%d %lld\n",Time->tv_sec,Time->tv_nsec/(int64_t)1E6L,key_frame); + vdts=(Time->tv_sec*1000+Time->tv_nsec/1000000.0)*90L ; //TimeToTransmitFrameUs*90L/1000; + vpts=(Time->tv_sec*1000+Time->tv_nsec/1000000.0)*90L; //tsframe.cpb_initial_arrival_time = vdts*300L - DelayPTS*90*300L ; //tsframe.cpb_final_arrival_time = vdts*300L - DelayPTS*90*300L ; @@ -1982,17 +2017,43 @@ class TSEncaspulator tsframe.random_access = key_frame; tsframe.priority = key_frame; tsframe.ref_pic_idc = 0; //Fixme (frame->pict_type == AV_PICTURE_TYPE_B) ? 1 : 0 - - ret = ts_write_frames(writer, &tsframe, 1, &out, &len, &pcr_list); + if(key_frame>1) //Skip first frame + ret = ts_write_frames(writer, &tsframe, 1, &out, &len, &pcr_list); + else + len=0; if (len) { - //fprintf(stderr, "Muxed VIDEO len: %d %d\n", len, ret); - if(vout) fwrite(out, 1, len, vout); + /*if(len>10000) + { + printf("TimeToTransmitFrameUs=%d %d bitrate=%d\n",TimeToTransmitFrameUs,len,len*8*Videofps); + fprintf(stderr, "Muxed VIDEO len: %d %d\n", len, ret); + }*/ + static struct timespec gettime_now,gettime_first; + long time_difference; + clock_gettime(CLOCK_REALTIME, &gettime_now); + time_difference = gettime_now.tv_nsec - gettime_first.tv_nsec; + if(time_difference<0) time_difference+=1E9L; + + clock_gettime(CLOCK_REALTIME, &gettime_first); + + if(vout) + { + int n,ret; + ret=ioctl(fileno(vout), FIONREAD, &n); + if(n>40000) + printf("Overflow outpipe %ld Pipe %d\n",time_difference,n); + + fwrite(out, 1, len, vout); + } if(UdpOutput) udp_send(out,len); + clock_gettime(CLOCK_REALTIME, &gettime_now); + time_difference = gettime_now.tv_nsec - gettime_first.tv_nsec; + if(time_difference<0) time_difference+=1E9; + //if(time_difference>5000000) printf("Overflow ! timetowrite=%ld\n",time_difference); } else { - //fprintf(stderr, "Len=0 Ret=%d\n",ret); + fprintf(stderr, "tswrite frame Len=0 Ret=%d tsframe.size=%d originalsize=%d\n",ret,tsframe.size,size); } } } @@ -2071,7 +2132,7 @@ class CameraTots VideoRenderer videorender; int EncVideoBitrate; bool FirstTime=true; - uint64_t key_frame=1; + uint64_t key_frame=10; VideoFromat CurrentVideoFormat; int DelayPTS; struct timespec InitTime; @@ -2104,14 +2165,15 @@ class CameraTots portDef->format.video.nFrameWidth = vfResized.width; portDef->format.video.nFrameHeight = vfResized.height; - encoder.setupOutputPortFromCamera(portDef, VideoBitrate); - encoder.setBitrate(VideoBitrate,/*OMX_Video_ControlRateVariable*/OMX_Video_ControlRateConstant); + encoder.setupOutputPortFromCamera(portDef, VideoBitrate*2); + encoder.setBitrate(VideoBitrate*2,OMX_Video_ControlRateVariable/*OMX_Video_ControlRateConstant*/); encoder.setCodec(OMX_VIDEO_CodingAVC); encoder.setIDR(IDRPeriod); encoder.setSEIMessage(); if(EnableMotionVectors) encoder.setVectorMotion(); - encoder.setQP(10,40); + encoder.setQFromBitrate(VideoBitrate,fps,CurrentVideoFormat.width,CurrentVideoFormat.height); + encoder.setLowLatency(); encoder.setSeparateNAL(); if(RowBySlice) @@ -2126,7 +2188,7 @@ class CameraTots OMX_VIDEO_AVCProfileHigh = 0x08, //< High profile OMX_VIDEO_AVCProfileConstrainedBaseline */ - encoder.setProfileLevel(OMX_VIDEO_AVCProfileBaseline); + encoder.setProfileLevel(OMX_VIDEO_AVCProfileHigh); // With Main Profile : have more skipped frame tsencoder.SetOutput(FileName,Udp); @@ -2193,7 +2255,8 @@ ERR_OMX( OMX_SetupTunnel(camera.component(), Camera::OPORT_PREVIEW, videorender. { //encoder.getEncoderStat(encBuffer.flags()); - encoder.setDynamicBitrate(EncVideoBitrate); + //encoder.setDynamicBitrate(EncVideoBitrate); + //encoder.setQP(20,20); //printf("Len = %"\n",encBufferLow if(encBuffer.flags() & OMX_BUFFERFLAG_CODECSIDEINFO) { @@ -2228,9 +2291,9 @@ ERR_OMX( OMX_SetupTunnel(camera.component(), Camera::OPORT_PREVIEW, videorender. clock_gettime(CLOCK_REALTIME, &gettime_now); gettime_now.tv_sec=(int)difftime(gettime_now.tv_sec,InitTime.tv_sec); - tsencoder.AddFrame(encBuffer.data(),encBuffer.dataSize(),OmxFlags,key_frame,DelayPTS,&gettime_now); + // tsencoder.AddFrame(encBuffer.data(),encBuffer.dataSize(),OmxFlags,key_frame,DelayPTS,&gettime_now); - //tsencoder.AddFrame(encBuffer.data(),encBuffer.dataSize(),OmxFlags,key_frame,DelayPTS); + tsencoder.AddFrame(encBuffer.data(),encBuffer.dataSize(),OmxFlags,key_frame,DelayPTS); @@ -2244,6 +2307,8 @@ ERR_OMX( OMX_SetupTunnel(camera.component(), Camera::OPORT_PREVIEW, videorender. encBuffer.setFilled(false); encoder.callFillThisBuffer(); } + else + usleep(1000); } @@ -2311,7 +2376,7 @@ class PictureTots //ImageEncode colorconverter; int EncVideoBitrate; bool FirstTime=true; - uint key_frame=1; + uint key_frame=0; VideoFromat CurrentVideoFormat; int DelayPTS; int Videofps; @@ -2378,15 +2443,17 @@ static const int Mode_VNCCLIENT=3; VideoFromat vfResized = VideoFormat; - encoder.setupOutputPort(VideoFormat,VideoBitrate,fps); - - encoder.setBitrate(VideoBitrate,/*OMX_Video_ControlRateVariable*/OMX_Video_ControlRateConstant); - encoder.setCodec(OMX_VIDEO_CodingAVC); + encoder.setupOutputPort(VideoFormat,VideoBitrate*2,fps); + //OMX_Video_ControlRateDisable seems not supported !!! + encoder.setCodec(OMX_VIDEO_CodingAVC); + encoder.setBitrate(VideoBitrate*2,OMX_Video_ControlRateVariable/*OMX_Video_ControlRateConstant*/); + encoder.setIDR(IDRPeriod); encoder.setSEIMessage(); if(EnableMotionVectors) encoder.setVectorMotion(); - - encoder.setQP(10,40); + encoder.setQFromBitrate(VideoBitrate,Videofps,CurrentVideoFormat.width,CurrentVideoFormat.height); + //encoder.setQPLimits(30,30); + //encoder.setQP(24,24); encoder.setLowLatency(); encoder.setSeparateNAL(); if(RowBySlice) @@ -2401,7 +2468,7 @@ static const int Mode_VNCCLIENT=3; OMX_VIDEO_AVCProfileHigh = 0x08, //< High profile OMX_VIDEO_AVCProfileConstrainedBaseline */ - encoder.setProfileLevel(OMX_VIDEO_AVCProfileBaseline); + encoder.setProfileLevel(OMX_VIDEO_AVCProfileHigh); // With Main Profile : have more skipped frame tsencoder.SetOutput(FileName,Udp); @@ -2576,7 +2643,7 @@ void Run(bool want_quit) { Buffer& encBuffer = encoder.outBuffer(); Buffer& PictureBuffer = resizer.inBuffer(); - + static int QP=45; if(!want_quit&&(FirstTime||PictureBuffer.filled())) { @@ -2645,8 +2712,14 @@ void Run(bool want_quit) { //encoder.getEncoderStat(encBuffer.flags()); - encoder.setDynamicBitrate(EncVideoBitrate); + //encoder.setDynamicBitrate(EncVideoBitrate); //printf("Len = %"\n",encBufferLow + /*if(key_frame%250==0) + { + QP--; + encoder.setQPLimits(QP,QP); + printf("------ QP =%d\n",QP); + }*/ if(encBuffer.flags() & OMX_BUFFERFLAG_CODECSIDEINFO) { printf("CODEC CONFIG>\n"); @@ -2680,7 +2753,20 @@ void Run(bool want_quit) struct timespec gettime_now; clock_gettime(CLOCK_REALTIME, &gettime_now); - gettime_now.tv_sec=(int)difftime(gettime_now.tv_sec,InitTime.tv_sec); +//printf("Avnt %ld:%ld - %ld:%ld \n",gettime_now.tv_sec,gettime_now.tv_nsec,InitTime.tv_sec,InitTime.tv_nsec); + //gettime_now.tv_sec=(int)difftime(gettime_now.tv_sec,InitTime.tv_sec); +gettime_now.tv_sec=gettime_now.tv_sec-InitTime.tv_sec; +if(gettime_now.tv_nsec 1000) - { - std::cerr << "" << std::endl; - break; - } - - } - usleep(1000); + } @@ -3027,6 +3105,7 @@ else signal(SIGINT, SIG_DFL); signal(SIGTERM, SIG_DFL); signal(SIGQUIT, SIG_DFL); + signal(SIGKILL, SIG_DFL); #endif if(TypeInput==0) { diff --git a/src/gui/tcanim.c b/src/gui/tcanim.c index 6342797..bf18baf 100644 --- a/src/gui/tcanim.c +++ b/src/gui/tcanim.c @@ -187,7 +187,7 @@ void draw(int w, int h) { Rect (0,20,720,34) ; Fill (255,255,255,1) ; Text (w-frames*2,28,bannertext,SansTypeface,19) ; - frames++ ; + frames+=20 ; temp = TextWidth (bannertext,SansTypeface,19) ; if (temp - frames * 2 < -720) { @@ -325,7 +325,7 @@ int main(int argc, char **argv) printf ("\n") ; init (&w, &h); - w = 720 ; h = 576 ; + //w = 720 ; h = 576 ; makeImage() ; Start (w,h) ; vgSetPixels (0,0,save[0],0,0,w,h) ; @@ -380,10 +380,11 @@ int main(int argc, char **argv) counter2++ ; draw(w, h); End() ; + usleep(400000); cycles++ ; namefields++ ; - if (namefields >= nameseconds * 50) + if (namefields >= nameseconds * 5) { nameindex++ ; namefields = 0 ; diff --git a/src/rpidatv.c b/src/rpidatv.c index 2a0fdb9..5a70e01 100644 --- a/src/rpidatv.c +++ b/src/rpidatv.c @@ -52,6 +52,7 @@ #include #include +#include extern void dvbsenco_init (void) ; extern uchar* dvbsenco (uchar*) ; @@ -63,7 +64,7 @@ extern uchar* interleave (uchar* packetin) ; #define PROGRAM_VERSION "2.0.0" //Minimum Time in us to sleep -#define KERNEL_GRANULARITY 20000 +#define KERNEL_GRANULARITY 10000 #define SCHED_PRIORITY 30 //Linux scheduler priority. Higher = more realtime @@ -81,6 +82,8 @@ extern uchar* interleave (uchar* packetin) ; #define PLLFREQ_PWM 1000000000 //PLLC = 1GHZ , 1.2GHZ ON PIZERO ! But Unstable -> Go back to PLL_D #define PLL_PWM 0x6 +#define PLLFREQ_192 19200000 //PLLA = 19.2MHZ +#define PLL_192 0x1 #define CARRIERFREQ 100000000 // Carrier frequency is 100MHz @@ -129,29 +132,32 @@ terminate(int dummy) gpio_reg[0x28/4]=1<<21; // Set PTT OFF - if (dma_reg) { + if (dma_reg) + { dma_reg[DMA_CS+DMA_CHANNEL*0x40] = BCM2708_DMA_INT | BCM2708_DMA_END; udelay(100); dma_reg[DMA_CS+DMA_CHANNEL*0x40] = BCM2708_DMA_RESET; udelay(100); - //printf("Reset DMA Done\n"); - clk_reg[GPCLK_CNTL] = 0x5A << 24 | 0 << 9 | 1 << 4 | 6; //NO MASH !!! - udelay(500); + printf("Reset DMA Done\n"); + //clk_reg[GPCLK_CNTL] = 0x5A << 24 | 0 << 9 | 1 << 4 | 6; //NO MASH !!! + //udelay(500); gpio_reg[GPFSEL0] = (gpio_reg[GPFSEL0] & ~(7 << 12)) | (0 << 12); //DISABLE CLOCK - In case used by digilite - clk_reg[PWMCLK_CNTL] = 0x5A000006 | (0 << 9) ; + //clk_reg[PWMCLK_CNTL] = 0x5A000006 | (0 << 9) ; + clk_reg[PWMCLK_CNTL] = 0x5A000000|PLL_PWM; udelay(500); - clk_reg[PCMCLK_CNTL] = 0x5A000006; + clk_reg[PCMCLK_CNTL] = 0x5A000000|PLL_PWM; udelay(500); //printf("Resetpcm Done\n"); pwm_reg[PWM_DMAC] = 0; udelay(100); pwm_reg[PWM_CTL] = PWMCTL_CLRF; udelay(100); + pwm_reg[PWM_FIFO]=0L; //printf("Reset pwm Done\n"); } if (mbox.virt_addr != NULL) { unmapmem(mbox.virt_addr, NUM_PAGES * PAGE_SIZE); - //printf("Unmapmem Done\n"); + printf("Unmapmem Done\n"); mem_unlock(mbox.handle, mbox.mem_ref); //printf("Unmaplock Done\n"); mem_free(mbox.handle, mbox.mem_ref); @@ -327,7 +333,7 @@ pwm_reg[PWM_CTL] = 0; // Write a frequency sample - cbp->info = BCM2708_DMA_NO_WIDE_BURSTS | BCM2708_DMA_WAIT_RESP |BCM2708_DMA_D_DREQ /*| BCM2708_DMA_PER_MAP(5)*/; + cbp->info = BCM2708_DMA_NO_WIDE_BURSTS /* BCM2708_DMA_WAIT_RESP |BCM2708_DMA_D_DREQ | BCM2708_DMA_PER_MAP(5)*/; cbp->src = mem_virt_to_phys(ctl->sample + samplecnt); cbp->dst = phys_pwm_fifo_addr; cbp->length = 4; @@ -339,7 +345,7 @@ pwm_reg[PWM_CTL] = 0; // Delay - cbp->info = /*BCM2708_DMA_SRC_IGNOR |*/ BCM2708_DMA_NO_WIDE_BURSTS | BCM2708_DMA_WAIT_RESP | BCM2708_DMA_D_DREQ | BCM2708_DMA_PER_MAP(2); + cbp->info = BCM2708_DMA_SRC_IGNOR |/* BCM2708_DMA_NO_WIDE_BURSTS | BCM2708_DMA_WAIT_RESP |*/ BCM2708_DMA_D_DREQ | BCM2708_DMA_PER_MAP(2); cbp->src = mem_virt_to_phys(virtbase); cbp->dst = phys_fifo_addr;//Delay with PCM cbp->length = 4; @@ -393,20 +399,20 @@ int InitIQ(int DigithinMode) gpioSetMode(21,1); // GPIO 21 - PIN 40 is output for PTT gpio_reg[0x1C/4]=1<<21; // Set PTT ON - unsigned int SRClock=PLLFREQ_PCM/(1000*SymbolRate); + unsigned int SRClock; //unsigned int SRClockPCM=(PLLFREQ_PCM/(SymbolRate*1000*64))*64; //SymbolRate = PLLFREQ/(SRClockPCM*1000); - uint32_t DigiThin_ClockBySymbol=0; + // CLK_DIGITHIN 500MHZ(PLLD)/4MHZ = 125 int CLK_DIGITHIN=PLLFREQ_PCM/4E6; //#define CLK_4MHZ 125 if(DigithinMode==1) { - + uint32_t DigiThin_ClockBySymbol; // GPIO4 needs to be ALT FUNC 0 to otuput the clock gpio_reg[GPFSEL0] = (gpio_reg[GPFSEL0] & ~(7 << 12)) | (4 << 12); //ENABLE CLOCK - In case used by digilite @@ -417,7 +423,7 @@ int InitIQ(int DigithinMode) usleep(100); DigiThin_ClockBySymbol=( PLLFREQ_PCM/(CLK_DIGITHIN)); //SRClock=DigiThin_ClockBySymbol*CLK_4MHZ; - printf("Digithin Clock at 4MHZ:%ld clock by Symbol (SR=%d)\n",(long int)DigiThin_ClockBySymbol,4000000/(SymbolRate*1000L)); + printf("Digithin Clock at 4MHZ:%d clock by Symbol (SR=%ld)\n",DigiThin_ClockBySymbol,4000000/(SymbolRate*1000L)); udelay(500); clk_reg[GPCLK_CNTL] = 0x5A << 24 | 0 << 9 | 1 << 4 | PLL_PCM; //NO MASH !!! udelay(500); @@ -490,7 +496,7 @@ int InitIQ(int DigithinMode) - + SRClock=PLLFREQ_PCM/(1000*SymbolRate); #ifdef DIGILITE_CLOCK_MODE printf("\n ******** DIGILITE CLOCK MODE*********** \n"); printf("SRClok=%d SYmbolRate=%dKSymb\n",SRClock,500000/SRClock); @@ -527,11 +533,26 @@ int InitIQ(int DigithinMode) } pwm_reg[PWM_CTL] = 0; - clk_reg[PWMCLK_CNTL] = 0x5A000000 | (0 << 9) |PLL_PCM ; - udelay(300); - clk_reg[PWMCLK_DIV] = 0x5A000000 | ((SRClock)<<12); //*2: FIXME : Because SRClock is normaly based on 500Mhz not 1GH - udelay(300); - clk_reg[PWMCLK_CNTL] = 0x5A000010 | (0 << 9) | PLL_PCM; + if(SymbolRate<250) + { + SRClock=PLLFREQ_192/(1000*SymbolRate); + clk_reg[PWMCLK_CNTL] = 0x5A000000 | (0 << 9) |PLL_192 ; + udelay(300); + clk_reg[PWMCLK_DIV] = 0x5A000000 | ((SRClock)<<12); //*2: FIXME : Because SRClock is normaly based on 500Mhz not 1GH + udelay(300); + clk_reg[PWMCLK_CNTL] = 0x5A000010 | (0 << 9) | PLL_192; + printf("Real SR = %d KSymbol / Clock Divider =%d \n",PLLFREQ_192/(SRClock*1000),SRClock); + } + else + { + SRClock=PLLFREQ_PCM/(1000*SymbolRate); + clk_reg[PWMCLK_CNTL] = 0x5A000000 | (0 << 9) |PLL_PCM ; + udelay(300); + clk_reg[PWMCLK_DIV] = 0x5A000000 | ((SRClock)<<12); //*2: FIXME : Because SRClock is normaly based on 500Mhz not 1GH + udelay(300); + clk_reg[PWMCLK_CNTL] = 0x5A000010 | (0 << 9) | PLL_PCM; + printf("Real SR = %d KSymbol / Clock Divider =%d \n",PLLFREQ_PCM/(SRClock*1000),SRClock); + } pwm_reg[PWM_RNG1] = 32;// 32 Mandatory for Serial Mode without gap udelay(100); pwm_reg[PWM_RNG2] = 32;// 32 Mandatory for Serial Mode without gap @@ -541,7 +562,7 @@ int InitIQ(int DigithinMode) pwm_reg[PWM_CTL] = PWMCTL_CLRF; udelay(100); - printf("Real SR = %d KSymbol / Clock Divider =%d \n",PLLFREQ_PCM/(SRClock*1000),SRClock); + //printf("Playing File =%s at %d KSymbol FEC=%d ",argv[1],PLLFREQ_PCM/SRClock/1000,abs(FEC)); // --------------------- INIT DMA IQ ------------------------------ @@ -551,7 +572,7 @@ int InitIQ(int DigithinMode) uint32_t phys_pwm_fifo_addr = 0x7e20c000 + 0x18;//PWM int samplecnt; - NUM_SAMPLES = NUM_SAMPLES_MAX/4; // Minize the buffer in IQ Mode + NUM_SAMPLES = NUM_SAMPLES_MAX/2; // Minize the buffer in IQ Mode for (samplecnt = 0; samplecnt < NUM_SAMPLES; samplecnt++) { // Write a PWM sample @@ -697,8 +718,9 @@ int InitDTX1() } -#define BIG_BUFFER_SIZE (18800*4) -#define BURST_MEM_SIZE 188 +//#define BIG_BUFFER_SIZE ((int)((NUM_SAMPLES*4*1.5)/188)*188) +#define BIG_BUFFER_SIZE (18800*8*2) +#define BURST_MEM_SIZE (188) typedef struct circular_buffer { unsigned char *buffer; @@ -734,13 +756,17 @@ void store_in_buffer(unsigned char data) void store_in_buffer_1880(unsigned char *data) { - //while(((unsigned int)(my_circular_buffer.head + 18800) % BIG_BUFFER_SIZE)==my_circular_buffer.tail) - // usleep(50000); - + while(((unsigned int)(my_circular_buffer.head + BURST_MEM_SIZE) % BIG_BUFFER_SIZE)==my_circular_buffer.tail) + { + //printf("Bigbuffer plein\n"); + usleep(50000); + } + pthread_mutex_lock(&my_circular_buffer.lock); + memcpy(my_circular_buffer.buffer+my_circular_buffer.head,data,BURST_MEM_SIZE); unsigned int next = (unsigned long)(my_circular_buffer.head + BURST_MEM_SIZE) % BIG_BUFFER_SIZE; my_circular_buffer.head = next; - + pthread_mutex_unlock(&my_circular_buffer.lock); } @@ -763,11 +789,11 @@ char read_from_buffer() void read_from_buffer_188(unsigned char *Dest) { - while(BufferAvailable()<188) usleep(0); - //pthread_mutex_lock(&my_circular_buffer.lock); + while(BufferAvailable()<188) {usleep(5000);printf("B");} // Carefull of deadlock ! BE sure to have available + pthread_mutex_lock(&my_circular_buffer.lock); memcpy(Dest,my_circular_buffer.buffer+my_circular_buffer.tail,188); my_circular_buffer.tail = (unsigned int)(my_circular_buffer.tail + 188) % BIG_BUFFER_SIZE; - //pthread_mutex_unlock(&my_circular_buffer.lock); + pthread_mutex_unlock(&my_circular_buffer.lock); } void *FillBigBuffer (void * arg) @@ -784,14 +810,29 @@ void *FillBigBuffer (void * arg) prctl(PR_SET_NAME, name, 0, 0, 0); pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL); pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, NULL); - +struct stat bufstat; +int ret; +ret=fstat(fdts,&bufstat); + if(S_ISFIFO(bufstat.st_mode)) + printf("Using a Pipe\n"); + else + printf("Using a File %d %d\n",ret,bufstat.st_mode); while(EndOfApp==0) { TotalByteRead=0; //usleep(200); do { - + int n; + if(S_ISFIFO(bufstat.st_mode)) + { + do + { + ioctl(fdts, FIONREAD, &n); + if(n<(BURST_MEM_SIZE)) {usleep(10000);} + } + while(n<(BURST_MEM_SIZE)); + } ByteRead=read(fdts,buff188+TotalByteRead,BURST_MEM_SIZE-TotalByteRead); if(ByteRead<=0) @@ -813,6 +854,11 @@ void *FillBigBuffer (void * arg) } else { + if(ByteRead!=(BURST_MEM_SIZE-TotalByteRead)) + { + //usleep(25000); + + } TotalByteRead+=ByteRead; //usleep(2000); @@ -821,17 +867,25 @@ void *FillBigBuffer (void * arg) } while (TotalByteReadBIG_BUFFER_SIZE/8) + read_from_buffer_188(Dummy); + } + //usleep(1000); } //printf("Lock BigBuffer\n"); - pthread_mutex_lock(&my_circular_buffer.lock); store_in_buffer_1880(buff188); + //printf("#"); /* for(NbWrite=0;NbWrite<1880;NbWrite++) @@ -839,7 +893,8 @@ void *FillBigBuffer (void * arg) store_in_buffer(buff188[NbWrite]); } */ - pthread_mutex_unlock(&my_circular_buffer.lock); + + // printf("UNLock BigBuffer\n"); } @@ -952,7 +1007,7 @@ main(int argc, char **argv) if(strcmp("3/4",optarg)==0) FEC=3; if(strcmp("5/6",optarg)==0) FEC=5; if(strcmp("7/8",optarg)==0) FEC=7; - if(strcmp("carrier",optarg)==0) FEC=0;//CARRIER MODE + if(strcmp("carrier",optarg)==0) {printf("Rpidatv:Carrier mode\n");FEC=0;}//CARRIER MODE if(strcmp("test",optarg)==0) FEC=-1;//TEST MODE break; case 'h': // help @@ -1017,7 +1072,7 @@ main(int argc, char **argv) //data=malloc(DATA_FILE_SIZE); - CalibrateSystem(); + //CalibrateSystem(); dvbsenco_init() ; @@ -1059,7 +1114,7 @@ main(int argc, char **argv) dma_reg[DMA_CS+DMA_CHANNEL*0x40] = BCM2708_DMA_RESET; udelay(1000); dma_reg[DMA_CS+DMA_CHANNEL*0x40] = BCM2708_DMA_INT | BCM2708_DMA_END; - udelay(100); + udelay(1000); @@ -1140,10 +1195,14 @@ else #endif -//uchar PacketNULL[188]; -//PacketNULL[0]=0x47; -//PacketNULL[1]=0x00; -//for(i=2;i<188;i++) PacketNULL[i]=0xFF; +uchar PacketNULL[BURST_MEM_SIZE]; +int k; +for(k=0;k0) { - //printf("Init Filling Memory buffer %d\n",BufferAvailable()); - //printf("."); - usleep(500); + while(BufferAvailable()<(BIG_BUFFER_SIZE*5/10)) // 1/10 SECOND BUFFERING DEPEND ON SYMBOLRATE OR 80% BUFFERSIZE + { + //printf("Init Filling Memory buffer %d\n",BufferAvailable()); + //printf("."); + usleep(10000); + } } /* int NbByteInitRead=0; @@ -1249,36 +1310,36 @@ for (;;) } - if(Init==0) - { + TimeToSleep=((NUM_SAMPLES-free_slots-204*2*4)*1000)/((float)SymbolRate*2);//-22000; // 22ms de Switch process //TimeToSleep=15000+KERNEL_GRANULARITY; //TimeToSleep=25000; - } - else - TimeToSleep=30000; + + //printf("cur_cb %lx FreeSlots = %d Time to sleep=%d\n",cur_cb,free_slots,TimeToSleep); //printf("Buffer Available=%d\n",BufferAvailable()); clock_gettime(CLOCK_REALTIME, &gettime_now); - start_time = gettime_now.tv_nsec; - if(TimeToSleep>=(2200+KERNEL_GRANULARITY)) // 2ms : Time to process File/Canal Coding - { - - udelay(TimeToSleep-(2200+KERNEL_GRANULARITY)); - TimeToSleep=0; - } + start_time = gettime_now.tv_nsec; + if(Init==0) + { + if(TimeToSleep>=(2200+KERNEL_GRANULARITY)) // 2ms : Time to process File/Canal Coding + { + if(TimeToSleep>=20000) TimeToSleep=20000; + udelay(TimeToSleep-(2200+KERNEL_GRANULARITY)); + TimeToSleep=0; + } - else - { + else + { - //udelay(TimeToSleep); - sched_yield(); - //TimeToSleep=0; - if(free_slots>(NUM_SAMPLES*9/10)) - printf("Buffer nearly empty...%d/%d\n",free_slots,NUM_SAMPLES); + printf("!"); + usleep(1000);//20 ms mini !! + if(free_slots>(NUM_SAMPLES*9/10)) + printf("Buffer nearly empty...%d/%d\n",free_slots,NUM_SAMPLES); + } } @@ -1307,7 +1368,7 @@ for (;;) free_slots=free_slots_now; // FIX IT : Max(freeslot et Numsample/8) - if((Init==1)&&(free_slots <= 204*2*4 /*NUM_SAMPLES/8*/)) + if(((Init==1)&&(free_slots <= 204*2*4 /*NUM_SAMPLES/8*/))||(FEC==0)) { printf("%ld:%ld : End of Fulling buffer \n",gettime_now.tv_sec,gettime_now.tv_nsec); dma_reg[DMA_CS+DMA_CHANNEL*0x40] = 0x10880001; // go, mid priority, wait for outstanding writes :7 Seems Max Priority @@ -1317,14 +1378,18 @@ for (;;) clock_gettime(CLOCK_REALTIME, &gettime_now); start_time = gettime_now.tv_nsec; - - //printf("Process LOCK\n"); #ifdef WITH_MEMORY_BUFFER - pthread_mutex_lock(&my_circular_buffer.lock); - + if((Init==0)&&(free_slots > (NUM_SAMPLES*9/10))&&(BufferAvailable()<=188*2)) + { + int k; + store_in_buffer_1880(PacketNULL); + + + printf("Underflow\n"); + } #endif - while ((free_slots>204*2*4)&&(BufferAvailable()>188*2)) //204Bytes*2(IQ)*4 paires/octet + while (((free_slots>204*2*4)&&(BufferAvailable()>188*2))||(FEC==0)) //204Bytes*2(IQ)*4 paires/octet { static uint32_t BuffAligned[256]; @@ -1352,7 +1417,7 @@ for (;;) if(Loop==1) { close(fdts); - fdts = open(argv[1], 'r'); + fdts = open(FileName, 'r'); } else { @@ -1363,17 +1428,9 @@ for (;;) } } #else - int ii; - while(BufferAvailable()<188) - { - //printf("!"); - sleep(0); - } - //pthread_mutex_lock(&my_circular_buffer.lock); + read_from_buffer_188(buff); - //for(ii=0;ii<188;ii++) buff[ii]=read_from_buffer(); - //pthread_mutex_unlock(&my_circular_buffer.lock); - //TotalByteRead+=188; + #endif } else @@ -1454,9 +1511,7 @@ for (;;) */ } //printf("Process UNLOCK\n"); - #ifdef WITH_MEMORY_BUFFER - pthread_mutex_unlock(&my_circular_buffer.lock); - #endif + clock_gettime(CLOCK_REALTIME, &gettime_now); time_difference = gettime_now.tv_nsec - start_time; if(time_difference<0) time_difference+=1E9; @@ -1476,7 +1531,7 @@ for (;;) //********************************* MODE IQ ************************************** if(ModeIQ==1) { - + static int StatusCompteur=0; cur_cb = mem_phys_to_virt(dma_reg[DMA_CONBLK_AD+DMA_CHANNEL*0x40]); this_sample = (cur_cb - (uint32_t)virtbase) / (sizeof(dma_cb_t) ); last_sample = (last_cb - (uint32_t)virtbase) / (sizeof(dma_cb_t) ); @@ -1489,16 +1544,23 @@ for (;;) //printf("FreeSlots = %d Time to sleep=%d\n",free_slots,TimeToSleep); clock_gettime(CLOCK_REALTIME, &gettime_now); - start_time = gettime_now.tv_nsec; - if(TimeToSleep>=(2000+KERNEL_GRANULARITY)){ - if(TimeToSleep>=150000) TimeToSleep=150000; //Digithin should be every 250ms - udelay(TimeToSleep-(2000+KERNEL_GRANULARITY)); - } - else - { - //usleep(0);//20 ms mini !! - if(free_slots>(NUM_SAMPLES*9/10)) - printf("Buffer nearly empty...%d/%d\n",free_slots,NUM_SAMPLES); + start_time = gettime_now.tv_nsec; + if(Init==0) + { + if(TimeToSleep>=(2000+KERNEL_GRANULARITY)){ + if(TimeToSleep>=20000) TimeToSleep=20000; //Digithin should be every 250ms + udelay(TimeToSleep-(2000+KERNEL_GRANULARITY)); + } + else + { + printf("!"); + usleep(1000);//20 ms mini !! + if(free_slots>(NUM_SAMPLES*9/10)) + { + //printf("Buffer nearly empty...%d/%d\n",free_slots,NUM_SAMPLES); + //printf("$"); + } + } } //printf("FreeSlots = %d Time to sleep=%d\n",free_slots,TimeToSleep); @@ -1543,12 +1605,21 @@ for (;;) clock_gettime(CLOCK_REALTIME, &gettime_now); time_difference = gettime_now.tv_nsec - start_time; if(time_difference<0) time_difference+=1E9; + if(StatusCompteur%100==0) + { + + //SetUglyFrequency(TuneFrequency); + //TuneFrequency+=5000.0; + + printf("Memavailable %d/%d FreeSlot=%d/%d Bitrate : %f\n",BufferAvailable(),BIG_BUFFER_SIZE,free_slots_now,NUM_SAMPLES,(1000000.0*(free_slots_now-free_slots))/(float)time_difference); + } + StatusCompteur++; //printf("DiffTime = %ld FreeSlot=%ld Bitrate : %f\n",time_difference,free_slots_now-free_slots,(1000000.0*(free_slots_now-free_slots)*16.0)/(float)time_difference); free_slots=free_slots_now; - if((Init==1)&&(free_slots <= (204*8*2)/*NUM_SAMPLES/8*/)) + if((Init==1)&&(free_slots <= (204*8*2))) { printf("%ld:%ld : End of Fulling buffer \n",gettime_now.tv_sec,gettime_now.tv_nsec); dma_reg[DMA_CS+DMA_CHANNEL*0x40] = 0x10880001; // go, mid priority, wait for outstanding writes :7 Seems Max Priority @@ -1567,7 +1638,32 @@ for (;;) clock_gettime(CLOCK_REALTIME, &gettime_now); start_time = gettime_now.tv_nsec; - while ((free_slots > (204*8*2))&&(BufferAvailable()>188*8)) //204Bytes*2(IQ)/32 + #ifdef WITH_MEMORY_BUFFER + if((Init==0)&&(free_slots > (NUM_SAMPLES*9/10))&&(BufferAvailable()<=188*8)) + { + int k; + store_in_buffer_1880(PacketNULL); + /*while(BufferAvailable()<188*8) + { + //printf("!"); + sleep(1000); + } + */ + /* + pthread_mutex_lock(&my_circular_buffer.lock); + for(k=0;k<8*2;k++) + store_in_buffer_1880(PacketNULL); + pthread_mutex_unlock(&my_circular_buffer.lock); + */ + + printf("Underflow\n"); + } + #endif + #ifdef WITH_MEMORY_BUFFER + while ((free_slots > (204*8*2))&&((BufferAvailable()>=188*8)||(FEC==0))) //204Bytes*2(IQ)/32 + #else + while ((free_slots > (204*8*2))||(FEC==0)) //204Bytes*2(IQ)/32 + #endif { //static uint32_t BuffAligned[256]; @@ -1595,31 +1691,36 @@ for (;;) if(FEC>0) { - /* - static int ByteRead=0; + #ifndef WITH_MEMORY_BUFFER + /*static*/ int ByteRead=0; if ((ByteRead=read(fdts,buff,188))!=188) // Read should be around 20us { - printf("END OF FILE OR packet is not 188 long %d\n",data_len); + printf("END OF FILE OR packet is not 188 long %d\n",ByteRead); if(Loop==1) { close(fdts); - fdts = open(argv[1], 'r'); + fdts = open(FileName, 'r'); + ByteRead=read(fdts,buff,188); } else { while(ByteRead!=188) + { ByteRead+=read(fdts,buff+ByteRead,188-ByteRead); - //printf("End of processing file\n"); + usleep(1000); + } + printf("ok 188\n"); //terminate(0); } } - */ + #else int ii; - pthread_mutex_lock(&my_circular_buffer.lock); - for(ii=0;ii<188;ii++) buff[ii]=read_from_buffer(); - pthread_mutex_unlock(&my_circular_buffer.lock); + read_from_buffer_188(buff); + + + #endif } else { @@ -1650,6 +1751,7 @@ for (;;) } else { + //printf("408\n"); NbIQOutput=408; } @@ -1686,10 +1788,11 @@ for (;;) if(FEC==0) //CARRIER MODE : OVERWRITE IQ previously calculated { + //I32=TabIQTestI[NbSymbol%4]; //Q32=TabIQTestQ[NbSymbol%4]; - I32=0xFFFFFFFF; - Q32=0; + I32=0x55555555; + Q32=0x55555555; } /* if(FEC<0) From 08b75b3ba2011461492f48e2e2173a835cf2532c Mon Sep 17 00:00:00 2001 From: davecrump Date: Sun, 18 Dec 2016 17:34:37 +0000 Subject: [PATCH 51/64] dma improvements --- src/mailbox.c | 20 ++++++++++++++++++++ src/mailbox.h | 1 + src/rpidma.c | 2 +- 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/mailbox.c b/src/mailbox.c index a6efe07..2657824 100644 --- a/src/mailbox.c +++ b/src/mailbox.c @@ -265,3 +265,23 @@ int mbox_open() { void mbox_close(int file_desc) { close(file_desc); } + +//https://github.com/sarfata/pi-blaster/pull/38#discussion_r28041695 +unsigned get_dma_channels(int file_desc) +{ + int i=0; + unsigned p[32]; + p[i++] = 0; // size + p[i++] = 0x00000000; // process request + + p[i++] = 0x60001; // (the tag id) + p[i++] = 4; // (size of the buffer) + p[i++] = 0; // (size of the data) + p[i++] = 0; // response buffer + + p[i++] = 0x00000000; // end tag + p[0] = i*sizeof *p; // actual size + + mbox_property(file_desc, p); + return p[5]; +} diff --git a/src/mailbox.h b/src/mailbox.h index 20437f3..2d818ff 100644 --- a/src/mailbox.h +++ b/src/mailbox.h @@ -46,3 +46,4 @@ void *unmapmem(void *addr, unsigned size); unsigned execute_code(int file_desc, unsigned code, unsigned r0, unsigned r1, unsigned r2, unsigned r3, unsigned r4, unsigned r5); unsigned execute_qpu(int file_desc, unsigned num_qpus, unsigned control, unsigned noflush, unsigned timeout); unsigned qpu_enable(int file_desc, unsigned enable); +unsigned get_dma_channels(int file_desc); diff --git a/src/rpidma.c b/src/rpidma.c index 8f1b839..7c80253 100644 --- a/src/rpidma.c +++ b/src/rpidma.c @@ -32,7 +32,7 @@ char InitDma(void *FunctionTerminate) printf("Failed to open mailbox\n"); return(0); } - + printf("DMA used : %x\n",get_dma_channels(mbox.handle)); mbox.mem_ref = mem_alloc(mbox.handle, NUM_PAGES* PAGE_SIZE, PAGE_SIZE, mem_flag); /* TODO: How do we know that succeeded? */ //printf("mem_ref %x\n", mbox.mem_ref); From ec774f2e1261873a9a96d80874258056796e1099 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Mon, 19 Dec 2016 17:10:49 +0000 Subject: [PATCH 52/64] Make directory ready for autologin symlink --- install.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/install.sh b/install.sh index fff7258..2bebb72 100755 --- a/install.sh +++ b/install.sh @@ -124,6 +124,7 @@ sudo cp ./waveshare35a.dtbo /boot/overlays/ sudo bash -c 'echo -e "\nprofile static_eth0\nstatic ip_address=192.168.1.60/24\nstatic routers=192.168.1.1\nstatic domain_name_servers=192.168.1.1\ninterface eth0\nfallback static_eth0" >> /etc/dhcpcd.conf' # Enable camera +sudo bash -c 'echo -e "\n##Enable Pi Camera" >> /boot/config.txt' sudo bash -c 'echo -e "\ngpu_mem=128\nstart_x=1\n" >> /boot/config.txt' # Disable sync option for usbmount @@ -133,6 +134,9 @@ sudo sed -i 's/sync,//g' /etc/usbmount/usbmount.conf wget 'https://github.com/philcrump/pi-sdn/releases/download/v1.0/pi-sdn' -O /home/pi/pi-sdn chmod +x /home/pi/pi-sdn +# Create directory for Autologin link +sudo mkdir -p /etc/systemd/system/getty.target.wants + # Record Version Number cd /home/pi/rpidatv/scripts/ cp latest_version.txt installed_version.txt From bb013eb4b139297aacae4ea646fd011704acbe3b Mon Sep 17 00:00:00 2001 From: davecrump Date: Mon, 19 Dec 2016 18:03:09 +0000 Subject: [PATCH 53/64] Auto login implementation --- scripts/menu.sh | 51 +++++++++++++++++++------------------------------ 1 file changed, 20 insertions(+), 31 deletions(-) diff --git a/scripts/menu.sh b/scripts/menu.sh index c88b2b6..d79e5a7 100755 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -710,16 +710,13 @@ do_autostart_setup() if [ $? -eq 0 ]; then case "$chstartup" in Prompt) - sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf >/dev/null 2>/dev/null + sudo rm /etc/systemd/system/getty.target.wants/getty@tty1.service >/dev/null 2>/dev/null cp $PATHCONFIGS"/prompt.bashrc" /home/pi/.bashrc;; Console) - sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf >/dev/null 2>/dev/null + sudo rm /etc/systemd/system/getty.target.wants/getty@tty1.service >/dev/null 2>/dev/null cp $PATHCONFIGS"/console.bashrc" /home/pi/.bashrc;; Display) - sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf >/dev/null 2>/dev/null + sudo rm /etc/systemd/system/getty.target.wants/getty@tty1.service >/dev/null 2>/dev/null MODE_DISPLAY=$(get_config_var display $CONFIGFILE) case "$MODE_DISPLAY" in Waveshare) @@ -728,29 +725,25 @@ do_autostart_setup() cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc;; esac;; Button) - sudo systemctl disable getty@tty1.service - sudo rm /etc/systemd/system/getty@tty1.service.d/autologin.conf /dev/null 2>/dev/null + sudo rm /etc/systemd/system/getty.target.wants/getty@tty1.service /dev/null 2>/dev/null cp $PATHCONFIGS"/button.bashrc" /home/pi/.bashrc;; TX_boot) - sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ - sudo cp $PATHCONFIGS"/autologin.conf" /etc/systemd/system/getty@tty1.service.d/ - sudo systemctl enable getty@tty1.service + sudo ln -fs /etc/systemd/system/autologin@.service \ +/etc/systemd/system/getty.target.wants/getty@tty1.service cp $PATHCONFIGS"/console_tx.bashrc" /home/pi/.bashrc;; Display_boot) - sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ - sudo cp $PATHCONFIGS"/autologin.conf" /etc/systemd/system/getty@tty1.service.d/ - sudo systemctl enable getty@tty1.service + sudo ln -fs /etc/systemd/system/autologin@.service \ +/etc/systemd/system/getty.target.wants/getty@tty1.service MODE_DISPLAY=$(get_config_var display $CONFIGFILE) case "$MODE_DISPLAY" in Waveshare) - cp $PATHCONFIGS"/displaywaveshare.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + cp $PATHCONFIGS"/displaywaveshare.bashrc" /home/pi/.bashrc >/dev/null 2>/dev/null;; *) - cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc;; #>/dev/null 2>/dev/null;; + cp $PATHCONFIGS"/display.bashrc" /home/pi/.bashrc >/dev/null 2>/dev/null;; esac;; Button_boot) - sudo mkdir -pv /etc/systemd/system/getty@tty1.service.d/ - sudo cp $PATHCONFIGS"/autologin.conf" /etc/systemd/system/getty@tty1.service.d/ - sudo systemctl enable getty@tty1.service + sudo ln -fs /etc/systemd/system/autologin@.service \ +/etc/systemd/system/getty.target.wants/getty@tty1.service cp $PATHCONFIGS"/button.bashrc" /home/pi/.bashrc;; esac set_config_var startup "$chstartup" $CONFIGFILE @@ -863,11 +856,6 @@ do_Enable_DigiThin() whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 } -do_125KS() -{ -whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 -} - do_EasyCap() { whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 @@ -875,7 +863,8 @@ whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please pr do_Update() { -whiptail --title "Not implemented yet" --msgbox "Not Implemented yet. Please press enter to continue" 8 78 +reset +$PATHSCRIPT"/check_for_update.sh" } do_system_setup() @@ -887,9 +876,8 @@ menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 "4 WiFi Set-up" "SSID and password" \ "5 WiFi Off" "Turn the WiFi Off" \ "6 Enable DigiThin" "Not Implemented Yet" \ - "7 Enable 125KS" "Not implemented yet" \ - "8 Set EasyCap" "Not implemented yet" \ - "9 Update" "Not implemented yet" \ + "7 Set EasyCap" "Not implemented yet" \ + "8 Update" "Check for Updated rpidatv Software" \ 3>&2 2>&1 1>&3) case "$menuchoice" in 1\ *) do_autostart_setup ;; @@ -898,9 +886,8 @@ menuchoice=$(whiptail --title "$StrSystemTitle" --menu "$StrSystemContext" 16 78 4\ *) do_WiFi_setup ;; 5\ *) do_WiFi_Off ;; 6\ *) do_Enable_DigiThin ;; - 7\ *) do_125KS ;; - 8\ *) do_EasyCap ;; - 9\ *) do_Update ;; + 7\ *) do_EasyCap ;; + 8\ *) do_Update ;; esac } @@ -952,6 +939,8 @@ sudo shutdown now do_TouchScreen() { reset +sudo killall fbcp +fbcp & ~/rpidatv/bin/rpidatvgui 1 } From c1bbbe5a9070e70beb7975c2cb84e87a747e4284 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Mon, 19 Dec 2016 18:42:53 +0000 Subject: [PATCH 54/64] Update for autologin --- scripts/latest_version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/latest_version.txt b/scripts/latest_version.txt index 6b3b08c..33f8641 100644 --- a/scripts/latest_version.txt +++ b/scripts/latest_version.txt @@ -1 +1 @@ -201612082 +201612191 From 8a393f5ebacc80bc98fb3c30ea174030a271aff6 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Mon, 19 Dec 2016 20:39:15 +0000 Subject: [PATCH 55/64] Record previous version --- update.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/update.sh b/update.sh index 3174f8d..5003901 100755 --- a/update.sh +++ b/update.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Updated by davecrump 20161216 +# Updated by davecrump 20161219 # Modified to overwrite ~/rpidatv/scripts and # ~/rpidatv/src, then compile @@ -8,6 +8,9 @@ printf "\nCommencing update.\n" +# Note previous version number +cp -f -r /home/pi/rpidatv/scripts/installed_version.txt /home/pi/prev_installed_version.txt + set -e # Don't report errors # ---------- Update rpidatv ----------- @@ -92,6 +95,8 @@ cd /home/pi # Update the version number rm /home/pi/rpidatv/scripts/installed_version.txt cp /home/pi/rpidatv/scripts/latest_version.txt /home/pi/rpidatv/scripts/installed_version.txt +cp -f -r /home/pi/prev_installed_version.txt /home/pi/rpidatv/scripts/prev_installed_version.txt +rm /home/pi/prev_installed_version.txt # Offer reboot printf "A reboot will be required before using the update.\n" From 42fe62fc9293db0d39090864b868501527494f4f Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Mon, 19 Dec 2016 20:59:27 +0000 Subject: [PATCH 56/64] Preserve rpidatvconfig.txt during upgrade --- update.sh | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/update.sh b/update.sh index 5003901..15f271b 100755 --- a/update.sh +++ b/update.sh @@ -11,6 +11,9 @@ printf "\nCommencing update.\n" # Note previous version number cp -f -r /home/pi/rpidatv/scripts/installed_version.txt /home/pi/prev_installed_version.txt +# Make a safe copy of rpidatvconfig.txt +cp -f -r /home/pi/rpidatv/scripts/rpidatvconfig.txt /home/pi/rpidatvconfig.txt + set -e # Don't report errors # ---------- Update rpidatv ----------- @@ -92,11 +95,16 @@ cd /home/pi #sudo install fbcp /usr/local/bin/fbcp #cd ../../ +# Restore rpidatvconfig.txt +# Comment out if upgrade changes format of file +cp -f -r /home/pi/rpidatvconfig.txt /home/pi/rpidatv/scripts/rpidatvconfig.txt +rm -rf /home/pi/rpidatvconfig.txt + # Update the version number -rm /home/pi/rpidatv/scripts/installed_version.txt +rm -rf /home/pi/rpidatv/scripts/installed_version.txt cp /home/pi/rpidatv/scripts/latest_version.txt /home/pi/rpidatv/scripts/installed_version.txt cp -f -r /home/pi/prev_installed_version.txt /home/pi/rpidatv/scripts/prev_installed_version.txt -rm /home/pi/prev_installed_version.txt +rm -rf /home/pi/prev_installed_version.txt # Offer reboot printf "A reboot will be required before using the update.\n" From 32d5f086e6aa990b1bf6b73b1c034c280cbe8b4f Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Mon, 19 Dec 2016 22:14:43 +0000 Subject: [PATCH 57/64] Show console on first log-in --- install.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/install.sh b/install.sh index 2bebb72..4b0ad28 100755 --- a/install.sh +++ b/install.sh @@ -137,6 +137,9 @@ chmod +x /home/pi/pi-sdn # Create directory for Autologin link sudo mkdir -p /etc/systemd/system/getty.target.wants +# Show console menu at first user log-in +cp /home/pi/rpidatv/scripts/configs/console.bashrc" /home/pi/.bashrc + # Record Version Number cd /home/pi/rpidatv/scripts/ cp latest_version.txt installed_version.txt From c3efb38aac89b30704a7d4f422db32751170d2e3 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Tue, 20 Dec 2016 00:10:07 +0000 Subject: [PATCH 58/64] First start after build to be console --- scripts/rpidatvconfig.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/rpidatvconfig.txt b/scripts/rpidatvconfig.txt index ed9e9a5..96841a0 100644 --- a/scripts/rpidatvconfig.txt +++ b/scripts/rpidatvconfig.txt @@ -1,5 +1,5 @@ modeinput=CAMH264 -symbolrate=2000 +symbolrate=333 fec=7 freqoutput=1249 rfpower=7 @@ -20,4 +20,4 @@ pidaudio=257 display=Waveshare menulanguage=en analogcamname=/dev/video0 -startup=Display +startup=Console From 5e170539c63ab8ef4c33d2a1c475e088e35df0ca Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Tue, 20 Dec 2016 00:15:11 +0000 Subject: [PATCH 59/64] Amend for console at first start after build --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 32cf843..c112f39 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ chmod +x install.sh ./install.sh fr ``` -- When it has finished, accept the reboot offered or type "sudo reboot now", log in again and then start the software by typing: +- When it has finished, accept the reboot offered or type "sudo reboot now", log in again and the console menu should be displayed. If not, you can start the software by typing: ```sh /home/pi/rpidatv/scripts/menu.sh menu From cd0f93e5b4d7f9cada44b2fdc149602263e27feb Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Tue, 20 Dec 2016 15:14:04 +0000 Subject: [PATCH 60/64] Correct typo IQ --- scripts/langgb.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/langgb.sh b/scripts/langgb.sh index c93c567..ee9d03e 100644 --- a/scripts/langgb.sh +++ b/scripts/langgb.sh @@ -20,7 +20,7 @@ StrInputSetupVNC="Display PC via VNC" StrInputSetupVNCName="IP of PC using VNC (password datv)" StrInputSetupVNCTitle="VNC setup" StrInputSetupDESKTOP="Rasberry display" -StrPIN_IContext="Q GPIO {12,18,40} (12 is default:pin32)" +StrPIN_IContext="I GPIO {12,18,40} (12 is default:pin32)" StrPIN_ITitle="I output GPIO" StrPIN_QContext="Q GPIO {13,19,41}(13 is defaut:pin33)" StrPIN_QTitle="Q output GPIO" From 50ba472f6e8d7d9ff29878de9e7c73a86d291029 Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 20 Dec 2016 15:50:35 +0000 Subject: [PATCH 61/64] Change test card files --- video/imz-15.jpg | Bin 0 -> 48124 bytes video/imz-16.jpg | Bin 0 -> 108113 bytes video/imz-20.jpg | Bin 159089 -> 0 bytes video/imz-30.jpg | Bin 84798 -> 0 bytes video/imz-40.jpg | Bin 126141 -> 0 bytes 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 video/imz-15.jpg create mode 100644 video/imz-16.jpg delete mode 100644 video/imz-20.jpg delete mode 100644 video/imz-30.jpg delete mode 100644 video/imz-40.jpg diff --git a/video/imz-15.jpg b/video/imz-15.jpg new file mode 100644 index 0000000000000000000000000000000000000000..160b0281efa6f0ef1793029be9846c41e3096dea GIT binary patch literal 48124 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 DQW4y9 literal 0 HcmV?d00001 diff --git a/video/imz-16.jpg b/video/imz-16.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8cacb76e76b145fb7f80669c8056a1b826b4780f GIT binary patch literal 108113 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

{Oerb~SJ<(#r(#Q4(w^Q7!p1Js)!PO%b@ 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%0D0fxWeyd4y-#AhLYK3 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 F{{sy)y*~f| literal 0 HcmV?d00001 diff --git a/video/imz-20.jpg b/video/imz-20.jpg deleted file mode 100644 index 478ef543269b41fdecd23114cd0f7a86c31472ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 159089 zcmeFYbx<7L_9!~I1PLJ!90DXHxHHHw0fHvDdteyc2iE`rf(;JANgxnBI0Scx1Pv|& zOmKI5lYHlVzw>ULKi;`juj<~avuC<`%i2r3clX+B_1(|ACBS_J8F?818X6kl4eAHD zTc)9q_OLPs02CDgtN;K27l4Jv3qVKJ9-zF0RUO~f7HPM zK&aL49#lU7fWial=H=!V7UAX-;o)WA;S=EpitqvfQV!0hRxs2kW(>yP*wbS$|E_d2MzKT%z(Vz* zI754gM*Vl42JP8DU{G?R|B>ep3^O|VKP92s{!JHE-k^@(lKnZ~{k)q6NC9xMv2n1m zaB*;O@bGZ)2_6y>+`C6W`GA!8AuSa>9W50N4FfYL3j-rN6AjHXq37(}JpBCp^en<4 zAg>rFA3yJJBxrbecm($dC zLsLszM^_JG1~s>^w6cb|xVpJ}czOlB3l0f=9~K@LpOBc8{2?XvQ%>&Zy!jJ z*R}sVTcyv&jT!Zm8J#ck>=!S{s{PSKiqOwU52=n8`zx-~!SJ8+p%T5T2sfupzH|Bx zg}pW^(bn#n>qxAQC6Y*hm+K}mEtsmzteDf>Nv|eCFvYpIcb%J;2A-3@d|Z4SmJtY- z2Nvs9vhTSNK9sU%b{Yn;(pqnD1Vm;M(`d{frAArUzw)>GN+d`V!xGbURYGjew&msYoD<>zd8bNIZ^Rx0+E6-ZJJjkG8FV9Jz|Ya(%ITi+ijIqNK) znnWJx#(4PYgWfP_@#{Vn22hw}Huua_6n;xp*S3H%2hI%K>wYAF^cq^6DNT{_Ixe2< zuBMlyem==?0LGsSp_M31W_rXa&%#n-o|p@;vGS+mY-D0*=~OaaVMM|~=iMOLWxsy=DaLiI z(;!cCW?t6h2yC5>z+Pf!G%*V%u(GPoA&Z`!K;5<^77xPe32yeT`1BV+II_?~)6PdA zyJ;|HWkqv&8awHL^+uGY1>L<}OORHvH-bWhp z8&1{nda}$@&fUg1wgc}!(7i>(Dc6Xe6mJcA0R=R8C9EfZ$T0?rY7tVz96n({Mt%_n zD-o(c;bT&qvNxZY)-&d%d=kZAfX$jivtNhw>=r?M$3NphH!H8G4PWXv(xi-}{YB3< zcMOR=yipPzuhMXpiM-5+Rcjx5VqjLTT5Hcsqzt*C{yxbbwmh2!9vs`5xOG)0CrOdG zY9)fj@x)$2c(*Sf#_yV!1y_Y7{xn>W4fM+P&2=3H+-Buj%lpw&x;5o}Cg`CFBgHtv zob>Cz;%ZsJ9%KZkKR4(` zo8fD)I{C%hPpAn5HdL7HzQPH6z!JWtpE)!0<6(8Nq~u=6DmkVZT76(Tkti4C=b|lf znxjuCR0r$#-xi>?KX0>ZbyYDa!%Rm|%kb$%sN1|AXKc1yJv5zl&iC^CrI1b0M!2}@ z^VUO{g%T}is*#6mKe)=Q5rLOf=M58wo#S(E7?TM{NGTPCvv+T2?$HK<5y}zV#rE zEdon^JP_N{{r1*?+D4KL9M!F)3_IBwdX+N`%wP#6>=}wbL@Zv1SBTIWRTg((N4Co` z&Hae25})%v%oYM2^ehJTmjr4vg#a>(BFmH$JywbeaP*gMp03DG z9&Q2$Bi&~mUO39)(0@QQi#pqkEx5}=YLh6qQWAsS_wN!`UA!TE3p8rIgaoK^3_UJ4 zI-Jgl8NieS7;X|kW0@ZC**%tT69!y8>lH4(m{PA!n%>pIxM%WNo*-6~;B9|B_1lYt z^w>Cs^c~Eh@cNHW3*4z+J+mUWOwZxmH)gQ!U0Qwth?zd!6dHLHVFvFCt`O)vDB^FH zdm?!V8yN(y0=(%+OEBtFiak>7O&WOSdw;a!IwXkysAV8YcXX@GZrijOK4!a0i&EQk zX{j^kLu(dB<7JS!D)llmLwxCZp{OAjKfaSJS(_xE`=GJmR^Hr7KK8|YdX2MwzQHlw zN}U6#6uLFNWmT$1dV%E21uJ9?E_394AaK*_r+kv#URh~gb!;A+OT0WF95-}#_HD7} zo7_Nb?a1eSdxkxs)mEh((zy@x?st;8`y$?8+Nr|RYSZ1@+S;(+T0Co>D9<;#r_=tx zXSit5A)g*u?R+AbUn#&mkz#U~$NTyU4I^V=nqe7s5spM*dQ#IF8LMBWI8gPhn>g^^D?L96Zdu^gW8Z@osuqc5$+BhO`Wf34?{k?j zXb6yS-TH1^rY{=>zEFFt1ir?K+4!m=;a($NUZR!HHR*@~bvO{7*I;Q7u==e+o)a?P zEY+UG0$5#=k6ccRbj9ZuLCbKZR-~Tmo*ZS}RoQ*Tn2z3KNy)&QZnpYn2@%6B1Db?O z>E$xVlVTo0)o@K)GwQDjJCSk16qv_As@p6J^JeQ^D>r-Hmo^NFxk+k06t+t)6f|h# z=DJ2F-lHdu}k4{c~(F+B4?-K5RRQvuyrrW;)TISX9VQ2dcNa_PAicd&~E46SPE z7`Rd@O4*ko{&5An_B*1}d_~%>3++wBSuO8=EJdBZtdeNpm80Tj$zb>el{vW52v;FRjXaPu*h%VMjuu9!r@-{+AO{ z2IV0Xt4SJGP#Sh`4|?SFNl8+-^W56l>#)+5EDa2Tj{cxH`Aht*wE#@CuSJK~g%Mff zlSPn6^&RJVy^H;i;X+R7_B1e~v?b$vf*GG?txWGTv&I?pw!*2`nJ|eY7%ar-JIQ?U z!^ihZ9hL@JnV~Y0Z60V-z}8`0VWyLwFWn)RR&*2BeMSNouQ!Dm0%G(d5e~rlfGN-m zRgS7jZauk3f+zQjaOGiNX$W?ESD)c9orgH3LX2le_+ywIi=G**qPNR*!_vunT}PB) zabB2h51~;;$^v<2)vW{#j)o2U#Hv-U1_VL|Q%_3R7G60{hN$FTlsya98z9}_H#N$2Fc!Ky#?cR!odU|+&&ho=)D{psou@J302uCAG2cY2}6cu-!KovaUt z=+6d%d`U>(ProXx9e3M@sGZ3I`VciZ4t}j(ns&wtRn>L<`h7G=tonYHb}qH*rl{)g z8V+$XCRGK@LX@{sC2lihA3|mp*5`Ac)m_A1F1eiU?RuVlHcgxCqOA7jcvGl5%WR}h z@))C_uyV`EGMQwK+DVjUfC?>c*bB{|&wEnDFhQw7v1ux=Mp3%O1wdc|3juF0or!5> zj5}|Nm@W*_yzdBO>c%_nExDwy8DA;g=F+=)LeqPJ<zXuR745q_D7=3W14#*#XnUEjqTNfn|sd~i+dOK~5g_G8e zR&XP&Tsdl=f-47=%sMCSBCTgqJl9mO)T+Np|jUnnTr5RvqGqp+V7 zZ#y%ebFBK7km5b+w@@8-={v<5_Ske9K~ET3W{ zH%BjM!0(slCfo6zSglExMmFdIp{zWyx4qpcUr=m{*dk|u@GON|mX-XmdJF{}FW;P_ zUtN(tbRe8#q&5v zV^fPm&UgB;0j`$mY)+9bdr4}}M7%^^R68ydFLQ?;#(kJ0u6`bkxk^yO>$n8Z5IN~# z?J`0NeAE{cbTXqCvNu2!6dOM>^oI&&Io4fCzFPm3nL=0HM`-Rgt`)>4jTo{~O=5b| zilzTVyY3DEye?X7Brcpe50w#|ntr4vgOSsM0 zZ*FJmy^nUmoLCK^P40AhEa_9D*GqtTw@a^y6uE+YkJ49p$*(6?0?J;z35Qjv@OnYk zFyinSu3QIG6Z>VYS1+7jYw*}LQAA7h6e2OxBQuXrO`AgqC_WUAIN6aE=N9qR%&#IT zk?TNn9JnlPku%%-fM7)PgGNirynun{Do*3*Ah>p(Z^8TFaYSA7m=<>Ohtf6Ohk^$T zhPfEAM{kNCZp5r^M*)NVJ9&egPl7Wwu3BlL>W9(90?z#V_>%&?DnE^tUC+8?yg%&V z<#+i05%tQ6^W_demq;JJTvIc~9H{vIskzqdQ<>YrhKd)MG{<00EGzF%90gg+SNZ{B zlX1#C=InmvKuD|k*3pCeu$hJi+ElaWjAa^71Gc0)et-SGfvTZzY1>)X*}IpA;-O6tf#IrosxhCqDN_!a zt1D5(d*u>V=&yC%?F=j^n1V*@GL#LKcXXfBR!c`g4;wpe6t`C;{MWm^KvX) zo>fK%WY?aRp5o47>x^|h^sY)GLBaGHFpiZ+JWHe@K;RwVL@SI^(0t+Ln1O^}v1xs+ zT|a^eBmWLydXvqy#JpXB zX95bl?!5BU=wV4%vg#xLo%r3(quu-PT5ccRFDt(Nux zS}BRfv26|qs6mHgJ*Gc#c?mHAb8LMY#p``V7ua(dBy~hY`7bT6j6oZU$m31eWE1Jj zgM^ZD%-pzHO*zDdF7L`E?_zjv$nCIlOhH0+LN*|vzZTJZQVho0z|opmwFm_6Jhr{v zkg69s%LWacr5xA=d9Ge?GfVPm+Ev06!@=G(-mSjrfVc-g=wIYExRr>c1f2Z7|HJ zL2DJ>7BNGdoOCfg)6c#RWWq!QEFOcu`=Q>?uZ36m?YvHh727OYqnwrGjBs~m^Q&FV zA#1%V(X30J;q$mA=>dD06N!ofg87BzlCJ_HpY`H5w9GPzWsQ&-e(2pEbk~jR z_*p!2uyg;+#K`yoi%*Ls)hoK8fiJa$(TrZm9D0+Pg8VZyg|aoyqX{Qm!eRzoNvnQ* z?1<0k*wR_1cq{7{L~CPq%x9xsf9{z-AfC@`AME#HDL$aDwM=D_(`Cy>w|M@(y)kIQkBl4X3vK`_ZHKqv~6f`g(@E~1tj+R(Dtkm zXWoc-Q@ya%w~O1z1lIHnFTkoLmi&DDPm1^q$8*N2Jewt77gUHVGeRhk2zDdD}e|OH2E* zdN1lqrE-_J(go_6=&HGb*x%hU#<|h6lOXe9qgDF6pT8f|b3H9GZV#CnObko}KQGXa zOK3q41Bk5LZ znt#qEN-WC^{v!Vzm&IwtKqo1+#!LWmN@_PwGN3d`Q#t?pesZ8;3b$P#sb^pxD#^;78 zGabRNGGcU|IQyk#ez6>#XCf|m1n=1GnGD#_(w(-nCX*it)?g-(M(eGLK?^JUYur|M zqSu{4R+d7V=QrH990MoO)UT} z7{?`hFv64pWr2kf&u_1bnG&P?ODu0b0qy$R<&0oKz1z>rNxG=95;~sBXs2V$g8Qqq zRibRKH&RrdVTEVo%OQ?7hInX(QI1g4J83jaQ&X|l++BbR)E?Nn zcOG69R$pMx#5!C5=1R4`^|YH9BxCKoMG7UFq;Og*zj(jvTe;B#DhQbJ&|BMOXNgKC z$q5VsiC~=ji~M4uF*`2R%OZn+XmMFO$&k7w>4m4+;(XBO8@M?gaWIMQu4-f-TWI6# z)v0HdL0g4{*K@gi*ka257O`DZyx`@V9m#Bzzhz*M>N*$kn90ff$w-rhORYepz86id z9VoMwvX*e2Z--Sh{5T4%Y1c-v!#2*dq1QjeL|#0MkQ|@u?yMpE02}=_n|97vVUrey zKHHs^5(Tw;)g1c4BVq+Rp1p!yEBOIYKp+AAWaE+URGf0sJ$X`hPohPCuV3JF)=Feqm1djpjd0D!xV5sQ$XIHW1E7bv5$c|eH$DFRke-!)nHi3)c#GntGntl zalV07x}RLVPoT2MDr8}!bV*J1cAqv%Tc7fkp(5>rlR!K3t;5OCaDl)YJcp-CK@<#7 z*xts;DZk!oK4jn|H`Qt)rZz#YPGKShG0Sgp3~KUd)4D~+ZQ;Hbw2^&D>uKO>>2kz*iu z=owHOs%0b+FqP@(ff-$*6gym6v--~R>ucxkZ26JbHOga56hqt(^yA`qlVZ;>qPYQh zBej%UZ=HoNsoq6?=$`z!4LAZYpNeOx%HdqpQY)0RhSy1RoYjMkU;CNH@E1`H(S$m& z0E8rQ0C#}QV}f5|f}Mst7c$Gq2C#Hj)M}*dKpHGf7g%4&<+Xl1ayNaq4Ip{x3bFA- zg};7>_so6=3-8%my0|!saB}|yu2JJ2o9L1y^Dzlhdqqx501Z(yoACa&Q^{tRw%N+ zk(!t~xVnHCQ9S<<#tiZ|VnMkZOe`x)U)X~`iWw_rF*+2G!K~0++B0Uu|2f-_nZMn%G-_7(F;pQ9~0HMMm-Vg5M_n%@hNJgsm;Z zUz%W0gTkQBZcsB$F|Oa*wYB;u?mx}Hk&AKtFT{T{1966$xHveA|KUR&>h!;D>^}%l zr2k^@Z%+QIpb-DX(;puGrum1zf4MmR!2Ch(4XA~Dh-6JAuCN5U? z7UKM3T>sMgGa~g{ROn08A^tmD&cThc8;=H$@L%C_P97mXy}u^?3*cYu{|h&NDe7N3 z{=uH26~x&A=3wrkV(H-G@UNWO{d45cmE`z)_|IB^;`jeO>7T3%@`-W%`;mXc%^ww_ zZc>!$P|W{xl|Z%rc`N__dHyev|46(4Ro8#j^&e^AKLY;m)%9O>{YM)3kAVLVxVrx5 z-5F|c24Zn%0gL}hHbX~4`~Ck%!N9`!U9eG!PFOhDs0=jJfs1z!4;L37m5+u`h>w4d z09A1Ch=>UZhdt&aRF5YPCQ-{s*&U!X z|79OODy$tSLb8F{%`d2{_m1hoJ-h=fEQj#H?*PfwqP;4!nzc0U!Z_EL8vQARiQ++H z(aQTfN@fK8pPQk5tG?UBrIz#@k@KpJb!panQr+UGIAtZKTU3KQ&u1wI=o8|InW7Eo zs;kQs!U%%q_4@@Y}Iff9x=njL9gXz_Hh6_3}n;U5@Fi!k^_B4i0DAwQXz+dz--%79WC7 zT^gcO*6EjtGeNgmgOhqnhv1ZYcLbQbt>?J3)R5Ep>Sach4Q2DNS^OY=Vcp|^-d^zq zWEoP&k6~i{4J68K+3kd|^%OC7Qq-2jGg13|^$tKJce0h4Ij5msU8qQ$LM{I*WtBd^ z#dx?X53bjB2MGBgFh6qKy3I`5zkrofp^q38=xM*~*i^wI`%>r>d*bk~wLFTF+AE*Z0+Z9pA;*G`_-x2m10} zLV}C)`+T=vZphisUdCUZ=4u zqQ2z5TspOn9`NSI>xdNFa?9v{9iiRAGqL9Qp-`-QBy>tRG#D?7n`!m9Hx-k6pgW~0PX3TIW5s8MBY zEW0aSRN^3OqrTx6N?O0IQcB+e_{8PG%HGcg*>QjKJ)-lcz&HB6F7j1h@>3;KGUXa~ zR?&{=1@QV-vBmS6U!7xJVR`iEwKV(?U?a)jfXUK~4LRnYX>)VCJ{CW6T7L`@rkT>T zZB~g3zfFk}dudkc{W3Ds|i2Vy)oacGYWDnD{O(){>6H}lJZFit{5pr(rN;vP{GPvmI)5$~>X zqPs7)@3%v+ve%9ebbn#1-H-HZOVWH}iF{)(wTarmu-7pN#m>6LC}H9|=hr^fdku9P zQ=|235h+BO{{Ujqj-(wIrcYPJ6V1~h)?*Izr961V`1BoC{ii`5G zu}r6+g(RJUjQ(`AhPZm1x*p}pnEQZFg3Pr>b!&CV>+~@-VV-nsl1zmge*(C8dTK^u z3~ONxdQ_|XDdPH;f0|)VpMBJh0YY5^UkIYyQ~v%^rMrjKvA-v2_B&CKc+i~pNq$MC z19ip+K^pH>XBnK)jHrVotqU_|N72lB#8h3;jM4`OP9ZznrTdP!#!5j4+2*0|svLNx zMD?>x;$UNCwN2jOjzw&foOtWJU5QQEa^x?6Dr7VDx%yyYn9;*GL4o=o#r#~4i8~h2 z5=km$ei|>c)iT`J2s2H$sqPx>gM+S%JnjH)g%xiOLFdBAvG83EAJA$~y-5@^B+&D? zhwcs#Y;*43?hVm$X!wo*vd|vv?1fLHNmy#<%{P8M5vDTRXdNqv` zoqT{wL9iLSmMDH&h#q!NPGUyLm7=Ye1~~?28}zZu>k}xBV5}jgfJ_CAU*0m-|5_)_ z;er|*Iz6hM?17(0cM`G}T}!8d3&fBujNicMj3W;C`8YIjx%c@N?*PTZh|iwL&L%25 z*0mI$5tdSCeXC(yuyRkeJ3W?zOitcxxtV!r0)fPAG%Bi3ueaINr}RiR+DJ+AS~9lS zR*3vw3kHjr#dn189e~t8D`e9lr5VB9H!N;`Yb;?@e&F7I2e98CQ=}6caG#qcQWBx@ z&(b@jeyZ-37Qy)=DE@5@P`u^FhbmmqB_&Ff*-It^x^6{(I21(S#eKqjO4fPa++#oA z6S>pwICtsC5WQa-FV_M#)rcw&sC8P6glETr{1S)HyM9`urLBk3phCPGbLsxEMl$M; zcGh5})zbWN!qsnE#qEBsMtVIEzHWN12O#d3Gob%K z6C0O2Q^F6ZL;D)%EP8t5`%QbayN4;-w5m|;H6Q)_en0Ywx6`5+WGqNkF1^C1SjhbK z+6N?XW2?^Xq$qD5;gI4Tyy^ymMM4fJ$w*|XV%Y3$Lk?%@-SZq#sj_opKO+)<_zXqR z<9F_RxzW%MA^~IK-M<#yZ3KBg*Y#c1?PVs~uh4$cDB=|w6hET?Ub?QQiCj37%@q5> z8Zh$xR;f%kRn1hXJ%ex0dNqaKI4T=|X8sJTov;fYvE-hsOFz-8^v{LN6 z2BksRQy6ybJ;hG9;Cw$PCPF<7>{aTS*87Y;jO4+lMvLUJC)JM#2V%}qc`*KE#(Lfl zemsBiHEDklI zOb9y6#8EbKnu<5-TTVOQUJ48MDQaW;x#Yq^Kl0geos7oBd7~p!ONiqdY++;nS=%R) z8$Y1d!C~!Ovscyjqi!xeYcK;w8_iJ{bZg-$yj_%M-7X$03}+1$4P$$H)+PC3=;$NE zJ~ubtW#k=z$(U4qM%(B8B>{-yd$gzs>OoFbC`)4(%_~*A>kL?h2=B559ZW?-lHJZV z{oi4OxJA5ueYd!@r*cUelHGs^j+9`o(=fZcy2{cQHsqFPCszoaUHhUv9T0$vi zd~K%085t!#G{E;mFcM`pI@ zji)|&;LVp;*w6y@B#fZe2A4gAQxycaaxr)zezOIMk+0nou_tUJM$)pfU%& zOtPbCcRMjVe4Q*mREiKd7>k<1A)%at`S@&PO^x*tTcG$Ee#dV4$!&EXY>t|?K}PT^ z{*TD}N)q`mi^^qoAFgtGY>i!vk9IT*7=45<2hYG3TS~Z+N|9^obxY4glYzs&a;v9> zzc4VLRP?wZYV&Cu=xx837pH0e^1Sf4L_HEe$i@^j*gWewt06d}A5Dbd&VGf(S0RN_ z;lj(a0*G)KW!rjpFW^G+t-0$g33d9MG zADO-(ug*|4v+dWJ&Qs<~SGuecoqhYViZOzct8Ov+asSJ!i6M^;Z*gS%$fV|fRboAtdjzf&L*NaHJ>s5RB$DA96e7sD;zjfTh?xX{-9vY^*N z?I{EN3bbI@?J=UDFI%3e&oJ)95AUOxD{T?xsI>>)z$P0YYRHE<<2jy?HNDydH>Lt% zCNzKXdGYEPl3Y=rHM^!Jd8Bv~>*}|KpOha2zn=qXAT4FedcM)g9NjwuJs{CzdgS8F zx98h1jasR~bAO^~(+h=N=Q*0=VdC1c)Kg!oLBZ54&R3kvk?Hix3P&TMenfQ*6}lfo ztZI@DPoKIkWht-i8Eq^@2UGQgG1e$=XDB>z(_)`24evNF&*~^EwFx5iROsfB<*y-T zyqUZRl@SZM%*yvy__cjYv6&hY_T;9iNcj}XxlFV&FszRu1}PQs2fLv@JGv%q={5p> zf28%pZ=6+?_*_3W(7@BGmn0JHL7GL}5C)auc`rF+fDnn4dg_*-*u z2;Q?Brz|Bawf15Ae)bftK)oz%%UiTb_Jt0$=-17uqgLpi<*m9(B5-V;Aozze_5HH# z#Fem750(2u?_B599zax92mA}6dvm{N>JA_ zu(6fnV^gQYZMvF;=MDURoaUgMkMfnQ;AY0)a+=X!TcC_t;!N(t&PAWMaxVsA-%7cN zR|D1a$$Cp~_qM(x6D(Lfn}~A-jKhRf7O26MmbH&mgKZ+fJ6J-vxdC-gg^j$B(Fzu! zKDzlE>;oown<|Q)PcJ?m8p*8yZ}HD zD`|$x)_Gtztu^~_+*_4aMtHWfva#_GSAV*WQ&DAN>pK9kkA&xPLWpP-SmPigqtUC8 zFpi~@9U5ZTLlEDs+TkdJgO4GU6O{oh>8O z;TPH$K!%helE9TR*yj4Lf)5Q34i%^gcp~llis>KTPU$HJHM5<|N~al&+wKayhsJF_ zn_dsOyiYW(`E`H?Dy$yMFdNhW%$c1v%?Sy+EXvvPl8tT@vMQJ@DLMJvY2)~=uveXl zi7B0AY_eGAmCedCpOL5B9}^M69oPARvY2n+i5JhWXzl=Q64hmZYr_Nbz_a8`#`4-a z^qC!g{ixVhX3c>wk-iJUJ(Q;2Q_WUc`>Je1^oZIBmwO=%qbF#^GczTbITR8MvF`8Q z9u{Q4gII{rlf2u6mr(*xGZesSum6tpj^PHnaj-T z#8w_lz37obdCVajnIii(MpiXD4vr%nxuc?Jr+D~%6|z!Cc4|59G|t{yeAh~K&F7Dn zz?8D3zufimL#B4L`y5ExU z`xTWYZ5Yg?!5%XDKiz4ge6kQ%t1Zn@jBratu*$>dfyFom(IZF4WfT6mR+Z<*?Z&^{ zYHJq^XQkYqbQ?S4bTDwl$>7nrmc=v+-nOZE(09#LuVtY!-LglO^O&9+erauZObesD z@cRJTYU^Cq3y+(;x^M$gXeb_LG4|zGN$5(J4ONk*?`$1LkL`cyH)ojD4GcP~?A?XU zZWx6kxI&V}N%y7GlZ`pnhCebxHQpQsd_}u$uI^B@V}4)S6&30AI8aq| z7yb0P@i;y{E3H(iyaLrbtZL6UB3U<(zP;A z_|pNq3r7G8+?TCS%=?Q8Wy2x1#|X>D-dHBe&x026GJh~P<~HL&W;ThOT(hMlz z%H_c1e0gF~UYMb)Bx?_$6+fKb_#i^pprTyMz+#;tc-39(*1X`=%E@@nVXpHP91SOX z3%&q%ZT0vy6(xr1#c~o4c7@1c?JGMRooi>Mnn1MZEZ|!LOkWP7 zLrYwN`p%Uyi=7X5=o(LuQv$>1__Me7Gi(N86=p|bS|RJd)4;lG`1kJPW#40RCk*5s z=s|Y-XIPd6r(V)-QA2gOak=G?EK_2)0!vE=_K!YljF8CtsEX=aLMDp!1ZN;Ak~_$C zoam!1qvr@NoPlNKhmE$ykIe@y92PeHT9Er?y8Gmx`8jJU3$&x@JsorXJSckmK-g?H zJ^sXF-Kms`BtGXyi~#OAjPW}_)|R14Co9JyWH7m*VC8gs_z}K4mn33}V&g&^RF-HH z+%q%|cT`4gmy9eMioL&AQQLdt)XEA5e};*~9$CyctVPF8!K)6-ymCJL>Kq9Z`pQAK z_~ER3?yP_u%#-FYI4DQsG9q!@1M87u}+T;*I} z9ba$FH|Kqewd>|~J8D=5wl4WSWZVWZlY{_~`7GBUFO6-=Lz6?~Sm12*L9q#m$=~b9ew;6=c z*!QsV&8E9`KgWDSZc3J5M%qfb6-k#7teV9pEd+n*JlNk5rk)O{Z=>-#xKL*a@{D(X zZKvWfJ5_BEhZT0NN^SOKuAceeXF6nSNP?Zf50c4?kKHYD3r_iT6Da>F{e5MKv(j+N z2_^x8ehiMK?J+JYB(4`nfuz{z=GoDjnKz)FmR92no~!G|qs#EmU_M=K8LFR@csu|7 zkmr*Awu#oBXx*m}uEfjJtqYr_xs3L!rtYa%$kbVVewD*?5%7z3wSa+rpaEt9;>%JV zYblWe4?Vs}s7U7x`c8Bssu`dmTm8YoTy-KjXi5x$dT$d`A8HKa&Eb1w8!#3>3tUAk zWCaiSZ2x3HfI@4RQ5!aU>bQ-4g3aqQv(2X3_TCT>Y6;2UP^*h_Alk^c@<+MD!8nc# z-dA4QzBwCGZJ}7N%nz!*Eh5TmMoI?NtkmmA1L~b=H!g&+U9%n zQxE?u&`-vwfjAAcDG)4E#FuT*Racku9_jG51(s7(legEc=4@d5nA5sY5~ICfz0BtI z+`MPxprhyPVI>J%dF^~0oiLle;W0Akh-=;RX|XJ+%s@Rg!~*aJay;yr7dRPLNt^Gc zjcJiBh8W9IQuHRN_(9{ft7(RoMlU!g=-J^jy>zm3KJLueL!nMNaC#!V1#i3qL|Mu= zI2T=a$;dBzZYueuYw+gXzpf(;%!UPw0Vz-DZ@m11_@L1?f@?j(!+f(BE`_!CcNmUZ z5zO>QBcLKlIj5_yIR(J^7{BJ0K@C1OJZc!%NFU|ZyvInMSE2fa(Ac1@+R3DL4~673>QpmlhWUifnAPMHiXFzK7& z>tmsDL+zuhBO=Zp?Exvdx)(&UMp_tCA9*>@^WFhGPMHGvW@-IdD`~vP2B0dPYc+8^ zJt|;gFP!W+#&2c?)LEFvZD8a{o`RcHoZt>6X7pIV@r|`~1Z-K`UiJk~rpVIKj*3kT zZn4`A>l_b|!B;kWC4bOqZaq(Hyqd7VohD`=9Uy|*$ZT73v;nL9i2CYOhaE}M;?Drd zM{fL_%yy}2u%cd-tZM}+m*SAc7S9(BF)=GPxQRe8u024TIc~=w9V@g0#ixljRX$xG zqFP;We!VCZ(%YVLCnSj5d47gVBV+{JITjE3e2=p@sM5mRsgL#!P%u)>uE!pugx~$S z`Ao3~d|T{V`pszV|CT&32mdph3-sd|v|56q}rJLpwMQ>}dZqIjP zlQVuIyaTy?7~^_N8tICGiuskLuDKdNG|;c;Yk^@LzN2J_^YteJg(^%6S$FH%_X_M` zS65I>K~Cmm3B26)x->^!?xomT)R9z5;ZgUQ;v>sXg=ubV{M)BSZDtbG{4Ern`iuA! zObLA9;9<5CmRr0tl!JA-zqj+~BkMV`o&3P+j68(AVXRtb)lF6mn>C9s(h*y3FMK=y zQSC*ht9AM73mep=D}kW{2jj7-2Jf^14!z~j>6)Jg?0jxl*K8KepbN^fN&0}S{a1=i z9jW-WogAiy-hBqrm`amBI;LQvA=<^QW|LGmApv$TIrg$D&WSrrCtR> zv-yKZpTiO|KFt`t^rJw1^$>WA7qm_4oBXmoifNk4VLt95AI&54RU&1w6@RK0`*-`9 z)nAN$;rSL>iHN2dexH;4YBUe4mr?l|^^mj$%yZSmXP8@SOz1~(uC%3Kr?63MR+p+D zGAK-{<$aK(A z$W}$a0H?c|#7DKM{_BJQ7q#Ao&?RkRgRT{_BQ+AnOaOc~+TQFEv9^|CVa|ZSbSVbq zC^EZvW7*sRT5p?=rgy|y{YLyBmE8`{i02d=85-tLI_!28&C65AQ>G0#@c6yaw(WmN z)&Uz*Ik&me^KeFXFYZTqSoHXjertRe@!Ta1E2TEkNA_Xu5jmcS1@-q}AVnK`rI^ir zkluOxGMi1GnDHm8)TjBT>;kw;qww^j?pENHB0>(+!W>3{cCm?r6M0~jWIGYWEBl5i&PNO`H=*z(u^VdLO^eoRSu)fty#tABL+%a2Zr?>v_%B>Q* z0!?~eiigo}TuE}oLkT#1MG`x6QU>2`eC+F=V@*%o$blFk>hH@RDe#9%I~5x!oongZ zHCylmq6cvi)D6XBgwBHCj}Rdj%Fm=tot}RvVbU z9(pkM5}TJy%0y`{cF2*ws`lNk_#z`L@2V_<#@67lb3UC$9Ncl<~KyY9g#Z9nUf} z)>ZIC6*0%oy_|a~Vb({T%vAW+_puN0GNDYj9p{+xMCs#LdcWk7s5sfo@&wm4&t8^q z0jU>bFVDHY_zn42S+MSc{tYSCpn3nSh$CB+^c7=8OKsw*}j-fiM`6}aE0sn^a2 z$j)dg4+Z*rKhJ9xHtDNh5q-?-pp8yr=+?sfEWP?t!*_CRpGbu2lIhe7MH_zo;wJ45 zU}LD<`6$zOD)fOsea&~O>;36fVdUV6+hQa90!A6V$1K+)W?~m=e&N=%&&wYRH`z+wHdo9t40b0`% zrU!gX$7FLH=?C&DF5yF)BK@1OTalNqzlsKBLNf!zF#eqUIQp!`$L(lf=oH^16wai!~Qy(kkWwL9bdw)Au(Tagonzj#~2@5}7uAX0FM zwWUr>*yOyg;iG{lvcQ?xL@B$uM^0GF-gXK+-v*1&wJ`Ee8E?lJvGScX@G|Js8frq2 zI_7R7yr{y5{+ipzc@-(vHG9?7ze_qzJ`@{O+C#Q5TTtp9&6W~mZ?UHM=NhVcigMH9 zy>*Qus!};h$YCm`ss&j2Yk}^7!5}yDIXF}XuW(>$ir&m+YEPc^vfobFbni||82i0} z=T(p$U$%(EFjc|tWEaVdo$TH44F%b$3R(NFZGSbv?g2J_8P&e?{%*9G)#)%U}3{J|+J0~I3Sgf9ba{%662uVNbM zt|TqcL6o(}-mE7Vzx>nlte-98t+xUVh1EZR6?AY=B$hdVFcP1ahGO(j1{n2iZ(lrd zA3Hc>xYZvA$9rxCEDXE+>;%=`XkQ*!_-+VT4km03JE|D5r76j>CQk76$wiB}pO81dr>+aj)7W*Y?HlUT_JTafKZ)bKLtjuykCUuks@> zDx2A_cwcR7D?usCb);w!sss6PqpgI<(a+Zw_I0FXjF7fyZNJeQ4^uoT%dRE?oTBz{ zGhUSX)1_ON*~)?NXXFW5exNMR4#pstp+(R|pug89=!4Sz`^Evi&nOMs5$*o~Ci$mQ z_%fd(1;1j}GQum*O%Lys*MVCfU|-< zrPT?w8r~rGybVtK@Km7h&#Q3BY#<*|^77AMsssJdvK?02w+kOAjs62zPi@I{-(%h& z`gMjE(;1?Eu7q6tej>!3V0k)j_~{e+$hRwsX~=H(Yrx3ax#C932MzS393#GwQ{Y97 zToE%5qe4Qf3+h)>>SjFcuTvXlyJDn2X8d9&376&EP{3tKDo9Qw##PbDdoG_Fjk@8C$WeMCj=)8Cu_MigwWig!En>jrBW>eB)n^r<0c3zM+@S zDm!rDu4`RgFF^_J{6`SekG3r%f!1U@A=V4IAXl zTY5#uDF=O2b>Qkk6!&PCsJGay@PbPHt+R8h>~}b{Xm9Eq$~VoQ*O06`=-Ignm_PK4 zK2Ust%Rq_n3JsSwtm4ajS66R*$Lc(U9Strx1K=n5iEE4*n?%rIf~lmsWvLYUJytob zh7LR9@|l2Z__}nzkEA*0lG(9yDhR=_?F$Flp=TDkzlPtP?6Sa-Gt-5hPQU5*8YP3&9bfqe6zwRdQ>@ z*&o@M)UhAOpi}N24W05I{ia_GeBQCzkhl4|UM~MEZNmppOfe<1vG>*Q6u$QER18nP zxFN$1OzM3a_-o6C7$o8h`(^g>U*GKPVc4lriyXd0rp0a@t!K$Xr)N0FYqlp0VWm+7Zhq^X90fgf*66+1Zd~4b4+E zz5WKvrQCTGg0*GFk2SZx%JFKHg+`#CF`w6u`V=%4l-vIHS5peZ=Ev8)2x1pG)k3#V zds%62x64ChlGK&V8{R8HcSI|9?T@KTn9872wJi{LM1-XuM{=egMJY2g;S%l`hks zM_@%TupVesmU*bN_?#fKFM`cMkBrqrOKBBk*#M~|;Bnm`G*j1*z)n;FhCBN%+!1`T zY9ZEtJp%tQ#??wLNIRWY=8G%Se$j{l9)bvpz`bdC_M-XyTmj6Zs%iroO`9iH>RbN+ zpJ}{bO7ANv$Qtg!Lgh*F0(jA3ZP~x~(!C{3oK3CbIn*K=xxXd*awR+gCkN6DFADrT zpB^k6s;|>L=IJNmW-^rb8B^?QQ@P0tl5j+l^fWT{vWiNIy{;

SxgZ$kFmHQAbZ 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%0Ad*21>cM;7Mytcn=7lJtM z2#z@Ti*gMA01ziD&)xOnvYxg^kuLaSz!O_|?%MlNGCMV?fo6u}NT@rgaB(7I8OX@> zt{3CRrDs2gq>g5aDI*5vMvb!KHRtUBvjuM| z+Xu@(#nAQdUhVree%3br7{C6@xLv6tW*?YtU-!Lh2jg$RD}8qN_m_6k>Pm%#ss~ay z1KZo_UNhnEhthaH{{T_7)UFunP{djWEyyFF&u`Yc46o4rfc=X;INo@(Uxe8I0HfI3 zt}Z}3l;^qh`c}t_ek?YV@tW!txL9JD_oxk$MsxY~{OjX?_$0r@O+!W1*2eNxoo}0N zS$3Yh{cG#5+DqXco#G;IEM|K>NmS!#8?)Cr@BaYTu3SW4Ez#&<<*koS@nyICC4Ln1 ztzJntMoBmw{{a1UBuO+oNzG2XSH_UvTuklJS$+fy5#RS z+7Kccc?>pROyz#nZF)i1#SY@w42(@a5&s zkML(*(r1QAE$rUXcvZQMU|5I22OEB3Nfm+N&m3Fn8XU3e7WVqJhFZ~JXv9&5Am!1q zoQSeG>$!8%uV}i&ns$+Kq0Yv5BS}WUpsm%YRzr@PU0CiNImp4TSH#wT+4nKoMY2e2 zquaX!nNKcHqXKsI=!3O#&P`fT=&k*KT@51?+fS~gj}%42DZ^n_>}1 zj1jjzfKkSBD=J8>?V$1`nmeu12|S4SSr`HnbC56wOK{f{Ni?54vo=X53J+ihr_-RS(d}E4xp%W< z4WpcYp7^I1C5(X%U%3 z0QzI{IOd~kb)4=iyLWIH{{SKdNQ<&b7jXwCIBrSKPJhlhq(WIT*~$L^rkJW)>;(@W zYJb_bZn8-loDm|D8yt2Aj@^F>`HSMGik|ayer^|YF4b?F1aX7UJOk8Mq5NC%wAZ({ z1y9PjRl)2*=N<8y@Lv*ZA8)zx_bTmd5=YCAPtU)lZH1zuu6p>&-0sIK;y3dQgs#pp zf-#T&zAJ_CG@?c;ziv-e;PKz`uIt1alYW}UL?^!nOZbsmvo(Es0VKY6{ zj2ZWB1+$;b*Hjj_X9a4XWf&6MY(mPb^J8foXZ$(+D`(*kg(UH3#7kR$FLI#;vHU#x z)^?*CLh@}pmywgmAO633_m9{o;k#@8DQo6U%jSX)d;|Ia06OTcTb7fN#-n*CpP(PJ z4}(|2{sD!yY-Uwlk=zV} z_*Kt0bf7NNgZHzK!ym1DeD#s^RQ=efo=5ved@_f`Iy};dw|uz4#zE>ud`aUkf>7G) ztqhR1Lvfy%uhP9sN=;hcG<94^K2|?6`(R*o=ko1d1M#QedrK?aDzd7v!vXyB#dl!q zx^F|v$KmIj~N;He=p9t>1`*_ zu39NFpE270y)(`_{XUhep<2&;(W)!Rt&kY7>7L#H04{6S_Rec_=jBh6V)c)OmsfU@ zHC5Y;vif>vxAdQb(T%Rj_j8G=M2diTt| zx>At>20}2#e+>8hD%4gCmjR?=g?Jd?liU1iu1O||qL?9J3|~B?Z)2aFoLo(m5IRxM<*D;{PFy$)>bU=sAhciJaf-a@ca#Ro(%9}>KAI?F&W1S4;&HO{Ay)$ zXzXEH>DIPtMArWRyk-r8zjJ~+^Tz||O;)FK?jejSusI`^Zg%G< z@X4^Srt$hr3G3wC9>pI4K&;Jb?% z?k}~CT0ivVhAZcZEgCqBp<;4ZKG$!duH-OYK(w0BmWd&e#Nt zZ!tmyYOK8!V3rIz9)4nLoX~Z)L%F+p)d70W>5Ph@ zN3lQWiuO-}I)h$bMlKavI8V&uJu}DaUNd6wzBhIC&qH3-@Gdry;f*$yINGY9mZDz? z8?)_if)HJ4R#w**i~fZ1Zrvf;BW#X%{=JQTN$`8%)H;;c(nE84(dpKsP_=epAMZyb zBW*t^?g->(2E0f1a`5fFw}MvVP}1)&>{)z?A%Kz?H*t*nb>k+!&HbGGB)UV~$7gY- z>Y5$2D-nW0w)WqQ=WoheY2ag?O>)^bZoV6w=fZ!3dfuVoy=PL^FExbLrbW89N4Gy` zyGJ0EL?q=#FhCrEn)Oc(cw)y-@Y3s2Xf1CHZxlL$8&eD{2g+U;!O2A>fdq~+dFfqE z&%;|yC`YABHmGfH?$+W4mgTMmu`AUS<&r-A_Lb(cHH}vJyg_}Y{i5DU?ycU~TZz8W zBQ#9P&c`d!j(HsiwQU_v*3x-!Txxd4>B@ov$sftIhYUGaZ|;$r{WcVx zXE+;f8^tN5HEZwDTCKe|scMZX+N!;U+OapG)Tmk1CaU%bwfAU^*n4k+7!8RTg#Vj2 zAM+vCl`G@9pL3t{JLr?Rb8~?$*NgkYa%TgJXEVZLl73Na{c-%qk#(Fpw}P`9(fjg*ss#VJv+o(70E{VMfpXr z3fj}(kNQvQOk72Tz`4*c!M~fr@8tiiQ2qbLd(EQKJ_i~`%bikZnSYn$Bdm3 z^K+==Wpg6^?Azmw#}2KlgYs!|Vu&U(06Uo85~IFN>ziWicqJdXBe5Mb zi@mKYwZ&fB@3L~l+1*57K7Zi}m9E4?IqrF3xC&i-I8Wm|mod@eTBd|R-zU~5jIJDd z6I>clVLx_d4A7$pJYf=5wdP0yKSXxf8<+sqvqe-#F6yV7uIcu_c1xhpJR*UNg|3lYiYxSN)U^R)vdw zfX>dK3})Y7hl3f>3S?R>UgCL+s?Vre)n&H}QHZ~;rhQNLlej~1vRP!rl5X3wzljWK z1EHBH=&@VN(LRR%hJo!uiK{1{;-aO2^5JOn0x95|k1^y{r}djXKuugqR&0JRE|1rg5>d8m7raR4KZl?W(Zv7rWY8a0sa9 zyFcE}j4{XTHkc2y1rNAWePc}iK~3ZiX@4vgRKKW9h-C@dAU9Kk2Dr~NT#89re|2f9 zY1B&ev!i_u53d7|#~bEiQn&892R0JBxTlVb>9vb{z8|Q+YYrK5I(b%yg@LC3nC^1$ zy*m}a#n|ohnU|MM1QS>jJW55<6y&+Ovz}y2$*m1qwG0s05&8L4OKc%`Gs3aj+hca% zKT>-IrP@AX*ARc1qOMP`-B}Q}77ARpr~D0$TvCPh3cn6LgJn>&^-hUCF9eaV-E;iu z?Q2`Ud?lfaG7?=b?y|un;M(Q%RHiUJ!HHLW8Kk5kg-9XK^mWVSr+L((QQ94#GcF3o za8Vf7r1Z1~VCvkQcU?>2K$xd3cG~FA?WfU#LjTMZJh>r5R(kz$Q2`4fX)WEz-^+JN zgY!ae;K2oh-jRgNk*8u`xvMAp>l5*1_XQ+WXBG9jw4Ys^)1M-j=ZC5}{T$-dgkr?| z9s~G;5A~x|ZGBibgFm8>kS~RfZ90&t>#4t!$0}#9rhnTI$+B97d&Q>?INg8oaJnJi zizcsFJ!nhkaoBrW6hJRj_rh-1vrCJj2l92^x3+v4_ER{Or}9sL{B!DtcH7U1_J;aL zjSo4Scy zB)s}ZF(ZMjDTCW3ig6_Bd5`Byp=O6;i6gV_gkT@wHh{o*AHDL|TR`D4UuVY1bM`lx z<={Xyq9A)beKyK%+GUG^lC_XR-<;jYinsyJB(hG%_U3_n2sm^2twN5vIgZK~%XK=YABV^xeA7*+JpkT^# zH*&YOSo0Zg%B6D2R&M{j*^+Dm$q1f5WbTVsT)3_;>}VsVYihkZr?^PEiE04YlC6@G zFE+@L1*0og8b!2LvwZ+k%#1!-Ou5%}KUwBX^LJOh{~VZ2{NZ?Dw1!FZHWu8g!)bE` z=GQFlk0xf4O@;d$oJ0R899Q|siKOkOFP~}qoT|v}>vCk)OmfipPrO6pT>Fxqg_^F6 z#%7|MiTG?{xn46hjbINmtUw0_cb$W2Or0o>1mrf# z*AHDDWt5vGX72bQmTSvF232lvb+a^XS9;rQGuG|;a}#{*oWzalgF9s>+)f3`zIAU& zqUJXQyhq>uN^RfcOQfs;Iqz|hfagr2!-L67F>ddooGUAf`v;!TgAjaxeE48ZA+BOR z3wkj|ZHNPXZab%c{`AVXPn<}T&0`Q=<8*fT0by2kabQF3r_Ps#+DOP4|D#pepSbkE z`{RoF4Z`_J$Tz70UBQy$tsNUhnBybd%O?MaceK~Zf`e~IC1%0!Vd0;_X+1JDXQZM~I^}Wxa*cMr>5@s3|DmI+39%U_7)~?3eEkde|uP zwE6lZ*Sow(-{DGT1g82ou{+~zJ6laZf6u~`2um3Z$&~^^)M=9ukdgZmuGG!0{NwCFpCLxSbuIVU5`olCQG(yMrozgULf;>(D$ zt#rAdWH<9?l>8?G;XWZGGAi{awG*7DN(w&8jT>)H1=tfb&YTkY%;%bDTD6GAS3M1} z&R@`PJO5R!7@K0eumB5*gPGz$zPR%Vo^HQfw{ewydHYhie$VB`Ulr0@XZAv;a3&nK z!%$o9LS1nC(mvO0z$RVe{eE9!VkPMNcI}1bgBs z+pi6|Dx+vL+O>fEYFj-w5&5{#iSJB`%b8PuA;lgp>&{ zN)QIf#8&2rmygg9>d?!S`%Rvkes8L-Y(Cy3Z|=`dzr z*F$@@;gQcElkF$9o)HnH(EN*j9V-S$^>x@=AwF`H=~{L_bD0z z2W@W@bg`oTx~}n_2?l81cTx zCvU5T*e-i+&rvAku6taLy>Zo%*|DWbh!^?OIx9(c2cm z$%#V-9Zhwy9awzIeeI|5vz8BM`?|RpU*6CBe*H9B(Ict%U?%&hg99k}VlTj@E|hp= zm|ekLcKb&$Fi_MKQc&ctvwXZ3>MH{p-DBeipt?J$6=4m7GvYz;Or4hns!Ou@81!z0Nmi>6kgUtgpM~?_ujL3_QyRh18mr zMoBSI#-;imMLI^OM=0ocjJt<)qAjA~o%C8v*&Jei_MGg#UuKR5{QDiT)EF7swn_`L zz+Fwor42q@Fr~Ue+@SSGO%Pj0pc|IEi?T6WW3DKi=c&q5!!zV;AVl790>F&b_h5*5 zJoRr2a>)AN6lCg8%(VxqR$*EOs90K=?Wg-O2jg;MFt>!3Wp@NCdVvvJe>8*GSf=~~ zSR7JJM-N>(=9W3kCO;Y6ybHQ>p6%JDxm#Id2U|z(-fb(|zeVK+>PA&pOX)T`XQ#~s z9ML8;&0QhzZOq)I!?kQLaR2a|IBwud2=jGACE%Yqhj#L(Rh{C(lzBmyj7MMX#yuY- zdJ}2+mBosRJ$CT4!QmvvB)Z$smPIw zjfh!%YZLXxej)#tBv&#xmGcj+e@9~d&1jF7>jVo%iv6L!fcRr23n)BLrNYC)aEHJ&`eRGhvD zeo<{g&g;MTV0+8No>Sgx_bq~xnnI7;YIgkXP4<0ufV-Zq;t!&O6Wh=a@Iu_Y;;4(zRP`7B>OVg0>CN?ojM8 z11Id+C1*KnqBwa_&EH41b3TjzcCwY$ZPKj7i^$kRZ$oP%U4Ie|U}^ zVX};PiXoJxco$-uS(NZE!qsGBAmFszEqI4oA`0tt zSJKd_j6i0ajc3G(WC^-{P5x{}i<|O(FWL=mqWo(h!FD*x587oxizNVOcqgCbPj*R8 zeEH32)0L0YihZC&U+~}PwRh_wyErDzz5tUypy&Tlx#Zm2~ z;=V)sW|Ht)eumlXyT-PJY8ig7CfMp;kpBbT8khU|>I-6kmEJ z;MHqhF0N4oL+kMuh`KGt^lBRU`|76{W% zMjbtalRc6;_;9G_PXo6NB#u#(k&X)~UJpq>Jssauqlgdnd(M;LurB_XFFs+Qb%K6B zJJsAN+cod3F%rkds#iiTL;Js?2bqo1zU&eNgc05LRN98~+v&Cb`j&uN$0=yd!2YRy zX}|dd7a=Jv0p}>ARcV#9PjJQ_Zpt)G1CtwxOPBojXtlf&wdIt2Bxx&GcLRiR$(V;c z{EyD=4>@gIFB!GEiUpu@<4{>1L+4*%sA>(f}F(uZ{{?BkU05W@De!R1g&7c`k44mw^} zySTCD5B^KezJYx5hGo#+?j!WeBsB%TLJYnN-J&jZe_aaQAlk0Vnyz!>GwOHw_r=fl zZ!7NP4G)TG+eDcZTC2%0djLZ0hpvU{;+AYB1G#7QQJ!zA27!hwbcw2XFQ2-1c!{I6lcF))mpnd?8_9^)NX<(GQ%)6r-bHj7rKwl9ZWz4fXlo7?)=(gkG*S} z=b3U=ilaj9&$-L_MlAy2rk@rXLTUFcIJR-yx_T)`H|WCmB!V&O;e@9{4oh0}guj`_ z1FD_X=0Pmm(3;p^S;xHLnr`R^L2$tCV= z2cb0NF?RqNb%!>`@#S|>Al1Oz@BTPGtsj`(qfC*$IfK62p{0Y}+xMUHgd0OnUjO1w zrF{D_Uc9Jc?Cv>B2#dw!g{zj15LrfgyVZ!IhstRhuQ}{{mCA7Sqs_}PawTAGv~CKU zO0{j-su9*w<*`F;f9S$JA^vf5>=w#Mm zO?ESG3YJKwo&kvu{%c#)#|bm)k{Q&-gHtN4#=w7OJtPM1}StzFDTC zhEGP>YN{;sMnhyjui#zcD%(vBtwPwGBgD1$-TMF#Zg0^c5&o9!Vv*MNKRkZa#`4N# z+Ke(|FyJ0G?Pj3;@eiXWH&9tc&BY57F~R$L{@t|BAZlX;co~&35LsoSp{HHn^nCAy zJJVUpe|UNm#HjuNw;m2WM*uaJpvDwd26LnCIblg3xDNbsFyC64>Wa2h?U)q-rZ5S| zn8~_v4~Hfln6Oh|%(u0WY9p_w!DCX5@!A1m-v-YZ;*$={lM}NU+abNTB3RuPROr{> zH(R#{^mh%IO|goFSa3}_Ev?%BsQi;wtB_AGhkwY>3mFK`|@ksK&lOdwPm@P zg2_E%NdvEd5s;?<(_}oX+82X zS0;jkC^Fg8a0RNBhXDEuXX)gQN~w{K+qz?SiSG))>)1<5a&6ZwZFSALbJOB%7QJ0F z>y~%+TuC)j6CXvqeWp@P^9#CJf{7`=f!W_kX1EWzw@`n*z2>TM@x?y$=dCSRb6l{i zu{PexJhmq@90krLmF`B2d9Odjv=aA)5}Rx|>Pej$15V~;$Xh(}cP)z1$_gUX!8km+ zAoTAjkmOL0I4lr-eP$u7K#|{-di8ST`rEG8gSM=IJ`q|>Z!w=x$h5FJR>w@ zP05kGb$KLegfde`5s`a)_E8uvyy*q|SSrgn?vdYH8t6U6AsD4*6Rn8tI`63}9sMdj zV8f;=5u6KzfU^L3FJiu&`TjYWS(%)T^i$S3CdTt*N&M=AJwPY?^R1NLeu;dbe||L{Ty6XhXmLH1BhuZp{BgYUxIi(G6`9`}KIAT}$K zeq&j{i`!DP)Rdk!r9~c&FF_4uW*QN%6mZW}QbOOqarc`N7+uk@kw-`d6ii6 z;l*B))R_K_rC)%D<{$hZF=Jx9gD#g7@1e*T)p%T6`79+JWh}oSb?oj46j=+ zbRMP69RyJ$Qx!h$z=c)NmOoQW2@_tGy-`U7pXjQrWS@D=$yE?h$eWF{B-pC0O&K~8 zUa_y|Bj(GCcy`7W$Cm!X^Y%Wu51dcy3n~T#=x0W<7qZ&k_}=@N{=4@as^7bQ$>q0p zGNB}IC?cT18Z-CO)<$#HBdjm}jwqx%jXxl!*lS`PuYt7oGt4;fAuM2p- z^^p$AFdSsaov0I{ZfS-nEvRfV%~Ug_s@7DhU67psg_Olgq?e&;V!DV^by@@Hz}m3= z7CHDKfaLEKt`P$zlUHhUcGbcq$E3V!*nv6w`yZa$4DZS}@fI#O8+o|Yj?mV%kdMr2 zRaF&{2e#$j;^M%1H-wUyNfVdl(+S1fP&-5HE;5&{M&X zN8M|(@RxElDk+XyYUMO?Toml$wbFdO*A%SE9XOCX@=QXfcjqP8jxRnmcOeJEOP?aE zU-U8a8tnelzI?(g@W${L#$sH~&Ms{eVy#`|?0ST<1UAz4V$nSLF zM`nqwo2?>lMH+L-@9h$08F7;PQ>`rM*Frzv0A#!3LV>xvSOb|ACo7Vmizt*odK(ZX zh_&1-hXNymC%c8$NvS5bCQ2JYmj24lY)IxonFob7-=Py8*Jy)|7llk0K4*-ypP9&X z9^b2CZ$2it*-Jgo;CFI&w?}LwVM%48v8wL1t07SugNYxMch874#@%&26tJN#!|xpz&<^IQGGT(S7u34R~;d)F3 z@zqdq{a5HkW?N6j|0Q*n1oIyroVW+7w=L4=$bH{GEri_3UHv*IMdeamvBKaxZB*~> zP8&~wkG%A|Om#5H{XOF4!P6lolM-Bq?`!cGPT(L*yr3N3kq_7XLplaDO*vj4xVhnt zT7wGyi_RUbO>GT)wBV~E-2VfQfiO9t)u%O9K_np`rRzp|KldLVfp^*rNU*vipkS#2 zckM8WN?}BaUE262rIv_`<0;Qw*Kc#+2fw^a0Sj5GZz~DkY8jzv-@tj9bY!1n29!G% zkpJQRvx6&`yKNQ8D>W}&H}!t ze*~Mw1VH%U{iFCBj=*J)hJfU1b|-8VRtkeetDSwCElIz*agOe=yX%3odY>y1OP#^u zysvHM5Xz&@@Me; zd@11Zk_0gg@^0JKo4xhC(lC^;<|$-d%iz`zoz5yQ?1@h|C-^FmD-qYgbm+rDiKVpX zizc5LW7l`5W!DcwbcGJIY_JCFYO@%{>Bb<9R<6c_B4$HPI_Xnuj9*Qznr_5!fB#BS zWKXbMxeuscZ{I%ZHZ5|TuBs{YflA>aRjqT} zd(S$B@Zvs}Rj4*b{@r*l}C4?J@&i5`v16$|YcmOfWh+tvM-uRH~aB4m=yh;UQ6Bc=K;tg z^0S!ElCFMxidpLV8|v0JyFKak&M;(nzt-<#=VEQAl^Le69XXrV|KkZBoGY>MS{KFD zx3LsxmOQkpwIhvNyH$oVuwo1RcS4-cgDw>@=q=NINhm{qzDs=b57%n+o>1Yjvc?1> z0YoB_o8+TeU2Q@Q3nZyp_vaeMzK@-!ar#27F<#5rnRb4q+D7ptQJwe~XgHlE;sr71 zSpq7j?>*KCqgi<1$8H|E+%dJJ@+|Uf{n4nwDTqzxyQl10&vguckVuT53Ex-H$<9m- zyme*^A~5fr!K;?{YV@Pnfbx4?#d1(CVnX@(zCjybj5n@m>Y{PV)%B+Xcyx?~J2uBS z&r{Sq%UErmyZktdPv!;vJ9w}<+#k%nCUh}ZHF?Oa=W^>i*-kAfST1079b3onXOPPi z;!iieimT2+yCq#vQaQeGW3^%8F)vVkY_O(P8TN9eC7hCf_|XN-51x~T`r#`>Wpe%Z zN>{T)z>}cvo6!jw-Vl=kCxX8NNQY=<7V6xHtNt}J8VZxUh&Nrov#(9IkMyEs z_s*z(rOYy=y-djQ%Y08~9Zo?B^E_G7V#v#>2-N z%WJz}z{@va=Ooga z#9&7sk1BI*LIXc-?wIm6^*4CD>QL7=#%o!#vzI4JXU4M)0Agno!N7MWQ7MD_%_Om- z1gzjJf|Un(Tiryf!O~wEHI9pCcQH6|FO$2 zRC9t4>EMOH<8&n%eqW+Rqu?G2Ik{@TKlzM`fNdd9-nqTAlyUlm0z3f)cX@(^ZaO%C zxZ6=k?@xwyke}Pbx#IJZN!as;a3y&h)a!_Dx|b-U6tnM?tzEGS8m+faZn?PRu$VQ{ zyp*?XX+($izYz4+??~ME=hdLg*`r$9MiCKz|E$$APMMdTf$9MAPD0fs(>MMBmkWOG z)ev3KTTCgTN%4Gv%<<>;HQM)TnLFW~3P1qV8mklMw7Amm#B?0y7~0{_fk2f$0jrnX zk1)^mSC_jw2D$MJG?o&9k z=-xsG;B0{0_wy~5O23J@d}VP9QsK;+=a7vdNBOd$!GT9|J>&9$J2#Y0*Q@#*_5xh% zg?iaM9;AZZ{xu$0r6fz8h9Xze$km#(O$uT{FXRMNAYWepo7Zm5=qpI(1>*%$m*ri) z{AR`RdtH@P9Fhm#@0H_V@MwJFS?Zu3r1kRNM_m1@(CHnrC>KvGW)$fS)BeHmq zf(Ku?A=#^zG>waEx*JWA;P~;(Hqc%E;+z&<60f(Q$9%bK6PXn!gR|gDOmyRvO$y<(%|~5kRLoIBH$+kz}c`*>Fv$X%(mR8T=}PEi1a7k_rI>t-34%{v+v&Gu@c3H=N%Z_^tj4FB7_I9T!_D zRsn)osJ4urZq_n!o{h^Ru489nS5>L9(o7j`)Ykxr{QE|sclW$@m}>9F8O4&t8eSs= z7t=pkx?N`IESG^f#4H!Y6_4m{ws`??p!_ycRJ9@ZGFHv#91tzbI3TgyA%l}7m<#6` zwMWFG4Dm!K_!d}w4q}i0_8$lMFPSgiaJ=nK8Zr~KAK~y%dgpO7pODixEdjFgRHLQr zx!6o}9`)X!8R8}xdHUJY)2qFvS&7{7pi8g~g4ACKghgI!UWcH~Ss=zofle^)VFF>V zfoV~BTQm$|9+d%PtI}={*s(>(?ErDTt1SRLbNZw`y>#6l1Pc)txGegGVWFv6k@QqA z`;(oh39!V%EG0;QByW6~x~sTS>vLx^@S{6S+{!+6;fDDimM4fZdIjN|oWsb?3PRpJ z^kRO0s%G3&t!YQ-sw968IfqtCUTHCljOu<^Q0l%j+iv9!^f*%vLy5$8>_kbg&4ekT zlMluf451jk_bHmz*S=AI2Jb^nu5Y)fhi<=dTgRWa5-XyU&hm?c^1os=o}Di6Pkd>B zAL9{)-rNa5+*B(dZS2LRL)?LGsCIXP#G+8#dnmS;Y{(a5Dq(W$LYX1iJZ|=W2Qxv{ zE97CVwvI6axUU*yqh?c}<20QbnoGw7j798qRe5Fb*G^zodgqU9Vrna{t4d58lxa*%I8BR7YM=f2tbqpiEp(644AKHSl^R@AxqLP8jVXM`>ilQ|XAUwl zRMHg4llAY?_Y#3wQUbPYG4jW21wSgE_JRl;uy;3Q@W1Pn<# zH+EI~SyQ|9nJWHJ7UmtSw^c(g@~v^@8~wag^Ni+m`xWyX^N9NJVI#;{mfElDoNc zXqvT-HgGmBiN2HjO7-yN4t#G7#)J$H-0mzhE*$W1IK&xO((j)&O*JZXTUX z{kSDv)vjqkVUAvhw7VK8OdOw+`$@-F!V09B?dj6E^RXrEJDjp88A`eFcZB}dt|d=} zq%2bAIae9p6OY+k-+@5R>jI!85}*g?NCFTQ%tB9iw1`Iep71I=dc-%+{6=P9tM_j_ zT3*>roCnB%9x|#;v%ua4F6_Gvv`nrw&{vfl+MfE#Jw26O*JYBEgP+x;E9z~w^3C~3 z*(a{+`v%AeGwFf;+25^)dE@GNt?j-2X3G8r7vr>u@MV;lq@ei^PfuDP4iuoI+k+ot zxBjW^I){ecTB$vh|3<(9waNjiZ*&NqwDs$2S!HXB9FR!#KbUScSN-!FRu1i2>$XcS z&L^;m7iR#g7GqL?p zN?2?LFNK5dV~mMZ7Szs|D{(LMxyH{Os^KSrRybtPwB3xgxg5iI(?=@W|D)cy59ty` ze})BIC@zQqEB>x)sj~?D;d&#w=>C(s_q4|q+G${l+~( zc=<3x38uHN-8+gX*HcZxw8M?2|86#Dd)PgCX3Avz0f&~ZWKFYmA)^|!QuDIR52Y3S z53jkyI)o61=s||@yJ+p8$hp4-Z#x5tX;CNroNnJiYE~m=KlEdoNndKie8jS9pbMD@w#@E zx*O1$HG^edye@yOb?djTZig%`1^C9nV=*NG>ECOtZ7^(6TMcFDrs2kLF#e-p~l>Xl2f%0T-xC)oE z$Hb`0c)$?avX7-w_Mi8BHVagl)Hcy^iEsh`?@4^hDy2{uAq8VR8MQ}TsS`6S?4HZa zsH09%{Egt=BX7A~#D(zz?Hg;p-yah* zafUeiZPmm#iV*s*K3g9m4JjHSsTE53L_aLLLooA`5VAC$Y(AXQ1gr30f7pugsyLil zedW3Y(NBLM9{rU2M?^~16VdA^fWO>?RR8Kyz-2s;X( zi0C5WZwq(gH&Po|ZZFIG9pl9zLX_EKz2RF&o*0K6z`FN1CF&d;S`(0TTA(5I6SfDCc_m zQs^{M+)eKHs|3|Fe>gbVuaV*Rk&{ROl7|+75F08j+!1GQo!Nc0t~9&}a1Y zzMfhkWfMTQzIfd{!BJ8PccSAKPTRa9_!nHt@2GdOG)8#_s#IODx5hG%GqOAymqFNE zM!?9}!&MjmZEgPpWmMO*!@%gc6VA4bkyNcOsutR(09F>4`;97yf=m zz?FMqd#%A~o68zcvNES=R{(?ZR+2Se-spUB2u>C`UO%=%o_^)q^RXMy*c3eFhA;x60W91d@5&lpQ zbrmCwtKuT(dzbm}3y(qeKHra-_~cz`QC-rR)c8wT##V2&sU*F(2yIv8%LU_BgJict ztr(%S*mCpS?=Ti4S5}Jqf%bhL7Ru=PWpKG9DsIHoe@Fty#24s*LmpA6QI@>8N&IQkWpsz@(r~iFnOtLPaQ>u2mLQf)nju@l z<~6fOcZGSxrA?&ylyf_-8Uw8c6mSWzXx%r$s9$UB71DqZ1+gk-P} z7Z=C2KslQ4%ej#J?O0n14R|^;uRbpq*!<1|a_;?ti{=xGyN<P+1IiZ>A^pj!mKg z%-%g+hLxY=LW?>d4Oog54F|-(EyH4D*($qmVT4kxh=Bz#F=WkR+@)7&hO%?f3qx|o z5d$XbMES*DIGa9fZEMzwdNM-2rLQ?S#J-US5Ouktq*UKB?NkOTwMDtp6~7V6f7^?G z_!aG6Ig+hmvi`icj}fF0B8{6Yj}{m<@7^x_0kbqak3_9;9eeY6QLA%9x;mZbN>HF^ zw7{Qkw<#a`#LH>Xv%!Cc1Wa<5a>%3D^w_w1$u5RqvzdqIzB1|eYD>OaPeFwnGiNnM zbHRK?m`0uAt=pLRy8FY|l{xm~Q7hc#GW-S*L_a|?!P6UJnoxfqi4^FTV~Qr{*AbE zU(|h#2kCW+fLBT&A~$i>F!6pQ|A~mAp4Y>PWyl=D=555;|7&f2cG%fpB56kL&gfn~ zU9^`wIvY;O z+jmjjn|axm-_Bc(eeMc=&~$`}i>n17^>KMJ9H4c+iwgtFZp^OKb}2E&<01foO|IOQ zy0<$_x=NM+Sm({|<&*ozP5DFs2dxm#vEU;Xn1TDx;A+htTvqAsIeMc%E`eCDZW3vG z*4=38HO}by06j5F;ha3*ki+rqW;T$b){AUm{zDK!`ug19G90#D67u-*g+l zI-4Pwln-Wd$VbKb^DhfC#EbEL7n{6SzVJk4vZZ;laFNL)0QrhZ1MMPl?2MK~&ZPE4 z!D&MA6kdO-nGiO{3;bo8_?m?GY-8?krG4d_UhXrbYp;M$;U``*%9%(#)4Fu)sOv=h zd-g6|UZo=8S)`dbHkZ{K&*#2tyC|~ja#C?@bu%J)CJEdCZ*iXN1Q{y00OqSydC}dY@7H4jCUASeqcI}S)lNIo zrw3=^NCM)873{@D)dm|T(%YQm^XJvYp_L&R;LgKjLeckw=2H$qF0f8eAQ0!`nD1b? zOvga!Q%gpxw*0pusG2!F7NDPien95bT|?!7yNdhg4KtdAp3lW47_PfeJ&0HofWm*z zoWcBzVhx(m0m<{a4{-$ZVUArx4YD(=~sv4n2<*c*zL|( z?`vxH9JE6HzlrdB!MMJrspAYUAd|q1a&#%;yat5o`sT*`bY%uFFM@y-4coFL!V+To zmJMpilx?aH7;-Q0t|q3t`cQyA|BE=rB_nF(!|wst4nJHHUpP#FChbkFnZpYinfS_k zU}q=h2Fbyx8YHQyy~&F==p)QRio^1GMm5o=N{?_^?2R{EdF`ln>f$riiNR_MpZh_+ zg__bE&sjrzZ6;&(LOZ`l^#-_`Z*pFX9lRvy3fmquEj7#TyOXHgeF9SIJe9q;S)g-- zYI_iU5+7=2`J#vm*BHpsmC}uviHx;=It5z(0 z8h1jMo596Rhydb0yl8eFXHtz!;e!=o;-4p}2Q!Ku=Dek7v8>vb;0_8uTO2i|nm@S- zVe2z{oY1%2Rnb)5LcUeRFLyM#h9^9I3P*0fp-YPM4&ky$8Zmz*onmv!Yx0mYIdygi&UYfc>S2n510hobwkdJ6 z$;iEwJy-T|nJ3!Z#U^_n!XJ2D<&fc;wHfiA>(lM|-iypBvthzdZeP)5&jI@&Hs5)< zSX6GF5GkN%paF;hMv$Z|-+aeY?<1ce`yGo+9JI*PRE(5&5)VJW_29OVu?Nuxd1|qL zw)>`&>1v{%h4A)WU~zoy2&-tiLl2Gt%>7k#IdmC;0y+Qb@F;Bzb8ao@wV?ghOg>C1 zI*dMiu=5{Y`{5h+e8Nzd$Bj90N+@$(YZWhuH&Fm*5mvwJfeW9fvh0M5k8c*HE^afoMX!eB^HKwD{ctiJbXQ>M*MO4=vvRdZ+V)is}x0 z=e_u=obae&XJj=X?B;Ev!feI2ONBwrgu?d)jQMFQvTiV^FUT*Sa19UQu--O`rS!FG zLAc}FRuXhMBZVP*QBqm?o8j8&fZr?rdLL6xolS%CpRbx|F<;m|{2kyI?_CQsf&W(v$A*g`_WsFwoPB$$|7-(j1Ng6v*KjcSP5HSo*8PWi80#$}w2PsPp-Ua?vu*aYlx|jDEp!-)O?KUoownR{cC?Y0raR1&lMy;zv8;PAwOl8^y5+>Ux_q-=dXv zJNSx;6u_FF&z)Fd$RzjIzqeo7(B$2;#8q+wWt{G+&xzT!_oB`{SC!=XL}=6x%@O!w?>+H@X0=h zD!d6(Oc?=dSDfbNtaX3sK54M>{VX09rZ2UI`Lb+AZWo&rKCIYHhm7;(pSTBx_vVOj z9k4tz#bzn*HJOlhv21r$J@w5VAtdoQ$wLGWov&CL2`!dki@`mQO=xQyfChimiY?FKO&apE)OX^Ms=W6Pz$>+ z<(vBPV$Pp3H-TLj^zV;4*U!2RW{w~G>6Hblpt;EA@UQ9VmiitX@4Q%8e3wM7uV__T z^qlf81-VtC`=^49RK4}>LS+J2W8Ow%LuV*x&L-o^g`=g z*<*#teUBK>q%99ZNKP~RB&j`KG#P&C{rcte>=*NhKk*8_*bgHM0t4MR=VS@*%I3v8 z@bXnF*Wz!6d|bj}G8UBklq6&^FbyOH(i({x(xdujrX2-v+ zFQ)qO_QcTb+sA<;uEs7dlPx?CYE@)*4Y=-mF04eHH5lc2BXo$QKIbYCBx~0&hXEBv zNKOUi=!9vWX4|=ZD*oe9nl^xhO#TXx4C|nSB-r{lAf>Wcc$ggp6Bb>4B_|!YC{I_9 z9hSLj8lpAguTgoB(WCX%?Dv2l=<;cficfey%mM!GiRxN)eKW&FSde8GbygwEW}8w! z+tS*h{&e$k-7`w76=tI)w>g5sjbJcd2p#*eXJRKM$z;0_8@rKKs4*%1+sv1E?ltf# z@lA0GcyB7)5A>4B{g%G-hVZbf8x}z0d0Gg6*`(f8S&{T7I-uNeZv+==#?|pWb}=iE z2-zAvbP1CbB5srEcAcu8f^)+Y8dRCImSrvpzzX^P^xm4_ z5dbQVm$3G_(SJ@~ysT##9Y*;_m>#IUw4e{_Fxo19=z{0hli>|03=86J2!?#jpI6>F z93lmLjG=Q4Y9mFo1;Pt`hgJ;nE*t^z^__cad_T|55f0arIG3o@wcbm}?Dm#;rD_)m zq>1Bl)oU~mdBuu{6PV9KXdW_FFY;3a?eYUI6i<81GBb@-a>CPfq`K88x|V*mgo%4o z#dV%Y`n?`Y5cyG3J{}U2)fyD&;KHmdVQLBXUPiLqNx3Q?x4t~Nj@5nZX z6mmsy2cX7Is}&ZuJq<037*w=H6S7{&6f=Z<({V4{59er*`3HR$&NqKVFXAoc%i4wc zjXgydRFlYYwdSpc!2C}X=ZcCyCitc47U%d6Ev=J*{DN;YZlmD5#6h)3DptulrTFhW_eEg{rPvpPlif1Mcr525km+C6*hN6cdPvBQtqF}=yQA7TSREjV=T@)#E3d5rRYZr8OIO^3MKI`|XX9#Y zx=i+uk1ZAhTVa>}D7cQWzTLlA)t)r*lZUI`xqho!Bq{~{?Vsn1AIH1iaU@a9S}OJF z*Kk_Z&^G^sJTs0yV)J}2HEUv}nAH($fmiQo?u+~DRm>e@U->)m>#ucK1ZTB4KCZj! z+7OKuF`Ire^C;PDcsPOAbVU?F;h*J;FhO}*fq4+gnuUI75KKyqIQr4RP@m&WG$;dS z$#SkWDHTTD09^Q+B6Em!hW2ruSK5jP*)~6i>+zy)TOs0)(&8$8-K;Z~_n!|lgZn+EBqfeN;6McD{L1PLfg=f)n zppl^w|0)FP@Orl=<9sPDNUT+ZqWLfX{lGn2{!Ln>2SL*T3_jDF|0K%gNeXlKK*6E7 zGSxbIi2}OW56N4g;GF=ypCa--aV?G3xLpFLLdpBgUnf#;QTw5_3E^fyAomssbKz#- zxHaEs12EeoYpL+#LX~^qmhVduun$w&-A*_HwwQ_w7t3R7)UP_s%~UF&^!;(%#xVSM zwAbO;*P)h__ZB|fnb|!+u3wOcS05oC0=2Z$Z*N$Zs3~3$GRe%Yu2iqBoj}UJTKg6? z`|keb_4mYFADaUl^cxgKW&k#e-O6h+Teyl5d7blRgb;Y_ov8f&u|~#+=7h7j`1SQI zu4L<-vm-g|;5WCXaBOK-8~87KC&;QsH{o5@PvW5ob#Q6Gh~Z@Tkmg-6L(bv7b$yA_ z1sBUbZZDf88a2-)JMb!}d})7^bwd$VXHVMWZnB7KE?V_-qE+}-(g2AU=sVNVLCmV% zQhlz#nNXG>eRq&h^Wj--^>ZxS{!+peF^Qe487HqL!U!E_nI2sGY_Atg=$!OfWoqyLdGcGP>~LC}K)0u;GzuIj7OD|F}W zg`Qh?Qn0)4HE!3;$sYpOu^-y%uoGADBp9n5;W}WX*ThRM+s?^uk!6I>GHqtO==8n7 zKv`?HBNtkHLf$tOxd$+}CSUBXsbV&oFJ72Eha@=Y<6KO(1#r~;os_Nh6IlPQF>FbR z?u8mj3`3mb`T3~RH4vq7R!Tj{`$czu9kY!Xr*}9;%_uHMEf{;t409Iw^=lQPm|9kM z4{8=mDZ0-UkXFci+oylom7TZ@>=gMLraa?E`46I2DZ2F5gOsLr?3<;^L{2^Rk~}nB zi|D-Rh_>f$92@}55>7X^A(2`RA*!5IYgzcsHtN+k{m^^Q69Kva7VMZphY_ZnaXkNH z&S_joO|Gw{ypxWeCblQ$Kaxa&m2a(vH@Rq=MZ@kYQsOGcF&-ryi2hW&LSHeyW2zSv z5f^lQa#FHPHACBm9(^*=M9`)e44JwlRf9D{wc`Gs^&+_o|_%=U3)Odp)CldPj1 z7Ff*+)UY%JADbz!c}ObhKkgHjYqtfaop%~}6C2%kMhm4Dq|brY!vCI)G{hftUO*gwaQx8h|S&xo$>2Q>TA`F*b^;{A-g*0u}Rf=N&8 zB^lU?KTY3Lfh`Km7FE+m~!BQd7WSwX(_Wr)iTA(r%uxKz0We;LE+99vBBUmK> zM8n3QkL3(tt_XiZjs6RESdWqTW{MSo1eY%-sfDbEr zUb$pUz_T*n`*r@zE-=;^<1BE z)8YnKr=2Jb0PeXeCQotMm8JEKWC+_ek8Hh9IrdPU7}8$N%&|}>`}dNY!>8h7ALF8Y zHDprl5vk=H_c^Pbzj z4e^%m9TBFB;L`lD_jK4e%MAmMWb}2uGk=H8{wG5wZHrR;3()}^{%lPxqeCqg-(e#h zePlX%XXAP+M(r_nJs2JX`$?3{)6WkgW#7j3jU)oKQK8cA&~Fd%AQLkOM>(lkrobmWj0fX@Ej=^V9}|@y^2!t#5TpB956VL91{317!|$J%#jolq*=PEAwL>v`&Ma;wgRkeo>*HRV?_P||H)91H9Sel z)mL7QwNhAD^YifF`g>mFXX3g_7v<_5)=%Zg7So{;aAEC(koHu6Q63jPpP#$Zy-<*m&t&ZLFu08RYf2s`d)&AH%i1CmwdB3>S z@YBM)a_STNO^yAVdnH>byo^)hq^uYV-Ujr#Q0*ViBJu;m(U`)ei+Z9i~2H=!Jg zL(7L8nDY>(LF~NKB9M$bWteFf`d^Ow>bZiep)Kv&F9)`>{5LD1_Rx8QxA=@d85%-$ zYB>`JZ@aQq{mdPF*fkBva<;QpjBr}4khe+w&B)e~bbqIh5N*3<0sZ zs6={x%0}Y7y}r1}xvnlCl1+tO>dD@HH-ej~cj=+?u}XliGo0-Ry`y}LiBeu<=j8BW z>JZS<*DSZQB;NP$@7K=ds`9ALJ`sFS^J^%83$blXU1)^QXWqqX(2fi&Y(Nfv_0v6| zi^dv=NH~GI=l$mwS@cy0t)oPi)xxrj$Mxm#iTl*lpZ3!%s#||t&^FLkdJ)rePf9f= zgg0YPvr?M*%KZC~NfN$CLR0eDI)dfIj>%M42aS-UBRn0AX1cZy7aXSmsgRW*jGvF*c4PZKP+fMgKp0o&TYR~GBY+~*)I?bX$soe41RLB zRM&C+h}y5%c+pfiZ$p2L=-$LZtlY>rRc7lI*{@}%Ana@SQ_oqEN6pj1QlE?p8Q*Iv z+MJbx|0DU{0AJ$-tu1ZD#`tI|Ey+7DeWsde)8cgK2)%v=&UN^>bAK#7JcoYY;#=O$ zQoSt0#a$oHI!VPx{q^E=yHf&vh1+7(hL$?Uqe;cvsK%|yW@;@FbZV%}lkhQ4;pJHu zS$@Np3%lPGwD2g3!`-g*{aj2_F0MwknRdGWW!2zMC28t$x2~PHhS|O89R3?y5!iBg zL37QIWajdtcT}%cl==Wl(lN-Z7r8GgZW_nZ)@x@kV=iCd~I^Q^H>akP)D=aKF_X{x?&? zaGoqVR+oFX^~K|J3!viqd)D8=KA9gh8^;bFbGE3mE@6?!aH*NrN2R+2Kq4CDrYG9|K2yh-a9r~>-Z^}y$k?5rAWO$Dwi_RYkazGrebW!_Bs=@P6^Xzh8 zY-0BBeu_C^xg^w;2d;I{s2zf@l$GsH6(l045zAdHME`|H@w9smqEXYX>bPl`!g)o_ z)ofmW2gqr!_Ni!Kw;j;pi$bJS4gj|GouV*8!9i_TsKx9Wm(V(`uj!SoH|y#}V%2;9 z=Eypnp~(=BRV@m&RRtxDX(!O+$yIUu_q&I8oYUZyLCn{Xri@J7 zgO$go5qElo|KUQH+H-M;as9w*7gq(hfy+cF1Jc}~!^azvokT=5_61*4X>IJ9>GBEG zR3$H_@l9vjUFc=dtN^z*kuD<>O%aP%9X*5Fcn)3WV{!GPUoAg4tSbC&?D;C~&D}$X z{5eo?BE5yJTnZ!#u^?9LCZ(nRvh;g%pJMT+H-bA_bNpwok~AklYXUQW=0~~GscrAd zW)gu;MC0BB)W!8z{|c>KpE~7H@M*ZI)3mQUGy6BZ2xJF>rGvUUzRf#_P1=-J`5@8FI36u#R4!~X33pg(LMxGTFf%WXpV^@Mu|A9Y3V89 z@wM>HEf1owtfbIMQ9Wc}%bi6RREWb~qQW?lzKtkeri;A(mxEj)z<&X5ClYJ^@Rnik zr9>hrmj1}0BD-*LCy6p#raq*$l1o?xbmI&X*z+_Gm2HR=dS6+w^4z_}V?mxc$l`XO z*A%^osA;tQqCHaH7<21|3=hu~+`kZme5msKUt-B%Q?e>=1(i}4MjmRk)O09ZxK@w` zcU%<6e6hv9{r}ubR);-^bI|@lO4Szf=MQQWCrQ8G)&j8nS=Zp)P+pTBk_CT^k-}w1 z$|onZ#s^u`i1xc}CxYcV{XM<6H}|iigH^Q5IwmXE4^NkKifgJH4(QP0neNaOs%>NK z9=`m7K6+N&F>fsK*F>cAm*fSGeTt^eYs!mO6m2su@`f*)V8ArlJ#~H!-)oD7G4{&J ztG9`>W4q-ohJ4AXn@K)Y4P2Aer(eJUv@N`QujYNMPO<5pp9f&+lbgitQVb_wK?9FV z>WuP+ycPW794>~cJ*)XyIpD16c3?J)xm7N%JaPD!do|z`aWU$*67@WJ)3Im{$lo#B z=BS{YwrTnFnCB0k4Cn4bwEZ>IMb<@&Jbg!!^znkc~e3 zaeXA!t$Xyh|9_6da{kn05NE8PFk!VAU~@FTvPZ1kzf!)O-=2J7_g# zDl^tSW?63tYBeahCdZkl`m~HVEmXg}h(K*mwp%w&Z>BFQTO%KxCxv9A;3x1;c=n2$ z?>w#_vy&s`Z^_17g%SU-Wd#*pA5sdZjm{&Vw1=`>Ba_=rL@!!AjLn#ElrE3IA9X1! z?-4HtD|LRt2^cM@x3R3Ms}MvX3-=W+d$uL+?qXSk!^(4T-NWA(aS-ooaEk6^0O#_Q zI$(Qk)SSS#JNQN07jbksEjyckBo1k*ig|$u`Z_}^>%p8^+`>cRO1eX*a&%qFOzeRi zSwCHoPDQ+T26Pm5`0pgX<7Yk=T6DBy-yjAX7JMx3%X;xl#m%PW|8r+qcaizH!JQ(* zkKzn2u+N7t>Gm6balD8C32Sl8c1`6??mh6EsCA1W!OQSs0Ijog0>U00O7dRLs>a2G z_^a2kwLR+yj^QVC0XdyxYUjk0Q7aW%F@)l@*X`%b>!g-p0&zjYf2$7^DU?&AZ1aIk z(b~rKR$R~ZjbQ(^7TP#~yfINGCvo}B7+UF`FOn*Zh)b zNWk~>3!zzs$;98cxQi`+=06>C*wBzHjuV&v)hbP`&V6+LUfRl+)bapz$O%rxsYD3P z?t}d}ePqTyM0Rau-aU}aX4&?4{K#8b-rSoj%+4Pyp5;qOCg!mf5@2g&3=7c@>R{l|L zq-p=lD}z^s3-cE*_7m-IRa0n7i`{Z}1-(zd*g>K*r2_VJOoIY{2~YY(8iANp_Qpk7SI|Jg zl7^G5N8s6at5{|mQDI!2vN1W0MQn$OwLu6z4)bdzvUaHirEl;CBYJOO{br9bwCP&I zqq(71NL{a~(M4uWn(r0qxzspG=QS1ou8|6r;vcVslj(NQ__d@xxcPF)CQ+>PcAD!8 zKVjeg7sh0)tNL8MTJw*`5S^DEB54vMlOf!X*zCqwNe)6%Smiy;rBai#y)Y)6D`GLW zIBuK)@yOW{x|Fb)h`G_Z^^4vy5bRQtcRKxD-wDvLDgrwPGxa9cCB3hzjR{kK!WMMT8meqC1pud!3!(_4txQ6MMDb#Z^X=0H}!z9)bKZ|{aSHCKwwl8V#$ zs`_u8BJoxH9Zvi{k!<;(m4X%bZQ5~|Ll(OK^EJrl9?KRFN`hF+>kC{ny+04!7vh-~ zvb4Wd@AHN|j+mBtx2?!zpI#8>Hsqva6Ra)6MYd?@>rEX} zpzaX}=>;Ym+~~l0T#Df@Q+wUp<819M6G4%60byQluG>wk zTs&tNDd{wB+`o8zbWqR`n;X~+VK@9q+SM;ROCKxm zRJqV;1bzD9MzQm?9^>W2#NPOhuBjQlBA zzFx*m$fU2>c~3i2v$64T>8`S`_hAdGHITp<{6gWaT%Q^Dq#~!UWVz>!gNB)*bL_r_ zck*=nOWrM}tt>ITi&Rw^n5H=c>G7q76sbp*)S@6a-F|--Gb!<9a(136;k}JY|7Ob; z@WXEB#*DLDp+Wp z4~i|-WECE`ICJh!Y{E!x1AsTb40?>bid(8+m+ZTC!nux+BDzln3N^60VT1=)PoSO` zF`LYOW+HuckAuePG7wlS^l2R5wrYOQm%s0$uO>o=Fgs=J*x{_l8e;`S5X%Q9$Z&{4 z?zJ3F!pA?Q_-Q)v3nG+_c7_&8E`gU7oAIgsPENwP4Kq1)z2EQCCc4E-18!tdzwjO} zYw#KHQT|BypDV9u?45f95GWm$2^+hBTskq25n+W4ZCyMrfUcMaDD*y5qFT9{Mk&+9|Sz*Ws89pX=APLZ=M zaLQ}(!~If>SGzriFcSKtrMY{53AM2YqMHs;TQrsKe`uySlbg7?yC-x%)n3mvCr(>| zXka<`h#KL+*aY*()s@k9@t>=bT22XGgLwabuKUzjW%d?zcD^(M!YMn0B$IIfn{HhG zc(>Qc36Tt#)Q%rpP@;c@AnsxEZ8A^(L*VFPgaxPz*lJ@*cyZ`qLa-X93Ts69AIV!> z!8h4x)pG0FVG~UZ$&1VE&mZs)RqF6=cGlCF2yAMM)i-q)Tg*zf(T*bTwP@88MBJr) zDRyRD%uh7*TU_IHQG#1r1cVnK7YOEI>iA?g6FY!8uhz67cGRsJ*~`azKsB z*M|RcbyhA)0i@P}PQ4sfhnpD%4)(lVGnIa~sfOBbcGq#c=P>>pox0zNvbSHtgi4P> z-SZ220AI*3HIj3h-{h zu8x^>D*H1Tj114X*QfzLL}3ZlE5kc2v@968!2YsdhE?Vo`Yw_4uKmIL`kiv-iI7@= z=oqxWP2qvFpZsVGAZ#^bTRs3I1DE=bq*S96u}A_HmOD-|+qe>449q}#8+b3RTF_Wz zbxfUBc%1RzU5L*CplJ3;CARY!@2d4Blo-`IDeN|%gZ9e0^yQ`W8L0~vlhQmS55p2m zu1sjF{PA=vwSrbNu+c&L54b@y_QjWpb=r@l^Qj{_`92Em3@mPZBP6 zoibTe;w{@6b*KB}Z#xC&!k9h`zV@>!Lr*U{8<1Q$#fb8-kg*VrIiq%iQlj44*QUj< z$l4G~7@GLG{xPu=TGmAtvhW+7=C^8IN5EP-Bg%e|M7CPOEw`I6;Zb0H@lJDRA*+=GduT4*?ME^(9oo`>D$Gq3HzK>Mw zwBo5kmVdz?tQq`${yw2+kmFaITvk@v4R~A4lg0BNOLfHwxu{TZD+VXocl{Ux+`UwAst3N^%)Ib(nUv zf%B$4YbG0))Z=a^+oD=x^<9f~`y!|#q{93ij{VJWvu1QKQ+p$Z^Q|B1V{G5k+Pyf} z!{jv;LsJx(7O{CS_5x~xZhNSVlh=QF(M!RB9rHyH|5Xf#)*21I##%6@<{k-&6%g}( z5TkwuTupr6PwG3}>no0}Z0EvlL$yyohY(ft4=eJYyDj9{vyirsDc}*#5%7Hft#0C1 zOfz=D!!Lr0KP=wW|8(c2ya6(cLQm~aT0`}|46iG3>Ck*Q>OA|lFO1z-byn=xYs{)qw-MDzfdu%(F5d^{G~zs zKem>om)76gHS?7`RXl}*F%Ixp|`860A-fzw~M~l8Q$qC9QYnkJ0necyg_y`d8|yh(vl+ zS88m*cEdwTRpiik=B+?_PH1Q2Bw4q_ix*?jjbG}bI zv9J;0VJ?l&KHI{w@O+Cc4Tii{1yoF!G?SV=aOP`A zCC-n%CP`p-BR}rk9rwQ89lQ3pQo)yYr`Nh|xAV<-eSy^Q|GZ+T=>(QTqtde@Td8O( z^8IWrFCkreR!(pdrRirRt2cgSPSWUzuZ(XS+nWvhHYRRnGCmc3S9tg0TtW4uVqnUr z4JKp!c^=xA9hqJ$rr}XI%$)K!xzL)&dH+8W(H@2c$+!~VZcg=gs;j7m_Y0{*i$fQP zVp5e=!9O*){Z#aoULxwvOnaYm3`*L7t+c$%w(96?Ev}NOcTp>MwBn+HAuVOQJMj0L z&qpY#-&+{Np93MceK4??R)Cu^TEpPl@P9{r=2zvllq}#L3slXCy8cR*^IwCu9wi z^{Z2>m2F2}>fdu}R^l1n@&2ZX&5fP*kN|yz)kW;p?EBi-OqSz=r0sdymluwiibEEB&mE_fVL`hnub1a=h+F<@Gdp$?@B+XN(r5|QK|FFFQijED8Y5pqZ?GQHR zNS{FUIUy6JhGsvYSg;>hv1^>=J%$E0(KeHYbi;`3Sx$#vXAedDx269hS&%NJjY(+^ zP)gCy&hN=;>O45;^E#6?3oEp{{MtOTQ9d*EY(7D$ewK3kYv=mav>8WIx9kn}y54PB zxK4ywzx2)*U?jp;IwOWewZWNVJbt2kvt zh@o>1oUWM-2HR6>6v-y?dd6Ay-`UgRhi{wGN1SAE8tZ|hdt7X7ZIho*v6u)P2mfY7 z7N1lkt*v~mJD}eN*?l_s60YkLIYK^pYsE(}uG3%tVMIIK&O?GEb*WORL;W#_$=Ak( z$1$h7L$Fp%lyC#XE}K+F!C(C2{hRd3bFIcWM|btx-{^IUc;&0c0z6Efq^&j81+=`G z6{+BxqPhB0->~?Kd?Sw2t#i~{QE(h0+Z@|=GHK$#EX(moV(G~npKrH0L>G=~?o--l zk>SHiAYdHL>^Yl4MS8O%KvjI{ChKYLRw&)ABZWb9jk?C&&3${dReEZ?I{Hb5Wa3TA z*fuNME%iUaKw&x2t>TiEdv!Nl=-7=6=ogdjd4-aB-pGvHpU-$Xyw@`Ur#7gbbZGP* zv<6;LQP^nvcwUhAMZdB4(xk=!4+#!Y?yw!i?&N~jp2Y4yKM7Rq(vhe+u0&Z%UTFPP zrt`PNI7cu{>KQz(4UUWWVaCTBKuHM<^i>0~~=L@;?;{Yhp z$g-YcR)tI2KcG>2+9cD&Q)&@7!&#$ScFsS5ZRISmKU==nTK8#f=31?ofx~-pi5xb~ zbzplSy`f7ypNVVWO>+%L(SpFFPj(B##sLYnnB@M&^U*JOgC2kHWS@2osm&esR5|NJ z%a}U^`IwZ!F$y08#XE;zWdS*EXsi+X2n_T#oa-Sq=Mn0%bW4VOkC6BzkzYo zU8Pp#zM)s@bq%#Pv8Fx}!GL?>?jDP<86qWprKg=DP8T*yk4+P4Sa?46Efv^rz!MXo z59*0y@qPFTcan~Z6skyHUKSCaA6@aD3tdyyzP$xktedBg&ZchXv)A{&)Q^@*pWR52 z_(5Tq=eRL<(s@GAqv$fbfb=Ryc)WqVUc z!xasgZQ@gQW6&E<-%t%3jDF*!OHKn(j2t4}5K5f}%yFDoI1j1R z;FePI3j-5s=RWnK406xKFrj)++lGEPewt8ZS`n)2IGAzTfAaiiVA=Y5{4042Z^?Oj zdc#GgDaTWO*yTKE#TKY{fHi^lZntJXAXZ(Jid4Iwj`lMO0s={}Q>VFWBMod{xfVtX zTPMdBBIA<{$WXw6ZSB8#`r*(hMQ)|F-J;nmE%0{vK1tMeDmVQ;3{&UNxe`@~&(2Yz z|5;xVC6($<1;k{L?yg9VYOR@q&}LOdgGFlcFZwh7+>0qD{^+}i4U-NSL=;UQQ7^^| z_V5B%YK`yf5eHKZv|i3Qd$9%mf}8n9$tfr2#x6Jv15_0Ah=ISc<^xK5=`0dd`4j|I zKLOb{Aq&-X7az5{X1)1ya$}&R?kDj#Xrb1|kM1re1}3v@s@y=Ak5+hX`fldk_Kwtx z*dSd09kS!Ht+{zN$H1^d6k29hkyC}5w#ACdG84ME0&hc?mGZ7$Pl+qk8b7#67{xlezJIN1kN^-PqvRSzuql9LUPTtUA% z3huoXJ-w8|Vn>Lx;><%-4V87tH$BtmcO z4#&xLo0~ZWVH#RZGIj0d2IduE3zwv4z_>Ub=L!_sZe@md=_>S>$#B8flto!NjYMOHwPGd z6EAz;ARB0|za{Dc|B+PP#NAgC?H3I{x%RseYzKzVRQR4&R?wX(YT~62lRn^m(EpK$ z(ZA?+T?>t;bQ=TZ2Yn|DK<^37qn9M9eMb_02t878`={Y28MlW)3rQP>5QjMmdxR@Aa;~aKkfKrdeG-k;G|X z8FB8*XO~}6hgH`p+z-Y*k(`bHhlc3^TXtM61q6-wBYY#!o~g@%jjD#$bzhU;z{E3e zUTvXv9H1n=-Ds_cZ#HH0C7oX>7AC>Or#-MHsj-UuzR;I0!ei*=fHcZm-5nwYZ_V%` zm^+fCINtb3y#*Q-Wlq^36VzMv*KC<5e|FT9x%BAiHPG1mth|cGst-QD8Y;rT6-sLl z3&T-L6PUZ+Wsu{sfK>tjQ|_Kkf2}$B>GA&Xi%!rIRrb09IF~q<-Oc{si_HMJ6%X(- z&>f5sooa2HI;bvj`)VNCcl{A(SD&H*Z}1_@&Y%Ji`we=S`Hnu8zv;|Yb=5g>X1|Fb zO4Mlu1|yY2JD89V_B?Ezl}rJ7aR&cI;2v;9;eDKi!gWSZf!mis$ra3*)^)O?jG3lW z<3spS^e0J@7GBdK`bSkUakH(`rq#wj5~77Sc^yFr&GE?tNaA2Wu3+rIjrKK-R-6~kwN$Tn8z2@Sg%6b+uFpqxZUxLhkFa^EORZm$raN~vm!CZ|_K@0;zvbIWEb0PF zql=H5(v+k=S^E&Fk28FMnw-x5siE>ZTB&JFdLjH97a!|IXWKq@6P_CX<+(jlRkG2E zMQY_BoT0K8#1mAsidg+V#_z*X)eb0O)PE(!W!@(Gz>%Ee(w5^tk}R-d3iVE)&}y4O zP^6*ZyO9o2XE%b!IA+_3z}0S8M*~zgor5j~|2;su94|<25CAxjH>CjF#(?Otw9?7$ z3cSs$9nfemtYkH!|0n}ih>EH(eIDyq5y-R3j^Eo$y?Od(0l0HVLChDBwmk|$`^4l| zP9$44(`d3-TvyCtFX+cwhkM$A89m?Go%E|*Qa-JlpIYOxHNn5|VK}knT|F>JCbq2Y zgQAOtE{aY-BOqb%)U`@~D+Q5!?SX@&Z{|y+hezt77nYuB?10m6S02230-rvWT> zo=cQ+gS?B-iTZGA6fYfp{k{s*YW4%DU7LtH>}>gH^9nn3S0SbzD(7RON(lrd2QpRc z96?^-mev{m4i;`x-!@KT(?$wP%jt@c;9%Em7evkPtFWS&@860n+SkjQs~1w~fvtS4 zc|u`444vd2=C2|?fIs$>dsW4BFiCJi-$V?ziJH9kQTtq~X*4lF;E8M2sxu?LzWaB3 zv!1pla#8eZS1w*pllQCdjp*Lv0fHn9f!OpD4&k<*Z*5-Eiafi_icG0m z0U@~(9s^_PdKG_kY0h0AI>b57csEVC93(qQT(DiD#d+&fd}6)pS2HQR`yY5r)<8ZV zvMo=Y`5zv@D)y7>kPjRZdze~l$XKI<^1ov?s76R=&d|*r(;r5yVn#MO#DbN+oy zB{!-LqH*}f3~<=CSuC9UXKu&9oUb6^7LQ~}yVg*!$0I6^kYN9_3af5&%6%cg^5)8w zv{GyAqb%uZ8*?Em3&XUKtBHC_(ZMlV(yA@#Al7Ml?w}bD33nmHfu0kiwN6O?xYm-k zidph^jL7{BC#T%%bd?D4vB~$m-!oV)++TRZ2z4hSadkKPoMyN8jMZi&DWU{b*QWN~ z=%dsU51zgyRo*vnBLl((X1H7MK74)sP5J+k^mgy)#`1#6Hpp#(fX^4VoK`XX1p>LH zEle?7w|v2`a739{VK1E{_FPy}rsoyATO#?(dx2Dw%?nr+HD-g9^VD{(^w)3h-9*?+ zzmrYb@gtKtRS-1jh2C;n>oDFeRp8R7e0WFRg=w-f{dw$mysKVQr~J$?=r8CU4pz*Y zE;qU| zC0_A&;{)>box{bCUm>W%kP^+=eO#jvS0OiRw1e7h*_Zl=eg>?yQ-~JP{mb=A9aoq4WjnD&&O8woQX4}#J0Y=Bz5e+(l#6YNI82 z?mlsj_}e7d0YDp-X05%2w7k-xRlhl%Wi4T*k+`&V>f2y=@g5*3cH^^p#<5uy^c?yH z@)&Q-oKdjzVQ0Sde*w4^N9tUb)b1cqw(;a=%MI1N$LmvgtKtr=;eQP-pEk7(_1*Mr z$l-USW2oECHy>Y0;WUc|)MK`5jWQimNz&Mx+xxkMQT?IF+`&4w4m)Jh4?_}P+6P>Q z^G#b_Di~TKS{XdE=1dO&f_P8|917~ZXw&Jd49%om>sr327`mDnX5SnPc-@~~*skN_ z_lx`^b>TfXO|yh*+Lw@~+}hh1_5swZHaPq{*CXJ+9{7pjnXIlPx>OOO*`#5mb_0cG z{^+W@dmtwG8>MNV6MR70UaWN8C1HV|QM(cOk^*>0ln+eSE~)UM(^L4lHlJgBntqjO zD#sMeyaYhLV-@TPC+k_TXqP?(@oPt_O&*hRsu4W)QS=F%sL#JrE53y_%{xMx#@ETy zs%+ zBpz#He=h{qSw$?X=-hF55*s4@V}bcmyrx3 zaRhwKFnId=o-4N3elba`cv{7vkL@wYf*A(hTpaPp{40&|FNds0fR<}3MZbGvyUYM% zZ%&x!{40(4N8($L68M+w4IGejJRCn1jf{ zJ^Rw$@SY-HyW< z-S7JTwJeuDO0eyo03SCv&rimPStNTj;b@~uCtz834xxgKa8IY@{OZTrnFbE*{{XUh ztksur+N^owY0dy0zrw9SbRvmV#}CRovB~`_SjZmd>{pC59Vb$>MVc5Sx{DkFK5tgW zJ?oS47l*XXO{2B9hwPIw;Jc~$vBAL|>zUHLM>mXbE7_nHtxXx01nl)@Q321-nh4x^Fpm1s{n_0IOC3$rK)^bxLrbPRkc;y5Rf>2 zc{s;P(mz&&d8L0thH}PEe6h8R-9Pqc@WzF098$vzs(`7uV;JfOwM}*KA4k5nSYeG; zH9T!2?w+5@xmY#(uNO|=Y??#1QU=!S3F;0-cisoFlT3EoaWsp;!{fg-I!)V`Pf(m{ z(~mbkzK1{m016HCt*vItzb?|h*SBv<;r=yz0@OTBrb#3=;%OB}$j2o1{{Ra58s_lD z3{AI|Aa(Vs=Tj`?6kY{%OAAeVs!ZjlkE?YilRpb7Dq4sS)^50{yXH+>; z$2k0b`U78?UljfY_}lw_>f%dVi_2sMw`?rMK{@Bw^snmg#6APi{AD!JY8q9oz;qjn zu5*!IHRA8sf8p+>dvO5KZQ)4+AC(6OrDw?~Yjd(Qr&-zQ{dphB4!iK~^2f#O=GJCb zla(N!DEs|=MSTzOC&AYjmP73J=X@#)Mh7_m0QH~NzjSra_#*!R!aoq}(`rv^G;&-q z-m1A7$QkQg4!8dR1h4QPguHQTwl^10$JK(y2H~B!JoM@LRv3?IINHadgMz0krhaee z7B|`*inGTi$iV129&&o|`hHbg#ojfzu(R`}cJkW`oE)$CfA#D1SK=q^0pY(5YO_OW zs9Y*C7y02<$>SO4oMirW#Qy-pwtOw(+Y8j2RJ@Ea!P^MxMswG(=Dct0+KzT;_x}L2 zAfuuA)h+zqG_$z3+}~(WN@RWf41w*y&s+-m-^YF-do4)W+y;(J?IJ_(`eMIc+x`ic z;eP^nQf)%tR=kqx9Iobo41x*%@vn}4J%7PHG(QmC$*8Wiacb`}?nJf(5XYz9_O8g` zc`eM2Ib++tr@?+9@MYDQX{1$>DGuP-;B)Eq$6D;aX1|1T_>0AGmXFRdkjESo*QRUq zbKuwf6AQvx*Mv02y45cx6DU_x2*Jwp)wt*@y7(vm00i&wpTp0K@mks5UA?@L1=z?q z89w#sN)xv%dY&~(idwUq_$}e#;NJ|z`?W%;kEcKWy6oe<%)J$xo=44&ImzwLdS|73 z5A6s0HfeqUvJ>g|G9hFG1~7dGuf1`4FT)tGbjw!zQ?H&5M$F@b?_O0(Gg9SeRXHnN z9N4{68wnLvbMp@C$3gy2TH^jC_)a})!a^5wV4RLQ_V=$z)ch8@d+iqmxmFpBU> zD>7{=JD6mRzUwzUb>xqyYR)%{vk65`C&&K)5WEFHhv$+;jH>lql2v^MdiUw;T&mii zv@gxIGsfZ59kX9+c%R`WpRQ=0T*p3aWwW#HliYJ(JNU=owXK!od3Q{^To3hKd-KhA z!d6-5iqYMpbx^->@8*W2~3-{I_1Nedq|uKxg(g&jM3`+uG*MQhl}#kP7RbE~bq(9Az_!P&9f z+w1t_73m%jznV#-+P-5r0Auf9bAo?5@*OVR&LU=(Mp^j5Ju*FOw(y_D3!jG`ACiBw z$9x&KZFVW&Z(eENO${QI^*z#kG`EJYTJkpk09M7kr7RzSdY(Q101EkM;;yH6qPy@#r_Hx*P6w|_F8U5TMG;_nVC3Sw`p3bV zhN0ppb-xsNzRye2HOu)GCujoPDk09o7Z}3r>7KRjKMDR9cs(?mO+M4ZcGlXJn+0pb zD?E29(PXTU^kJX&tIsXG0i^s|f9#p8ZS>#lQ#IX-+JmwQ0KtaBa#{oZggSe_4B>w|lotu0TRb)OXL7rqqJ^johyS?H}J!i*2@ z{KJ#^)~jn$-RPQ2YOQOi$!Y$m1@otd4sfrI2+nw8kUCZ$hrB$x&x|zvHc6Yyytzmj zz~lnJabENLH24Qc)_h&7{{U#&E#;nrdE~XOcBTAE<~2!uM}7w;x;E7rc^*UX`qNKO z5ZleH-!_w^Op?ZzFK%wQ1MaG4uOMXb3C(+l!(Rnz9~ZRCJvPT&@fF5{1b_ns5!+jB z&Ps0?VUDLb>s9{%ZEqFn_PT|-+W31(wONdo7O_Ph*mV1N@q~#-LzX8w>)V?1KiN{& zU322jn_|~j5yN>raYz-;92OsVXOKNOtlzw@hL3F3eg|m&81aUot6pia&1+^h*^5My za%318ZRB?6rb()Q6#PT*`de#-m7C>4gn~BXAY&M>c=(I) z8c&0s7n;LGvbRgEdiqT-?Q)XMZy9kOKp5P6oSuDgUnP7p_<0YHJVD}X>x;XHH61c( ze3{}@5#dl{nv4T)d9I;CG4a{9JAS0J3Dfw^*Q;%$8dPmF#B05wP-< z?S+55-P@&lw~KruqWHVQI%9a>#M*|U(a-j4+YJ`=ZRDBqSLcdF+M{mP48K}F3w#E* zy7+?HD(c#Wt1NL^HQlBy<&qiHvnkt*oN<$odgHZV{8sSQzr%6iZw|q_@@-;irqy*D zhAnY?rY)-&=l5VnHso@1o+_mmdmXy<=EzQUieT?qF z7aNES$~SZa+O9#U>AK#daLp~9l<-(9nRK~jg>R)sUy!T(sg9=vgPaVKD}eA{igf<~ zh4zzZ^LT$v)h*$ifWk>_+HaVT-hjnq$G9B@cU~pc?RDRQ`j)X}r$eT;j}?{8y{T`s zTd6GSMi_4A0R8TxG^Mto9qd{7pL42wS^GWTgnzcQm^3tw%UVdJO{{kjxnp8S%yW~! zJc314@ccSnxu`{>XnOU;nuVODucp43wZ5DNcd;l2Sa#1D01TR^;7{5IQt|hUbnAPK zH%5j%NenuKQQP7RqS1iP5D~SHUP}!00#jHByRxI$UN($YWlx<08Z0!N?N}Tn4s>0dy2{{UIhd_&_4uLjBC%UgMTD`swV?N-|6NbV4Y4Yk)LU3teqa0fNT__yG! z+7HBABKpy~ZBzFUhqNADnCrP$cg%8g$?HwoX!i)D^+%(8V1^k!80o$ni%7V>)ihY1 zH@;%5(6|_r1oYg;AP#n~UU6PyqI@a%f$-m3u+}^wb1jF5uAzk_6Wj*!sL)A5J8R@zW-m=m(mok;Qj@U;aZh2r2&Cqo<(Kd@TejL=a&$WM~S-r%+Yx0Ko zXz;`3&H(v(cFjfgv0S}b&p`$M0K~5tYZj4e8d~a0e;O>}31VBO+Cv5y<+H|HzH7<8 zJovROTT}4sMR5d{damCrOTcK?%Oe=ZGwEFhrSU@I()LS*v$Oj}&;-a7h7PJm{{Vlz zoO@PJkK?ki)wCT#>dkMinc`I}`&45Dk}>mSoYhC-u(V~%d&{pD_+CqUTP0ciJ8B+3 zmp*i?%A;}g9-MTh=)Mw%!+s5oZ||eH)vvB3ZSk>fjf@Se(TP3J01C(WpEc#riT?nz z?e8S9hVC}9m6Yv^UQZj+pxSIzz<3-rNctMf&5W@ zpe@z3HWt^DLd+z+xF=$%Y;5-@JmaNpU)but3Dhj^G}}1rF7I@JVoQ_wU#!GZkyH+%`>@nEHXg=@G(%`otW*V zkVF`09*OlOhFv%b@>8r*66e0dIo z_qS|44mnZz*G=%7;^p^_J_t!=soPoH9V#}qx0hxaM1=G80Ajf^1Es^X$>4j;kEWB$BU|0>-%ca!*oEHO6T_*}5*P zZ)+T$On+#3r-Wbvq#gzs(DW&5K9-w&FPyWbGh(jMBiC{{Rzh#k{e>QV7~T2Nj*m^*T=iogYQkBU`OGwOtzXBr3`kqI1aq06mDSUO4cCI=_MB zwbd;bPt-03`xzO&b{t?5d*ZkqBTP+CPJ4uDU|U_t}C&>_=|Jm{{S0k`d+6J z+}Ydwu&6sqVS48r=9ehrEiBF(;fA-aXfWy;Y+hXJwU9*acq5PV^s0Ug@P?)0&2#%Q zODD0IKbtEk+mW7ff5@(rSI{B0*4t5qq=rvDf~vO(f^qe(qr$rF#5&ZIGj3-aB-%EY z8NueCGAoteUW9krmWSbw565OBlJaPH^T*5;f$BfR*Qt0W<3{+G;FYsj*4F<3Xv~bb zZ%z-dOk{VjDDlRLXu5vb;qvzuY^mprR@cIPU;Yt!p@Ilizj^~Re-;?~R&q+lkxz5$ zpMm;po*IG;KH_F*;ZcysmB&3j{YUuMq*>f;)g(sG-sk4%JxBTPUT5$w_HP_sq}Nhm zSYZ$-`2g*n{VUhw(BspsW|3I7)g%TTF_HZTm#(1vV?{{VNiDcW~) z>N<{`(!)RQ(YlavjxxQ!uYTFA_Ge2-i!g6Fm3nl~zkY-AsSU#{YTJ(13G$46Jw5Bn zJ=0DZl~2rDa2*f${{Wm+(9T{ZJ6(o2AR5eR7~9FaYbXXxZ5>C={(h9{7|#3t?*9Or R9dVkjX(geYqU7w4|JhSg+=l=F diff --git a/video/imz-30.jpg b/video/imz-30.jpg deleted file mode 100644 index 591f2c5409019df0a6355dafa57f3f5e0717e708..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84798 zcmeFZcT^Kyw=f<=1(c!)N(TW!Kx(Lg5Rr})=~WOz3qABAL_|fAUIapkN^c@fdQqt& z(m{F&ML>G!N%#hz=Y8IG-}Srqx7PQ^x7HmPX6BrIc0FhBbM~3x?82*5855fOukigJjGLcn4W zG4cPh3;;b(Li#7q=K&#@PNe{30g-T$F#mPWPjd557(nVXB!82IMC{C&zujMIIi(96 z4}cSB|Ht*@$H_QI5k!9eJlXkk&LP!oe-X z%fWezi-qN;6yGfoQE_o`c3v5%w3wU_SX}HB2?+%S1?5Fb1}Z8BvFj|?#s0^~Ni*m& zImi$6hLq$w=*(pj(#s?#Eg*J)+jD@ePtE=3L2`!l?78z~BK@}-;#6PDg8vR*SEFDVdobX zmwqm{Kq2Grqt{dim_R>!Rmr z6?Dn0kykjyLdfav#J(;4M8O5t+oXT!(Rbl0xA^Rhty9r{OZMLr?8*Nx$^H`T?{bZS zC`m~G@ZJ3%J_!75s7eO{qImNj%(|K3@6l^VEA?ck~Pr==4t8=!uR*J8DI8 zWl1oWATv7@sYHfdm;k0E`?scRdD~$K9G0F9zfi_F!$v51sA#PC!A?TSb#uwLkPDg?G%_X*sinS_2Ia`$@=7Xt%9JbkUW)FNFQjEOkSPqD zfJ&@{DUVkr;M8{o_9t;eqc?(1K!wNA{00vex=R+O8zv(*O11lIxlP89pO$~#Wec5{ zVJhKiwP2(yJ^@8V_h1$*TPz%#JdJZ2n%=)!D&C!q^BQS*w>EvWLNxPw8mBTOtFShJ zCrU71`|014*I76p-nT(OS#44t&hMI|tVZycBi>x8xr2?cPa7cDWMP|bC5W0fy6H7c z)l%_)3ZM)K!3<~a;qv=_$x2i^OLu;b8qMT~P#$A8^BeZ~hbQi+uc~VaP}Du6Bk3#6 z>nwR=pLjVe{;`-&ws$c5N0T+Ch0>a8ounADfI}hvJgmy4`=%Qhq0r@=DR_k16M&ay!x{Z`T%^AZ!Q8jFcntENss zioJSI-Y*o7bOuW`O%m-512@OD%sU0=(Tg)GhV!DV1vRVBcsBx$htwM{nfILOa>-k~ zpH&8%>~X#X2_z;qGK;k6KT)5WvRZHn(p=SjEA?%d=nCi)gG|cBOI&KH3Wx}PblY|N zT|B~)g8!h)URJd;&C^Ws$Sv%VY?e9_m2+dL1YOA9aZx??`9#aM>Nj`kHgZNr*6lX! zru7ZC)gxT*oR=YQ53BJm!Jl}ZCQ=TZ(@rEzGWH%6)By1D{i zynE5{&4kO9RGO5RV`k>q2P<8h5nX`bkQjQ}+xG2_W``O)L*&P5d!=3>Q`|y;=ytUr z>$f(lDLHmaM5@l)V&i<8UQ5w^oh7Ze7Oc;(ELSku*WYdAnR-EJ9eIvMdds_B40Xod zX5@|%=&P4?TXGm)+keH!Y`mi4G$;L0Lnzh0*Jfo!{mP_+)V}bA<-I2lf=%B}fMhl@ z$nnS2{8rQlckgfRhr_EsM)3(M+_2QeBt)=?VBI@5dftAb{}S4M&qP&gWgav2aip>e z|NhsJKyUuqVXg40TNm+sMn;T8L%h3zhHnQPOZsD1qFcFOxz7Unwr*SV0d3jc2wL^F z0CuacL1PISX|#t-gOs?rL0Q=k#_YuLr+k#r^**0Kp@+kw{a1{Kc+d+m_sy-pD94uv zBwVlaXn4_6%EA`zJ!l2)!*LqeBzcb*5`@v?E z@dG^7R#zQ@dHdJTqQ&fWe%OmB)$PT+VO{aa&F7$uqJ~_+x$j=*BOcqi4@SIe_#Q^$ zI~S?9veQFbq(Nf%T*QYzqkxpw9l2^=%O1X4c!<7Of~&JQm#j|y;Dt7G4jD%VbLfWU zGflbcR1lUGS554$fNki#dULP%Uwzsg5ntYPj$=H?ej;r8yw!d^TU{Qx>tG<2VeOI( z6+?!kh2l8&>2u|r-|t@(dq&qncdvQMF|zO{Hs%M)v0A-rpm&VUep8C{M#P~%*9LJJWzBMY8D!ZQnMq2Sv~Ul{>=Es)vBOJ-!kYx#Z*h+1?}#kLb)x%R2~pkbtg|G3$Wb1Lt?;^!px}=0}>Dn-^X?hB2USZNrj4 zGa&>j?^a$$-@6-P8O2PEJe%LsKFQrBBqt$F$HY1r`0uIE#T<)NOu|+Go1B(vYy#EQ!!9m!Da92-DSFab-UbwPp}Y(o zJyY!rY>ACbSJDMKr>2K%9lotpxA~Y|^*#ZeA8ik|?%#leVc$#D`On!tP`ltE^EG3- z1>$LOzqNiiNzA;5G0NdbVg3sF`&xSc;aV_Xd*V-3WoLz6k-TK%-tz93j59|2VcuZ_ z8xL#FrOb5vpqaMP*;%usMm^sPvF1SWOf z?q@}}?2B?f?q=Gl{M5ed`w-N%wXRO)dpOXY)nU60!B zrrkp}Uw^rNi%z~{xuRbdWzU?KR>X7~)H1k+jPFA1$9c>ZZzjK!oK9m|+F4rd4w{sc zfPB!B@^%Y90foD5AA*-w3=^2Ogp9|g(S%@!B+V_sbu_1fKT@#5zqRgi#XOuD%LO<`yZAQ}FzXQ!OY+IzRjX&exhJx)%*6%0Zi2?C)%9P@nWxEoeuRDAf6r#RrIRB`?fBrm6fPL)91*}%DccI&_W3}S$n0`?&!Im`~kQDaT=s7N}B^7SsUKr8^e?OxgFms8yq)kRg5h zg<7G=Q9)ZsY&7+=w$SR^@|@L3yI=4_UjmMI0j9HaIHKz`caaf(V-g!fDY=yvNQuN3 z?r4tl7d|iaE(nxA0c{3ij6>V*6bY6Z>u#}D-|4gcNNE$D;M=?}jTg009{QG)BrKP^ zqeTPxmE;Y$+z)(aZW(Y+|HAPAj?Rxc&N4UxZozQXN2BTip?0 zlu->ry`Ns#r%SN?h#5ic9DhdG#u=eaS?4`p`#ikM?m1Pb6E?;7N~h>$(TABOikVLa(VvAjF#rnfvl@YFVuF)Eq0f+!?a|e!tw-GyT^W4jXFKTYjJ= z7Py32f15x$nf`$A0|!0xC-CaTiEA?F6kX>7cP48oNoQpW%$-FDh;} z)|THvM`gY;H%0lf=((!iQ)eV@FP*iQ?#Y+v^;`N}#Y7BoIiD(69mn`+dCX|EDYAxv zp+`QQY{osqT0=T7uf#hz=ha0il?@-i^}^Y;yNcxdNa5G>d0sAE7>zCtk{EEtBGQGho@04E1E@V!JX|26loOS<8z9Q0fNszwYk&&W@)YocZ zxKL}>ie`G$YzlEiNPoZi=;wQ$vuz64sD@@@PC=R|!`(tp6#|qZpWkqD&(=rdWnAN7 z<^r5kQX?YUrmwNDsi z>yEou>wKO3neVBQm>?x*CTD4E0h~N1Lj?*k(i4Bh#ff&3G`qqR zABAPv%d^d$*w7fXby_u(w-pmh_*|K)@-j9dhrS3c0U)wA>&#SYqd$EV*Ni9@DYof* zXJhLqCcwyL&~{mq3*DyHCmJC$m&sY?&_^YnNLdlUXckc%6sp?ABT}ql1eA(Ca}=vg z064fXa3Rphh3T~1IQ%!-)4s#Rqtc~YHY}!+A7MN9PQc_VPbr)MsT*se&V2p(DWkBH z(UV`G%SzsGCx0NVahk-jIZX*&cT%27!A%0NK-`F9*{b{i$3Cj7WY`(s}LcU-jHxGMZQ5hK-VG%K5F)={^LeSIS)yvvX(AAUcH;zA$DA{_# zJrM4vX)BIXq}C7JyuF~D0L#B+@j}@B9rZt{?X>2%-u?y(=&P4!qwjMpBnz=(bK{0KS=*q^*=QNbfSl_ckucTH2#L%0$G(|FKxp*46&BTuM^<&*I-^13I<`0C`x8Xp+Qr@3*7KgN$329ftuvGp{AY!Uo~@^wv-cm+GLpi7fch z&=moQ0}udo1JMKMx!OZHCH{C+^su$|vQ+|300PLO3W|scii#SD%KVW<6#@p9*&mQv zZZ-%z|9^-4Gv6w7+7?K{iu?%;2xepLW&Ibt%qeCOF#{k!D=rF=_zU>oy7XThN&{L0 zIM&jFsJnW4S-Zk*)s>)}-rfish@G{a#6ue!3BiZfU>ks68*4#p8?dOL4H#@AB_S#; zW+(cPljF3bLQYfJMz$WFzm+T^CI+bOcljw}1_&2hz^Z`9vIZ3WkK+HkQ2*3O325Vm z2(Sel+<&9hZ$p|W0mNMYVB?RD@*CstI@5os``uZ7S1GzVyLspXeibl{q=W<*uoy7X zAPUZa$!z=;+})iKrwkZ)c-wMv{54h}zncNZ0$KrG=kMj}ii-C<-0Tp}K*c|nYuegd z!~NCo87Kl$*`9WM8D+4{9c2+ku%e8(ip(7;X-Nqg6=j(_3Zi0?qLRvh1_87DF$N)8 z)*eoOadGNjDJbNAkD@yWuhUNaM|b|C;t#i}Z;Sl%@sDR`guJwz@Tmg@?tUWxQ2hD$ z->&!r!C$E5g#Qx{ayD=X{It)zdHjDc_1EzK7v}zr)W2dpCGm&%`9}&0&R+i_-KnF6 zI0H@w%IPNvq{gkioxM2aKj(A&H6;FVXXL-+;xD9f!v9S459oi0P^Yy2C^!jd2b|;-7b(ceF917%7pN{=xJU^c zWE9jiRFu@G_rJIKfYzt2fL}^-GV)W1|Jm_-n~!AjOdu%<=l^c=fhzx>-{!+7dVi80 z$DM#+8qRsDa#6_P9KMhqO`=Ms*Qa)vrtzL!>_NThMgGu%sLZrM|H&SP@A8$R(Vj|jj{$mW+FVJ5}Dm$9Ytmmuef4;*-+_smKw1K zL(iE}LV=6#Y>Dj6Gs9xy5ic&dviBV6GteaCh?QXX0C+}5MH>t1<*G?1Gar4&VdFX! zysQ@NY+s@+YtT=bMhn^Lp=T#!7xFKfcSyPVCGE(oRkfUbYPAzua7RjbODX_yR;q+o z&WKi}&xS|dzq2_<>=FLa)Iok~B7sUI@*6U;Nux7Ut?a5*Dv|}oAKB!ONv&?x8j=sg zpMdzI6ha4@P8am1%z47?Tl(CLY;OjOWOi2&&yWL)OF033aD}%1y9pD_3mm2(xq87Zu54;0a`!Yz7X z9TuH^{m^`~Tfk$&D~og?zw|x`*TJIOJ5U;WFko0Z9CIckxWO;`ELwTBJ>dSKWzBf+ z5QsE!zngc;N<%cB$hzE7hY~iUZ{d)ypG(x%`RM>f_R!fl6B`qn!Dz)N5WSFCRRcNX zZYJ^-XZP4ZA^=&WV2wFG`?WAHZ&iSMrWTz zMS{|&vl%;1Ko>v?tqjfC%WA50&6a$!x*5Rh9i4B^goAtNM0WE*C!pPXetWxb!kM3A z(ICWPYQ#Q1e-eCqSwD~c4&AMWM$8g^N4JS>DiIuWZE{4RsVqsDX<0U0J9)laN28ncM>wRWrF98}#l+A%_g?MJs=Hy5XH z-3e$U2acc`XG!zUM`AYgxtXsW+Te<^D#ewY<*l5L^sQK%%seBcv?qMC+>*WLY0O@7 z_FZD=soBty!{PF4shR@&GsmlU@X%Fxy>*Es1f{A@Kr}O*eg4L(o=AIl`w7T0rJUv1 zt~}NuA|lw!n{f^8zjU;tg?#M4Iv6nMeJkR<$`lz&LxoubMt3qJuBs|Ld~ z-cszJfIdG_;M$%`^kYkThtE1&aNE~9W&u(B;bV{o73jEcP$9pUw&@R)u>Z2^X8KDLf-5Rsjg({Pg zU>0HtqB4o~@H=c`-&wv#nDN=6V$7z|R~B1uE1NRvj5Hq$fC+pNPsu^5SkODGAZoq%Yn^TuGQjMxdoutR?= z*I1@QCo2*Y45W=YJ4_9Zc2GJ{`+4(3X5w6_qp`i$ov}v8EeC z!8W<#A=-vwH;X9gZkH*t(Bk5hxfU4AuBp#01DjgY>qzMdnjnqdSshFM;*P^fq`s2S zeAfO|%)ckV2_zc?9?Nn|K)uN6T;6}oTF8T-6>73L8c;hI)~#1#1e4P9YgI8Og&qw% zSEyWLTzh7*wFbZkcu=VzUuDQfb$HUac+(7=!xe8?0}iXf__0_ z67%Cwekht{({d##b}9MlRV`Aoof$8>U1n|Qmgeyr6t#B1ZvIVI>9sYj_AUay=1lZv zPK*v#|6xq8-~5B46Hp{q(61xCkDi$JGw5K2o>?Fyhf?5wTKAaUlWI6?KRulFRx}>p z$_sSw;WuX>``P;O1LB~X9`>)H(MdVM>3kI9D#)loP}U4F0e=3mFO6ou*Tz`XJ9=%a z_Y;Br_AGj6?LkUCYH025n<&4fBi#s^+)C1r;k=lY2GkMmF%q!pnJuDUE@jyXD6o-_ z@{UI!@qCh8FiY>Xh2@b3UVVH`jz|X?ES*Q*%&J}n2tR$jsNFmgWK_ijb{m(;tSsPx zcyZANN32L5?5e_QIYBCu)y9X!|NO3&4LSZhN*c8`lYUegxc211ybQ?$?W_?z6OZ!$+)n#gkBl7aB=x{@!ioa0)AW%K-!f+flf_)Y>b zrZXNhP*cPmd6^Cq$Q<39QOV4TXYnE{2}u3geB89upUIa93)A?jEAdL{MipCA6kn7( zEIB`#Ern%gETw8B3fU%b?TSemnak2<&Xu&Soghb_XwoLLaHZxM45}D@6RrFX`Z&6- zN2gdd`WBq!GWxaJ-fKHnStdA-O0cE>QiJ`?ROMJm+z+d^{-0JmS9LkxalQR1)5F*ee$z3z zyO&Rn&8Wc_h=8Mfjsk~$#1$!)GVt(hUY#UHY{VtL@nEaw-4l@fpcDw%V;1*ZY~7g# z^*QF_bjk9a%|L8bcE+Dhtl*DP$C~U&7RSdYVOdf2pYkO-Tff)Jv#cVi#sLTZ%ARqH@WQP z8~7k>eyu{H9p91B#iAsK&o{o%u_vIO@koa2@BakxUc^_w3BYb=%044oa$C^pC3)`I z`9`u26MXJ$gzxTLOcW~n4C$wh4K*6NEYJAq+_#xB(3>|e+9C-E5AvU$t7r!qV#1r5 zUJf~oCJ^-jKb=S9SLj&X&CNUS|2EiB^vBU|CQGjfZ@B2H!ZMnM6-DrB24lWP^g?#u z#ej|{f4+Mx#lC>PO{E3p8%*xzIb#omL|%q$x)dDIoB4x$ymgP}9=73*{sL^c=<-fb zkd_2?wjn6Yj4-E$x4Tt*eKG{IL)4N;;$_`hCI%JwXtGIebv7@pYFhU|1^BoeIzq6r zzFtcqA>mObWf>{?Tcy!Bf+HV=We@?v)R}|0dgp6)`%bIG0ND|VUWeqS{Qhk!l`p>C zhekp?eKsEFNT)y0waMU*2P4uOg7{_5%UijEfo;uLF59yP9@MaVsv7aqa`t#WjHp#f zKxfMsw-TyZZN^jc(K>FeBj3WCfYj|M3J(ICYCx$tRhq#^dvnQM+t?;+9q-O|w$Yr9 zXKJe>yG6EF9AXm2RKyy>-t#^4`{@S->%~^4E+6Wfs>38~=DJ>9ba@a|J7~Z7=y>p3 zljIcHNZOz?Xt`~DH{qRQ3fn{ks$7e-WJDTTpd#mbgk06FV#h22e7<-#B3ngM3xhbF zYnStkk~R1yg3^c#ONLFcRVKW1p{32jE#>7%k>R>EziPu8!r^%e_^qk3ga9VxnB)*k z>=gQo$I@F?SWkaWFtof!b1svMYXH}M>S|)jP`g`40~XI#2P)M%+k3ZkpLXE=TJ68O zTvh49+#g*#7%)NNBh|Vpd?tVBYdo6t0Go7PqZNBBg@bCT_*oD+402!h+@F+Q)g+ZW z+GSV++>7eBXNPiuo@#f+0(WyUZgZ=l!)W8GE#XyDuz{Fz^LKNMhW$PBoLOAAnm;36 znTsYq+S1)gGThSUR<-ncHM^Oeq3Uc#rSR7vc}${s6!>t*6s^3^`N?9JF2Wzy5~LI0 zuMoShy&jy7DBdPuaeH|V{aCf7ruSMBVVcNsy2W$nfj4TIoOl*kn=W*}iy5&HKAujL z_~748x8Ag79}dKPJo-uRH{k70`GjF;5OjImeF7WBcL$64oc$Uc`D2BzxZ=vspyjVM zZuJUu6G1xkRFtk#Of)=cJ~#rRco5qpLHTCFuzVy6A?u0Hzr9q<^=N9^Op%U98$kn` z%w*PKPst|R&N{;e>BlsvxI@q+JyrdAq#WUjXbM(7(e{zuERa84cG)E2Jorez9Fux9 zKmzf}l-W@6B&dtSktZO>$Cpt2WTczfTy6okZ-Tg}6iz@qq1~*?B9zG6+|fI&WZ~r4 z!(Ng>-N9ZNar^VhWDJ?|gVa)+C^6!RW{iS8%&-j{?wb z`)pk6bVf?(FKg9o^pu#T#W3uS>n1c?<5hQyvVoxR!4TjwT81TLbwmGhb>Kc0e>7-! zy-Bv|Xec3bV(eCw=Iie|3%Vc1r>m^Y67nt{QVu$U*U7M_5sc^OVSx1x>j7LbM_|_po|``Fd&Mq$)*0dVk8q*{POuwIrKF6+2Fr_*y zZGU%^BuRQk|LWyC8zEoMfeC$Xi>u3PdYzTE@K`O|aZE$c+3+@92_-!cOjzSZgz)Nc zj#qp4J}L&tyY-_xLxIKO^6xy_tvA$R+iYa3y8W9jYHc zQQsYV~E$8!(oa^c(9jQ|WV(cRqLEwTY-{U)xYBjLc#Wt-~Y!yJbm>`z&J%16YM z)9fBV{uQTn+8)Ca-RHN_cW4-XQE99_Z{NYMh}DIC^#n-7a=9f-!J~GW-;=#ri`NJI z>nuhiGJ&Iq5hoGx8qL%it485$kFji8s+4N7dM_KjgD=oSCAkg`TQv+KF~znw(L8th zHmO7+;@f4~!0o}+`Ra$q1)(FX{F2N8M_vFI&mQ(=nKJVp;&3^Vw~qn`BdUQ3;Z*F_ z_=e9?yy;h-m$71713S=jBI}cwxfQS;99qKyOrzfrFa7ALv=_)!>X=mcj!NX2G6BiE zPUg?Ma>I9)`;+x~G1+!=dJI@D(w&@+dg@>+$H1G&krFcW0}GmOScz24KB^1AU>ME` zEoY&5&o^%mtTnaTV0n2Cr5Jx;wHccfur9OT3N>c$qHEJEvfWj&Akt}}bPBlz$H zB&VOe!H7pRPzM!gFr8P`&cM0!c>HkHimi`4<*Owck7!-n2H zIA$wrc_g2J2$FAbxNsg-;s_%D)Xs8rPZfr}JzHx(7P6lQ;^JMA&N{Bw`#`$$2JoM^ zDbm=caBn|UV~fd(rE*K(z?+I0o4N9i^e&?%AItBGTndLUAuYUTqAL2D*VIUJ9U&N< z<=b-!lu?7tB#TeR!!$I=7n9FB%`4LVAdNlLP1EgNe>6Gk-4#k^eM?R z=NP#O0=NATYm(`A9B{i(BW>FgP!k-}bEanXVZLrvg->Ib4}o?FA6v;HVOFqdCOECU zGWBZF4qa-SIk7@+DV_S&szHFYv}7on9#JXFD*NiLmAodryOyLBr_hY|G}xum#_Gp= z?Z}0FAYR6ihT!PC*GlPO&!`Qjtg`g+6IQWJg#gW7BFjr^}n5O zs$P-+?{qAU3}?b50jqYm40C&W@9yPw_B1(%=&AWcEU~@I^qN3X@5aBZP^tdny)pLA zx_J-Fkk2p=I5sUVH|#3V)nggk{P6s=Al^!iU{rgk76YR+d!o&Z0!wHBJ2q42{NW0kU55PwkoHDP%W{D_BLgd$Kc7h|E&+xcDD*4obc0`U~ z+G7F-ou!w4`Y-S1W1h=kT~s+b+N%QEfXp?8g%pl8zfKf*!+2RwlAOI*{7ye>!9}na z$Yw+?)5WyHyYEs4L&P3_ISU)zU-@?PdA9HCsPC@RfeS=$WH5u1W_Dv+P^04^-k8>w z?nb8-y|!?9n%lm`zDPY3JrXU!BB3s{LR&QrPkjI;vKB}&n{QAD1sJRHeqM9?I&o{F z#FD(TN2AblhUy{R#8}YR{5A@fkz0P5H&QE*UK>OpMy2!#F?P=ueW-+OQlMg=u4Z7g z5!Kj1FFC{UZvK^T@e=iYYpXRh?AiJPAqU2V+S!o4rR*CwCdEglqJ^^g6EHVSsvEma zUNJs^>1x_yM^^PZp2GIa$IvR;s0(^8=I&s9WaLA|JFoG63_Knz3W`R(&8fO2zkw^V zy=tLmfozpZfMFby-)~P_X;)t1ncgoAIRUK{SpL{Weu(hH0p|dUU zNT1?IeUMIrT{rnwyG}x|3i`{9>ZP~z*R?u{{y9NbX(VpFeXD>E zxQE)nY`yW2uW$vyw~9s;H8znGcBxehJsO^rRb6e6Ks~XYAAN(I4pxNn`l?@_zj)jn`jRO%b+f@}<9!EvSz>aX#(4P!& zX>5}en^1|gD)BMBTnPG@uzx0p~MyM2S`F`PB@V#!_;(Nu} zuH_`((Rssl8)mY_AH{yy;oOhcXeX$I`og}he?G@WNF?iq?wq(B(_6ac&7XC>e(U<*g#I(w-RxmhV4}#e3GI_X- z8-JxGA^N26^P1>UhYE@$#FTxscS60U^5UaX8GD+zpo0QdWno~0&%M-ZYb~po;d~#W zSGqvq%5Hpr;bHa>w`ZUuO#sRhRosR7aZU4WBHSA)D#pI5u(`Gg+u9IbKxeh@WD<|^ z7g}<+O7Q1SK-&u4&xz`&nY$;TSa}RbMAbY$ZFmy~WH370=+<7Tv>HFcz2A*eR|jvt zh_H?hYT)OYXdlaRW=Cnj-v_&`@8F8&BV(C`Olzrg&t%5fpu!wulSrM|bc$6xnlqZR zffbRGwKTp?pQ6XJr$KG@Wm)cbik>yFwFxrmQ9f|jmWfJ@evs!%iftX zcX34)>pFer=u~zc4S!If&_FY=qO2y!6isMxs;ub9A1)80vA)1}fyHXyYKZGPKyvMZ z8z_2i26sAlRvKmA8uH7VD8MW_s=E5)=FlorvU^3gq-rsk4Ph4j`(l;Xbu(@sUDk5G zyd688@vba^inAky=6?NtR(tY{@GWi7D(3Th1lsU>Ro;#4?E0i@dg+BsG|8CdgRT2d z5xICaH!;;PgDs(6!`t5^&qnO7e;EvBV8Nt+2fwi9{(yt8Idw`gIr$Qnp>NL(d-OS% z2=J~i$cS$ty;r(MdtdDrKogH{)MpL%neFzNS7U2S}&9$N=F;Kd?Q?FQ50q zEBk$zHA@~@D<8`kw%S>{uNxf~wS$^U^<8H86-X}~_xf@m%WF*eU81GN_oDiZf+yQg zj8>)=^5u;4)g~+_R3NhqIWYcwp<;hY-}@FaE9$XP!Sw?dLPi$Z28W)dZ)W~(XMho3heTU1N4|9?X)*j`2=lD#=SKZ&Co$(=Gqs_#lU6qEWmIj|upN8Z6 z95MnPujGTXLnLkyr3ZEq*N#;c%43sfvno6|tjRE|1lY^8p_mGH z*s7ZuN~m+G7lwEif3|^%4uNqepytdj;g&tb)>T{W3-V+7(THqmLjU6ZKrSSXmBze% zFF5-~R(Jo!g$oot3LJ;3gR!RQo=|TpDqkIEqPEzLh>bf?4_U)AsUb&ug=ni6ZuN3& zd*&(d$S6~iN#-Y=f9?)dn@oSu;Q@~uVGp?^ihA;-~&U-Bt`#NZ4O_sa#8)@ffTNFj#3xJXms|JhfL-xUx}-VJR20j8-hA}@ zads%%1k*BX7V2>A62eTdiQ$IJt1AP?-%y=7n3s?WzK?u@GlncL*5JA)pf`iZ&YxED zlmiBR@qA6+N(vYHrs^@-P#9w?kxcSa)H*ZU8+{)U*!nS?zW44HuUYH`Lfyj5<#}LN zux0S_!3oIZrM&r<9ZzEZMfP^aUHnQ=j`eT?Y*PlcU3z@0ju;FC?sEX}>tvN7l?n%LGWb! zalaN%>rvWc7$odvK9EDo-UpN#$7hW|_536N-*?YbUP7@9_{`OEm5h%rD8CLbDmeeJ z3h@GF>}5%AQv~}MMY}IX@8usj}=uterAVrky&`38U4frgcU#suI8m((POE}6X^`PMHrd3?i zoX#*u;|1j5j?_V2@VV(V0ftM5W{#z8VDVq=t8M2D9n)L4OmijgJ7ODQ6=}OJQ!Dq6bhlak@=$W{F zO=8VMM=+NVDy)i>E`_&AqyIHqB5bx*SSdD9)6g+|h-bRc*{4}y;wvmA``qQGmthL= zQI2vuW@xvk!XNJDB@;`lv~_7;hZXsUQrD~xoUyn zvS?3X!cx*zRlRmF_)*f>tn%v@H_8!ODW%&c1k}-PZX~m^-Q<$vj&P23RS)s$^ud~O z)0WG^LZNwE7s7G!L6wydtc6-buY#(SCN<_+CO^6#P;U0^At1h+N+h@6;1ixm$n z$kFnRcDUB>u_}vGO{$hQ7cE>-QXQ&Y`oSbE!(2KZud(zH)3vNyy&PK+aAf4l^WsjC zF&>u_68#=B{5*cP`)*5MQ#tNA<+iOu3$0 zjAgq}dII_ZsS>jJ%501NtIGALi6yrU3*?GMMC`$q<*kFA=U5fPg{bTHybdc*WY zKti>#bh@&(v{@2r5|v)$(eld;)o@?xu{`Yx=90b96JgFCX~YC_AW)=>6t&}l}BEX6XsvkJa6a9C+=X`g~Y!G14Cy-Ho5AHYd5IZU17iSU1seQxNB^@S z2+~XiYQF4SpG9=-SSYQ=XD-6q$RvuLW&(4=)~@NWKIMmebDzL9zYpJUv1H%mw$y%k z(J^WDi`91#U_0zX6R{-!Jn zx?7KE;HX~-oW}i1nJKF;*EArO8Xt0;fP9)-bst&A3>+`KTe4r@V(k5&p;{Ter{ zsyyb8P9mD&zmZ;ExlIP$u`n$ARmK>3tLX~GLw*e*Z9{fQxcPmUx2NN~O#1RZ)i9UL1QT&EjF^xv%q6drni2Y9$wVYsCgyj-H}?W*e=N*A1HqeEkO>=axTCs5&7T z<%(h->ogj(5EE~wXF8^LrJ+YQqrcp@Y6Jce3GK0@1IgGx^*Atr2=P6l9I>-am^aZ7 zz7~OKY>sb5 zp8FznR_v0&()-~f`_LYV46po%HTHNO;ukk5&JAhm|rF;mp>KOrr1l+Uvm5EvHNoIAy_#HW*hoNC3RV5EDOD!YVlG&N)%@| zoV&$q(!hLm^_Tkx4pmpV56}>HNf^_YFvHsNT5zi;lCrx?t?W|!if8wA3(A=wRL^cs zLWgTcN{Jg);;cvoA&M!%nk}C@e)r=E2;9v{OjNBrMUt zzhiUL_lsrH0V|MDDUx@+g)>6E%+KLdsX7>%CY~>b;gd&EB!b&ZIzzbe^=ifI&lNW+ z4-1$uq2BkogNa{lxwk^ZNF-A{X8W|lM-GdDV3>fpf*YnHs2keL4 z_v^mS^E{6CabC7$Ht3`mflN1`b%8UvSXxRW|2J@sw$ckGa05;SOUTsH0+cRQ$~cE3 z>ZDoniPD$W2|JzT>0JxYfbsL&vrqd1au*t7<$%-2MVVG8kE2b;zb`fged~*!twET9 zBXy~KT+AzD8=!?m$kz$cL)URRO9qMw^lkkx>n`cTCUK@?Hf*a2t0${NPJunF&i0kN zxuEOu{rORn91wRm0>m^dL|*IiZX*?s0(BV0v3G@uh)7~m^aZAwteyUk%6<4X;>M_uxW4 zbn7TMQFaKyY1Xu8&}MrHQ|;@Zs(3efjf z|1J#*lk-S8+UGxr*u;Vts?A>F%6ag3P9x{fxV{o=0`pIj{X%M&(;iWW12P zmoHeL3??1~3bw2m_8uH~9sGt3@I|cPK->@L?GM)O5A2@%NA)!y^QP~_D%S7tF<_e& zku4M2IEVaHIe)3MYSiT9ZlCC+Y*j~*u}MPzc@a(vM}&j!+?C2zGFo43SU+uP33Qv~ zKCYQ8?@QGAyH}aEPzl>a{$NRX&b<;XT)BRwgYsxU{>*XQj+Tgi#<@x;K&(CoZr*-p z6HNuort(sIj#bxHAy7=M$7}fEs|@;YsdNW5qP^r#igSV|esRr1*L4^uo>*CdRCv>t zu)sL=4r3FcucYYJaJ<)9eC}p+qFP5U@NN_?l-Ms=1ktPq3$i4JCx9|;N zfAP=ue4FqwVHD>4p6dee!RPIY6HDdg(`lvSlj5iEGuIWH2_-Tw!WyrQ@=X;0B+s)} zNzguYUiaK%#)Myy^X-sqsVoS`^Ld&S40p(I_@*=$Q0X0O7}R_;dFqjwg*SBNe8P@x z;_~2PBkV}R&Y)v6dZ(3hDL6PSV$=9T4RV+*Ke1Lv+4R`(+*_@LrrjZ0u0V8|#M)=? zD{oV)Wu|cwy+aw^Tb!JO<;B!uhb8D4!{XK_30f_o94jXpZ45jdUDIg3^!#7-jZKab zpbsH6@#*$k1&i^*gXXQB zROfc(@SqN)ngp!$l~vf~g!#U}_Jq$OIWty-N9PQZT7ui$!IRvuYcC$R2!BMr99bty zxVTVV7{-Kr+H|yPJh`(`z7xdO_Ek}Ya3<;(wqCPLZ%JukoO5L!Z(Ascdg_|Q!EJBB@uE^%-{tkksbR%MD=EUhw@qzj ziR901n}^u4!M$nx)8Cv@fWA1H&BmT5494du8S<=Hv-M!p5E7#(VK%lRm&IYj#= z>obhd06`gE{KzIpAqTGO;!2F)_e zD!DFhzu@uc`PA2f+tnz;1&>KU1pc9`J8x#k``Q$45!-2@m z-Ej*35C8fE8dP&x-9u`4G^=`tp)gqTJLIlMIEl54H~j zZhsWu-#Nz-BRJJcS+G}9X8oF8Ant?rU<3d2O_hL)pR4i8LB`;ul7Oz&g)j}=MyeEm zx!SNCDkNG0O|MDa3ZUkNpQ{3(Lem4KE8E^Za<50)K;F@5LK|y3<7HKQ1&-}WDo=Sj zrJl?dxk_afCa>jb@*b=4+7}G%tul(try>{S0Jp5nh{nBcf?ACh{l!;24s7^E3Vqgl zA&u8}Nv4FA`Vb(_raPA%UO}(Rv~_CIvA1HMV&ZxeCNF;f%rI2PWljn@JGzYg9b?yy z->=UoT5#lN5038byC}PxJ#K@6dg$=22x4VJOSgi0vzL;@BR|r|z~r$BFSP4E6u*Tn zT2`ym^7(Vyw;QLine>?ysc;qvRiu}#xCq|WF{pP>tS?6CMMvvJk3TNl55~+SJC0Q_ z?Bqv8b%qNRN#C)W+uwGacWan$&G2{;567)`0H|Q802b$%Rq>n8m@Z|tEbh3}L^6X-P+B2;*Bb{SBsbx0>#}*Xd{C+A!X^t}LwI)nj6e z7x5S6Sw{wJ#A;$bD?zJ+r!$4*BY1*qjZB<^YcE!^EcTjgcKmxy8D7>W6_VPvLWhqY zZVn5sy~{yT+Ruq`*=TgLf=)5SJJBiemOAEQrahK^Mi;y; zo$&LpYXL_&lhp^A!(dkO`Z2YOdubIx;+gUd)>r0agQ#^;^_g)WycnxmPbGt1h1VSS zjZMwA|NV$~?`Gpw))0_*+*$-U8RimH39m6c2HwUvPZci~o4N(4yt@9Yo7p49^Tw&X z%5gu|MVIJVdmyUfBns9|-ZFGFAdBo@sDavbbu%{DT9xezZ_cIutP%{icp&h@JHX*0 zhRCimNgt3r`(LwLYmj%tbI*|enIKMPzO6j9D*Jv;`g5PTq|#M9HX|}zpDes_xP1!A z#{3{Ru9B_|Znj+fqZ%0e1Luemuj;+)ArFZX;Qf$0Qd!+rjJd|qtf{suniU~)j+MVk zHcG@i`AxQZ9IJSVR)O~$2zO~(4k*D|En?0Z>oG$+C7B=co9x8w<}@@yl9LbvL$e-? z+vZ8oUoI@2-Ck@vf&9VjoS>;XUjU=E)9?E4`!R|kf8vRwV_($H*bMuU|Hu=#CsKpL zdoyKr12+&Vr9D0rQ^1t>Ny>QFhuS7Ui-~Os$oE$&V4=)({|Bi-em~MjH!}*LA$@tIt*1N z+il_>)TD~Rfve--n$zip#9Xq5$5ZtsC&Ot*GvMQ3DBc}#rc8?W`NYh5oY($A;kas+ z4A{{Iq`Ry+vp5`>Yx4Ik$ydfyXoze|3^OE19-HWw0OMTLIA7Gk<%=(Ttt)(wROMos z9z?)@jvu%I3T8>sOSXp+2iiMe>ui-2J{bkV$?c&f%5h^M<+CHZ4AElfj zBU0teo!IzHoVb^Ss1<4B&Vc+e^h&PHh)E` z2tWRGr08aPccE1`5C3b$zy>NBZZSd7;63n#)p?IbU;&Ce5+~}F^p?DHT5>9oc%+{Q ze&dGh>UUjXb&>TumjVWeV5BM9f6L9yqaHqDn&#NwGz}E_uZ(=lgan_%<&VArWc+G$ zM~0Kwh7*6H2ER?JgS`EDhP?_hMZ9dHtXjw&v}nBtQA8>>WRW7n5kkCc@kDLYp1)86Jqj=c>y4}Gj&e)DVa+iQ1Gg@bz{A55T$hCn5>hVuP zS`U6C@ zzgBqp^`b8+uBq3DI3cM~k7dkx5>Pp}<-``M6VsuEZXoid-GZ z&~|v!^0wIVuvI~WnLy&wvKbd*`WIW=iUo2HK<6~4PpZ{KI%b{MeNqL-e6}vYF?Vus zB+j+^wWKcwzk}rBU`NxvIud0W_Q!b1lx=&FziP_3nO%iGD8quN+pjl-<@J?1>r0`2of&1W>&2eJUQ9fO}Jjprr(O+nJ#^J^rkB`_Na zYQiC6%s2mm=Xmaf+^)878p7jfuvR!>f}Z{JJRc2m&fUUmiv%~?D~YSL_4xUp%SMDq zl=KBxtBd8M)UrhD8YF-FeuuvCgb(lX3L?j-RmaVpc9S+Vbv9HQR|Rn}W#VVN$Y_Bx zyXSsx$iuYZXTyAufOvE#^3}2>RB~9taQTH&^1Ml6v)}BTuGZXz+f-k_7mcv^prdAy zdDgMU#e4ecO2)X8re5!yWUn<%^#%qXNNU(lE%6}obe5-MH(e{3e;i}v%Zt>-VTkq{FrZuzS2ubbs;UfMt{{xl5 z22ex^PWBt=xfdkxffGJ|g+g|rI4K@3iywC=70Kmi&XLiy2*tPO1diFf`?7pf1Z}~@ z5l+GwbB3;dN@@G2(M6JOkzckMKUhgCYx>$4Gz*>(0TAwjs|muP1`s z?Dtp*tI;HXnX<3R*c5}xxo!TO>^=D8sly(pJ3W`?*Bl202`dq-1Nbm#He~d>k}s~e zuM;?T_p+xxqiPM<-WdDI%nzSy{Rs^3bOynJQH8%;v^fUH-^~SnR_cdH%8@Dvy4{c( zB=n<;DG*K)n6oNEQK1(5xzy+o*NSEv%j4Igx0F~Z`%Fitl?;AXmz@j?zNkqrj1x%g zbJ4nU&x493#ohC1B8@uRc?mT!N|#=Db~D|wCMC~~R=+6uT}pBwe_>@+K||(8720Sy znH1;hcG{;AceB+5#ngS|HChnE?AgcDMxp4nYZs10E3082U$6UT#py9Ep&DeP zwk6$b+NFgV@HK3aV*~B!bak5rIk1-*<4546#3KL`x-5_mr9HyDMR8>J6vE9T;X1jW zMYKEpcdY%JL)~}aloE=e+#v$)!^OPCia0y2cp35v)iX42lR-m3ldU1_ zzb{>mS-T)Ob!DxU$*CCeNWvwp>9}vj%a6Y4B1_TZGdAH5`Ta$FKFNgjy*D9IIu{x& zv0-3bLnIFe&S%l8?Fd$`U>^25|7;y$u}TB_T>J}T0DCQ#R-$LsX5pQfQ++xK`m;Ht zB$p}%#_SS<;*LWIi_M}BR_b@A%g)~WEL&+#0iA?zEdwj^3f z-0#=o4*F3;hFsSmBSAcw``tb!u0&aV72RGzyGmoC2aj^kM&@LzUy{o6LGq?JJTKeo zWP61(Vm`6xG1&WS24uPEX!^S@=Zh}b2ouD-#c5d>YnI~b<_@!UFJlnt2oCAHLkbF> z_VQYW-f=X!;<^WSiDK(8j>eXV1i!bLg8-*ma%W*D4)_DC8$O4bepex)E^ph9@g&Y# zt0%yGZh>*=mH-u}nJNb#=e?xp^HMKq5pBV!F5~>|9;<#s1H@$u8>~diil72w={le_ zn4vJi2HPCkefT8QbgDXjo5Jq0`yINEyJy%bYBkPsL*67b9!>x31CLCq&<9kg;?^7L zg7eYl+p;4zi1tip3(F@vW%m_LaRIb&Fg%3jAJrF^kf*qYykhuimlfTn&P0@!VjS2> z{GeLmyFfsC!!^Ob&j{PrMN2ba29h69Vigpj!i9rkfXpjRxSE zDw`v}-EV#3EaPW@m|=Os;F@%wH|Q6Cmd#b0wqOMIF|N~N2DQwdw+dm@uv^9geqZp9 zi@4$N7^{I-US&!=1%A5TKR4RH5LtQi@IW0LZ(G@x3?4(ASBuok#Tu^|6jy$yeNw$V zChzKRL=|L`lItb#KB`M0x#-S#%Bn5A*~Gt%P^a^Ew+KCo5bs!ia?BxOhh@t?KonI? zR~*+IIeeoKGm&UHyg2q@#a26;#|<<|vT@SN!Wfa`!lOFCa&&#oXk(R{{;+XDUQyWO zq@3~|9ykRJU-sq+MjX`7H@cd0N&{#{l0?@>Gc3`gC6>t@^M`?NH979c^V?p|E-gBA zs_@{7vfKhypdO6#^R2sqQl3xas|Tun{TG}NFJYaxYW2#Id?VsiYf8#uYbj>rmiC8O zR_-tSUtvFYstB;bl8lW2^O~GnI!W^jbH=qTu`v4jL_es`=8PdsjZJrURn$ndX|k~T zTvH|uBLLlio&30rrBFZ)*+A?|!`6v>SvO}l52S;{NMZ0e86cJmG2wo#s^!_v8^45#Pv+h~)vpU4u<^x0r^V+sm&pluwXQk) zqE$DQ!$qHyZx%X!2_E@>6g9&&IQVUnslQ9QtRQKf6;jLa{~eBMjfqRm3p*`Vxjk%- zo$G4(bXPbzm0`7vju};U$tS+DFwGJf<1CqMwMM3yJkhv-4Woqz3(hQ!b<@hBDFYe7 zf(Jc;O{&9`K@#ksibRGsp11@R(2l6}|A zo%vI%N2qW7cb_g@U&WBh|F=Ahm!i;vu%ALxFLWE_6%B{iYDfS;3OMYgWQl&V^JGl; z+>v~(SVLh(+gvxc7&xp0vB+t((c=RIe|$fxU3_Z)F% zX8w$W-&IwE!EjExs6KGkF>ERVKnGR{kyY^c)(XtW1gI?!i57MQhTf^S;itQ05^pE; z_kNO~qsNa!H7b)HVEyQxCS_nzWnw~hONcufn>ccs4|V0VUro4xV|x55D~B-W zcVUI%eQL3g1zumB`pXpcM$L0jbsDBEWv(H7vU7kwLu~i_Qa2-A0oq5&_Hg_1P)YBz zV{khEsA5fW=qHpYz`=E^ZgciDSA+>io%MXBb1Xd-bNcBoCX>>G*jVDXkZSPPV3Ryu z7R{>5tmLYKI^9Fb^<@8-HVHpH2S&NXRShCYyPETT=E*E)`ftSYlv0{vwOdry91f*b z2L?i4_(q^Ps|7ro6Ykp!&RiM(_$x%nP3&QAw?cUJ=NlI_O-I$a?XNVwX*|&c|OVnq3-}ol_h3~Gi~fgAU&yBEE-|(bLG^qyRxrT z_zsuJ?(n;S$ey6IXu(^~90(4%H5%6kmmEJy*8%}XJrn<^d^Yl126S}LhVzLaS@!0h zoWAKN$tg9h@bx(sJ&;1wYh+?#DF4S)UUu9`5{n1iVs|?I_t%B0N=}lF1%ak4AmXCi zBo)ixH*E8vqNnW}{T<#54H4!h=>f!GJgv@Usfi<(5Eg*qJ2U>ZzNOB)z_jumxu+J z{y*WzTt5DfD!1mMgi@x`T?USedTAj=j+Yf$_kHXFO1M|HY;b3fi>*Wm5oZD08pMM`7WDq29jMxo#(bc?JaszV zCZQN_INn;_W&p~#?U}+m1x}2))D-w4UnNd_ZSPj(E_Jeq;?Ouh(nQ}vQm@Ago|=uV z&R02H7KHEWiJN!~A@@kSnr`Qm>dW^e^nl!Ubt;LdruPi9wMe7GqkCM6=~DQr)l|7T zpJglN^pDE%eGui(TtyD$mVT)6*8x%bz6bGgKS>3oBYjF;vVc?~GJvPwqa$JC&3tmh z)?(yHrMyQi8m6F@*MO=M)~I9s+Mlb7f@?Qp9sEnqunM<{v@kTaAdGTD4?3Y1uufP-r;E%QgVJ~;ayo15cND_BFT&h*uJ9G9 z&d1A!gF?vWgh*#$c7%r3KIu}vI z;N0?~QE-FIG989RmnTFq%k4{IWH-%o*nAO+b=S`B)1&W4CuAbsjR5 zk{>AVrsMr%;QYAZ-RF1BW8IESL%LZ<7Mq%M812 zZ?2eaGhKYjvtTM(53ukuju`aBOV4B))a4#?p#0cIP+s0RCGAypV7&~?SCOkC?}(>w zje33WiVYNBVGeFt1~OS#T0tBZoPA#8xRl!-oF~PuUAhPaH?1_APN5&^>C(sbsT3Xy zVx&>kaUQ{WAt%4q^Xc|!P|z++mdP%+ylSfW%`%&Hy{>w}fp#Zn0`{TJhL3A!fVo&T z-II+2Il&`c5=vfil;XAPkMsHdtq%pNg(bkj4t-6l+m_Z<7wW{8ZVpwM$-BTTca}a9 zFbZo(<|C?Xc(8O7Z>ORxN4>It^>EtXOY{!5LBs1|v%6%Li{O}pJ1#f3QuorIya<_( zwUM8@!rK-H(ddc{pcTl|fm$@K5XCglP62n58QZ=k=&>nsY z$99~!9!){dqj?4Kw-xeZEOs|hwnmO(?~}YOZEYLWO8D;FsSaC~?Haum(7WV(x2UH# ztyl!K>t1NbpqO3sd3%(PjVTjf(fN;xseTiIgGO$or)^%?7q6#BZQhq464?5Yy`y(R zUQV@-RC$CPa`V&twc4sAA;PePU5)9AuSUUT7Y0 zM^Wd-0=V!9L`RvFrIj3Txl3$&U@mB<^&>nm=6LIkiNZb{cvv;T|P5itBA0O2jdVU zGlTv&>a&ip1SB^6!XrRS7xyqXZ0`ZyIJ5TITtYkUazE$SBMS2G%6orWUde{a2c$?I zZ9WK3TA^Ne{qr^KviZdn*3RQ3y<zia5)u`%@;!| zXAV&Dt)UJ|Kfys5H7JtKZ5e2ruv_Vp2kqtkuVe4!GLg4iz>O z;eZ~ambcXi5*_bU)O})8`spk&m&nzP*~=gVgTgX&5Czf=ZPfwD?r}?m%(VGrw@h^? z!;@My#B3M9$5QY!JkCJB-6hm`R|nDf`!Me)Od+PkZ0giQyzg%vN@^BSe}gCtwr-`NrhO|jF0|MPnXf>! zpQ->Z;~`7AcXhjS!<%`VC@F*<7oW1({lsDSIw6kqEOpzL9f#3z6~8yDv?)ly)#a&H z;A(ItETa9gGX(y-f7T!OOj({W`n;es4K4Hcn0{9V_0a+=uuyIm8umo} zf!y-sh%ED4Pp`QaMvE0%(*5&b4Su~Ip_24Rd_FH|e^qDM)6)yZ^=A3b4KG6Gr#H?T zFrhk?;w&4t3BE-SCp82){!zKtub%R)PE3&OE~JU8nR}#8cZgmDP3Ryu-;6?qF|r=|>2# zfXHWvzb%V^f~Q%}5>%^)Q&k5d{;X2pp)O(jL+;4M8Hy7f52Aw{J{@Z_DXVB}K4;JM zaJZUAwVKo_wO$GZw(LpG&AGVK37LsRDSCIHOc<4**I^RTL+YEVjuCU&j-yw*f zR7w41$aj!=H{?$^Cjff=rifWF;$AydJWE27_TBO!R@ zhlA5YQ`@C=^<9u0xEF*oR{TdbpZRiHiFqX^^fCCJMV|^RuPWWeZvuT~<0>LkPU};- z4zDD)AZVXdV$ zUH96j=CYS;dgIA%wHq-L#PSIt%=(N^G$}#z1jG_Ek>8I}i>S5mH0i617SB@E^Ah*b z>UY#*m+AK&sou8zq@((5cf36|cX{$3RfG~SZ>t^fcRycoiqFgW5I(sS$7HRlUzC-z z#^BK4oVyoBc`%QNpI3G-csTlasmINy0&Ea16ZP{^ZflJ*KX33yO`?7YZan|)HFC`g z55=;r?0U@6>|AKowP$vUxNm!HWMLd{rCr5=Uyz{p<_ft1B%Ka*_S6_96b6 zhk{|!{hF}v13~ej!Qyi!CqR4&_Pzt9Ct-EAzK6@6COz=mpPH_*q=ZZxO#cK-7GOA% z%Yos~S8-Jb-_U@_m4gU)8_3Wj>csE7=c}KSNA*bVEUr_c%`KlDzlX+1#hMM`nAz}= zJ(F&GE)#4G~4&I{wX7`gODv%;GenSx8HuLK2~h|&I6F#<5I*xTePY|7Ht z^~D3V9__e+o_J}0_)wUGq;qS}2Fe41I#zgI_5kY4=eN!szQD1Jgf99)yOmc>h#!IP znTUmP{%*8hoSW0pM28h1>6YfG#gv;g^7Dx3$G_U8sdE*2n|30iZS#>ro9J z0N%ugD6R~~#Hozz3|HTaf@U|rQhei}N*sA}VGVe~0yrjiglC^f>RkROMdv&QINq z4DtrM&>1=85=9|kA_?MK_7p}6DgwZiUNgukb*!ggIAF#Vwx4tRdu0Kq(7>}@Yvl?^ zXLIBVAYM8%SlOo6ng>@Yk>%_c;~N|pEVlSp$ZcUrS1EiQN}Z%?k#0{^ap|$v6x(My zoD{VSwIb|JfABJT5>S|;q4T#HA(?2MP+LO`TY=Cy=P*sf8O4o$HKPs){ckvo4|`w! zUX7Kt4EE!@YG22LfLUih1&wWX9n1{=M&7Ddw9;gzYk+!54XPA*3LXkx6=wTZsrHU# z|2KESsGuNF2|NeDY2|+LPqbLrZm3ueRWm#?N1H7mPQI=PrqtYhd#XOJJqP?g&=*iQPfg0nlQGV>st9O-%!Pj@ zMY!lXabWf#Yif1>cSms1L~b(okw(1p>g@d90^)n>Ub{ssIr-1tvfn={=%0eqnN48P z%R~&pW(^Dq5@Jar2jm5ig?_nVQU2%8Rer=CouiCI#{lSI?6*GR_{Ph12ycAIXF^zVH?=k!$pXATR^oza!mbNn3OVMe&#(XJ zHOV@l2(D3-)woh&(frkweVi7C){)(^W2N(@mcAnlv1)71s(Ajx{7Q`74`GMR&k%j8 zVf!&%wm}gjqu|gI3_W;MgJJ+bp!=J7F1i}sesn=rWIP{b~4;YRi9Phms@(!y{Afzgr8T#{`PrR8w zBcJLkJB@oC$>?BoCU1}1;UuzFVStyQ3GpW4g30^p7u*qN>c4rL&J87jR+#R<)eIkP zWbuA0Gh~;D;_Or#F-zX0%H1@3nlG_0U3jhK;~I+J?ZT`b^kg+&cS4VklWE2DR4H^W z{`Jv+aa~?({v*QjrgIW35mUXCEjxss*J2xPzwz-ulg@%sGy8(^SM~x(0mU5qo`L;b zHTCB!HU2VDTsrx0_RoS?cPRz0Sn-j;VV&E~GwkuOibm7|dhH5^MB!eXWrdF%1|jd{ z`i{%&%UJpwKXuf~^{O3KdED3@uBhsM6Vga@GE*$2)QfmwUe&7*mQ_!-vO=pk*{sAX;&sL|DS-v?0GQh;E#-o~sCuvt<$=>(#F4C9>tHrbl# zXBaO>q@xu)vv03$Y|j{ZH2&aM7eY85MvNx*oq+JS1#{mRuTz4rrLG@M9VQ-H2@R{BCVpTmJUEQN z?yCw<)}PdTO);CA+ug6|5wO)Q3It$TE<|UDbsYxQRxTN>bKye=LRv~+o~>O;>DUT8 zhLtX7b+UO8aIib2@-6a@eEP*2O!Tbw=R?z6eME%gnM|YJFB-9Z%xW?KyH7(zRgR+Y zy1fu4qV@Vmz08 z9$9ss6bB{F=O7llCy@j1A*$?Obn;3dr$sj#;m~J^_jzx_hAi*>=21ulrw}&xmhn7D z7cJE_-TJJiHrx;H$$j&T@qE+ndC!g#arXrr3LxD+{=D)Ckp?%cDKP zkSoti%@#~Gyl4t5xNBc}zH5vD^l&jnHppSEWU-+a4_$I=1$)@Xj^hx1LCN-;Z;-M3 z@rScfSDHOnud*pY^Vl|_rdpdHkJ_5~coCETFzX zPoQ$ntvCao;Z!C(cdG5L!g?)kNHVr>{_Uwy=dNLfMuikgTWV!46a}=Q3=CL2WLyZ3}v;3MAHK%Z&Bh#MpxXDxs0TA+ zQUP6$7Eyfsh^sj+$Ga!bDAm7V20Ug>69dBAr;{io||2@}=2Wz|V1GDLqTd-6lPQTd$t zRkVDWF7$#)g-jaa7WA?9MQj5W6qBaaI^XZEUqhEy;sN^Q<~s-H9%_w2t{9|8@r zuLSv33v=5tPKRY**3^wvO$}$D73C(`9zca}eWIc+ruq-bU1nxjUZk4&)d=frzh4#X z;o^^}wYVHMGb~aybeY`9taVcCeXKaIEnnU2m@+xXoHwEqXf?8-5$V9?`s@$p%%vT>Ht#7BpI40Q+}Y!|I$@dN8l z(RoMC619tOsTz&SkElupZnV+%o|@MyOt!&Jju(d#8cq_5A0~}CNKaXW@Q&NJwKhlC zBcd&lvlDxCx_lTwk$2EyTTapnmxW`u*M?r(r?X7%C5XbgLg2;X#Fiiaz{%45VR#Poud)eH>y=GY;H~;u zKW&`xi2=7LdG`LtVM)A1LTr!;h&yV3hw@BE;Rmp#36eDlgeKy`XlWWOG776!po5qet`#0^wIt(?4PC2t-fb!D*HjR_C#%JZ<5%yC6{xD1%P4%#dUtM* z2vJ@deyN|KDrZQ0KV<)**&Y^xzuS^QaUg1C&}J|48%NSM>z0Ch4R3C_bHbS|RDV_J;N8SL{{v2;LA_6=(>ee2dMeCX?I&V7@9HkU<5r%L~wLei+xOIa-o@I6Y|v zprnz7SD0flxVKHxaaz9>tYaYgTS)uys`^J6ilXwy+A)%YkCW5?d%B^@pA*0%yv01P zdvZjC;7(VL3l%IHnpSzlCT2&yyx{jF*Df!Tt$NG4 zHy2;8oN*R4StK-1>&5+Gy}JBNu&gWIC%O!mwB*nQgl6>SE4^M04h8hSU59Jm#lHAM z=_QmYXJk%7?g4Xen>s#+w?RR2W)H6C*GRj8iX$dN zQ^N;^40d|>S6ld_v-nF&A)P%s`9N_voerSww~3p}+ZLV8Xwrq`C+{fg8^n~1PRbFxmVb8gT z%$V--+?mpPI!J$KKha-%{H5@(!-VGx>F?y^{_KK8Nr5dm7>R9F(_>HDz_hNFsLVh0 zbjR-`*8x@SZhhM=Zc`zh!`8X!Thdnsnkmc65})^s)s=@DbYkhw^goJS55AvnBH#fC ztT4V$a|-Q7BV6%KS~&b_mkZNBs>L;jU=|EDx^*wdX9HRj+m=6PVjLZ$xifNV?L2?R z6Hr_bC{r~*>{gxYn|=tvD&mfQ1F4Y?2V7f0VCciRe^g-<2^hUi7S1>UAzbeEjGVYg zI4@i`mJ(6d`_zAQEAS97yL)odN-_6sg)vN9XtAW_+-_!uKCi&g>V<$%@yhiEK8au7 zHQQgc{CH%;9Uf&>ku*96X?Q|}uIh%h)6~}CAd&7NzMdYwcYJP7r^>jniriHC(UCw( ze&JvCTK>-iq!7>%Hb=c8`wh(F~h)y6SPihDAk!^DrfJREI*^ zj}jm2#)yF>X6Hkk@SAZ;78IODKdFCW5Hl*0+T>dG+sMw}2pAZssL`291!!*PCl9xC z61xJOR$!l1#9F69#C@E+ylz?`+BB?h(5e5u!Dh=-Ta^4oZ4CUh)`PObxXKSxhs5%% z0%x^Wa?)1;)Vr+P3L}{UO9dN<<`++J!<=WfannN2H@UxDzZ#VF`u82~kL0=+EV1Lx z{oW-zt4^;mkZjZibOOraOhIOWcDWJFAn1oFf(4dlXWLcG z!9#&QMt+8;<_*(9+X&r0K=Z8RWdE|B#Ejp3ao4R|xR_X{k-@pz_N(!z;QLL6gjAvQ z(E)Vc=i>*hd?yi>Vi=~iVx z#EjE&`p_WC18MTI%bR&EQ&BX(Gw1vbdwc_{)x8@p8B`IKuV;bX&5R89~^R8&>rntH2ZgBZQg{xcPVZR zH|41%b&-xR(z8*^3%1Ta2FXIt+dixg5GKvF(q(eWB6phB5JSNX4&6C!>pF$7 zfPUeYoxLgOdazhms#v*(&Uk!A#k`BlWXK*EPH7fp$3)1oTS3+7Whyazj$>PQt%hFf z&Qx)ywj@4uy_#s8@ENS3uPP541rmiENUSfWPgD~@?2f$rP_uDq952l$M%G zGhlSHDF{dl2uMz)B_=UOH;isJIyO2ta=_U0?)?vz-}}1Hbd5& zhc8~WyI-;LWtL-|^|+-CG);|>A=-7lOo?{gRN1U^+-y#pbv-JN|6{a$TnipEksuix zt7I52rS4^Tjxkg;?wr(>O|}A+Y`UH97nHVmHkudm!t}R$$nWtEf6qT<#;gT3l=HWyh>sFYR7K%>jAZJkW zQzP-C=84rytPGtBzkq?c{SSub+_XMtf}jg)+S+Ek z&h5bSzzImK!rOTzYv#hUeFH@?v=?LD5=E8zZr}CH`Pk1e^UqU|v51KU0s6SY24R#E zRk4ZJTzaynQpaK7v44C%{0JA;*hs&h1miKO z$^3-1W)I0UhK|N_D=m5NlDB!{Vvvyo0S{_9$>DxE{~Kr9Uf%8MwpeNWV4((mr3hSa zf~w)e9hmNwV&9Kby*0^z+0P$xApC^>|7f%ww_6+-Z>i{WI&Jd}D?1s}+g$aOR>p1& zm;hW%h!*9nMgeiLu|(=3-8uLck!6JZY0U3I{G^+a4yu@w2Hpx&zNBumzy6+Ku`o-q zalc{H3&=7(gW*`Rd0d~QSdHt>mTyoBmuvg)M5ZX4zt1lZpKZGy<{bAhHL-a`3*ZOn zm_7K*4&}k9x(u!>Op6iWPXziy^g(^~lC&gwSCasVg3HSehS2FVSgWZIY$+w-O@zvO z+kk&>b{dQ5Q29_$y2H=tzKNt*8!)VOk7{_@b?4v#uug9aPage8BROygWG2z;S2~`U zmvv|;aud>zkA+J8;mg$va$j(ECU<_DrC2x@{-bRHUIuQ6i|+_+;rNsgl^M-Ve zH(ooT8uCfMGz*H8#Z#X^&9K`eroK9Gu}4~cKOhoi))Y9QTPfAbkoBf=Qgxs(3eiJ8 zy`)Mxw(}NCrxC}yZ!YV>?BDwyy?CwO18m|Cs-xxPyq}Y@3H+Bvz6ZypbvNm}Ci*nM z+GPsSh3yr(ehjfbM!f=ip|@RU`-A7DYLyTZO_C>&F~Eb()SB~@;#93Et&1Dnp-VZ9 zuEL>D7aH=3RE3Sgve92a^3u0@L5v?~5WGwk-VE(ff}Fg)hgL*vZTjz8(0_lz8ek(o zv*vuN`=~FsY#|34wFP~o-x2L|sGw}>u~UuNH#wJtpYclsn_h-;<3JtBd8CDIiy~Lk z-J9Z7wt3Oa^PbYI^?cdaf^XtsRHZ)#Dn!<(HIBfxLs`eOW@iU|B-7XbWI?pr_H)+h zST95&gpw{0Tl65#RRgax)=a97^Q}?48p6JHk%078KHbSD9KI*SyjO@U+dpq?aZOxJ z{LHgjHJ3w!YlcJy>)`_R4EoD7n4OF)hZK;jw@lyZ{znr+PH>Q3=1CF{@jSLg#quVj zwDquHGBDswiE!_PljOSW>T3FCT%s`qVNrY6N-M{kZ6Ey#^xb!9g$VKumb^^AYVK2I zIkQO^=%ZCv77GP_paM5i0vEyw0{VoIEctpSIK-}?E3RgwyP}Jlt?~ZgFo&5ujg)iz z2>F*9KH+WF;W~_o9jofbu}Sip`$w1TPNvC#mZMKUH0JXEEc#Ta5!UfxvpY_5H55tR z6^O4M!X8klC$dm{^P4oO#PFvbw{~ZK!K@W&yvv7lu2;OPu;AEx+U4la+>XI_5MuTv zEFzw-^=2h4n#=Lu2r2QLDdGIxdxQCWbW5$v>s<;$p~OD8IH>R^DWRi2ElM~;#W#8~ zw@3RY>y@fjL7Otuf1ukI{tx%~Z)?(S-LBGf+(yYf=9kcaIbJSfoi7}|U+#@W+3=`* z5gTfXEZ&WUvK|(q%WNpOn?C78m9x$0_$dWEI+%zj!{1qqpR%hR(*^XtP|k6>Pz`=f zWGlqSl<@ivnmZw^8?I;4BcrijwK6F1g(HZvqJqrUTYdd&pRsgY88c5@rC)pXBSGO zbsSST(E!5XpKR1fN}=vyZ#&A13tD^}-whs?itEYsn9tF=y0VhXy5{2=j; zK@3t+GsCcGW_&){NsuBeA}JUGkP#UY{rk3`Fr0{h8deLipic821szp7Yz@UArbwQc zes!IIawMaMc<-GR>doCBe|W+QUe^6Xx;vknm{;FeE4H@^w6nbQ$#+QY|3OxwMK zzuAHkwcu>g$^PWjqQBVykKS{NL&p-tiEER`LUC-%V_0Ii3cAZJR#jL zHjCt;TyHXGwbGWfi!3_YNuivga9$J3$5-(nZgtl`$!V+XB$*@jt_5Z!F}zfqBbD=N z=8xY3!aVEz>lss6vgtBE(?&_*HamvP`*tU-+Tc`FWbLC!R-$AW%qHO*Kie|7+m0x0;9LI=W?Qe>rlej({~FI>ZzbVX@`1>A#%-qk_qtDRYu{x;5z( zhxBAL_?ct7K2dp$^sn`1dch&puh)E}0yMbNkcjxTcbJhvVN!1!zd70HvJlGU^mYy$ z$W->?frCtl|4tR70q(ym$7@o{q0oJuK!eibS-)6WSC2T_{CGvTy zUVXEzOLOE&nEyp9m=%2}Zn%sNgTEc$305Ptv<=$$@OZvDWjjkuiSUy_DINFXnm`8B z$=b(XzZ=RhE+^M3I{e5PU6nXZ!?`tIQeV!_AND8zaa+Tt zQ#E$kCR{8Ysi|vR!mMN%V_iPpQij;*)}R-wynj+WW0`LK+y3q;6=?dgjC_x@yyU^#@|7at zlp|P$`X*+=C#f#O%6reBX)Y**b@|+4^Avd7Cr$vD)(*UDM(P^`%=#cmYzj`luYJ4M z`0o2HdFBOSrOkKx(N$csc6xc{DDRar%3~3ytx#3&@XiUt4wG=}xiSqHNup4IN@KM+ zgS*bonon(>5PlzWEv4U3T^|WFy?3GQFZrCfkZk86IOYg=Fvbl{DK%eqs7xNe%u^d7 zsOuAQ@o7|lApfSXvRfFQWB>T;yPH*$kGOn)-=Sg75b;fQQ<`E{TKhw4T5c!6D4MOX3!qOsjqm-W7@r-Ks^22EbCv_C|{pn9cR0?z%1b|R9$D8w9%0jh7QKU zE@a8}qX4e$cO<_qY4aIybeH$8E4y8D<;^prNtPSwR^d7S6vu7;`=|E`PeM`hRz7c zT_;1it_hC?7onRba&v%K&8wz4j<9Oq3Icc6oets?UUmayQ)04S!dw;Czk8~k^xhq*URuo$4j#UmUfY65>|ngXQ`iOkiI89J@X zF=Ua;YBc7f^s9%5ybhqcCw>OGK+8kxNJbAf1<9_L8M=lBuIT)nIE&STc>%a|zavhh z*~-p!czqqGup@`(kAPh%g+2gj7ibq+D(4Tz3fTk{MqHFVe)<)yy6Y89j5zyov_0Dd zd)vYUxav>WM$PYXcO?6}@xI33?(z05AkukDaM9ogqQ+Z> zRPN7$Hd&wj`BGLZh3G!kn$EQ&pP)_*3~J&BRRA-5V!t2Hrki~$_i8}A8$K*h;PIZt zBHu8pXk2Gz<>cT;6o_cEq~EmqyFkenwdnxJ)Dc#GQ7!eKXuAXOs<=vvHS4-v>&Ocs zG6(YV573GKy8pxTt-ZeCPV*nW$-Q8{vs9V>t8{Ul|GT2fu+})&o=x{c|1RQcCe#G8 zU5523o{ao4F&43}Px5N0AsPNhbF&~kk5tuhC}t}${ffR?^!HU;Cf0i2ZBQQnzx7@H zQYRRLO?aamPM>YjY#OIoSIcjE<@uTMv$+tdx?S@{7T{7;26pFgDKiEU>1nCGoSva% zTcr>eB;^B2|4F!_=KJM~wI5MsX%*2n9Dd%6EGH@G8ISMSW{7TIluTKCReEqI#Zw#2 zxz-}kZEsZZ!$u?PvP|WoWvDUd?+w^4_%=|g`~JLXolc45eQcY2M_an1|r z={dET9EO(L;imyE!OaWf#qXICeVQv=3kQFo#;a2_Cxkr#h7W@Cp00%I*nOk>f@z_i z_)K?R8?3_mj?(6i&vw`RVJ0O_)%)Z7Q)l`0hiEsE>#IEYO>@8#!r*C`s(Mh~)>}2? zNw&;$F*o_|eOmY_JR;C9tWhKcKg{Y>FOkliUF3{?Iy0+DZT6+HJ>fY%k((D$m#{yY z>lQ)T+Wy<5mhv`N&pE8}5JA=a^uVQ5z^%&+$~C8E&idqzQ-BKbyV)`DHb^?;4@T%> z(=jg9nBV*M6(vDzk$*1b2J;1gl-r(R0*B-;Zk*Cn(u$lIj)5UjJTOU)FdS7K!6UuriQ zy=P!g-G@9j;WU|9;<^2tj^jRdY<0STpI2vQB+%6%S6>q~$iw>YFjwMz`j%8KsqQ#$ z{`GTfO_p@Tvz|A>6M=7)Lmu<{A=D}~@c--Np|+7c)l)^B#@)aA_JQ&(X3(}y!eO*- zA=xRG?zQq;<#%JBX#%K)g>)=TKR&yPkYVjV5av!i1~dXnzZeoINRG9*5<|>V2*Z$u zsoPG-0t|g-D5x85>M^5lX}i7vU)zl{-FHw#e+U{^$PT-7aCcXvq2gk~VY;u^SBk<% zO@Q^rX*}zSvb~D*UmBdcSsZ|A2l-9_W6ram1TCsqG0uCVfA>*DNY$RG61V0++_1`v ze|YYoC0I@hhu!zT$Mo1(hcc}I53DF!6%IPY%F)ZePg|Rt+Ry~9Z=0cfz18pZZ6(># zqMrdQsVKctsg}1=fnF49@79Hl>tLPH!LxnRWC-QMGzG(?IiPNf_j243?7TX2i;RYY zT=)+}O%I2(%DfxeXxo*rJMEe!sw_sFBJbeGFZ}O(5XbsHvH|Pm0dO0$5y$xD3n|@sb-9$fzMX6#JJi4SIKD<~1z*JDNl2&bF-+mKd)C8O&dT z3%hH!*W8kxpB^3`pHhsRl-0WPQA3F*>z_ptgtaIZ12h-jQIVFD9HQ&@ygSsrFa$*@ zgABAIov_t^T|??&ZOTBQb+d8YxT{-uso$%R+|$_M$CSewPa~N7?VGCDl3-a9?6*JU zjiIaC_`K8%R?n|*QLjhsht0O72^D%Sb>;~8aP#z>_~rZv@tR~iI=lE6@7F(!BAM28 z)P=^&8I`e$s64Jg*tw<64q;Rqak=sANtsS=V`G#iibFsFNv`au(?2EM3Kp}7DY7KJ z2$82tG%CmWokt((3IS`Jz^lqK8oBP`*zLFAx8g%t!%SU?5!3E|*MwSJVstIZIZ7$| zPJI_shoZAR!Ai?@<$2*Nj-cM;f<_1z4UO)cvXs{w-B9Jd)a20+V z{El3E93d9m=|hnWHsuplY#)LDbM4EWd5Qta)*QPEY*o&|S>pW4wYZjvD6A z)D>0&^`n}F9r+on;YcvoLU!J)O=|7W$HKMi#V0)2oK60k)ZciEh7wRj3lmwJc*}9o zB{25uX1zhs*-#x&_fMI>=E>bLak)Ex{j1)lb)TOuTs^hre>6h@`_`5T@Io~>@p zsWE3Yh7fX3s!6%dRDtcL@aJG!hawSv+i~sM967ZsDJipnEtBS8QWy0h{DataE?b6A(#68kUu#tKynv( zVdoEC(vK*p0DsH0u8r+=rKwcla2rC0zh$liO#Y~x8p>Z=1)9R@F?{#pytpJ}3Duhh zy3Wg2GmbqCAp0(4996;z$HZUcj`=V?|D+^sMav*eP~^G5>M!$8U38u&B!d~7kY%xw zjrpil&sLi~Nx{?8Vo7RR5XKe!)?@;L)Cr0K_`N#W`j)$uM@{5qnSLcxjlZEKr2dmv zq%<4h$Y2=<+zrmC>^+HtM>CY`~)eK@$$gJ{gx|K{ntZt^r-TfTIa&#px?D6ni2ZnI+dt&doemfq_$ zI!&hf;IQdOraOgsj!@pQGV;^>fYbx08+56y zQ}zp(9lz%Sv8<}=w6o31*dd%+zIk7n?fkLd_9958GOM`AvqQ&q#lNKk#On;WgDDlB zP!)$=W){6-Yk$64x)l?9xBTfauVzz72;ux>@jYR+an`MrjKqnQo0zPuClzv1jQdCq z%eyVHyLeZ?AgXPALz`M$ujn6#_%%(-3ykyBSA5gp0-!@xI z|0-%O;)$f@?@DAkmNQQC_Pr_yu&+lAoc8tLAjxV=?b@Db&V&N9b$Gr)XKKA}c|B^7 z9*KXP5bXM|K2+=KDLUV~z^+*?6qQtLgY(3*z zX-3F=9QsWJtReo_haB|~0piOgg)qv4P3&DuvyK9%3Pid?0OQeD4K-i3R;80&P!1eL z*I^a(vT4jd*&Nwab2ylq?m^8Ot(QFZP-Yx>rf8@3PfhfMiLY4mPGkfq-N4{0Brs8T zP^c#3^2+yU!yI)mM!=P|5BJU@ekd-m)Iv7tN0>>L^}*9X7!vqRYTwo!gZ!aBYWru1opC*<$6emdSBd#wttH<} zRGtD}q_gn(r6`iSpdZQdmo?;%1Z-!0O|rsNSqeNyOBu(jVMSXZpnLqbE9Ho)rZOkduEpMS zxFWuvAFO_ux3e2m;%6>*sC8)%yj`6Qd=Yx_cJSYi*oU5d!0x~P7t5z%P@?+yTJG;NqWOYK!GvaB-bhW72-i}R@ z08gCLT?#SiGc(Wm`XORH@?`7srw{YA@JT9>`RhKbdeYEopyijzRIq~Y!Em4d$Iv`q z(LK>~x0*5PJ9ysUB+*zq5sbcK91`RK;-}2R{tdSS6O`A&aP&>w7oRS4l3kKCB`k}3 zpLBg=N?*Uq!?R>M<}S%5*21Z1+)$_{-_ls)*V4b{?vSpD`cp_RqIs|deM|i}J)s7U zbT44R>XVt46LR9rZGj9|=jLb77u$8SdoMXZR?`6NZL%1yoK~t)cd_K#{Q6P5F64W- z{y`l>WV!)`8~MUM#&2Nj-rnuTD?|RLh!N&U<)Iit`xYa!dMKuE(zVn6ntKBW>?S(c zCd`O>Ua3yF0z{l=T(cY5QXvIu3YyXukspg0$7dMC$_Pm?z5~!0D+e5yR*z*gY(GYrN^$ zVwwz>d-GS$>C!&7OlaRVZ4+WR3tLJD5)3o>XXsCYQFTdVn20rL zL;-bB7*q-yd_^eJIkj03Q-*lYZSuXxvijSAz!UaWqg&5T1=mk>mYF+SxSjd$$if(? zvd98`WQR#jg*xQ#<|(zAy9MJ$^Xx#EBiv*jO1v1XMY)(R^F6dhdhQr@*`|!eBb6Xd zFED2+dr6qtJm{B>sR4OW<{gg-i{!COz61x7Z}Y%e&ZwuOLBU1YX=<=CloGAM(#E0<0V@&%?8fpe-P_Q|G-jGm zzp_1x_x@p~@rxY_>|6%(3e#cpDHlf0H{QhBvDfin`#?z8?&dEN3Kzab78p5(F!(e6 zxyhUQ+ow5TwxM!0<@r(XCZ^GPybHifbXoSHx35Um$7xKJ9H}XtqRktbbOEMOLyp=g zNQ7md=;-6#fN5DVT}La!RwI)`%d*Q|G*NRFz;oH)1_bkS`9p`T8`AVgclH63uFF;` zcQyZ7(E%(5MQCr;(Q#1WCzM~jXHiy67$3lJe>7bR`&9<#=)G#D`~I!q_2 zc5M_Et9m0oli3Lu29ez-BFmTWY%GdRB-K_A7@mI{3Rv~PvYuxXL{FRvEwNCB!DTqx zwmCX3!_1r$(DCU%nh&29+eE6v?Ky`|R_?QU z(85gDeNVhte5$!Pqz~+?-KV-QwL%Oj_vpd=k;+9Af*C%cLAuuJDDWqZmr=mD5RJKn z!1KO#8zuKga!~PZ&!6y?Hh|=}4PFbF=Mt1S5;L`7>^J$F0YzBe@U1Gp_UJU-P@gT}e{-K-jZQkgTw*%U(|T&-e{BJ2PDqysjVJd$gJh!hxCw?!s; zz?S4YQ#Rx=9$!ao%*JHApyrBLhq*tKRlEyzk$RYR6m5Y!-RpQeh;8;51 z`&pWYC{Y$*>$E?UISigxD(_$7tK&-{N)IWm&@&aq*$xElx9O8ZjG#W~*A?FmQEP5W z`$zkfz=?Ma9S@S^lN92@a<6xY>?Rb*^dQ)Qy&G%kKEd@Z9VU0fLh6!D&#bpcj-(rH z|M_S5{|#!_KA$cFIJA(O^2Q|v?d=&GoUR5MBf=Ju5@kz3?rF`nUcdaj9*GCvSFIF+ zXG5q(*`~^KK-ORphZ2iYsBLaveJszJLD5<3`7z(1<(R(-26JYgq&7?zaNF_P2d$X^ zBiZ7+{YXs+sJ?|9eJ`d;6du8$Rb1#>!bnL@}qsXvX7y_lCv zH9Mv^TW0`%l@7z6n{-wCo~wrYxh2{3(2AkAH?0LOXvkL71NuhUQ8A~-z=_vB?8N@tnt zzc4+cg9l@+mNSi;tTxK(G!!qvUlR1|Q*qZ^a-Yt1K(;A?SgN}5CPYOejS)Uv?a*YyDdT-(c}^Im~Hq(2p3aZLk#8abLe9q-TKzge~TKDVPhU zjYwUyJBB(98)@5{g~j`P4=(?z(i7k>Ya=Z&0`<+`yzB}eG4j#^RKa;=roS4~Uq2YW??}y{kyf z8d77sy-xf-|1OczQ+@zpcRW31HwPqbU{gVlze=!EXurfV{oK{7BaUX{$He^3uym(8 zg+H+^xIn{Yf_(OJ5$3@0Ph75skMUAPw;oPSbiXndMHgDI{DQ4{-*?e>q4ca2EseGj z4RQ(56h5IAi&TFq{nMCaZEp?#W9f9NlAp+?p%Uv1-QTv{?}R0oGj}+JZk;2uv!;fB z4A#Ga)z`_PDHu4?E$l*y#HVIxY+_NSvxXwmg^2DVZ zNr$MSNvitw9}RfZOaD=+U?)~0LUzgay9FoTF|lP=y=cMz5Z^Rdo`7=|?z&sE^Z;37 z$os=tZz^WpB_TFRQ*M~j3PYBc;j#h4%Zt&nL9C-D(&EMfwyDHAu_QMY3+#6p(0lD= z811yvDP#VovTM`v&)(1*0tsLrP8u5kuF-M`Ha(U8wg_31p!1&MV8SGN=b8yOuzfL# z0PC99!?!Dg&8vO?EO|W?yYH$->Xyk^h0;?7W+HcK@j5c4H(jf5XwFD5X5QG7xU&3? zTj`nh$~l7{q9nPsnT_h7>fA0Fw9u_=O44dXJY4o?VtRSydwzpgPD)*Quy~9XDoOY5 zkPe3%tIo4T=0_Ea_U=FizLeqisjaENN{^Jh*{W@XA$F(^Y#7Vqt<5<4AB`P#RWB--x1+y!MR0Q ziAIt8=Ly4@Cebb!W5LLt4H9)R_KHV`8jZGy&*RIC%!jH|uTQV2VXa^AJ1usQS&csI zazb>qnJlmTs02uJ+We`q4^g zq4QYERF!@zksyx=-xbrgdS)_D5CQR)$e;b!UlVs1&G`FiPldT+l2zjaeT8`c`6Om* z(KX=gOA37&UNQml%Zw~rgHff0*vK@Ez^dl7|MC>3@Qp+|$I2Ti4AwHu5ms}U*QZK9 z#Rc*Wx~&S;86eNCj%s3bC2d?l93MmsFX#0fW|UjD*Pv4*pXvr)WhG?PZ)8=tYA@IG zgCDd?!aU4nZX~+4?_{?I6h@9)zk(z^w?9@*Wrm!@FgN%pQZ|?V@MS$+r-24gI;qK& zS>TLjr!_apk4SGgDhp?OKaKVhilVRVDw+EN7teD+^sp!-*TRc9fyHnpRZXhc%pRGN z!7Th?%J};H&)qJlMW>~Tbv6jf78(dhHXVBx@?kgET*s&2Kbnu4yvKoVS#}o~GqQJgUZ;ntQL!4F8VrKuxH z7V(^j8P=TNh0dl1Xb9Ln=~cPa)W63=UG=AkiORj3{rHY47he%5r8K{9=O|XT3S8nU zw;IA6mv+y_M81G4E3=TLJacTn46Xwe9@Tsvzo`C>Db0z;g7|o7hxz3Buuz@kH@>?B z&8VXwoe-N2sX+%`bk1n4(tGyLTODhL344iF!yQpe6Jn}G$8jfcliEEY6@IUGLM z%)%^awa0yA?S8h^X)RQ#XYoUoO@~a|P4b0%<|(km?RQ-UMP-WT)D2*ueSiK)fbM1*)s;X_OFv3mr2PrqtnL8v?hP}=v|@~&nIS#(**Jd{WnsMXVqKWW&+H}ze!cZ zTe_NWle%1xq8vUOYzG|sI|d6Psn2+B)Bz<`6?k$!XB$xog} z!C-C*3_nyNm{Bh`qc3GI5dcPiKRjQ2Gy8;WL%)UM?=-u3qd) z{eT30Mww+wLg7{pptc2@8-LUEUD)gEH_LLB%!C)7Gu5>T&wdX;j7bHgK0l^*h=0Y? zH7aeX_-2KyvbCfG!?&vIt@#8b2SrVd|5YYbZ%UYzL-zXmaTL(n^tOYf2{k+xV@a}G z4iP#ob3NW=+I;`9C0g>y-u*(bAoX$Y&-1@PhcPOP>qoQTOMILV_cw@f$~SQr4L*SK z9dcZ7!-XKUmkSl$;s9jYtRKA)n^BGPC;;X4Kd42CAC!js-|zlkjuMTx+;#?Y+a_5Q z2M!=BdCx%e3$u$?vpPKD|Ke*Own*YsZ?)m_FEigyY-XgTGsN-qP0vY7 zsl^3TIaubBGjH9*fwi0Gp(&e#!iC4Em&BItMb^ERPm3{7sqte36RGCl=(+yrQZl4+@(u{&WBwN%s{UhpC6l|<^`lgOqHB|{($J2hPP4XJX zgC<&HWSN=B>Z6c{4WSs^9ylb~?JMuVl{T9#wZLeKev6CbvwWz!qM0H3hJ zYq#8UMZne8sH0WCx(gt6k+wJ4NM8UQ3=C;hs8Npi{V1lxyZA}Ti}j?rl~mzo$4Tne zikX2dVP&F4X7|B;`~CR#RG#VGzxP`o-hDo#Eq4}kAx-H7arj7vvsufJl697gT-JRT z^YvAUb43hBk^U3+g&_u=46)co=op0uOZ9gzh6;Bs2-XwX68wpX=~Bs~9=Te#_w}xI z;WZC0>aKcpgI9^N&SL{sYENHRXE*)GoK*96lFUff935{PEr~pdhcIpCWt6a#ZQ3s) z>Pvf(`lKho4l5Ph^%4eUzLr8=xrNOo9nixA+y|{YUwIx3bAAHeI@fH4aR45XA%qh+ z4)VW^B(f5wH1EB4L&DvDmeKj{>thA1?yqxX8Vaq!2coSY{zd^{=T*#c9G!mc1Yq<8 zUM+oQ+q^X0Egv7m^b^l|o_-;{-NMx3LZ5vLJj@E(WMp|9=fv0={+Yi${|mPsFrtB4 ztrpgH&|Sb~RIgyM9O#1dNFmRT>u{{rav>kCb8Y=um`HX5K z6cw2U??QZ=3ABW@Kl?|b5+>y_$vwQT`0kr_c94a~R=)`7M9^C@J5_~gBYP7P+UFg* zxKKNzzh=N(E*i^Xrd^&>x?;{i|9xl7IO_vXYU2Sj1e6Qq-ry2$<%Jo=>ptsZ`Ww2? zZMNv`AuRl8Drsnb3M)>WJ+UJ|c4Z2kF$;1;@6;BiG6DUX%?$5|uKmpW5lsy}ehDgC zaj%ON1^=}oBsnd_2dJ=X1|EL#GTFj`$$i^jODNyhn~(C(6ZP^fRUH`AoDQ1s-f6?> zI_qcr_n?!D1dr3s;V9^x2^R`WFdvF!fn)r{fomYXIUg|1NZM7hiw$`9C*J+0FsC9- z25JA~*JTsnDRdlu)3s5i)QPY;ZZ-R;rVg5s#5UP3znmg|Ao4)RbN1VgB4QLi!%Vs9 zb0J6yIsw;?W?B*?zv3rY^GAJZ#4pQOR-qaSoDSJC7->$e&FUpA4!(Php!4=J2Oze! zz%o$~aiFV~@~biGR#ymZ`NrB?&u2dOmkyMy_UbluduRH{Lsf1w zj zqR%a3ib;@n$kb(l)IO(E!C&7Mds^N6;6M8`Bp*!DQExDa1v5wc<|=Q>&~Z@v39HFX-7@NHlo9iM=cW*9v-^_lbaGo zK+zenXt{=60iDK-;g<>8;(oFt=Dz|)^>E)jx|h2(A2#a}96I;e$)=<*Jm~JQgKs@7 za#h(rDt`lm1NWnXBT~}8-O{5QnwQdbpiBS>mim#+k`-aPBfCBgQKk6!t?{?0H{GpE z$m)I}?C_^&t%xYu#hLL=WeTcv(H~?v(I`^lY|xma-qf#ASuA*h7m!=FB`f{>NEqIJ z`p#UmH~7h^U(Mf3tL&7MxmoU?AD`%FWbZd8AchZG7D8Zz{*xVCldyuA62&(#V^Rqa3|s9l(lQ&;Hd zyN|PAOmh8?Mytu#r$^XvXy2E%`Y7?0G_BG3FTvl*H9pjRh(2xk;P0GqW4@4-s7ZtahlI^ZFWuu`JHElXgF#kp^)2w^6aq_R{Yf6mr zDQ;JLoI1PgdaX(FcY2_yfvvM~ke9UNlg0V@v6g}rs3x27cQ(EMXhg`Q0xi`hw4j^f zdWD)7$+vipUn&%hD%8(^v3~z@l1`CgMTbS&NuXcZnm*ZXxXkH1=G{cpDwwELp#F7f zCscnSTi&M1YM0i?J3hirR)tik3!&6{{gqbD^0zxB468x539oIV!f(BV61=;g^Xpp@ z4eEagsk{D;xFQfirn{cYIDE@@ohET{cAQvh=VeyO@c210xGfC6-paqu@^wdmq~Vnq z&U22BH42|m|5%p^5&lkf{Q;0SL^;n)9Y3~FTFl!PiyJjo@ckx`w7taBsNwRb+q%hn zY;yx8Xv@cd?9D-LspXg6qFG1#IgX;$cN;>C9K&CLRVJQuNJF`5Ct> zgP#!?%Q^?^abmNUJnLWtjC6PDQWqw4`LOn7Qoe*>dl?mxTSKL7KPpUGh4ekXOzyD6 z&l=;GKt@{6HDmiFD(NOLYn|~8FhbiR7hzHN)&IK+WQ6_VExqQ?AXnLrX5?-Zl z314|t%W?HicSs!Untx)d*bB2#F_83p{>bHaxQ9gc#wWgPb~vb|;zT1cPfVrYLun^@ zC823U^iLHQkK~uxv*XRo515aPvYps{(e9_wAv!?;OeW&E%c%d&hdr@%Z8W=Ws1A>2ax z5?poW>LDFOjT{5b|D2C4RB4NMye>OM<*6tH|#a!=%4GIm2H<4mE0DyO@WMFqd3r32gomTrs_ zw@s*aA26fLtM~U0)>04iWNuT7%p?4TF?F6T5KWHl7rSnY`XoT4y#n)#vTHY|0rSH} zF3n;Jk*Y?h%7$lM*D-Y5kvs~k`lN&lkBw%QF^9TIpx=kVuRoXW#M8TeVrmVM)?Q*l z9^_D?KKL%r%F?~z$6|i4>!N=M@D3|U3!>mKPSi?hZ>>$BIn`oKy6l(0{j0+EOSwt{ z^u5E1zzTQN-6bMN&vJ!p!T6}#E+Ryt0nV7^erfJ)6)2)&0Wzhy3|!`tjeRaY1-p(* zRBLBI=p08hdCNvB9g^Ok_xM&G&C$K~qxhP=RdMzbay$c&sh^o0#5KW^ zb8sn8a^~iPIgk7dWwn&U6pM$a3<$5HkY2L0X~i??vm{*gPK%>H>GhxYWNyM~_sl_W zt!%N|17z~Z{yH!&II8IX2dPl%tlJc5wueB1m^Uhfvh$|izo?9Ru^lG1I?TyjXT+Sw z*YqFFGr&FQs0<0a+?{Zu#)iYbtwp^QG*7&P{&*128@T{{er7u8@y4T;V;qq__*~a9 zWe#atQ(sd*E!&V2VQO*HH2p(yeY~Wp(4Vx-ng#1)a>7k4;J$yc+_XR~!MHo}p{Q(> z`<7`A;Gjn4?5IqT)Poqf|_vaWw!wEu0Obk$SF{j8unpouJnWe5+B(1&zUHacz6_w*g#5%#ky z%LqR)byyF8v$^LhHxJ3V0{6-t71mXp{PM?B>ZhH96yk#KEw`}w4^g#CuI4nb&tKy6Fb4(JN~VB8XMk{%w{CXFF&|@xRr=_S7+k_e|A%DsXigxhndA0U< z1g5GW-t3fwFgG_L6`Ob!t<$I5@ihO@+@Dl>L;!`$+0|D>b|iw|RTxPP{T0ugV(Z>_ zzb@M4Mh+2V^Lp=iQn7I&9jo=}6PBHR;~+PQCTR?P&Mi^T24oC3Q5+;+zlvk_bLFNnQmbf-zfx2?M zk5tlc5y%ry1Jk{w2~*sB!q_lLG4}+Mfa@+?21OkD`#n!E9&ZPynU}+Z1hj9$+Np1NpR+WqG|0+7gI!E%@~{@GlP9D=H;ETY*K92ivFYd!lXH# zapVtHZgbyb%6Xr)To~@|HlDOzFxy;F%xA~F=l~W-mR=6lb1*O~&Ah|#8f?~eFrn@3 zo|1_LTVLLwaFSh#er-{?K{yXYkkk7P`s2kYd(?w1?n zen{r;)OGd0sJGv@^v_V9@oHgj+TM2Mzxpz5L@!TD#j&4R8ISzxR)d-uOwPJBFOC$Z8Ky zqM8c_bnetR1fPX|n~}DJ)x$1i%rm*ohh_XXK5dx7rc~ zL;8^6l%8b-h`3(mzha}R6Yg*~!B~IDCVhCsI1684!fsbqSSs>m`SMQQ({3K5M4V%8 zjpM|*%Nt!U+i)qC6poCHJRb>4J22e~vd5_nRn3ZO#j)^(SX@o# z+G^HYPTQ-Bee*{*@VWCKXUY)Kv7P>g8O3PC59D1~5?x+&HLl~renr>!mFMJ0pUBu+ zp98ZW`FJ(b@mVy)-UOd*)`k@)-!OFHj8WEJ1iHGK0KCO(2*oS>;9Juw+l~sJh;yGogxn@}9L^ErD%u{ynbA2}WE&?=fcem&7d2MyK z;@5{t^4B;nQHqx6Nl#Hb*Rv^BL(6~Ny2PVI&BnOom6P_C+WGZU9BJ+EtN`Ea0k9 zdmWi$1_8L{l3pu{1N2(097mUN>}qY_cdj7b+P|~*XD7rP8*5UMjLu3R-z^V$b&pBR z(z?}6JS_icM4)FnjZohWKYCz*R|}l4?iA(o=tFuYAd%*dI3HY9K$#eoQ{@S=!3gJH z>U+D7=GIu8{;=hZF2LHLzC40r>T?S50^ooa73{6g_4DHS7i(2*8PEIR{dDI)grsZQ|Bia!9pM?pe*& zhi9zAMyH>h^!HyC+%-w-5k7R_JEUKd{5suToi&YVmwX0G3nwE6cm6i_}g-2daF*)d3Z>83<{ z7@D(r5@nS?1CuN_n=qQ~=#YH9UqRJafTS@+e%PV;RF4jZ60{8Ew28dEtv=Raa$ts( z*;Kx&(d(mClgmQi7!q5b>eCdgxNeS2fo;Jg9$b*01wn971vpY3W@c{gpXUzuDu)?E zE|>hH5dihHMXxv+evhN$0}!0SjSNJvp{by3|J^FQvQ5bn|F%GxA@eJ?d5IUSArzQB z>WfRC8N23__{^t8E)5##XOdSB9m%Bof|e`tdHTXZo(n;;XD0*5wjEQ=%vJ+Q<_9 z6zKRT(I5sOsCS8jF1M67Clox;uT*pR$q-`UcuzST_56Hl*Zh3Mgr0KGm3l*HId%S_ zP%uu<76Vtf?`&(~gdB4BNfR)5#av#QPwcH?Q#lV51}^OdQCQ3_ys3d}_eJn{?xwbl;?973<70}mTC z%Vy_E2%Gm$dKL5>?tsK3KkVO1TbAcr{w#70$a_8aI|p=T*60{i6}ZLM^dXp}(g@Dp zj#r{9cU^*mRTvrd$rXOx{P5U`BAV%!>r8__Brx>`J^3<(e0vMQV2oryw&>a}`Py2C zLnoPAx=KHIWR#DJPrGer7PteIl3vdqi&vT zHJ9hH)iW`0F>?JXR?-b_2EVTry(F|q?vZ&e53453Rf0krEpoTN73)lWefX-Pvq^FJ z8^lSp-S5~oVWeFviLT_-=mb8}dt`7<*Qdbyj@Q@A5l5j~Z?97rQWpSAhZR|PvKs)R zwT%0WV?K4~8$&zobe4NBi=Mi~T}+}O&gUSWo5EywSIUW3ilf8}o{JR*IQ+EYy5lQB z_wsf>Vubn!gemfSM^K9Xn%iHv^|sbf?;p)*slhkr-`am~kaVdx;bb;D)CHss1JPwO zNgs&k^9i{(HRFxi08VDRh*Z`~b#m{e3A;jrDXZ0ytUr%%Dv zz-}T#|K$e6r_Md6wea`JBd-rbQNz>ay*vd_y}>0>Xr^-Z1{sr%J3#L15BZeH=HR*$ zAGzZsK#*}TC1UnW-oUfSkoV~xfQ8CqnDViH5a0rPFz8so*`wv8o2sR zBeWxdkn&B=eWspv7fJfWW{VE`QhB>)nw+G%m3?Dzv4EH!7Kfp4KGu{2^~Z1gN~KO+ zaREnEy~tmVjH75SJI{Obk{p0Q(lqw9J+|S}Zdt!kyjx~j;e=Ed7`1wCC->B)l>|)o zfrTz_hceN=wC6!hFQ-Vf>|H7YGrUld_5R>(eQu>&G`)0<8KIPu{5f$84CF_eTXzSH zMSiHt(jZpynO3_R`xv{6kEo@S@a7R-_X-?vMy6Tw;3!0O9v4E%h`cCj1N^9clBIy5 z<)vVdr}r^> zh^S0cL7J*eOr1)nE(+QQu6U9`Oq!LH$>0?Op$G!am%p01_h=#@#1-7-` z5A{ee9XXe0?{|j`rOZS)CP&6pR-A@)UC^h^x-`SyQAa{>%-I-Zz#F53H3$u-y7;(&WUR;9U zr+_h4zQNR)k>xizuYNOMES2<^B}k*Kh)Qi!#j>%9K8H-dfge(p5=Bxc0%G8W^{?fW_Y{ZGb+$$rdY@Rh8=RR+cQ^Q>8D#J+gpO7@sMbm2=wlMRPu zt+QBvR}6Ta?c6RH^=00uS@NDJzq6p3@-pZg`BHnMnH7LiZ*%Qev}6gs*#wMd;xn+b zUDPix_at#g5r)SfZr9L~`+QUO58hg-b%=3VRjB2mQg;Voe64?qMm_x}HI<3|=m59& zNsQ6U`Um6z5|#VVVX;*kf7s$!YH zfI-y4IhjS9qUB{haRS1I2DW$4`G4J!FB+ge+wNZ0q#tyCoT3!BsQ=D@x8_D3FVm%i zD?FUyP$&UdeuoJm|1Q_2z}xP89YvygFc{5?NDGq0+}xG~v;w5y+OS)`(d19N4OLHA zdspF;ux-A+cfglpiN{%w61P6^eVQ9ix0#bG?cYNGJw#8oQ^17f7ns=0U?J|8yc}N| zUdRIRb^mDCF;jL}wv6F}0ZfX!#v91DUDpAPzfPi1Sue%TlBJtJhC9Yqq92^jDewQK zw-}}Bp*@$Lj4VaYXtKJzz3Hv(0oCV0<@lMo2co0N8|(dU88D97V|3#67G}h;O_vvGz{(`q|z1c0V#vc5yzy&-_?5$MB+Vtpj&$GlxhJCz z@kXPWRdH)70-4dCUpZsIPcOXL0P5}|++p%(1%^*`{oYF=k*`|Lp@|1Md<819F8i1g zw5NMs0ckI+(KEq{7|p`0ggZ_?aa*nMcSJPU4F1A6PR=h@>58;w_5~(Xsviy7 z%~y5?82R^F7Z?#EAwGTi$b}c{XjiC=`ck_7yS|j_pFP>%ZjZR0ruZRvN3*Q;M$w5s zu>=G(7GNKvg9tc9lQ#(3*V>5Z~mjPmya+zPj(ZvpPxJ% z&$;}g%lP}S&0slS)iT!S0Png`ipiX12s57NEx+&!`8|4`?*sLcc$DLEl-*>FAi5yW zF=cgN5e0w?kGAkN?Lv2qBawFf!ttwZ8}SbRXqp4SNqidwX;2sw?XJbfM@GA{1mwPr z>G_GApECT@SHl#1)sF4rntMj%-bqW}^Z$4>^0Wq}xaCaY!TjtaT-d$-YZ=)_XPbgvc zOeyW)if2po`@3<@X}Yg=%oL8n=XzQGi_=Z=a{Ym7e)m3ot$Df(1TlEZdta9jm)40OJ`9YijQ259v$}an}51Mx76%` zy=8f1HE3{MRkI=QD)l(VCFX&(Sk}(w$E|h`J?`XLS2bPY0H(O3+r4m$@ovo(_Qh~e zs}yA`162yOy<_quYIQYy?rF4p$frn+pMjU)a*+!QM6Fs`k5ZZS*iNxdt=4AOjw|jX zfBt4^PHG26`f|mQlR}e?8H}pVb8PF>8sONbj75U%@#1(hv!B^tIqm%ShFdicU0dmL zoS(F9b7$KBN8}bmN6Y%5+^@c97=vbcs^YZ*-CKflSXdK|mmcE99BfdS~;uP)Ze^j-aooqW{QI|)q%oy*+IL$V-`?V7pTg`Y$zVs1{$`v(4&(BjU#?{{|gU1Do z$;ZKjcm}zhk0tvA6?8XnHDC_rN)-ZyrEuph1rNK=(zUETb99?nvOx?p>>Ek)`_<9N zS*&(}gmj^0P=co86z3u%K7g>bFMqQ$-mCK6P>r3WFf=dO-~3Vo6J>QF@H4~g;OrLc zbnh!gwqxZ`&+lVB)rR}j^qe34>!iway9BGzMXHYSuGLm4El>J--Y@Pzw9WcTk`%Lw z2~%L|=Lr+EH<4&sOwA@g%z12f@Pf3zOKW>oa+%iC=CPx^X={R81Cux z&NX>0uqW_|iCg*|r3b>^ncr26obqj(uN3-9xtr%z)B(NMD71JgRvTQJxYSF3r_&;T z`Yqip6)||-?~kG^p(gD5SWbil@IC17;Fj3t%B_J{F_~=`gsN4HEmbC~j~*H8kt_Pj ze%7RjcFjGKTwwixYg;uDP9H1a*SPnkP)Q!((CyXh*C!*4=c_ywu#BmeqzUDu|0;51 zZB~w^U$16cvG?bz2*@AC%tNoiBs>r|gO5x1)6nkn2WE!E_=Ti+B1*?pS(^K=pJ8_T zxXfzc$F0Ba*Eu%1AoU86T;T2)BLif@Kek*%WPlv}7pc`~n8Ih3H+5T6aWwdElT5xL zV}F(2x9e9rX3Df5&q!V|3Ae@r6(Q}Lje3I?zI?=elI8$${1@Sm%Nz&Bsyu{)>s~$H z%>#L4{*rU={xt1)tCKQVxIj)^Mm4uUO|O?_vea?a?kqQ6-7tG-VX4y4N>^_tjjd@8 z56@HKS($>>1DTmp=aol;U+Rmzpi2U24^MEHJFSY1RyL=8(iX<|yphdZm+pXwdnyy- zw!U?9=_tA0`Yd-nLwe=2ZzOI_KN-mOsw^jcCEV9qgBeBNikpV;-1_gH2pVf2d0-ah zaHFr{>HfIMs7al}>`GO0j5kF6#MpHAV`U%vr@D<&qXN@*KJMyzs=+LLx`Le5S}(p^ z^+?(Hy8#m~ZI2gzu9347b-mONRP3Lm=&bMqEgdktWWh#(Qyz0OJ$7;JUN9)4Tqorf zm`uI2kTT?oVWIpvzyqY$ZRP3h8`h959o&C1x{|%6ZfZCyk2;z;jXzERE)eDgpO+~7! z?(&j)#zpdCT?>!vzNf7!K6_f&pC}iN0aj;KCzLx4szd?Q@fMJ1d(W$(?GE5?gn9+N zYgQ@V-L+(yGvwTFz1Dj_s-*UoJ30Yzk8%}9l_Oo3P)eF)|0k^ z9ZgF+WJV7|zhJA-VF)=dWyc#(!Bn0QF?C@$x8&0y=u|}qgLZsSd~{lj4|!{%cIEx| z5BcM&CDUoC)F*ftkFVHnor0&o9JAF?`GlbbgT&@WVsh*D%3)PKK9e-N44ovmqbmJ6 z+ai_#04<(gM|fI2d%m$U6f#wr*CmlD)v|R&{BstdKas^ zTUgjW{2_S^uQ%?#%&T&r!{idjrzaIot(?)qXN(2Zj&TW4C0*0vcQ}5P{V}G_Uw>u# zx{&zIf(!ePzlu1O`xVp3mC-i&!HJC2Yne;^oQv?%oLt2v0m-(jv(~=1J?5nF4i#@E zD)a8BjNE)WHQ7NNZmuu2jaz?^7u?Uu{LGAf-zaa)-DrC?3og$X8k+ar>c|30%bfx| z*3Xfq`kfoqO~ex|QX)av*d*0#RNRLDI-zMiu_#>-*LHi1GtRk1dJw_43?egrSEFNl_?T_633eV(Ps_NR6=w79AI5oIX3arIi$1JjiH;gd?w zSrt3~U}S;y1kzE3%uANC$>Od_fKECVnIba*0_nUeI}sr4sGR5WZO|W)>5zT?{}g>)pEIv41T)Li zbSsP8X1=v@y)QIUt`K`e`X`Lbf=J(O1?bITT-e=d32RJc|Nv_$X zQefalM^#%r)nC;T>F{y5yDksgIso6{`^Zb?FI62FA0EM;H{~{~WU#TbxY-td&p&Cd zM}P_rIw|+j)NB5dF+v#7eLrQD>=C!=uW-Cub?~>hg?)jBqFYyA9nTZXSDerRf*6#vGGADI8)FB>g$gdRan)EuXWE}u}IB(t+cLrIYR zxQK?RZr0(ny=zP!ol<*dO~3rC3DnF*@;1y=e{M_7dKzD_NvO`<(w390}7!wma z1CDR8xrkaWL?Ur73~N5f=HEf7mvz$m_?3LkO|nvL(9xX`xJz( zKdQ77SzYrS;!d1uz~j13c_$tvY}Im2H6`aMj)E6{AekxZ3xmwYQ!_9?_Q6==Vl}6y z-ivgit2+U!p3PHld?kVaC?y-#qQqtVn!US#uDVi#+SkM{_$Ug6Ge7n6UA>WNz>m1llhTN8@`97;*6ml(PelF_8h%BqRyE44DtXo z47if_lNW_d_mLWh?#%5nHb&PCx%8EFLv;UKO}PpyhZV|^jg^@@hXcKTMF(v?`)u)G z2AMWef0*4)}Px=E?4rFyluiG&>+Us}GJ;(v_j;wFYruO&a&fvl2ZRqH| z9fTw^gJq0eqRCaxTp#4wX6DNaDop0F8QG(Q_ZChZwWopUfO>3TKrL$x+A+t13(m~I zthzhZ$;{!4V7Q;Q%ds9^yFz6{=Dh!AX6*u`Z|312+AU;kzs1ve3$KcY z%Ci9t8F_5H4{n6H)>R*|h}MoS>Ye}aS^xQ9JhG#~xrRLZhIX0~jfqT5${mU|zNjQn zD{7qvteq4_`e9NV>eqH zO3MC^UfvUwyf)xE8map+#=ZgJnBc+8o;RKgv${6W9#THh_rL+ZcKA&P&x$VU6#H{&ks z^4RU#QFHMs5R1}*^Js;@Y`LmytIhv=^JA8UE~J?;h6K9Vc4|__a6XClxnEs|f~;i> zn;LwIhibPpsu*y0^1o#ilSo6RfY)k(ZC*X1b2;X=c-uXGdq`&I=IIFa8Z0F_z)zc% zpc%{&LWA$(ybSt1YIdE}pGP`=T{%V_%(K&RvX)YVRmiTBn9kg|2oTlDX5bS$PWRmn zc2ezb2#Vi^uJ188t--&IWf-LCtU4U~cEC=59m9ymVi}=_#`j<2Firao5V9fYrEO;WE z!4+ghX${kJd;7E{zn$;@~7MVFfYYF5IwB{)vM zV_ZNiyVEL!mML|&PxXy{jpmhs{)oiNLeems^h&+{!KX<3U}U|I^;8{*o`lc@ZI3{q zZ(D{(y@zGlA9$<-QC3cWqqhC+a$}>L9V@8yDBY0oOvOaMo{Z}R0s$LjSsU-tv`iD; zS-2jL!^N~z`Z-zj^dE<%x`oHNT+F1+MTVhN*ANmE_v%I>-)6lrq`E_5RYsZihP(_8 zMR`d~M1Q6-PHm+C^RsxmV`G?CGc2O+JAJ(@+$63uAeMAKuGn&#WF4M!vY5IEhLo8_jmyIuFwPW?06Gb$nnJOx|6%+5x*idlJsvLELmU-_m#u*!U3 z+3Bulf9ZUQZ+YRD*lCSp$93A(PK*QTqyq=N<9^&&&;IsCvwAkKr$CkIt6N8MamEE) z88Wv7^Lt0vc|%EF|7he8iPStVrNtdDMUIe*4oBIiTjG>{u3spd90y#3F{*9GwC&!2 zDD%g}Q~lUO>{dJ9fs>&zYdmff((~U&CoRWA%F{QLI_BhF`)c+}OocjS0BoLlb80Wm2jSVz@`H8 zIf~w1i;-lB`^5C-V9BOOcw@>BJ!}k)f0oGQIzN>%{Z3+`mVsL&3rCAJvKEN;wV;h@ zsn5IL|Jttz5O8f8_=zvg8vl{`(KzI8s;ksslQFwqRv$N|9M!>m^YP^(x*La_rFK95 zd|S`(mwES^4$+8XdsDzCuU%z1Qa=;c_H)_pvy84KOQ=THLBaP#`?F{aGZUN4jrAYd zmc24OUj?f!E^*J^n&19tv5zI)-Qw-1<~UVvigeYCznx+JE6a&=kAZH$o{;2`W{FRt zv$#=w3>TIixT2c3(V6JLp@cnA`j;an?vUnE)kbV zuIGzd5xVv(_OOcbslT75xNJ?|)hL3?U5!{v{^hNG!H9LQjtZzdong2i6GL1Kz z85HM3c^Ki=paATy9q(Qt&VA(=tk}AgrIT_TJ%_;l_ya)Vne+Xg5+%b0-5LaLSIycT ztMwXYUN)W>`2G1JN-;XkfRPyUTY-Zh*33TUKF;my+Pnf3kD5W;4e+TI@bZKPv95WHH!a?#+VA`c z|4rX3WRj7#uKp3}!YXErFRBGXz)xlC@5%FRIMo)*v)aG2DbTIqGD%E5 zs&3dwg-_w?7M7onvC%#q7&x(&M_C~S(~lKo2{9oEE;|tW8VN(Z2_X!I9v=6iu#J>kc2msU-_e8@e^w$h^g9+^wQw+A$wp_QPD zWcrYFn30Q?G4 z;Am?=E*!(yw_k=WweStH357R`7TOxwhY5bb)W^;|glC0li6DOB@PGvSU;z)(B$+Zs z;svJQ)-4~pdXmsWaA#)QD^#7saId%go!F6H&vi zioMH0A#y<*N(lGF9qAe2NNa^e{CtJbPH%yqC6Vo@F{#23|5@&~Ga2KWQ7a_{kl9K+ zKT2r|{_bD4As5&!3w)rS8!RP%$V>g`{7gIJA5C8sa`lug`7;)V4g*)!;IAwqNpHpZ z(siZ=HjtUqE#=B6JX||)#$B8&OaO-cS4b+05q#UdYD}d^Ok;A>1)fq}>)}A1aGrqt zP$2iLc*_$mk2)?zaX`M^?qOu^I$CNj0}zN{$u=bGL~FkMKxX!)wa=gk+`viZ%HT`r zH)1ElN^NaN8c#QqnV|6SUX2oV4x@1Lc(HHbi?z(RhN0P}WF+dfuU=?t1cMxDPhRL{ z2#aL!Lot?@?v9(;U8f6-CNVteAzKniV5Vpc3Oo5qdUuG~uj zMzJ#x^y})ATjjIL60NdMtVs94eaC^iQ&S!)iXmh2ElZ^|a zWJKa^H{pAKv#z3?T_hp52AT`M{B_&@>>c>QA82BORa}cr&B_l1x!|)k=8y%ce8klG z%6HUBzcmOx-n)my%^2)5dY%X!C?wfb%zH?54_rLS4__0FDx6%1O{pcu@9k;r*!#~J z%+Fy9r@%KOci*|STBD_;LF<(8FCESLv%gOkj*8xfzuTofpNd-IkHWl*nyzDwX{kui z21O_48rX3=tYV0<%X2`Gvm)oQ;38m>Wya0uz0VA?IW&OAl@=KH3o z#s7+wDxe9gn$A?$euz^s%W99LYz1-voM_}`Wjb@x6V#n==uF|;Ke|#&3*`BY&WVh# z%7=BXX^+H4A~i59kM)2YuCq(yrD{EBBE!N5b})KXyG+OPs%h_7LMNG?758`MaBhjbFMIu*bCUjWpW5<7aRhQ0Y8av6$&{6b7Vl3Wt zp&M*CD8<>)H0y`?YoUO}G?9smEWm)|dQF;Qm#Bp0yX0c(S~|t+fPa zzI)1UNZe3?wXbQ{y#RYPBVC}7#g&w zx2P2&QOb=OF$G(5pwS(Q)+TqnTZ9vRzcu)*FXk;_`Fx&=(IGxWEwS_l;wr_QJAc1^ z0{n2Q2TD*r+ox)MS~_r2@vF{R0*e^v^4ooR2Ox z&|jsRovhVbLc78UI6Y6)u-cdxVSr)(?HK-p?ELQ3$ zz{wUo=ewxS=)_{`BQu*VWaVLrrdi#9j&X#in$15Nx{~SAE7kxBVLTIs_gTT+_m;Y= z_z1BjWb@Yvt9^=FDGDUS74>Um)x17A6`(p26}FP^=>4qY)is$t^8@50AjK^p(Ozs; z;X03ZaC;*x&t9LKz_qK2J~7UKf?pHV6ths^f$K4-FW^0dzIWOoKU)0#Qb zTE7aD2k1>Frq4!$-^8E5LmX6`yUui9?k_XNI@d(C0xs;`-N8ZW&@0o=9n({}_GSEi z$q2FGKC7t-D~>zYsfa2ZyOx>ClrYc=GH?c;HtU;RV0OSRhG)EcoarpFD{*2mkIi*H z9bQh8+>>;2-8=;16J4Kvl^UdF%?P4U#g1c6>{)DPystDp^N#PIh$=Zzi7ITP@1wr| z`6kcB;bu)n)@7YU8dUNP@ZiWn9^O%CjfvN_*BUrom*Vf=DOX{DAQf@g(|+L#@J{kf z&Y2e246!?-q&V87-sWMqlQl5G#ugQrT$a+38BkJuc z$L0Tb`_y&tpwM1~B~QLntp7VSHA(IeO=lweDx=mY@fmoxAG81EbfH-rQbMgTD9RN{ zm%%OtYOX(Z8T?1X%^!6`MbcXb!jnAUL(K}%vo1@SPl^g9zwpDRbHGy#-xmqJk_pea z?XWa+j;98kp8MeB^4CV8bvg_NwmjF73)+py{nt9^c%0d}^pOA3D6oC}+?%8Z*!M)` zLv>>sWzI%etwDmaA2F%#Fioa45{t&HGBosN%M@45h!*0Oa8;7Qx5^9Df`ReQ)1!-Z ztLe&d|7aZYc+KEu?2W{FwE;hLSM7>uF+d|#$cB0I^nx{13~Q)#j=DEAlS$>2e&tR+ z3MAuK>DD8?judA(0rs86a7xJ`XAtR8E~FQgO5v*)H`l+BBay>csj*2JUr*FY*i;|M zPqVC1H$=zt+tiP2c(zk&*Fs)azqefFhAN&NOqGyQTdTJ})@LNw!v#NH;sebYVJQd5 zjoEEZhmoT_gGT8kX*pS+K88;<=^mPZT*$?3m;O*b%3G>WY#HcQse(n>$<~vlai{VU zM}+r1t~p0?&_Bmk4MDs0wO9-&1&6H0E<~d+(M4ndFY6`7FrHc%`qqY1r@Obc+$4lI zTKlfbsoIBp&St)&_;$nJ;!(MnoIP;!h>;TAPtc-yn%fZr zWr-B3M(qv4Kk_?hj?KTrD9{r-n9MDP&3)vAmLI8R*|`Lel-ENQTe&y)P&1 zwcV75ye8U9R96@&$(W=I(+KeLuIw1TV|~ubdcr`IN~@gGI{r>p6}DAXm#7J^@E2h0 zi^*>Nq?4&X0kIX^sXCZnE5;wN{3NNh1ufdUdTmKjl&6^Y57Twnx!iwG877BH$@`qF z)snGajf7h1L+e-K6uCs9#_A4(^2>5KhwYk7a?#+b*#Vi~Pqmp8vDB~^oHTboRCVZZ z^0JKfkBC3Mx1ja0%041^AhKk*If@9`sa(WMwk9{TH4nkvg`_WiU#T&?5%V?{nz053 z{?cBL#FyuF|TZ&lW(LpT?DULDK1FRBE@H|XmBb!-ID#X4qB zPPJS4Fa9W5F!t5E8IpeQh4u-%8l8&5*b%7pAI+3_<4r5rBKihJ5SNXu|6Pa6P7yD! zj{Ly(i#;4%FKm_!+HnW9fTlcKuoi^QQ1_VIcF9+npLo3_)2+%zT$7dS4SwBx~x)&cm|`Rc4fyKbID@i{|F2bb_XsY`!x zcgb47>Q%Opp6p0@9EWQwa?IPB_L~s*RTGP&jw=pue)@Ag&FaD*hHmQcr4H}~#G}sh z9BapXNY0#h;G+3K)_#n%tW$4LhaGSkO&}A9gvy_?tw+=>)(HrfTu&N!Z)pt}dU7qF ze}H^&HKRQ~@{?N*Z|!g@oc3qiIdk)Io7hTH)Npc2$a*Ruh|b%J8Ke(^5>!hp78yI} z@4nxb;44+i?J3EEs)OPtbP%>2Tnnh=OwMS`5pJiP%xGIds`FDSP)^MX!;EyYk9?NC zyq<^gzp#j$G|(EW8XpBn*k=b?=`$heh9HMGmuS;2{JvV^6{FrjdPz_gqMs@oDLq#PwV}lfP44CVJd=(zqc_J87UmY}xW={l%6W({o^}p~Dmi_~P3rhU5i1gHJ z?ttTGnJzPrk%h0FC4> z8x?TS$9X)ib!+JYcVMj%Y^3PH4usek`|RSBYlFNNu><+&06BHC(1dOW(b~zV+Lrg< z>Uo)v&&BFob*%8k$6$vU6n3x3^i`!!M0Gu%H&CT3ToPG4)yf-)S9b%mQ1Lvc48wi~ zgv;}Ea&X_AZr1MOPc5fGYwfPV&Ug}TTR1LG$0*mYu4(adMB7wOQ`GL-O=_wA{^yGx z<;3@o|TP$S-FH-0?@dE4lfn0msu5QlnqZ}pH5IVJ+&=zst2KG9Cv-GoUGz*5T zm@QIq9OwY~T=YfPNsgtduO;$Y}5U)tKHVWgbVHf600Uk8dGo zH}TrtcjpI*7KEkp|2NyYn~5D7SLrXIPpOy(u?x$N_RI3TGqDQ{@Y+jQ#{<%+&dYKc zR`vzUagnb>%n#Bf3I==Rso3=#;a}?x7c(YT^eS0suoAl>bi9(miVjqvJ$4WBxDN2z zM86DVC@@Yyb^PpT=NFOncO~gf{u(f>GrKA}oC!2L-oevURg5&SqiKSfYBqzYM`A#_=E}D)E|wg5H+%2!&5tup`_*oa_l{aEXn)*UIxV zm+7rTaqV=_0G;zRFzY(o8ceJzV75rRANOKgJ&FE1gX#1OPVhPf{HVLr_>r>DL}6^@ z?UG2#pj|{W%1BA}zRQt$blMqxOWrr{h{jSt9O^qH_DLMx#8T}ITAz!LQB)Fe=MA=* zX8G~MTY3vQSaPeF#jeOfncRBG@ozNBC@q+;ie0#d1pv8({a+6-c_GmN2BukVrme+m z_q?+zsLZ735;a2rO2;R!tTrRWUZVhpIqUZ3P>6Sth@UGlyTZ|t0d{gvWTjhRC$5Hl zM^n>oEfOhm=Ds|YromQL?6F>h>}ibDha?;LjS&d(+x^$D{cNL^{Ccvy?p(G^r!7_?u#Jlh;hybpRy3fB97CM=05l2k!MFky%t;@pCQC6GkIKSyEl*7-xx|- z6q%QS1^>}Rsao*&xB6wrN2@=BE)95fvUOscF0FCWd|CYA+I#Ex>~Cz0&^fes)N+@a zK)L9#U$<<#fnA>qv0`Gfazr~GOf2PTySgdr)!dsAo}syv2|9P|Np?6{uv|{_0Q$O- zFUa{>oV58g?m=v>u_pkHWvdTQ4|aMU=qdEpHE{s^e{0Q)5aopsu7%|@-DaJV13|`o z&d?#4f_bj zt*MFNeKpVLn&Cy;#Nu&$>JRv$ldgJhEdn>^;l_G}|J&}D^6PYN3P>gM=MYO!`4 zyGmZp>_aAjlW3c)6MN}UsH6PpjM;izurW_-U44S1hNdSitQiku1{0MsR#^}3_Y@dl z-U}q)#FH%#6AVa}5sZ)cyC8A;i^fuxdnDx9R%DRvDONC1M3wNNW2a=tcQmTdyY>7( z@%UyR$#s+6_fr}ps=s!dCjI;Ov68@c{mU5Sf~nc<;biMQ$e!8{ZysjvF7^9{GKO)? zLF(4-!5Q}{P&~adprNo1I~2_tWR7Y(PUdT#a~{IY4~4#x1+`?u_g-J$Pw>Cv0q08WBF%%#x=?1F}T3d_8|aoOveNzRgyq_Six$2O-|%qLE=v ze=SAsb7tj=@^0wQ75 z-#y1p#=Jn=B_F>Js(@@7Z|utyMzXa+y?%y*!tz&hF4Muw6~V=BC=5fv?!Kgq%a-Wf ze_zdM%vIPS6Qd8?dI0JiTJaWgcIOby8+w=i5G7Ywu2uK%q?$92*42bY@ul9L({qc+ zL9~)(#+wPFMb&`eNBrHTF*oH3J$3v2N>45F#?`LO*44jd-OCMyR(>7ZZC*q1TynpZ zbFH!=XO%Q9On+rne#}bO&e8WoxKCD4U@8ppsNYy20d;F9@MrU%_3W0Gor6#wJ|{Qw z#2WY@jJOuqNt#GBJt_*9zx|$d8y3d()_?NpV;w}2Crw^=+5YYm4bk0|6r4yX?;Ioo z5o#CH5umiU#$vXs( zT(ZG@(bGatyI69>wOHMoYn!O=W^?bO0oB)=gXHD1d1VPA!OpHB`k!FUQxG{M`FNP@ zU{4Ut0BIa+Y)wc`Ky};GR!bWHKo`ab25f{$<7Ef#gmYks90a%xNf5Qse66x6$RSIS)7}?_47tf-j6%co3Vp1bt4Vw>yP9{ zFUGgpE9!Fz3RB~ED!QHZ7b;{dr5Z9I^-bVwRS^RUF4nn&{!26{xV*3^DH z@nHGn)*)IzrEG!c_hmc!?7RHomm~p`&+cEoOFli3kC;Ze|MJXwWIChg(UVXN>-aB)a}`4C<*>KeVymtzE{z zz;(aX^_Jrg9=RS~2HeZ_2aX!ipKov0&VKI_{o2|lv!Pt^d)%msES@nh-q4IWcW1VF zr=q{@H{kYdO^31Wvj_Jp=cjKQRgTK-bro6bNkD&{1WV{iBnt{UhV@p|v$cSSeN(Y2Uc+0gVAam_(JFK6Y!Rpu_0O*d1 zeV;jqux+ML35kz}dh^dyTO$nU<{nRDD%V7h-(YYmMxnLZTSuQmPZNmGFWxMXh&~s=b3(yE zW|pN{PfxB%z49#I#qxfYyfD^=wS80!nFGp`D_=Fjhlhh!y8_nc%P!1J{kC-vjIKCW zNxi;w9Ggbn*Ke<^QS6T2^HK04!mw?^^koD$(DU zU0L6XGA^NW>a}fd{PunkXO$e_V@b2u+=T6YXgDhJx;nnoR}&L<+dLcJ^x-6PjobHu ztSGnaAD$EF4zT}p09$r7gjOr`$am{)>RFtNu+vu%q|ib9+XOUurp}}P2weiQjl{nm zlxI(r4%emHOrzHJallAYUEtqpt`92MwE=Y?T4o*=+1*Y%CLD%vkca%urFj1Gsrd9W zoCNa#wh$FhDd3X)jKar5!;eydGq~NEns}ajq~pw`U||%GgALQH1IOe2@_0j2io5dU zr6i%C?X4rd`r7b;4i-B7G3RCbjD#lJ>B%3gHnsUusrt+=qw=N_$=P&fSYeQq<+zIU znz!=dKul(6I!u3PkthX;FYU3^mF)$02uB}H><1sJhN|yZZ?2lww0yA`$&W~pJ#_hX z*ejmWnaZ=^`w`eVth4)!=i}P#SFa|&tJ+qQjGZ7e4l9}?8}lK9vyJc8cttJs z*{fKn4g2!G=7NdPifYP)ed0^R^$*$sR`BnL*Cv3OxC=h~8;Jj9tD;be!|9dtKJxt_ zh09tLg6E2Y^>^@TPn&yqK zB!3n`UqVy|*Sa6lvBZ(U-I5AH&OZt}Mb00BEH>DHoL8KnbYnmOK^$BU3tLgAbcwWT zMyUkjx$1&R_9t}dOK3h8c)xT)HTM1oo!Os_YJIEGv3XAF%zEb|CDsb1J7Mx2YzT?- zh$TBA7|2BHeo1$??$23Vlrwuafg4$W)nAZiIdL<4fCLOYp)!?);(m0gGlNTA zM2sj;3Ts3@@w==DY?GL4(3-n_uN3NYYQ2cfx3;;{CAPS<%ym_GsY}d|2p}()J?%gF zv&cfeerBnG_*MF=@sEb7;Kc(Jr=^S0qIcik8m>$#xn`%21g>QBXXUvS<{In2vD@C2 zWqeH&Z^2nb@R?cJw}yo$O7K^g(mu4 z(HZ%BCAvH^pfpxlAGNJOB7W{@aT2q}wGoCs7*&j(zM`9JF17*9f(yNx#)LbtKYM*F z51_B($;_7}H{0Y-)Kv*bOe6|DVz2CiOJqH4(rpJOHNz;A1W26&|t6lu|m>)aLk18I5*b zXM*1aD26pGd@Rz@4Bml^^GjMSbHLY?h!lNo*Te6Vx?$&CuPzIi_aket0H$%z|MIM) z#`X27#gPvAU@tV($oHG@Z78w6Rp_1k2zJ0?x;a2idxyLQT;xQv_Tp$IUqt_0mM}2M zTipB~haJF?t&VxgDGS#-BnLwt(2QJ|3gh6QIr48?K`HE#zOQvvT;WwpTiL@1ZT$6K z1ewfPS)irn*x3gvX?Oo2DP29@K*&+9l7{OYUi))jaOGC(U zttUt0^o7cg2fr{!!@t*l1OgNhTorBeG0sneK}eob+f}0`+HKuZRQjH+ZJ(1?vfSovXyeDgbjArDny zbl~v_*2*KrlW0CeajX~0O1U}X;fEeFEpY;`wS?TK7CaK$G@%S<3`C6A3vK}4wG@YK zQL-okMUxfG<(%1&!NgTQo<92Sn>k(%Wr_%Q80$&Nxuw!@Y3!k`Erz|Ub69GkX`6G@dfs)$o$skZ ze{VS8p9Lq1m+5wK9pT9;h2W`-r4qxoTf0riZkR>-M((%%3f$!cmk@(&8r-){aSaCs zTh;5CfsdHea?#`9UkiUI?pxzgpNXzQdg<4zV;gOs-RfVgfzuq$=u98oEvvW~dVhrF zp8KaM{1g3q#<`OdWB1dNpAT6oPLBo?MKs6Uo1ex6SIW9Ju?ktzvrhF5SpUFlAT?RV zHInf?8mlDFLfv~!jBQiV<oZdeqC|lzG>0 z1SB$EO%>8<78Ba&CZw?vhJ6{SPR>>xfU2zM0&~;k+2M?ET04!rTP)(MsBy4ExO0k9 zSbOcEm$R8)lDk5Sb?RJ zk=5ocYuUqa_Dd(~LR@2r&pFl0Ye-=!hP$%6SRq-q+wtq2osF#BK}k~TtV-WaZjt6D z#9=B^G<3Uz3<9i{doZ=b)nStFT2OD97HZ$W?h=3 zxMKa+B-MSCLp;mW`LE{)J#X5*OGT{V;JTh$b_1QlPT#|8UzcVi?*_)iFzo@RaPOkp zL}u6LmyYXAaNI0gZ}nvSCcXo7zRc(5?xjt3L5T8#;LHqfZDzG91Ib!7r5KDU7aM&| zozIr@))v0WL*;Gsq)SnFSQmYI>>)qlrOI{eu6L$}_EnFTA729pR4yS#czZwR05aUy z1lG&V@(6dr#6GYf-t)#csGw7v-h_rr^x~0;3dy!(YN&vJAevE80iIn*WH)7BRNFp# zy55XCgQdNS{~;)kJ~v_l;sPVF1<%|z3k!`2dGWr1A#4lwCj%+^O^=Hi+S==X16dxY zohXNe4PY5o47N;1A|$B2C&cnX9D!a0Rfy7Z-u`9or}J7UatG`|A#U@m&g8o7MUd>X zEKNVOyf6!55f=k@id;;lj(!C1()LHGQPGIE9Fz#?Aou*#%O20me0eHo6vbi7Y>Ts! zW>JtEb50dn)=(lO`~LHeZ4w6b!bIU+AQZ8Wr4x#tl~|8Nr?uJ<%Q5%5LGY8$R`RkFla@f#>N* zG>;eP{wog(sk+n+yBf>{-nZ7ZU|(yArM{@*q`1M33gMd><$1{aWc9mr$Dn} z=5V^m(fASjZFOpTptw(qw$Bo)$OWPxE=*A`{QIjVV0U#m=OzhgQ6IF#kdGYBW*ad-ffOrfHYq2 z``FMQI61z0B%`kM2hvl3j2JJI-)4JGD)$ zanbX_RW&$7#yN|iXP>U3gdmABRZa`C!kR2EjEqTmsfvDWAjD%+eE|QTd@btLI&Rd6 zYlQ&Q7*K;WU&+lraNW#*z5Lj=AmNU4f>NV3ik#1U^e31$jCWaM*|&P0mi;s6-q*dY z=eJyW-0I`mRdllT!ot;{h@-aOa6I|ArRVLt+Q~@ckxb);TTuz>Cx1JEMNFW(J3Go5 zU(@Q8WFHRRD(&(&9fWpG8>#WO(FA^zyX&n&BuJ1G7O#XLUe*~5Pi3x2bCjQDh} zXV1f`bPX9NOV67G%&XM!tqTZyKi|i$TJ#YQySS9cIHl@PlvY<$jO5YM_Ucwhq8`6x z%Ey3bO%RJ}W=ga>gO^oh=PpXH!6Z= zc!)uCtbUXggl2`G4m+s$dGz_ba)5&q-IRd(BBFJ>o^TOkB!G2 z$uP&|Ft#o}>Q&<}*ca|U#wAohIL1-xS5GbED!!Ikx$|&wj z`AEx#4L%FoQ~E_+A|yM7c$0F=#PiN}uw#(Nk6tSQAeqyA-Al5{ySiJ#ks;#&v&q5% zP_p_kC)ez>4ev67+%y`tvPzdNzJ6X+aAP(a!EBo#s*yZA>rBF?{bWj=-d4`*8F&El zowA91i4%uYlxTN#TAW((&P^ZW+TgY0z#g}<+cRBGALS?`2Xs>fg>BRxu}oFdNLnIH z8YQZ}mNioKW}Bx%MEc?1>@RvI9`185Hzpz(O?$;7&cg;(pmjQVCfDUS-AI^G$QMa8 zDKkxeb@(W+V~^+&OQ9Bqk0Jn%;(Kc|xz3XlZ57w~n0ZRleg8t{WCZj2HpW|@NoU07 zP832^M_vM{6UgYMIwTm@BWi&P8meef6HVsD3dJc+R3d;PGo~vGZ9IB0CIOwJVKHVX z2}YlZou4ZFMO6X(-L7Q!-{t||VRY*{&9a^~!6K|M>Rzz=e{$WdLB@qN>;4-PDrda^ zS%){$+Nl}Nm3vGyUvzyncAbui_KJ7hE6Pk%ybUB%fwt-HS^imM z%DbMp--HUxmtRwtSYwDMTBZlWcMs@>&cE9HkCdKn{c-!up8;Oc5DmdKL#whIn86}y zKw~i5R(|`(Vc^_|H;B{_+PD(tsd~{}kUyGr*vbJq@-ho84Q=ZpOXZgQb8`!IK&{n< zF}1f2fnLlIRM||Hscv{|?W2ad6SxbPDV`Igf*fF`&Q5%koM#X5_>5J%{WO<3^(BN( zw8v3r(w<+}JT^kNd=rw{K;aNJI~Rfq<1u?$<34oPv3+%;9jJYtzr(D*m{4CR6-dg- zMrG|1nAY&wDAyaw->v+o!q<(Jh$!8dWyTIs#aU;?WFC5y$+ax?>tM`J+AxZI6Y^V- zR+px`^yj;VpL)s722dd8V3$y%2`p(#+u_gL20mnVv+cHV)~0mqm3Y!136-7K?oa_U zqDVDP6Gc4EnqCuMo|9jQUzkwpnd#z}l^SFiD?GrTWIk;=)0dQg|0jj3cu={VvOiM6 zK-R;<0Bfdl2+#KF(??194;6jUF@>T@Q94K<81&_e0zEN)L;9?i z)y-J3UIQw@Lsgw}U_MkR97tV-ere}oG7iQr=>8Ow#t~=Ithnk64X>o9;>tCVQ1vyt ztu5u4YZ4SXtN1NsuNe`YRjwzBi+zZkZUC2@7Sf4tJN*b+F+sqEuj{+DTu-^{%MW${N7Sq@^cBdbh|7NBS@;iet12_ZK88N`C2+dyk6gd zu#r0l@BqLGR~h3exg>jdbA=dY4ggp2s2Ia0+ZCR^X;r!jnyL9|bn zQ^=~fe~pJ*k#m%u*4T(^f%e*LDlgRryI)R8)c=V*tkX>0QaKyB95&&3{#)p1vH>EY zCc*RjAG}S0I?~J=BIVQjgH0xHoSclg^H$d@{Z`x$$Q&1TEOI``Ck^d7`@nY)FrCO3 zHB8^>n8W2RS6d_MHPIgl9~=6ZskGsS8KG1gQ_sGYuhh>wMj|D`gfjax_MX$JGc`U# z1`ksYEQZn!;a4+2jMQUoS4wrMUXEk2sqb$q{{f_j0q@wsjWf9Tg?x>a%uw|3-z(Ei z8@0Y|`}347v3D{t3s!(IR*LOqkbRnUVQDLsSu(qvpg?*Org;FxZXot8yY}6EtO7E9 zQ(K(B>7^G>Rq2c}f<3?1R+d`IIei5zR z;NdUGyw&x0pug)hBe(h-7Lw@E_iaK&BWW>4ys$syz}$zM2hufDu4PRnx9U1lne?&h zBriY~aR)12F-=fbXA8$=S=2>}uOFIwg9_1Ol}RC2dUDNm61P~bD-c?O*s z@W_j+h_xRJ|BucIo7+e3xfijmI3JsuF9`~`&P*}ht-9I%D&X7FJJL)?)$i(NM6h&~ zEHTgsng ze|WE)uyJc-HnP+QRgyjf^S8hDO7qr zZs|v*x>E`t7(VZroo5tJXjO0ust+nlE|NfVvVynHnqKXhAIDM+f90ZEH!QVUsh|)} zV0J^`PIwD-tQw(gdJP^~PtYWvp{`h{>h^)K{0pNSt|&h8a*X*mQSS-@l}_kTwu8yII^jae13&_@Y-c z=zzihrra&v{-Jo`>MQ_#ZJwKI9L*d>yqF|ouQweny$k947{3}%D&E?;cHR|k)* z^1$$CGGdK(tkF04sWFM`#@Y;cQYUbsON|jYazX+Ly$u_y6JL^y60f;X$Yhbvib&j| zhB<~~gAwOz;sFB;^WyH(tb2zg47C}X3wUwyqw*>9iY;_2i&ok&^%W0*t^cv>&PKJZ zD09DKI7Y)N8{J#{z6brAbwYP4#1&WeTwK5ElHq312F*y|ZwugV(R?SnEv;J~LnYV} z^lS!Fi}TLf)>k$>iho^|Q<%G_P0Wf8uYM8VMB-tEOcncsrXb&N5u_2v5u;Sd^g+(+ zGTMc*Z#=MTol_!o1<1;h@a;KdM>LQ4|?aa1s+YC5t7KAH?-8mqi+1nd5 zlJMqr@g8`6kE=X{t=wah`6K$n!#BOr^Fc=% zl~!;VAPm}>E;SL}E9SWwKmiBkJNMGI(Ku@KApYTfT@!MdN+xLSMS(atB@?4+)VNnV zn;t0O)Hg{plme|EWPA)Q6lN7_nem(p`CnDs`oc!24fan#a_auOuYzy8! ziPeRKH>dHuSY4f|KI2*l!|)pPe{b9H3r_}eeCoGyf75Tqxc0R$){&J%dRXG)uMk<2 z=Tg4J@7V1Xh|Sy8uId|#_hC(juAzEr2f&VTMG6Er7L^KHH|qKki9zScfHUJr8{=%A z1=}(~Pqm|oaG|iibMXPbXmNeoD+sRO8GAaO?A=N9Z&kR;tYmL4zrCYs`$g`SZIR%G ztL%s2z#w(gVJ$$X@Dd6(2R6uTt_A4x`th-h?m*?JPF1i+$s0TACFX^i6{5)r781i1ltvhG(fw@;}YqO=CW1Aue@A+1XL4+~vj;|wa-cu8OeJAS3$ zZ2F-p7H7&pjJ7N9JGReH1~a;Ce{b(;k!^0_1+^?qqbu`0_|MtCoeJj{#6)c5?0OM_ ze*dajXlvJgiS{#p;LADoGa8gumAo#rK~-NQAVykUGvY0#e1woZx`9+$MBkO5{9+K4 zA5sseeM2npf|ENt8%8cvAfsgAr+ylKHbWfjb<00UB+ihimihK=(nH8ZL$~TlT%kcf z^p^f-So_}=3c9m}~+ z7L-@@R<|cqCZY01qSpi^j#i$(=OmSLdvxduzogVE;MIitWfq~S8x^D(8X>IDh~!SpP-shlBkE`cO@DdP`N1&G{Cq7 zDPRxqo7;o9P)o%RrTVt7Z2=71iHF9M&!EjLC9q2(ds`eun6Pk0BY5@n!?BwYNxb82 zCo|e#8EXXcE6G^_b!eIHv|ceN>bZpXr3ckgWGyGWm#qKf6n%^!TLXedd+Non#v!b? z$_eq#*L^QDuMmBOd~102|omzzt2@HzafP^yNVBSuB&a!cM+2v}Jo|b|<3t zG#pTHykX~~+dropm60m68%w>tc}Jl$qnhk6G->(aYJKuFkn>*|LwISXRclni9kBGf za~c%dM73L5Wn4={FNHgOMp;!cZX8$;S!P|seq*zLKJ!slNB~0l2$*% zcrN}VW1Dj#TVJqZ9v~xk2=N&qx3$}bE5@2H0dcdVXGVCjlI}#n-C5`XX>*i-@n=aV5FUhEBu2OX&VOOnJ6i%YfyE60^yOmFWI>Zm&9H78w^mKW4xz~xh4Pb?)+^3`VG*>c z2+7uk$+fZ@OHSOWZ#`EKD15=hgO~)QBPY_$LeW|w0(ZE5$Y@y>&!QgHC|>?+PQxFW zVE@K^mtqS%7&x8Jv7B+?wJtwW02*i%nzm0}9d2ZvhbcD396uAg(7Cs>T=s}t4`O#< zcHalAMg%zNr=Qc!yJCr06t=&sKCCN8hODcjl1F4z={U{*0w{zu2G551^Kdh4Yn-pl z&u93f`7ykUz|l$c+b;m*lc`!0&qC0~67-Qchx-asdl8tTVBz^8Q1jaN+zOY<{U)nvSd=@~9g+gP z=Z{hS&sHLAySS0QiyJ^djwZAf3daF83t|Jiv}SFPxdJG(r(7Bj=CEbDP{6OuqZh+D zzB=TgF8+iEa^qyi3q)Q5 zAKE^5h|D@LcXsw?S|uPX&*|_aeREH4>t+%M5F?NqU9mNhM!wzXNJQME5*?X5`fS zj5A>>huN+Bvr_GFREYI6GIcbSd{8HkSzPd$`YrXz*(EsZQiBXRV9) zLtW$WY(OImp(>9#pqqb?JJ+;F+CQo82NosVG|EpQQF3-jXqqW+;_9lA78RfbT&A!X z$^-^60^i*&yfiiYo;H)gRrdIX`{L#__|LTuE3>Z(T)L3^knLKdbPkVfUC~K#43_b ztwNLfft0#BT8CxQH=r6Jz7T^R==cNc-cqNb5OYOosm(t|HZRx66KUqhj=&{S7kvPJ zkZ%y^A^pdZHCksJo-^$s&BdQ8ql}6Eu5HF##=Es^xAu7SVYS#mwzy|soA@{Y2;Rl_ zuKZ{9Xjaz^k-*Qm$ZG=Kx&I|yw?_6A&u{IUwaz{IjBb_0W!hf_c6f3UJ~uDjBG2nK z_+Ug*@ewoZ^UMqyWaFAVj?KiO`k`S!N-6p0;?6X*#*rHrW#>X2UxoIjb7E0FP;YVT zUP2$yxGhR0HR|YujWf$bv4KR6x9-=-kmir}@!68bv?5t{qlp63tE+~bfnI_9F;*(3 zvI4!r;o3W$Q9|qG;Lly>Zd2L`Y33O2+ARG4&L=HF+fm8TzcZN?Uh7O`VE<^6ZL~OM zZx8%nlpbXQnW!dMWP2h5HskjTFzX+ED*y@9UL@=P3W4{8DOmr$BCS|Ltf9OP8F2}B zFb?i0k?>QB*roCd#=cd|4^ZFOu&#CX7W_BZVOsk)(ZD$-k&)bX<%<=YGw~NdmU68Q zS0(vZ=Ed7}=bRM6jQA1TSqGz$d>n$U=xfj>7i{Im(?_>T-39;E-~;LGEa$0+~!qAf91joR`yk0*|dt;H61hC1f86G8|KkW!%BMKOU0)-X}bJMewpKGHXlb zTl|GUIAmN!2y0@O2;ggtrx`j^6~2wECUmT#J_Au-5BC^}haa|wPIDBA-fBNOsWeuV z)Q!`_x^Q%=bvtIwdZdFN$Y8 zK(7FHV;6XAfzVkQZ0e_?>@&rr1ƍtWJg75$nEdCu3q(l(;0#e8nP5g*r9w*!ju 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 diff --git a/video/imz-40.jpg b/video/imz-40.jpg deleted file mode 100644 index ac0287835c3eaeb3827adad00c4ff005c5cd4241..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126141 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 Date: Tue, 20 Dec 2016 17:07:51 +0000 Subject: [PATCH 62/64] Update installs new test cards --- update.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/update.sh b/update.sh index 15f271b..03d21c1 100755 --- a/update.sh +++ b/update.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Updated by davecrump 20161219 +# Updated by davecrump 20161220 # Modified to overwrite ~/rpidatv/scripts and # ~/rpidatv/src, then compile @@ -25,7 +25,7 @@ unzip -o master.zip # cp -f -r rpidatv-master/doc rpidatv cp -f -r rpidatv-master/scripts rpidatv cp -f -r rpidatv-master/src rpidatv -# cp -f -r rpidatv-master/video rpidatv +cp -f -r rpidatv-master/video rpidatv rm master.zip rm -rf rpidatv-master From 5f09ee1f90ef174eaeda18dd4f905051dfe45ea5 Mon Sep 17 00:00:00 2001 From: Dave Crump Date: Tue, 20 Dec 2016 17:08:33 +0000 Subject: [PATCH 63/64] New test cards --- scripts/latest_version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/latest_version.txt b/scripts/latest_version.txt index 33f8641..ba71990 100644 --- a/scripts/latest_version.txt +++ b/scripts/latest_version.txt @@ -1 +1 @@ -201612191 +201612201 From 5ab06eba95f0cfff2ca32a75a09227a2caa3dac7 Mon Sep 17 00:00:00 2001 From: davecrump Date: Tue, 20 Dec 2016 18:19:22 +0000 Subject: [PATCH 64/64] Add analog to gui --- src/gui/rpidatvtouch.c | 48 +++++++++++++++++++++++------------------- 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/src/gui/rpidatvtouch.c b/src/gui/rpidatvtouch.c index 9d89701..a13382d 100644 --- a/src/gui/rpidatvtouch.c +++ b/src/gui/rpidatvtouch.c @@ -75,9 +75,9 @@ char freqtxt[255]; // Values to be stored in and read from rpidatvconfig.txt: -int TabSR[5]= {250,333,500,1000,2000}; +int TabSR[5]= {125,250,333,1000,2000}; int TabFec[5]={1,2,3,5,7}; -char TabModeInput[5][255]={"CAMMPEG-2","CAMH264","PATERNAUDIO","FILETS","CARRIER"}; +char TabModeInput[5][255]={"CAMMPEG-2","CAMH264","PATERNAUDIO","ANALOGCAM","CARRIER"}; char TabFreq[5][255]={"71","146.5","437","1249","1255"}; int Inversed=0;//Display is inversed (Waveshare=1) @@ -1017,21 +1017,21 @@ int main(int argc, char **argv) { button=AddButton(0*wbuttonsize+20,0+hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR 250",&Col); + AddButtonStatus(button,"SR 125",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR 250",&Col); + AddButtonStatus(button,"SR 125",&Col); button=AddButton(1*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR 333",&Col); + AddButtonStatus(button,"SR 250",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR 333",&Col); + AddButtonStatus(button,"SR 250",&Col); button=AddButton(2*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"SR 500",&Col); + AddButtonStatus(button,"SR 333",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"SR 500",&Col); + AddButtonStatus(button,"SR 333",&Col); button=AddButton(3*wbuttonsize+20,hbuttonsize*1+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; @@ -1103,9 +1103,9 @@ int main(int argc, char **argv) { button=AddButton(3*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; - AddButtonStatus(button,"TS File",&Col); + AddButtonStatus(button,"Analog",&Col); Col.r=0;Col.g=128;Col.b=0; - AddButtonStatus(button,"TSFile",&Col); + AddButtonStatus(button,"Analog",&Col); button=AddButton(4*wbuttonsize+20,hbuttonsize*3+20,wbuttonsize*0.9,hbuttonsize*0.9); Col.r=0;Col.g=0;Col.b=128; @@ -1167,9 +1167,9 @@ int main(int argc, char **argv) { printf("Value=%s %s\n",Value,"SR"); switch(SR) { - case 250:SelectSR(5);break; - case 333:SelectSR(6);break; - case 500:SelectSR(7);break; + case 125:SelectSR(5);break; + case 250:SelectSR(6);break; + case 333:SelectSR(7);break; case 1000:SelectSR(8);break; case 2000:SelectSR(9);break; } @@ -1195,27 +1195,31 @@ int main(int argc, char **argv) { strcpy(Param,"modeinput"); GetConfigParam(PATH_CONFIG,Param,Value); strcpy(ModeInput,Value); - printf("Value=%s %s\n",Value,"Input Mode"); // + printf("Value=%s %s\n",Value,"Input Mode"); + + if(strcmp(Value,"CAMMPEG-2")==0) + { + SelectSource(15,1); + } if(strcmp(Value,"CAMH264")==0) { - SelectSource(16,1); - } - if(strcmp(Value,"CAMMPEG-2")==0) - { - SelectSource(15,1); + SelectSource(16,1); } if(strcmp(Value,"PATERNAUDIO")==0) { - SelectSource(17,1); + SelectSource(17,1); } + if(strcmp(Value,"ANALOGCAM")==0) + { + SelectSource(18,1); + } if(strcmp(Value,"CARRIER")==0) { - SelectSource(18,1); + SelectSource(19,1); } UpdateWindow(); - printf("Update Window\n"); // RESIZE JPEG TO BE DONE