Desde 2014 a Prefeitura de São Paulo disponibiliza os contratos integrais com empresas, convênios com organizações, locação de imóveis, entre outros tipos no site :
O problema é que navegando pelo sistema facilmente dá para notar o quão lento é realizar cada ação neste site como simplesmente mudar de página. Além disso não é possível buscar os contratos por um período, ver informações sobre os tipos de arquivos ou uma discriminação mais detalhada sobre o que se refere o contrato sem necessitar ter que ler o contrato inteiro.
Seria muito interessante por exemplo se fosse possível ter associado a cada contrato dados como tipo do objeto, quantidade, se fosse uma locação, construção ou manutenção de área pública, endereço e coordenadas geográficas para serem utilizadas em sistemas como o OpenStreeMaps.
Como não possuímos isso, achei que seria interessantes baixar todos os contratos para depois pensar em métodos para extrair informações relevantes deles. Quem sabe iniciar um projeto de crowdsourcing usando PyBossa, ou tentar algumas técnicas de extração automática de informações dos documentos.
Para baixar os contratos pensei em dois possíveis caminhos:
Criar um programa que utilize a biblioteca Selenium que permite automatizer um webbrowser, fazendo com que tal programa fosse navegando pelo site da prefeitura e clicando em todos os links para baixar os contrato.
Criar um programa que não utilizasse um webbrowser mas realizasse as requisições diretamente para o site da prefeitura.
Optei pela segunda opção, mas confesso que talvez a opção 1 teria sido mais simples por alguns probleminhas que surgiram no meio do caminho.
Mas vamos lá, uma breve descrição de como os dados foram baixados.
A primeira coisa a ser feita foi utilizar o Firefox Developer Tools para analisar como as requisições estavam sendo feitas para iniciar o download de um contrato. Infelizmente, cada contrato não possui um URL único, pois neste caso bastaria obter essa lista de URL's para baixar usando um programa como curl ou wget. Pra piorar, as requisições de download eram links que executavam um código em Javscript, links como:
javascript:__doPostBack('ctl00$ContentPlaceHolder1$grdContratos$ctl02$lnkIntegra','')
A informação do número do contrato encontra-se no número que segue o segundo 'ctl' no texto acima. Neste exemplo, o contrato referenciado é o 'ctl02', que é sempre o primeiro contrato numa das páginas de contratos da prefeitura.
Utilizei a ferramenta Network do Developer Tools do Firefox para analisar as requisições HTTP realizadas ao pedir o download de um contrato. Com isso descobri que o pedido de download era realizado ao endereço:
http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx
Mas para entender como a informação de qual contrato está sendo pedido ao servidor, analisei os dados em Params dessa requisição ainda dentro da ferramenta Network.
Uma outra funcionalidade fantástica dessa ferramenta é que é clicando com o botão da direita sobre a requisição é possível copiar um comando curl que faria a requisição idêntica a como é feito pelo navegador. Copiei e colei a requisição dentro desse ipython notebook:
!curl 'http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx' \
-H 'Host: transparenciasp.prefeitura.sp.gov.br' \
-H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Accept-Language: en-US,en;q=0.5' \
--compressed \
-H 'Referer: http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx' \
-H 'Cookie: _ga=GA1.3.1442686364.1424207442; __utma=198345582.1442686364.1424207442.1431224620.1431224620.1; __utmz=198345582.1431224620.1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not%20provided); ASP.NET_SessionId=2d40gyutm4cuagi4l5azlnef; __utmc=198345582' \
-H 'Connection: keep-alive' \
--data '__EVENTTARGET=ctl00%24ContentPlaceHolder1%24grdContratos%24ctl02%24lnkIntegra&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=YqtsRsznyhOBgLJ37A8WP3JiAOnZmE1CRrXOWB6eahF8neX167yWwITcbldPPI3h1rAKgTmgMwByPhGOzMX2azH%2BEtwWvIBMSkpqiNPNnQ9bYCB2RUWpPsYcGCDBvegBUEuILYWN%2B7rpAGTceAQVz9U0PZEfO0R2trT9xCZGpVhRo5Z8%2BQoQtSbD5iRz3EVh1SV8%2FO%2Br9iQuGO%2FckC9GNfQvyL0AsROtcGtfUPUW0C0WZJ9gkgC8wiGyAROftj1EwyU06QFm2w9e4xtad2cdpEOqBzLbdO%2FIG5jwQjLAamRNIB2gLREGyVzxJUvhsU2UPVhzDdKBbrRyAlm2eaVNA7kwOHSmLSv8xkNBEc5SHJx8ZjIKLMs0AJSrJ7hxof7JWrdyCC1HzKv4XJOSe7%2F%2FGIhRii63LVm7hTMOvL4dv5sBMlIjDI3BGjqtfOQ54McQ2cNi%2FTFOHqjQSwnz79S%2FsC3XKPp3bP5ojDTxlUqSif1Ik68lRsHeWwRIgIWoVg8d1GW%2F%2B%2FQ%2BQk3vNBGWIey6MNovYaj%2BikbaqyfwmIdY9IdqVOixK8VHpJG2YcFIRHneEsamydI13OUnlsBMaricHNAbTtzj%2FXZocg5IB5vd0LauUmq%2BoKU8TtvAOORYkyOnUREogAlosr2MemIoG4K32cqlyMN7YbLFuLu9VTRLu6G1BjodGxdBWcWoQsCOYAvL%2F90KHmxmmaQNWE0aydvhtZltVn81%2FSBHe7qd%2FYceBFsII6YQXx%2BBT35wMNJtaBnqXbCkrQZfQLvEFrZu%2B6vIY7Q59GvbR2shj853BON3Jz8Hd4mW6dd0y88xR8FNquolmFYIUIOGNkPCAhUzfmpZM3nhJP71dKtlGSdw%2BUrkqHM4dGwj741gPRvXgY2tefqYxCihPM3QKuateq2Cc%2FlIQ6vn0MpctxMlYAl9J5zspkXB0Q41xU87wnz37s7Cqv3Fht3QfKjDYNor%2BjfZXyobsgZw60yhchAX1WxTMNzTqDWkPX%2B7ISSp5jsr2Gwk3LyGpVxTpvp%2Bh50Di1lmUkcC4IHR9LrE5rX59YEzr9hVGcjDrU4va5GuhRNxj6H%2B9mcgM2fMhRvJojzaoQHhz1JyCdhkDhZI3cR4KTF3TGorqmCVPONXtyLsqkXvgtHqHUDMrRx%2BlyfX6MLOkerG5fNF4QsGYrRETwuSAxWwK%2BnZCDHyfg6Eb8CiIyWFF91swoamLgIErlod8nKIsnD1bdTnD2418T36fTWetgINIWb1JUYhZEsK%2FkwHcDDKg%2Fa9dHFH1mYr0PH0JQeWQqoffRvmFKzOMb%2BXkmeK%2BgmalWWovrbJBqOkIj7CFbsd3PPuGrmwBqunOq1lW8rgjPO0MJ%2Fekxq4SywsdYUybUAHfuu9VQI7zT%2FALglkoKkzB6OVSy%2BgONj2Z35CAEahvXswGpL5hJ0o%2BeMshSSuwgUZ8bxOg%2FfqqzbgeTQvBEgIAiLb7LuBUkIA3CfsSTrEqblrZhHCdpDcr5OmRlUNv%2BeJ3MF1jaLts6qypSbQAc4ySfhEDZVqV1PpGw6RAtvKOg51fNkLSylPYcJdx6Y2uV%2B48cmI5d0wcmfCmNlQ2mW1Fi8Y7ziJuN2nZz9ExbLXorHX0DoYDuAkSk5nUtAJrYzzLJNbrDTXzkQNVe03dsDd2mGsaqFB7cniaOdTk%2BOkX4Lb9HpHbQkgF7vsN36WMCnItC0oCMNZBflv0KuoohaBS%2Fu95SgqQ5L2b883by9umOCH4m1l2D3%2FLS2CwkDMSlhYatR3J9kCTJ7PVO4b9tf0Wzs9TldI00vUxOGlTRm9JDA0M9ZwLaM%2FW%2FGjlC%2FWpuEYtXdIqA%2FYAjdgUBP8uHWMMrZ6ejTJxpu%2FKK4vbZdDdErXPzCUL9PI3M2WTRM00j8yEWeODdL90zlXXSEx49VspTeMQJlBHx0lAkJ%2FtB4rYUHBQ5izgoFVhTwUTn4xTwQW4YTehk%2FaWbTEBv%2B0vhxozugONu53W94hnT9NoQL3ylwDiKfb1n7jWKx2FKiKh%2BZEpY6gCacg5TUTOWFWzKU2ylp46h2bEQsR5f1Mpu4yCvMAj1IRlg2lnnTJxGsV3cRati4doCUerD22cjZt09QHiXpdRqyrUNOEDBo0gQOrmtwnrPmf55NAvw6jHonBq0yCHXKqLDOXk2jJFuiNqKmFWZVtiKE4mM%2B%2Fm%2BRy6xqF8nzcT%2Fz9WRkPxKH3UnNNnFO%2BuwrFhaVShFAdjpD%2FLa3grOBYYtC0tF9vIHjTcdliy%2BXMxZkiBLxfBOiabMQJ4eGzr11pedMZPl48FoTl4E%2BHXXxvOXldVi32W4ZLGc2Bu62DxF38ZRJlbNmbkfUOUcYtKoesVAr24W2oq4TUTi5yalN9N4I9XHFddiiFJEE9LGoVlekaoI8m22ueranQP7UqtUYIa0bSU5hET4Xe07S6gBEqqCYz25Jwa2Pyco%2FpkzDqQ9KloGgSoMW7KLYK66SzAWR8%2FnG3edo0sJjx8gzY6ap6DhDMkHJHSkb7R2Wiu%2FPwq5n1eAxq%2FUPE4Auii9FOmxeurBeNwvcxiMhCM332viQprmfB%2B3E639%2F%2FSiX89jqCMQdSzHYJ5iZrzrm%2F9s%2BXDWJ9nHhFaDg%2FQcZFpse7OE3K9uKh%2FtoqjgFVDRVe8QGlluTqDFojk2BCDKcphqkVga7AGx0PH4NwbKEcZo1dwxXUGh3b0JPaDS7k1859EOmG4MDiDly08jwj38z0VtdqLnZKZTLENmY0T6oI3NiNm7ub67LL6qGU4bfAciS7eA57BriooRu7HuM%2FjaC%2BhG39APeNaJgb%2BfsiiCVZy4J5ZNseRIwf2KJFjBhFcJMZpIhWkGBLEifpza8luq9AizMeY5w4UZmxQFMuL9qJ9i8ziIaNDdkmrS8bEO7KfZsuFUu15vT%2FIJZINYBIhJi%2FYpuBytkaWWSd1nLiskkEdGDqLXKCTxy1IGOmfwFsgubDW9yS8tpgJdMotLE%2BfnZDvFO8QU%2Fl2LVT4TluKtu4sAg4W58GZQN5qjNkdNey7CmKFpHaxXGnzAKzoY3CKjdYMh3d6bWZvMX2Q%2BNvAd5qTv4%2BU1TYF956qWKTCnb0LfYmWinuVNy2jIs79C54OIR01akwYuH6fSjDTZxCaZh%2FZiVE2hTVfomlqCYOQuypwe4sP2zOExinRtmvJ%2FKTDUQFr8vnBKitu6ZDp06mae6PARW5EeplyF68ub7fc5tzdL4ULnnL%2FF%2FXinMnseLPGFXN1l3Ry3bojP7F5zvBIEB%2F%2FniGoYg%2FSzPgsZY%2FVCcrC8LaSeBlGnMUGxFmBVF3ppp1OZEHdMdfLvm%2B3Nz%2B8iZ8wiulVxeuvFkD%2BTQF6Dnd0KVRgiaewS40PIBnRVDZHvPCXb6%2B%2BtXEt2Nl34PuGYS4Y0KznixR5%2Fa2AHNDBx85rLNuAFxd7pN9rV%2FNjB7OLxBV469At73Wx5%2BM3YcErXvvvZQBztRU%2FfPYI7zx62JFUvrSEonpHPwoCSfnHHZKcxn%2Fu3TTrgqh%2FIrlzrTwBPCgJeHwPweuDZvLY8JVGcMzmVtGBmG2bvU3vs8VBVV0qrKwBSlyNZAIty4KVwJeRT9BfeI2oJ802XIEhyt8srE7fKlV1J1CIx630dnmuxeNb7fBGBLI02zZ9mUok88SoLaKPmiO%2F%2Fs1vP8CMUvXOaQJg1JV2o8aP%2Fb8CfQlx9j%2FAzBSzniMLZBobzoPrhi%2B8pwl19fu%2FE9DEZSU9VSBknWVtaj0hlQQBbbs2UGM4SQs3HldUB4s%2BUX82e23Q0mGlhalfuLfK9yU9giEgGaLYP4Dtddv5p9ce%2B4ZU8e6kCKjkEffagkUCkMVodGJYaMbKi1jNySMKCgPMJkYKgIuk4rnD9F%2B5hWf02nVn9yunclaEKW9yaBjqknEnF4usHLSgIghGBZnYuWyec10jDd5jb5ZZ2yj2qoWYV570M%2BtXus5oQ5J3nP0m1bqYxFIWQ%2BJrrD0WaqJ0F4TzK6X0m0w8jdJKs3rPjHYMcKNWYGyFG0IK1BwPvK2Voah8wezjsBOUHQlailvbseAy03uZs3JN88Fkn8cMxAdM9qPlh8x5xH4HpY6dPNXnXbWYtU0atkNEPlwAuggQksd9Jm1VAarDFS%2Ffzu5HvdbDdYfJxjGxEDfc1DNRQpC%2B01RhHEEI3mzWMMyNMttj2dXy3wsojIv7tEccQzHOUIOd1lusTAEoRnz0QjYZIh%2Bj6RL1hxvU5ajR5gmb0dz1Z1u2GLMkuQj29WKNKNuGanq4xVLmbV7yvWFpbHaXHHQgr6zFDop2SFIB5d5u8bQ81b01yPEJYXKRKAZFKMpLv%2Bf0TFZTU%2BVFN5hE8MJu0cy%2BkMWb3OhbbFzLWjdg8OiL28N%2BHXbKTnOHSNoS%2Bn8S8AU0nqPo49VWWm1beEnHV6YhtPkbG31aDImMMbJoMMM9ygzOaxr35KeDihOCdmCqO2kPFVl%2FlUcph5QfMH59DJLTQ8YqtM3aIINdurxatUnt%2Bq2Tni9Er8kc3OZiT9I7n3fYky1WhL%2BLuvwbMPuB22txinLqZ3LKkeiVf%2BxTDh15aD%2FS4XSpNZ%2F7zC71mOXDe6De4fcTWR%2BFDVTW48geZimM%2FHfSuByMhVHlJ%2BY9lq6TRfRpV9CpJHU7RuyX5HkWRfc5xmu9eSsLfoV74TqlXfp42aF7YcTMTnGj1zs8huSxDgA4wxwjrBJo2rbn9ZrOD1369K7JLaZP%2BsEPi7Vj0QzElz5Z5rS%2BS7vB4zVWoU%2FhbpcHaSpYUOWjLkWkq7dQ%2F5Qf2MfT1e8YmQi6RRbkGGwxd55c8LvsPd%2BbGYMGlSRYlAAHnZ8iOq4jjMVLTxEEypQnlG1LxqnKwbRyTY3lejcxHAzX0PIEQtQAijB4Ne3Zf16n%2F7qPE6g0ROCyB4LL5C6PRUVIezbQiKdZzfRlNsIgaj4kgWgZAqBq8343H7W%2BefomI8OlG%2FavH0IKa7sE%2BwNlkLeVseOHq3x%2BB3C1f6rGJNOC8N5Q96i021Emk2USdp0iNoLqjuOYWYt1oYLg4ol2OrjVtoLnz5mipLvgJgjRKUxg3r1%2BsQeH2Nsa5%2Fg4DA8rUEcuHAKUS5K4YWuBk16GnQL4j1RdmGEDEVTgrN9dYTCCEytB9ncUowPXLso2BeSuDH3kwbG9tOduGCEcu2gZOwlkHzFkwG%2F05Lh2rj2xY2vrTVzVJ7yrHy3oTFjFU0YhXnY4YHnyyt7jN59HtLCk8Nqy0gi5Lh80Ya2qrV%2B4lWVcpKOND8ZVcXznEBKSR5WvXWLo%2F0EMQUkOxwIHmLOAupL6Uc3%2FYUARzJQQg197pPUjVEfbUJI%2FZ5kDlec89W%2BTR56FzycEmCXdCacX51Bq%2FDTaU8%2BTWAyHRMDH%2F%2BY0t%2FHjimHOEEaDbnOwBLc%2BXwtPKg8OGDu%2FQ0yogrVuk8vzyqlLw1NH0hQmt9mq8XFPwBylaberydMX%2BEsv5evXsaNMPg%2FtZO6FuODuFmEEFh4vF1MyrlDcH5RBlEuyX0uVcWOawIDRGq9phnbGaOVloqVYTQu3Toygk5kkj6UygxFRwG1gAr%2FIP3KDzKeMnaXvgeSP2BtHGGvJA%2BVkWHG7dn9Fh1nw50VfX4cZ8daiBPNSoH6GGPAa7S8ODBZbm5Pf2Wiot%2F11WBnXgd85h18sKM1R5bZQesg7%2B5EyaIzv6a1z965Lf9oWmZGjlsiqFXRUatEz7tlgmky2xLMIY1KpMLXtBbvGgD%2BwHE1XQdYTQ2%2BMt1j%2BdlA7lvs7dwaOQBMUlbrClVxZ7AGaLD8wI4VoLoFt3BGGsFl3ltpoKEoD6XUPhBj6ZnHk50O5OrGo4VQ9PKlUjVbx%2FIdME327%2BjNvi4jHcf7BpbCy1WZX63jJDegaCZREavMhceUTvj3X1ocpao0T%2BieZAnWZK8hxl1QmfFIdfzg6ER4xeRLtCEru%2BYuiAcLpJtmQpE3EM9OV64C7O63SfOlDleQhYva2ZLhVVPYlUF5su1CZS3UknWSEAnagLcFrPvbRpqG3D4EletRZw67GbHpjo0elBvFG75t%2B1PA1e7jD0racWckVVarj2NwwJAw6b1m9oWUrm3QiUioJMGlUbAXcoICqgq0jgzVRNZ5XjoEOB0iIy%2BqXKRTx8dIDYMWxi4hO9P8WOALZz0jgQZpc7bl9YkieIPhiS43gd9%2B8uxKWABVXy87wrlk2ymzlNSbH3ZWQH9xrktuR%2FBrOevoyNsFE1d0DuW8m8yXW%2Bm80SNShEFCzabnDl7rOJpjSxs69OMK%2Bl6Xh0LQ14NnMXWQsJmzgTvEzrmwKP6dPOit3OYgddfhBqqqKIKr%2BlNtWNHDCuw99JEJ0W%2F6R%2BDkXrYyusP9I79YWz%2FlSSjjVp91goFidZTWhnd78bHPqIVHssnb41fYdnYepb%2FeIE18qJdrxB5k2len4KP%2FjUky7hw0w4ceqkvGZgC45Lgv9yvVpQufwzIrnENMq%2Fou2DaJqOzK%2FdXP1l4WcPaxC0jsKYvo6Y8oMsDoFxWTeal3wUlON%2BUO0Hicq%2Fm%2FyIWK2Mk3LBpX6z%2FICuY9QrCQtj0gJTTrYPFxbUEh8s14bRvbvqz3RpwfNMiljHu1wLpRyupYg5BnzaOvENl%2FmlPdrnK7YI0t2I%2F7%2Fw2BsKAyUyYBOo3703k3JG1HkGAfiSeVQk%2F929asSHkdmnI7WQ9LiQEZgSJi7duqA0F5Q8WbFxNKjMKz53CkqrRNcckmwTf4X2AgIANGdnyNzwrcqHFhwx5JEyF8w8KaFao26tFzzKGGOASpW1QOAVFWb9FUDFIgbRB2uqF1DrC7Y8lfq9S0Ghk0NMY6rayysLZUa9i6DlOBBLw4aL6TVYKXEOCI1jLclFnL6INBTFUysidp6gNhdDOSu7WTW%2BUaSdFJ34W1eoneU42QXWPLNdjn%2B%2Fx9bPEtpwFeqGlxvxU4m56YZIqy5nXmwNZGqU0iU2tGHccOYHfyy4VY0SzngDRb4vBJdTA5SgGo8rGrb%2FY6gYaUXf3bBrq%2Fqq3WwYQk8PQVKyP4fpBJgdvrJXZY9ZMis7xouZ4snnsxKTNyZv9qkwF3FQyj0cbd9X61P0UU%2BQn7asiBLfMXNj%2FlyWKOP1r7thoQ5fgolqFBOB3dd4%2FdxTCko9jMZUe%2BuLKEYx7FGBmX%2F4cY9YIf5ZXfQDlEjtXpxBaIv%2FnAYpVuz2Y5vyk6nsYuzPHMacpSwVP0ovMP1kS3SKtafTi%2FjQtwqpZ1bpej%2F1xxF0kjnV29Wm9ZDWI52vb%2BoNC%2FVPDgRALJyt1W5XZN%2FeeMVsDW7YQGnWOGJ%2F%2FCSFWMWcG6x1hEXkgXiPGFDIHVQh9ESd0Jul%2F1O4GqlMsMrsmo%2BFKwfujADDtdet%2F4n%2F%2BDGpPKgLIlt2drHlcVENlXSsSRL0EQgYmQAWBoi%2B1BipedoUaT%2BR0kAKu6TubXr23K4UNKwY%2BzNN2WcEPbhG478wuBnTSMrHlZ0rqSjeNgEbH7rXqZIJrl9ooU1bJ5Kx9YBMyHIlV93GLtEfSSpa03gZS5w3bt1HWI175SKCJQsv82djzFg9qc%2FDl09pjI2%2FgxPlxsaCbAQ2dKJPUIVLJWOYZe03wZ8NOokS6bV%2FpuKjQavDQvYUkRcll9EgXaEOQnkEqNSj8%2F0eNKllRbRGa2S7o4cr2wj2mVbdNl091mnihskg1kog1SvQLoHgLYoSxvDzX8x9VMpBwvt9J5F3TJ9XXpH9socT7H6x5s7d%2FPC%2Be6mezMpdHzdyFQaWjWBGT%2FAJ2O9GLlEz%2B6xD05gPFA%2F2i%2FWbmweXLgXi08Js%2BPNegBcMHieyhPf95j2Qtsex%2B5wGMV939KwwFJr08FEjf4%2BfOMUmkklz2DPOTpAcoG1jr0P2qEN05347lbQSBfQBm3ievkxistTeFnpDiwwy1FBixgL61jJwWa0m8rPpZ%2BN77TNLZg6K5texMXHT90NJYdArcVOY5I5kaLRk4ye%2BnAfsjORfs%2BsvFGCKR00%2BIIPy5SJTWSDhI9yptjS7JiGt5CSc42jckAUwpsjjazorwNpmGEZf1Nf4Ds0kVaPDWMGtjpl7aDDQfjlMZeNIoII5kPDlhdG9qsYzHphQ75TAxZTB4ezApfSnB3Rusn2r%2Fn4oZ7Fz%2B2cKlmpdqBcFwq0A8NhYeVmN%2F3zxG3AtL6%2BwUWyHl6vLPj2ECG4anfqwdP1LQaHstdGpsSeLQTO2v6nU%2BydO%2B42F%2Br2SFTyfdAFUw7CYsqaphRPXb6ka4TRcICvG2yU4VTnNpRLx%2BdpSehWup7OHG6iUDVdfFRenx2X6fOEkq7OMGAbuxVXtiP23Tzsn6HsZU9xtS7LeoiOEYZw3%2B99I%2BctsFFBzunV%2B9JEc57UGM53fK5SlMoqUs6Eq5rxQO41fphbky4bgGtmANARuit6kkRGEa6yzQY5nONd9p1FPQ2r5tpMTsaccU6SmiVgZZ4fLLSP6IchEWiz18w%2BS%2BahVGS0ASPHqm17chnTGWhAYmVe%2FxWlewq4f7%2FInm6l0SUJmo%2B4GPitj4yq0WXlhOO%2B35Wtr7UswksaUmiX1DkIzDpgbJ18Mse0Ti5kC%2B9V6yzTZ7bf2siKr5uILIJ0oKUF8mVIE%2Bn%2Bn3HmybviX7BJdoFxyN8b8v8DKj%2BfhkxNTa27GsPBMFF898pBdeoOf1yO%2Fk0fFooQVk7LiutwFokps96dJoiA7PQ4pA644yH7ErHhCsd9O061rKvR74NKlWO3FtSxxSR6HTTFtvWR9XpjBJaVHYpVoribNoh6TlNzTimJ7B%2Bz3hnSqPP9PAgPqfM95aerafZT4Wp%2BoPR9Oruf6wjJo4aH2DFCsrO2wdcNYWWi6lCVWxU7EP59dG51M%2Fq7sQdl94tJ3S43hzXxO%2F8M2KPiWMyS90nYLSfuAkf6K1xwDTYSAkqLyvRfrCEfpyxsjU6qyUU4wKkMa8p31v92Zrl%2BbHuKy1RKzLyu52S5UZppdFA88Co6Ypo3Jaek2SYbzb1ewoJ00%2BbUCMqgzYhLgjd%2BzKFwBixBwIE5EsCOUx0Pe6CRjXj%2BiJiahDRHqlMPEwppRloG0HhDFk0y3U46EMFmuikjJsFdn%2BN80JXc1JKr8qdNGDEskITwRboWoj7U%2BKVs%2FW3N74lxI6w4MAf1TB%2F03EGLaDUkyH8ejA6MMgVZV9%2FTLPwO5n5%2FYP3EhTHGqHWMERMA41mRf5bnGiHHuY9MhaMHdHcSBUDi2reCrJGbMPVQx3DTO0e9je4Pbcx4p8sDPEf8sy3K6wjdv25QZVIdqUrKHCXEz4r%2FCd8gaMZEafYmkmiVlo80QizrtM5Ajn5IvHqeSF56XDLCTZp5jI2rjvq9%2B9M82FYbfDwMR7yIikgMuMsprm06WG%2B8hx9r8xqxs%2B4%2B6TOhpQUp6Fs1m0v%2BukLDeo7nhydpHMk%2FQQyY6nSaEdzK5Htw9NM2UV7Wjdulk99i8BfSDpxn2kxJexROEPSUoxzRl1KbayoE7kB%2Fhj4E0tXvbgo%2F86d%2FO7Mj8V2G7xJSvq4VVmt8WoWJAZXPDx172qbackxd1auE1yF7sp1PXkcGULIcqhh6cFXiWszPa3ckC40oN8ge578erc6cAgjwEHOUkVztDdDIYb4j0y4XE5FDUdL0WryUT5pEchywm46a6aFeoTIGeQGJJMNISFtUgiHm%2Bu09MY9Iow0u6Ez77T%2BfXlAFkUumqm7cegVwSeTW3HZntv9XAWG6A4Y6r4kaNML0yyFoK5w9ZU81YqsLz2VWmDd1Sc1gpBoR4eV119W6bsIXlmrxyW5P4SkJuzsa3KWK4XXwTi5YUxQSR85Is%2Fjiepgishr%2FKQacdi7TRVQoso1oMaJU27EyAmjetru3QsegMFfFAkdlrfeeiPwVjHe9oTzwEBOI3FO7BAXh7gt7Zp1XEpYAr6qxOSrvrru6vw9hxp%2B6ctp8UwEQywDn6MNYjLfBbM%2FrSfHQqy1Jg1hF6KhI8td4LuBpN94TLnLamohq1JBarKuwso55nc3jNhq4y6L6qXv%2Bknyj9UF1u%2F1H5Eu6esr%2FjKoI0ARH2%2FMu8nDVcLn6xnyRTxv9qZrMUPAX%2BCWQ9iaZv3RhyMYVS%2Fo7zntvNWij6RWUZ3pnEU%2By7rDxUv6wTKCHiRBd8CLazSMQrkqW%2BgZfDmW9sZXrvAdJU5VNLV%2FASbV17ujKDXEpiHnV3CrAWI1PzoSNKslSvZ4WeHKLYm5Bw%2FrX9%2FenpDlVYEJjoiudOgt5Dz8KiELM62%2BxWR728Gypga7krdFF%2Fbq1VlvnVNbRVNBse1MPxQJlA8LH0qnvG6fTZ%2BJkxbp0y2baS0hE%2F5lXt5SYg0UTI6sd3J9U9PFLFTmPVasP%2FLCzp8gbZb%2BJ7YjqQ2uefbwy9eTrQcmsttXgdfkCWBuHrmxZqxkYC6mT3hppfXLxhYkfS%2B55Km7vDMaZuw2p4aj5FoPCwhV0QBao5eJh5VYO4dnL%2FEs51Fm6bgqUz98Uh8yOKxTChLzvAOsKx56rZKwLk0JJy%2Fg0eWucX%2FeKdk6mCG%2BphF9LGQW6YUIhppDVLo3%2FYRSsDicwXPWG6SB1R6i1eeHasS5Iep7K%2B6mb8ztPasKNGmXTE3Fw4nrAbTZQLVpdxAJkMIcphTGh%2BkJPVzjwzQdv83Chlh07%2FGR%2B%2BMkum%2BDvARU6aAxeWaQqA6qmA0VkI2PGhFuC%2B%2F0HphmlWVnVxbTgCOa4P%2Fqr8rHsprqaf8AMZOZV%2FKVVrc6Nh0L4vpzGQcTP5sOvx2TcizR319CXvxZtbjtnJplNBBApJnRDA9Hyx0t0xHwv6BIBKsLnOwT66dGBQQDWpV4IbArT1cvP5TCWhig%2BseEP0S5%2BxN7Xre1VA3RFGlYwQQlOIRCYwTjF252srtBZoQ%2B%2BdcZ5PNiXr%2FLXSdum0qz%2BP9A90j%2ByYrTANEK0OePmVXOydU8q8ukfyL5xaYb7H2X9ZI4ehssGpo6m5avn%2FIJp5zoWODYtJkjKNMphltUkjWcY4i0y4ttjLg5cU2G%2BqzD796QTg4l9FX9gQmSooSgfjQCTEsOMtTFXfcwFZ%2FjLYnopDfk9PaBlNhYbXvWTtL2QaO7Ku5dz%2F65ZVehziiSnOVgGzUtqmlG1plZZYJsYrL4TOQD989hO2CkazSBJ7O3OiNEttzVbceLEM47iHvxObXlLBfZrbA9tSMbdVuDMuI5pYP2DKogOLmgs26kgpmKT5PBC7wZ2Q35QvfJjMdKFFgmAUrCwQczqIBnUvouNcumNIgAQoncpxb2sxGqbpiGYW9Us45sJZU1EsIIkiNANWNqEQ%2FF2Xt79eVGEUB6hJZ7Yci0fu48sCf3sSC9OmtF4YveVBHx9X9LrYg5lCi6Z8pcmD2t29HVt%2BwOG1sNYLea%2FnVPR6b3X%2FNDfYR5FH7n0Q6Sr4jrwU%2FV7j9HiIWo9dcStLR74ORhRvvsNk3yU%2Fat6mLae9DQOSZMkCfh5OhH55wduTXwDEuCm4ZlnjKmsU%2F8xifqhpAQca22Ery3ERv%2FKZUWi4HnPIhsUNx%2FG9LPgH69hWHv%2F6jte%2B%2BOsmJpaysH2fkzrq5ACaz57hSoURKCys3E2PSnmw%2Fg9MZaNO1%2BNaD%2Bce5SeOPfayOBTkyJTHbxwthC%2B9VA7zoTILnnK4zfW8uihE7UoMVmwOpn5NqdZ%2BxFPQgazrp14KOP5xfk4gaawIoCBUcDUDe8MSVAy6j2REna2U5X9uZvZ78pYw%2Bdx3wX8Xn6ABBqa9U6J4ZsYoSud4pWAyIAEEPmRNfBTisCjGxsHEB5yTCqIzOKKXI%2FWyCFovfoPuWpNJUYNDVFYHZmoLwWHWD2OnYJP8ixNI785OozdXaPBdivIYj8haMVJwoOk94Z6NEdc1k1RrIVlYebiVCs%2Flw2mJVazY%2BHkFzECqZ59r55k9yp9whfCNXUPt32OsRIzG4qBK2ht9Jx0%2BxcEVYl9C2BDDgzvwxZ6NlOr8BpEPxCgnq%2BiIXo6DW%2BDH86bJdssbZakaCTRBcmEm8lMQ2SptD9zaXFw1vRDkCgJ4CpJ%2BhXiqI%2BqihXLOU2CnPnsUkxDAEhvf9mHC5M8op4npHwp%2B8DQXeFLnF4bctkDX6WUkyAqTgs4AUoFDw0aqpmBxKL6j4poOiABwhApR2OjcRavfCuqa4IjnEzQ54BGURIlGs26tYWQOMjb1Xfe9Hg8U81jZgMQTp%2FzLQl9WbLr0IMQDqyvbFD8cSePwSOWNn0FgesrkSlGKwsI%2B55tmj%2Bpw6fGM8uWFQWOlj75Nv9OTK20kc%2BE%2F%2FH3YMXPLXoKQ7cx6h715hnZ0hfmszHkqhNXFffy6wRi595b6Xj%2B2un4%2BIMOTlkMXZwwQTMKc2a7Se9bmM7S1ZboRnnMhWEzKLLzJKSE47duvlN84EUIPna%2BjwqM44Bw3GFl%2Ft2VeZ2Am5L5cU18IJ%2Fr3Iw35eFt05WAlsiJkKFZobdSPfFB1DVfVlnk4Y22Gusky4ccfato%2F7Edh0B8ZgHZYlRg2QJJ%2Fk%2BtmUvLqFWAhsAAOBBV9Aap8DwvmnVnRIdzzW%2FKKSP7fppx1kXNTRNb0vVR7l4Aj8VXZs3pbUX3l%2FjLngOuEiY3Am4dr9U0ozhdOZENElqyKj9LNNi875ed2dynwYK2BDXl74CYZ62TT%2ByDw8pfKqTpPvZwSk89w4EbcALjz3y6G1dxq8w5gIyVhEwGDPFYqmkZOSVGBdr2vlPE3Ec%2BTKlWJ5CwzZEnlA71yjeAIu6rnTFNeY2y5NDi8d%2BwUK94w%2BSrBTcCjf2jgFizGJc4w5f%2BqKvSfwDupO8jO7jsXn2gzzw%2FaEVTv%2F9Nw16bi3Lc1DNQc5%2BN7q4d%2Foad%2B2WZd2BhmwbdlpIQMvX%2FoOK6urLVKOk%2FLVMZW%2BcZZJDnnu3HqM2lXLUczaJuNetEmClqASujdfoJHr4cDRASIATq0lJBV3WwFPnf%2B55ogmZH5jeL3pcDIEmbuujSxjwPpXJSBFUE%2FPxn97%2Fy5cIEUZAkrAKmYSVSMdu2YDdvi57UktgcZzzc54%2FrqPC11cgNF%2FWWL4yYfrzFzssH8jgftdDxriLN8Fl0p14gGU9qTCLrprx%2FBB%2Fy9OmLG8IC5Ecq%2B8WB4pVWEbhXPh4ZNT5e%2Bt5%2FkvnkiYtDujyONsriwAPbxle15HG89M7U%2FoiUk3dlHEsUqS9%2Btn3iPTHeC14MffejevASvNIuMq%2F2oI66y5req8vcFtuPw8PmYv4I8o%2Fe6qKHY0pkO8ZIibNOc8gYfjF%2BMhG2Cxq1jvlOuG2F0I%2FRpUNlwYG7yde5%2BZx1%2Fa%2FX6SQm5MYuaqFqu1zBid897nFuNxub%2FaprT9nNutc9GQqx%2Ft6sm2JM8VbyUuPoeSQYZJypSnX3wO0zW3%2F%2B6kZpBfglFICK9aEwjbOz4bYSWYkiiU7HMOXNcRg8hobA01XsUHwQKs%2BV2Mq8FZvhTFOBhGHd0mvEP%2BwVJsOT19smqoeWxGgaJtNeSwx1w%2FYh1Tmz0YFvKLhf5rT9yARvzpnEJEkc%2F1fJQV5qLPiStWxgZWAmDmX7Egnxe9anrqfm7YYATNiKhnZknEZ5J8smo9TM1IghGQEN498wrdMlahBjdDAHjW7RNQpgFVmPH5LMG92PYJ2jLoYXDnryXOl3RtSgsWRrZDcQWRQD9lXt0j3wSs7YMd1sfoF7ud0Y2rKJK6C87%2FQuXaXiT9oQrPHTwnBQuo%2FmzI7qjiLYV8USbXHwpf9deI0ExfgVDgzca1y%2Be%2BAXqi9jiYhK%2Fd4meInmm0MgB%2FUskuAoKuRoN%2B%2FBjlr488OkmGnAZqM%2BtdgbR60QuLV6MzL3gxyqxFV2jG6DGu3Gf99xcvCx0Hab7J50CbfmJ2Z9gAVwB5YxR17PTNEhMUMQHW0JLvupzvfJTpZyKptvDGio8wTVN6wljCCkzo3QcrRxCwFXVTGgRFDdyt%2FKGDOud06OWj6RYooxZAVHLLG7jcKGEBSmvN1uknNhjbD7PoLyAtan1RUfgvBl5fJGPER5IAy5Vvd9Mbir0TzVRHgQACvuCsC3kmKwor0WKfCtq4%2Ff3Gsmb6wqtek7jSDKYaAAAqQF0b4U9TqpRZHaMjN%2FqQQf2Fh1uVsq52Z2mA3F0JY6jTrQu5vzKOA82j0tybkvY5QdGKPTq1%2FUyuDY8wMbQf20OVA9CIeOpgoHXZfM8VQ58VPlM%2BWvTCUYP2dx7aYy6G%2FYFyUNvwr%2F3cUSUrZ9%2F4sjVQhu%2BHIhhQyTdkStf6JOGqgyxEW%2F8mfovo6e64jxQifLHIgDi5j5Y%2FFaCXk9EBG73%2B8Rk%2BdKwOsVSPWfRgPWjMYDjGoM3Ee36tMZ3j4d8yIoBG%2BmRm16Gf3LUhf3xp44Jg25xbENOvgYbar%2ByehGPKeeQHylC5ceBdThd40hfuu43iCVbaSIdv596xsW4FZYEac3yFgR9cjiYKNDXCn6pTyPmpB3JwOAeW9UdKKzctA6Nz5POHaSCKa3QIR98B1qIJd9qfNKRTZCnESpDQpLpFF3oxd14k2T4xZ6v5W1zH%2BqsU1L0%2FF3PYgrtg1wJe2f%2BpFobVpi5ZOS6khg9kg%2Bigc3WVE8EifvdMH3X19pjYQat5bv0ht9HjIbUWtO4Ba1bnUqIWX323VGFp4GD2n5xc%2BZphSBNXTOA6Gn0vFD84R%2FhlPeXrYChHDHqJesWbxMPHVfvxBrS%2Fx3iIWbXoMF2Jif2rEsNCdtBxyZmtKDcyqR80W8P66ZrMAxlNUlVY3TyXzPq0UVJeXm16xjLa5r8JvtzIoNVO11ag6bqEvBmnIY1FiDyqxAw89ZA7qVMv2d74AcmpQkDPlGwditMcl2XZvdEbIWpM3KI5y6ZIyn8qam%2FHuwFJ9CioPasIuswJRN7em6tz6IG15%2FzUFWM1bEVDCJnWPLTXiRenAmzTsMURfNMBfXiyXylrJbt3sZYRqkKlOA4DjuJ3kpTfU%2BFuOQTYKEUxOYfSkcyeSs9fYVjrh7JKXBTG5riCkl%2Fhm5Jr9PdtgtzVvYYMsFzddvlOiDBhVXuw2WUh3pRgRwrTOuFJtzjggFlmNWbJSi%2F2PVtY9yuOeEisqtNy1h0BL58QPfmX%2FKW5GHNqETR1amBBJ6r9IQNuHwWQ9LZoPveju8Z8B%2B3zP%2FDepdldLSakfo4sREp%2FW4HmnKlGA5yqudcDUyfumKWPcjdbHUrPnHz%2B9QBVBHPM3S3EfXFXMs36apjApkiaOHwEkkhXLkWppK3TTbJZoQZL6wRm%2F8%2BjSgEo%2FY8sxBL7%2FYoLMxIfwUT0OQNSuYamB6Pnt9LcCtWer5TRqwdWmpNZeNxaw7j5RX5W4xbm38o2h1oAASGuDT%2FL%2FQx1spdmeewTTRo0ELJExEtIPRcIQyW509qmRWtGSeY0ni3FPS8rl2ayIwl7uqEy%2Ff1uoGqcsMV3mmwvUwRBmt7Juadz8OsAimU4wJvWW5z8DVZ08QlR2Xa28gY56PIyLQVNULqvBC3BYGIx5QJQc%2BWepWRJt6Mx89DbHWv%2B8NRuDX4cYQ0KQMtco%2F5Hm1aj6rYTJMFPxVQh8G%2F4sae9JK9FSGbs1cPXVFC1hQjQGflgIGziQYfD8A1z5r%2BzwtNVHTFVBSeAZWtPP1yxE3Vn6r9e%2BaHYarFov%2F9SXgVEbIMGMdE60%2FLEu9HYNajlsU8En9Z1EZ9XgwRurB8UdbexzMbUaRF%2FIUMKVZIXIy%2FD81qREymQJwtj20h6g%2BxDZ7Ep3w5ixQt5CRIc1TJjiGX4tTfz96yNHut9PpQ5EDNSV6qQHA8t0xXnSXjnMIx4mAJbhIsR208vIhqOYDzDxMqLDFJc%2Bpck8duEubtf3vwN%2BCqhjOOJiQw8IdVBnUT0PDe2srKAVTihbXZ8HsPCPlzl0hoCT%2B%2B6aDWmPwQ1tX8lCP1yFsZ2HM%2BFU%2BI4BoUaA9Xkjr5qNq3eB2vl2nv5RodU8SuP7Z3CztkbUHnkbPBH3eemkoMsXEXiWS4JNeAc9y9TQjSr2UtFft3%2BnzxbtHkzDYPO%2BtGc8v97L7e3OnYsqRuyi9m2JftYzZ80fHhGItFsjsjqpObGvFHh%2FTqjW9NFUIOmWajNeF3XnuXAPersX2S%2BEasa6ltd5PpofQYZP4vnSW3pNotLSMpimBQWH8Y5aIqf%2FPiT5kKYGSbMhGgwNKrNSLg%2FXX4IRdcPmHUHg4hdGW4tt847KfNH%2BgRUA2lAhw%2Bjcfu1YmWcZqOaUEL4gBgMc8lq6dgKWolBv3jLMLqOXOa9YihReBRkltPn%2BEgtHLsmXpAsDotzBOK3QTcoCeIAZXHEUgZaZwyTDAoB9raz%2BNBYxZb6tvUpj5010zy9HLgDnaSJDVX9i0P83Ct7PrjGfdOSQZ4hM3NaarV4oIXe8oTzuRQozVQKTM1fVMmp0ENJQjhGIRZl8FzxWJ%2FbSEE9I5%2Fj1yb5Her1icBSwcA5hVCHsx3lFr7tPjplcE2062fpZHDKwy%2Fdywk9Bwj0mDbf29dfB0U5VALuDzAOSLucydKVWe7dYeYhE%2FlVgtwCGUqroH%2BRNhSUapsH5FjnIGw1Tx9cqLpoBYdkrvkoxiv1EpGELED01%2FoMtG5%2BQvfvoSf%2F3WK%2FhhtCsQPZuK5bkfkOa%2F47kyG8%2FsZV57QfYQNxkWPzqJeqbo%2FsCxBBiw45X2nH14BLqOEGmD1YKTsRBDRKRx3PKCd3OMLRNF1WM0VLzAwoNYHpEil46yNw9vaRr8Ba5xIYVxi3l%2FXHzJTv0YLz%2Fm7kiqSTTdIpzECUunQ%2FOU%2B3qVRC8017tqz%2BRIoT%2FAJBvlql3zPwbGIYEDViSaWnDUdcguo8Wy0yiqv80DVEpTMJsF3BQfUhrPASAdo2XCrCiJZHkxmpYr4CwUsNdjFeqcVtE5LZR8Hh%2BJBmNN%2Bt8am8%2BipT%2FOq6aoSK0I6vhHSfgZWI2rQW5S4t96Qly3raPxj5IhlPlmBzv1Pg0wVmn%2Fs%2FDXmd%2BeGNP3oxqLhVwhGcPIwUtLNKPyc%2BLnmXuNCShmbut%2BqiZPQiX8%2FFU7kLGelkccaamGFegjP3pnU3oz5q1PFalODv3ajOQPTxIW%2BxPx74kZUcZfbyCoOWVhUggMlQpINusl6y0dBWhrGnJ4JMcYcm0usZdNGduyaszcZzFu9RT24zlWGb1jII3b6pigRRF3CHwQ22nVSjXcQJ5FbhKFebczGknYdooS1TpnVEe%2F8bpx%2FWr9iMezc2yJtynE1AKP5fJBfFZxdnpryJJynItH8F2MNUrKYHbazid0OSCDZcVT0Q0KthRq85CE3TlsgrocoXOMbuZ%2FPClkrHYO2Pv3kgxtD8fVl3wrBz185wwV3QeRRS61AeiS%2BWUDIi8WU8lPZwafiAspY%2BOAAUhHs85YiL5HZYesns5j0ZR2DxSP67ty154HjrJMIgCfR4MrUhXCIt56SafJA4PFu6ZuEQ5qgxbToSjrbkqEEnFiuqFmu9I%2FjAmjjI72bN1ZqS7hUJBDwLbsP92FhP3f%2BVHg0%2FVmzZ9zePewlGYK1AVPJW%2BZ8PBskCbbU3N%2BY%2FVpQ4twgSn0JKhbwSkA6Tcyk%2BY0gR9j7q7er3P3hHJiHp00p7inLPQlsLsF%2BAUpZkTSHi43gCCUe99P2z1ZZs4n8Ypmnu9bGIfQCKhgdXkM2JNxoYE7FmV2SL4vmTBBdLCvJz8LgKqBza3dlizzC0KsMoRDgTouCAN1Rp4o18o57p5D1W%2FWp4EB5LhL98AXSTD%2BcS4ftOskCwKPMlwH8TIbe4FJl021ymGzcBNEv0tdyRSQyQgWqqjytyrAFNqWlvV0PMqsyFqMVA1ZK4F%2BnlRH7%2FsUoAVvdzfpe0xeWwSQ4xc8g%2B%2B%2BEnA5rzOLEgkIbIziaolBhlNze3Xa9zbjRUjxXs3EUXiRlfrRx8sntnoZ7CzDeSUi%2FkZ%2FsXTrtllpfAObC%2BZQrG7%2FRj9pR3tsSEutwjmJjww0N%2BoImR0bEnuISDRqJa7sYkaZLBkrPLvwq4NTjTUZBOKmNx4oq8de63LNSxVE9M9HpCkKTr%2FCp%2BUTjjTDW8CqDpZFaxLMTkrj8b%2BCIztzaB0dVA5rxfBrug9MkVb6YpYazSOYQWFmZ0MJtTh78mZxzHjaW%2BCT1UcQyooynB5wxEgTP29P1zbN8213qCu%2BfH5VXHVVIhPy6TD6m40mgahvfMNHhmWNRr3V2Ppu3jtFQoPKw%2BCy67wCBEgMLt0HEKy26LH40LjpZA6urmj%2BMXjkHX1siPzgFSasG4uglovVZ6XQIyuOXSOSkUVvtKOXklCDiyWiNX70KXYnz9M0g1LB%2FWA0jRi3Qy23LxO81XTGkdbMffnWNjat9j1MyRg6IT4s6S2NE59WjVpHo%2Bfo7jHcPtW4rnB326MJr9eqLvQPXSQV7zivVX%2FcyD2y%2FthdqW8GQ%2FIS7dhafu9pwcLNGMARmI6ViSUEd8MiEuje5aDGiC3AJoC1lfJDPtBG%2Bqm3xm3tNIqWomptbTxOHvsG2nzlUrzZSmQa2uc3ZxRX0IFtF%2FyiKosg6mrUZod7bs19b73Ot8FHNdCKJ6wUCwYlky6VRiNEDkXfiyuO%2FLcaldu5tjSBfW0tjQ35j7hCIORDkRm6hgT%2BpgJw9BhvxfSRGgRY6yaMUM3%2FOu%2BLKtjR4GPDgOQxWb5SqsCXJbnZgJ7YwnXfGo%2B9Nipz4UekJiZof%2BQqMGOPF6NMQnmAqp1hpMXgwGmIZjAlwq%2B12mavgdFVQkvXGIXaetp2TaVsWz0vZeB27WFWG0Ctccr9Ysf839w5FhYqw7LuForqyPwBRNc9JngJV7uAr60Vv9jdeqGshWJNCZWdrZzF%2FzWKp%2FqQAuedyXTyYH%2FRgAAY2gWcZXWlpIpS781WJIvfk%2Bbo4EAUI%2Fojep0S8GrTq0LnDHHWu9kFFx8W6V%2BM0OVqXVyaYj%2BhFXc790DX%2F9DlN0RgM2YRZ78tkjpF9GqNj6ZqeFb9hig5AO5PXTgDXXQ6H63vbROQ7SpjAxOh4yhIn9Khq8qMIV%2BT8GOTrYZyp8c%2Fjdw0%2BL1j2CmggHJv2OEGB8%2F4IDuB4tcELWz09qEHWw76QOA9bTTmvDmXxUUqQaJzpgaRwxjOP00gVjafWnLDcQ3BzFrEGth%2FfxmDxverwaZHu14eiKK7NKBQgZ1dWHSglA%2Byw87k7xVaADLK2La%2F%2FuuY145PjDsNK2dBVWpEF%2FqYbCEtHMFE3ooBjtCF6CX2h799wT0ZKjXKMSNmQMKLrdEBzSBFqi7uLOOz8YWGECbKg5sJbCfaiIIWlqYq2nT9nIJI15%2BSiPGSZa1PgdAJT4vktSSdgMlQ5Pl2my5rtcSXwBXtlRrzfKbctSwpOt59nBacGEevoO%2FBrOdHWMu9GgVd2qPxfKdY2HSkBELDc9xJAiEgqHiGQY%2Bj%2FoOa%2B%2BmO544S8lEY2k00yC0yMwatCp1ag9oQPEtkQuFIuxWoVuraKAitH0zeixeqDr792mU7fM0n%2FQ9G38oM%2BX9ZxTj1c%2Fk6LyI0TmtI1WWIrg41%2FcIlw7YoDfAFZfU4rTx5LTu4g49aIXXgoi19j5IDvaa8TZvMKzGeZ23Hk5zzqsoR883lpvlc%2B55ZbIu8FiI3D5LLR5Nult%2F9HlgyUe%2B7aAOCmikVB2wn%2FQfKI67GAfB26lSCab%2FP2xT7fCxOiFfeC5RvST11Wuza9oP1BOyRgyR4jkLf1nXo6%2FICBb2ChQSWXrQdFoepjQZZm1PDfJeXbQgK33fwqYVG%2BusTFmJCI9t4tA%2BZLpPWN3YGfjNJvJR0uHoQMasQ%2F2zSYTB1Ol0f7c4Pktq21aRy%2FRL%2FAUk1jatmaay5OJNeVUAVsVoQjHXSl0ULoPyI7WFLLLy83lNrnt9KlwITwA6PBvrx6BNFmYYrMNe%2FoCqRpaO7ChCbwPKgTe6NrykLIYNTW8CFPtRjeRjFaFYNnG9WL2Yy%2BbBJqm%2B%2FUH%2BX5L%2FVra5KYr4WROtt1YKCXYKrxLPlf%2BaLTQRdVjmTYhsqCsReeyJoE%2Bv3qoq0q7MfQR8MlIwfpHB7FiVsdF365Ic0Bxtz%2FoPy4BKbhp86jT7CV1evUIpFRtos%2B9%2FAK2m0b5ehDBah4hX5bVHDdAOH9ElEZVquIOfYkxHe9P48DTiayv8jKIARiEKPMV685pzvJLThYmR5FhVwU7eECyhlx5aPF27eloECZr3GUJrqc3HUhM1TIVWdqPj8%2Bl2DhScTL%2FvpKGpLfQTNW%2BaifII7b3jMDYiqZ5ky%2FMC0JvPAk1y6gB1dB5iRgbv63f5TJcKQyvDamPJ1xldqpQAvvmgSv3JgCh5vgoAH5CvgeQpudG5oWPlRT%2BmG%2B%2FhO4RHGcVkfKGSrKuqlfgq0rIFVnBuA%2BOGGp%2FyLISFTVXdwgJs7oi%2F%2BEmPiHuk2i%2BbJyUMCQYLniWIHC1LJVUFkUr7oOM45Eobqzubwcrp0bUIaSw1qcDnQVF9xdibeYrTM8nu%2BOnn3UYiDDWld9B%2BLMpVL6BKysU7EcUdKQk7aFbkTx5bq2DXchb1eDSl0O5TQl5isT0sSW9VusKr%2BInDaNaTIuyRxczDI4k0uufp3DHukOYhdiihGFiwUAnv30T5z3aSjNP13NrQbPvDtyWjD8w7pfIE%2FJSaTObJHMpnKaTTwDQUauUf3cjqNcaQh269RjOZCd1qxojX9NNrV7eEkGfCUkKbUga5pwW1qRI%2BC39YcQ35i%2ByFRnr7eI6gXQsQ91JDjJKUyJ%2F%2Fa5jJSkwf1kkR4Er5lOWJsFelHuTG1YlQNKfXw7Ahr2l3AAwg50Awc0XL7WM6yOU70cnV4y2Z8QuO%2Fab8xtgfmy0EvzCONEeRZy%2FSelZ1v2X%2BzCD3OlRQcWMjg8TTs7V%2F%2FKAZhuWgut5bb6QhM%2Fcl2EoWmbkVpk63GcVi%2BKw88FN5xGy4bOeRsWBB%2BQ3kH8ZkgCAWVrUNFwJhRDm1%2FE1AZZ9vDyJisNadTcAJ4uDxWl%2FyUyJ8TQ5EHTbYx%2BlSf3SkwFI8ett9zt%2FV82X58B6zyiuNZJ1NgiS8ahxLepXmgrwvd6fJn3yv2ezmtskeD%2BhvQ0eK%2FWEVVaemqgqjcmscGjDhcWeF7qJ32rHSHT8WeN6lsP9ujbzqzd4QVvCzIysseKVWL3xaPaWa5xvjEJ3v78kCGeLMcKAVi8NCV4CLwb3BO0cXN4lU8pucmh8s52FDCTI2A2pNfzupm3isfket3%2B8In%2Bbqi1xXNA%2Ftc31N795WrKoGMoB8JhTNmri71DQIyKvmdiDDcnx8f0VWpt%2F%2Fq8vAi34qVDXrfCEyqviJDMA%2BSyZ6AKulV8skcsmn09utPcVoBjzAnlsodJRSSFV4q1t0nLavnF2jFlSuCC7ex4mmYOkzMo93J8nKCpCiRw8UOHa7QZlK3NG5E9irdmHfJY1W3ycin2ncC9O1utCiBPxswA6F%2F7DgbviTdJV7%2FkktLcPt1jfoLYbfzNpMLtWD1m7zWyHRbUePxR0u3lMdYjRVERgtoW3hFW3xxdE9sm8GoFdi%2FVQXDKIvH6DwCNHGNtPNr0Bjlq0woGxV7ELqzwthTbdLczNVi4Z8S2Gh%2FwN%2BAxXGFwo%2FVdmV7GhXycuNHEkopweFkGiQIYylGZ9Pph3EADsSPiCK%2FZgZOGXKwBH1xwDc0agopEQaZc5N5E1tmGo%2F%2BpMzNJKeRSC%2BDlOWHgaNCrhGVwIRKVhq2wnqO6mTv%2FsW%2FwRvOdh06dUb6WZp55nvhUlzc7CK7rjZtNsMXYbrWt9kGf%2FpBe3gknyuwsz3Z5tplu8jqdNMeV0n2PMq3yBJqxb7Lbqr7YFsEsQpf2OZJQd3Z4Lpb00j4Q4iTwkh7r5%2FWrX9YVLAZocJxPnsXNehfe15Ml9vFkxPR1%2BFv%2BEBjAMi7RElhXfqOC41YVzlvW%2FguqcZtaM4Jm78rE2xR%2F35xxyzZdj0WmhCuO4njHQSc80Tb02b71L8QsyTfPzTr3pI5uKpk0L%2BHlg9%2FyKm9Vl6Jsj3XBFjjKu%2FwOS7dRcjo8uG%2FPK823uYIgB3XKOvdAWXaNAqNLGmxOCrdd2nYfLw%2FQr6k7v7%2B4hYE%2Bg4Oq1WWAo4AdhpJbj0YVPpKA2qfZ0TMqNVGGtHmaGDvZDdAAjteQqQj5z0KYOBPnmgGxP2uGQWnlk5VzCZzXNRq3wVADOBg8PyfFV8X5LOfrHvlQSTrCDF8lCRFFIpSJNT2WP8QbW%2Bf1ksKGHaENijki9Z6H2ifx5BK07S%2Bbi7%2FELIJkQ1zB%2FfkVmFXFkygjYVCBgIEAjZC%2FotVXeGObMBWTfkMjxpbkSqR19eTc5GTB%2FuUzyVQeXwp38mmoy1ya1MXfWQ16MOrFyqcLO0fclRRS2qBmSF%2BOC%2FXPbE2Q4fJoRZV6DrmMZMwt2L5OJ09KU9sf5EwkU2r7aY028Vl7eLKd8KwEozOHk2r%2FwEKHecLf%2BRRTnV3Z0L4pDSuN957MUvqCrpGVawJXenfv4vgSevOgbBEc%2Feqcrz4vYKzSdCawuTpQDl2%2FfIBlcjjsvbEvdxKLMRbT%2FOr%2FGocALGx%2B7rOIfAI%2F%2BmzGzpDXzH5TR1HpIqPfxGmCAM9t66o9CWxbTEoTpHhzaLpfDl3nDhunb%2BnCXG3Gr1p7Tm6GIQZnMXMsP4jJxu4OHLUbdlHr3ZShJtCqZRzFR7TPY56g058Lowll2zdvpv2EJ3lHQkqvjGhAKV2NzSb4NfOZnEZDEig9ZX8yJ12ki%2FeHJguF509igoaxAoOa18MvqtCZQMDg2DvgihvOVsRttjLhSi05Sr%2BaTtQpGNTVgnDKoG&__VIEWSTATEGENERATOR=878F3C61&__VIEWSTATEENCRYPTED=&__EVENTVALIDATION=FUznimFVNHRHSdNXOaMPr7RZ8NLLDOJSZlQUqdkBb5pNecNUJKqKXfDbNBw1jg%2BciqGY9Oyd6FfEHZIRIXBg6TM3433FGpr1Qxvw7jED1UdDdeTZxCZq4K9WTnTUFmBRi7hxLOeDZDY6IoTO6WJB%2BDXEkmBELJpk%2BgfZgxKzIrw%2BLtMcgjKkqvaL6W2rcK31mTBwLv9Zi68X%2B88IhGyto2k8DqdMs%2B%2Fszu40TuJQC0H4Od4UnPXsIFkwrjpzuO0LHJJPQJ4D8cm6Xw4XsEDaC5E9CGktjSqohEvp8L3gmk4sGvcsHkuiiK2z6CTBC3hh5VehSryEwWS0tbCwyEcXDVoYn1VycuZxkJux9QiPJV8EtW%2BLfr0TSvy5bZVxMTTIpYxfxx23TCzAdh%2BaVny63gzvoLtiF%2F55ux8kMnI6dwPFjJlT%2BKCO2fEAouiC7ApRP%2FE%2FOljXUvFoUalxB6WHbnw2quz14yHdgJK8PZwdUAiqvHalYuW%2BcIF2iq0pZdHT%2BFGZEaWsyVS199L0sNX2a9UdAiThGCweYWgZBhxV%2FnsatCwQpazNEgOByAXruHQhtjZQ2BuDlEZxRC0bDT49C3%2FKfTvxA%2FrtTj1%2FlIrzaxraio8dscIrv6siHUwxf8UcXIxGbC0xdjQYwwaHSUlhrJOVihSK%2F%2FxIhlrcUP7y8F5JzBZ11F3BOgAYzeBSrIXGZYkOxHk3HycfuDfUNuUxARU0oxM%3D&ctl00%24ContentPlaceHolder1%24ddlTipoPesquisa=6&ctl00%24ContentPlaceHolder1%24txtContrato=&ctl00%24ContentPlaceHolder1%24ddlAno=2014&ctl00%24ContentPlaceHolder1%24hid_tooltip=' \
> download-output
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 362k 0 337k 100 25109 202k 15066 0:00:01 0:00:01 --:--:-- 202k
A exclamação no começo da linha é para executar um comando shell dentro do ipython notebook, da mesma forma que poderia ser feito num terminal. Adicionei as barras '' ao final das linhas para poder quebrar o comando em múltiplas linhas e assim analisar melhor os argumentos passados ao comando curl.
A parte interessante que possui as informações de qual contrato quero baixar encontra-se no argumento '--data'. Para analisar os dados enviados neste argumento, quebrei a string nos caracteres '&' para assim ver quais variáveis estavam sendo passadas:
contrato_data = '__EVENTTARGET=ctl00%24ContentPlaceHolder1%24grdContratos%24ctl02%24lnkIntegra&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=YqtsRsznyhOBgLJ37A8WP3JiAOnZmE1CRrXOWB6eahF8neX167yWwITcbldPPI3h1rAKgTmgMwByPhGOzMX2azH%2BEtwWvIBMSkpqiNPNnQ9bYCB2RUWpPsYcGCDBvegBUEuILYWN%2B7rpAGTceAQVz9U0PZEfO0R2trT9xCZGpVhRo5Z8%2BQoQtSbD5iRz3EVh1SV8%2FO%2Br9iQuGO%2FckC9GNfQvyL0AsROtcGtfUPUW0C0WZJ9gkgC8wiGyAROftj1EwyU06QFm2w9e4xtad2cdpEOqBzLbdO%2FIG5jwQjLAamRNIB2gLREGyVzxJUvhsU2UPVhzDdKBbrRyAlm2eaVNA7kwOHSmLSv8xkNBEc5SHJx8ZjIKLMs0AJSrJ7hxof7JWrdyCC1HzKv4XJOSe7%2F%2FGIhRii63LVm7hTMOvL4dv5sBMlIjDI3BGjqtfOQ54McQ2cNi%2FTFOHqjQSwnz79S%2FsC3XKPp3bP5ojDTxlUqSif1Ik68lRsHeWwRIgIWoVg8d1GW%2F%2B%2FQ%2BQk3vNBGWIey6MNovYaj%2BikbaqyfwmIdY9IdqVOixK8VHpJG2YcFIRHneEsamydI13OUnlsBMaricHNAbTtzj%2FXZocg5IB5vd0LauUmq%2BoKU8TtvAOORYkyOnUREogAlosr2MemIoG4K32cqlyMN7YbLFuLu9VTRLu6G1BjodGxdBWcWoQsCOYAvL%2F90KHmxmmaQNWE0aydvhtZltVn81%2FSBHe7qd%2FYceBFsII6YQXx%2BBT35wMNJtaBnqXbCkrQZfQLvEFrZu%2B6vIY7Q59GvbR2shj853BON3Jz8Hd4mW6dd0y88xR8FNquolmFYIUIOGNkPCAhUzfmpZM3nhJP71dKtlGSdw%2BUrkqHM4dGwj741gPRvXgY2tefqYxCihPM3QKuateq2Cc%2FlIQ6vn0MpctxMlYAl9J5zspkXB0Q41xU87wnz37s7Cqv3Fht3QfKjDYNor%2BjfZXyobsgZw60yhchAX1WxTMNzTqDWkPX%2B7ISSp5jsr2Gwk3LyGpVxTpvp%2Bh50Di1lmUkcC4IHR9LrE5rX59YEzr9hVGcjDrU4va5GuhRNxj6H%2B9mcgM2fMhRvJojzaoQHhz1JyCdhkDhZI3cR4KTF3TGorqmCVPONXtyLsqkXvgtHqHUDMrRx%2BlyfX6MLOkerG5fNF4QsGYrRETwuSAxWwK%2BnZCDHyfg6Eb8CiIyWFF91swoamLgIErlod8nKIsnD1bdTnD2418T36fTWetgINIWb1JUYhZEsK%2FkwHcDDKg%2Fa9dHFH1mYr0PH0JQeWQqoffRvmFKzOMb%2BXkmeK%2BgmalWWovrbJBqOkIj7CFbsd3PPuGrmwBqunOq1lW8rgjPO0MJ%2Fekxq4SywsdYUybUAHfuu9VQI7zT%2FALglkoKkzB6OVSy%2BgONj2Z35CAEahvXswGpL5hJ0o%2BeMshSSuwgUZ8bxOg%2FfqqzbgeTQvBEgIAiLb7LuBUkIA3CfsSTrEqblrZhHCdpDcr5OmRlUNv%2BeJ3MF1jaLts6qypSbQAc4ySfhEDZVqV1PpGw6RAtvKOg51fNkLSylPYcJdx6Y2uV%2B48cmI5d0wcmfCmNlQ2mW1Fi8Y7ziJuN2nZz9ExbLXorHX0DoYDuAkSk5nUtAJrYzzLJNbrDTXzkQNVe03dsDd2mGsaqFB7cniaOdTk%2BOkX4Lb9HpHbQkgF7vsN36WMCnItC0oCMNZBflv0KuoohaBS%2Fu95SgqQ5L2b883by9umOCH4m1l2D3%2FLS2CwkDMSlhYatR3J9kCTJ7PVO4b9tf0Wzs9TldI00vUxOGlTRm9JDA0M9ZwLaM%2FW%2FGjlC%2FWpuEYtXdIqA%2FYAjdgUBP8uHWMMrZ6ejTJxpu%2FKK4vbZdDdErXPzCUL9PI3M2WTRM00j8yEWeODdL90zlXXSEx49VspTeMQJlBHx0lAkJ%2FtB4rYUHBQ5izgoFVhTwUTn4xTwQW4YTehk%2FaWbTEBv%2B0vhxozugONu53W94hnT9NoQL3ylwDiKfb1n7jWKx2FKiKh%2BZEpY6gCacg5TUTOWFWzKU2ylp46h2bEQsR5f1Mpu4yCvMAj1IRlg2lnnTJxGsV3cRati4doCUerD22cjZt09QHiXpdRqyrUNOEDBo0gQOrmtwnrPmf55NAvw6jHonBq0yCHXKqLDOXk2jJFuiNqKmFWZVtiKE4mM%2B%2Fm%2BRy6xqF8nzcT%2Fz9WRkPxKH3UnNNnFO%2BuwrFhaVShFAdjpD%2FLa3grOBYYtC0tF9vIHjTcdliy%2BXMxZkiBLxfBOiabMQJ4eGzr11pedMZPl48FoTl4E%2BHXXxvOXldVi32W4ZLGc2Bu62DxF38ZRJlbNmbkfUOUcYtKoesVAr24W2oq4TUTi5yalN9N4I9XHFddiiFJEE9LGoVlekaoI8m22ueranQP7UqtUYIa0bSU5hET4Xe07S6gBEqqCYz25Jwa2Pyco%2FpkzDqQ9KloGgSoMW7KLYK66SzAWR8%2FnG3edo0sJjx8gzY6ap6DhDMkHJHSkb7R2Wiu%2FPwq5n1eAxq%2FUPE4Auii9FOmxeurBeNwvcxiMhCM332viQprmfB%2B3E639%2F%2FSiX89jqCMQdSzHYJ5iZrzrm%2F9s%2BXDWJ9nHhFaDg%2FQcZFpse7OE3K9uKh%2FtoqjgFVDRVe8QGlluTqDFojk2BCDKcphqkVga7AGx0PH4NwbKEcZo1dwxXUGh3b0JPaDS7k1859EOmG4MDiDly08jwj38z0VtdqLnZKZTLENmY0T6oI3NiNm7ub67LL6qGU4bfAciS7eA57BriooRu7HuM%2FjaC%2BhG39APeNaJgb%2BfsiiCVZy4J5ZNseRIwf2KJFjBhFcJMZpIhWkGBLEifpza8luq9AizMeY5w4UZmxQFMuL9qJ9i8ziIaNDdkmrS8bEO7KfZsuFUu15vT%2FIJZINYBIhJi%2FYpuBytkaWWSd1nLiskkEdGDqLXKCTxy1IGOmfwFsgubDW9yS8tpgJdMotLE%2BfnZDvFO8QU%2Fl2LVT4TluKtu4sAg4W58GZQN5qjNkdNey7CmKFpHaxXGnzAKzoY3CKjdYMh3d6bWZvMX2Q%2BNvAd5qTv4%2BU1TYF956qWKTCnb0LfYmWinuVNy2jIs79C54OIR01akwYuH6fSjDTZxCaZh%2FZiVE2hTVfomlqCYOQuypwe4sP2zOExinRtmvJ%2FKTDUQFr8vnBKitu6ZDp06mae6PARW5EeplyF68ub7fc5tzdL4ULnnL%2FF%2FXinMnseLPGFXN1l3Ry3bojP7F5zvBIEB%2F%2FniGoYg%2FSzPgsZY%2FVCcrC8LaSeBlGnMUGxFmBVF3ppp1OZEHdMdfLvm%2B3Nz%2B8iZ8wiulVxeuvFkD%2BTQF6Dnd0KVRgiaewS40PIBnRVDZHvPCXb6%2B%2BtXEt2Nl34PuGYS4Y0KznixR5%2Fa2AHNDBx85rLNuAFxd7pN9rV%2FNjB7OLxBV469At73Wx5%2BM3YcErXvvvZQBztRU%2FfPYI7zx62JFUvrSEonpHPwoCSfnHHZKcxn%2Fu3TTrgqh%2FIrlzrTwBPCgJeHwPweuDZvLY8JVGcMzmVtGBmG2bvU3vs8VBVV0qrKwBSlyNZAIty4KVwJeRT9BfeI2oJ802XIEhyt8srE7fKlV1J1CIx630dnmuxeNb7fBGBLI02zZ9mUok88SoLaKPmiO%2F%2Fs1vP8CMUvXOaQJg1JV2o8aP%2Fb8CfQlx9j%2FAzBSzniMLZBobzoPrhi%2B8pwl19fu%2FE9DEZSU9VSBknWVtaj0hlQQBbbs2UGM4SQs3HldUB4s%2BUX82e23Q0mGlhalfuLfK9yU9giEgGaLYP4Dtddv5p9ce%2B4ZU8e6kCKjkEffagkUCkMVodGJYaMbKi1jNySMKCgPMJkYKgIuk4rnD9F%2B5hWf02nVn9yunclaEKW9yaBjqknEnF4usHLSgIghGBZnYuWyec10jDd5jb5ZZ2yj2qoWYV570M%2BtXus5oQ5J3nP0m1bqYxFIWQ%2BJrrD0WaqJ0F4TzK6X0m0w8jdJKs3rPjHYMcKNWYGyFG0IK1BwPvK2Voah8wezjsBOUHQlailvbseAy03uZs3JN88Fkn8cMxAdM9qPlh8x5xH4HpY6dPNXnXbWYtU0atkNEPlwAuggQksd9Jm1VAarDFS%2Ffzu5HvdbDdYfJxjGxEDfc1DNRQpC%2B01RhHEEI3mzWMMyNMttj2dXy3wsojIv7tEccQzHOUIOd1lusTAEoRnz0QjYZIh%2Bj6RL1hxvU5ajR5gmb0dz1Z1u2GLMkuQj29WKNKNuGanq4xVLmbV7yvWFpbHaXHHQgr6zFDop2SFIB5d5u8bQ81b01yPEJYXKRKAZFKMpLv%2Bf0TFZTU%2BVFN5hE8MJu0cy%2BkMWb3OhbbFzLWjdg8OiL28N%2BHXbKTnOHSNoS%2Bn8S8AU0nqPo49VWWm1beEnHV6YhtPkbG31aDImMMbJoMMM9ygzOaxr35KeDihOCdmCqO2kPFVl%2FlUcph5QfMH59DJLTQ8YqtM3aIINdurxatUnt%2Bq2Tni9Er8kc3OZiT9I7n3fYky1WhL%2BLuvwbMPuB22txinLqZ3LKkeiVf%2BxTDh15aD%2FS4XSpNZ%2F7zC71mOXDe6De4fcTWR%2BFDVTW48geZimM%2FHfSuByMhVHlJ%2BY9lq6TRfRpV9CpJHU7RuyX5HkWRfc5xmu9eSsLfoV74TqlXfp42aF7YcTMTnGj1zs8huSxDgA4wxwjrBJo2rbn9ZrOD1369K7JLaZP%2BsEPi7Vj0QzElz5Z5rS%2BS7vB4zVWoU%2FhbpcHaSpYUOWjLkWkq7dQ%2F5Qf2MfT1e8YmQi6RRbkGGwxd55c8LvsPd%2BbGYMGlSRYlAAHnZ8iOq4jjMVLTxEEypQnlG1LxqnKwbRyTY3lejcxHAzX0PIEQtQAijB4Ne3Zf16n%2F7qPE6g0ROCyB4LL5C6PRUVIezbQiKdZzfRlNsIgaj4kgWgZAqBq8343H7W%2BefomI8OlG%2FavH0IKa7sE%2BwNlkLeVseOHq3x%2BB3C1f6rGJNOC8N5Q96i021Emk2USdp0iNoLqjuOYWYt1oYLg4ol2OrjVtoLnz5mipLvgJgjRKUxg3r1%2BsQeH2Nsa5%2Fg4DA8rUEcuHAKUS5K4YWuBk16GnQL4j1RdmGEDEVTgrN9dYTCCEytB9ncUowPXLso2BeSuDH3kwbG9tOduGCEcu2gZOwlkHzFkwG%2F05Lh2rj2xY2vrTVzVJ7yrHy3oTFjFU0YhXnY4YHnyyt7jN59HtLCk8Nqy0gi5Lh80Ya2qrV%2B4lWVcpKOND8ZVcXznEBKSR5WvXWLo%2F0EMQUkOxwIHmLOAupL6Uc3%2FYUARzJQQg197pPUjVEfbUJI%2FZ5kDlec89W%2BTR56FzycEmCXdCacX51Bq%2FDTaU8%2BTWAyHRMDH%2F%2BY0t%2FHjimHOEEaDbnOwBLc%2BXwtPKg8OGDu%2FQ0yogrVuk8vzyqlLw1NH0hQmt9mq8XFPwBylaberydMX%2BEsv5evXsaNMPg%2FtZO6FuODuFmEEFh4vF1MyrlDcH5RBlEuyX0uVcWOawIDRGq9phnbGaOVloqVYTQu3Toygk5kkj6UygxFRwG1gAr%2FIP3KDzKeMnaXvgeSP2BtHGGvJA%2BVkWHG7dn9Fh1nw50VfX4cZ8daiBPNSoH6GGPAa7S8ODBZbm5Pf2Wiot%2F11WBnXgd85h18sKM1R5bZQesg7%2B5EyaIzv6a1z965Lf9oWmZGjlsiqFXRUatEz7tlgmky2xLMIY1KpMLXtBbvGgD%2BwHE1XQdYTQ2%2BMt1j%2BdlA7lvs7dwaOQBMUlbrClVxZ7AGaLD8wI4VoLoFt3BGGsFl3ltpoKEoD6XUPhBj6ZnHk50O5OrGo4VQ9PKlUjVbx%2FIdME327%2BjNvi4jHcf7BpbCy1WZX63jJDegaCZREavMhceUTvj3X1ocpao0T%2BieZAnWZK8hxl1QmfFIdfzg6ER4xeRLtCEru%2BYuiAcLpJtmQpE3EM9OV64C7O63SfOlDleQhYva2ZLhVVPYlUF5su1CZS3UknWSEAnagLcFrPvbRpqG3D4EletRZw67GbHpjo0elBvFG75t%2B1PA1e7jD0racWckVVarj2NwwJAw6b1m9oWUrm3QiUioJMGlUbAXcoICqgq0jgzVRNZ5XjoEOB0iIy%2BqXKRTx8dIDYMWxi4hO9P8WOALZz0jgQZpc7bl9YkieIPhiS43gd9%2B8uxKWABVXy87wrlk2ymzlNSbH3ZWQH9xrktuR%2FBrOevoyNsFE1d0DuW8m8yXW%2Bm80SNShEFCzabnDl7rOJpjSxs69OMK%2Bl6Xh0LQ14NnMXWQsJmzgTvEzrmwKP6dPOit3OYgddfhBqqqKIKr%2BlNtWNHDCuw99JEJ0W%2F6R%2BDkXrYyusP9I79YWz%2FlSSjjVp91goFidZTWhnd78bHPqIVHssnb41fYdnYepb%2FeIE18qJdrxB5k2len4KP%2FjUky7hw0w4ceqkvGZgC45Lgv9yvVpQufwzIrnENMq%2Fou2DaJqOzK%2FdXP1l4WcPaxC0jsKYvo6Y8oMsDoFxWTeal3wUlON%2BUO0Hicq%2Fm%2FyIWK2Mk3LBpX6z%2FICuY9QrCQtj0gJTTrYPFxbUEh8s14bRvbvqz3RpwfNMiljHu1wLpRyupYg5BnzaOvENl%2FmlPdrnK7YI0t2I%2F7%2Fw2BsKAyUyYBOo3703k3JG1HkGAfiSeVQk%2F929asSHkdmnI7WQ9LiQEZgSJi7duqA0F5Q8WbFxNKjMKz53CkqrRNcckmwTf4X2AgIANGdnyNzwrcqHFhwx5JEyF8w8KaFao26tFzzKGGOASpW1QOAVFWb9FUDFIgbRB2uqF1DrC7Y8lfq9S0Ghk0NMY6rayysLZUa9i6DlOBBLw4aL6TVYKXEOCI1jLclFnL6INBTFUysidp6gNhdDOSu7WTW%2BUaSdFJ34W1eoneU42QXWPLNdjn%2B%2Fx9bPEtpwFeqGlxvxU4m56YZIqy5nXmwNZGqU0iU2tGHccOYHfyy4VY0SzngDRb4vBJdTA5SgGo8rGrb%2FY6gYaUXf3bBrq%2Fqq3WwYQk8PQVKyP4fpBJgdvrJXZY9ZMis7xouZ4snnsxKTNyZv9qkwF3FQyj0cbd9X61P0UU%2BQn7asiBLfMXNj%2FlyWKOP1r7thoQ5fgolqFBOB3dd4%2FdxTCko9jMZUe%2BuLKEYx7FGBmX%2F4cY9YIf5ZXfQDlEjtXpxBaIv%2FnAYpVuz2Y5vyk6nsYuzPHMacpSwVP0ovMP1kS3SKtafTi%2FjQtwqpZ1bpej%2F1xxF0kjnV29Wm9ZDWI52vb%2BoNC%2FVPDgRALJyt1W5XZN%2FeeMVsDW7YQGnWOGJ%2F%2FCSFWMWcG6x1hEXkgXiPGFDIHVQh9ESd0Jul%2F1O4GqlMsMrsmo%2BFKwfujADDtdet%2F4n%2F%2BDGpPKgLIlt2drHlcVENlXSsSRL0EQgYmQAWBoi%2B1BipedoUaT%2BR0kAKu6TubXr23K4UNKwY%2BzNN2WcEPbhG478wuBnTSMrHlZ0rqSjeNgEbH7rXqZIJrl9ooU1bJ5Kx9YBMyHIlV93GLtEfSSpa03gZS5w3bt1HWI175SKCJQsv82djzFg9qc%2FDl09pjI2%2FgxPlxsaCbAQ2dKJPUIVLJWOYZe03wZ8NOokS6bV%2FpuKjQavDQvYUkRcll9EgXaEOQnkEqNSj8%2F0eNKllRbRGa2S7o4cr2wj2mVbdNl091mnihskg1kog1SvQLoHgLYoSxvDzX8x9VMpBwvt9J5F3TJ9XXpH9socT7H6x5s7d%2FPC%2Be6mezMpdHzdyFQaWjWBGT%2FAJ2O9GLlEz%2B6xD05gPFA%2F2i%2FWbmweXLgXi08Js%2BPNegBcMHieyhPf95j2Qtsex%2B5wGMV939KwwFJr08FEjf4%2BfOMUmkklz2DPOTpAcoG1jr0P2qEN05347lbQSBfQBm3ievkxistTeFnpDiwwy1FBixgL61jJwWa0m8rPpZ%2BN77TNLZg6K5texMXHT90NJYdArcVOY5I5kaLRk4ye%2BnAfsjORfs%2BsvFGCKR00%2BIIPy5SJTWSDhI9yptjS7JiGt5CSc42jckAUwpsjjazorwNpmGEZf1Nf4Ds0kVaPDWMGtjpl7aDDQfjlMZeNIoII5kPDlhdG9qsYzHphQ75TAxZTB4ezApfSnB3Rusn2r%2Fn4oZ7Fz%2B2cKlmpdqBcFwq0A8NhYeVmN%2F3zxG3AtL6%2BwUWyHl6vLPj2ECG4anfqwdP1LQaHstdGpsSeLQTO2v6nU%2BydO%2B42F%2Br2SFTyfdAFUw7CYsqaphRPXb6ka4TRcICvG2yU4VTnNpRLx%2BdpSehWup7OHG6iUDVdfFRenx2X6fOEkq7OMGAbuxVXtiP23Tzsn6HsZU9xtS7LeoiOEYZw3%2B99I%2BctsFFBzunV%2B9JEc57UGM53fK5SlMoqUs6Eq5rxQO41fphbky4bgGtmANARuit6kkRGEa6yzQY5nONd9p1FPQ2r5tpMTsaccU6SmiVgZZ4fLLSP6IchEWiz18w%2BS%2BahVGS0ASPHqm17chnTGWhAYmVe%2FxWlewq4f7%2FInm6l0SUJmo%2B4GPitj4yq0WXlhOO%2B35Wtr7UswksaUmiX1DkIzDpgbJ18Mse0Ti5kC%2B9V6yzTZ7bf2siKr5uILIJ0oKUF8mVIE%2Bn%2Bn3HmybviX7BJdoFxyN8b8v8DKj%2BfhkxNTa27GsPBMFF898pBdeoOf1yO%2Fk0fFooQVk7LiutwFokps96dJoiA7PQ4pA644yH7ErHhCsd9O061rKvR74NKlWO3FtSxxSR6HTTFtvWR9XpjBJaVHYpVoribNoh6TlNzTimJ7B%2Bz3hnSqPP9PAgPqfM95aerafZT4Wp%2BoPR9Oruf6wjJo4aH2DFCsrO2wdcNYWWi6lCVWxU7EP59dG51M%2Fq7sQdl94tJ3S43hzXxO%2F8M2KPiWMyS90nYLSfuAkf6K1xwDTYSAkqLyvRfrCEfpyxsjU6qyUU4wKkMa8p31v92Zrl%2BbHuKy1RKzLyu52S5UZppdFA88Co6Ypo3Jaek2SYbzb1ewoJ00%2BbUCMqgzYhLgjd%2BzKFwBixBwIE5EsCOUx0Pe6CRjXj%2BiJiahDRHqlMPEwppRloG0HhDFk0y3U46EMFmuikjJsFdn%2BN80JXc1JKr8qdNGDEskITwRboWoj7U%2BKVs%2FW3N74lxI6w4MAf1TB%2F03EGLaDUkyH8ejA6MMgVZV9%2FTLPwO5n5%2FYP3EhTHGqHWMERMA41mRf5bnGiHHuY9MhaMHdHcSBUDi2reCrJGbMPVQx3DTO0e9je4Pbcx4p8sDPEf8sy3K6wjdv25QZVIdqUrKHCXEz4r%2FCd8gaMZEafYmkmiVlo80QizrtM5Ajn5IvHqeSF56XDLCTZp5jI2rjvq9%2B9M82FYbfDwMR7yIikgMuMsprm06WG%2B8hx9r8xqxs%2B4%2B6TOhpQUp6Fs1m0v%2BukLDeo7nhydpHMk%2FQQyY6nSaEdzK5Htw9NM2UV7Wjdulk99i8BfSDpxn2kxJexROEPSUoxzRl1KbayoE7kB%2Fhj4E0tXvbgo%2F86d%2FO7Mj8V2G7xJSvq4VVmt8WoWJAZXPDx172qbackxd1auE1yF7sp1PXkcGULIcqhh6cFXiWszPa3ckC40oN8ge578erc6cAgjwEHOUkVztDdDIYb4j0y4XE5FDUdL0WryUT5pEchywm46a6aFeoTIGeQGJJMNISFtUgiHm%2Bu09MY9Iow0u6Ez77T%2BfXlAFkUumqm7cegVwSeTW3HZntv9XAWG6A4Y6r4kaNML0yyFoK5w9ZU81YqsLz2VWmDd1Sc1gpBoR4eV119W6bsIXlmrxyW5P4SkJuzsa3KWK4XXwTi5YUxQSR85Is%2Fjiepgishr%2FKQacdi7TRVQoso1oMaJU27EyAmjetru3QsegMFfFAkdlrfeeiPwVjHe9oTzwEBOI3FO7BAXh7gt7Zp1XEpYAr6qxOSrvrru6vw9hxp%2B6ctp8UwEQywDn6MNYjLfBbM%2FrSfHQqy1Jg1hF6KhI8td4LuBpN94TLnLamohq1JBarKuwso55nc3jNhq4y6L6qXv%2Bknyj9UF1u%2F1H5Eu6esr%2FjKoI0ARH2%2FMu8nDVcLn6xnyRTxv9qZrMUPAX%2BCWQ9iaZv3RhyMYVS%2Fo7zntvNWij6RWUZ3pnEU%2By7rDxUv6wTKCHiRBd8CLazSMQrkqW%2BgZfDmW9sZXrvAdJU5VNLV%2FASbV17ujKDXEpiHnV3CrAWI1PzoSNKslSvZ4WeHKLYm5Bw%2FrX9%2FenpDlVYEJjoiudOgt5Dz8KiELM62%2BxWR728Gypga7krdFF%2Fbq1VlvnVNbRVNBse1MPxQJlA8LH0qnvG6fTZ%2BJkxbp0y2baS0hE%2F5lXt5SYg0UTI6sd3J9U9PFLFTmPVasP%2FLCzp8gbZb%2BJ7YjqQ2uefbwy9eTrQcmsttXgdfkCWBuHrmxZqxkYC6mT3hppfXLxhYkfS%2B55Km7vDMaZuw2p4aj5FoPCwhV0QBao5eJh5VYO4dnL%2FEs51Fm6bgqUz98Uh8yOKxTChLzvAOsKx56rZKwLk0JJy%2Fg0eWucX%2FeKdk6mCG%2BphF9LGQW6YUIhppDVLo3%2FYRSsDicwXPWG6SB1R6i1eeHasS5Iep7K%2B6mb8ztPasKNGmXTE3Fw4nrAbTZQLVpdxAJkMIcphTGh%2BkJPVzjwzQdv83Chlh07%2FGR%2B%2BMkum%2BDvARU6aAxeWaQqA6qmA0VkI2PGhFuC%2B%2F0HphmlWVnVxbTgCOa4P%2Fqr8rHsprqaf8AMZOZV%2FKVVrc6Nh0L4vpzGQcTP5sOvx2TcizR319CXvxZtbjtnJplNBBApJnRDA9Hyx0t0xHwv6BIBKsLnOwT66dGBQQDWpV4IbArT1cvP5TCWhig%2BseEP0S5%2BxN7Xre1VA3RFGlYwQQlOIRCYwTjF252srtBZoQ%2B%2BdcZ5PNiXr%2FLXSdum0qz%2BP9A90j%2ByYrTANEK0OePmVXOydU8q8ukfyL5xaYb7H2X9ZI4ehssGpo6m5avn%2FIJp5zoWODYtJkjKNMphltUkjWcY4i0y4ttjLg5cU2G%2BqzD796QTg4l9FX9gQmSooSgfjQCTEsOMtTFXfcwFZ%2FjLYnopDfk9PaBlNhYbXvWTtL2QaO7Ku5dz%2F65ZVehziiSnOVgGzUtqmlG1plZZYJsYrL4TOQD989hO2CkazSBJ7O3OiNEttzVbceLEM47iHvxObXlLBfZrbA9tSMbdVuDMuI5pYP2DKogOLmgs26kgpmKT5PBC7wZ2Q35QvfJjMdKFFgmAUrCwQczqIBnUvouNcumNIgAQoncpxb2sxGqbpiGYW9Us45sJZU1EsIIkiNANWNqEQ%2FF2Xt79eVGEUB6hJZ7Yci0fu48sCf3sSC9OmtF4YveVBHx9X9LrYg5lCi6Z8pcmD2t29HVt%2BwOG1sNYLea%2FnVPR6b3X%2FNDfYR5FH7n0Q6Sr4jrwU%2FV7j9HiIWo9dcStLR74ORhRvvsNk3yU%2Fat6mLae9DQOSZMkCfh5OhH55wduTXwDEuCm4ZlnjKmsU%2F8xifqhpAQca22Ery3ERv%2FKZUWi4HnPIhsUNx%2FG9LPgH69hWHv%2F6jte%2B%2BOsmJpaysH2fkzrq5ACaz57hSoURKCys3E2PSnmw%2Fg9MZaNO1%2BNaD%2Bce5SeOPfayOBTkyJTHbxwthC%2B9VA7zoTILnnK4zfW8uihE7UoMVmwOpn5NqdZ%2BxFPQgazrp14KOP5xfk4gaawIoCBUcDUDe8MSVAy6j2REna2U5X9uZvZ78pYw%2Bdx3wX8Xn6ABBqa9U6J4ZsYoSud4pWAyIAEEPmRNfBTisCjGxsHEB5yTCqIzOKKXI%2FWyCFovfoPuWpNJUYNDVFYHZmoLwWHWD2OnYJP8ixNI785OozdXaPBdivIYj8haMVJwoOk94Z6NEdc1k1RrIVlYebiVCs%2Flw2mJVazY%2BHkFzECqZ59r55k9yp9whfCNXUPt32OsRIzG4qBK2ht9Jx0%2BxcEVYl9C2BDDgzvwxZ6NlOr8BpEPxCgnq%2BiIXo6DW%2BDH86bJdssbZakaCTRBcmEm8lMQ2SptD9zaXFw1vRDkCgJ4CpJ%2BhXiqI%2BqihXLOU2CnPnsUkxDAEhvf9mHC5M8op4npHwp%2B8DQXeFLnF4bctkDX6WUkyAqTgs4AUoFDw0aqpmBxKL6j4poOiABwhApR2OjcRavfCuqa4IjnEzQ54BGURIlGs26tYWQOMjb1Xfe9Hg8U81jZgMQTp%2FzLQl9WbLr0IMQDqyvbFD8cSePwSOWNn0FgesrkSlGKwsI%2B55tmj%2Bpw6fGM8uWFQWOlj75Nv9OTK20kc%2BE%2F%2FH3YMXPLXoKQ7cx6h715hnZ0hfmszHkqhNXFffy6wRi595b6Xj%2B2un4%2BIMOTlkMXZwwQTMKc2a7Se9bmM7S1ZboRnnMhWEzKLLzJKSE47duvlN84EUIPna%2BjwqM44Bw3GFl%2Ft2VeZ2Am5L5cU18IJ%2Fr3Iw35eFt05WAlsiJkKFZobdSPfFB1DVfVlnk4Y22Gusky4ccfato%2F7Edh0B8ZgHZYlRg2QJJ%2Fk%2BtmUvLqFWAhsAAOBBV9Aap8DwvmnVnRIdzzW%2FKKSP7fppx1kXNTRNb0vVR7l4Aj8VXZs3pbUX3l%2FjLngOuEiY3Am4dr9U0ozhdOZENElqyKj9LNNi875ed2dynwYK2BDXl74CYZ62TT%2ByDw8pfKqTpPvZwSk89w4EbcALjz3y6G1dxq8w5gIyVhEwGDPFYqmkZOSVGBdr2vlPE3Ec%2BTKlWJ5CwzZEnlA71yjeAIu6rnTFNeY2y5NDi8d%2BwUK94w%2BSrBTcCjf2jgFizGJc4w5f%2BqKvSfwDupO8jO7jsXn2gzzw%2FaEVTv%2F9Nw16bi3Lc1DNQc5%2BN7q4d%2Foad%2B2WZd2BhmwbdlpIQMvX%2FoOK6urLVKOk%2FLVMZW%2BcZZJDnnu3HqM2lXLUczaJuNetEmClqASujdfoJHr4cDRASIATq0lJBV3WwFPnf%2B55ogmZH5jeL3pcDIEmbuujSxjwPpXJSBFUE%2FPxn97%2Fy5cIEUZAkrAKmYSVSMdu2YDdvi57UktgcZzzc54%2FrqPC11cgNF%2FWWL4yYfrzFzssH8jgftdDxriLN8Fl0p14gGU9qTCLrprx%2FBB%2Fy9OmLG8IC5Ecq%2B8WB4pVWEbhXPh4ZNT5e%2Bt5%2FkvnkiYtDujyONsriwAPbxle15HG89M7U%2FoiUk3dlHEsUqS9%2Btn3iPTHeC14MffejevASvNIuMq%2F2oI66y5req8vcFtuPw8PmYv4I8o%2Fe6qKHY0pkO8ZIibNOc8gYfjF%2BMhG2Cxq1jvlOuG2F0I%2FRpUNlwYG7yde5%2BZx1%2Fa%2FX6SQm5MYuaqFqu1zBid897nFuNxub%2FaprT9nNutc9GQqx%2Ft6sm2JM8VbyUuPoeSQYZJypSnX3wO0zW3%2F%2B6kZpBfglFICK9aEwjbOz4bYSWYkiiU7HMOXNcRg8hobA01XsUHwQKs%2BV2Mq8FZvhTFOBhGHd0mvEP%2BwVJsOT19smqoeWxGgaJtNeSwx1w%2FYh1Tmz0YFvKLhf5rT9yARvzpnEJEkc%2F1fJQV5qLPiStWxgZWAmDmX7Egnxe9anrqfm7YYATNiKhnZknEZ5J8smo9TM1IghGQEN498wrdMlahBjdDAHjW7RNQpgFVmPH5LMG92PYJ2jLoYXDnryXOl3RtSgsWRrZDcQWRQD9lXt0j3wSs7YMd1sfoF7ud0Y2rKJK6C87%2FQuXaXiT9oQrPHTwnBQuo%2FmzI7qjiLYV8USbXHwpf9deI0ExfgVDgzca1y%2Be%2BAXqi9jiYhK%2Fd4meInmm0MgB%2FUskuAoKuRoN%2B%2FBjlr488OkmGnAZqM%2BtdgbR60QuLV6MzL3gxyqxFV2jG6DGu3Gf99xcvCx0Hab7J50CbfmJ2Z9gAVwB5YxR17PTNEhMUMQHW0JLvupzvfJTpZyKptvDGio8wTVN6wljCCkzo3QcrRxCwFXVTGgRFDdyt%2FKGDOud06OWj6RYooxZAVHLLG7jcKGEBSmvN1uknNhjbD7PoLyAtan1RUfgvBl5fJGPER5IAy5Vvd9Mbir0TzVRHgQACvuCsC3kmKwor0WKfCtq4%2Ff3Gsmb6wqtek7jSDKYaAAAqQF0b4U9TqpRZHaMjN%2FqQQf2Fh1uVsq52Z2mA3F0JY6jTrQu5vzKOA82j0tybkvY5QdGKPTq1%2FUyuDY8wMbQf20OVA9CIeOpgoHXZfM8VQ58VPlM%2BWvTCUYP2dx7aYy6G%2FYFyUNvwr%2F3cUSUrZ9%2F4sjVQhu%2BHIhhQyTdkStf6JOGqgyxEW%2F8mfovo6e64jxQifLHIgDi5j5Y%2FFaCXk9EBG73%2B8Rk%2BdKwOsVSPWfRgPWjMYDjGoM3Ee36tMZ3j4d8yIoBG%2BmRm16Gf3LUhf3xp44Jg25xbENOvgYbar%2ByehGPKeeQHylC5ceBdThd40hfuu43iCVbaSIdv596xsW4FZYEac3yFgR9cjiYKNDXCn6pTyPmpB3JwOAeW9UdKKzctA6Nz5POHaSCKa3QIR98B1qIJd9qfNKRTZCnESpDQpLpFF3oxd14k2T4xZ6v5W1zH%2BqsU1L0%2FF3PYgrtg1wJe2f%2BpFobVpi5ZOS6khg9kg%2Bigc3WVE8EifvdMH3X19pjYQat5bv0ht9HjIbUWtO4Ba1bnUqIWX323VGFp4GD2n5xc%2BZphSBNXTOA6Gn0vFD84R%2FhlPeXrYChHDHqJesWbxMPHVfvxBrS%2Fx3iIWbXoMF2Jif2rEsNCdtBxyZmtKDcyqR80W8P66ZrMAxlNUlVY3TyXzPq0UVJeXm16xjLa5r8JvtzIoNVO11ag6bqEvBmnIY1FiDyqxAw89ZA7qVMv2d74AcmpQkDPlGwditMcl2XZvdEbIWpM3KI5y6ZIyn8qam%2FHuwFJ9CioPasIuswJRN7em6tz6IG15%2FzUFWM1bEVDCJnWPLTXiRenAmzTsMURfNMBfXiyXylrJbt3sZYRqkKlOA4DjuJ3kpTfU%2BFuOQTYKEUxOYfSkcyeSs9fYVjrh7JKXBTG5riCkl%2Fhm5Jr9PdtgtzVvYYMsFzddvlOiDBhVXuw2WUh3pRgRwrTOuFJtzjggFlmNWbJSi%2F2PVtY9yuOeEisqtNy1h0BL58QPfmX%2FKW5GHNqETR1amBBJ6r9IQNuHwWQ9LZoPveju8Z8B%2B3zP%2FDepdldLSakfo4sREp%2FW4HmnKlGA5yqudcDUyfumKWPcjdbHUrPnHz%2B9QBVBHPM3S3EfXFXMs36apjApkiaOHwEkkhXLkWppK3TTbJZoQZL6wRm%2F8%2BjSgEo%2FY8sxBL7%2FYoLMxIfwUT0OQNSuYamB6Pnt9LcCtWer5TRqwdWmpNZeNxaw7j5RX5W4xbm38o2h1oAASGuDT%2FL%2FQx1spdmeewTTRo0ELJExEtIPRcIQyW509qmRWtGSeY0ni3FPS8rl2ayIwl7uqEy%2Ff1uoGqcsMV3mmwvUwRBmt7Juadz8OsAimU4wJvWW5z8DVZ08QlR2Xa28gY56PIyLQVNULqvBC3BYGIx5QJQc%2BWepWRJt6Mx89DbHWv%2B8NRuDX4cYQ0KQMtco%2F5Hm1aj6rYTJMFPxVQh8G%2F4sae9JK9FSGbs1cPXVFC1hQjQGflgIGziQYfD8A1z5r%2BzwtNVHTFVBSeAZWtPP1yxE3Vn6r9e%2BaHYarFov%2F9SXgVEbIMGMdE60%2FLEu9HYNajlsU8En9Z1EZ9XgwRurB8UdbexzMbUaRF%2FIUMKVZIXIy%2FD81qREymQJwtj20h6g%2BxDZ7Ep3w5ixQt5CRIc1TJjiGX4tTfz96yNHut9PpQ5EDNSV6qQHA8t0xXnSXjnMIx4mAJbhIsR208vIhqOYDzDxMqLDFJc%2Bpck8duEubtf3vwN%2BCqhjOOJiQw8IdVBnUT0PDe2srKAVTihbXZ8HsPCPlzl0hoCT%2B%2B6aDWmPwQ1tX8lCP1yFsZ2HM%2BFU%2BI4BoUaA9Xkjr5qNq3eB2vl2nv5RodU8SuP7Z3CztkbUHnkbPBH3eemkoMsXEXiWS4JNeAc9y9TQjSr2UtFft3%2BnzxbtHkzDYPO%2BtGc8v97L7e3OnYsqRuyi9m2JftYzZ80fHhGItFsjsjqpObGvFHh%2FTqjW9NFUIOmWajNeF3XnuXAPersX2S%2BEasa6ltd5PpofQYZP4vnSW3pNotLSMpimBQWH8Y5aIqf%2FPiT5kKYGSbMhGgwNKrNSLg%2FXX4IRdcPmHUHg4hdGW4tt847KfNH%2BgRUA2lAhw%2Bjcfu1YmWcZqOaUEL4gBgMc8lq6dgKWolBv3jLMLqOXOa9YihReBRkltPn%2BEgtHLsmXpAsDotzBOK3QTcoCeIAZXHEUgZaZwyTDAoB9raz%2BNBYxZb6tvUpj5010zy9HLgDnaSJDVX9i0P83Ct7PrjGfdOSQZ4hM3NaarV4oIXe8oTzuRQozVQKTM1fVMmp0ENJQjhGIRZl8FzxWJ%2FbSEE9I5%2Fj1yb5Her1icBSwcA5hVCHsx3lFr7tPjplcE2062fpZHDKwy%2Fdywk9Bwj0mDbf29dfB0U5VALuDzAOSLucydKVWe7dYeYhE%2FlVgtwCGUqroH%2BRNhSUapsH5FjnIGw1Tx9cqLpoBYdkrvkoxiv1EpGELED01%2FoMtG5%2BQvfvoSf%2F3WK%2FhhtCsQPZuK5bkfkOa%2F47kyG8%2FsZV57QfYQNxkWPzqJeqbo%2FsCxBBiw45X2nH14BLqOEGmD1YKTsRBDRKRx3PKCd3OMLRNF1WM0VLzAwoNYHpEil46yNw9vaRr8Ba5xIYVxi3l%2FXHzJTv0YLz%2Fm7kiqSTTdIpzECUunQ%2FOU%2B3qVRC8017tqz%2BRIoT%2FAJBvlql3zPwbGIYEDViSaWnDUdcguo8Wy0yiqv80DVEpTMJsF3BQfUhrPASAdo2XCrCiJZHkxmpYr4CwUsNdjFeqcVtE5LZR8Hh%2BJBmNN%2Bt8am8%2BipT%2FOq6aoSK0I6vhHSfgZWI2rQW5S4t96Qly3raPxj5IhlPlmBzv1Pg0wVmn%2Fs%2FDXmd%2BeGNP3oxqLhVwhGcPIwUtLNKPyc%2BLnmXuNCShmbut%2BqiZPQiX8%2FFU7kLGelkccaamGFegjP3pnU3oz5q1PFalODv3ajOQPTxIW%2BxPx74kZUcZfbyCoOWVhUggMlQpINusl6y0dBWhrGnJ4JMcYcm0usZdNGduyaszcZzFu9RT24zlWGb1jII3b6pigRRF3CHwQ22nVSjXcQJ5FbhKFebczGknYdooS1TpnVEe%2F8bpx%2FWr9iMezc2yJtynE1AKP5fJBfFZxdnpryJJynItH8F2MNUrKYHbazid0OSCDZcVT0Q0KthRq85CE3TlsgrocoXOMbuZ%2FPClkrHYO2Pv3kgxtD8fVl3wrBz185wwV3QeRRS61AeiS%2BWUDIi8WU8lPZwafiAspY%2BOAAUhHs85YiL5HZYesns5j0ZR2DxSP67ty154HjrJMIgCfR4MrUhXCIt56SafJA4PFu6ZuEQ5qgxbToSjrbkqEEnFiuqFmu9I%2FjAmjjI72bN1ZqS7hUJBDwLbsP92FhP3f%2BVHg0%2FVmzZ9zePewlGYK1AVPJW%2BZ8PBskCbbU3N%2BY%2FVpQ4twgSn0JKhbwSkA6Tcyk%2BY0gR9j7q7er3P3hHJiHp00p7inLPQlsLsF%2BAUpZkTSHi43gCCUe99P2z1ZZs4n8Ypmnu9bGIfQCKhgdXkM2JNxoYE7FmV2SL4vmTBBdLCvJz8LgKqBza3dlizzC0KsMoRDgTouCAN1Rp4o18o57p5D1W%2FWp4EB5LhL98AXSTD%2BcS4ftOskCwKPMlwH8TIbe4FJl021ymGzcBNEv0tdyRSQyQgWqqjytyrAFNqWlvV0PMqsyFqMVA1ZK4F%2BnlRH7%2FsUoAVvdzfpe0xeWwSQ4xc8g%2B%2B%2BEnA5rzOLEgkIbIziaolBhlNze3Xa9zbjRUjxXs3EUXiRlfrRx8sntnoZ7CzDeSUi%2FkZ%2FsXTrtllpfAObC%2BZQrG7%2FRj9pR3tsSEutwjmJjww0N%2BoImR0bEnuISDRqJa7sYkaZLBkrPLvwq4NTjTUZBOKmNx4oq8de63LNSxVE9M9HpCkKTr%2FCp%2BUTjjTDW8CqDpZFaxLMTkrj8b%2BCIztzaB0dVA5rxfBrug9MkVb6YpYazSOYQWFmZ0MJtTh78mZxzHjaW%2BCT1UcQyooynB5wxEgTP29P1zbN8213qCu%2BfH5VXHVVIhPy6TD6m40mgahvfMNHhmWNRr3V2Ppu3jtFQoPKw%2BCy67wCBEgMLt0HEKy26LH40LjpZA6urmj%2BMXjkHX1siPzgFSasG4uglovVZ6XQIyuOXSOSkUVvtKOXklCDiyWiNX70KXYnz9M0g1LB%2FWA0jRi3Qy23LxO81XTGkdbMffnWNjat9j1MyRg6IT4s6S2NE59WjVpHo%2Bfo7jHcPtW4rnB326MJr9eqLvQPXSQV7zivVX%2FcyD2y%2FthdqW8GQ%2FIS7dhafu9pwcLNGMARmI6ViSUEd8MiEuje5aDGiC3AJoC1lfJDPtBG%2Bqm3xm3tNIqWomptbTxOHvsG2nzlUrzZSmQa2uc3ZxRX0IFtF%2FyiKosg6mrUZod7bs19b73Ot8FHNdCKJ6wUCwYlky6VRiNEDkXfiyuO%2FLcaldu5tjSBfW0tjQ35j7hCIORDkRm6hgT%2BpgJw9BhvxfSRGgRY6yaMUM3%2FOu%2BLKtjR4GPDgOQxWb5SqsCXJbnZgJ7YwnXfGo%2B9Nipz4UekJiZof%2BQqMGOPF6NMQnmAqp1hpMXgwGmIZjAlwq%2B12mavgdFVQkvXGIXaetp2TaVsWz0vZeB27WFWG0Ctccr9Ysf839w5FhYqw7LuForqyPwBRNc9JngJV7uAr60Vv9jdeqGshWJNCZWdrZzF%2FzWKp%2FqQAuedyXTyYH%2FRgAAY2gWcZXWlpIpS781WJIvfk%2Bbo4EAUI%2Fojep0S8GrTq0LnDHHWu9kFFx8W6V%2BM0OVqXVyaYj%2BhFXc790DX%2F9DlN0RgM2YRZ78tkjpF9GqNj6ZqeFb9hig5AO5PXTgDXXQ6H63vbROQ7SpjAxOh4yhIn9Khq8qMIV%2BT8GOTrYZyp8c%2Fjdw0%2BL1j2CmggHJv2OEGB8%2F4IDuB4tcELWz09qEHWw76QOA9bTTmvDmXxUUqQaJzpgaRwxjOP00gVjafWnLDcQ3BzFrEGth%2FfxmDxverwaZHu14eiKK7NKBQgZ1dWHSglA%2Byw87k7xVaADLK2La%2F%2FuuY145PjDsNK2dBVWpEF%2FqYbCEtHMFE3ooBjtCF6CX2h799wT0ZKjXKMSNmQMKLrdEBzSBFqi7uLOOz8YWGECbKg5sJbCfaiIIWlqYq2nT9nIJI15%2BSiPGSZa1PgdAJT4vktSSdgMlQ5Pl2my5rtcSXwBXtlRrzfKbctSwpOt59nBacGEevoO%2FBrOdHWMu9GgVd2qPxfKdY2HSkBELDc9xJAiEgqHiGQY%2Bj%2FoOa%2B%2BmO544S8lEY2k00yC0yMwatCp1ag9oQPEtkQuFIuxWoVuraKAitH0zeixeqDr792mU7fM0n%2FQ9G38oM%2BX9ZxTj1c%2Fk6LyI0TmtI1WWIrg41%2FcIlw7YoDfAFZfU4rTx5LTu4g49aIXXgoi19j5IDvaa8TZvMKzGeZ23Hk5zzqsoR883lpvlc%2B55ZbIu8FiI3D5LLR5Nult%2F9HlgyUe%2B7aAOCmikVB2wn%2FQfKI67GAfB26lSCab%2FP2xT7fCxOiFfeC5RvST11Wuza9oP1BOyRgyR4jkLf1nXo6%2FICBb2ChQSWXrQdFoepjQZZm1PDfJeXbQgK33fwqYVG%2BusTFmJCI9t4tA%2BZLpPWN3YGfjNJvJR0uHoQMasQ%2F2zSYTB1Ol0f7c4Pktq21aRy%2FRL%2FAUk1jatmaay5OJNeVUAVsVoQjHXSl0ULoPyI7WFLLLy83lNrnt9KlwITwA6PBvrx6BNFmYYrMNe%2FoCqRpaO7ChCbwPKgTe6NrykLIYNTW8CFPtRjeRjFaFYNnG9WL2Yy%2BbBJqm%2B%2FUH%2BX5L%2FVra5KYr4WROtt1YKCXYKrxLPlf%2BaLTQRdVjmTYhsqCsReeyJoE%2Bv3qoq0q7MfQR8MlIwfpHB7FiVsdF365Ic0Bxtz%2FoPy4BKbhp86jT7CV1evUIpFRtos%2B9%2FAK2m0b5ehDBah4hX5bVHDdAOH9ElEZVquIOfYkxHe9P48DTiayv8jKIARiEKPMV685pzvJLThYmR5FhVwU7eECyhlx5aPF27eloECZr3GUJrqc3HUhM1TIVWdqPj8%2Bl2DhScTL%2FvpKGpLfQTNW%2BaifII7b3jMDYiqZ5ky%2FMC0JvPAk1y6gB1dB5iRgbv63f5TJcKQyvDamPJ1xldqpQAvvmgSv3JgCh5vgoAH5CvgeQpudG5oWPlRT%2BmG%2B%2FhO4RHGcVkfKGSrKuqlfgq0rIFVnBuA%2BOGGp%2FyLISFTVXdwgJs7oi%2F%2BEmPiHuk2i%2BbJyUMCQYLniWIHC1LJVUFkUr7oOM45Eobqzubwcrp0bUIaSw1qcDnQVF9xdibeYrTM8nu%2BOnn3UYiDDWld9B%2BLMpVL6BKysU7EcUdKQk7aFbkTx5bq2DXchb1eDSl0O5TQl5isT0sSW9VusKr%2BInDaNaTIuyRxczDI4k0uufp3DHukOYhdiihGFiwUAnv30T5z3aSjNP13NrQbPvDtyWjD8w7pfIE%2FJSaTObJHMpnKaTTwDQUauUf3cjqNcaQh269RjOZCd1qxojX9NNrV7eEkGfCUkKbUga5pwW1qRI%2BC39YcQ35i%2ByFRnr7eI6gXQsQ91JDjJKUyJ%2F%2Fa5jJSkwf1kkR4Er5lOWJsFelHuTG1YlQNKfXw7Ahr2l3AAwg50Awc0XL7WM6yOU70cnV4y2Z8QuO%2Fab8xtgfmy0EvzCONEeRZy%2FSelZ1v2X%2BzCD3OlRQcWMjg8TTs7V%2F%2FKAZhuWgut5bb6QhM%2Fcl2EoWmbkVpk63GcVi%2BKw88FN5xGy4bOeRsWBB%2BQ3kH8ZkgCAWVrUNFwJhRDm1%2FE1AZZ9vDyJisNadTcAJ4uDxWl%2FyUyJ8TQ5EHTbYx%2BlSf3SkwFI8ett9zt%2FV82X58B6zyiuNZJ1NgiS8ahxLepXmgrwvd6fJn3yv2ezmtskeD%2BhvQ0eK%2FWEVVaemqgqjcmscGjDhcWeF7qJ32rHSHT8WeN6lsP9ujbzqzd4QVvCzIysseKVWL3xaPaWa5xvjEJ3v78kCGeLMcKAVi8NCV4CLwb3BO0cXN4lU8pucmh8s52FDCTI2A2pNfzupm3isfket3%2B8In%2Bbqi1xXNA%2Ftc31N795WrKoGMoB8JhTNmri71DQIyKvmdiDDcnx8f0VWpt%2F%2Fq8vAi34qVDXrfCEyqviJDMA%2BSyZ6AKulV8skcsmn09utPcVoBjzAnlsodJRSSFV4q1t0nLavnF2jFlSuCC7ex4mmYOkzMo93J8nKCpCiRw8UOHa7QZlK3NG5E9irdmHfJY1W3ycin2ncC9O1utCiBPxswA6F%2F7DgbviTdJV7%2FkktLcPt1jfoLYbfzNpMLtWD1m7zWyHRbUePxR0u3lMdYjRVERgtoW3hFW3xxdE9sm8GoFdi%2FVQXDKIvH6DwCNHGNtPNr0Bjlq0woGxV7ELqzwthTbdLczNVi4Z8S2Gh%2FwN%2BAxXGFwo%2FVdmV7GhXycuNHEkopweFkGiQIYylGZ9Pph3EADsSPiCK%2FZgZOGXKwBH1xwDc0agopEQaZc5N5E1tmGo%2F%2BpMzNJKeRSC%2BDlOWHgaNCrhGVwIRKVhq2wnqO6mTv%2FsW%2FwRvOdh06dUb6WZp55nvhUlzc7CK7rjZtNsMXYbrWt9kGf%2FpBe3gknyuwsz3Z5tplu8jqdNMeV0n2PMq3yBJqxb7Lbqr7YFsEsQpf2OZJQd3Z4Lpb00j4Q4iTwkh7r5%2FWrX9YVLAZocJxPnsXNehfe15Ml9vFkxPR1%2BFv%2BEBjAMi7RElhXfqOC41YVzlvW%2FguqcZtaM4Jm78rE2xR%2F35xxyzZdj0WmhCuO4njHQSc80Tb02b71L8QsyTfPzTr3pI5uKpk0L%2BHlg9%2FyKm9Vl6Jsj3XBFjjKu%2FwOS7dRcjo8uG%2FPK823uYIgB3XKOvdAWXaNAqNLGmxOCrdd2nYfLw%2FQr6k7v7%2B4hYE%2Bg4Oq1WWAo4AdhpJbj0YVPpKA2qfZ0TMqNVGGtHmaGDvZDdAAjteQqQj5z0KYOBPnmgGxP2uGQWnlk5VzCZzXNRq3wVADOBg8PyfFV8X5LOfrHvlQSTrCDF8lCRFFIpSJNT2WP8QbW%2Bf1ksKGHaENijki9Z6H2ifx5BK07S%2Bbi7%2FELIJkQ1zB%2FfkVmFXFkygjYVCBgIEAjZC%2FotVXeGObMBWTfkMjxpbkSqR19eTc5GTB%2FuUzyVQeXwp38mmoy1ya1MXfWQ16MOrFyqcLO0fclRRS2qBmSF%2BOC%2FXPbE2Q4fJoRZV6DrmMZMwt2L5OJ09KU9sf5EwkU2r7aY028Vl7eLKd8KwEozOHk2r%2FwEKHecLf%2BRRTnV3Z0L4pDSuN957MUvqCrpGVawJXenfv4vgSevOgbBEc%2Feqcrz4vYKzSdCawuTpQDl2%2FfIBlcjjsvbEvdxKLMRbT%2FOr%2FGocALGx%2B7rOIfAI%2F%2BmzGzpDXzH5TR1HpIqPfxGmCAM9t66o9CWxbTEoTpHhzaLpfDl3nDhunb%2BnCXG3Gr1p7Tm6GIQZnMXMsP4jJxu4OHLUbdlHr3ZShJtCqZRzFR7TPY56g058Lowll2zdvpv2EJ3lHQkqvjGhAKV2NzSb4NfOZnEZDEig9ZX8yJ12ki%2FeHJguF509igoaxAoOa18MvqtCZQMDg2DvgihvOVsRttjLhSi05Sr%2BaTtQpGNTVgnDKoG&__VIEWSTATEGENERATOR=878F3C61&__VIEWSTATEENCRYPTED=&__EVENTVALIDATION=FUznimFVNHRHSdNXOaMPr7RZ8NLLDOJSZlQUqdkBb5pNecNUJKqKXfDbNBw1jg%2BciqGY9Oyd6FfEHZIRIXBg6TM3433FGpr1Qxvw7jED1UdDdeTZxCZq4K9WTnTUFmBRi7hxLOeDZDY6IoTO6WJB%2BDXEkmBELJpk%2BgfZgxKzIrw%2BLtMcgjKkqvaL6W2rcK31mTBwLv9Zi68X%2B88IhGyto2k8DqdMs%2B%2Fszu40TuJQC0H4Od4UnPXsIFkwrjpzuO0LHJJPQJ4D8cm6Xw4XsEDaC5E9CGktjSqohEvp8L3gmk4sGvcsHkuiiK2z6CTBC3hh5VehSryEwWS0tbCwyEcXDVoYn1VycuZxkJux9QiPJV8EtW%2BLfr0TSvy5bZVxMTTIpYxfxx23TCzAdh%2BaVny63gzvoLtiF%2F55ux8kMnI6dwPFjJlT%2BKCO2fEAouiC7ApRP%2FE%2FOljXUvFoUalxB6WHbnw2quz14yHdgJK8PZwdUAiqvHalYuW%2BcIF2iq0pZdHT%2BFGZEaWsyVS199L0sNX2a9UdAiThGCweYWgZBhxV%2FnsatCwQpazNEgOByAXruHQhtjZQ2BuDlEZxRC0bDT49C3%2FKfTvxA%2FrtTj1%2FlIrzaxraio8dscIrv6siHUwxf8UcXIxGbC0xdjQYwwaHSUlhrJOVihSK%2F%2FxIhlrcUP7y8F5JzBZ11F3BOgAYzeBSrIXGZYkOxHk3HycfuDfUNuUxARU0oxM%3D&ctl00%24ContentPlaceHolder1%24ddlTipoPesquisa=6&ctl00%24ContentPlaceHolder1%24txtContrato=&ctl00%24ContentPlaceHolder1%24ddlAno=2014&ctl00%24ContentPlaceHolder1%24hid_tooltip='
for c in contrato_data.split('&'):
print c.split('=')[0]
__EVENTTARGET __EVENTARGUMENT __LASTFOCUS __VIEWSTATE __VIEWSTATEGENERATOR __VIEWSTATEENCRYPTED __EVENTVALIDATION ctl00%24ContentPlaceHolder1%24ddlTipoPesquisa ctl00%24ContentPlaceHolder1%24txtContrato ctl00%24ContentPlaceHolder1%24ddlAno ctl00%24ContentPlaceHolder1%24hid_tooltip
E estes são os nomes das variáveis passadas na requisição. Uma coisa que descobri é a existência das variáveis '__VIEWSTATE' e '__EVENTVALIDATION' que é utilizado pra verificar que o pedido está sendo feito a partir da página da prefeitura. Por sorte tais valores ficam dentro do HTML nas páginas de contratos.
Com isso pensei num esboço que deveria ter meu programa:
import BeautifulSoup as bs
import urllib
def get_page(request_data, page_number):
!curl 'http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx' \
-H 'Host: transparenciasp.prefeitura.sp.gov.br' \
-H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Accept-Language: en-US,en;q=0.5' \
--compressed \
-H 'Referer: http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx' \
-H 'Cookie: _ga=GA1.3.1442686364.1424207442; __utma=78404491.1442686364.1424207442.1430251643.1430251643.1; __utmz=78404491.1430251643.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); ASP.NET_SessionId=2d40gyutm4cuagi4l5azlnef' \
-H 'Connection: keep-alive' \
--data '$request_data' > 'pagina-$page_number'
def get_validation(page_number, contract_number, get_page=None):
page = bs.BeautifulSoup(open('pagina-{}'.format(page_number)))
view_state = page.find('input', {'name': '__VIEWSTATE'})['value']
event_validation = page.find('input', {'name': '__EVENTVALIDATION'})['value']
request_data = '__EVENTTARGET=ctl00%24ContentPlaceHolder1%24grdContratos%24ctl19%24lnkIntegra&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=1FTAypLS5sZrT5fSl4lTqD0VzoK94ZsfxTnIlC77%2B9kRIJWIRPf5azGlAjsl4YutnEPN0%2BPFnNQG3%2B6hG0evK46yM1y9rHrj%2FBlV9Lq8rz9MP%2FaN44SNnurYzUVuVXzCkn3Qz0MBl%2B8GeRy%2FqyZ7DwATGTtWaKe63UXacGloKMjJ9WpK%2B3LXXBQld5pb5S%2BKSHO5WaGRaRayjqGJ4PSMPOO3keiOsLDEPAaq%2BAaos5Db5SsstPu%2Fid%2FQ%2FBYzRXfRfRPXXHaTAr6covuzaYDI7kTTvwhJ43qmMvDCO7%2FF9XEBlzpbbrQ8BVh0tn4%2FjukIrBMjBiCWgE7DPJUTZ58%2FZ%2FFZagKNKxePh8lphUIrrX1j8DnfpEC4lDSvtJaFNE5r2n5rdcOB59u7N5Na9Km1g%2FWrMQyEwFBF30AxALy1yjFLucWXhsAgkZg0d9B6DXMhfQ5NIi4wc3Fs2dB6GokOvJZI%2Bf5ZM5JPf7Os7%2FVLj3O7sa4au0pV9LscOi2Nzr6ZjZ62x12%2BQwOhOd9uRrpYAnzKUqBh3zcw6eTXAGLUdNwX23spLceaMzSDJZRkIClg55Oc2ECbrph7bJNXDXgddehM3zcRdgF2axhYf2f7I6Q8DaweQEWELrggo7IWiYr7BNAxq37YKxF8yb9hVsg52txx2DDL1Xab74hl5ApJte70mskr44BAn6DmqniAeLMGcIChczdYirg9dOeIVz1UW6rkvUmaxN2roHDXY%2FJQTPFZCVkN7NpmvL7m4vTKSEfXnl%2BPLx7oQ6G%2B%2FcgW8ULKQ2XgAy8UapIFs1xUHirsCypPD5g9P1MC3i0bA%2BVxp7WdqiGlGXbNld1Pi%2FDUuiA954pPuUg1iyYNC2gqUkw7doJyhrNkxsRpH8nEq2Td3LV1rsSI8AZlKWQEpkmAGzSOwoX5cpE0dRGHNGl%2BibqVi1t1HUwx9jnmxccrCY7OD0gdbBFxkK8mUwVZowvQ5L5vv9ArnHNj4ySux6Skl%2FZQnClVZO%2BqcmEtfTRsj%2FYVAvz%2FqFtlSg4dqxvp3FllCvCuAb4zBnVkIFLndafh74wvszsZoMfz7wATf%2Bsd5U%2BPOYM6pmTU3jAXzNgGE1cQyAl%2FHCeqNGbKnEP7r%2F7cKbsAoKbZe4xIjWomNlA9lEENpoE3JTkBGfXcHWZ548I6XBysiGzalAoXKyZbQOYmTmAdb87VxinavvtnGGBelgludsppwbuz9NhOfDRkE22NAorw1LfebcN%2FMiWgwfLWwUS4Ur1QotteDlGB3XcImYo1VvUy4VevrtyncAfNOTtM3Uhhb4WMvLFLugF46rr5eqakMxivItB4LnaKjol0BrwlftoBQ7SNHeHGbK6w05%2FF5kcs8gU53WlGiozgVeayE1pEe9ag6aVF2eAqhSo29Wi%2FBDwaUwxCfU5kvvYLwr6wXmvkrq3jAJWEaCfdTQl7xyzJLg27S72Hc8vEPSjb%2BmhCoRiqShSYhlehlDpWkErlkEJkjgW2A2KV8NWYHIFNoZDRBhv65TSriFleVS6aefYclr57STuHVqm6Y%2FacQtyVP%2FwtBLobuorwmZjhBDuRQFPgEWtSvqwJdt7nc%2B2UTv0JaA2F18uUARZifvq3WtwxiKmP1LntyXI1wuY6HWG%2F5OXHy%2B%2Brtq8rSXk2pkrFpwn%2B4b2VX44%2BjHZOGe8UaMxX1hNPJWeqs7m9m3hHGSkCDZ04LSTuzxz4uQYG920AZ7hY6fL8h0WaUJTa04DmY6oNgF973AgwW3IgzBVXM8YugBdqVz6QiwstXCjHqLotP%2FmSYEnRJJJj2Yaue3JO1yvvoKF8HgxKZkeCtAT0vLpgEP2LU2sjxN1MdPrRpVKzQ4ufn4lStw3RXo8EaYGw0IGXjGEGEPeFZ8XZn3fK8rNkyhVTKlpY6OejgmwKfc2djt62pTVZMuRv3safkw2rLINzjjkFAzOS2gNdkto9DTaCQZRjCdaHCPnuIaHtbhcs5BH0mIld91uXaPwZ7eF6xhuZN%2FOLkmFSkzF4b2xnNZjNU%2Bi6Uq43U%2FF8JwguUorRgMFttMLRFzmcMTuWU0fKUdHAVoOP5FPmCNZzPMc3Uhzfe74k4%2BNZwfwkdtXlhRfy8E2Bvs0uF9IJCu0DKg7ZKWW%2B9os70BoDkkWDbxqo6RH7ACh79mIJUwnGT5wJ1jLU2CfgQwUtnMBx74GKLb5Pr45G3i4VpE7iUVOAwN6ZkryuIU7U5PCpIo6zdLMcREFZVsqAUYY%2FG5rV0%2BR1x8d4RfTUP0KYzc31r8IAPrzmw17BffWxRCWBAxehTOpgkvn6TkmH5DqN18TlEpHK6VjQwQ%2Bj3YJHoxntjgxCTKVOsNhtNF%2FrqUVIUQLlnwysSNsPbG5dsf9mlt2ljDBpkuD0M1lo6hquMjtnxucgMgmioJBp85iTMAUX4rRdmyYdaG17%2BwC8xrgB0mgH4jHM4wQqEHP5rNJLooOJjV8%2F5oA8SLmuqE1p8H016qxDLHg%2BynQCPhDvbVZJVtDGJBsUB3iby%2F5PzAt05Vj2ndr%2BXki1kNOUWIzp6IMB9QV0wWJUBuDvWr87NnGfOvYEumEqYtmZyFm8iNGKz8U7DYXIO2Z4gAFqDSuP7R9Qo852s%2FbL91OUy4GER8tQNHLP9eM7vWxyYs3wNirAWbU6FLE%2FOYBuKTDYFR9DiFuktr7jtZThoNmaFqDocGp2n3PFHCfvpUKgd%2BLCTlV9zTEBK1Ex7INDS6pVEZZkxrrHudbiIJwUKCjFx5dT8MlWhlfE3eFGtJ0i4RgEJIgoz%2B71DSRH9FMe8IObb5nOBWV6vawXJopOP2WaUui83Mv5LtAVooJMAaChQSfGgiYSvDj8L3Oe12JxgVlQ6x43II7iv1JLFoD4gfYVqwUe7bBU6%2BLlmkOoZ7SbD%2F97eZAtLwv4mroTfiu6XnyNAZuvDx24C9A5jesYoCHE8qyzEvzLdXkQqdgmYIpDg1heEitLvAQzk43vYLDN%2FdBk9PomSxi1ZGslGW1T1BNQmB%2Bh4nKH3hz3w%2B07J4yKP%2BLWPn4jIipGNwmE9PH5SaFfk%2BscGNQ770G7xcykd2f1ZHpZGUQv6AMhDumMCyS7JC%2FtlOWCEW8qtA9s0mToE5U2wh12Mr0GhspmKChoHGWnqOGpWZg3tKpN7ByaoCOfeggsFg8rPrkYhRxLdu%2BZwYeJAAceo0XvaSuaOVT%2FT7Q8sBtjwHKd%2BuG%2FRBote%2F%2FX54VaZcuTOLwqKnFblC77YpOvxp8kLRwA3pTGodBVdcauifo9Qp%2FmzrMXHbFYAOvaqd1q0umMqV8jXZM7ZbE%2BY3Y8ft6O%2Fcad3r0jNjMYK1trB3YyT3QK8xsHaBJCIWSwXRiphjE%2BNWoHjPgILglQnbScKhk2NJQ9DZHEQKq8YHMv5GGJ7wbhPH603WrM%2FM6OXjkKfh60p7l0Dq%2BBd8ywSJ6qOr%2BmJHKFBQQX1ZOME%2BOUhK0qsTudGP75qNUUAwrVNR9R5%2BoewFtN4RHw4PJCWVAa8Exe5Ifc2mQ4QbZMCfAhXf2B3Eh1buR4peaf9v7OKmGYv0NXMT77Uht6M3P1Y34EHyh9ml5Rko7BqlXpW94Bk6uRH6muFqd8nfDR%2FBHNm%2BeDnvEBkYJDhjEhNxbXMf3tdoZoY%2F6EfCP%2F7voCpWfORj2wTDiFAMBj9UswduLrNJjjN5csoUDiGE5O%2Fdh09W5o6Oz4ER2QKFpK587qr2UBfRQytSg95mtTCwPG7RNvH8G3obXSH3aUBoMaQfUisUs0dc9kycl7%2Buk0pme7JbKAgXjkS1npOfiA8lYztf9QLhX14zTEL6X6b65CVwW4s84uuuGlDa0hBsHSyztZuBfK196ML7n9MjsPyEfcZD2ImXU2SYlqQ%2FlkQaSUrarYRdq6cIyeO%2FLgk3FFyfmeWXUdwKsBGpR4gaUt%2BNzawT%2B1KCIpKTj1G8r5QpOJ4ZgVkCEL7pFNeduutn4duofbmcei1FvESM0s90SRuim0VO7brdHlCflY%2B286icBjE7LbsTo7xUW2%2Bk%2FbahPw3xlDGSTjmQD2rDdTQs1P4JbFjfkESw7QStCa0fsdOmAVvJ7NvIKCYyCEiX3kZICFNXOU9pNiRcmMUkBhHRixeg0gDqZUSif%2ByyrGF1y1W2ytzqf9ST4EcSS2CtstIjONV3E6lS3Vndc3UI6OK2oAof1T52K3JJ55DbjtZuKi6ynzAxmYbR3Jhqrm6rJ7AfCG9DQ8VZmZiiXxrSPNXtsMv%2FHrtA0VvmY7WqXGtPATWOxgJI2phYXHsIPBL5XVvc7C%2F2raLMu4POak4NWnmif7iPgAmBpqZK1%2Fqng5EYL8ffYYPqpHvoWfjicsnXhJe5OrHYiyaQCHsJmvvp7yI5EMSwkxGNLIcJKB9WoKhaZAJgjoD9bruaWe7JI7z1XAtjbmM40J0eDzCmP1Tz1MeA%2Ff0g%2BioJedy%2FI1pdsImoiYsfnx%2BfSTwFZj91FVn2H8%2FHIMKHpz%2Bjsgv%2F6Pa7mXpgOf91%2FHoUHybIaOgjkTUf7R2j5gylZteQJZm6EQypopaFBHI%2BgGQiwkaJELR%2BpCv%2BhvFAkXOub2Hi2IiOaYCKODKC42g1oqoXdAVrRmUGOhUFEmc6hn39zZa2hmgYlYdX8EAd2d7IgjwPdJ2Q%2FL%2F4MkmkKVFTdqq1lgvizeUJrQyR7JalId9XCW8cVmfTng4dV88ndYkiInoST00fKb7IEa5H3tVZM7Z2UIMlMfYfQkYUCR0IYnTfSsPqdULf7JIeE3eVRu%2B262EMERSVV8QwxnKrFHmSHHvr63L4RcTrKnRQdq6LmT4w6KitNBmh%2BAH5wtG49sBhSmCuJgT3VB%2BxK6pdRa7t0j75NyOyOSmbONmsUDaRLyNaHeFk32zK5%2FzPJmvs%2FDuSjlnL0k%2FunLvTIvvDdwMS1kW4SXYqoPJ5mmg%2FxioXAfFliASLbXVen7D56llSRNqxDLKpybNC%2FYiVxwF1yrtTj%2F5zPbJ58DwNrZ5W9kvOfjPBPCOyWHKlFhG5O7b4Tri27L3a07c05vVyfBJlQvWWYZ%2F1BN1%2FHtiFfCIcFjjcGjV%2FlX7GRYXjFkn%2BY8a9KDEKsAJ92xeRZN0zR3%2FNNIQob0j7GAV7OkvgAN53L6SmlFdFop6sGM26tYAXrZ%2BJt8mOZrIpUXBWMjMrOeV32w15J8UOI270%2BWIvjays7vLmURhgE9U4Jxr2dRz9FWhLlRpWIyAA4hL5DdML4LFVRk2zQ9BME1WwSiNosSqZGaLOxUWhMexmpFJD80Jz9HaD9zZ8tTEo%2FMOjSR6LDzlRsf3QzHD6RbsxeQiY5p1ZqkSm84ZovIPEz3Ntav9a2PNo%2BUTv%2BJQXrk4JPp2cvyQhuwWtV7AOEP8asZA5KBjqP86FFr1dYljrDuX9z%2F8I7XahPta9galZP7Hlwoz4Ro5sVIZ56olVBswd5lj3P661sOSUIe1IxMyUKFaZqctgxr0BrVbVlx0tKs1eRJV5SIC9pcyhK8z75Smwu1sj96DhJJF5qDnu9YEb5hxEBh4JMliSppvrrAoH4vMMQ9QWetnT8dg0oHGuiO9L2LWplruJSn%2BKYphyoQSHEJNAtP9XCuiRaEknU5Q%2BDU5X7sGI33a8MEx8azYmkv99jn6nZJR9rZ0SRt6Mm%2Fze7OhjpO3csOYZ2Vgegu%2FeTuL4fTJFbaah5bXiNhvTAm4y8Ro9vOKdnLYYBS15pb8NiO%2FBUPPoZkSDHl2z4jGvSu9v3Ky4jUhOAieUD9FZ65BHklxDvrvDaJgmdowzR6hybbW7FkVGy3Mb1pqxIVXcDSKPUY6lNNIlbu%2BbcpiLlyhOtigSrb%2BPOfPEs3Pzug8DHSrDW%2BXmIEZkX9odW0GycYf8qO3xSPlAmEWXTRnzNfToiQqg7FIMWpQ93G%2FH0Gj%2FiENX4Pzr0KzBhgxjowDiQ%2F4ctmXlsqXSeFzBPb5taqFwoDuJggRC2n5aK%2FLgCHHkAL9jrPOisEjnxYxU7JjstSkUUUXwYnuPpsLryhH0CW15Ws3cmJUl3%2BmQ4NZ8rvEVxQt6%2BdhEIn0RLy4EuMQonHt2sQH%2FXVvYlwJaMVK4qGaIroL59CjrcL%2FnNX6ekitESC3tZOQXSgMcYaoMKZrL2xsxNRFoQYIxRHwTwO7KRYbj8LyDjCWP4xSQ2SkLHWGDr21JoaZ4nMB%2FDexyKd%2FBLFwjyil0gnuxS3VUFfFO24kLxsgWDYZQ8F9zw6gaMHheatoGStPLSorjEXhn9MvdDTjMZ8fXm7cG7NeLvsp8sISbpRCC0jk4nMYiweu1esNXgLFOFG5CNgUpfdsN4CRqDca2%2BL8X0w6coddYqwtQyrLBdFQ5O9ccOA7oKcWgl5SrY5BMFEzXc0iSW1Z%2BxWZ0c4YLjkRXMv7awC9HakIFHZJUdtXO4kBVUQ8OVlXmx9NPHIStmUb8Jca2w2q%2Bn%2B6Ublhw24uRbDtXdersT0WUbNg9ZAB%2BN%2Bqe0YAEt4DNtAuKSU3XbvNfzL6yTwo72zHVzBssxaU7ZQtxctW2HfdE%2F7sR1GAIUm5RS8%2FPABpVzH7MQNnVl1dipS3NaBbVeQian7kyklMd7hydKbjyY5X779mwYo4%2FAEWS2GL39YzaoTBdZXYnWtMWTu8IR6zyOEq8734zJdwKvXjqxBlaAmL0k7iiqBO5cDE9WuvVZHgaIcZm23on%2FQQuIqL9MLx7zMb1Nsw%2FAeaq%2BWVyvxWDh4US2IwdACI%2FSRw3oQUDb2YQ%2B9EW%2Fpb0wwfnzaYT18f3X401g6uO16GFHRimw%2F3wM8F2QfADcgMZuzaFX82OgLy0WwSefPE4X%2Fyx8XP487xAUgCny59e73mn%2BjVk6NxvJJbKN0m38XlLYi%2BZZkF%2FOcK2xJLgbinUKSymkZx3rPxWfOwt1cHEIIYx%2BB284RDmbPvzJCwgW%2BjvkIcf8yZhGsmiSaGUdKpJ53T%2FBgfskCFawCnh2A8wHGgXf2AaEqokptQ7lgBBU4T%2FCAK5VtgmB4JWKbYd5XJIQiIeqoRTnwPG%2B%2BHOe85Op8t7vXV7tYahcKvpdDMMiMdoxuDAe%2BpBnaHEo9DOZabFBawiqldl2tj9aB%2BKjbzdBqzfrz8c9Yakeb2gUzhUIeiPEc1ESdgovYYNxk0sehOBSjHOg1%2BGx52otyzJbhZ3OvMiAQWHkQUM1ZdnKeT6WwuLlWokNp32sVbtDQKr8NevPoAbylxAOrNnCFazk30RDWOBb7YXVaaCj9wajM%2BS9zs5KqC6xKsOU6D89sbHHnFjSx2cmSL3YalODy0upgXEKQRbEfnR9r9lKufHSK7OCOGnf4YMAZq5aAHY0nFTgZR75vjsbA%2B2YuDOuztf5i%2Fl%2B80EtYMAZ51nDApWUIgygpHMO3JoTRvkDFzSQfR58Lomtmyu9aEaDhNdcyoWvkI6gGyomVb3RXJCiW%2FmFcyd4WLDizX5m2qmwBury6y1bdjq8d01Rmh%2FXL%2BXA%2B0aQKoPjwPCTWMLAs2Kfk58CUCFNyJQVVCl0%2B6QS5gREpiamav1XwjWHScYmD2OtszXTV%2FXHUPMwZPXb%2FrAE40Z8yHHljC9tKLSpr1AEpU%2FxNSDlpP%2B1%2BqI8IXDxWXBUY8NPc6rU838vhjuQhso%2FL6BzYIpKbVA%2BvXHyiFHDyS1HOkTSeFU2EIIar4pMqN3krNKDQY%2BZs5Fxzb6fraj26wfylyR6AUP5Tm93rIMI3VcJioo8eBGQx9lYqg03y%2FJb6Zg7XQayHR1cc24wm2lCZJ3oOY5FIlKyhm%2F081QC1IGl97zvJ1jENx%2BNbNHEprlLOdwOyOTFdD%2F3efaY%2BzZU8Hi8%2FSU0kKsMp%2FlRpy97wKWdFW4qPbZO7g9H7%2F%2Faent6lESi6zx9wk77kZ1en4SnKQ5Sq0Xc2IKPVbmlxyEgQRXDy9xs6dnmWloRVzKSizpPjdlGP2%2FCTCKQEtDAjqofZ9PNvwOGpG3OFOpenVnDOmmSuTpJBom1EI6T%2BBGFPbHSJQJoHtlr5OsTBI0Yvv1%2F0NnowYI8ttcvWBAQ6k5OABofYKS5r1MoFNbhAKbq15vat1H%2FYD%2FO7MKq7hyKBwDOwf9vpc8tsQzFuKYjzG3df6Kapo8ulluOhCpjIOUd1kacXBHdTo5uZrsPrlvCHQaOFBIjCl6CGMyAK8j1%2BKE2ToTvcizvMx%2FvGWsMBlwTNyr7oseuMChqUH2vwu371oa9h%2FhRaL1TtaO%2BcJVy418v2znyCkZjBCc1TevBIp3GPLorw3HnBONEisk6VWyhOMKI3mmwd8FKCPao910Zo9w4JDYJEWdb4pnYn7ZEXCYhgtuWi0ohRb6R5aTyGMsBvJVKaFGkkH0XBLWwoDtnXrh%2BnEM6o08eJxN%2Bc4ClA7kp6rtGiceIuvPaMr2E9js8h624whaox7IRYxYg%2Bgb0INS7uMpJAWOVUlQcWOvNb8f%2F%2BggRU88I1t5o7R%2BZUgGFUwzQdFe8RpjgrXm4Nr0Qn9O%2FSREtCoQlV9V%2FFg1ftsY22OsF3XnHRdxCkwK8fwAllavBiLt9gtjUPc9qaDUdfPFLEiKYx5Pbj877yt64I2F0kEFZkRy%2BCMfeGEM%2FdzJhiXMHZk6VxUTBiDZbDtXOhyBJnb1YVISLnn4X7ZRdumw3TF14MTifH4HkcKIi2NxLKuEslMrXarelYYgRFj%2F61HERkcD81R8v7sYDLlzk%2F%2BGSm%2BicVVp2Ld%2Bl66Q0hdycWRLo%2FhUVJrtBI3WXid5e9Hq2vQWl94vt2JgMmqBU7Vl03gxs4tCvwHvW4%2BnOxopY3KNcDXE7DSxfsd76vO8qrK9h%2B3UesqqD0%2F2bBTAwMjagAtEh%2FHyJsqBpylu4Xksx%2BPAZHhtnhcoMhHwJH5o6Vzgkdo5U6iwKGXF%2FnrH9lshssTTh%2FhkP7SBzC1rTIbvq5U12%2FgqfWTSMXOxhOGesaeP2hTg2xnTInDjc3NXnvsiAR7kVKeIJNYKdQvfnlEYjiTTAMmkJRq4e7Yd8blAFtIZ6vWyldSUdOmXQqH6IGfI29HbnO%2F2te54UQ0CHL6huRW6WAwgFKOuaShZT%2FRi6EYACtX0OrW4iYFZHAkCxepHEruo5V2%2FbTfNjkinn%2F6WKBRKKR6vnAekg1ZUtUDvKL4SC49xUywkw7CqQrgjw%2FVXmn0%2B5QEUF4UC4Yl3EvcJK%2FlQb1kTa36jGfHJJVqD3AdVItwzLijEF5%2BLjdIm7clQV%2B5MfMhZQWipxHKsigvK24xRYLdz34f%2BUGYR7MpJIj%2BC0r6ajpY50vEzNNW4Csz%2F1DSBkjPxoTUAKZeMcbxW%2FQREFNj8ROgdAsC2KDce9N5JKrpueASBxBRmeMx8HaPkF15A7bimx8pQoxITZJtm41Z7SGvgXGpGQZx9ojfKiiDdnl6UQDX0jBnuOwVFhIHzMoX2Kz8LkUC6GigfghGR%2FnpbD3lSvcQfzOP3LBM0H%2BXNHthDh43jgk5%2B2jEVSsjWo9M8iwVeacfkpK65TNtVmPaH9fETXQM6dnkbqW8wUbFbMqnzDmVbXC2XvoTKOqRaKnOEY%2BCokoDXKY%2BFlJeMwVhv14uu4lwPpsQqTDXPLsEc41lb%2F8HFxkV3bY5sQKAbDIVIZUAxj9oWp5%2BLp3Vp9I%2BGBzqFV%2FzdRmGo2X7ueV16RZpV484PRX669KpJmQUAf9QHYLiHlMNFjnL%2Fr5%2Bs1k71sX%2B1fOYwh9wrJQrNbYfyHqKPX4sfe1L758TGum63C4amOjFElSr%2BAOeJI%2Bh0PSVechGDqYZFup%2FkjCer28VERvc%2F%2BkfPSd%2FKG4T0bdlH0UiTIh%2BbvRhjxxAYUkmmNHaDVIYHWmQUfnesGFy8Ch8oHBX%2FFfQ7NoCmmwcR3BhWPpJ4hmk48gpOn9G%2Br5HN%2B7yMRH8sk6W6XBA0EBDpvb99hAYh7ZrXHlir0ahZvTof%2FKJL7dF6Z1RitrW3Lmb184l3yvt27ELhJ41xSEQqwJ2pmRWYSU0TIFWTxo1fQmvNFQgHQE7xoJ1vJp6b4dK7TIqThzuZ0fLB740CYhuMmET9ZoGdUfOpm%2FjklPrENX5JYNF3B2BI9CV1hGYhoqjVVYRzCXefaIMGwkIGEvJWOGJbS5EYjCynD%2FxaRFDf56Vr1FXVeD9Lv8WEBgW439lwN7nWECRs2NXJr1FK6ijeF3EKNqZFdGxJN%2BkwwFjNXX0piMU%2BULsbFbMAAVPD00ZadjWM9XuIH9kykgTnHmyloWafvwHedDlyhlSKPEgsJKm8167DPpSe7P4PS%2Be0LTwFta%2BwTyYzqAR5FCMWEvKLI3l5kX6ciNFyeGMm8F9l%2FpS9jTsb2rvMsKPL7CpEcsWWfASVU0%2BJ0Xq3bdXD8XAGz6VdNwCWCKScPijSr9nxs8UWdjyzVnqTzrw0THjrq4LnRrpOQnO86aSLdFa71oKeR2NIBh9uYJPyDQgghzp50eE869zae%2B5%2BxGQE4PcThC%2FPNbruXwG%2FyCWpELgGe%2B0X8XhAR7WdgXaXC%2B64DAZNqRPTwEs%2BQcbel7kGaud%2FwrXzY5mZ1eJXMdWac9GuKgVgke5ryQQ1JQIM3GRk281lho%2FKdk%2FyR16nfyPXkpgrghxNYr5eqRiNxTWMDl475148gtKVBVPG1TRYBWNEAKGA4uHUm3Pi27DlLf%2FrYOrhs41nw4%2B6Bplf0kcSZ43YY07N%2FKdKiIoMSPqY7klY52PuDHgFiKROx52MnjNPx9dvG81CtEHnDMIXzTPMqSrPL6ExbKHt6sEbCiXeeoTaVsmCTy9%2FhmhNv0nNo0%2FJdGeXjD5XgmcK4CExKAL2ZuboFwSkhziKTnppLvoK1x6Ulq%2BeuiEh%2BSPZ9lupvNnPvoc6sTF%2FlMGsWjGU%2BIHsJ6POhZhbcwRV3JAGNfj0ZoA%2BfudHYNiVQzh885D3OLqpW9fPBLOVthl7isv0%2FzqfK6T5ObzJW1u4zN8MmnlbmWAe3W1zTHEZRSkaK3bArTtVtqHIhD4hlSUY%2ByUFbDRZPf43ThXEDcuvdY6HjHKZ6XitINt6pCWP%2FMV8It2xE%2F0gQX01jJodIr8mcbiiL978BL61MW5EIXydaQPRv2NhoiB5My4EhBag17PWil2IV3LAO1eEGawVFEzvtbvW68LdCEvzRN7VphFld2miwDKXfj1giDys6GENOmoQn8ymrjeb7Ziw0pAYr84EO8oG9e4Imw%2Fdky2sAIAhuUwEMGMvbtlv5yH0fGPKQsgXuwjGv%2FrnkdybirC%2FAYBO%2BRhRnC3ZfP6VCLKaRWVL6iHmas9FqVWj4q0JxX9HNtN3ENLdnqoJS%2BV5%2BiCtez2OpYI4oQ83OXPy27uaM91GSMgslpLY1mccroEKWUVzVCBYnWFYuohkEzEUa3DtWCN2Btbeeb4vt6KVTnJOlWblBbcfExhPJPA1Reczdbh2KrVxiydu%2FNTFaZZ02TPIotHG8C055EUnQe%2F8FO9rhDxWcl6R3%2FO8ZnOM6cE3uCg9uI0ghyPTZ1FEP%2BKlB0flhqD4W0OaHweWKu6go9T8gmeppE0%2FTV0mv5vUxatTH%2BGQd0Zk%2BZWZ%2BZaFFgakSqLJsTSDIT%2BGXqE0txpuUI7FjA2J0W3NxDsFKVWJewujObLt3ofeKoCfLm4bPAwqqtduo1YOW7vwjQCoPqhD6cRGqs8mr30ikKUyTPHKaTHy8h7qRa%2Bi02L5ZMPjxb3%2BkqlMopmgcdKgrbCTP8KSeZbYeXVsQmYrjgTP8fQWN4DYdklqkMkR4NxFGi4c8SIA%2B1ddpdqla0Q5xqUf3YhUrZIUOOb%2Bdv5H4eW8Yxp6c3oTaiE25qxAJvLSownigVrBzN05%2B8SiSDmOMDhL29UiSilm6bNNQAGoss8gFT%2FBkNvGOdk4ZiclXhxDoc6WFUjmCIaI4C8hlUGxPwegNMrxJgfGB%2BfSNrOyqiuZ0VkQNFrreWvNHoLJEbK9KjxyOPlNPccFT3QDRxaz4GLryR14hz%2BQaNN%2FgO1ngFsN%2BPnrA3ZaQLpEEj2fbQ5tf%2BkYDYJbFFDCv1U9xzhJINeormulJN3qFrqVyHL5Pl7LxrQw6uKOWzwH5CrxMBKvKNXzlbfbppDnxgd27ePfLo30hAJADd0fhqQys73XWEyPAJstPK%2B0GaMSp9DV08RIt1rKOnIRsR55Rh%2FzuzSUqMbs5%2Bdb3%2F57NZmUdGufl3OQ1yQqSdttC%2BESLN%2Ffxkf5Jk8MHZqABbLWPT%2BQME6o4CTZolC5SlJ757VECkoNkbWyR6hV5bGNo09pzP7UAT6Qif14Rk1bnK%2BykWC4JjDMQ5gR3qLf%2BmiTSL9zttJmpUrENh0c5gmN8Cb%2BxYsbGBZ%2BIyjGRitfem%2Fy3bn%2BfxGD7d0LloDiCq7Zd4im%2FDjRozSegEYccH22KNFq%2BennZCFMfqzfBBCMvfWE1Z8MOMUhRDZTrc9cenMi%2BUCbdpldsXUpWBOAPxG7e55U9GXJedEk6sVsBI%2FAtS503A72LnAN%2Fl6IYT78FwigZYcrIZHSGJORx0m3BTZJH%2B%2BG0ihgXXpjz8jf6uoN9mBEXa65xp4b82cwfzPTnzuNDMNfhPgJ23yg4C%2Bnbwy2AilcPTniZnELNQyCoW8KCL36QQ%2FJUbD07xKlKmQJDrrmRz8j8PobXLQexkMzdJLxjsfpeos%2BZUB9fSCCKobdzMqdfg7RcIJHpsVoW1yPCT%2BCAGVVGANJIZucrDvlcKrQfdtUw88qRqZX%2BEA2IqrsKrGsmx18ryPpu%2F8A59D%2F3ENd2xTi%2Fz32N8rUwjQzWBEbDs7zpdcgnk64Ho0sj2JsrmyenDEinspeqUHA0hjuSJO9u4WhPNZagy60Nr7mK%2FE5%2BCYGbJNmk0rlTNp8GkTFvQc8uJiBlAnBaK5aFZKOZr0QheSTmiVsS8BwNGOjU9IpXzBzSEpGcB4CcvQ%2Bo53LIDCXMd4nUqzcuI%2BN0IA6iSe4X03O8UdqqyhdV6syrSBsu7jSI%2BLPWGldJX1ZDuJzprWUT3IayG%2FSDTI9hVNC5wz26mxpkaoDs6E6kpzOSJxF4WbKVG6hPdSYT99yuHyqTgPyOej0H573ubEeOwAeMmOAwPvVZLxwyvtnoBZzg2OO%2Fq9yCe15xm%2Bdez2yMbZHpOTyw%2BOdbNxfm5dGUhUEiXLLUlEqn6KbIteiRLj24VqclxtFgWmr1j4P8kw2GtLsr9iSKKnPlZR2B0e4TTNKGQkTz42rfDnFRh6Wxk3%2Fln%2BS6V4Lj4LCOXu2QwdWmhZpXlBGI%2Ft9yH%2BXE9skWqY8btZzpplaMEHbVwr8CC%2BpNTHQ8MXBNSSAHmzms5BoMEJ6u2wzHKRum3dsFG%2FUF5Fd78sKJCCfAV91ds%2Fng9RJ%2Bx%2FPaSHKma49hPzUKPHDN1LIG%2BAL%2BZ1TMCsrU4gALoWNT54eaZ%2BtdLmdXw2jtypR0bF4OjegxqY1%2BrxQP1QzHp1ZKqWk95p49ZRvbbgyYN8bXJICxrHbrHza5ljls11ziSgiUGKk84PbBwCKmcf1%2Fai0iNPQ9Rt3028CxMjWr%2FpgiBSMLS5CtaBKmEKefx7D8Y5pEFXZxGNK8lOn9OWlvr%2BXFdzPG74C8CLrHADVhPSBeLW38Dw8BWMgMr5VvdteWAQ6Ri4758XsGXWJ%2FKXWIc80IZmISnuCqpOcw6%2FuEE5QkRdqoV10Ol29eFRhHsO80tPqeP%2B2pNZJB%2BoPvHCEMF6kotIH5KHTL8v4%2BoNf84e2tY9bO%2BpfrZ5qV6mZ%2BVYHubOT2ASiBkAo8v%2F7QXI%2FM2U0a1ppF%2BTmEsosUj1kiYAAPJvtS3oZN4YsP7D%2BfmqsCiU7pdfnTn63p8fJYKJ%2BnyyeFztj7XVWmpwO0HhLOmJuYQEmR0IGSjgWlEM40y5nOdA0u1qc1LFTgOzJ%2FJCvjQy1n3TLE5fjPej490I5lV6zD6ftygbJUHK4oo7Miuunq9FT3yNZ3yfPw5tMnsnU6ns7Z6V3Sd%2F0fgiCNd31uKMRjKA03DLggBxpl67tY%2FUcfqip4LmiYDhQndhYJDIrB5HV22JZKgXWTfvi4GXHJrnaGY1ZWdVnPtu14ilUFlJZi1UxW1NftS99XILtqPxHs3meIOUhm3AVn9NUjHUh9XFuFDqHF6z1QMeGlCIJSArBjjaFjKYbJseMe9X22oVXTWj%2F1PHkgDBWPfknGc5tWxIE0qBK7Ig%2BUez5lt%2FPIxMWR0U2kElMI7cN1OHHfobpNBnIJc9xw0E%2FbG1f9LJNa3UejLtGZ%2BKi1wiH%2F5AiQlnwVG3UkMi%2FNujx46Ubylho6ArQpNnQYSHmN9%2FMjoWB3qG1yfephO4CCkN7URwqnZSXJZAqBRmHNG25262Wm0rsrTo6AeKjj06c%2BGztU3NC5qlrtS0n6dBBkJIW5iXtdFdmDLorkO%2BstCt2Um5aBofxvu2%2BQgioUFG%2BLvETghRiv3k3Npw6sXDUX7D3xkAnaxqfzQM6Agj5TOGZiDOf3Ywh%2Bjp7G6wDz%2FFB0DGoDKg4P%2BMPfZDETlfRbKoUVhOStVbiqP4wCwjW%2BoM2jXzscdBmIuwTahR%2F2rnpGf1t%2BJdJR%2BGUKx1Y25eoajEbDdVntcErFbxC45vDv7VG9KmqjwGEkpAtQVLAGh63zYBUKGj%2F%2BhGyzx9nmr5%2FeH15AYnCuOyYEzj6%2FhYxgWJL%2B5ejYmyI2efIBs7jQtgkEex4MFs1Q0x22qqH55xGVj3IaVeqA%2FMuyMahxRKhpn6f%2BnmwQIs%2Bp7cAsiiGyZ7XXoR1Ts0RuP3jTTI00njFi9tfNVzXct7TBiP6f5PRFtFZgwtOsfDFF49qdfbW3xZhRLSXn%2FQ8YvPTQROk%2BuAi1F5m6clWOQTlsPhbL0at9nHwajpWC1DSgXs5Iky1sL1SyifWs8uiFGqKr3vMeIUCR61zsp2dEpy937PdK5bWHs%2FXGhDVAgJhX7L9UWy5IIMalIHMrBZa0gfgNdS0Dq0K3rlcjYZrWGI0ZZ8yf1MUCVSMx75EGgpHLKVRXcRoZFTDp3Kk1%2BtxyDJYF5bjfATSjbavSpeJCGH8kJ05lWZalsQCkcgvQLYuZVdLOlG5yl%2FgaeR18v7XUY1P7tGRLDG%2F6A7Inm7EhQf6JKIHViKy0ZTjnz%2BT%2FS%2BzluG1YoDtlSTiEvfjfSdsbvJ4xXqunb5kixqfm6n93IppSov450jooUs46IEfmQB0Y5quYypzK0cNxkXKZ7lav%2FNG%2F7%2F%2FhVzr%2BeRUmRI5VAxvvhxyYJFm34NgaXbZPeH6PbU01NSy8JHPp9giWWaFVXmwrCYFOL%2Bvt3hHqXa2AlJ6BvpVC4weQoBzpeAHIoK2ygYCMaeaWM9d6EMbXGTf0%2B0EKuNjxTcr9arTkqo%2FYwnSt2kp6HLPOebtKMY6LRdJHIre178aEGHRxoUOhGsATmKcumHdMiQAuSfEeNFzoMcHoNwXw2Vy1ISXGXGt0inor9wr29Lp0FQ7921D5zMmzYcoK%2FgJ9abnuBq76VaWHwcuJEvVPU463sUMopvAZ24FhxEPsXpID%2FLDfKEiBFrJfJjAQlxuZ%2FwLjuR0WRCcKZhMlQITnK%2FfkrLp%2FeLj2VVE2Bjkn%2BRnJfd5hL4a8LzdQ41eEBnwVsZvIyjsujAJ8qziUjTwfTVqV1ot%2FKaDU53h9OyZHkrem53qKnUFmCJ9HwRgXQE33Fn1fpYXrYWDrcu8B7grq28YXMSfsCvvgZaqmBPx2md7MN9QCxAiuNjI1KdhaJmCmhDXf2qPQBSJXA8O6T31KxE1HfAKxBgLlQnXL8Ea6ARKZOp25AeRYh91kyqwecnTpIjpkL6jkNfikD8LOIF7iol3ZWMxiNnAlfscugXMIZJnyLmFfyQvsfkbNi3pGTikAtLuH%2BJz%2BEuzT297B%2FdTl2yvlXA%2F%2BYYgwRKQzd%2FLrOtGCo%2FAtFzjbnHihGf2Vl7Uk0rCWSrvzkYIlqHHCulgd3t1d6Y37NHV%2BwtSRI120avSzD%2BnOyYEHtoZ23HP2qjwD1wSFhIHk49O3X6SNTmrMytALImwTvYBEWA2zVSpW06e6ih%2BY5qZMrekfgxf6jWe8plE4ZNLECAo2XHJS3MFBPKm1c1QXhFEht9sR%2B%2FRbM1acRcpmMwgxsy91wSOrmp2NTnPiuJ%2Bd6E8yXjA%2FOC22AaRqHQx2Cij2ndjZJpEmulXX2vP8BQin%2F56mv8eZrUfjL64z6vPE5UdTHw3H89U4uPq9089t9YIf2CfgwqqCekOzIHvBIGFz5uo7Nn0iaEkJlN6ueUcjZss2du1C5uUTujlEy6zRWet5wuLr0i6DC%2Fs%2FeJ8yZMSqjjNnKkMTp57Wm%2FGZpitRRSSomF%2BmpnaDVFrRH5pqiQRK%2BZhoSHQbLqiBwJvp4vDjVA21ruh1YSgxBPpPiwviie0vN3vCZSNw%2F3r2lx3AQ4cibA3tloN3GfXnoShhpH4%2F4v4fZcNaqxPzw9WZPo%2F8e8iLXgBV380AZ08SrZMyym2P%2B6bBeP%2BVFWCQr28%2BPMuBCPxz9PCMuUcZlJf4%2FCBHt6Lyb6vGzAF7MNOdEglPnVicVhlkaTIHS9ggELkLNgCr2c%2BA8y1PvvqjvBnIKBw44TMm3JsFfAVn2o4g5uvvN1gvSymcJxQe6ivdxkEAwjZWPwpnQGlKmC5JQKDTZXukHy7XJynhCSfp6asrTkz77W4RmhTn2HxkGO4BIIAvtuyrtnShiSWd4TeD%2Fc3Ay0w06USUjf5%2BZ8wwgj6J089M%2FmnuAoSf1MbHyspyce5Pmk241KLE8J9w6s4GWl%2BsqiR5pHyJoJvqa9QY27YF3ZOjL13Dwx5kjKHpVA7E2RK1S1sp3xXmatPBY5t3%2F0HioyWBMV3EtYilGwVGzfYqvTlCG0Rtk2EL1CSGVUvqVwqnx18l9lgpa%2FFy7urQHoB4NrF0zUFiJ15zrY29KcxRTBsjjzkejCYOFl7fwqhOZZ4SEPdAN9E7da98Z3BOWXyJQ%2Frp9wktiMj9wXXPiAPnEJRYOYMMokla%2FUGJ8j9DMCHSXX02qnQ7md61%2FKS4FCZpVtBjUxscPtX05Owu5ZeR7XGh2gGJjY5iIjHqwF6ruGsVLFb7zrT4wv%2Fdsrz2GrA0qC1XPKf2plZUl1KjKIgCJsEGsrGS3DmNm7RCk9CO63kcSov8C9n9hekEmnsXwX%2FbCjIUXgjILe58OiQT05cVBOZNkQRmPkxUF5wWSO6XYIr4J%2FbN%2Fpp5THcs7HkJcjQjpNsQ0MVWrIPpqU2bSahn4wWwWt2Amp06nx0HpIEE1GEv1UqFttDNj6mouDWHIVtGGGZ3k6OrzeqZcVv5WFzB2GBYDHHVGU2CfOPKBEjgiPL03UlDJlggc0P2EQBmEYNf39B%2FzZvFCQr0AOUkciTcfJzwb%2B2Yra1AoBwrKMz5cPAAVuU%2B9SWfgVB7Ii%2FGMcbbGPu%2BeLcBi2WG695vJULk%2ByRVZIpT8VrFQzpikOnYCSyLl9YqioSPd6GP8VJN3xK4NHe4%2F3l6%2BPbpj4WGhIOnex1l9rhdCLbUoQ1pAbNE0gBqaL3chSqHJMwJIQcLTrA%2F2ZH%2F%2FUiyH0Sv6JlmtZjULmDiwmf4m2iP51Stb0ot5FulYFbtCqOZeK4mlDlIIQWliweMK9j4ISR0Ga6TIm2P2kjkwP7wWkzF%2FtnRuseKagbELdi3pkB%2FlNel%2BpCrAxpMU7RZoMNNmGmail7HiPGQbW0eJ1AJWirO55lm42eGnOMYFcF5FTrIrr55WOUwf5hETrwmgcy%2FS6puFMJlZVmcXyjOYfW35CvseULdtXel5YvluWojwylve76FJkJJ0e4LXV5c%2BueBQiIscgzXgd%2FPBy88wYC74H72wJ19FMzYlw77jmAK%2FqrIAXdM27GvnkeJnX1RTiRq6Mdb1yierOiYg6sEmmYW6H183Byn8neAQKob6klZa0wMZtitoipLkEM8G5Sc54MtyXM%2BpBNfM7IcEALP2OArjpZpn%2BPLEsgUwEtcnuc9wn5WWx0ZbwyLlh0I1TshpNyYEoeEOfL3fva6Fob6My44KLFcJhwxs2noZkjad3mRYBDcbKxb9e6%2Bm0d63obpfKO%2Foie%2FeipibHXefFrPizWxxCnKOPFZy6zjV5NfsMmZ6knskzmnxDBszeDXme7USN%2BxyckAjAdRihHoPfwtx8kG0TsO4ddVBd5bktCz99rdL%2BEmpeMsFHgux2AMp3coeZCF%2FHw8dzdA3nkxMR%2BE4EvB4kK1Opw1MUbO%2F2cyLlO7uzNUhkWmj0JKvovj8PGxVgg1FnIgU6I3W7vzXus2q58U0Cwua9eajhNuNxTSKxgOQVVjoUF9ml5weJICBihgDh8QVB9tAvbpu%2FkytM3AwNrhtqYM1SyYdA0Hw4kEf2UyXtEtZfEyYu4YfDhc9dAWrFezN%2FtjyyXMsHnWJi9lLWQqxCAQGyQlWIr%2FMXQz8fLHpaZux3Tfbr2SBE9kuA417zsouz5sItJAl6hL8kwxc0X9NEu69VkiefxR%2BBZ2i%2Fzf%2BQlIN5zM8Q0Fk16wd7l9oszlMX%2Bxk34Kfyca4CYfMByE38ZKUoszn0kx4R32I%2Bcr%2BFVz1GNOoBFVIwHuD3sEtrzWdoXdwzmN87uo%2F2NPqQcpiosb2Ai7S4mpoB210FFhmYTMp3KfKPlvDYiINfBh3jynImvEOjBdZp3K3lcZ6Vb33vLDGwmPGisU70iz%2FJbxChJMrHVrsDb8u7z%2FAy7SywCmoKBhpDQsr0hW6GbZwGGpFeYfpa%2Fazwd%2Busp0jnfnfDITtuPNXVyO4pdL1AqT2VJWRMEO7UOOv6J%2BB7djwVFaeRaVxlYkeLTjd7ESNI2yDgFI4mUEpBB8CWW7IfD%2FXpMjyJIWKGq8usC%2FfrHOAw3BEmRs3ipvmpun6GMFMgKNvOflPQLaxdRk%2FPiO8%2BQD8V0l2%2FlwJU4%2F4kzGozSb7RaJXIO967ivZgdjV9LqQPpMifa5ybb1sLcYpKbiF830AHXTIHEhL2WKxxHjXs7Nz4PDF6sz%2B%2FRDH07hayu8w6a2BGcmfgWH5UQ7zRYbd%2FHD1UWFGUNVEE1kzOlJ7nlZs8Ggt8LamsTLFvNJDpyIWnSJ%2Fhl3Pept9307rvK%2BasHDwWOLvtGGeyfLHBcye5YL%2Bj58JK6v5q7ennp4%2Fw8Tn6GH77K3JyLn%2Fr1CQ%2Fiomn7evMUiD7HQToUEJUNwKyNY87Rhxp8w%2FXLJyDIJvYWUdGsa6fVf0aj1qfqNxy1ipurHXajynz%2Fnb%2F4mTN%2B%2BZEYgnZYpYM62ql9RnM4sPfs3B%2FHHAeMfYxP0DvrRK18%2FFrSc1BICV2xQZGds07xbHCwtvJSXs2oqyIpSJ5mKh6kDYcxK7PDaSNWFCumR%2F2ctp9rTq7q0KuvBsYReIfhHO%2FnYvuVcnYJA%2BIQ4iYOqRx6JlROSdcjcS4CtBusmpyX0BwUpXKBHsuFt9t9vwi5xvMqXmIdSu04gAPtORcFoO%2BoPm68uIrzkCzHBm3sg%2B%2FeCrKnMWJRvl8yRO5aiXcKccKja5rRYwcCar19t6gvukP65w%2F9wo209zE%2F9hagDk10LGcTPSYeAiEbkWHNIOk2OHDMFuoevmDGhuj8yZOiss13C2kMKGpXqj4R%2FIylIXZlK80WY4xTQJP%2BOVYe7GZ4Ovh8YA%2Fe30wiZ%2BjwV2tnMj6rV5qY2qmxTIBmbmS4aVFR8M118sSs2cZh45XMMS1My9%2FS3cOQSLdb0UOWIt0ATn36U2sUPVTovfmVtG%2BOIkTjoWFW0w1uMGWawd8KtqdcMs%2Bq2%2Fn46f8Kt9oxSJb7RAXeg8da3z1YbR00MGmddxuanFPHSDzzpJtpiaMBtrYvoygoQ7lAbGKR05GlgIc9jnZiiSMcVtCOBAH2tQuUQZfjtEbxNF3aJBT5Am8tC4u%2B2JfeJKpA2rwCL8JTlXVdSSA%2BQ0e5EK4s%2B1T71m5I9AvUZLFpA0Ha%2BcQ9NsYf3uzSE%2FS5gaMPH4%2FdLbL3Psnc4uIB6RCO1HWdJZ5V7TPq5JF9BVkMgBAoqm8AZb5Z0Sv45jTsxus1haiWbSpPDi4B5Zsg2ZvzfNcnKBBPjPepZeISXIX5rUtSk383kqGNqX6TRjTxi7x43xbn2etNp0SLVW2Uc%2BhvsW9HqOB%2BAE%2F2qt6L19%2BovZ4a2ikmWIIh%2BssEpfCc7PA2NnvZ3v093ut4owPM0hzOP69y%2B81qj3ZiLh3tNpgL57OYjzV4fsCLuh64oJ3j5d5qpn4aZpgmwRB0yxYsB8LycP07kcTkmua1A46OeMLQ0KiCgNBf0sp%2FfeoSVF%2BDBuDUOBM4GCx6imOoU4GeEJ7aedk2FzshS40TFrsp8Cyp9GBeN5h0uPEHe1x5yVeybuW59cvTMsMqhygarJZOHOdH48nYNYdM8pKkwrCTa%2Fzk1nbRn28tOoXEF%2FxAdXsDOh1IVMlMXDidfdiDPgx8usAEpW9BE9SXnavumOiQsbJL617cagI489UzoyZKMOXlF6e7plP3nsDwJPlv4Kpvr6qivEYMrHAGbwI5dVdwLOs9Lw9YSAACEcp%2BLgDn5cX2YkEAJtog0O8PIDhiB337jnJQi85VjF7Tk%2FAPHxyzzQVnEhuTjXdZ8TvZACGuWp5353UeYnPKHS3o5RyQrhzDu53sxcNWDG98SkIcaJ16%2BJXklxxgOMiYNa1nBOKEQ5BKxXXRnNDPKRJrbi54rxDS%2FcpFkfwxRGELvSTgpuJJsxX5pm6ia4vc%2FP6Ns6JjRlDOV4N1x9KFvMy1h62mLSE6w%2B4H4P%2FCIBtaDLfs9XXG1RymTm2BpXSXup2bllJ5CZCa9rSnXC2nzvzAv20MO%2Fu1eIvIOSsxDtudUfrFAm9zAQWK9mQo%2BUaNdjdDuhYHQ%2BhvtNz3gjBwlp%2F5MW0an0q1wkBf2dP%2BElQqTaELeH1gEVmBDYp7th7a5cyWJcXKupBGKaDPDvlDhRAch7Shl6IJHrCaq2XspFDKNVUGRE8PY1AcDJlHyLFbRvIQ7%2FOq1MIZxj6Wm91f2YyDmLB1Peup%2Fq1BVTF5hGuA8JePSVOei%2FiwEiHep%2FKSjh0%2BTlBnIq6icWpQXZ2R5p%2FevrM0OxPDnh2FUwSYCzvCrKf6ww5MK9SNk8bX5r%2FBsoVPBAUYyeFPZ4LP2ywpMqpO%2Fppvyr%2FEr%2Ft6uR9JTz5Lhdw2%2FpBsj5aVgpcH5%2F%2BrXzu2I%2BXSxA16tSjk9NVMYV7oKiNZnSQSptsaOvNJrY05kyZ9URwOxdSl%2F1rXIUyyMQN86Vol8fjUtWslh7HTnf9ZTq6jXDUiCM3p4eZ5b%2BZKBpZHj8c2klGJkwPJyDQvGiCHWv%2BSURn1s5vE8VWAHrqAQ83pvrf9fAi31spzBbOVFhDhbkwMDqNSCoG482Q66rkfN9H2J%2FujprchhD9ENE2ibnro5rBZDUntMzZvMfs3%2BFSdg41VHr0Ecp3zgZBvZ%2BbBHDtLG%2BkG2h55s5FeVVPWWdQs1wdDgAgU0JDITGwjG5WcLNvoIJ%2FfFPz%2Fd%2FtziNBV%2FWlNECyxfvodOKSbAzq0fCJjKkplXXm6MenBrmUacKsH2xMDv2P7Vvm0tqWnRfHdtIzH02Wue9YRYC%2Bgc%2BgAwbCI10vLF6uNzTTZrQIiJqtb3q%2FOlSrRK1YxMDgAkL0jDVKPGh9paW5V455OAkyydkBW%2BkomifECuDejWSukW7TjalJSXD%2FNCp0NP77O0yHtgElhgwkTFJzErMXmYsUo8mkJ7SrVzvtwjxwrseGVFLHYni8JLCkUS9sogOR7doAC7B7LXubWE8SFOmoZweL7bM9lCUmJ2HPX4bvRlfOoITFcSxQ3L3H1wLRI3OwlQ1Eoi1MAkenxLDoZboQ6SAUeMuREbtbdmVBtOOip8ffxuv%2BsBazb2WI1iFwnKontcwbvsH%2BouGz6FWIk8B9oDs4Rx4yW7hxkcsLanQw6zZXVQGKm%2FmPDfBTNtqD7u0C5H9OPhJ5DYD3c4KUb2t8q%2BKqBNuvYY%2Fqbdoe8kV7hfYkhqhAOGQ4R27iHYyzBJuBYEF6MnlQY0SvDD9VKweTHZ054ExHsdfALmqMP8LybF%2FxRAcjCIvXfFvaHeeso9t9i%2F0kBcfVTYOcGYw%2B2yVHxZlWYdAFD3UtSJkMDrdbdgPkRQ%2B0UL6iuAteZzQ94pkIM5KDvx7798UoIXelzksseT5T%2B4OyghqnKwadBp%2FhEX16h1KSrT%2BfwdLsEnbqk%2BcG6%2FPQRUKcAJlD2ZomVzHSUA3I42EbKFtiV1XYxmxo20LhvsXU5Vu%2BuS7oR7WA%2BTLBC5FcrR8ATB5xvnS4Xh5LwiZtnmBQy5HsT3pyEIWKcXhrhBgoygIvjoWRoXiW00BWThw1RMTU%2FvDykb39b2VobxGMiy5Jv7GRZLNE3XDwJ4c%2Fw9F4uwKzqrk0qt%2F7Cn5Pkh706M7z6HJ5Ws%2FLcH5ZeC6DXAnLi1mNtYns1Ahb1nPQzCiMcdN&__VIEWSTATEGENERATOR=878F3C61&__VIEWSTATEENCRYPTED=&__EVENTVALIDATION=MJFyGtaSiJMxh%2FK7nhS9jRm%2FyuQYc0s4gChp3wMOX%2BxXUjegvZoKlGABi%2BOBf%2Fm50pCRI%2BXFZFkxO5MURM8SuaA3urPROQdJ1nFjqQ2V48k%2FgiiY0PoS2YUwJug%2FgrJY4Zr4mKRqux5Qu4e15UBUoimuZWyV9I68BS%2FUw5FCvTndjZMyxzXa7%2FHcFHPLRSbRKfUWd1yLFJhYbouPYyQwmFQ3eAlF5y1b4rOls99W1E%2FKYv%2FLhj2e6Ay5DFqm87mOHwEq8e9Y9hlttOJS4d3R8Sh95PtAUutBLliM%2BJ6O%2FIaCkgoLpGZiU57FOQCMwzLrGx4AGMz6IxvMQJp%2FMepTzOCOcUJNmK0uUT7rx4lisSOH1WAO9Jn7HzP9ZVa%2Bg7EAPZK9epjA1IOodBVU3N2QKxcTPOH6sJ6A0TrY%2B%2BcxGYDVSAAWmNmRa7WIg9trRsVJjbxII9xMMpwfVd19pv%2F0HHVASMbYpF98yjSMiy9q7WO%2FoW%2FFQ5sA1QAYNIlQzII1czk7N8j%2BBTTE2vpRetObMN9NIhhP9GWRdp3v9iBzMFniL%2Fn3OZw93qnS%2F5UExval6PEE30d3rN33eVkYEdao2zOScBpACwZt7QTjUktVjdHZ10ePtBewXqJtPqANI8HS1EHcXjRNXLoBBvq6vSWigP55bzRYTqkbHocm1CBfeChUMJjb1dWumFAksinXZulsLxMhXNNW6Vlhxj7ycPa0FKNRmro%3D&ctl00%24ContentPlaceHolder1%24ddlTipoPesquisa=6&ctl00%24ContentPlaceHolder1%24txtContrato=&ctl00%24ContentPlaceHolder1%24ddlAno=2014&ctl00%24ContentPlaceHolder1%24hid_tooltip='
req_splited = request_data.split('&')
req_splited[3] = urllib.urlencode({'__VIEWSTATE': view_state})
req_splited[-5] = urllib.urlencode({'__EVENTVALIDATION': event_validation })
if not get_page:
req_splited[0] = '__EVENTTARGET=ctl00%24ContentPlaceHolder1%24grdContratos%24ctl{:02d}%24lnkIntegra'.format(contract_number)
else:
req_splited[0] = '__EVENTTARGET=ctl00%24ContentPlaceHolder1%24grdContratos'.format(contract_number)
if get_page:
req_splited[1] = urllib.urlencode({'__EVENTARGUMENT': 'Page${}'.format(get_page)})
new_req_data = '&'.join(req_splited)
return new_req_data
def get_contract(request_data, filename):
!curl 'http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx' \
-H 'Host: transparenciasp.prefeitura.sp.gov.br' \
-H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Accept-Language: en-US,en;q=0.5' \
--compressed \
-H 'Referer: http://transparenciasp.prefeitura.sp.gov.br/sj2224_contrato/PaginasPublicas/frmPesquisaContrato.aspx' \
-H 'Cookie: _ga=GA1.3.1442686364.1424207442; __utma=78404491.1442686364.1424207442.1430251643.1430251643.1; __utmz=78404491.1430251643.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); ASP.NET_SessionId=2d40gyutm4cuagi4l5azlnef' \
-H 'Connection: keep-alive' \
--data '$request_data' > $filename
for page in range(3, 600):
if page%15 != 0 and (page-1)%15 != 0:
page_code = (page/15)*15 + 1
elif page%15 == 0:
page_code = (page/15)*15 - 1
new_req = get_validation(page_code, 2, page)
get_page(new_req, page)
for contract in range(2,20):
new_req = get_validation(page, contract)
get_contract(new_req, 'new-{}-{}'.format(page, contract))
!du -sh
4,4G .
!ls new-*-* | wc -l
10710
contratos_files = !ls new-*-*
contratos_types = {}
for c in contratos_files:
cf = !file $c
cdata = cf[0].partition(':')
contratos_types[cdata[0]] = cdata[2].strip()
# Algumas conversões úteis para os nomes, para não termos contagem em grupos diferentes para PDF 1.5, PDF 1.6, etc
def conv_name(name):
if 'Word' in name or 'Composite Doc' in name:
return 'Word'
elif 'PDF' in name:
return 'PDF'
elif 'ASCII' in name or 'ISO' in name:
return 'TXT'
elif 'TIFF' in name:
return 'TIFF'
elif 'HTML' in name:
return 'HTML'
elif 'JPEG' in name:
return 'JPEG'
elif 'Rich' in name:
return 'RTF'
elif 'Zip' in name:
return 'ZIP'
elif 'Open' in name:
return 'ODF'
else:
return name
ctypes_hist = Counter([conv_name(c) for c in contracts_types.values()])
import operator
for tipo, quantidade in sorted(ctypes_hist.items(), key=operator.itemgetter(1)):
print '{} \t {}'.format(tipo, quantidade)
JPEG 1 HTML 1 TIFF 27 RTF 30 ODF 34 data 39 ZIP 150 TXT 289 PDF 2418 Word 7721