diff --git a/2018/05-test.txt b/2018/05-test.txt new file mode 100644 index 0000000..410cf15 --- /dev/null +++ b/2018/05-test.txt @@ -0,0 +1 @@ +dabAcCaCBAcCcaDA \ No newline at end of file diff --git a/2018/05.rkt b/2018/05.rkt new file mode 100644 index 0000000..9ae0cff --- /dev/null +++ b/2018/05.rkt @@ -0,0 +1,41 @@ +#lang debug br +(require racket/file racket/set) + +(define fp (open-input-file "05.txt")) + +(define fpbs (port->bytes fp)) + +(define (react fpbs) + (let/ec exit + (for/fold ([bs fpbs]) + ([i (in-naturals)]) + (or + (for/first ([(left lidx) (in-indexed bs)] + [right (in-bytes (subbytes bs 1))] + #:when (= 32 (abs (- left right)))) + (bytes-append (subbytes bs 0 lidx) (subbytes bs (+ lidx 2)))) + (exit (bytes-length bs)))))) + +(define (★) + (react fpbs)) + +(define possible-units + (map char->integer (remove-duplicates (map char-upcase (map integer->char (bytes->list fpbs))) char=?))) + +(define (remove-unit fbps unit) + (apply bytes + (for/list ([b (in-bytes fbps)] + #:unless (or (= b unit) + (= b (+ unit 32)))) + b))) + +;; very slow. +(define (★★) + (argmin cdr + (for/list ([(unit idx) (in-indexed possible-units)]) + (cons unit (react (remove-unit fpbs unit)))))) + +(module+ test + (require rackunit) + (check-equal? (time (★)) 10564) + (check-equal? (time (★★)) 6336)) \ No newline at end of file diff --git a/2018/05.txt b/2018/05.txt new file mode 100644 index 0000000..3b9cffa --- /dev/null +++ b/2018/05.txt @@ -0,0 +1 @@ +bBCRGgrwgKknNGWnNWUuwHoeEtTOvEeVhYZzrZJjFfzNnpPHtTgGhNtTxBeEbxXqVvwWhjJHQuUnNXGgvsYySOPphHKaAkoXxVQtTqQJmMjqVvzZHhOodDhHocHhbFfBHhKkGwWghCcHnNCvVOztTTQqtLlvVZzsSZnOuUfFiIHBbbBoEeOfFhHpPhDHwWMmgGhAaJUujqQMmdKkoRDdoOrNnReEUigAazZfFOFforyYOOoOooPpfWwFRqQFfiEeVvIVvGlLbBIGgroORqpnNPQoOohbBHOkNnKaASJkSsLlfFKwWjJgxXGuUMNnmYWsSOCcowywWvVyGNnQEeqgYxXyOZzoaAVvUoOQquSsyiIPpNnZzCcNnYsDKkdShebBEfCcFdcCuUDmMHDdWwLfFzZIilYIUubZrRYyzBiPpxXfLlFPpjBMmPfFeEpmfXxFMbQqTtuUsSVvJjxtCcTXHafNnFlLAlLVGgNnoMIiLlmOLqQnNoDdOlgPpGvVWwknNWwKQqKkiITtnNiIVvrsSrRuURvpPgGeENnzZKkPpLlqQLlSswWjJlOoaAxBbXkKSAaGgPbBxXpkkKqhHQqHhXxQQuUqKwgkKGEeWwFfCIictnSNnsqQNuUbHwWhBlWwvVYyeERrLwWTnNcCzZtThwWHLlSFfNfFXxEoOeQqnsaAUujJhHfFsSWDdgcCjsSsSJoOGQOoqOoDDdIidvFfuYyUVzbYyBsPpSsSEesufFUSUAatTgGSsuSLqQEelCcRrRrsMmowcZzKkcYyCbBCNnWwYWwGgzRrZNEerRsLXxluUSPprnNOoSsRYyRrnFZXxzfSsmMrQqFfOWwIiOTtHGghuUooQXrRxqRXBbxGCcDdgTLuUXxZCczlPpiIpYyZzPCctxtTXuxXFfUwWwWbBFHhZDdzmMCcusRreESfFUfFXiIlgGLsScpPCxAnNaOTwWuUmMtowWIzZSsZmMlLzyqQYiwWlLjJsSfsEtTejJSppPPxUuXgGyFpBbHWwhfGKkXwWxhsSHgFPKkIihkmMKJjHcCiIzzHfFqQOohgGkKZXxyYBbZBbafmgGMaAsSXxFWwSsSAhRPprMmbBmkKMHaTtPNnpIiyyYbBYWwstTjGLlgJOgGLlokgDdTtGhHKxXQqAtoOUuZzTJjinNSsqQqQILZzaAcNnCVvRJjJxXgGjrPpDdtTXxaAIvVgGiWwllLIiEeEecWwRkKtCcTrvVXKklPpLxlLyuUYVKpPqwWNnQkkKvlLVvnNOOLloRrkKvVEeoAAaCcsSHAahAaFQqfwGbBUugWarRdNQZzqoeEOQwhHWqWgGkKmMwNfFnLlTzZtoOZzvVcCvVuLlUQqsnNSnDJjbLlBvVWwPmMpaLjJlhHrRAeAaEDaIiAmMSFfsdeEfaAFqQfFXZrRzcDIipPoOdMFbBfeEmzZlLoOdaADLltTQMmCcqQqYybBvVWLlJjwXxkKVweUuEzZlqQQhHLlqpbBPLGgoGgOoObvVByGgYWWwmFRrBbYyrRnNxUMmhHuXfBbEeMmKkYtkKjJrRtTRrBwWbTpkvVaAKYyoeEOlLPQRrjJqSsfVwWvnNeESBbsFYybcCBMrmMRmNncCLlCKkcAJcCjKkaDuNkKnMmBbOLlRroBbvVWYqQywWwhHcdDCGgWEewyUrRuYRrlLWVvwLlzZGBBbPyhLRrlMmpPHYMmAapPzZRrJsSRrUubuJsGgSGghOoHjAagGUVvFfsSblKkLBfgGSMmsSsFWiqWyxXPpPpxXYZzoWwkKOwcFTtjSsJfCbBxXrDQqdFQqfRVvHvgGnNVhkKpbBVvbBVvPIFfpPFJJjJjjlLoOmMnqyYQNfHSslLqQoVvOUAauhkKOoChHkKcHhbPpaAzZvVBhHirRcFftTtTCxXyYUuxXbwWBtoOiIYkZzeEKTtEBbenNCcIAaoOjJiKkxXrBbZzQXxqREeoUuOvZzVeEyNYRryqQJjkKpPeEpPyYpDeEdPnUMmusgGSvqQVKkeiIEGeEJjDdirDdsAaxzcCZaXoOLlxAUJjrAafFRbNnBEejJuWNnHhnXxEwWebBNNeEnSsBbwYyRVvrnXxUuIHhDdPphyYLlRQqrHoOvzZIyYiVfTtVmMWAVeEvawvRrIiFPkKpIMmiKkElLoOevvVcCRrsLlGgKzZLbGgBDdlzZkeESHlLhUCHhcMnNBbJjUuesFfSqQEfFRrjJkKaTtAaAGgOoViBbHhrRKkHhIZzZzeErRfSAaSwWPkKpsCNncIipPejiIJxXQzZqEzMoEeiIKkHhjJOlVjJHhvSsUueELKknNtWwTmRrZfFkJjQqKWwzPpSFfIisjJlLuYyUwWZAvVeYyEcCSyaADdlLYlSfHhFCcnCcNsAaLLlYyzZiIkKfFWbdDiIByYGgwaAQqkfFKbIEeiKkHhKkBKkshHqYSssSyzZlLQCaAAacFqQgPGgpGfaJjoiIRrOteEwWOoTtDbBdiILlLlPpVnDSsdXxNDsFfMlLmSdAaRraAMoWwOUucjJtoOTfFCmTgGNnOFfoEetZxOoXUusSZzXxoOnGgNzOobBOyYgPpGIsSiuUDdeeEHhdjJDviIDBbLlaAdwWyqQYJYHhqQvVOoOoLlIiTtzZYySlLsySsjndDNUuunNkyYKUVfGEwWepPgFUuaALlHJjMmAqQaVoONnvyYTtovOHULlYyuhHmxXMiIhXxZzdDXFfxDdSYysRTtPpcCBcCyYbNnrIHpVNnvkcCKodIVvidDDQqKkHkKuTtUsvVSpFfPVhHvLlkwWKDcUuCsSAaFfNndYyNnazZAhhHkKIiHiIcChHwWxXBbMmKkyYIsLlnNEevFxqQXFdDoOiIVvGgfxXEeEbLiIlKkeEodeFfEoOTzZtLOolDSsOZtTzCcLeaAEPHhplwWmKkTtMUuSOosUuRtTrsSFXpPxvuUAaVSspPQqnNoOFwWaZzSsvtTVaLhHlVvApPhSvVkvJsSjdfFGgrRDANwWjJVNnXHhxvgGGgKtUuAaThVJtTlLXxDdsSpPjpxXPvHdheEHGZzMmgNeEYjVvYyiSXZTtLMmlzxWwksnNSKhPpHkKAaAuaAUbZzBHhXxBbAaHhajxdDEeXJgGlZGgKkzRrYyxmMAXxaSsmvVMNnoOHhXwlKkurRULWZzOoQqqQJjOuUobBFqQEyYefkzYyIiZKEAabJjBWwnNeHhhzZNnHsSJqIibOrMmVQyYqbBhcCALlKkCcrTtRaHxXvFCcfMmRBESsqqQQeeEiIblTtmCZzcMXtTxDdeEqQLJjoHQkKPpBVYyvbalLyYGgFZoOzYyAqQCcxfFXaAGIoOHhisSpPgCuQqNSsdDxXmMnVNnNnvezZEiIVNnXxeEvLwBegkKeEGEbWboOZzaABmmMwWMpPKkAiIIfFxXksSTtRVaAnNvwEeZGgSszzYoOMmyGCfFcgnNoOjNnJrRoyYdaAxVvXDeEVvKkOLvqIisSHhcCQbBzNEUueuUzQMGggPpGmqDdREepPzZiQqIrgGDdZlGgmMLIiBBbbCcxXneEjOoDdJZFfBrRbeECcIiYaAXCkJbhHBjJjumwWMFfNQqnXxoOrtTxtTXOoRUFLkKvVGgdYyyeEYDsSVjJJjwVWwRrCcVeEsSzZvcCeEXxvfFWqzZQCmMgmMGONnoCcSsBbDbBHhdqzjJHLlhXxZSsQGgQNniIGgAamMXxCcyWwHFfsSyBZhlLHGgRrsdDSzRiIdDwWtThHhHlLxXrxnNXbYKkUAaRWwWwKkaAwWEEeErReVvgGlDpPtToOowNJjnbsSBIipPWpPOPRrpxoOXAaQXxCcqYydCEyfFYecwcQLlqRrhHbSLfFluUsShdDHzZgRlLrGjJpPRrsScVvCDdovTQqtsSaAPpjAaKkcFfhlLUuiInNHiIPpbDMNxXTtzZnskiIiIMmKmMrsSgGRnNnKkNSpPoxXZzOopOoPRrzsSYyZOukKaACTbBtcUVKlLXCcKkxUWwuBJjaAvsqQSdJjZzgeEeQqZzoOMmwWNnkjXwyNnYtTMmXAaWwsSoUZzuwJjOcAaColCcdDOjJAaoUQOoqoOteEURrjgvCcxXFfJjFfVQoOqhvVHxXGvVwzRrZmuUMCaAcwzZWmaAMXQqtBbNnSaMmpPcqQCyYAsaKQqkGgXxEdBKkbDTwWMmMmteXxhHJUxXkKMmTtujBTmMoOWwaQqAnNYytuUcjJHMmhCRVvrjRvVrPIipKkyVvYtTUuLiXxItTNniRrIGFAaLlfyYaAknNKONnoglgLlrlpsSPUuLeEQqldEemMFyYfgpPGmPptTjJKHZpPjJzQRrqfmMYypPutTdDwWUluUQqIiyzkKZMmUuadDyYHhFfJjHYyYjJyhlFfLpHLDdkFfvVWwnNEqQeRrKIOoxXZyYIwWqQqQizpiIAaOMmxXaobeEBbBaElLwWesSAOASyYsPpwBLlIisSuUAuUeEwJjWaSQqLlsWwoZghHGiyYSsIDJiIjrRaQqAIOEeFFfKkmMQqeEJjsnDdNwWNnJjpAaPStaRrbBAuEekKUMZzmlbBLTwWfPvVpjUuAaPpRrWwJoEeLljPpIiIsSEfFewWfFaARrQXRrxunNUuOoZZoOlLIFfQqgGXoONvqQaSsWXWzZztTKkZwoOpTMMmmPgdDGpMwOaAqdDQBTtbBjvVTQqtJTGKSsRVvrkgtqQtTfPpFDdzZeEOozZWwImkAVvaQcCqYmMpJjIipPeEWwdDGTNNSsLlnnmpPizZIMAaLlHfVdDvFhlLQrXxRAaQqsSqaoOAkZwfMzZljJLiZmbBxXfFgNhzZHquUQYyTYyXxTtSsZzuUtPyRrFJPpjvcUuGgCRhHrVFqQfXaqQFtOoTvVHhIilLXUPpufFxFfBlLbUpgfFGffFIikabBASLDdAaHhMmwUuWogGSsCTtUJjaAuBpPsSlLQqKbBwWkKiILlDdqQBbJjklYfDdFEeOMmEebBBCFfhLlMmZzHUurwCNtTGzcSsCfFTtZAaeDdhSRpPrslGgLHEzZXSUusVvWfFPnNgqQGzpPOopCxXqaAQqEeQcixzZfFXLDdlHhIwnNWPgGzZfFyJjIjJTeEtoSCcNFvlLVIuUMAxEekKXKZqOoOoKeEMmkxgGdAvVdDaHhHHhhdDoIlNcCnrRLiMmvVAaCchvMmUusTtbqQOEeIiTtaAVvUjJKkuUzZljJVvcxmMoOVGgvFROcCzZoYZzyrcCpyyYGlLszZrReECcYyMRWwrmSgyjJYDbBbBoOHhdYZziunNtTUXOEeoWOocChIiyYwWHYDdyTjsSJlSVPpSiLauoOiIUyNnXbBrRtgGTOoxJjPpHhYjoOEeyYRrSskKnNDMmddDjdDJTaABbbBddfFBbLlDRrvVWwiIDsKkStOomrCcuURMWwAaXxZzTtIdaNnANnmMlLDiinCcaANwyYWwXQqkKpPiIFfknDdtTalLyYTeEhfFhrRHHqxXCcjJQNntdwWhmBbMHAawTEetEemdDQqMEmMJsIicpUuPvvrRVQEeqVWbBwfuUFCRrGoOWARraxXnNwqQUulWMIiNnmmMmAasSIiXxsOlnYyNgGHhLPpWwoPpUufFeTtuaAUEiKsSkRoOlLZzpPrVvvVkKAaJbiIFfqlLQqQhhHVvMzAaAaMmkwfFtNnWYSsyHhwcCTtbQqWMmCcFfieEIwujJKioxLQqDdljJXFffMmFbBVVvvBbOPEenNlLIgGBjJbBEnNebiJQqMmVvuUjJjivwQFfqtgIJjvANnkKQqgGIiIoOuUiQBbqUuEeabxtzZIiGgTXuURrBimMIEATtXxaLNnYYyIivVYIFcCxSsXpmMtTpPPfGMmNCcngWZpzZPaPANnRrkKQcCvMNnUuJjmaAWnOcCzZoTdDtUuNuGgUwVvfeEFVqQpNjJgGnPiQqJdDiIQaAqYyAaLlIuxXUieoOieBXxbvVBbrREIIioHhOUJjuQZlLCuUcYGgGGDdjjJnNJbBDXbBdDfFxgyrJCczdJjDHVaAuUvlIinNLSswWSshPpozZOolLtTpPGkKEqQPGgadDAFcCFfFfWwfOofFplLRdNnDbBrcVvKCUucAmMaZzKkEoOFfVRrjmpPMXhHwpPnNdDmMWGJjSsmNVvuUwWBODdoFfTtbnMgxQLlUuqQGgshHMXxJKTtFUGguKkMmqQfIexdDvyYieEIOoVvoGgOVGgvJjHUHuUBbSslPprRhhOoLxrRXlNnCcHRcJpFfeEzZPasYFjJokoDdOqQKXxhHKkAanukKEeQYGYygoOynQIiqNFfCBbcgSsWdDMmwGFOXOZWwzkuUKoUkYXxyTjhvwWuZzHgGmCcMrRsSbBhMCcYnpwWPHhFfiJjmMIoRSsreqQEOmsSRrSsMOEeafFlkHhLtTlKLWwACzEOTtrHhxwRmMrWlLkOoOUzwrebcGgvVfdRrDFZzIJjiiaAeEImMmMdDzZzpPZuMmFfuUqQePKkNnDdpEzZtTecCEShHSssbBUuRrdDbPnNpbBfFJAamYyMjHhuUBAKkaSxXbBseECcSpBzpPSsGghBbrRUuxXsSOrRoSnNnjJOqQgMmGyyRjJToOCcMmivVIOotXXCcxlXxcxoOXlLnNIWPbBxdDuUyYXpxXEhvVzBodDxXHMdDAaJNnhHjkOHhoLlInNoOiNBbErAaFBbQqwvVOopAaaAzhJjyYjJUuvwWwWDdspVvZFfDYoOpRryqQiIYPqQOonqQNevVoieEIVHXxqQhPWPsSIKkdQqkKzZotTbdDBOTtcmMCDFcQxXbBrxXRJrJvVjRGLvJHgcCGkXXxxZzKgGWsSlLwhQOnNqQVuUvoaUuABbQZzSsPZmMGNnzcCZgfsSHhsSVvFWwztlLljyfFOWWwwosAXIixaHoRrOcJjbPpcCRwWwWzOIlLifUvVuQyxbBIHhFWwfkBbKMmQqiubacCABUyKgzuUZGkZziIUJzZuhQqjJMvVuUMmUuDdgUuYgiIGMmwWlnNnOoNeEbEeBPFVvQqfGgqoOXMHhjJZzcYZocCXUuxkKHhfsSFhnNmgGfdDFqjJLeEeEnuKkVvuXeExeEoOrRWoOJjnNJMmjbUsyAaYMbBQqwzZHhWhHcCJcCyMkCcdzZDsSPCbBcXkKZzyYDdxcCRrqQfkqQKHhsSVvWwZAyYfFirYyqyYsdjbBrRiHSslhHxKkXLFfcCpPHcChZHXZmMzpDdPYydDxZyIiYtTCSFfnNsckCUKkuuwXxWjqNnjJmyYMnNfFHhQqQDRrsSIpPiTKkFIeEPELlyYeNdRXqQeExHzZuUDdpKkzVvZygfFhYyOmMaAGOaSsrRAQnsSnNXxoKJfFjkDdxsHsShPpSHmMEBbDdkUuooOOCcjJKMIimXOoxIiMmphHPUPpGgsShHQIVDdGPbBRNnrSmMwBbbBWQseEyeEeOoEIjkKQUudDbhHhHBdDTsEemWwfAatLlMmAaeEdDYeEycLlCzmMZdLcChhwTHhtwWoOmMWFNWwnHhtTGzTtpMmkyNMmnoOQhHqovSCSsckfFPTtHhBbKkoOwKqQiKktTLloXxOVvRcqcCaAEeCcWwTttToYyMClPwRXxzZhfyADJjDqXxYSsyQzZaAiIdJhHtTEmMPVvdbmSJEAhHHtTBdDbpPegGEOolLXNnySsqQPIiuWwhmZzMefJjppPjJjJxdDyHKkcZzLlCzZYeEyRrHhtOojJcClLtobQKkLlqQvVvWwCcVCcqgroOCIicZYJjBbcClLTPRrLFmMfgZpPzsIiZsSlLrRLtTtYyTSNzZnzxXZRDdrOoxWwXrRGgNnknNKNnSySBAapPttTAnNaLllTjJCcrRAzRrZXPpxvVHYybBhjJaSsbxWwXqJoBbOqYyMmbTtqEeHnNJtCkKrqQRcUPpTttaAiIoOKkTdDQHhMIiwtBbvYQqyXxlFfLAKkJjdDUCIiUGgTnNzZtuEekkqQzZvhHXKkRrSssSxtwjqQJuUTlrRaBbXxAbzZBRdOoDXUuLlxvVHhrLfFlykKXxWwgMMlPpYyLtqQToEemkKpPBbMcLlBvVfmMWZUuSxXSPpwbCcFJEifFwWBbJGgRmMrZzGCXmMxVxXngGnNLlYMJjmQxfFXnNMeMmiIlLEZzmqSsyPpwWXoOSNGgyWYywPpnNXJjUuxavTorRwuUWqrLlsPpSgGOEWbBwegfaAHhkKuBbYyyOoHhYgCcmtTUiIfqRrRrsSpPjEegGJtySEDFFIiffmMFbTtsXxSVvBUtkKjgGEeJddkKVnMzZmtTLlwiGTtiIGgcTEetCTeEtdoOgOmMoMmdDkKdDUuVvzyYdyYBbDZGyaAYJjfFMmEenOglLGADpPxXdXFfqxXWbNnoDuUyYAEndeEDvVNADdaWwRxOWwgGocCTjJUBbjJNnNnPJtpeEkKPgpPGtAUuhHCcNnaiIPWwpTmASsQqKTtkYNZzntTHhczdDOoqDdQsSZOoCHyYhkKlLmMHhvqQMmVaAYyytTwzBaADmcCGsHhtcCwWrgGRDeZpyYPUfFuJzqlLlLXxQnNZfHceECOohpyYPFZiqHhoCcUeEnNYylLulLzIiZTvVtzfFZAZwhaAHuPkKlsSnwWNLmNnrRBbuBEwSjJsWKkvVxKAzZaIFXDdxSZPpxXzsMmuUfcFfCDdFfjPwWUIiuIiBYEjJqQeMmgNnZDHCchdONKkociLJfORrIiodDFVvNdYJjzAbTtJjBDKkdbByRrYaqfFQGcCBbPpglZjZwWKkzvVJHPphlYyJOxmMmutPplLKxCiIBDdbcgTtqmlLMCbLlZzMmlLGLlIigBwKoOGIhHoOaAyVYyvhnNpPYZzyfFtTKkYfnaANTtFKkHUqQAawWyEsSURGgrobiEeAXxaFGAaTtjhaApPXdDECcmMqQcCQqHhoXxEeXaAthHTIiKkzBbuUNnXxGgjJZgqDyYrRtXxtuUWgGwogdTtrRBgGXxMmiIWwgGLMYymlnYyNYnvViWwvQqVvdDZzViIAacCxXNnSGgAbBrRasnYcTtNnnkKRrFcJjrAaRdDygIhHiGYkXqQmMOocCnNSsXxRrolLqgsbBJjAaSlseEfFkjQqQqjRrJBULcClbBZzrRGmMwWgubJOotTzlLBrRbNIinZGkKCcgqqQwWAWeEozZOQqaADdBHhbdDSyYswaxnNfFxhtTVvnNuVvnLlNSThHurEeRUlCcqQbBLmMEenNoOxSfFskKxgmMGXxgaHuUDdkPHhppPeuGgICcxXOWVlUubBJUuxXjFfEezUubkKYLbAaBlypPhWCcwQKkqBqSYynyTtqUuQYioOIEeYyoOFLlzdrRLBRXxziIZSFfsSsjONbbBLdCcIZziFfLpIiPIPhiIHaAALlrRYyansxXmMpPQqYZWwzOwxXdDUOotpPIiwPpzZvVPBxDfQqdAaDzaAZAaFrTtvVmMuOmMVvQqmEpXxPkKPgGpeGghNnaAFGDQmaAZzIiMwWquULDdldJYyjUuDdEexXaAnKkNtgWeEvVwaUunNGjwEonNOeNnrRWBsSWwaqDdjJQkKEeYOovAaVyIKXxmKjxXMiOoGgxXKkIuUxoOVvXgacCFHBbhrRoOffIFfipKkPDueEFfIwQqIZzuUipSsPWIqQiDRXBrRlLTttvVBbTbltTLZzxBbRoOtTZTBocCckbByxXYfFfKmMjJlLkFXxJjTtjEehYQFczZJjCRKDNbBnoOdAaiifFeEftHvVbQqBbTXxteEeEtpPTtzpPkKFXQqGgZTtiyYIPpIiQumMnNKvVKkkwrRKyuMmUQqhHVvYJjdnXxSsndDZJjzJiIWNdDnwZzxjWFxXfFfVvwfLlCKOokcRrUuHguUSsGhHmpPJtbBqQczZCJjTvVjCccCWwWVvwPparRAZFfzckKvVCRrJAaSKkuGjJSsgAaZjPpZWwlLzJzfFjedDECnNcJkKkKaAoOkrEzkAagGURruQbpEePjMhRrHMcFfLloONnruURcCoOnNFfmMnqiyhHuxXFfYyUGLlgzUTtEHhYOUulZSsjJrBZWbBwrHhnYysuUSZpGeYAtTnNCVuyYyYLAaltnPpNPSstInCcgGNnkVxXvcXxwWxXrRJDdrxqQGgGJcZbDdBzpPyKNwWnqXxQRrJJVvysPpSxlLXPpVzZiISuLlodDAacCVwAaWDbBbBowWGgOtyYTdTtXLlxRiIfoOogGguPpaTtYyQQqGgcoOzZgXxzZgBbGdiIDGLAaMmPplFfvlnNLcCVBwHoOhmMWUudPpzZWwDduUIiZzrRnNVOOoHObsDdfaiIAOWGgwocAaKiQqIUuzZgyGGnNRSdTtlnLlNLmKDkyYhHRgGrcCKzZINnilMmmMZzmMLVvAVvadLUuVyYvxZNnhOoSsGgQhHEeqWcCOowDdRUujJjJWiVtXzZEeWVvdsSSGyUuYsSqkaAKQgWwXxpPcCWTtqQdDSseEYhXMmxJbBjdDlTQiICeEuUDdeESuxXUJjqQRebiXxIzZDdBbzZaAOolLyYgGBbAqQFIifFeXjlVvLwzBbWMgGwWnRrZzNSsaAsSVvvVnSslLAaUuyOxAXLxRYxXzsSZWwzJjisSZzyTXzsSpPwWSsYXvVOoxyalvVjJLeEKkcCOorRrbrUuRBFfsGpjJXVitTLlIqnLlNAhHFftToOFpPnNqQnURrutNnVvxXdAaDyyYpPuHLoOcZnNhHzgGvVPaVvAtTQMrHhQqXxhrReJjNjCUucEeJsKksaJrRjewWoiIrnNRbBmMuUhHXxbBuDdgGCcUlLyDwWuUrqQvlLRqQqQzvVkYyOneENgvVLBDGgVbZzAjJXNnCwWcVvhHUuFVvfxXpqQElLTEeBXxbtoOleVvEFZzhHVuUvfMsiVwcCKCcKIiKkKkWwtpPTtTmSsMyYXxMdDmDdhHaATtdcCwWLqQjJNRXxEBlLfSsoOpGgdDsSzMpPmbBcMmYxXqQyJMmPphHdoOteEKkTzhHTtiIZaOoDdwWKKktVWwznNvVZNnDdzwWjJZhHTtlLgWwGZzgRbBwWdDyYFcCgGJkKtTjTtgzOdDxEeXoNnxXkKvViIuohkKOvVSspfNJjBbjpPpPjJpQqsSPFfMyZOoinNIbBVvuAgGaDQtPpGgHhJjeEpNbAuUNnmMopsSKkPGgqQgGqQLzZlSyYsvVOlMmLvVNnvaAmtrGQiiIIPncHhBbCuUwTHfBbFkGgKaLjJlAwPphHgPIiOoYyqprReEMFfpPlLmWxXwhRoOlfFLZzlLmMrKkPiYLlyXxtTIpzcCEdYyxdUEeuBbnnvVNZzPpNsSGgkKvVPnNaAaATPqpPGgXCcxWwQvIoOikKSnNsUcdvVDyfwWgGFLVvyGvVCctTOohFfSsoLlOtNnIiNnFERraAejsYyfFbtTByYTtSsSEeqQHdDgrPpkKptTtCptTPclEeLMmvbBBbXxSscCQqKkeEkLlHRrAxXDlKeEkLNTkKEVEHDdheEMmjJxXxqQaiMmvUOouXxVGpKkvanTtvokZzKLlvVHhXxHwhsYyvVVkKvAavVWTtIiwSChHfFcSsuUiTXxtpIiDdzZJwWoOjRBPRJjrKhrxrRneWwcQqoGKklZJjjJLXLlCpPSscgGzZqQyYFfqPHTshHbBSIjJAMmsaACcEnSuUPTtqDdWZkYyKznwwWeEkFJkXZzkKnFfoOhgsKkSFmAaMdmlWTtgGofFnoOdmMfFDzKkZNrROxyYXVvnNwZrRzLMmmMIahHunDrqjuUJGgvVGBLlVvbgYjkgbBGKdDIVgGvZzZYYBWTtwxKkcClPEepMmwbSINnglLGiIinrbVvSpcCQINbkKzyYZmMmMcHhDTtWwnbGgFQqcCTZcrRQwGgkFAafDEDTkKpPVzZiCQqesWwSFzZfFkluUQVvNnBbwbBNhKWjJQCfFcNvVmMnqpOoPZSRHxwWpPXstTSaKBbPpkAzZgkKGoOiILlMCPkqHhQlbBbBrbPnNUuHXxhnJNnjosSscyYiFftTOPWcCZzLlmtTlNaAkKiInDduUymUudJjcmlNkKMmnlxKkLaAlXREeUeEhnNbMCcmbeQWfFwhHrRBBbjsSJTLlWwTtjJPeRrOovVbBEmMwtTuUvxYMFfemMEvMmVMmvBbVSsmnzZluCcGGgEegGoPYypSnNqtIfFuUOlLcLlCdLOnfFNUuRRrcsEedDShHRYyjJNnZzvQqhHIJjizZWwGgNnQqAaBbiIFwWIifVxLQpAxXaAqrtcCTRtoOAaeqIiGZzaAgYmbwWBFLqyvpNnPMfFWHaRJjmCkKcMrSsYyAtWfzZFsSSsDeEeLyYdDgyYwWyYtkKToCBNneESEeuUAkNuEdIiDeytITtiDZiOoIzdYPzmbBMUuhHGgqQEeZiIPyoOEeQoOUnzZVvsSkKNhHcCcChWwMdRLlrJYoOtTyWGMKkgkKZEezUuGmfUusSTtFbTAaZBYyjJNnZzTtoODduUvVIiBbbBxXhoOQqgPLnaoOArrkKRZzYyiIzZUUEeutIiwWTFfFfBbuuSsKkHhOpxwWeEaAAasCOoUufFRJjIiHjMkKaIiOoAqORfFWwOVvonhHYyNWLlfWfFwVveRJopPnNOqQeEUEedaNnLtTjgGebBjJGytUuAioaHzEJwtUvVuUufFPpsIpPHhiyYSsSzZGgxcCXsrNqQndDRNnSwVczZvVTmMTlLLsSMmPrRWCnDdKkNyYfFcHPoJFOoJjyhuUHdxXDwWpYgbhHvLlrRxXbBaAVmMnNOoINzZMOGgUoOuohjJHyCcYyAaTtYWGgwoOQPpqUuUwWoWnydoOMmmMLlzxZzpPNNnZzMrRJdjpmMPoOyYvVTIIiifqQeEtnHhNTEwGRrvVPpXCVzKuUbRrUsSjTJUbWEewmMKkgUeEpxIPdUuwWwWDBsWwhIiHmLlMRriIXdrPpResSLBOoVafTtSGgstTqIfFiTtDdYyltTLrfFRIizhHzeEdDQGgvVqzZdDlTtFfRFvnNJyYjTEedvVDkKtmSWwAlAaLaxCcKuUjJfFOashGwYyWjJuIiSsJjAaqezmMCcZEKkQUWwFUSsuCclXxIiCrRsScaAxaZEuxXXxVvYygiXxyssiUuLRGyCcFfKkeEHEehTtSIVKTtkqQryYWcCpPgQWwCceuhjJFfaAytpPoOTLlBHhboiIPoOFcdDCSMmKLDMCIiTteDCeiIrRkKSGEegcqQyYQqzCcEeZCtTjLJjlJeEsEwouwWUWvVqJIvVmQuUqMCcsSeBbwuUOoitTNkQuEpPjhBbHAaSsbMMEeIiMmmXQFgGEDddoODsRrSrRMdDpNnPPLyJZKkzhwiIpzZxXRGOOkCcAaAahxPpxeJDdxXbBSfRPjkKJzDdHhcLwWwJjPOqCsScSsiUuIUuQyLlEInNnXxFfHgaAGhAIfFPuXxiIkKpetThGgOXxszsSZSuUiWwLlIkKbccOsSMgJjxzOCcUuoZXOoGmocCCFfJjjJBbHhaAFVvNneIicTWwpPtnbiIaABXiIxUuEeQqIAngVtTBbcEzmfFZzDdYyfNnOqDdweuAZzwWeTZMmLisSOhHPBxXpPAxycoOCYqvVBbjJjJpDAadDIJjHhTVUuvtTKAaHhSsYyXxSyiDdWBFuUCcfFRrqrRLoAefFWRrkmzqQZuuUTZzTUuZGgeEWuYfNnZkIPobUlxLTmMvVGnNcLuIOodykWEewZzKRrDnNdpISsicCKkWwPYDitwKkmFuQhuNnFfsSOvVfsCPgGEeJjpcZzDdggYnNfklKkpPbukeeEeEEkdkmMHxXoNnOhUNZzzqQqQOoSsffbBIeEVvFfcCjJkblLodZdtTesSEvVpGpaAzGBsSbKgGGBvZMUuPfFnEkXYyxfFdYPDhJjEjIiIdphHPCSxCcGgFJjcCDsSgWXtTuUXxPpvvgYeEyGLNnuKguUdDQBbIFdDEKkexXweUoWwrReEHhUDduOuUpXgroPUPZTtmvdvcCVUuDgdamOYjJtQqVWJjWwwKknNgxLFYEeFZfDQqdbyYBFzfaAfFeElyYgoOLlfxXAaQqFjgGSdFcCbqQwADUbdDjpPJBVvQjJIMrbBQnPcCSspxXNgwkKeTthgGaAVATvwWDMwWsSVvvVmAjkaAuUKJKLTYySsgGtlnVzBVvbXRrKDfzZFqdDQYySCcaNmwWMBuPWwuUivVsSNWuUdTCUuXTtxcLxXZzlvaALwAaWIMtRrbOGVvCcAaxsSUrQGgqFaSsBbfsHpPxjVvOoCcJrRXQbBEeqwWXkrRKuEeIiHhUEjJDdDdsSRrMzZuDdLHfFhjidHIihnNBvkKVbxXCbKfMmHhMqWoORSWwiLcPXbNnMgGmSJhHBbjmMLlsBJvfFKprRHhsSpAassSyYIiokKyqQYPqQNnjutUHIibcxNnIScCsiusqOxioOmMLlUuYydKfvXnoXQRukKrEeWwRTtOLDMhHZznwWUuCcNCzZcbZfFJAayYeVvErlhWwhHIiEYjZXlfFLDEsSRoOrBTtbkQlJjWwlLXxisnNcvNnEcPTAaTtEekHhiLlrRsKbBSsRXxiuKJzXYyNntyGgikVVhlTBfSsjBbBbJFABbNnZzTJjUnNuVvtkKJjIcrRrRrWwAaQqqQRHGdDhHvVfFvBiWwqOUTcmMKoqiIXDdgGxUpPuQnNBEoAaNlxXGgBmVOovUNnujJMWfFedDWNHaAeAfTtAsSPpvVSXqUMcXSHpFmkKyjmkTLgZdDzHEqsLlSmxIPuiLBblIrJoOIiWUNhHFffsSAaFSvzZIcCbXMynQYSsnNyMOosRTBbAayMmVAHlvWGgDdwfFESMunNUpmMBbPWcsSBhHonPpNDKkdKKFfIiiIkzJUujxvEeFxnfFAEvzZVsSMvVmeaxXNCnNcXfuUgMjcCJkKhHOoNxXjJncwmVXcCxvsuFfeeRIHhjJhAaHiXxOsQyYKFkaAAaUuvYRfFraAyVbmWvCHhbMmBbBAAaAaacVTtoOwoRPJfFMmZzZwnRoOlLFfsSqSQmbMmRmMWNUnzzZjtEehzJrnNqwIiehTtOHhoKSrRirgGXuHWvVkfIUPpgVvGbUuXYyQXlLgGNtVMJjtXoJWRrAZzHeENjSsgVvGslLkEVOovpPepQqqSsPDkNnuUcvvVVXqFfIOoipPFWwfQjLlPAOoKLlkxpmAaMPIyYgGWqQXxpPCcLKkrWwOoRfjpJjHCcJPrRmZAaqTkUnzZxuaAkkjtIKKYCtTAacjeWsSwSsELcYOoqFfOZKkaAiIqrGgOAaDBbFfdQqCcoOWOowxgGjJSlLxrEenCGOyKkaAYogcsEuxXxDdaAmxXcCbWyYDYynPpNnNnKkHBUuWFdcCDSskCDlTtLFfUaXlLYysSUuPLRrCnzxGgGSpCccCPjJIhPpHDSsMGgHxkKiIyqZzQvALlaJcgEKkvVrXxIzEeZeQqlcfFCzZNIxoiVvWwmMZrRLlRDdrzGggYONHEeNVKkvnQRrqYyXGUXmMlStrRaZJtzZAaTlLDduUeEXvaAVxSLgGXxFBeqjJwWUuQFoOhHUqQPpuslPlBbtcCTFfvEeVWeEKAysSnNlLMmVPLUTkKBbVrrBbRsAawTLpTtHlCqQqQaeEslsCcaFfAFfSlIkvaFJvVfWrRHbndoOZTtwWzwWsWTtPjiIJRLlrDVcCKrwWsJjpNbBnVvMSsDdHhrRzZmEeFfKmNWSRrsOfbarxSZbBoOHKkwWwWfUutAPpNnpxXPUndgYRbFzZfsSDUTtBbiAkKaXfFxIGfeEFZzauUugfFckKGiIaABYynlLJoesLDVINnPpIiaxXapMgLhJjJjXtTrRanNADduUxYyFsjJtTqyCzZzhHInpPyRrYNNKRrjJAHhLlayVvYkIHhivigwWrJjIEeMlbQFmzjKkJdQUuGghqAaQHqMlLmMWwVduUBbubBCbBaAAQNnqzUuZafmVhGOsScMmClLQGkEeKhHrREhOmZKvHUuyYhVAaVZztfvOoxRrjxmFfFrVvWhHwXxgGINBIiigLlGbBIusKkIbHhBlLlPpvVFfLYyiDdSIijJMmjJZlbptTPeEmMiVvYNnyfoOiEeIayYADDdfFeEQqYRJldIivAaznidDyYIFwWbBNWIZPMyqQxAarNnZurZGgDdigVuUBbUuxlLXqQtnzZcajJfFexWnNyGgKkiRrUieCcvVEPLlQMmjJsjJZzSqFsAwWwWQqBBDzHhzguPpGdDbBGdeTtmPBbplpDdBiOPMmpYyMeEwWtoOfHSsOKklkKJiJjdqQhZznJCHuUwWiXVLllLdDZzZhzaAffFGgFiIiDUgDFqQBbfdKCDdyYoObSUuvMiImVMmAsUaAKkJrRPIzXxZiAaAVXmMQqqXSKGdDDjJdVfFFKkWwMmfNzZZzfoywWYbRtTroOHfFPsmMirBFfYLlYyoOHHhehUWdDwzZCcqZzfFkKTtfLbVTtaUnNdCJjchjJwGqSBrnNyEyAiIaeMisaAQyYodDOgBzhAqQBbaAJjRropvVqGhlVeEvVvHVjuqSXxsfFlLoaKkVvZzzZlaQLlqSdDsnJjmLfFMIiFfADdaXJjxVvpXLlxfFOWwyjgDJjmRdOHbBnNUNDipPmMQjJTTrxqQanNPfFpDdfjJwBYveEVvmMVlLJjqWUukrWiIBDWwdqQgXIUutzmvrmxCGqQlvVtIiTwWjJeKkNPJVvTLHhmMTqQtltAzwDKbpPBZznVvtTNsSNnGgtToOHhIRriOCmIZFoOfziMcibfbtTqkkKKDXuCcUxdJjBpXxuPpxOXxoOGgZibBNnEexXxWzcAavaOOJjiRotTOEemeyYzZlHhgGoOPptTFfbBqGzZlLgiIjaAJbBeEjJQQHXxmlWwwNKkFfybBYEeUKNZeEjeiIYyETtsSxHwWkKhQfFqXqcvhHVwWKowKkDIGnQzZqTTmjvRrMmVJQAPpadDqMHhmOoBLdDlbJzZjNbBqQOVvYrKfFgGsSgGpAkKnZzyYMufFIbBIzqQZSyzZGguUXxYyYQpPEesSuUHhuUugvjJfFSbtluzrgsSGEevVRZUoORBbrDdxMmPpFfkCLltTcKMmrkcFfnlLsTtSeCccCENyYqohHHhXxOkGWgGwVvqeNxXkKnEnCpPHjlmtTMLJlLhGgKnfNqQgGhFfoHhAlLpPmCRSscZzJNZnNzNcKVbXxxCcqQxEeJjDbBdDsoFXxEYyfFevVedaARJmRcnntTetWroOmfbbfHhFBzlpmEeYWwfsSFyYsuUjnhiIWwFplnNjJSfJjyWwYeBkKbJaUJjeEspPSzqQZVLlJIijMQwXIgeEpmYtJjKLlDPpjJRrdJuQqrRUKmMkMkKUcCtTKkequkyYKTtUjJHCnNwWzWGRFLlYcdkeIiEsSvZpSFjmMJFfjAaaARDSKGwWihHzZercCWGZiDdRrIQkNbqUjJujSIAXxUuAacCLSsyNLlnNpPBfqmWaGBKkiIBKzAaJAqIivNhHKkTHhaBnOJwKPgbNfakKBbdDdDAnUyidDdMjeIYBbnlLpHhDJpPFfwVvoGgpbfNqDuVviqannoUurWwzZNjjJQagSsGmOoBbMDdXrRitTQhHPpmEeqQrxFfXCdIiDmWwmNSsSHuUrgDdGpdzAawxSiIxXmMsnNXZlyqZlkKBbdLpHxXbWsScCWbdyYDTtFpPVJjaRrdDiIhHwWxdpPaNntjJgXWwxwWQEdDjZlMNnpseEhHUZzuhHODUPAYrRHPGeEgydVNlVfsSwLlXxsSSTtWZGjfUorfkTtfsgZnfAPrRpJDaAyYdyeZuXxsSaviOorsICEeciGeHRSrRVQlLIiQqcCYybswWsUNnuVuqQSRiIQqKkVvYWYixXKVhHjnNOoNLMwWmVfFvJnNVvjPfYyFxXxQqBbXfCmMXoRnNOoGJuUnHhWMCGgdcQqCRrbDdeEFfqoORwWLrjJptcCscsatHrRXxDdoOhKktxkPpKcaEyFfYfrRjJlLsYjJnNgGyYHhUueIeEIOoZzZFEEeYwkGpJancCWMmwgnhrBbRHNAmgmrRaczsKkUBIibpnNXVlOonNLaciIXMGnwgYWwsMzZnNmhHrkHhPLdDbTFOoOvVGMmzGCBWwXIixoONSdbvkNCPySsaAPpbBevwXxAiINsSnaqGhVvSuUsgfALFfqdDiawWKAWtxPrdbOeEOooYiIPMTxXrReEGlLKHhOoyYVvyYxXkxXTYfGUubcCoASszQqZBBAYyIODdLzhHFBDdboOWOoqQmLleEdZtvVrDheYyoOuUdXxgGpPvxjJXfFjJuFEeffFzZyZzZPpzYyYgMiIJfmMuqQSsgyMfpPFmtTPpjJGgBeDnNvVdJjKiZmxXKkMhHgGPpdLHhmgGQfqsRGQtTLpLxXNIinYyWwzZwKsQqTUKsSndlBDDqgGeGLoOjrrRZZeEIYpqgGoOQgcpziEepDdxxjJXJjAaRrfFgGnYCsSckKJAaPphRQVgCtTcSsRrHFAKIPpqyTAatnWwjKkkLlKzBbzOoIiZuyYlSsLGgHWKQqfFCckMXGgdDyGKcCeNsSTEekERrVveEaKemMEkZUJQqjZqVGgfFvQiIpxsRrDRrddQqXEeMKFaAavVxPOfOofmMFGLlpPzZrPdDNiDZQcJjCwOonupGBnNjKkOoVqMyYolrtKkRfsmBEeSseiIIlkPpYnFfNuUFUTtalssSoOviIgKgGPpVMtzrhHRZPpgeEedGgvIbBqwfFTUwWDXxGoCnCcvVNFpGqQSFcCYJZZzzwWZUuggdIiDuLrRfAooIqIiWjJvtwWPpTPpeWwXPdDWTtgEiReaAEVBJjuTWvVwnkmqLChYUssxXQIRrQqGLlRKkJgHeQEGgIsSzUuzZAadGCmYwFqsSlLOrTfzZmMAnCyYcHRKmMcCkrhWwCcafFKkAkKnhHNlWQxVncCEeRYVsSaAqrRxXJOxIpPeEYyjJjJueYyMnWVviTtVuUxXFbvmmWwnByrRUuXaAsVwAafFkKNMmuUnwWPpovrRvgnxyJjoSkiJjWwJMyiOHhIXxHnNmMNsrRpqQnfFPpeaAmwtTwmFfhgcCHhTRrirvVHdhBlLbDoObhmGgLDHFfhFfvYbBPpFfCcZzZqIJeEjicCyYQznSsNytcVvpFfInxXMUifSsmuTMtTLvdnNhHYyxxXdBbqQxXzAyxjbBDdLlAaoOvVaXqQPmMBbmVZCcRUueLyYZzleEaAiJodDCcItVZztTvmsThAazYWwmZbBsfLsSvYRjSsEeJBbKxpbsSpPtJzZjxqNnFfLqAawWXxvDHhceEJjjMfFGlnZyqQYvUiIuVFaNxWWkHUCJjCUuqQOJvUdcaAyYUvoCVzZQZzqlLwmQFuUxvmVkmMaAiIUHtcOTaEfFMmtDsRhwXxKIRryYiUuWvPpeqtZzzdXFHTYyGdgcJjHwWPpkRrKlLkPiXxhHZzCnNKkcPpjSOLYSsSqsbjFfwsSDeEuUeEsSNCATzcPFfipbLqqwrWzQPpBeaAMCJiIuOjdiIAcCalrjSnPDxNpbBWwzZEeBVrCGXJncJTlibBXuUqQDdKfFAahjJapUuKmhCLlRrcnNHYVvyQqKkVHTEetlRHhIizSXFkKZrRzDdfbBybcCkKUcCAMmkxXOhHxiIwWJTttzXxZXTuLlFfulLyYqQgcCGJZTCxTtdyYaZEeQiIPaiIQLltdEbBhtbBJjSYiSsIysLltPwKQqHhkHFKFfvtMytKEMqIgAvVmMcruUFfuUGgRCwIiRKAfLMAPpahHmGBugxAupfOoFkuIiXcrnNAapPcRrCFfPpRcQHygdrlXEDTwfFgZeSknmQmMxNuUnCvVtzZCchHJTtkhNyyLyLdDlHhXAaPpfPpxCRGSsbVvADpiIPdPsrOmMoEeRSpmMmYbBxeEHaJqcCQDkKamIhHiUxRrrRbCcBCtTAORxbEYQqySaILliBPwieETtCcGnBTjsSFFffsSvauovhHVTrRrzEDRrnNwGmMwWTtPmMZsSzPpSxiIxKyYPUMiIzQiNnAaPpQqtQZFfdlLFRrbBjPpqQmcCcjrsEeyYSVzZwBEUoOcCNbvjUuiFUjJNnbBJyxRnLiIOHrRngSsIitfFTUDIiduNLVvNQqrPmMpfAHGgTllBKkbGXxQDOoTpPCSsaCezZvVVGjuxfFGgcabBANnTtCeQqErBhVvObBogkbBhgeSUeJeeViIpFMhBWlwWVTzZDzGgOeACdfFqkVfSdYEeEGgPpGaMmAUunrRNFfnNcMJjXxmDRbpPgSDIitQlLFfleoVpPSjJQvVjJqsxXmMkOoKvcCOyUCcMmeEBiICPpDFfdcpFBbghJtTMfEeJjWexXFLlHcChtTUuPpVvViXGrYRPprRPpUxQqCEegXelmMfFJbBDaTtAsSdAaDcCLlskGcSbwWdDmUueninNtjVgnBeQchHCLaNnADdyYyOtTJqQjwIiWNkJjBtTUXoOZzxbAylLAtwSbBCBaAAanwDdWNHhBbrjJiCTxoowfQqRrAaFUiRrIVvkwYyWMNnKkFuPQqptVUudSpWEPpewjJvMCEruUReohEeEedSqGLvtzZagjaRhoBbNbBoOcKkBqeLhRrHlrvVRSKaAoPJtaAhHOiVHmdDEvtTVRredDNWkMmeEDiuoOlHhLFflLyYpPvAwWfFiIFWIiwRQTtLcUuCvyFfZKaAkBlcrvFOorbBStTBQtxXjpPQqvVJDdPpztTLlJjZMDtTdTJXyUxzvDdgJIoOiTtjUuuAJRrjaXxSlxtTXHhHGclodrbHhBHhhCwqdgxXVvVBbjJvdDsFQBpliTtGslLQCdnNDmfFvMmVnROmMCrRcdBbkQqsSVvlOozZLxHSRgGOoxCcAAtyYTXUFfeElcvLGrRgtmKHIQqEeZzQZzqBgZPnNkDdiIKCkKXkKSWiVxXAbytkYyuDdYGWqdUuaqQBnGoDdnkEeKgBbgzZGWwByXxqhUqaAQycKfpPFkYjMIKYyBbsSjJTaZRrzAaJPPSVvVuIijsQaeYvNtrRFQBhPiHRFlQXIaPyYywWNWsShHRyYbVXZhMIWhdQqEenpPzpApPwWrRJkHhUVvBbLGzFfFZTYNnCZzkjJipCcCzYGgrRGuUgyKTxFlLnNpfqkwWrsSRNnWWwxFmcCcyxoZzOhHIiRMbkKBmaAriwWbMYkzbBpPdFffsGVvehvRyOMzGaRXxrNiIkKktUuGgDCAXxaznPRrnNZyCcYVRrvMZTtPzgEetTqQRwWuACFfzoSukKzvVZziperTOZzCTDwAaMlLlLiIlLWwGFEBKoEuUdDeQWwOohHqEWKLlnWwiPpwWQPpVYaAMSonVvNqFfuibgaCdIeFfpPZrRkzZKKKJjEvaAcCDHhzvuDcGNneEgCdfFZpPzrRBbXzCcenNMXxuOoqpEVYzZSQiFfbmoOKRrkkKhjycyDdkKkKxCcusLwYYydDMmmoiIHvCcVsjDLlKCqpPnnuBdDoLiKtKErolQqbdDRUuvYyOojJNYsOolsYxkKTSViTtNtMfAYCcKbsSjEnRPpYNsStTWwqQoJqQnNfWwFjHhOdDpdJIkTZzkKbsLJltTqQKvjghyYMNLlwgoNnvVlJjELlLvVwMmXxXkKWwGKBrQKkcMHhuyXxtkrXfwWiWSuUHPpRDaUnNHiIlNsSCcbySyHhzZYwhHTtxyMuimMcYnfFNdbwWCaPpARwlUuMJjzZMOYySJwzmyYLqtBDBbHZMKkwpPWQzZhHnNhXPccGZzjwWYBCcSHafXaAxFYyCOsSDOodVhHFfvUurRiheZqQuUuUUGUPSWKvdRrVvCYglNBcxXUYtiIxeqFfUjJQPUGFfguaUuAzZPBgGskRrjprYymBbjLHhioOkeMmjpzmpDooayJKCUFjshHnNSXwWeEzQdbQqFswCYyHhKErvTiIsSgGmibcCjjJwWRrjXsSxbCcBXLldvVDBbkZVvKkzKeOdDZhtTQCcphkKqYAajwyYAjjsCfFqxFfcotaAzBbZozKycOuvbVlLtnyYWgruyOolSzrJpjJPcUhLlmqOopPQVQqAcCutqQlLxHhXRRrRIrXYqQyHpxTCicGgCiSyrTewxRUVvuVHKlkKIHhLliHhLWuKkPUuUzdDjlzKRLlqIiQxBsRMrBbqfnoOuUSuGgUsqYmjJEHqXKkrIirRJiEeYvcCeEWzqaTlEhHjTOtPPpmRFUTKrLlsNvFLRwWnDaAxcCoMmtiFPpUodXxOUuoRZzBbIoOsSkKiSrRkmVKEekUyXyEjzZzsSRrRNhTcCardDhHOolLipWwrRuUeGgjJSKjJUxjaAVqyPyWwyYmHHVvkFfHIhYHhyUrSOXxomaAkjqQJfKWtTdaviezpPveBzZpuVWbiIDdKgGbtnNExTtXYEeyFoaHszlyYiTtOoSaATvVxOocIWwGRDdxDuUvVdAZblPNZTtvYCchZBXDdACfqkEqTtyLtmKkZzMmROLEUuelrfmMgVvIpPyYhHoZzOERxXLktoOkKoOwNtQqDdULluiIiumVvzZMLlhHgGTTCoaoOttvYlWwLbOooihbBwWbPBZWRPycGPSsLliCcCMxmQALrRhSszuUjaNnIiOhqPplhHfObEUPMmTtLlLtpPTddyAHfFsQylLVvCWRVvIyYPwnIXBbxdPPLlrHAXxarRAKkdIGSlMqgAaojcCQqJOecQqXQkrjSoOsJiIMOphVeEvHITNNnnSsEdDchekKPqxXFrCsSUucRfzFqDozGTCcRrWFcCbMYumNiwaadDwQheuPJNnkJcZJjYyiWwTtJjbdUuEwrRaAQcCnAiDGgdyYFdjJhtcCERenNgkqbGjJnwSsWNePkKNvOrcCRoKpPeEzBzZbZcCdLlYyEZKkpGlubmIGgAWtUuCcYyTtFtsBlaALNnSunueEUIvEUXulttTRrcCszpjhqQHJPTtPEgGebBATtuUxUutTUZzCxXcYyRxtlFxbduQlLmMzCcfFFfAaCcFpSUqTPzrGRrgRZteYnwxuUGlnUFUqmMxXQAaufbwUsBAcGeaHPpzQqlxqFGXvSsrKkPpaAbbQYZbBrlNgGnVvyYmrQvcCwNDdnKVMQqmLlvfiIeEHhoyYDdqQUgoOliKfFSklBAkKdDNFxqQJLlkKNEDddxXDwVveEhGAatbZYCHxuLlQGrYqfRRndjJWmMZzFEnndtCuNqGXxkKcCgMJolLbqSsBAaiyfyYTfFpVxpPiSNnPpbBbhhEnNmJjqlnuhMPpZzEemwgLqZgOVAWSgeIicFwfFKkYZaWBbBbwkeEKQKjLOIGwyPZsmUueERrYXmJuRgCcNBQqAatILgGZgkKRIwXxpuUfeEJxjWKkLjJExCcihldbNCLWUuzrfwWserphIKVvVQQoJxwWkKXyYOHWAhIgMRrKKUKSVqQjKEqVBgGtdVvHhVmDpmMPfROMKUhpcCqBbGZEMmFlsSMlwaAtWEtOXJvmlnCcCcNLwWlQqXQIiPRrIiDdIVnyEHhexXYEeBqQtWktGgTbBVGBzcCVvwKkskKuLlovoOVHwWuWDddDdaAMGzMaAlWUXUlxVbqWshqQUEeuoRWwrrMmRbXxNNdqBPdtToDFfPdxHfWwFmWAzjBqsZknvafRrDdqoOrhXxHRkKQrRKztTGFDdJlzZLVvMQIqNWyvVYKoeoOXZDIlkKAGeWaAHBCYYyycbhisgchJLiIrdfqQEeFdjSsBOtbBTOoVUuQsaAYysRrtTqQXxMmJYZzNIutAaTrRlnbeEBNLUBiUubiIBIJyAaYjkKXwhOIisuiwffaEAhAodRrhHDVvGmJRrjpPbNSPsWSsFfdAaisuWklFDdiuXxUKnqyDaAkKQaAqnBJkVbBYrhUuHRUucCcxmmGgGeOTGKtibBEMUtTumZNNbbyYGrRLAacWwsSxZfzZtTgvskhHNnbBJNOGhHfrDdfjJMmMaQOoPpjJdeJHMYklLkOLeEAdzLsSxXkKyWwmMcJHEgVrcCDHhsbvVBhHVjevwaUeEXwAwCYZWwGCmMFvKkeEVfGPcCpzqpCcnXYvHhVyYKBdZSBCTTeErRttKmRrLDSWkBsSKXIBwgGRjAszvKxyLuOnNMTFOynMUumWSswoXxlLrVwpCcPmrTOpQHEgGxQeHzREFfeLHUBtTSsgyYkyWSsuCcgXxkNdFfpIiiaAOwSIispAzktTCclLagcgdPpSsJlXBbxaDdxFFDdHhzWHhwZunNUkKaETtciqSZzsnGguDuWwgjAaoOJxjJJjaXxvVSBxwKERrVVOFfdXxoOVgGcCKOzHcWXszuUMmZrUORHoCSxCtTTZxXKQqzugGKqQkhXSnaAfiGgoWwoMrBEjJAALlSmNdlRIilMAoPCcuUpOchQMcsjJfFQqmMdDSCyYkdDhRVvSmdDMsImDdetTUppPAJJkKexqRdbLqmFfMAcVrRvpPKkrcswPCWuUcAOnNuUKOoeEkpBxXOCPpLPqUQTkzhWwAaHkCGgYMuHhtneYyWCcjJjvVJQPpDdZOnBnafFQNpqjtAGldDmAavFuFJjrVbBvKoLTwRryfcdYIiPXPpXqxsErMjpsJWsSwWwaIYkfScvVdDjJlgPpGRqxqQxAaVQxPoDdRqgiBqQeEJyYUuBZFfkzeEgSseOHRKwyYoOoFOhzBgGtTbZSsmMIYyiTxodkiAnNiIQtTVGyvVvVBPpBctTtiIWiEecWXxNWQnNIiGIYyvgGVYUOebYORZbBJZWnNQoOqYbIEUPpueVBqcCIxTtuJMaqhwSsqZzXxQWbPLwntVMVvPVDgghHUuGtpPMTNHNmMKMeHhdDMmRreEBbEmknhntaAmTKkdSsDsSdDGdvpmwWvTNsXGgDdxkNnkKKxXSlZzLWlwWpBHQAZGgzmjUTdDtXicCQuUbviBywTqQtBCcbzjzoOFfroyBEouyigqwnwTtCIhHwoWwODxXdTCbPpvVYywKkdMmvVDWbvVxXYgvqaaAIKDOXtpPHoRrfOWkrhEeowWEGZKSszbjYyvVbIGQrOpXAwWaqvXXQrLjJjJCsFKkKyiAjSPJAamcCReSXQxxpyDFfCKuUkFYWtwWlOkFfQpYMmyPqRpPfTkKZztUfVMLgZzvyYVawWTsSJQPnqANbNVSsXxvoziIqsSEefFwENTUOomycKZVvKoOtqqQuOoQplpPrRSrRscobGuUgPKkDdoaCwcpWSCRpRKkrPCpxnNXPaQlDKkdQqBDNnrQXXxCcEjjaPubkKBEMivGgGgVBMmbBbaAkKrHKZzzZmqHCamnNTtLrLDnMsyYahHaebRfFnNmmMOWwOIcCFHhNsxHUZKRrkmRrMJjkztgGWwcXscOqQqKkQhrouRSxwChZoknNvfFxXWwDdDovsSvQqwWekWXbsAXGaALlUdUNAamMAaQISsCelLAffXALFfjDJjGCGAOoKkKZaPWoIPDnKvVGaACfFcUwYKTtvdUuoODVGbuhlEerZhEqbBQqXRrehUuqPotRVvDdMWvROMmNdEeDYbBogGftmlLoURrlpPYXLgGlkVZSENZzneamNnMJrxGgGgXWbixkbKwsdlNyYnMkTtcbsRfFzZrzDbkyCcqQxVDdzeEZvNPIHhitTQZgcgnNzyVfFvcWMCcmHlqQLKkDmMdhaWxLluAWsSVEJlTtLvNEengGbBSMmdRvGehjCYEeSsOoOoxXlZDawWlovVKWgGwCcjJKymhjElLDOoqAfzZFPpmjJFRFgYyonBbjUuKSVqQGFdMyCcYLlmDzHhLIileEXpPClsSbBgBBUunnzeITkgtdDoEgMMXCyvKjbNdYQNkIuGgUfLKwUStTIDtTCcwSpsCcnBpPvVPpSsMgZznNkKsSOmMaHaekKFfAFFWIUSoHWxyYbtTinZzDdtTyjhHSSSsqEOoevojJfFbJHhBbDDRZzbRrEeBljHFfCGSIwxXEgoOnTtFfNaiILidzxxXOoEOkwnQiqmhHiIjfgZvVkFaAAVAaRrNKzaASgGbBDdQYyNnbJZawkKMfFfFhXDpdOflyCeYyEcaKkAdDYLFDpbQpPDngGnNnBTtOcCHSwQBjJvXLuuUxKkuwlGgLLmZYXuUxygmcCMmaEeIiAGgDwUhOUSWZqPOopQbgvdDtXDdFfxTKEiIewTbNvipqxLMVjxoTVxXvIiewTnNLlWLmSsLfezgJjQPHukKkmorFdMvDTbvxXQeSskJvskuwWyYkkNnmuRrUGgIgGiGiHawSshovVjOqqxXnNvkiZzHPRESFsSRZwlBbcnBSsDLFfmMHIXelpPwJrRXbBsSjFPWirGzlCcqQiTtWbBwTiIbnGrRrUjMxsSypOBboMSzpYWgiolOoJkqAzyMmzVvZDdUubBWfCEGFfswoOavvVoGzQWwlGWHUNvVLQxXMeHtTHBiIsIXvPtFYDdISsbQGgBlLOJjjgGmuUQnUcTDNNsSefwDNrrFQLlsjJSyRgqtTUXhcyzdDnKkNBIiTggGHWoOrRePGgpnjXTCctTtTtXUulLxfHvVhnabLKskILGeEuzRrZOoOiIyYnOousSUNiIFkcZzCWVCcCcqRIiMlLLRzyHsOoShOoqBWBbwWhHwBRVxgfQAawWXMKknNkKmYyLZhAEgCaCcbxXSuPpWBuNLcCgXWYyaAlDdqQLUuNzZGgyJJjjrRETKkzZptXxXxQsOoSuYysJfFXxhZQqzHLljXxPfVvZqUDBoOXfJjLTQqQqXkKruXKknSsNapgGZSTLUyYxXxuAaNneViNUslLbSTfTwKkaiMBULkUuKgPuUpPLNAanlznNeCcDpPkVnpEjJvVgBQKYyGEreTHeEDfIaNqQqvVWwWeDBFfFfIzCjKjpHhpPUEHqWAAWInMUywWVviImBKkfwSstgZOdQfZQaApEHCsSetiPoDdmRcxXiQqICBLlbyYKqqQEeCcCcxCEGQmLsgiDmMahRaVfFvAppDgGiNWpirwcYqSgGdUuDhaYDDlpuedDBoFUvVZzMmuLEADrRdaeQHoAJVvZHlakQqKqAaMDmMdXmcIplLgCYCcprwzbpBpPHIrROByjJVTTAOcttbBUIJjAaDdTnkKWoOTjJKRrFfjJtTlreiGFRorMqQTlYdDVvQeLxXlKjrRJQIWwiFcBbawWDdxJMmjbwWzHDdynNVznWwpLBzeEaQqCcXrgivjJVCzZXtsIDaAdLPcCpZShAwWOfeTBkBwXxvUnNXxKkwWjJPyYbEZzVZEIVAYyeEDRrwkeESsFKMsRwWuHQqAaXeExiMmhKDdhhMYaApYQvJGgXukUyYusEPOoIoOiIIiRALlCctHKksTtMmSnrTtZZzvkKVGgJeYxYuvMKwWsxdXYyxDXrpPDpPOuGrRgwWwWfITfFNlLJjnOXYydIiNrlfaAVnqQSRktpPufrMpOoTotJeLlLtNnAKLlwWkQZwUuLluUVyIjRxsSQhLleMyQNFQRmrSbXMmrXxkZLeTtEJZubBpLCclUwrRkhveErXDdWEDdtRYsIcCzZIVvcDdFfAazZttTXPhSsxRirrTUaXxvEeMLrRlmbBRVvrrDsSoOHhdRMHuCjaLlyYAdDRZsLYetTEUQqBbRzZGLlwNTvtTBsRrSVnVvQqNUDdoCnNYkyYZOTYaAyOCXFfjJQcSkKOoJeEuEeZzUJaWJyQHKRrJjdDkvVvVPqIiQuwWUcCqHzoExJSsJBIIiMtVXSsmMxReJjLlkzZpfFzgGCcZPcWSfBDqjJZgHhGNnxJFhHfuUfucTWwtklmMLjYAiIOgGOeuUEdPwWRwWrMZPJaAVnNvlLEKvPpVIBoOpPbuUlRrJMRPJKSbcCpvVpCQqcqjJuQqeEQOfFoEXxXiITEeOoYywWyuCvIKkiVbnLGZzyFeEXxfcFfDVvVBbkOowjuUJsfFpugSsuzEHIocAhHmMhsbyJHhgCCpxHgGzZqmzhdbTQlMZbBWSsjsoDzpIiPOGgoZdlLVvmnNhHmLWrXxcBDbBjJlLyCIUmQqYXCcWsYBBbrRnaALaAheEuAdrhswZzUuVvIqQFRfFLhVvFfHLlLllrxRKTYUXxmJjyYCrRqRbfBbRrFkgxWgGleLZzOPpGWnsPpSMObBoSsfQDdCcqFmmHGJVkrRLjlSBtzJjZKijDPnylLrNbBeJBfFTxXpPtkyaFmNrRUunVOoRNnrNnvTfFejJOMQjJkKWwqmoyYZzEnqkKQmMsSIvkKstBbXyBbSLCcSDdyTtjJfFnVrBgGLORFfekTXxkIsMmBBbbbBSlOuUOobUNNzZQcktTdJQqbBShOMLlyWjJlSUXYCfFYDdaAJHMBIqsylLvePDdQMmUTtmnuUNEZaAxUCcuRrUVZHqQhdVpPKkehHkIiPpkzEkFtTfKiDcAaApPGYyBIUtTQOdUWwuDTNUuntNnsmlFcCzZfLyUuvqNnvVINkwcCeAaOkbcCefxXgmWdtcZzKkotRtTbBEDVvdRMUumrLlPmMwWWwpPIZbBUsOwWZxXcaLlWwUrGOoZpzcChmMHmzLlpNZTtcCcdsSMSsmgGQqTpPKnAJjgZmoYrVCcHEQqiIgGgSFDRzZMmrZKytTmRrBJjIrcCcMmndDYyNCRfMmcCFIiXYCMIifXwEerRKpPQFPfNnXtkZzOoYYydDyUuZvVcfFPItTRrKNuUnqQcAaytzfZaAglRjJhHruKrRrRjaUuPZNxHGghXDAaHwimHzxvBrdDwdDnYzZpAKkixnNqLfPjJprhIpHYybqfcCTnAaVyEAqSJUvsbBMmuUppjAfALkKlaAaFtkiGKuUkgmJmMyKpPGgZzPpkJjuUOoCkWwKZzYuHQYbckKCGeESsNOgNbATtDQwgsSyUSsKTYBavIwsZzxMmcpzGISsibihkMeEJjPpTltTVCLeEaAFfuxaaMmWwXKUuKkkSiIkKrRsHhrshjwWJXAalOoLtTKDRrorNFfMcrRqtTZqQzSgYyILhHPbqfSGgGDQAaWfFcHRdDDOLChHgxXvVhlLleEjlLVvJLLiIHhsUGwWVZjJXuYxjuUtOoxXmcNnCPpTqbsRfeEzZVRCLbKkzYVvVlVvqrfaNnVlLmMQqnNUIdaAKwrRnWwDYydMhvIoSsTjpOkWwsEQbCnAaaACcNnOHkKrAnNJpPGhHjJATVlTtgyYQsDIipPHOcMmmVPsDvTHhHbBhUfmKRrHhuaAveEVWOOXtcIRbcsWTaYvVaBubKnCrRcPpoYlvVqEbNGvbBfFiIJTIEeuUNEMkKUuBsCgTtKSdPeEpjLExPpGcCcXurwWZzyRgxIvfEwpPFmjHGfIizZPbuYEyTtYLqTdsAaGBUurdxXiICgeyDsFvKQDcaEoZdmMcCtGgvWwLwbHmfPvEEUNnujEusEDdGHKGHbRVvXUJgvECKkccAcmMnNtPuUpgfFGdzZqgLLNnthcCXxaFQqREqQwWZlsSLzenoOlnmBbMYNnghHgGGyGNlLholAaNrXYjuRrlLfIJpKkPVBnuLlebWOovfQqegGSsEFoOCccrRCsLlSRJCMQqJfDzqTIqZSsmupkNDdnXXhHwxUuXmMubBUWwOoTtWsnNrjJRvVrRpjJnNgWdeZRtOUAVZzsSJtbNgIpoOPWTtNnpqBbQbAsVvZzUupPcMmCgGerRBXrzZoKkacXTtJMmjuMYyAdkKjKkFfAhXgGpPlLyMGnNguUVvwSsVvWlLDaoOAdgGafFCcBahHAgrcXEeFEePpxuYyUYzZlCcYUuYnHKkKVvjTvjJVhHctsRVvwWkKrjJSTXqMNKsEzVUUuuwWvGWTtJjtdbejJAaEnAXgGxaxpPXmMXxNBRrexLRDFftTGuUYhqCuUbBHhCwWxUKPUeEDdHhaXGUbglnNFhsSBbzZHakKkrWrRcaAXxeECmMamMhHGiQjJmVvevuMmPpUzxXZPppPXxdDVkAaTYmTdDRrjJVSsAMmMmakfnNZzhWNnpgGTLlTHeDTHhqCcAZzpqzADXctHMmhzjiIyJjYUttTwWlLTmMUniINJjtxjJTpPjXoKPpabBuBYUuxsTZbBsSztoSsmCcMxkOoKqQXOZyYhHruULnNhvMoOktTPAHkuLlUqQaAgGxGgILtjCAaNjxcCgcRvbPnXRrLldiIpNsuUJRLDNnJhHcCoUjOocmEbUuqZwYyQqRaALlWQQlBPIqQpCZtyYaGPpgcnTtdWJVvGgBSQHhsRryEelmnNMosJIpNHhnKzZhCGDgtAPpahfxDZMmqDdQPpvVTQIiEVwkWOqQUVvuoHvVrWwaAuUSdTuIiUeAtoCGgThuHhoOKvMVSfVvFjaAJsXucCYydWwDaAUfmMqMQqmMWLlvcrROVufFCDuVjocMGgVvmJQqjcRrXxuhKwwXnAfzNLgmHhJHmMhEeCdVQlQXVvTvcCVBjJeEPXkbBryVlFSAaEMmezcCMyhkKDRrdHZHWwiItSSsiPpLluUIMRrTiOFfjIrRESsrzvMpCcCmMckKxIiHhAJXVvYaZDXDVlWLlwmVvtYyUMpPWkKwFIumpPxfFXNIiuUiZzPrRCTLlVdlMvVHJjBdUuHDhkhHKRmMmMItGHMWWMENiWwIPSnhioIYmjIKsOdnNDMmYCcXhHHhNGVpPoYyOVOWvnNSFfJjxYbNwWMMVXxEeBfvIwNmoOEUJjleELfFiXxXojTtQvzZyrNvVvXqwLnpHhPNaANaFtRhHNmMnnOoFNnfNoxXgpPdfFDhHGQnNFffWyMqQcgDfFkKZieHhqEhGjrgyYuUYyiqSSsSuybrRBHclQMKNtUbnBebmMBEHtThbBlpPLbNvQaAqrKkIyrRYenNGaAwpXxxEJjtaAMmTVwQvVinNOZzLFflOaFAaKkOoIilQqUcHpFfYgGyHlIiGxXZzZzPpUuRhHwWraAFQqmMmBbNnMfgLhPhCGGzmdDdDMAajyfwWsgPfcOSsgdyAaYGUuguCctWQiKkRlLrOoVDECcCcqQfFfFhXxHGPpTmnNlGgJjLvBbaAkGVSLAuYyfynNMmsUuSKLiFfEFfyYBbRrZzbMSfFFrMmTRLbBOmQvWwgNIiLlnGLlZzwWHhKkJbgPUGgrRNWqzQuUqdInpRpvXxLKklVPguUMmrRFoDdYypXAfkmkOoKBbxXxDoOvVScCXPozxXJjZzmMuzAeoOKtnzZEkgEeYrRxmluXxULwhlLhMmHLlUJjsSZvXLlxiIVJNrRnNYQwfFcCWikaiIAafgbBGIihyOoYGvqrHjcCyNaADdiIPpXPIZPFfCGPyvVizzVvRjJJkKlgErRQAaddbUupPLDNkugGtSAakQuUqWlPlqgryYSQFqMlhHFfLUuaAlDzIBbkuUPpAaNnEbYGyeEYUQqMmFznTtNZjmGgGQqxXgGMmSsxXvVUMmVDEwWYyMmsSHfFdRTzDJjMwkKmMJjuUPXxpUuWwuUiIfZlopPiabAiIabcClLaOBgLlFyvVLltgNTttTtTnEeDdtmjEeJpyBDhHfFRpXTwGgfFtTaVvmMkAEeILlvVPpQhHlajJFbBGUuSlLsHgqQsSSEeuUsqQTCctQkKkmMOoKWEnNeVEgGQqSsYpcnKVBDaAnNDyYdrRmMscHhCnWtFfMmTwmMbcNEengZYygoGgpFfoOAaPftBlpKRSRJjEerKsYydDSrvnpeEPeENVRjJmMkyAcCaDGguUpPdHhGjJhHWtTzZNgDdmxuUCpPJjAvxPuKkShHZCAaAsXxrRSMGMaGNYvVyAjLlvVPBbglYyLKWyefuUziBbiXxZeEzEYyyWwScCFeBbQqAClLXTIOoiKlLLlCckTAIiSCBbyYUuAatsSTSTPJjKkRwWllLrQcCByYDdDcmwlhHLNjLlZzgrVvrROcCxcpPFpgGltTncCYyJIivkIOoywzZyoOMzZmlLrsUlLvSSBIilLqdDvsrRrhEnNgSRIHhVAUzEYDdjPpEeIivVaFNzXxGSSVYyvsUIiuFeEKFwpPWRQqDdOuFJgGgRVvrpPzwTxcKkCsSXIiVUuvtjJsTtiIpPJoOjWDdHhFGgvFfLdDnzZvDYphyapueEdoANnhHaqQXxZzSPmLzJZzeqXxCcGPpTFfwWXxAuUDlLXAcCvfYwWvVzZNEenyBwQqwBhPlDLzQYLTtzWIiZDPRhsnMMAacRtTMJjuUOoguUGNnqIxGgqQSsADdYyEeqJnBJjImMibRhHhAZzaGkKgHONNAqOxWwXoQYyQXxXxIUdQYynFBPOWjdHhgGPkKcCjJNyiEJqKkQRrmDIYuGgNFnBjJCckKYyGpkfFWjoNbvVAtnVyMmYQqQajZWwkbbfFgAwMQFfFSsbhKkHnYlEeaXxiZzhHHimMIhsJcCQGgBnKMmrRxxXjJXqzgLlwREqQIgPpfuUFnNksdrJfVfQqWbBAawVvPpKkQqFvsPzVKkKIiDCyfrgLlwZcJjhJjgNnGQEumMmjWwkJjGgTyMPGcpCcPoyYOCixnGgNWqmeEGgvzZuAjgGEFsLUYyuPfHeEIiDdNlLTRrtcCJSyYUuEEKHhFfkFpPfDdJjeLlWwegGWwymMMPLZsJjQqSBFMmMWwRwTEFfsStTpTtmMPeEsSNNCECcerXxIiMjrfFiIDxXEeEMeEmfsSOSdhcCHeEXXBJjyYvkCrRBeEoOZzbNnnnjCrcMaOHtGgTnFNksSxOolLXnNDdcdAaqQcCAaMmOoDNvVQDdgmMKFfMmQCKRXaAoOpPgGLTzpPZtTBsEejJhHKHdDhkVGUqsiSsHhiVvUmLlNaPsyYSgXgGlLkKxGkRyoiIqQnKkMTttJpPjbBtqQbBNgidWuuUUOkInNiftTFCQyYwWJHhznkugdDGnWGgZzLMVvpgGPhqaARrqQLEuHhdDUMrIKkoKkoHhAKMmkVCZgGJjPpkKwXiUupRJSsjrPIIzfPpLFflFNnoXUTbBOotkKPbtTLlQBHWwhFQqvVjJmMBXxIotNnTkmpPMdWoOZajpmMnEmsSMEePpXXSsxxLzZOoXxYyRbBsSrvVgcXMziIZRVMKkCcZTixGbwRKQqWAnNaduUrCcRYyQqDwwQybWFDWpPktTKwdMQqmAhHXRttCcqIdnuhiIcCoDrMgGdGJSdDsYoPBzOoZQqAabmBbcClMNALAOQUoOJvwWhLHgQPOaoOHZbFNnjJfGeEqiCcISRrImTbBtEYeOoYRZzbsQGgdQqDgoYyOWbHhNnVvBHDuAvBiIlFQnNqQMmhHGJjftKkTFgqQvVOouHBbHhERjJZzrhybRISphBAabBOFnvgVvksiIoDdOxXxQIiTHJjhLltxvafFzZpGgYyjlLuSaIisZIizBckGCcudIZHzXBbxvnNqQxIhdKkNnVIivDNnHhcjNHjJDISsjKkSsLoyYFMmfhFTmonCcbBuUIiNIbPeELMTtEDBbhHgDdBbtTFbmMBfgUjJGZGgZLTXxtldbgcCGQqbiIxXaSfzZprRIuIYwXEACNTLlEeMOosSmvGIzRUVvzaAqQXxhHDdRaAXWwqoRroRrOBboOnNOQRrGgqQYPpmfFpVLlvSszEeiwnflGgLZznNlXxSsLNZVAaqQzZPpDtTZzhzZwWmMNnHLjryiSsIdQqFIBoObBpPLfFzZzeEkKTtRrnNUFfmMQqLllLbniKkgQqGRrRfIiuUNnjJMXJXkKVFTvkpPyYzZzHfFGgfFhMoHegqzZogHvcyYCEwWmMesStTMFcUDvuUbBUumDvVZMdDfoOdDAaqVvCfFcBQqwWqQnNSsrRLmNniRGqQRrUSsuIRrVniZkKcYHhQoOHhNnOoSfwWHQXxqlGmPEwSsWeCcAAivdlSEOkKyYRroOjqQIiNbgCGUPoObBppPFIifEezZXxpLvVdDlPTtnmiIMNXxHhAJjSxXsRrgudRrBryGDNugPprRGhHgGyYaTFyMmrRsSYhzsXMmRRrAXxBFownFfMmvVMkYNWwuUdDyYnyCoOcYYyyFfKkPSRNCcnoUuOkvdsSUupwSZzhcqQCHwfFWDNBYyAanNDvVsSdhwKiIvVkPpFPpnNNnjfnXxNAVKizZLLSzBbZBbAFfcLrRhbBTtMmPlmMwWCctzZWSRwWvZztAauWwlpClLcvYakwJFfjLHhpLSftcCTbBWwdDEbflqQsuUgnNyYGjzATsLxugxhnoyGhHmNAaDdncCMgGIQqrRPpOXnNinLEikKrRRBbLlBbWweGCjVlLYXhmrRvPpVdteETBbisgXrRZNcqQlpxAudcKUZZzzuoOFzZffwbBbhNdwBMOoemPkKeEppPMbBEeEGsSgXUbBeSEeNRwkKcCsSWvVXsXQqxyfFVvYtTyYXTtRrFfohHRQsSzoQvVyaAsoOYySClJyGgqQkkiNGgIinTJKKUXvKkVNLluKwWrRtQAazMpjOpPSsozZhPJFZzKklweEyYipexXkKYyUuEPwCcWXapJxleELCxXHhKeExXRrbBGfFgdpeEoOQPbBKEeXxZzUuSoOJoOmTZztMnhZzaNnqQYaAywDdfFeEjOHhxTmvTOonxqCcgGxBujJiFKoORrasSnNAwhUxRoOWLlNnwhHiIrRIskHEoOCcjJaAWmMHlLhpPoOQMmDdjJRjRrZHuUTJjJZGgNubBnwrWSswXxBMqsQKkmMrPphVvHNWzNnaBbMmAiIOojzZUdDuRrpriIIiOMBlLKzZfkWwhHyYxyGgYBbVvXqUuSbBorAfFacCMeEmYyEErRUVvtTEmZzMepPSMWCmMmBbGEeVXhHZkObCxXwmqQsyYeVkKLhavYtrSmYSsTtyqNYNniImxhHHhBipPVsnurRTtwjRCcUpeElXxLiXMmxXMZVvgGzQeiaAIhGltKMJRrYvVnwWRfuUMmFpPrNMfEecCPhsPpxCgGmDdGglLaAuQxsSsaFmsSKkMYyaEMmAbJjBnNahnwEwDzoOZdbFfGkKrRgwWvVBbDdLlkKLnOfFeJQqOojNnlLpPJjbUeEiIuOOokwWCtuTtkKoQpPtTIbVgGgrRhChlLHiPIilLpLlTrRtTtaaAbtzlLZoOLtTHsSrRvvaAUudDYyKQqxXvVIoOYrRPZzpZzTMmxXmMtTxZiIjkUIrpPkwWWwSrRzZnNIKtpCeayYAVCwWSjSsJItTJGgjLqcVJjvCSsUuKguUQqJgGjbBGedkeEKpPxzJyeHLRsSeEjtTzBmdlfFoUSsGgrqCciIZzjJxONxoOVFgEehHQPpAaoOqcCGkfFDIOTtoXxiIbrIibOoBtTAaRBXoKkQSUIiXCBhuTdyYDUJhUuHpxXovVOOdDPMmpSCcRTtnoONrqtTRrrRQPPkfFVEeDEedjxpCYylIbBQquUstTzZBbrIieEwQmFkBcSsDZzIJliIUmexbBhSFQqhHAfFmMfRuKkXgoBTomMMmOgGmilVbBZztLlVvDwdrRDzNnZnOMmIpUbnCcAsXxJjdpPiqQIkwRrWxhHZvnNTtirRINKkkqYyQKkGjJgGgaCcdVPptDdavnNHEWOoGqRJjmJjiquEeQqdeEaWBWwffFDsbBHhJRrmMNnHhgGbeEzZqLluUpdDPwWQXxBZzNnhUuHtTwWGLHhMmSsyEeflXGYyvbBPpTyojJMoOAbBvVDSsGVMzBbpzZBWcCFfwbupVvOBbCcsShHRGxuUPWwYyxXuEWuUfiTUuoOteEZzqSsGkUkKlVTmMtVBbPpxwGdPpfuUNnXPpPpscvVDiJeAaaAHdpyDKeNpwWmzVgUPpuGbgkgZjJaxXAPgPDzcCDOBKNniPfFpFjzZJFBDdbZnuKKWwkPpyYVvDKKwWUgGBLVvKFpPyGGSFoAaUHsSWwqIiUhHfMCcWKkvVLlgGTqQUaADFbBfdlCgsSYyEetKklXTsStLuBzZWwOpiHhKyYzuUkdYyDsSKFykKUwziHhIOoQqtlLMmSsTWwtYytUIizijkKGgJlLIzZLlrRjJZMBbeEDdaASgGshHKLlwSPpsxXkYQqUTsStuyKEWwaOlQFfaAfQqbwiIFfIYEQqeyYsFMmfktTtLlHKkhyYKjDdJgGntTNkidPrRQXapPWwbpxXoIlzibCnNcahLldDsSHABcCIeEHpeEQqxXHOohaAPkKMsXxSmhCctEBbOoaUuUEWlLQoFxXMUuIiZyYeCvGNaQqiIiJjNWwCfvOoVdgGIipnNPcRrGGggGgxXCjJjKkJDCcHcAInNSsiaChFEfoOCBQQqcPpCqoHEPUUuGgpifFaNieYpPoNIiGgmVvEeIzZiJjGgGgMniIqQpWlCZprFkKsmMpPgGZhHzZzKkjEXeEXFfrRoOaACcHsSKvVvVrRooIiWwgOorPWNncCHoOBbcCjnNYFflpcpPCPpUuLlYIiyeEDwWdOomeOOooGgfqrRxldDLpPmzKkZcCHhIiBJBbeUqvVKnIOBoOtTbBIiHhuUwYyQqWXrCcRzZxbHhoWEPpidDWwiKkIcCjQIibBwOWGgSsuUcdEbBDdcgGmeEdlkRAaeEJjrzZIisfnNUuhHBwWMmuKkUxXbpOChHcreEReEYPBbpHwkKmMWUZzyYfFEkKVvyXxYCcqXxrRqVvQTtGvVlLwRvisqTtWwQYOogWwgVjJjJtTvGrlIiICcSSYHhIJjGJjiItQqlsRrSpPLNaAhHCcnJjTUefFTtzAXgGYyLBOobfgQSsGgqHCcSAuUzmaAMZEerRaXxvViIAmMokXdDJjYysJjNnMvVVMBbmJjfrsSLZLlZyYcCCclkXxiIJjKyYqQLQYyFNniIAGgvbyKkYWwlECccCboOCcBDgGCcBuUIiXcEeCxbxPpvZtTQqzVxXmMoOmIiPpxrRXLLllniINMDswWSvVdSbRreExXNXnNxnCcCcMmJjHhpYyiAaXPuGrRBEeujtYmkKMdDyJuEeOozRRJjruUrlLGgZBEeOBbokZOovXxcxVvOoNnBlLbgWeFtTtwWJyYnNaADZzKkfFjmnoeEhHvVhHOhHXDdKkZgYyPpJjUuGCcDsAaSFfYNwOYyYvVyubVwWvBwWGgcoOCUZzumniCcAaBgGZzGRryFeEfgGrRiIPyYzZYxXzZflLNnjOphwpHhvWwVltcCPpstTSHhUBbutCvqNnQvVWUjoOJcCuTWjrNnlLRJoOjbhHBeZhTtALVbJWwjBkqIiIiQyYKvNnlOIaKkZzTmMYgEJlADujrJjEFwroWwyVCcvYtTDdEeQqQhOoTtHaArRmeEJiIkLXxlKLlZaQqAzhrDduNnAagGUcCcSXPlLoArRIisSaSsyuZzUYBwWbURNnbBaAWwOoUuNsSlxXwWbBTBbtpGHshsKkSHHhSBbtTRrbSJjfFszAPpatCckKBgwDDdyYtlLTDdddEeDhHMmQqjeEYyDmUuHcCAzZauqYpmMhHmiIMpBbyIihHDdTPQldDLlLbBqtTpTtYJyYjUnKapPOgGosbVvcOGWwjDdJlEBbbBBSqvVzZpPEeQsbdvVwiITcChwmVYQJAaRrjLlLllEefMyWwQzhHZFfhHAaEtTTJyYjQEeDIiQqHhxXdAaMmaUuPqlFfXrCFfrHhodEeDdDRLlromvVMAwWaOxaANnXSpPoOPpslDoXiIxSPpnNsieERmMNnrxXnNpPtTTSsfHhFkKQUuUlLusPpOgUOoLqQNQdDOoqDdyXZzVNnaAvHhVYyPpNnHLKklhWptbqEBkKkKzZBHAauXxFfrnNkegGEKNyYkmMKntOoTLmMsSLMCVQYyLlqvDMfFeEYCcLEeMGPpbOoBgwpoHheEeEFfICSPVSsvpOfFXxNKkphHByYRllrfFRLgUuYUrRmMuyGLLKkUBbuKpcmhEeVvBbrQqKksfFzVqDdQvwkHnWqLaAQhgnNGDdHqKjJuUfEehHEcIXxmsSMiIIivtFfdedBbaAgGEeKWqdDIiCzwwWWivVtTjJZzjJZzHhItfBgGPpNsVvpPSdCHcCsShvJjJDdjjJVEeBnTOotGgiqPkKpPwWrRsPpBKkRNslLbBqQBWnNMmHhDdBbLXbwWyyzMmeEkUuwWhgGHKqQiGgJyQREgGaAeXxdIiNwWTtUAipPcCMDSsUufFhHfGHNFfpPxxXKFfjfKZzLlPSBbsSspWpPNwvVxXQBbSEEeesnNpsNeKkSaiMGgmMmzZtUIiupPKkOohpsyYSjJQxlzLgJjosSOdDzIiFTtfFfiIZMmOClLENrRMmXRrYydDRhoOHHgGsSkpbraAGgPVvItrRTJNnjHzZzZWnNhLVcNnCpYyPvOoWwHhoOcCiITtpPlpPwWcYyCOVNQqAVgIiGUuPbyYBgoOIIiAXRrNnePfFpveMFfdDCcAcCaIUunNipqQyIiYBbhHPmuUWwDdaAtXxmMndgHhIDdiGgGwWeEAqQODdaAoaUmMkXSsxBbKuiIaFfDdihHSKksIWwBbhhHKEebBoBbOVCLhHlcbBEeTPaBbATtHhRGkjJKcChnNJNsSnfTXqQxvVJjoOcgGRrVvCHteLlEwRrWTgYOoEehHlYBbCubIiBaSsALaAlVptzZpMSsmBbZzXxEedDVvJjDEeXDeZqQHMmVlLEeLlMmvbBzjJZPwWQpRrGKKkkWhxXgIiGIOdDkKjJlLIcCioitdDWNnGgNpilLIqAaBbgRoQqOTnNMLKklVAzuUZroORaPXxpAZCcOozadYyDwWJUujzZaNnBnPUubBTqPMmpdxXXFfEeAaxzZruURmMcCUEejJzYmuUHhwWUuJnFtTIiPpPoEeDdHOUivVISsZUuGTDdttDdTJjJjfcCwWTtrTtuUgGKUukkVvKcGgCGvTXxEejJkruURAWwDHhjmMCZPGFNndxXDfcCjJZzgFbernDdvVKkPoOplnNDYykkWvWwVvICcSWwLGtTgRruUlmQqBGgbFfLHhBbePxaBvYvVjJydbxXlvVGoOoKZvHhVbPpSGgsBIirbBVRGNngdcwWCsSNnYJRrFgGfjOgGQqZzLlJaiIBbAjEbIiBtTPtTpBbWwnNzXxZAcEfFeCSxXSDdFfnEHRkKmqpCnNlpPhrRUmMQqUuAaYTNxXfaAdDacCQRrvxYVvyRrPgdDwWCcSbiIBRjCcJDdAZxkKtYIZyrXzAieExXIaZlxYydDakmMKXoYXxaOoANqQPpTtLlIiiIHhmwuULBblZWEeJxSsGRrUPpuglLEmGgNKknEeMVvfaGgFfBHsShEYyrgGsOoueEUCrRwWTTttyYAxXaAYyaceHMmhmnNMEsScqtLHyDdwNdDYynsQqDwkUuKxTvIRrwypPYrRrHpPeEoOkKlLzXQFfqUIiulDhUhHzZyYZzuHlKPpAaoLbBloOOkTtHhsSLTtdkMwWiIDsfFkKrggvVQqPRrQqrRpMmYGkCqQFSsPpTtMmcCSShHssSBomMhovoOJqjJQpPoZZztTzOjmMDbCMmqSsheEHAUGOAaPpFrinMmNIxXvgGfFZzXxOUZzsvNVvnBbccCCYIzZiUeEuZzjKkpQqPyYjbBpnNSsKkPkYCXxOoiIxiIRrKkyNnPpYXjEeyYgXCcRyYjMmzZEeAaCbBtqwWQTNntTTtKiINQqhaAHpPiTpsSRriIaAGgFfTUtTymMTtYHBbhvcayEhHXxgfFzZzZPeTtigGIigGIEzaOoApPNjJwWaAXtTxRznNbRzIiLozkKZygGeuZdDMmEeThHtnkKNPpYIMmDdTtHhQqQssSSqQKkNDdhHkhHKCiICsScLlzZgGmJwWplLPBqKZegGRKdDxnNXHhUsLljEAaRreuLlLlUMhlLFQJjqiIJAaXgGjoprRPONXxgGMmaAFfHRrhMmNCcDiYyktTUuKQqIAaNnRrWwiImMYykPpKkGgWKEekUlLAaqmMNsPpSBbnzxlZzLfnNZTsSqQaTmMtABhpPrRrRTFIIkfJjhHFrfqQqymJhHjXGgxMOosSLlHfFgGzZtTMmJKeXxqQEeEYqQMNXxnmpPyCWwObtVOovzoOgGSCcWwMOomsSsOorrqQdmMQoOqiXsSxUjJWwXxhHpYZzvVyPDdDddcCFZzAXxGLlEeDdDdmPpJkMkZziRrzZAhuUDJjdlLnqQNHbJzZVEevfFXxcCTtgHPphUuAVvGagGATgfrpPYyRqQyYHjDdJMyYoUDdTtiIRDdnNdVvXNnhPGnNaAgpfwWFHmjBbVvJMEeirRRrwWIuUbpBWwIyrRpPyYYibSsWwWSsTuWoQBbqEewWyCcRrMmSzZNdtTxXyYaADLNnlGnNrFYEmMeyfRgezZEpPAaCZzcpdDWwilDpPUuESszZbBcCEerRrRqTtQelBnorMmRwWJJjrblDiPpIKkZfNJjaAsQbqQbBFfaiIAbBHtTBZLmMSskKWweEIicCvwGgsAlLaSEAaeggKkGGOooZzhHFfiUEbJjBKhAGXbBLlSsjhHJYyoNnmbBMLlOwWXtzZhHOoKKkkRrqQgGsUrRHgGQqXeEwWCcXQGgNnKkjEeJnNKnNzZXxSXrRLlxjJeaAELlYlLyYyVvLGMmXxQOxIUuiKJnNjvVCSsfNCDdyNWwINygFfhHTtNneEGbDdPpDeEgGGOTTuUPNnpnNIiCcdQGxWwOIIiJjIiFfBBbKkbBoOrRbiIiepWGgwUuEePAaxgGsSHUuSseHhEJgfgGDoOdFfIGgQqmMBWwOkKFfmjJMNnSsgGrRuWwVvYyeYuhnNtTfFyRrRrHKZDXxduUquUjJQJXxCcjzkjJzZYiuUgDerREdLlkLldDEeWcQoOUuGXlLkxXTLAatTlgGiIUMXqQohHPpjLuonNOUeEzLNnfjJTGgVEevtFZnNjHhJjJjJmQqkKMmMqQnNyDntTIijuUlICusSUcCyXFfXxxtTYObBFfFftTnoPiIpPpzLcClGsSEmMegVvGlLJDdjTtjyYJyyBbYoOrRbsSpJiSrVvFfRHhKyTtYDdkskAaVvSsXzZebUbBEeMrRLluUDTtdYyDduUVLluURrvWwyYuhHbBUeEeVvEPvVpUuIixXUupLRrvVlsSUAUuTxXtaWgqQGVUuvbBzjJvVBbaDdLlOdDQqLlqXxQYyZzcPpCFHpPhfUuQoOIzeCcEbBeEjBeEbzELldRrTWwyYpPSyYNnuUgtTcCbBMdMmbZWUTtRrtTusSkKcCaMAaOoTjpPpIibEewTtGgWwWxXButXrHheKcQNnqCbBeEWwgGVvVsSqQOovQqKKkkkadOyYWwCcBtJjyYTwPpQWRpPrwZzxYRrmLlDdMFfDdyayKkGtTgQEeqBblLYkPpJjKeEoNDgILirFfRBbmMIlDdKkWAaXxBbNvDlLDTiIunNLlUufdbeEBeszZBbyYYWHhwOoaOoAmMbtTBTfFRrwfFWxXvVQqpEePQFuMGUhzQAaqpPZdDdDHLlYyHhwKkWFiINnGrRTtzGFfXxOLlKkogRrZRrcCzZYOoyUugGoRQOtVAYFwWHXxhdDENneAaSgGsWRrMmfFwqQSsLlfpPiKkInsrRpyYnNLlPAaxtTNBbNnHhJjSsvhHNnTLleEhHhHtcuUgjDdrRFfoLlOttTTnNaiIAtTBbqGgQICcejfBWmMEeEcrRCeqQsxXQqNnIisSxXsCorROclLzwpYyVvPFXFfIixPpHhbCOtNnTBbfFmmMfFnNmwWLxXlGgGGAagUuAdDaAaZzLlgGQMmqQqITtiYLQqtRrWoOMwGgWmUuTEeVKQoOqdKkDKFfcuaEelLxXVQqAawWuUMmTWNnSsmOlLtTtTobBHOoIibNnADdacCHhoPtTpqQOByaAdDYhVvuUMmpHgGMmLtTCclVvdDtThPqFVvfuaOoATeEPpufFUPpjhkwWKzZzZorROQXTtxKEhHeqNnNnQsSyYkBhHFfQDdQqnNxXAxqQKkXauUpaAmMPwWjEeMmbBQBtLjJeEQNnqaAzZTbsGgdDYsbuULlPpsSUuIYyiBcCsSsFpPTtfgGlzSGlptyzoOJPdzZDpMmwWjRzaJjAZGBOTvVTtTqNntTQhXxhHYXsSPMnNmIiaAFhHEzZHUPcCpMmptAaTYeEpXxPjaAAaBbCcxHhFfoOLlHhXJEQcCqexDduUhdDTCcCctakKeEejsUuMmMBDkKZzppOoyYPgDdfFHbBhSsGejvVRrsSdfsSxXRrFMaAKkmDCcdjJaTtYpPfdoOhZzHDQqFxnNDdLlXFuUjJBbXxHrWpLvPHhpVNncpPmOQMvwWVIiRfFroOmCrDdIWwBGgbZzXxkqQCcOocCWNnqQMKkTuUtJjlLmpKsQqVOYKPRrZeEgHfFhUgGXQqxjbBJuQqVvIBbiCqQcfpjJDdPHHiIjJkKgQqGlIiHhDBbdDcZzCIiBbTFMkKLlYyLligGIUdDuDdSgPpDdpPGtBPphHKkanNAbKkqJiYShHqscVvrVvcCcCRCIibBpgaoJjNnOTtAMeEmeEviquIiaJiIjAuiIUQqsSeqnNTtQFCcfhYybBXOUBbCcuPpGNnOogGTtrRgvwWFfVNreNaAnNnERqoOogoKkHPpSszxXZkKGaLlxXtTTtxXxXASQqoOtTCcctAaTCssSYlLPIihrOoRrDHhnpNnfGgCcFWwrRzZLliftLlDIiddrRJmtlLrGgoORTeNnEiIeEKTpPxXtdDkMrRUWwuUcKVmMvUuIiIizXEeiIAaHhgGTtDdTtxhdDdDzQqIitTsShIoOAPpagjNnZzJVvDJjIidqHhQCcGCcJAaDSQqQajJAQBbqRILlzQGgqHhCcZBbazHhdDkKDdFNgGntTtTplLKmYRrjFgGffHhJjJjFuULtyYTlfoERCcrlLeOFPpyqzZUuQYBbmSsCcqIJjiQaASsjJSFfVaAvqXxQuvVFyYfBwBBzZbBuUGgOoOEeolLJjbbUUNsBRrbSsYytTSsofFOSlQMHWwOfFzcTtCsSyCaAmxnNJjQpHnNnHhNhLYJjtTIRrtTixXyyGwWKkoOQGBbgqLlmHIiUjuYXqQEeYyjJYsSwPpWwWqFoZrBvYyAaVCUSsuhSZpMmPzsEeJjfFdDrUuRvVSJjYZzJPvGgVpYyeELTumMUBbaAzZpqBgGbquUjVkKtTAalCcDIidgkzZfFKjRrqCdzZDeErUuAaRQKcCkqvVEtTefipwpuUjJlqQLNrRnvWwaADnNdBsSuqQUuUVvzZPpXxbOpGmMgqQbBPdGkKIFfimMyLlYgDEAaeGgEydzBVvbPjJSeEwWxXVqQrRNnHZPIiLqQVvVvlWAKkdDaawWzZQqosvVkKSmMOAfRejJniIKYycqBbQCHhnNtTzZQHAahUaJjoOAiQqqKkbeEBQIOoZzZzuqqbBQfFmajJIiAhgCcGWwwbHJGZzgXxjhXxBcCJiIjSsTJvzZvVpPVGgjQqPptXxkKuUWAaOqQPpVvdDbRlLrEeZjgGJvVoOHeCcXxwCzZcLEelThHQqJjtiLvVlHfFIihCgGLVvxdOoiIDpPnNkKrYYbBoczSsZjoOJyYCNsVvRrhbAaIRFfrVpPvaPpAkKiBHHqaAyaAXxYYyQXxYCcycKkCcCMMmmSsZbiIPsLxOoXHEecCYyhlUqQCcCBEvVeEKkRWZuokKqMPpmQKSsmMXuUyYwWwWbBQCcqZzFfoORfFoVvaAaAeZcoSsGYygmqQARraMNYCcyysSmQqgTtGhHUVHHhJtoODdUZzHhuKuMmUuxofFGgWwfqUZzeEMmNFfoOGgOfwWySDhHdApPNnDdjUgGuCrZzpRrZMmJuUjzDdCcPUEeuHQqLhuhWwXvyDdYMmCcVMmxWwpPFfVuUXGgEHhaAHqQcCGgKkulLhHqLlQfaAFUhgGpPiJjrRMfFmxXRXxgGIirCcrRhSTDdtsiImMHxXkjBbmSUVzZPpvDducCTtqXEhHmMeNnfFeEvCcVQqRriIJjXdIiDYeEyFfxbBrRxoOJvaAlLeSsrReEEeoOtTVQlLqvkYyCkKevVPpXeECRrcxgxXNsSfEeFnOHSshZPpAaPpbBxXjYyRJAahwWYyHaoYyOXxAbuUBTtjYeEDdaAGXxTaAtiIYKcCkydggyzqOSsoKDdYyjiItTJfJjJrRjFkqQfFEeEjIqrDdtTaOoAlLCcSxXKksRWwJjajJpiIVXxMmvARrJjElLPpCcezzdDZNnwsSmMiyyAalzZCcOouXxUKKkBbkLubBiWwXxIpgGPqQUroORmMlGgewWOFfYvVyoVgGgGiDdwWGTPpPpIiWhHcDdCrRBPpyzHhZlPpLYbHhVkbBKklLKOXxbBdDtTNUYyunoXxVzKkqNnoOQAaZvsWwSJjIgzAaZGpZzIQgGkjJKXxqiNlLEentTHfFhKRrUukRoOrHUuhIkHhMmSslLXxpPCcUfFXxBcCjJPpTWKcCZmeEHEdDeAaBJdDjaAUuyYjrEeDdiJjLlxXPIipIWwqQLlCcRqQIKkBbSDdMyYgIiGwLdDTtbByYZzhHglSsvVDiIdgGLrRwcCcEsSeYYyyCEeKkWSjaArvVJjAaTtOoRHhdpPiIDeWmMCyYcFfNncChwWHDAJtTZzjBbNPUupKWwmMxRrWIwWjJmMISIisilLUuBbhHVYyKFfpSsPIikgSsGvCcfFJNnwbBWASsWwHVvhTtqQlIsvshHhHLpvVwSsWPWwtTZJjzkfFaAKoOrFfeEtTXFfxzmCcOoMuUZvVRBbtwHhxXcqeENnQtTCxgGIiIeUuEeEBbhHmgLllLzvVZGGgMcgGEeCdDPaAwfFWDdblLBAafvVXLlCCwWcXHhxrRVvLRruJLliIjMphHbBPmmMoBSKkhHzZeHhEOoMmVHFfLwWTtbBlIoiUsSuIaAsSOsSIRrijJBhHbfFSsEeiODXTtQvuUVzkzZnFfxXMmNRrMitTIChHWNnwNnCcKkcmamiZzlLEeiIjJFfVvfQSshHYyhswWcCSiIxyYXHqRrWVvwOPeZzEpobIiEZzeBgGNnuUnsrRrROiXNnhJjHitTIxTtTSstiIKkLlYrRfNnRLlOorDdFOoaAZcCpaApPaAGMYyfFBbMmXtTkKxCcmoOzlLiIZvVgwWzFfZwVxXBbjHhJZzfFWwtTjJDFfduUsSYyJjSsveEFfxHhtTghHhHScCsrRBbLlGmMCclsSLgncHhRrcENneCWROocbAayYoyLMBbwRwWrZzmbBtTlLMWrRWwlLLllLNnUsWqQjJwSlLujAaJmwWbAMmacPeEpOldDdOoTtVvfFDtTUusoUuOnNKdrRDFUNnYyurqQRZiIzPuXxfAxrwEeWGgRrYyQvVGgqMmZOouUzRqQAaboHhOsSBZAazaAQqSsbmMbBBvValLEeAfYjJBnQqNTtFfbXlLXuUxxddDDphHnGEeFfgGMzIoSsiIAaUvVuGgTOosSwWOotdDOuoONnUQqmFoOWoOzKMvVDdkvVQOoqKLDdUugGlXxmtFfTtgQqNnrRPiIfFmLlrRMwnNRTtaArIiZzjJSsWfyYFKkyjJKRrPBEebNrRnGgGlLzZgcCcCTwWcCnNtWwpMeESWwsGgcCWwQqgGiuUboVvWmtRQqIivbBVwWrsBbSrRGuUgPVvVvxWwNnwjJJjseAaEaAVvSVvAVKkKOLlwWoknWwiIBbcCAVvZzakgGKpPxvbSsBBOoFfBbbHzZRrhvVVpPiUMmujJzzDEedUNnKYyIiFfNnoUuOVgGvgIilnNSsaAmMLqQGhHkquUWwtTfKkFicCZzJiSsfkFQAaqfGfFgKFBbyYIiDddzEeaAziIZOlLjJmMdDVvtuUTZUuZzFfdWwDzmMXxbIBbiiIQqnNqQsSWHhaAjhHJxXRsSrEjJeoPNnstiIdDTaASlLBFpPnTtNfbdDrReBbQqJjIiOofFEePsSpHMmhHhfFeELlcCEiJjUuiCcIljJQqhPAIiPpYgGFBbfMvVbBgGuUmpPLDSsdjjJeEbEepPgGBJFdkKDgGBbhHEehwWkyYMkixXIKeENnPgoOGXxpfdDFDgGLbBRGhJjHTtnNjJyYJrROogSxXsDBbdGLlFfOobAFfTxrRBbzeEZWSsJDdBbcCuvVbrRvVWwBTHIihaAxRrXPFfnSsCcNuhGgHKkgGHhtEeTLFfWOxeEEyYVvejJWxJaTVJmMjgGvAaJXxjrRtVvAKgGFpPiIfVvEcCGIiceECtTDVcSsFfeErmMRKkCjSsJbGgkJdDIiYMmhHFfzZQqnNXxyjvtTmdWwPpmMIiLvVhHlWwjJVKMmkvZzdDDdTtTtYyZzweEWBrRXxeEuUbBCDdsSoOxaAzVvZjJXKkJVvVLldDrRmMOQqsOoBRpqPpaAQsHhSGxXiIgPiPFfdDpIFdDUuxXIiYyfmgGtTMdOoDrjhHJplLlLXZzxbYyBPtTLMmlCBbWPpBbSsnNwWTteELPvVpPmMBbuUpePpdDGgrmMmMuhPaAzZwWpXxEediIDYnNWwrRPHVvhprdDFiyYIJbBIijTtfFPpmMulLlmMLUDcCwWIidNnvCcVfOPpcDjJdCoRZDtVvTdzZztTqlLAadXxDOoyYHUuhyYdKkQqdDDofFOlLsSyYMaATtAacXxCmcdMmDvlBfFbneEtdDLmMBbXxkHhKuUqPpQlRrCcnRrpPNTMmIiNfzZxXJGgyTtYyeEBEebwWYEAaAaRrtTCcNnBbejvVKcHhSsDdxtTmMTtQjJqMmyzZVtyYTPpXWwxbBELlllLcCLelIDdiWSsrRwiIDMmdxBbXZnNyYfFeHhUuExXWrYyKvqQVeEiamuJjUMRrxXlUcryYRafFZzFffJHhdDjaAVvQqySyYsYFEZAaSszefAkZzKqhJXxpPjAaBNguUGnQAbBagJjGPpIygKkGjJnamMMmSsAfFNQbBqYMjMIimYEesSgGyJmipPsFfSjzdDZJnPpNcCeEnNTtnPOopByYbHhNDdjNnoOFfWwnkAawWKNLIisIiJjIeNndDPpTBbtelLEjJYyEvVUuZzcCjGaAGggSsyYJKZzkaAhOoHiIgYdDytTnNGJyFWwflLfFnXxCGgfFpPPpGgcrRtGgTiIrmtTMRpzZPmoNncCOMbBSSskKseEOoJjpPOodDwWsHhSMmNWwlGWwguULnDWYyJjRrCcjJOonNiIwkneEEeBcCbTCcQqtaBbYyFwWfrRnNVejJEKejJEzrRZsfFlTteIiELHvVfcCFNHhmMtTnAPpBapPAbKkchHWceEtTCwCLOohHlsZIictTCzSfYyAWwaRuUZzrAadDgGtTJmMPpjUFfDdPpJjDdBbusqQIfdDFVvlLiSeNnEfODdmMorRBeTtfrgtfFTGkWwKRfFjJFfYyzZBQquUMmbBbsSHqQhVXxzZvVyYTtuUUtTCcLnNluScCLlDdcCiigGHhTtISsHTUuthrRFYyhjJHfnNHfFhRriINnMTtaAmhCcbByYlLZhHzgGouUkKgeEGOvyqQtTYUuHhBbuUVOqkPpbBaAKQXxhHHqQhHhoOfFeLlOopPKkEPhEegGWnNPpPTtoOhHpWfiInNMmFnXxNwJjuXsSxUwRrioVxaAXtTHnNhmrReEMTtWwIbBiDdOFfdHhuUDUHhuoOhiIbyYBZzllsSLLEoviIbBVvxXQVvqTlLAsYybBSmMFfcjJCNntGgTCvPpVmSssSMckKpPQqVrRbBHhuUYnNiIyvroORbKvVEcjJlYyLOAaiIodDCxNnYyYyXMEemMmzcCZJVvuiIUySsdDYjNnQqtTCpPcwWitTISsUsSufFdDarRAedtSsTDIvViRrkQZzqnNfhHFwxXWBcCvVfjQqyXxYyYMmuGgJdDdDjhHfFUyYBAEeabJFjJZzaOoWkKpPwyBbYLfFliIsFvqQCcmgGuHhXxNFfEMmeBgeEcRrCGGIigbxXndDVGZzglKkLiCVvEegGczZyfFYcWmMXxZQqzwCNTauUnNATOdyYcCDoPpzNnZtTnNyYwvmMkKTtVBbGgWufFUugGdDkrRKUczZjJJjjzZLMmLllJaAGgrcCRcCiIUuCtQCtTcFfwWqQnPpNvKkVxrRMmjJjJXUCcukerREyYdDKqthHHPsSpVvaAhPpgGKkiXxIVwWSsvXUuxXgtTBbnNYyGpPSrQqReEeErRRPpcCIgTYyDdXxsZOozSYyLlQInNwsSZzznNZfFqQBbpPJjBFkKzZYyfrRiqIiQINnjSspAaKkiIsSbgkKqQpPGXxuzZdCcEeDkKgGwWUCcRlCcLrXdDRrxJMAmMamMWwmvVjjJUukLlZIFfWeEwiGgNngGbgGBzxJjXBBcClLgGsSSsbIpPiEebJBbjKyYDkKdgUEepPcCcCXxhVvgGGxpPPpXgHbuUxYyXMrRmtTrOMmoRwWedDajJyYAVgGRrvaAVvuUExXBVvnNUufAaFOoQLlqcCOofFkKeTtEjJdBkKbOiIxXMnNtrrrRrUuHhRRaARRrTmoaNnAhHadDSlLiUuIdQqqQDsCEeQqcAyEIhHiDdKkeXxEHMwWmhlLRZPpzrHheEHhHhGBqQbOogpPeGNnguUvrRSzZFfsYygGnRcCrqxZzXsSzRrZgLlGQoONChHWwxUjJuSsRYyLpPlmMurRPpXxqQQkKqXEexyyYeEzZYAGgPpkKwWakKnNoOjxIHhiXJAeEaJEeGgdxBbXDjpPULlrZzjLlgBHhbDxTtXdGtTOoJSVvoOmMfFsZBbxXMiIaAeEmhhHHYeENsSEenHhyMmYSkKMmsySuEenDdrRYyNvfGLlgFVJjUeEeRqLlQPpDaAdQqFfrwWmMEbBsgGzdDIiSsEXxeCcQaAMmvVqjEenwgGWNZzYyJFfnNCeEtNnAoOOoaTOowWQqfyYxXgKkGxZKkzXdDhgGtTHoTtQqwWOaPpdDAgdrnNRDkJjKQLbBVvlqXPgGtTFfpUMmhNAanHuQqMwUuWEeTUutuUmxnNGGiIgotTOvVaMmABbXTtxgXxgGyYeEQUuqCczZTtGDAadfFyNnYmCcMjJLlWLiIFfABbaRrImAaMEeHhafFAIishHDiIdCaAbBcmAarRLCclLloOKkqQMxOKkPpoXSbBSdDtTsXxhHcCyBbNnTtgnNGrRYiEevDfFRrdAaWrRaAwnyYTtNdNnDVlTtObpHNnhPnNVvWYyNnMwWmUukKSEZzesEZFfJPpjzltNnTLiLlIOwWfFjJoeKCckwIjVvJANzZiUqQuImMnavViBqQQCcMmqAaWwWwbBZsLSsDqQYdDyWcCwdvVhEetTpPQqEeIiNxXGgjJnfFKUuJJjjLAazZlkwXxVvNndDWJZzFfjNrRnQqlLrCcHhWwRdDLlWkKZCYyBbYycznbBiIBbNkKwmIipPAaKyYBbRrkmMaAjrRJMVvsfbBFjubxXBUPpJCWwkZzKYPpdDSEessdDSVyYvZqQzUIiuYNnNnyYyyMmcuVvCcCevVExXcUiIKPpkXrRxlLTtHhuYNnfFQqyKkzZWwGcAeEaCnNQBUPpnNudDjEeqQJbqOoaAwWZzXxgqmMzZDZzdQHnNxXwWrRSPpshzZfFNVvuhHUiInjJjJFZzfrRnNPpiIeEmeEMmMjpPQqJmMKCckSHctTCSsSshcwWCSssZIizHhyTtktFfTRrzZJjRrKLtuUgxXGTdDlSsKFytTYmMjbBRrLlJfBbWwuWwXjJoOnNdDyYVvxUCAoOackKvVhYyHImWwMiLFfclLClIjJRrJjKkhHiNnYyTVvBrRbjwWKkRrCcxXynNIiLluUYcCBbFfJoOtatTAOokUcCIiPpuc \ No newline at end of file