diff --git a/README.md b/README.md index 28aa639e3287e67313d6f9f38e7625a97b2aebd9..4977d1607c6d46104d5bebdb415382346603f9fc 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,231 @@ ---- -title: CosyVoice2.0 -emoji: 👀 -colorFrom: indigo -colorTo: green -sdk: gradio -sdk_version: 5.9.0 -app_file: app.py -pinned: false -license: mit -short_description: Experience the open-source LLM based speech synthesis model! ---- - -Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference +[![SVG Banners](https://svg-banners.vercel.app/api?type=origin&text1=CosyVoice🤠&text2=Text-to-Speech%20💖%20Large%20Language%20Model&width=800&height=210)](https://github.com/Akshay090/svg-banners) + +## 👉🏻 CosyVoice 👈🏻 +**CosyVoice 2.0**: [Demos](https://funaudiollm.github.io/cosyvoice2/); [Paper](https://funaudiollm.github.io/pdf/CosyVoice_2.pdf); [Modelscope](https://www.modelscope.cn/studios/iic/CosyVoice2-0.5B) + +**CosyVoice 1.0**: [Demos](https://fun-audio-llm.github.io); [Paper](https://funaudiollm.github.io/pdf/CosyVoice_v1.pdf); [Modelscope](https://www.modelscope.cn/studios/iic/CosyVoice-300M) + +## Highlight🔥 + +**CosyVoice 2.0** has been released! Compared to version 1.0, the new version offers more accurate, more stable, faster, and better speech generation capabilities. +### Multilingual +- **Support Language**: Chinese, English, Japanese, Korean, Chinese dialects (Cantonese, Sichuanese, Shanghainese, Tianjinese, Wuhanese, etc.) +- **Crosslingual & Mixlingual**:Support zero-shot voice cloning for cross-lingual and code-switching scenarios. +### Ultra-Low Latency +- **Bidirectional Streaming Support**: CosyVoice 2.0 integrates offline and streaming modeling technologies. +- **Rapid First Packet Synthesis**: Achieves latency as low as 150ms while maintaining high-quality audio output. +### High Accuracy +- **Improved Pronunciation**: Reduces pronunciation errors by 30% to 50% compared to CosyVoice 1.0. +- **Benchmark Achievements**: Attains the lowest character error rate on the hard test set of the Seed-TTS evaluation set. +### Strong Stability +- **Consistency in Timbre**: Ensures reliable voice consistency for zero-shot and cross-language speech synthesis. +- **Cross-language Synthesis**: Marked improvements compared to version 1.0. +### Natural Experience +- **Enhanced Prosody and Sound Quality**: Improved alignment of synthesized audio, raising MOS evaluation scores from 5.4 to 5.53. +- **Emotional and Dialectal Flexibility**: Now supports more granular emotional controls and accent adjustments. + +## Roadmap + +- [x] 2024/12 + + - [x] 25hz cosyvoice 2.0 released + +- [x] 2024/09 + + - [x] 25hz cosyvoice base model + - [x] 25hz cosyvoice voice conversion model + +- [x] 2024/08 + + - [x] Repetition Aware Sampling(RAS) inference for llm stability + - [x] Streaming inference mode support, including kv cache and sdpa for rtf optimization + +- [x] 2024/07 + + - [x] Flow matching training support + - [x] WeTextProcessing support when ttsfrd is not avaliable + - [x] Fastapi server and client + + +## Install + +**Clone and install** + +- Clone the repo +``` sh +git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git +# If you failed to clone submodule due to network failures, please run following command until success +cd CosyVoice +git submodule update --init --recursive +``` + +- Install Conda: please see https://docs.conda.io/en/latest/miniconda.html +- Create Conda env: + +``` sh +conda create -n cosyvoice python=3.8 +conda activate cosyvoice +# pynini is required by WeTextProcessing, use conda to install it as it can be executed on all platform. +conda install -y -c conda-forge pynini==2.1.5 +pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com + +# If you encounter sox compatibility issues +# ubuntu +sudo apt-get install sox libsox-dev +# centos +sudo yum install sox sox-devel +``` + +**Model download** + +We strongly recommend that you download our pretrained `CosyVoice-300M` `CosyVoice-300M-SFT` `CosyVoice-300M-Instruct` model and `CosyVoice-ttsfrd` resource. + +If you are expert in this field, and you are only interested in training your own CosyVoice model from scratch, you can skip this step. + +``` python +# SDK模型下载 +from modelscope import snapshot_download +snapshot_download('iic/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B') +snapshot_download('iic/CosyVoice-300M', local_dir='pretrained_models/CosyVoice-300M') +snapshot_download('iic/CosyVoice-300M-25Hz', local_dir='pretrained_models/CosyVoice-300M-25Hz') +snapshot_download('iic/CosyVoice-300M-SFT', local_dir='pretrained_models/CosyVoice-300M-SFT') +snapshot_download('iic/CosyVoice-300M-Instruct', local_dir='pretrained_models/CosyVoice-300M-Instruct') +snapshot_download('iic/CosyVoice-ttsfrd', local_dir='pretrained_models/CosyVoice-ttsfrd') +``` + +``` sh +# git模型下载,请确保已安装git lfs +mkdir -p pretrained_models +git clone https://www.modelscope.cn/iic/CosyVoice2-0.5B.git pretrained_models/CosyVoice2-0.5B +git clone https://www.modelscope.cn/iic/CosyVoice-300M.git pretrained_models/CosyVoice-300M +git clone https://www.modelscope.cn/iic/CosyVoice-300M-25Hz.git pretrained_models/CosyVoice-300M-25Hz +git clone https://www.modelscope.cn/iic/CosyVoice-300M-SFT.git pretrained_models/CosyVoice-300M-SFT +git clone https://www.modelscope.cn/iic/CosyVoice-300M-Instruct.git pretrained_models/CosyVoice-300M-Instruct +git clone https://www.modelscope.cn/iic/CosyVoice-ttsfrd.git pretrained_models/CosyVoice-ttsfrd +``` + +Optionaly, you can unzip `ttsfrd` resouce and install `ttsfrd` package for better text normalization performance. + +Notice that this step is not necessary. If you do not install `ttsfrd` package, we will use WeTextProcessing by default. + +``` sh +cd pretrained_models/CosyVoice-ttsfrd/ +unzip resource.zip -d . +pip install ttsfrd_dependency-0.1-py3-none-any.whl +pip install ttsfrd-0.4.2-cp310-cp310-linux_x86_64.whl +``` + +**Basic Usage** + +We strongly recommend using `CosyVoice2-0.5B` for better performance. +For zero_shot/cross_lingual inference, please use `CosyVoice-300M` model. +For sft inference, please use `CosyVoice-300M-SFT` model. +For instruct inference, please use `CosyVoice-300M-Instruct` model. +First, add `third_party/Matcha-TTS` to your `PYTHONPATH`. + +``` sh +export PYTHONPATH=third_party/Matcha-TTS +``` + +``` python +from cosyvoice.cli.cosyvoice import CosyVoice, CosyVoice2 +from cosyvoice.utils.file_utils import load_wav +import torchaudio +``` + +**CosyVoice2 Usage** +```python +cosyvoice = CosyVoice2('pretrained_models/CosyVoice2-0.5B', load_jit=True, load_onnx=False, load_trt=False) + +# zero_shot usage +prompt_speech_16k = load_wav('zero_shot_prompt.wav', 16000) +for i, j in enumerate(cosyvoice.inference_zero_shot('收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。', '希望你以后能够做的比我还好呦。', prompt_speech_16k, stream=False)): + torchaudio.save('zero_shot_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) + +# instruct usage +for i, j in enumerate(cosyvoice.inference_instruct2('收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。', '用四川话说这句话', prompt_speech_16k, stream=False)): + torchaudio.save('instruct_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) +``` + +**CosyVoice Usage** +```python +cosyvoice = CosyVoice('pretrained_models/CosyVoice-300M-SFT', load_jit=True, load_onnx=False, fp16=True) +# sft usage +print(cosyvoice.list_avaliable_spks()) +# change stream=True for chunk stream inference +for i, j in enumerate(cosyvoice.inference_sft('你好,我是通义生成式语音大模型,请问有什么可以帮您的吗?', '中文女', stream=False)): + torchaudio.save('sft_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) + +cosyvoice = CosyVoice('pretrained_models/CosyVoice-300M-25Hz') # or change to pretrained_models/CosyVoice-300M for 50Hz inference +# zero_shot usage, <|zh|><|en|><|jp|><|yue|><|ko|> for Chinese/English/Japanese/Cantonese/Korean +prompt_speech_16k = load_wav('zero_shot_prompt.wav', 16000) +for i, j in enumerate(cosyvoice.inference_zero_shot('收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。', '希望你以后能够做的比我还好呦。', prompt_speech_16k, stream=False)): + torchaudio.save('zero_shot_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) +# cross_lingual usage +prompt_speech_16k = load_wav('cross_lingual_prompt.wav', 16000) +for i, j in enumerate(cosyvoice.inference_cross_lingual('<|en|>And then later on, fully acquiring that company. So keeping management in line, interest in line with the asset that\'s coming into the family is a reason why sometimes we don\'t buy the whole thing.', prompt_speech_16k, stream=False)): + torchaudio.save('cross_lingual_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) +# vc usage +prompt_speech_16k = load_wav('zero_shot_prompt.wav', 16000) +source_speech_16k = load_wav('cross_lingual_prompt.wav', 16000) +for i, j in enumerate(cosyvoice.inference_vc(source_speech_16k, prompt_speech_16k, stream=False)): + torchaudio.save('vc_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) + +cosyvoice = CosyVoice('pretrained_models/CosyVoice-300M-Instruct') +# instruct usage, support [laughter][breath] +for i, j in enumerate(cosyvoice.inference_instruct('在面对挑战时,他展现了非凡的勇气智慧。', '中文男', 'Theo \'Crimson\', is a fiery, passionate rebel leader. Fights with fervor for justice, but struggles with impulsiveness.', stream=False)): + torchaudio.save('instruct_{}.wav'.format(i), j['tts_speech'], cosyvoice.sample_rate) +``` + +**Start web demo** + +You can use our web demo page to get familiar with CosyVoice quickly. +We support sft/zero_shot/cross_lingual/instruct inference in web demo. + +Please see the demo website for details. + +``` python +# change iic/CosyVoice-300M-SFT for sft inference, or iic/CosyVoice-300M-Instruct for instruct inference +python3 webui.py --port 50000 --model_dir pretrained_models/CosyVoice-300M +``` + +**Advanced Usage** + +For advanced user, we have provided train and inference scripts in `examples/libritts/cosyvoice/run.sh`. +You can get familiar with CosyVoice following this recipie. + +**Build for deployment** + +Optionally, if you want to use grpc for service deployment, +you can run following steps. Otherwise, you can just ignore this step. + +``` sh +cd runtime/python +docker build -t cosyvoice:v1.0 . +# change iic/CosyVoice-300M to iic/CosyVoice-300M-Instruct if you want to use instruct inference +# for grpc usage +docker run -d --runtime=nvidia -p 50000:50000 cosyvoice:v1.0 /bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/grpc && python3 server.py --port 50000 --max_conc 4 --model_dir iic/CosyVoice-300M && sleep infinity" +cd grpc && python3 client.py --port 50000 --mode +# for fastapi usage +docker run -d --runtime=nvidia -p 50000:50000 cosyvoice:v1.0 /bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/fastapi && python3 server.py --port 50000 --model_dir iic/CosyVoice-300M && sleep infinity" +cd fastapi && python3 client.py --port 50000 --mode +``` + +## Discussion & Communication + +You can directly discuss on [Github Issues](https://github.com/FunAudioLLM/CosyVoice/issues). + +You can also scan the QR code to join our official Dingding chat group. + + + +## Acknowledge + +1. We borrowed a lot of code from [FunASR](https://github.com/modelscope/FunASR). +2. We borrowed a lot of code from [FunCodec](https://github.com/modelscope/FunCodec). +3. We borrowed a lot of code from [Matcha-TTS](https://github.com/shivammehta25/Matcha-TTS). +4. We borrowed a lot of code from [AcademiCodec](https://github.com/yangdongchao/AcademiCodec). +5. We borrowed a lot of code from [WeNet](https://github.com/wenet-e2e/wenet). + +## Disclaimer +The content provided above is for academic purposes only and is intended to demonstrate technical capabilities. Some examples are sourced from the internet. If any content infringes on your rights, please contact us to request its removal. \ No newline at end of file diff --git a/app.py b/app.py new file mode 100644 index 0000000000000000000000000000000000000000..822757d1d44d27561795b33018cd434e7697e4c9 --- /dev/null +++ b/app.py @@ -0,0 +1,211 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Liu Yue) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import os +import sys +import argparse +import gradio as gr +import numpy as np +import torch +import torchaudio +import random +import librosa +from funasr import AutoModel +from funasr.utils.postprocess_utils import rich_transcription_postprocess +ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) +sys.path.append('{}/third_party/Matcha-TTS'.format(ROOT_DIR)) + +from modelscope import snapshot_download +snapshot_download('iic/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B') +snapshot_download('iic/CosyVoice-ttsfrd', local_dir='pretrained_models/CosyVoice-ttsfrd') +os.system('cd pretrained_models/CosyVoice-ttsfrd/ && pip install ttsfrd_dependency-0.1-py3-none-any.whl && pip install ttsfrd-0.4.2-cp310-cp310-linux_x86_64.whl && apt install -y unzip && unzip resource.zip -d .') + +from cosyvoice.cli.cosyvoice import CosyVoice2 +from cosyvoice.utils.file_utils import load_wav, logging +from cosyvoice.utils.common import set_all_random_seed + +inference_mode_list = ['3s极速复刻', '自然语言控制'] +instruct_dict = {'3s极速复刻': '1. 选择prompt音频文件,或录入prompt音频,注意不超过30s,若同时提供,优先选择prompt音频文件\n2. 输入prompt文本\n3. 点击生成音频按钮', + '自然语言控制': '1. 选择prompt音频文件,或录入prompt音频,注意不超过30s,若同时提供,优先选择prompt音频文件\n2. 输入instruct文本\n3. 点击生成音频按钮'} +stream_mode_list = [('否', False), ('是', True)] +max_val = 0.8 + + +def generate_seed(): + seed = random.randint(1, 100000000) + return { + "__type__": "update", + "value": seed + } + + +def postprocess(speech, top_db=60, hop_length=220, win_length=440): + speech, _ = librosa.effects.trim( + speech, top_db=top_db, + frame_length=win_length, + hop_length=hop_length + ) + if speech.abs().max() > max_val: + speech = speech / speech.abs().max() * max_val + speech = torch.concat([speech, torch.zeros(1, int(target_sr * 0.2))], dim=1) + return speech + + +def change_instruction(mode_checkbox_group): + return instruct_dict[mode_checkbox_group] + +def prompt_wav_recognition(prompt_wav): + res = asr_model.generate(input=prompt_wav, + language="auto", # "zn", "en", "yue", "ja", "ko", "nospeech" + use_itn=True, + ) + text = res[0]["text"].split('|>')[-1] + return text + +def generate_audio(tts_text, mode_checkbox_group, prompt_text, prompt_wav_upload, prompt_wav_record, instruct_text, + seed, stream): + sft_dropdown, speed = '', 1.0 + if prompt_wav_upload is not None: + prompt_wav = prompt_wav_upload + elif prompt_wav_record is not None: + prompt_wav = prompt_wav_record + else: + prompt_wav = None + # if instruct mode, please make sure that model is iic/CosyVoice-300M-Instruct and not cross_lingual mode + if mode_checkbox_group in ['自然语言控制']: + if instruct_text == '': + gr.Warning('您正在使用自然语言控制模式, 请输入instruct文本') + yield (target_sr, default_data) + if prompt_wav is None: + gr.Info('您正在使用自然语言控制模式, 请输入prompt音频') + # if cross_lingual mode, please make sure that model is iic/CosyVoice-300M and tts_text prompt_text are different language + if mode_checkbox_group in ['跨语种复刻']: + if cosyvoice.frontend.instruct is True: + gr.Warning('您正在使用跨语种复刻模式, {}模型不支持此模式, 请使用iic/CosyVoice-300M模型'.format(args.model_dir)) + yield (target_sr, default_data) + if instruct_text != '': + gr.Info('您正在使用跨语种复刻模式, instruct文本会被忽略') + if prompt_wav is None: + gr.Warning('您正在使用跨语种复刻模式, 请提供prompt音频') + yield (target_sr, default_data) + gr.Info('您正在使用跨语种复刻模式, 请确保合成文本和prompt文本为不同语言') + # if in zero_shot cross_lingual, please make sure that prompt_text and prompt_wav meets requirements + if mode_checkbox_group in ['3s极速复刻', '跨语种复刻']: + if prompt_wav is None: + gr.Warning('prompt音频为空,您是否忘记输入prompt音频?') + yield (target_sr, default_data) + if torchaudio.info(prompt_wav).sample_rate < prompt_sr: + gr.Warning('prompt音频采样率{}低于{}'.format(torchaudio.info(prompt_wav).sample_rate, prompt_sr)) + yield (target_sr, default_data) + # sft mode only use sft_dropdown + if mode_checkbox_group in ['预训练音色']: + if instruct_text != '' or prompt_wav is not None or prompt_text != '': + gr.Info('您正在使用预训练音色模式,prompt文本/prompt音频/instruct文本会被忽略!') + # zero_shot mode only use prompt_wav prompt text + if mode_checkbox_group in ['3s极速复刻']: + if prompt_text == '': + gr.Warning('prompt文本为空,您是否忘记输入prompt文本?') + yield (target_sr, default_data) + if instruct_text != '': + gr.Info('您正在使用3s极速复刻模式,预训练音色/instruct文本会被忽略!') + info = torchaudio.info(prompt_wav) + if info.num_frames / info.sample_rate > 10: + gr.Warning('请限制输入音频在10s内,避免推理效果过低') + yield (target_sr, default_data) + + if mode_checkbox_group == '预训练音色': + logging.info('get sft inference request') + set_all_random_seed(seed) + for i in cosyvoice.inference_sft(tts_text, sft_dropdown, stream=stream, speed=speed): + yield (target_sr, i['tts_speech'].numpy().flatten()) + elif mode_checkbox_group == '3s极速复刻': + logging.info('get zero_shot inference request') + prompt_speech_16k = postprocess(load_wav(prompt_wav, prompt_sr)) + set_all_random_seed(seed) + for i in cosyvoice.inference_zero_shot(tts_text, prompt_text, prompt_speech_16k, stream=stream, speed=speed): + yield (target_sr, i['tts_speech'].numpy().flatten()) + elif mode_checkbox_group == '跨语种复刻': + logging.info('get cross_lingual inference request') + prompt_speech_16k = postprocess(load_wav(prompt_wav, prompt_sr)) + set_all_random_seed(seed) + for i in cosyvoice.inference_cross_lingual(tts_text, prompt_speech_16k, stream=stream, speed=speed): + yield (target_sr, i['tts_speech'].numpy().flatten()) + else: + logging.info('get instruct inference request') + logging.info('get instruct inference request') + prompt_speech_16k = postprocess(load_wav(prompt_wav, prompt_sr)) + set_all_random_seed(seed) + for i in cosyvoice.inference_instruct2(tts_text, instruct_text, prompt_speech_16k, stream=stream, speed=speed): + yield (target_sr, i['tts_speech'].numpy().flatten()) + + +def main(): + with gr.Blocks() as demo: + gr.Markdown("### 代码库 [CosyVoice](https://github.com/FunAudioLLM/CosyVoice) \ + 预训练模型 [CosyVoice2-0.5B](https://www.modelscope.cn/models/iic/CosyVoice2-0.5B) \ + [CosyVoice-300M](https://www.modelscope.cn/models/iic/CosyVoice-300M) \ + [CosyVoice-300M-Instruct](https://www.modelscope.cn/models/iic/CosyVoice-300M-Instruct) \ + [CosyVoice-300M-SFT](https://www.modelscope.cn/models/iic/CosyVoice-300M-SFT)") + gr.Markdown("#### 请输入需要合成的文本,选择推理模式,并按照提示步骤进行操作") + + tts_text = gr.Textbox(label="输入合成文本", lines=1, value="CosyVoice迎来全面升级,提供更准、更稳、更快、 更好的语音生成能力。CosyVoice is undergoing a comprehensive upgrade, providing more accurate, stable, faster, and better voice generation capabilities.") + with gr.Row(): + mode_checkbox_group = gr.Radio(choices=inference_mode_list, label='选择推理模式', value=inference_mode_list[0]) + instruction_text = gr.Text(label="操作步骤", value=instruct_dict[inference_mode_list[0]], scale=0.5) + stream = gr.Radio(choices=stream_mode_list, label='是否流式推理', value=stream_mode_list[0][1]) + with gr.Column(scale=0.25): + seed_button = gr.Button(value="\U0001F3B2") + seed = gr.Number(value=0, label="随机推理种子") + + with gr.Row(): + prompt_wav_upload = gr.Audio(sources='upload', type='filepath', label='选择prompt音频文件,注意采样率不低于16khz') + prompt_wav_record = gr.Audio(sources='microphone', type='filepath', label='录制prompt音频文件') + prompt_text = gr.Textbox(label="prompt文本", lines=1, placeholder="请输入prompt文本,支持自动识别,您可以自行修正识别结果...", value='') + instruct_text = gr.Textbox(label="输入instruct文本", lines=1, placeholder="请输入instruct文本.例如:用四川话说这句话。", value='') + + generate_button = gr.Button("生成音频") + + audio_output = gr.Audio(label="合成音频", autoplay=True, streaming=True) + + seed_button.click(generate_seed, inputs=[], outputs=seed) + generate_button.click(generate_audio, + inputs=[tts_text, mode_checkbox_group, prompt_text, prompt_wav_upload, prompt_wav_record, instruct_text, + seed, stream], + outputs=[audio_output]) + mode_checkbox_group.change(fn=change_instruction, inputs=[mode_checkbox_group], outputs=[instruction_text]) + prompt_wav_upload.change(fn=prompt_wav_recognition, inputs=[prompt_wav_upload], outputs=[prompt_text]) + prompt_wav_record.change(fn=prompt_wav_recognition, inputs=[prompt_wav_record], outputs=[prompt_text]) + demo.queue(max_size=4, default_concurrency_limit=2).launch(server_port=50000) + + +if __name__ == '__main__': + load_jit = True if os.environ.get('jit') == '1' else False + load_onnx = True if os.environ.get('onnx') == '1' else False + load_trt = True if os.environ.get('trt') == '1' else False + logging.info('cosyvoice args load_jit {} load_onnx {} load_trt {}'.format(load_jit, load_onnx, load_trt)) + cosyvoice = CosyVoice2('pretrained_models/CosyVoice2-0.5B', load_jit=load_jit, load_onnx=load_onnx, load_trt=load_trt) + sft_spk = cosyvoice.list_avaliable_spks() + prompt_speech_16k = load_wav('zero_shot_prompt.wav', 16000) + for stream in [True, False]: + for i, j in enumerate(cosyvoice.inference_zero_shot('收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐,笑容如花儿般绽放。', '希望你以后能够做的比我还好呦。', prompt_speech_16k, stream=stream)): + continue + prompt_sr, target_sr = 16000, 24000 + default_data = np.zeros(target_sr) + + model_dir = "iic/SenseVoiceSmall" + asr_model = AutoModel( + model=model_dir, + disable_update=True, + log_level='DEBUG', + device="cuda:0") + main() diff --git a/cert.pem b/cert.pem new file mode 100644 index 0000000000000000000000000000000000000000..4ffd9a21561f0823ba6454adff61e1e34af41048 --- /dev/null +++ b/cert.pem @@ -0,0 +1,32 @@ +-----BEGIN CERTIFICATE----- +MIIFkTCCA3mgAwIBAgIUEO2zq0OQeuRFIFH4lfHLgcR5hTUwDQYJKoZIhvcNAQEL +BQAwWDELMAkGA1UEBhMCQ04xCzAJBgNVBAgMAlpKMQswCQYDVQQHDAJIWjEQMA4G +A1UECgwHY29tcGFueTEMMAoGA1UECwwDYWxpMQ8wDQYDVQQDDAZncmFkaW8wHhcN +MjQwNDI5MTIxNDQxWhcNMjUwNDI5MTIxNDQxWjBYMQswCQYDVQQGEwJDTjELMAkG +A1UECAwCWkoxCzAJBgNVBAcMAkhaMRAwDgYDVQQKDAdjb21wYW55MQwwCgYDVQQL +DANhbGkxDzANBgNVBAMMBmdyYWRpbzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC +AgoCggIBAKohzP3V7VdDyMgfRO4+xzh/mWFPapQWJIIrhnHj8GRJ9tgFVXf71vcU +PMo+/t+y0rjupw3WwWIj6kJP15t46xxmLzoJHZKHV7d1Y7XJTyN1hvRCzeGz6w/E +VX0y6U+0y9m1HG0kvsfLwCKZPxEN21RfPukGN3qOIpjaRvE6fxg8DCUQN8qEpjQ9 +DQehq/g0B/wZFwIB2089+BeqesjaOinY2+z4YiMreIj2dy8XM6G59quS21oe0u5n +6SW80ayf/yA6CHqblCHNfdi3vrzxMalNjT5EHKxQsLEDd2nWSndoPeXClXdSoIpE +1+H86dWHZpzPLd6rOfa+FCZ3TQsZbL+p3ree2AIMIB7zWw59oKGE8UuZbtyCVWK6 +hufMOs703ZT97WeBEoOA72itUwCBqAakYNoULvYSOuXZT0LvJN1Z4YLNTkJXDA0u +vMABPbRFXfFK67F/fLm/vges4dhhpQNeSxSuXEC7rMA5hCQRk3BccdEgxoBfNZcM +HKo8CaB3wxbK7inXZb3JD4sFK64H5VjfJE8ibFzoIhiPICuC+0bzSKfc0+dcUNMb +KsE5M3etmS1TcPKuebk9OTu8YUJiNMYgEInw7vCq004v4IOqQr0aX/LGRm21RB/i +M3qFKCSHSw5/Z+o9sZ/kw3AeNnx5r5dq4OAswx3RhScPJtd6qesZAgMBAAGjUzBR +MB0GA1UdDgQWBBSNZx2v1BNAGL4gGM4TUXIvn1OyFTAfBgNVHSMEGDAWgBSNZx2v +1BNAGL4gGM4TUXIvn1OyFTAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUA +A4ICAQA/khg91VtI/tDLCLyQ6ZMulfOzJHuGmIs4cvG5fIOvzYjQpvAGSgNeivKp ++5RIkpUabcwdUCq6VXeXheo+SaGgVdwpxQy/p/E+i+AengRB5Qm/hJ5lLU6CdNBq +WCN/0Aa1GL/pM4HAzVQY81HeB46UaHWtW6J9hnBbVg2MF2GanAqfeODpZqIHEggt +Vw2ivElV47JTFZsNU+JYG5ECsfTjNQYpoA6Hyb/d5ZW8YsfOjr8oIBM4QyZWq1Ke +eAlytVwl9lj4AkAQIAgkrJHkLjj5yjZ7Hir5NjBuBx06FDAIFb2XWgNnq4ua/pSq +9fL4cxx4cEJku1X/FYtUBbWsXe8uFGwTEGHuEZR3pj5VSFbuNlARLIsq8/gh8MRQ +NjKQIlTVINkuOFuVmSrLC5nIwTPhlpEFwIQPGzFD2DbVNor9EXQ2b89WtHqZAZik +qFDb76JM9jctf9n8l96oSKrwEaCoFmRojnyyYl9UByJxPRCeTJ//i2vxeTvLC3FT +Rw2jFi/pwoqSVmJtuAFLT96/x2qKpgk+M1zG3oFiDV1lxY8sw1RA3Mm4s3Cm8H5A +3E+6R34XZLifqhxLVcyDsRWPcqte3Pt6v/xXWN+EuOigK4tr69p8aU7WR5mskmzO +tZFeEb0OxL1WjF/rmwCkd/SvSuWSiszMoX5hcOA7/GGw3pl3YQ== +-----END CERTIFICATE----- diff --git a/cosyvoice/__init__.py b/cosyvoice/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/cosyvoice/bin/average_model.py b/cosyvoice/bin/average_model.py new file mode 100644 index 0000000000000000000000000000000000000000..d095dcd99f915f0ffdbc3a0c14fcb6f8db900be0 --- /dev/null +++ b/cosyvoice/bin/average_model.py @@ -0,0 +1,92 @@ +# Copyright (c) 2020 Mobvoi Inc (Di Wu) +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import argparse +import glob + +import yaml +import torch + + +def get_args(): + parser = argparse.ArgumentParser(description='average model') + parser.add_argument('--dst_model', required=True, help='averaged model') + parser.add_argument('--src_path', + required=True, + help='src model path for average') + parser.add_argument('--val_best', + action="store_true", + help='averaged model') + parser.add_argument('--num', + default=5, + type=int, + help='nums for averaged model') + + args = parser.parse_args() + print(args) + return args + + +def main(): + args = get_args() + val_scores = [] + if args.val_best: + yamls = glob.glob('{}/*.yaml'.format(args.src_path)) + yamls = [ + f for f in yamls + if not (os.path.basename(f).startswith('train') + or os.path.basename(f).startswith('init')) + ] + for y in yamls: + with open(y, 'r') as f: + dic_yaml = yaml.load(f, Loader=yaml.BaseLoader) + loss = float(dic_yaml['loss_dict']['loss']) + epoch = int(dic_yaml['epoch']) + step = int(dic_yaml['step']) + tag = dic_yaml['tag'] + val_scores += [[epoch, step, loss, tag]] + sorted_val_scores = sorted(val_scores, + key=lambda x: x[2], + reverse=False) + print("best val (epoch, step, loss, tag) = " + + str(sorted_val_scores[:args.num])) + path_list = [ + args.src_path + '/epoch_{}_whole.pt'.format(score[0]) + for score in sorted_val_scores[:args.num] + ] + print(path_list) + avg = {} + num = args.num + assert num == len(path_list) + for path in path_list: + print('Processing {}'.format(path)) + states = torch.load(path, map_location=torch.device('cpu')) + for k in states.keys(): + if k not in avg.keys(): + avg[k] = states[k].clone() + else: + avg[k] += states[k] + # average + for k in avg.keys(): + if avg[k] is not None: + # pytorch 1.6 use true_divide instead of /= + avg[k] = torch.true_divide(avg[k], num) + print('Saving to {}'.format(args.dst_model)) + torch.save(avg, args.dst_model) + + +if __name__ == '__main__': + main() diff --git a/cosyvoice/bin/convert.py b/cosyvoice/bin/convert.py new file mode 100644 index 0000000000000000000000000000000000000000..789efe6e643c0d8723f6f216cf27ae2be1863986 --- /dev/null +++ b/cosyvoice/bin/convert.py @@ -0,0 +1,168 @@ +import sys +import torch + +def convert_llm(state_dict): + # 调整了lm的结构,把codec_lm.encoder作为llm,codec_lm.decoder作为decoder + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('codec_lm.encoder.'): + v = state_dict.pop(k) + k = k.replace('codec_lm.encoder.', 'llm.') + state_dict[k] = v + if k.startswith('codec_lm.decoder.'): + v = state_dict.pop(k) + k = k.replace('codec_lm.decoder.', 'llm_decoder.') + state_dict[k] = v + # espnet和wenet具体实现上的差异 + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('text_encoder.embed.'): + v = state_dict.pop(k) + k = k.replace('text_encoder.embed.', 'text_encoder.embed.out.') + state_dict[k] = v + if k.startswith('llm.embed.'): + v = state_dict.pop(k) + k = k.replace('llm.embed.', 'llm.embed.out.') + state_dict[k] = v + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('text_enc_out_layer.'): + v = state_dict.pop(k) + k = k.replace('text_enc_out_layer.', 'text_encoder_affine_layer.') + state_dict[k] = v + if k.startswith('token_embedding.'): + v = state_dict.pop(k) + k = k.replace('token_embedding.', 'text_embedding.') + state_dict[k] = v + if k.startswith('xvec_proj.'): + v = state_dict.pop(k) + k = k.replace('xvec_proj.', 'spk_embed_affine_layer.') + state_dict[k] = v + if k.startswith('lm_embedding.'): + v = state_dict.pop(k) + k = k.replace('lm_embedding.', 'llm_embedding.') + state_dict[k] = v + if k.startswith('codec_embedder.'): + v = state_dict.pop(k) + k = k.replace('codec_embedder.', 'speech_embedding.') + state_dict[k] = v + # instruct少了spk embedding参数,加个全0上去 + keys = list(state_dict.keys()) + if 'spk_embed_affine_layer.weight' not in keys: + print('no spk_embed_affine_layer.weight, should be instruct model') + state_dict['spk_embed_affine_layer.weight'] = torch.zeros(1024, 192) + if 'spk_embed_affine_layer.bias' not in keys: + print('no spk_embed_affine_layer.bias, should be instruct model') + state_dict['spk_embed_affine_layer.bias'] = torch.zeros(1024) + return state_dict + +def convert_hift(state_dict): + # 调整了cosyvoice中hifigan的结构,把f0_predictor放到generator里 + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('decoder.'): + v = state_dict.pop(k) + k = k.replace('decoder.', '') + state_dict[k] = v + if k.startswith('generator.'): + v = state_dict.pop(k) + k = k.replace('generator.', '') + state_dict[k] = v + return state_dict + +def convert_flow(state_dict): + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('encoder.embed.'): + v = state_dict.pop(k) + k = k.replace('encoder.embed.', 'encoder.embed.out.') + state_dict[k] = v + for k in keys: + if k.startswith('xvec_proj.'): + v = state_dict.pop(k) + k = k.replace('xvec_proj.', 'spk_embed_affine_layer.') + state_dict[k] = v + return state_dict + +def convert_llm2(state_dict): + # 调整了lm的结构,把codec_lm.encoder作为llm,codec_lm.decoder作为decoder + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('codec_lm.encoder.'): + v = state_dict.pop(k) + k = k.replace('codec_lm.encoder.', 'llm.') + state_dict[k] = v + if k.startswith('codec_lm.decoder.'): + v = state_dict.pop(k) + k = k.replace('codec_lm.decoder.', 'llm_decoder.') + state_dict[k] = v + if k.startswith('lm_embedding.'): + v = state_dict.pop(k) + k = k.replace('lm_embedding.', 'llm_embedding.') + state_dict[k] = v + if k.startswith('codec_embedder.'): + v = state_dict.pop(k) + k = k.replace('codec_embedder.', 'speech_embedding.') + state_dict[k] = v + if k.startswith('text_enc_out_layer.'): + state_dict.pop(k) + if k.startswith('token_embedding.weight'): + state_dict.pop(k) + return state_dict + +def convert_flow2(state_dict): + keys = list(state_dict.keys()) + for k in keys: + if k.startswith('encoder.embed.'): + v = state_dict.pop(k) + k = k.replace('encoder.embed.', 'encoder.embed.out.') + state_dict[k] = v + for k in keys: + if k.startswith('xvec_proj.'): + v = state_dict.pop(k) + k = k.replace('xvec_proj.', 'spk_embed_affine_layer.') + state_dict[k] = v + for k in keys: + if k.startswith('mel_extractor.'): + state_dict.pop(k) + for k in keys: + if k.startswith('encoder.upsample_blocks.0.0.'): + v = state_dict.pop(k) + k = k.replace('encoder.upsample_blocks.0.0.', 'encoder.up_layer.') + state_dict[k] = v + if k.startswith('encoder.upsample_blocks.0.1.'): + v = state_dict.pop(k) + k = k.replace('encoder.upsample_blocks.0.1.', 'encoder.up_embed.out.') + state_dict[k] = v + if k.startswith('encoder.upsample_blocks.0.2.'): + v = state_dict.pop(k) + k = k.replace('encoder.upsample_blocks.0.2.', 'encoder.up_encoders.') + state_dict[k] = v + # CausalBlock1D中sequantial 1->2 + if k.startswith('decoder.estimator.') and k.endswith('block.1.weight'): + v = state_dict.pop(k) + k = k.replace('block.1.weight', 'block.2.weight') + state_dict[k] = v + if k.startswith('decoder.estimator.') and k.endswith('block.1.bias'): + v = state_dict.pop(k) + k = k.replace('block.1.bias', 'block.2.bias') + state_dict[k] = v + return state_dict + +if __name__ == '__main__': + # 使用方法 python3 convert.py 原格式llm.pt llm normalize 新格式llm.pt + # 或者 python3 convert.py 新格式llm.pt llm inverse_normalize 原格式llm.pt + state_dict = torch.load(sys.argv[1], map_location='cpu') + if sys.argv[2] == 'llm': + state_dict = convert_llm(state_dict) + elif sys.argv[2] == 'flow': + state_dict = convert_flow(state_dict) + elif sys.argv[2] == 'hift': + state_dict = convert_hift(state_dict) + elif sys.argv[2] == 'llm2': + state_dict = convert_llm2(state_dict) + elif sys.argv[2] == 'flow2': + state_dict = convert_flow2(state_dict) + else: + raise ValueError + torch.save(state_dict, sys.argv[4]) diff --git a/cosyvoice/bin/export_jit.py b/cosyvoice/bin/export_jit.py new file mode 100644 index 0000000000000000000000000000000000000000..7587bd81d90558b24803e6724cad52ee11ea3b18 --- /dev/null +++ b/cosyvoice/bin/export_jit.py @@ -0,0 +1,74 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import print_function + +import argparse +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +import os +import sys +import torch +ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) +sys.path.append('{}/../..'.format(ROOT_DIR)) +sys.path.append('{}/../../third_party/Matcha-TTS'.format(ROOT_DIR)) +from cosyvoice.cli.cosyvoice import CosyVoice + + +def get_args(): + parser = argparse.ArgumentParser(description='export your model for deployment') + parser.add_argument('--model_dir', + type=str, + default='pretrained_models/CosyVoice-300M', + help='local path') + args = parser.parse_args() + print(args) + return args + + +def main(): + args = get_args() + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + + torch._C._jit_set_fusion_strategy([('STATIC', 1)]) + torch._C._jit_set_profiling_mode(False) + torch._C._jit_set_profiling_executor(False) + + cosyvoice = CosyVoice(args.model_dir, load_jit=False, load_onnx=False) + + # 1. export llm text_encoder + llm_text_encoder = cosyvoice.model.llm.text_encoder.half() + script = torch.jit.script(llm_text_encoder) + script = torch.jit.freeze(script) + script = torch.jit.optimize_for_inference(script) + script.save('{}/llm.text_encoder.fp16.zip'.format(args.model_dir)) + + # 2. export llm llm + llm_llm = cosyvoice.model.llm.llm.half() + script = torch.jit.script(llm_llm) + script = torch.jit.freeze(script, preserved_attrs=['forward_chunk']) + script = torch.jit.optimize_for_inference(script) + script.save('{}/llm.llm.fp16.zip'.format(args.model_dir)) + + # 3. export flow encoder + flow_encoder = cosyvoice.model.flow.encoder + script = torch.jit.script(flow_encoder) + script = torch.jit.freeze(script) + script = torch.jit.optimize_for_inference(script) + script.save('{}/flow.encoder.fp32.zip'.format(args.model_dir)) + + +if __name__ == '__main__': + main() diff --git a/cosyvoice/bin/export_jit_cosyvoice2.py b/cosyvoice/bin/export_jit_cosyvoice2.py new file mode 100644 index 0000000000000000000000000000000000000000..009b4d16abc4459454d8f247b6c2a012e5b3213a --- /dev/null +++ b/cosyvoice/bin/export_jit_cosyvoice2.py @@ -0,0 +1,60 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import print_function + +import argparse +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +import os +import sys +import torch +ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) +sys.path.append('{}/../..'.format(ROOT_DIR)) +sys.path.append('{}/../../third_party/Matcha-TTS'.format(ROOT_DIR)) +from cosyvoice.cli.cosyvoice import CosyVoice2 + + +def get_args(): + parser = argparse.ArgumentParser(description='export your model for deployment') + parser.add_argument('--model_dir', + type=str, + default='pretrained_models/CosyVoice-300M', + help='local path') + args = parser.parse_args() + print(args) + return args + + +def main(): + args = get_args() + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + + torch._C._jit_set_fusion_strategy([('STATIC', 1)]) + torch._C._jit_set_profiling_mode(False) + torch._C._jit_set_profiling_executor(False) + + cosyvoice = CosyVoice2(args.model_dir, load_jit=False, load_onnx=False) + + # 3. export flow encoder + flow_encoder = cosyvoice.model.flow.encoder + script = torch.jit.script(flow_encoder) + script = torch.jit.freeze(script) + script = torch.jit.optimize_for_inference(script) + script.save('{}/flow.encoder.fp32.zip'.format(args.model_dir)) + + +if __name__ == '__main__': + main() diff --git a/cosyvoice/bin/export_onnx.py b/cosyvoice/bin/export_onnx.py new file mode 100644 index 0000000000000000000000000000000000000000..f4051f64e7e49cb1054bc346b2b5f722c86a00c0 --- /dev/null +++ b/cosyvoice/bin/export_onnx.py @@ -0,0 +1,112 @@ +# Copyright (c) 2024 Antgroup Inc (authors: Zhoubofan, hexisyztem@icloud.com) +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import print_function + +import argparse +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +import os +import sys +import onnxruntime +import random +import torch +from tqdm import tqdm +ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) +sys.path.append('{}/../..'.format(ROOT_DIR)) +sys.path.append('{}/../../third_party/Matcha-TTS'.format(ROOT_DIR)) +from cosyvoice.cli.cosyvoice import CosyVoice + + +def get_dummy_input(batch_size, seq_len, out_channels, device): + x = torch.rand((batch_size, out_channels, seq_len), dtype=torch.float32, device=device) + mask = torch.ones((batch_size, 1, seq_len), dtype=torch.float32, device=device) + mu = torch.rand((batch_size, out_channels, seq_len), dtype=torch.float32, device=device) + t = torch.rand((batch_size), dtype=torch.float32, device=device) + spks = torch.rand((batch_size, out_channels), dtype=torch.float32, device=device) + cond = torch.rand((batch_size, out_channels, seq_len), dtype=torch.float32, device=device) + return x, mask, mu, t, spks, cond + + +def get_args(): + parser = argparse.ArgumentParser(description='export your model for deployment') + parser.add_argument('--model_dir', + type=str, + default='pretrained_models/CosyVoice-300M', + help='local path') + args = parser.parse_args() + print(args) + return args + + +def main(): + args = get_args() + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + + cosyvoice = CosyVoice(args.model_dir, load_jit=False, load_onnx=False) + + # 1. export flow decoder estimator + estimator = cosyvoice.model.flow.decoder.estimator + + device = cosyvoice.model.device + batch_size, seq_len = 1, 256 + out_channels = cosyvoice.model.flow.decoder.estimator.out_channels + x, mask, mu, t, spks, cond = get_dummy_input(batch_size, seq_len, out_channels, device) + torch.onnx.export( + estimator, + (x, mask, mu, t, spks, cond), + '{}/flow.decoder.estimator.fp32.onnx'.format(args.model_dir), + export_params=True, + opset_version=18, + do_constant_folding=True, + input_names=['x', 'mask', 'mu', 't', 'spks', 'cond'], + output_names=['estimator_out'], + dynamic_axes={ + 'x': {0: 'batch_size', 2: 'seq_len'}, + 'mask': {0: 'batch_size', 2: 'seq_len'}, + 'mu': {0: 'batch_size', 2: 'seq_len'}, + 'cond': {0: 'batch_size', 2: 'seq_len'}, + 't': {0: 'batch_size'}, + 'spks': {0: 'batch_size'}, + 'estimator_out': {0: 'batch_size', 2: 'seq_len'}, + } + ) + + # 2. test computation consistency + option = onnxruntime.SessionOptions() + option.graph_optimization_level = onnxruntime.GraphOptimizationLevel.ORT_ENABLE_ALL + option.intra_op_num_threads = 1 + providers = ['CUDAExecutionProvider' if torch.cuda.is_available() else 'CPUExecutionProvider'] + estimator_onnx = onnxruntime.InferenceSession('{}/flow.decoder.estimator.fp32.onnx'.format(args.model_dir), + sess_options=option, providers=providers) + + for _ in tqdm(range(10)): + x, mask, mu, t, spks, cond = get_dummy_input(random.randint(1, 6), random.randint(16, 512), out_channels, device) + output_pytorch = estimator(x, mask, mu, t, spks, cond) + ort_inputs = { + 'x': x.cpu().numpy(), + 'mask': mask.cpu().numpy(), + 'mu': mu.cpu().numpy(), + 't': t.cpu().numpy(), + 'spks': spks.cpu().numpy(), + 'cond': cond.cpu().numpy() + } + output_onnx = estimator_onnx.run(None, ort_inputs)[0] + torch.testing.assert_allclose(output_pytorch, torch.from_numpy(output_onnx).to(device), rtol=1e-2, atol=1e-4) + + +if __name__ == "__main__": + main() diff --git a/cosyvoice/bin/export_onnx_cosyvoice2.py b/cosyvoice/bin/export_onnx_cosyvoice2.py new file mode 100644 index 0000000000000000000000000000000000000000..6b092a8b38f8dd25833d48e44b6642f0df680aaa --- /dev/null +++ b/cosyvoice/bin/export_onnx_cosyvoice2.py @@ -0,0 +1,110 @@ +# Copyright (c) 2024 Antgroup Inc (authors: Zhoubofan, hexisyztem@icloud.com) +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import print_function + +import argparse +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +import os +import sys +import onnxruntime +import random +import torch +from tqdm import tqdm +ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) +sys.path.append('{}/../..'.format(ROOT_DIR)) +sys.path.append('{}/../../third_party/Matcha-TTS'.format(ROOT_DIR)) +from cosyvoice.cli.cosyvoice import CosyVoice2 + + +def get_dummy_input(batch_size, seq_len, out_channels, device): + x = torch.rand((batch_size, out_channels, seq_len), dtype=torch.float32, device=device) + mask = torch.ones((batch_size, 1, seq_len), dtype=torch.float32, device=device) + mu = torch.rand((batch_size, out_channels, seq_len), dtype=torch.float32, device=device) + t = torch.rand((batch_size), dtype=torch.float32, device=device) + spks = torch.rand((batch_size, out_channels), dtype=torch.float32, device=device) + cond = torch.rand((batch_size, out_channels, seq_len), dtype=torch.float32, device=device) + return x, mask, mu, t, spks, cond + + +def get_args(): + parser = argparse.ArgumentParser(description='export your model for deployment') + parser.add_argument('--model_dir', + type=str, + default='pretrained_models/CosyVoice-300M', + help='local path') + args = parser.parse_args() + print(args) + return args + + +def main(): + args = get_args() + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + + cosyvoice = CosyVoice2(args.model_dir, load_jit=False, load_onnx=False) + + # 1. export flow decoder estimator + estimator = cosyvoice.model.flow.decoder.estimator + + device = cosyvoice.model.device + batch_size, seq_len = 2, 320 + out_channels = cosyvoice.model.flow.decoder.estimator.out_channels + x, mask, mu, t, spks, cond = get_dummy_input(batch_size, seq_len, out_channels, device) + torch.onnx.export( + estimator, + (x, mask, mu, t, spks, cond), + '{}/flow.decoder.estimator.fp32.onnx'.format(args.model_dir), + export_params=True, + opset_version=18, + do_constant_folding=True, + input_names=['x', 'mask', 'mu', 't', 'spks', 'cond'], + output_names=['estimator_out'], + dynamic_axes={ + 'x': {2: 'seq_len'}, + 'mask': {2: 'seq_len'}, + 'mu': {2: 'seq_len'}, + 'cond': {2: 'seq_len'}, + 'estimator_out': {2: 'seq_len'}, + } + ) + + # 2. test computation consistency + option = onnxruntime.SessionOptions() + option.graph_optimization_level = onnxruntime.GraphOptimizationLevel.ORT_ENABLE_ALL + option.intra_op_num_threads = 1 + providers = ['CUDAExecutionProvider' if torch.cuda.is_available() else 'CPUExecutionProvider'] + estimator_onnx = onnxruntime.InferenceSession('{}/flow.decoder.estimator.fp32.onnx'.format(args.model_dir), + sess_options=option, providers=providers) + + for _ in tqdm(range(10)): + x, mask, mu, t, spks, cond = get_dummy_input(random.randint(1, 6), random.randint(16, 512), out_channels, device) + output_pytorch = estimator(x, mask, mu, t, spks, cond) + ort_inputs = { + 'x': x.cpu().numpy(), + 'mask': mask.cpu().numpy(), + 'mu': mu.cpu().numpy(), + 't': t.cpu().numpy(), + 'spks': spks.cpu().numpy(), + 'cond': cond.cpu().numpy() + } + output_onnx = estimator_onnx.run(None, ort_inputs)[0] + torch.testing.assert_allclose(output_pytorch, torch.from_numpy(output_onnx).to(device), rtol=1e-2, atol=1e-4) + + +if __name__ == "__main__": + main() diff --git a/cosyvoice/bin/export_trt_cosyvoce2.sh b/cosyvoice/bin/export_trt_cosyvoce2.sh new file mode 100644 index 0000000000000000000000000000000000000000..a4eb227787ee18d83489953803a7bac743d51d5e --- /dev/null +++ b/cosyvoice/bin/export_trt_cosyvoce2.sh @@ -0,0 +1,3 @@ +#!/bin/bash +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/mnt/lyuxiang.lx/data/TensorRT-10.0.1.6-cu124/TensorRT-10.0.1.6/lib:/usr/local/cuda-12.4/lib64 +/mnt/lyuxiang.lx/data/TensorRT-10.0.1.6-cu124/TensorRT-10.0.1.6/bin/trtexec --onnx=/mnt/lyuxiang.lx/CosyVoice_github/pretrained_models/CosyVoice2-0.5B/flow.decoder.estimator.fp32.onnx --saveEngine=/mnt/lyuxiang.lx/CosyVoice_github/pretrained_models/CosyVoice2-0.5B/flow.decoder.estimator.fp16.Volta.plan --fp16 --minShapes=x:2x80x4,mask:2x1x4,mu:2x80x4,cond:2x80x4 --optShapes=x:2x80x193,mask:2x1x193,mu:2x80x193,cond:2x80x193 --maxShapes=x:2x80x6800,mask:2x1x6800,mu:2x80x6800,cond:2x80x6800 --inputIOFormats=fp16:chw,fp16:chw,fp16:chw,fp16:chw,fp16:chw,fp16:chw,fp16:chw --outputIOFormats=fp16:chw diff --git a/cosyvoice/bin/inference.py b/cosyvoice/bin/inference.py new file mode 100644 index 0000000000000000000000000000000000000000..2cb831a5f3e93ad2c8f5447920acecb8238818b9 --- /dev/null +++ b/cosyvoice/bin/inference.py @@ -0,0 +1,115 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import print_function + +import argparse +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +import os +import torch +from torch.utils.data import DataLoader +import torchaudio +from hyperpyyaml import load_hyperpyyaml +from tqdm import tqdm +from cosyvoice.cli.model import CosyVoiceModel +from cosyvoice.dataset.dataset import Dataset + + +def get_args(): + parser = argparse.ArgumentParser(description='inference with your model') + parser.add_argument('--config', required=True, help='config file') + parser.add_argument('--prompt_data', required=True, help='prompt data file') + parser.add_argument('--prompt_utt2data', required=True, help='prompt data file') + parser.add_argument('--tts_text', required=True, help='tts input file') + parser.add_argument('--llm_model', required=True, help='llm model file') + parser.add_argument('--flow_model', required=True, help='flow model file') + parser.add_argument('--hifigan_model', required=True, help='hifigan model file') + parser.add_argument('--gpu', + type=int, + default=-1, + help='gpu id for this rank, -1 for cpu') + parser.add_argument('--mode', + default='sft', + choices=['sft', 'zero_shot'], + help='inference mode') + parser.add_argument('--result_dir', required=True, help='asr result file') + args = parser.parse_args() + print(args) + return args + + +def main(): + args = get_args() + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + os.environ['CUDA_VISIBLE_DEVICES'] = str(args.gpu) + + # Init cosyvoice models from configs + use_cuda = args.gpu >= 0 and torch.cuda.is_available() + device = torch.device('cuda' if use_cuda else 'cpu') + with open(args.config, 'r') as f: + configs = load_hyperpyyaml(f) + + model = CosyVoiceModel(configs['llm'], configs['flow'], configs['hift']) + model.load(args.llm_model, args.flow_model, args.hifigan_model) + + test_dataset = Dataset(args.prompt_data, data_pipeline=configs['data_pipeline'], mode='inference', shuffle=False, partition=False, + tts_file=args.tts_text, prompt_utt2data=args.prompt_utt2data) + test_data_loader = DataLoader(test_dataset, batch_size=None, num_workers=0) + + del configs + os.makedirs(args.result_dir, exist_ok=True) + fn = os.path.join(args.result_dir, 'wav.scp') + f = open(fn, 'w') + with torch.no_grad(): + for _, batch in tqdm(enumerate(test_data_loader)): + utts = batch["utts"] + assert len(utts) == 1, "inference mode only support batchsize 1" + text_token = batch["text_token"].to(device) + text_token_len = batch["text_token_len"].to(device) + tts_index = batch["tts_index"] + tts_text_token = batch["tts_text_token"].to(device) + tts_text_token_len = batch["tts_text_token_len"].to(device) + speech_token = batch["speech_token"].to(device) + speech_token_len = batch["speech_token_len"].to(device) + speech_feat = batch["speech_feat"].to(device) + speech_feat_len = batch["speech_feat_len"].to(device) + utt_embedding = batch["utt_embedding"].to(device) + spk_embedding = batch["spk_embedding"].to(device) + if args.mode == 'sft': + model_input = {'text': tts_text_token, 'text_len': tts_text_token_len, + 'llm_embedding': spk_embedding, 'flow_embedding': spk_embedding} + else: + model_input = {'text': tts_text_token, 'text_len': tts_text_token_len, + 'prompt_text': text_token, 'prompt_text_len': text_token_len, + 'llm_prompt_speech_token': speech_token, 'llm_prompt_speech_token_len': speech_token_len, + 'flow_prompt_speech_token': speech_token, 'flow_prompt_speech_token_len': speech_token_len, + 'prompt_speech_feat': speech_feat, 'prompt_speech_feat_len': speech_feat_len, + 'llm_embedding': utt_embedding, 'flow_embedding': utt_embedding} + tts_speeches = [] + for model_output in model.tts(**model_input): + tts_speeches.append(model_output['tts_speech']) + tts_speeches = torch.concat(tts_speeches, dim=1) + tts_key = '{}_{}'.format(utts[0], tts_index[0]) + tts_fn = os.path.join(args.result_dir, '{}.wav'.format(tts_key)) + torchaudio.save(tts_fn, tts_speeches, sample_rate=22050) + f.write('{} {}\n'.format(tts_key, tts_fn)) + f.flush() + f.close() + logging.info('Result wav.scp saved in {}'.format(fn)) + + +if __name__ == '__main__': + main() diff --git a/cosyvoice/bin/train.py b/cosyvoice/bin/train.py new file mode 100644 index 0000000000000000000000000000000000000000..3b4710e4df9a13f3b6a41f8da6ae38b55af1d8ac --- /dev/null +++ b/cosyvoice/bin/train.py @@ -0,0 +1,170 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from __future__ import print_function +import argparse +import datetime +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +from copy import deepcopy +import os +import torch +import torch.distributed as dist +import deepspeed + +from hyperpyyaml import load_hyperpyyaml + +from torch.distributed.elastic.multiprocessing.errors import record + +from cosyvoice.utils.executor import Executor +from cosyvoice.utils.train_utils import ( + init_distributed, + init_dataset_and_dataloader, + init_optimizer_and_scheduler, + init_summarywriter, save_model, + wrap_cuda_model, check_modify_and_save_config) + + +def get_args(): + parser = argparse.ArgumentParser(description='training your network') + parser.add_argument('--train_engine', + default='torch_ddp', + choices=['torch_ddp', 'deepspeed'], + help='Engine for paralleled training') + parser.add_argument('--model', required=True, help='model which will be trained') + parser.add_argument('--config', required=True, help='config file') + parser.add_argument('--train_data', required=True, help='train data file') + parser.add_argument('--cv_data', required=True, help='cv data file') + parser.add_argument('--checkpoint', help='checkpoint model') + parser.add_argument('--model_dir', required=True, help='save model dir') + parser.add_argument('--tensorboard_dir', + default='tensorboard', + help='tensorboard log dir') + parser.add_argument('--ddp.dist_backend', + dest='dist_backend', + default='nccl', + choices=['nccl', 'gloo'], + help='distributed backend') + parser.add_argument('--num_workers', + default=0, + type=int, + help='num of subprocess workers for reading') + parser.add_argument('--prefetch', + default=100, + type=int, + help='prefetch number') + parser.add_argument('--pin_memory', + action='store_true', + default=False, + help='Use pinned memory buffers used for reading') + parser.add_argument('--use_amp', + action='store_true', + default=False, + help='Use automatic mixed precision training') + parser.add_argument('--deepspeed.save_states', + dest='save_states', + default='model_only', + choices=['model_only', 'model+optimizer'], + help='save model/optimizer states') + parser.add_argument('--timeout', + default=60, + type=int, + help='timeout (in seconds) of cosyvoice_join.') + parser = deepspeed.add_config_arguments(parser) + args = parser.parse_args() + return args + + +@record +def main(): + args = get_args() + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + # gan train has some special initialization logic + gan = True if args.model == 'hifigan' else False + + override_dict = {k: None for k in ['llm', 'flow', 'hift', 'hifigan'] if k != args.model} + if gan is True: + override_dict.pop('hift') + with open(args.config, 'r') as f: + configs = load_hyperpyyaml(f, overrides=override_dict) + if gan is True: + configs['train_conf'] = configs['train_conf_gan'] + configs['train_conf'].update(vars(args)) + + # Init env for ddp + init_distributed(args) + + # Get dataset & dataloader + train_dataset, cv_dataset, train_data_loader, cv_data_loader = \ + init_dataset_and_dataloader(args, configs, gan) + + # Do some sanity checks and save config to arsg.model_dir + configs = check_modify_and_save_config(args, configs) + + # Tensorboard summary + writer = init_summarywriter(args) + + # load checkpoint + model = configs[args.model] + start_step, start_epoch = 0, -1 + if args.checkpoint is not None: + if os.path.exists(args.checkpoint): + state_dict = torch.load(args.checkpoint, map_location='cpu') + model.load_state_dict(state_dict, strict=False) + if 'step' in state_dict: + start_step = state_dict['step'] + if 'epoch' in state_dict: + start_epoch = state_dict['epoch'] + else: + logging.warning('checkpoint {} do not exsist!'.format(args.checkpoint)) + + # Dispatch model from cpu to gpu + model = wrap_cuda_model(args, model) + + # Get optimizer & scheduler + model, optimizer, scheduler, optimizer_d, scheduler_d = init_optimizer_and_scheduler(args, configs, model, gan) + scheduler.set_step(start_step) + if scheduler_d is not None: + scheduler_d.set_step(start_step) + + # Save init checkpoints + info_dict = deepcopy(configs['train_conf']) + info_dict['step'] = start_step + info_dict['epoch'] = start_epoch + save_model(model, 'init', info_dict) + + # Get executor + executor = Executor(gan=gan) + executor.step = start_step + + # Init scaler, used for pytorch amp mixed precision training + scaler = torch.cuda.amp.GradScaler() if args.use_amp else None + print('start step {} start epoch {}'.format(start_step, start_epoch)) + # Start training loop + for epoch in range(start_epoch + 1, info_dict['max_epoch']): + executor.epoch = epoch + train_dataset.set_epoch(epoch) + dist.barrier() + group_join = dist.new_group(backend="gloo", timeout=datetime.timedelta(seconds=args.timeout)) + if gan is True: + executor.train_one_epoc_gan(model, optimizer, scheduler, optimizer_d, scheduler_d, train_data_loader, cv_data_loader, + writer, info_dict, scaler, group_join) + else: + executor.train_one_epoc(model, optimizer, scheduler, train_data_loader, cv_data_loader, writer, info_dict, scaler, group_join) + dist.destroy_process_group(group_join) + + +if __name__ == '__main__': + main() diff --git a/cosyvoice/cli/__init__.py b/cosyvoice/cli/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/cosyvoice/cli/cosyvoice.py b/cosyvoice/cli/cosyvoice.py new file mode 100644 index 0000000000000000000000000000000000000000..5f642348ee0f2a0ce4d9b80a27fa309f03455134 --- /dev/null +++ b/cosyvoice/cli/cosyvoice.py @@ -0,0 +1,167 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import os +import time +from tqdm import tqdm +from hyperpyyaml import load_hyperpyyaml +from modelscope import snapshot_download +import torch +from cosyvoice.cli.frontend import CosyVoiceFrontEnd +from cosyvoice.cli.model import CosyVoiceModel, CosyVoice2Model +from cosyvoice.utils.file_utils import logging + + +class CosyVoice: + + def __init__(self, model_dir, load_jit=True, load_onnx=False, fp16=True): + instruct = True if '-Instruct' in model_dir else False + self.model_dir = model_dir + if not os.path.exists(model_dir): + model_dir = snapshot_download(model_dir) + with open('{}/cosyvoice.yaml'.format(model_dir), 'r') as f: + configs = load_hyperpyyaml(f) + self.frontend = CosyVoiceFrontEnd(configs['get_tokenizer'], + configs['feat_extractor'], + '{}/campplus.onnx'.format(model_dir), + '{}/speech_tokenizer_v1.onnx'.format(model_dir), + '{}/spk2info.pt'.format(model_dir), + instruct, + configs['allowed_special']) + self.sample_rate = configs['sample_rate'] + if torch.cuda.is_available() is False and (fp16 is True or load_jit is True): + load_jit = False + fp16 = False + logging.warning('cpu do not support fp16 and jit, force set to False') + self.model = CosyVoiceModel(configs['llm'], configs['flow'], configs['hift'], fp16) + self.model.load('{}/llm.pt'.format(model_dir), + '{}/flow.pt'.format(model_dir), + '{}/hift.pt'.format(model_dir)) + if load_jit: + self.model.load_jit('{}/llm.text_encoder.fp16.zip'.format(model_dir), + '{}/llm.llm.fp16.zip'.format(model_dir), + '{}/flow.encoder.fp32.zip'.format(model_dir)) + if load_onnx: + self.model.load_onnx('{}/flow.decoder.estimator.fp32.onnx'.format(model_dir)) + del configs + + def list_avaliable_spks(self): + spks = list(self.frontend.spk2info.keys()) + return spks + + def inference_sft(self, tts_text, spk_id, stream=False, speed=1.0): + for i in tqdm(self.frontend.text_normalize(tts_text, split=True)): + model_input = self.frontend.frontend_sft(i, spk_id) + start_time = time.time() + logging.info('synthesis text {}'.format(i)) + for model_output in self.model.tts(**model_input, stream=stream, speed=speed): + speech_len = model_output['tts_speech'].shape[1] / self.sample_rate + logging.info('yield speech len {}, rtf {}'.format(speech_len, (time.time() - start_time) / speech_len)) + yield model_output + start_time = time.time() + + def inference_zero_shot(self, tts_text, prompt_text, prompt_speech_16k, stream=False, speed=1.0): + prompt_text = self.frontend.text_normalize(prompt_text, split=False) + for i in tqdm(self.frontend.text_normalize(tts_text, split=True)): + if len(i) < 0.5 * len(prompt_text): + logging.warning('synthesis text {} too short than prompt text {}, this may lead to bad performance'.format(i, prompt_text)) + model_input = self.frontend.frontend_zero_shot(i, prompt_text, prompt_speech_16k, self.sample_rate) + start_time = time.time() + logging.info('synthesis text {}'.format(i)) + for model_output in self.model.tts(**model_input, stream=stream, speed=speed): + speech_len = model_output['tts_speech'].shape[1] / self.sample_rate + logging.info('yield speech len {}, rtf {}, abs mean {}, std {}'.format(speech_len, (time.time() - start_time) / speech_len, model_output['tts_speech'].abs().mean(), model_output['tts_speech'].std())) + yield model_output + start_time = time.time() + + def inference_cross_lingual(self, tts_text, prompt_speech_16k, stream=False, speed=1.0): + if self.frontend.instruct is True: + raise ValueError('{} do not support cross_lingual inference'.format(self.model_dir)) + for i in tqdm(self.frontend.text_normalize(tts_text, split=True)): + model_input = self.frontend.frontend_cross_lingual(i, prompt_speech_16k, self.sample_rate) + start_time = time.time() + logging.info('synthesis text {}'.format(i)) + for model_output in self.model.tts(**model_input, stream=stream, speed=speed): + speech_len = model_output['tts_speech'].shape[1] / self.sample_rate + logging.info('yield speech len {}, rtf {}'.format(speech_len, (time.time() - start_time) / speech_len)) + yield model_output + start_time = time.time() + + def inference_instruct(self, tts_text, spk_id, instruct_text, stream=False, speed=1.0): + if self.frontend.instruct is False: + raise ValueError('{} do not support instruct inference'.format(self.model_dir)) + instruct_text = self.frontend.text_normalize(instruct_text, split=False) + for i in tqdm(self.frontend.text_normalize(tts_text, split=True)): + model_input = self.frontend.frontend_instruct(i, spk_id, instruct_text) + start_time = time.time() + logging.info('synthesis text {}'.format(i)) + for model_output in self.model.tts(**model_input, stream=stream, speed=speed): + speech_len = model_output['tts_speech'].shape[1] / self.sample_rate + logging.info('yield speech len {}, rtf {}'.format(speech_len, (time.time() - start_time) / speech_len)) + yield model_output + start_time = time.time() + + def inference_instruct2(self, tts_text, instruct_text, prompt_speech_16k, stream=False, speed=1.0): + for i in tqdm(self.frontend.text_normalize(tts_text, split=True)): + model_input = self.frontend.frontend_instruct2(i, instruct_text, prompt_speech_16k, self.sample_rate) + start_time = time.time() + logging.info('synthesis text {}'.format(i)) + for model_output in self.model.tts(**model_input, stream=stream, speed=speed): + speech_len = model_output['tts_speech'].shape[1] / self.sample_rate + logging.info('yield speech len {}, rtf {}, abs mean {}, std {}'.format(speech_len, (time.time() - start_time) / speech_len, model_output['tts_speech'].abs().mean(), model_output['tts_speech'].std())) + yield model_output + start_time = time.time() + + def inference_vc(self, source_speech_16k, prompt_speech_16k, stream=False, speed=1.0): + model_input = self.frontend.frontend_vc(source_speech_16k, prompt_speech_16k, self.sample_rate) + start_time = time.time() + for model_output in self.model.vc(**model_input, stream=stream, speed=speed): + speech_len = model_output['tts_speech'].shape[1] / self.sample_rate + logging.info('yield speech len {}, rtf {}'.format(speech_len, (time.time() - start_time) / speech_len)) + yield model_output + start_time = time.time() + +class CosyVoice2(CosyVoice): + + def __init__(self, model_dir, load_jit=False, load_onnx=False, load_trt=False): + instruct = True if '-Instruct' in model_dir else False + self.model_dir = model_dir + if not os.path.exists(model_dir): + model_dir = snapshot_download(model_dir) + with open('{}/cosyvoice.yaml'.format(model_dir), 'r') as f: + configs = load_hyperpyyaml(f, overrides={'qwen_pretrain_path': os.path.join(model_dir, 'CosyVoice-BlankEN')}) + self.frontend = CosyVoiceFrontEnd(configs['get_tokenizer'], + configs['feat_extractor'], + '{}/campplus.onnx'.format(model_dir), + '{}/speech_tokenizer_v2.onnx'.format(model_dir), + '{}/spk2info.pt'.format(model_dir), + instruct, + configs['allowed_special']) + self.sample_rate = configs['sample_rate'] + if torch.cuda.is_available() is False and load_jit is True: + load_jit = False + logging.warning('cpu do not support jit, force set to False') + self.model = CosyVoice2Model(configs['llm'], configs['flow'], configs['hift']) + self.model.load('{}/llm.pt'.format(model_dir), + '{}/flow.pt'.format(model_dir), + '{}/hift.pt'.format(model_dir)) + if load_jit: + self.model.load_jit('{}/flow.encoder.fp32.zip'.format(model_dir)) + if load_trt is True and load_onnx is True: + load_onnx = False + logging.warning('can not set both load_trt and load_onnx to True, force set load_onnx to False') + if load_onnx: + self.model.load_onnx('{}/flow.decoder.estimator.fp32.onnx'.format(model_dir)) + if load_trt: + self.model.load_trt('{}/flow.decoder.estimator.fp16.A10.plan'.format(model_dir)) + del configs \ No newline at end of file diff --git a/cosyvoice/cli/frontend.py b/cosyvoice/cli/frontend.py new file mode 100644 index 0000000000000000000000000000000000000000..d312cccb8cfbb92a61e8fdd9b066b6ee1ae15da9 --- /dev/null +++ b/cosyvoice/cli/frontend.py @@ -0,0 +1,213 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +from functools import partial +import json +import onnxruntime +import torch +import numpy as np +import whisper +from typing import Callable +import torchaudio.compliance.kaldi as kaldi +import torchaudio +import os +import re +import inflect +try: + import ttsfrd + use_ttsfrd = True +except ImportError: + print("failed to import ttsfrd, use WeTextProcessing instead") + from tn.chinese.normalizer import Normalizer as ZhNormalizer + from tn.english.normalizer import Normalizer as EnNormalizer + use_ttsfrd = False +from cosyvoice.utils.frontend_utils import contains_chinese, replace_blank, replace_corner_mark, remove_bracket, spell_out_number, split_paragraph + + +class CosyVoiceFrontEnd: + + def __init__(self, + get_tokenizer: Callable, + feat_extractor: Callable, + campplus_model: str, + speech_tokenizer_model: str, + spk2info: str = '', + instruct: bool = False, + allowed_special: str = 'all'): + self.tokenizer = get_tokenizer() + self.feat_extractor = feat_extractor + self.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + option = onnxruntime.SessionOptions() + option.graph_optimization_level = onnxruntime.GraphOptimizationLevel.ORT_ENABLE_ALL + option.intra_op_num_threads = 1 + self.campplus_session = onnxruntime.InferenceSession(campplus_model, sess_options=option, providers=["CPUExecutionProvider"]) + self.speech_tokenizer_session = onnxruntime.InferenceSession(speech_tokenizer_model, sess_options=option, + providers=["CUDAExecutionProvider" if torch.cuda.is_available() else + "CPUExecutionProvider"]) + if os.path.exists(spk2info): + self.spk2info = torch.load(spk2info, map_location=self.device) + else: + self.spk2info = {} + self.instruct = instruct + self.allowed_special = allowed_special + self.inflect_parser = inflect.engine() + self.use_ttsfrd = use_ttsfrd + if self.use_ttsfrd: + self.frd = ttsfrd.TtsFrontendEngine() + ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) + assert self.frd.initialize('{}/../../pretrained_models/CosyVoice-ttsfrd/resource'.format(ROOT_DIR)) is True, \ + 'failed to initialize ttsfrd resource' + self.frd.set_lang_type('pinyinvg') + else: + self.zh_tn_model = ZhNormalizer(remove_erhua=False, full_to_half=False) + self.en_tn_model = EnNormalizer() + + def _extract_text_token(self, text): + text_token = self.tokenizer.encode(text, allowed_special=self.allowed_special) + text_token = torch.tensor([text_token], dtype=torch.int32).to(self.device) + text_token_len = torch.tensor([text_token.shape[1]], dtype=torch.int32).to(self.device) + return text_token, text_token_len + + def _extract_speech_token(self, speech): + assert speech.shape[1] / 16000 <= 30, 'do not support extract speech token for audio longer than 30s' + feat = whisper.log_mel_spectrogram(speech, n_mels=128) + speech_token = self.speech_tokenizer_session.run(None, + {self.speech_tokenizer_session.get_inputs()[0].name: + feat.detach().cpu().numpy(), + self.speech_tokenizer_session.get_inputs()[1].name: + np.array([feat.shape[2]], dtype=np.int32)})[0].flatten().tolist() + speech_token = torch.tensor([speech_token], dtype=torch.int32).to(self.device) + speech_token_len = torch.tensor([speech_token.shape[1]], dtype=torch.int32).to(self.device) + return speech_token, speech_token_len + + def _extract_spk_embedding(self, speech): + feat = kaldi.fbank(speech, + num_mel_bins=80, + dither=0, + sample_frequency=16000) + feat = feat - feat.mean(dim=0, keepdim=True) + embedding = self.campplus_session.run(None, + {self.campplus_session.get_inputs()[0].name: feat.unsqueeze(dim=0).cpu().numpy()})[0].flatten().tolist() + embedding = torch.tensor([embedding]).to(self.device) + return embedding + + def _extract_speech_feat(self, speech): + speech_feat = self.feat_extractor(speech).squeeze(dim=0).transpose(0, 1).to(self.device) + speech_feat = speech_feat.unsqueeze(dim=0) + speech_feat_len = torch.tensor([speech_feat.shape[1]], dtype=torch.int32).to(self.device) + return speech_feat, speech_feat_len + + def text_normalize(self, text, split=True): + text = text.strip() + if contains_chinese(text): + if self.use_ttsfrd: + texts = [i["text"] for i in json.loads(self.frd.do_voicegen_frd(text))["sentences"]] + text = ''.join(texts) + else: + text = self.zh_tn_model.normalize(text) + text = text.replace("\n", "") + text = replace_blank(text) + text = replace_corner_mark(text) + text = text.replace(".", "。") + text = text.replace(" - ", ",") + text = remove_bracket(text) + text = re.sub(r'[,,、]+$', '。', text) + texts = list(split_paragraph(text, partial(self.tokenizer.encode, allowed_special=self.allowed_special), "zh", token_max_n=80, + token_min_n=60, merge_len=20, comma_split=False)) + else: + if self.use_ttsfrd: + texts = [i["text"] for i in json.loads(self.frd.do_voicegen_frd(text))["sentences"]] + text = ''.join(texts) + else: + text = self.en_tn_model.normalize(text) + text = spell_out_number(text, self.inflect_parser) + texts = list(split_paragraph(text, partial(self.tokenizer.encode, allowed_special=self.allowed_special), "en", token_max_n=80, + token_min_n=60, merge_len=20, comma_split=False)) + if split is False: + return text + return texts + + def frontend_sft(self, tts_text, spk_id): + tts_text_token, tts_text_token_len = self._extract_text_token(tts_text) + embedding = self.spk2info[spk_id]['embedding'] + model_input = {'text': tts_text_token, 'text_len': tts_text_token_len, 'llm_embedding': embedding, 'flow_embedding': embedding} + return model_input + + def frontend_zero_shot(self, tts_text, prompt_text, prompt_speech_16k, resample_rate): + tts_text_token, tts_text_token_len = self._extract_text_token(tts_text) + prompt_text_token, prompt_text_token_len = self._extract_text_token(prompt_text) + prompt_speech_resample = torchaudio.transforms.Resample(orig_freq=16000, new_freq=resample_rate)(prompt_speech_16k) + speech_feat, speech_feat_len = self._extract_speech_feat(prompt_speech_resample) + speech_token, speech_token_len = self._extract_speech_token(prompt_speech_16k) + if resample_rate == 24000: + # cosyvoice2, force speech_feat % speech_token = 2 + token_len = min(int(speech_feat.shape[1] / 2), speech_token.shape[1]) + speech_feat, speech_feat_len[:] = speech_feat[:, :2 * token_len], 2* token_len + speech_token, speech_token_len[:] = speech_token[:, :token_len], token_len + embedding = self._extract_spk_embedding(prompt_speech_16k) + model_input = {'text': tts_text_token, 'text_len': tts_text_token_len, + 'prompt_text': prompt_text_token, 'prompt_text_len': prompt_text_token_len, + 'llm_prompt_speech_token': speech_token, 'llm_prompt_speech_token_len': speech_token_len, + 'flow_prompt_speech_token': speech_token, 'flow_prompt_speech_token_len': speech_token_len, + 'prompt_speech_feat': speech_feat, 'prompt_speech_feat_len': speech_feat_len, + 'llm_embedding': embedding, 'flow_embedding': embedding} + return model_input + + def frontend_instruct2(self, tts_text, instruct_text, prompt_speech_16k, resample_rate): + tts_text_token, tts_text_token_len = self._extract_text_token(tts_text) + prompt_text_token, prompt_text_token_len = self._extract_text_token(instruct_text + '<|endofprompt|>') + prompt_speech_resample = torchaudio.transforms.Resample(orig_freq=16000, new_freq=resample_rate)(prompt_speech_16k) + speech_feat, speech_feat_len = self._extract_speech_feat(prompt_speech_resample) + speech_token, speech_token_len = self._extract_speech_token(prompt_speech_16k) + if resample_rate == 24000: + # cosyvoice2, force speech_feat % speech_token = 2 + token_len = min(int(speech_feat.shape[1] / 2), speech_token.shape[1]) + speech_feat, speech_feat_len[:] = speech_feat[:, :2 * token_len], 2* token_len + speech_token, speech_token_len[:] = speech_token[:, :token_len], token_len + embedding = self._extract_spk_embedding(prompt_speech_16k) + model_input = {'text': tts_text_token, 'text_len': tts_text_token_len, + 'prompt_text': prompt_text_token, 'prompt_text_len': prompt_text_token_len, + 'flow_prompt_speech_token': speech_token, 'flow_prompt_speech_token_len': speech_token_len, + 'prompt_speech_feat': speech_feat, 'prompt_speech_feat_len': speech_feat_len, + 'llm_embedding': embedding, 'flow_embedding': embedding} + return model_input + + def frontend_cross_lingual(self, tts_text, prompt_speech_16k, resample_rate): + model_input = self.frontend_zero_shot(tts_text, '', prompt_speech_16k, resample_rate) + # in cross lingual mode, we remove prompt in llm + del model_input['prompt_text'] + del model_input['prompt_text_len'] + del model_input['llm_prompt_speech_token'] + del model_input['llm_prompt_speech_token_len'] + return model_input + + def frontend_instruct(self, tts_text, spk_id, instruct_text): + model_input = self.frontend_sft(tts_text, spk_id) + # in instruct mode, we remove spk_embedding in llm due to information leakage + del model_input['llm_embedding'] + instruct_text_token, instruct_text_token_len = self._extract_text_token(instruct_text + '') + model_input['prompt_text'] = instruct_text_token + model_input['prompt_text_len'] = instruct_text_token_len + return model_input + + def frontend_vc(self, source_speech_16k, prompt_speech_16k, resample_rate): + prompt_speech_token, prompt_speech_token_len = self._extract_speech_token(prompt_speech_16k) + prompt_speech_resample = torchaudio.transforms.Resample(orig_freq=16000, new_freq=resample_rate)(prompt_speech_16k) + prompt_speech_feat, prompt_speech_feat_len = self._extract_speech_feat(prompt_speech_resample) + embedding = self._extract_spk_embedding(prompt_speech_16k) + source_speech_token, source_speech_token_len = self._extract_speech_token(source_speech_16k) + model_input = {'source_speech_token': source_speech_token, 'source_speech_token_len': source_speech_token_len, + 'flow_prompt_speech_token': prompt_speech_token, 'flow_prompt_speech_token_len': prompt_speech_token_len, + 'prompt_speech_feat': prompt_speech_feat, 'prompt_speech_feat_len': prompt_speech_feat_len, + 'flow_embedding': embedding} + return model_input diff --git a/cosyvoice/cli/model.py b/cosyvoice/cli/model.py new file mode 100644 index 0000000000000000000000000000000000000000..a66b463fe85d9ccd86063eeaf3276704e14f6e9a --- /dev/null +++ b/cosyvoice/cli/model.py @@ -0,0 +1,421 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import torch +import numpy as np +import threading +import time +from torch.nn import functional as F +from contextlib import nullcontext +import uuid +from cosyvoice.utils.common import fade_in_out + + +class CosyVoiceModel: + + def __init__(self, + llm: torch.nn.Module, + flow: torch.nn.Module, + hift: torch.nn.Module, + fp16: bool): + self.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + self.llm = llm + self.flow = flow + self.hift = hift + self.fp16 = fp16 + self.token_min_hop_len = 2 * self.flow.input_frame_rate + self.token_max_hop_len = 4 * self.flow.input_frame_rate + self.token_overlap_len = 20 + # mel fade in out + self.mel_overlap_len = int(self.token_overlap_len / self.flow.input_frame_rate * 22050 / 256) + self.mel_window = np.hamming(2 * self.mel_overlap_len) + # hift cache + self.mel_cache_len = 20 + self.source_cache_len = int(self.mel_cache_len * 256) + # speech fade in out + self.speech_window = np.hamming(2 * self.source_cache_len) + # rtf and decoding related + self.stream_scale_factor = 1 + assert self.stream_scale_factor >= 1, 'stream_scale_factor should be greater than 1, change it according to your actual rtf' + self.llm_context = torch.cuda.stream(torch.cuda.Stream(self.device)) if torch.cuda.is_available() else nullcontext() + self.lock = threading.Lock() + # dict used to store session related variable + self.tts_speech_token_dict = {} + self.llm_end_dict = {} + self.mel_overlap_dict = {} + self.flow_cache_dict = {} + self.hift_cache_dict = {} + + def load(self, llm_model, flow_model, hift_model): + self.llm.load_state_dict(torch.load(llm_model, map_location=self.device), strict=True) + self.llm.to(self.device).eval() + if self.fp16 is True: + self.llm.half() + self.flow.load_state_dict(torch.load(flow_model, map_location=self.device), strict=True) + self.flow.to(self.device).eval() + # in case hift_model is a hifigan model + hift_state_dict = {k.replace('generator.', ''): v for k, v in torch.load(hift_model, map_location=self.device).items()} + self.hift.load_state_dict(hift_state_dict, strict=True) + self.hift.to(self.device).eval() + + def load_jit(self, llm_text_encoder_model, llm_llm_model, flow_encoder_model): + assert self.fp16 is True, "we only provide fp16 jit model, set fp16=True if you want to use jit model" + llm_text_encoder = torch.jit.load(llm_text_encoder_model, map_location=self.device) + self.llm.text_encoder = llm_text_encoder + llm_llm = torch.jit.load(llm_llm_model, map_location=self.device) + self.llm.llm = llm_llm + flow_encoder = torch.jit.load(flow_encoder_model, map_location=self.device) + self.flow.encoder = flow_encoder + + def load_onnx(self, flow_decoder_estimator_model): + import onnxruntime + option = onnxruntime.SessionOptions() + option.graph_optimization_level = onnxruntime.GraphOptimizationLevel.ORT_ENABLE_ALL + option.intra_op_num_threads = 1 + providers = ['CUDAExecutionProvider' if torch.cuda.is_available() else 'CPUExecutionProvider'] + del self.flow.decoder.estimator + self.flow.decoder.estimator = onnxruntime.InferenceSession(flow_decoder_estimator_model, sess_options=option, providers=providers) + + def llm_job(self, text, prompt_text, llm_prompt_speech_token, llm_embedding, uuid): + if self.fp16 is True: + llm_embedding = llm_embedding.half() + with self.llm_context: + for i in self.llm.inference(text=text.to(self.device), + text_len=torch.tensor([text.shape[1]], dtype=torch.int32).to(self.device), + prompt_text=prompt_text.to(self.device), + prompt_text_len=torch.tensor([prompt_text.shape[1]], dtype=torch.int32).to(self.device), + prompt_speech_token=llm_prompt_speech_token.to(self.device), + prompt_speech_token_len=torch.tensor([llm_prompt_speech_token.shape[1]], dtype=torch.int32).to(self.device), + embedding=llm_embedding.to(self.device)): + self.tts_speech_token_dict[uuid].append(i) + self.llm_end_dict[uuid] = True + + def token2wav(self, token, prompt_token, prompt_feat, embedding, uuid, finalize=False, speed=1.0): + tts_mel, flow_cache = self.flow.inference(token=token.to(self.device), + token_len=torch.tensor([token.shape[1]], dtype=torch.int32).to(self.device), + prompt_token=prompt_token.to(self.device), + prompt_token_len=torch.tensor([prompt_token.shape[1]], dtype=torch.int32).to(self.device), + prompt_feat=prompt_feat.to(self.device), + prompt_feat_len=torch.tensor([prompt_feat.shape[1]], dtype=torch.int32).to(self.device), + embedding=embedding.to(self.device), + flow_cache=self.flow_cache_dict[uuid]) + self.flow_cache_dict[uuid] = flow_cache + + # mel overlap fade in out + if self.mel_overlap_dict[uuid].shape[2] != 0: + tts_mel = fade_in_out(tts_mel, self.mel_overlap_dict[uuid], self.mel_window) + # append hift cache + if self.hift_cache_dict[uuid] is not None: + hift_cache_mel, hift_cache_source = self.hift_cache_dict[uuid]['mel'], self.hift_cache_dict[uuid]['source'] + tts_mel = torch.concat([hift_cache_mel, tts_mel], dim=2) + else: + hift_cache_source = torch.zeros(1, 1, 0) + # keep overlap mel and hift cache + if finalize is False: + self.mel_overlap_dict[uuid] = tts_mel[:, :, -self.mel_overlap_len:] + tts_mel = tts_mel[:, :, :-self.mel_overlap_len] + tts_speech, tts_source = self.hift.inference(speech_feat=tts_mel, cache_source=hift_cache_source) + if self.hift_cache_dict[uuid] is not None: + tts_speech = fade_in_out(tts_speech, self.hift_cache_dict[uuid]['speech'], self.speech_window) + self.hift_cache_dict[uuid] = {'mel': tts_mel[:, :, -self.mel_cache_len:], + 'source': tts_source[:, :, -self.source_cache_len:], + 'speech': tts_speech[:, -self.source_cache_len:]} + tts_speech = tts_speech[:, :-self.source_cache_len] + else: + if speed != 1.0: + assert self.hift_cache_dict[uuid] is None, 'speed change only support non-stream inference mode' + tts_mel = F.interpolate(tts_mel, size=int(tts_mel.shape[2] / speed), mode='linear') + tts_speech, tts_source = self.hift.inference(speech_feat=tts_mel, cache_source=hift_cache_source) + if self.hift_cache_dict[uuid] is not None: + tts_speech = fade_in_out(tts_speech, self.hift_cache_dict[uuid]['speech'], self.speech_window) + return tts_speech + + def tts(self, text, flow_embedding, llm_embedding=torch.zeros(0, 192), + prompt_text=torch.zeros(1, 0, dtype=torch.int32), + llm_prompt_speech_token=torch.zeros(1, 0, dtype=torch.int32), + flow_prompt_speech_token=torch.zeros(1, 0, dtype=torch.int32), + prompt_speech_feat=torch.zeros(1, 0, 80), stream=False, speed=1.0, **kwargs): + # this_uuid is used to track variables related to this inference thread + this_uuid = str(uuid.uuid1()) + with self.lock: + self.tts_speech_token_dict[this_uuid], self.llm_end_dict[this_uuid] = [], False + self.hift_cache_dict[this_uuid] = None + self.mel_overlap_dict[this_uuid] = torch.zeros(1, 80, 0) + self.flow_cache_dict[this_uuid] = torch.zeros(1, 80, 0, 2) + p = threading.Thread(target=self.llm_job, args=(text, prompt_text, llm_prompt_speech_token, llm_embedding, this_uuid)) + p.start() + if stream is True: + token_hop_len = self.token_min_hop_len + while True: + time.sleep(0.1) + if len(self.tts_speech_token_dict[this_uuid]) >= token_hop_len + self.token_overlap_len: + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid][:token_hop_len + self.token_overlap_len]) \ + .unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + finalize=False) + yield {'tts_speech': this_tts_speech.cpu()} + with self.lock: + self.tts_speech_token_dict[this_uuid] = self.tts_speech_token_dict[this_uuid][token_hop_len:] + # increase token_hop_len for better speech quality + token_hop_len = min(self.token_max_hop_len, int(token_hop_len * self.stream_scale_factor)) + if self.llm_end_dict[this_uuid] is True and len(self.tts_speech_token_dict[this_uuid]) < token_hop_len + self.token_overlap_len: + break + p.join() + # deal with remain tokens, make sure inference remain token len equals token_hop_len when cache_speech is not None + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid]).unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + finalize=True) + yield {'tts_speech': this_tts_speech.cpu()} + else: + # deal with all tokens + p.join() + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid]).unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + finalize=True, + speed=speed) + yield {'tts_speech': this_tts_speech.cpu()} + with self.lock: + self.tts_speech_token_dict.pop(this_uuid) + self.llm_end_dict.pop(this_uuid) + self.mel_overlap_dict.pop(this_uuid) + self.hift_cache_dict.pop(this_uuid) + + def vc(self, source_speech_token, flow_prompt_speech_token, prompt_speech_feat, flow_embedding, stream=False, speed=1.0, **kwargs): + # this_uuid is used to track variables related to this inference thread + this_uuid = str(uuid.uuid1()) + with self.lock: + self.tts_speech_token_dict[this_uuid], self.llm_end_dict[this_uuid] = source_speech_token.flatten().tolist(), True + self.hift_cache_dict[this_uuid] = None + self.mel_overlap_dict[this_uuid] = torch.zeros(1, 80, 0) + self.flow_cache_dict[this_uuid] = torch.zeros(1, 80, 0, 2) + if stream is True: + token_hop_len = self.token_min_hop_len + while True: + if len(self.tts_speech_token_dict[this_uuid]) >= token_hop_len + self.token_overlap_len: + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid][:token_hop_len + self.token_overlap_len]) \ + .unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + finalize=False) + yield {'tts_speech': this_tts_speech.cpu()} + with self.lock: + self.tts_speech_token_dict[this_uuid] = self.tts_speech_token_dict[this_uuid][token_hop_len:] + # increase token_hop_len for better speech quality + token_hop_len = min(self.token_max_hop_len, int(token_hop_len * self.stream_scale_factor)) + if self.llm_end_dict[this_uuid] is True and len(self.tts_speech_token_dict[this_uuid]) < token_hop_len + self.token_overlap_len: + break + # deal with remain tokens, make sure inference remain token len equals token_hop_len when cache_speech is not None + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid], dim=1).unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + finalize=True) + yield {'tts_speech': this_tts_speech.cpu()} + else: + # deal with all tokens + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid]).unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + finalize=True, + speed=speed) + yield {'tts_speech': this_tts_speech.cpu()} + with self.lock: + self.tts_speech_token_dict.pop(this_uuid) + self.llm_end_dict.pop(this_uuid) + self.mel_overlap_dict.pop(this_uuid) + self.hift_cache_dict.pop(this_uuid) + + +class CosyVoice2Model: + + def __init__(self, + llm: torch.nn.Module, + flow: torch.nn.Module, + hift: torch.nn.Module): + self.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + self.llm = llm + self.flow = flow + self.hift = hift + self.token_hop_len = 2 * self.flow.input_frame_rate + # here we fix flow encoder/decoder decoding_chunk_size, in the future we will send it as arguments, or use cache + self.flow.encoder.static_chunk_size = 2 * self.flow.input_frame_rate + self.flow.decoder.estimator.static_chunk_size = 2 * self.flow.input_frame_rate * self.flow.token_mel_ratio + # hift cache + self.mel_cache_len = 8 + self.source_cache_len = int(self.mel_cache_len * 480) + # speech fade in out + self.speech_window = np.hamming(2 * self.source_cache_len) + # rtf and decoding related + self.stream_scale_factor = 1 + self.llm_context = torch.cuda.stream(torch.cuda.Stream(self.device)) if torch.cuda.is_available() else nullcontext() + self.lock = threading.Lock() + # dict used to store session related variable + self.tts_speech_token_dict = {} + self.llm_end_dict = {} + self.hift_cache_dict = {} + + def load(self, llm_model, flow_model, hift_model): + self.llm.load_state_dict(torch.load(llm_model, map_location=self.device), strict=True) + self.llm.to(self.device).eval() + self.flow.load_state_dict(torch.load(flow_model, map_location=self.device), strict=True) + self.flow.to(self.device).eval() + self.flow.decoder.fp16 = False + # in case hift_model is a hifigan model + hift_state_dict = {k.replace('generator.', ''): v for k, v in torch.load(hift_model, map_location=self.device).items()} + self.hift.load_state_dict(hift_state_dict, strict=True) + self.hift.to(self.device).eval() + + def load_jit(self, flow_encoder_model): + flow_encoder = torch.jit.load(flow_encoder_model, map_location=self.device) + self.flow.encoder = flow_encoder + + def load_onnx(self, flow_decoder_estimator_model): + import onnxruntime + option = onnxruntime.SessionOptions() + option.graph_optimization_level = onnxruntime.GraphOptimizationLevel.ORT_ENABLE_ALL + option.intra_op_num_threads = 1 + providers = ['CUDAExecutionProvider' if torch.cuda.is_available() else 'CPUExecutionProvider'] + del self.flow.decoder.estimator + self.flow.decoder.estimator = onnxruntime.InferenceSession(flow_decoder_estimator_model, sess_options=option, providers=providers) + + def load_trt(self, flow_decoder_estimator_model): + del self.flow.decoder.estimator + import tensorrt as trt + with open(flow_decoder_estimator_model, 'rb') as f: + self.flow.decoder.estimator_engine = trt.Runtime(trt.Logger(trt.Logger.INFO)).deserialize_cuda_engine(f.read()) + self.flow.decoder.estimator = self.flow.decoder.estimator_engine.create_execution_context() + self.flow.decoder.fp16 = True + + def llm_job(self, text, prompt_text, llm_prompt_speech_token, llm_embedding, uuid): + with self.llm_context: + for i in self.llm.inference(text=text.to(self.device), + text_len=torch.tensor([text.shape[1]], dtype=torch.int32).to(self.device), + prompt_text=prompt_text.to(self.device), + prompt_text_len=torch.tensor([prompt_text.shape[1]], dtype=torch.int32).to(self.device), + prompt_speech_token=llm_prompt_speech_token.to(self.device), + prompt_speech_token_len=torch.tensor([llm_prompt_speech_token.shape[1]], dtype=torch.int32).to(self.device), + embedding=llm_embedding.to(self.device)): + self.tts_speech_token_dict[uuid].append(i) + self.llm_end_dict[uuid] = True + + def token2wav(self, token, prompt_token, prompt_feat, embedding, uuid, token_offset, finalize=False, speed=1.0): + tts_mel, _ = self.flow.inference(token=token.to(self.device), + token_len=torch.tensor([token.shape[1]], dtype=torch.int32).to(self.device), + prompt_token=prompt_token.to(self.device), + prompt_token_len=torch.tensor([prompt_token.shape[1]], dtype=torch.int32).to(self.device), + prompt_feat=prompt_feat.to(self.device), + prompt_feat_len=torch.tensor([prompt_feat.shape[1]], dtype=torch.int32).to(self.device), + embedding=embedding.to(self.device), + finalize=finalize) + tts_mel = tts_mel[:, :, token_offset * self.flow.token_mel_ratio:] + # append hift cache + if self.hift_cache_dict[uuid] is not None: + hift_cache_mel, hift_cache_source = self.hift_cache_dict[uuid]['mel'], self.hift_cache_dict[uuid]['source'] + tts_mel = torch.concat([hift_cache_mel, tts_mel], dim=2) + else: + hift_cache_source = torch.zeros(1, 1, 0) + # keep overlap mel and hift cache + if finalize is False: + tts_speech, tts_source = self.hift.inference(speech_feat=tts_mel, cache_source=hift_cache_source) + if self.hift_cache_dict[uuid] is not None: + tts_speech = fade_in_out(tts_speech, self.hift_cache_dict[uuid]['speech'], self.speech_window) + self.hift_cache_dict[uuid] = {'mel': tts_mel[:, :, -self.mel_cache_len:], + 'source': tts_source[:, :, -self.source_cache_len:], + 'speech': tts_speech[:, -self.source_cache_len:]} + tts_speech = tts_speech[:, :-self.source_cache_len] + else: + if speed != 1.0: + assert self.hift_cache_dict[uuid] is None, 'speed change only support non-stream inference mode' + tts_mel = F.interpolate(tts_mel, size=int(tts_mel.shape[2] / speed), mode='linear') + tts_speech, tts_source = self.hift.inference(speech_feat=tts_mel, cache_source=hift_cache_source) + if self.hift_cache_dict[uuid] is not None: + tts_speech = fade_in_out(tts_speech, self.hift_cache_dict[uuid]['speech'], self.speech_window) + return tts_speech + + def tts(self, text, flow_embedding, llm_embedding=torch.zeros(0, 192), + prompt_text=torch.zeros(1, 0, dtype=torch.int32), + llm_prompt_speech_token=torch.zeros(1, 0, dtype=torch.int32), + flow_prompt_speech_token=torch.zeros(1, 0, dtype=torch.int32), + prompt_speech_feat=torch.zeros(1, 0, 80), stream=False, speed=1.0, **kwargs): + # this_uuid is used to track variables related to this inference thread + this_uuid = str(uuid.uuid1()) + with self.lock: + self.tts_speech_token_dict[this_uuid], self.llm_end_dict[this_uuid] = [], False + self.hift_cache_dict[this_uuid] = None + p = threading.Thread(target=self.llm_job, args=(text, prompt_text, llm_prompt_speech_token, llm_embedding, this_uuid)) + p.start() + if stream is True: + token_offset = 0 + while True: + time.sleep(0.1) + if len(self.tts_speech_token_dict[this_uuid]) - token_offset >= self.token_hop_len + self.flow.pre_lookahead_len: + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid][:token_offset + self.token_hop_len + self.flow.pre_lookahead_len]) \ + .unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + token_offset=token_offset, + finalize=False) + token_offset += self.token_hop_len + yield {'tts_speech': this_tts_speech.cpu()} + if self.llm_end_dict[this_uuid] is True and len(self.tts_speech_token_dict[this_uuid]) - token_offset < self.token_hop_len + self.flow.pre_lookahead_len: + break + p.join() + # deal with remain tokens, make sure inference remain token len equals token_hop_len when cache_speech is not None + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid]).unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + token_offset=token_offset, + finalize=True) + yield {'tts_speech': this_tts_speech.cpu()} + else: + # deal with all tokens + p.join() + this_tts_speech_token = torch.tensor(self.tts_speech_token_dict[this_uuid]).unsqueeze(dim=0) + this_tts_speech = self.token2wav(token=this_tts_speech_token, + prompt_token=flow_prompt_speech_token, + prompt_feat=prompt_speech_feat, + embedding=flow_embedding, + uuid=this_uuid, + token_offset=0, + finalize=True, + speed=speed) + yield {'tts_speech': this_tts_speech.cpu()} + with self.lock: + self.tts_speech_token_dict.pop(this_uuid) + self.llm_end_dict.pop(this_uuid) \ No newline at end of file diff --git a/cosyvoice/dataset/__init__.py b/cosyvoice/dataset/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/cosyvoice/dataset/dataset.py b/cosyvoice/dataset/dataset.py new file mode 100644 index 0000000000000000000000000000000000000000..4a5913937fe25c0101efadc79de5c8e1c04003f9 --- /dev/null +++ b/cosyvoice/dataset/dataset.py @@ -0,0 +1,164 @@ +# Copyright (c) 2021 Mobvoi Inc. (authors: Binbin Zhang) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import random +import json +import math +from functools import partial + +import torch +import torch.distributed as dist +from torch.utils.data import IterableDataset +from cosyvoice.utils.file_utils import read_lists, read_json_lists + + +class Processor(IterableDataset): + + def __init__(self, source, f, *args, **kw): + assert callable(f) + self.source = source + self.f = f + self.args = args + self.kw = kw + + def set_epoch(self, epoch): + self.source.set_epoch(epoch) + + def __iter__(self): + """ Return an iterator over the source dataset processed by the + given processor. + """ + assert self.source is not None + assert callable(self.f) + return self.f(iter(self.source), *self.args, **self.kw) + + def apply(self, f): + assert callable(f) + return Processor(self, f, *self.args, **self.kw) + + +class DistributedSampler: + + def __init__(self, shuffle=True, partition=True): + self.epoch = -1 + self.update() + self.shuffle = shuffle + self.partition = partition + + def update(self): + assert dist.is_available() + if dist.is_initialized(): + self.rank = dist.get_rank() + self.world_size = dist.get_world_size() + else: + self.rank = 0 + self.world_size = 1 + worker_info = torch.utils.data.get_worker_info() + if worker_info is None: + self.worker_id = 0 + self.num_workers = 1 + else: + self.worker_id = worker_info.id + self.num_workers = worker_info.num_workers + return dict(rank=self.rank, + world_size=self.world_size, + worker_id=self.worker_id, + num_workers=self.num_workers) + + def set_epoch(self, epoch): + self.epoch = epoch + + def sample(self, data): + """ Sample data according to rank/world_size/num_workers + + Args: + data(List): input data list + + Returns: + List: data list after sample + """ + data = list(range(len(data))) + # force datalist even + if self.partition: + if self.shuffle: + random.Random(self.epoch).shuffle(data) + if len(data) < self.world_size: + data = data * math.ceil(self.world_size / len(data)) + data = data[:self.world_size] + data = data[self.rank::self.world_size] + if len(data) < self.num_workers: + data = data * math.ceil(self.num_workers / len(data)) + data = data[:self.num_workers] + data = data[self.worker_id::self.num_workers] + return data + + +class DataList(IterableDataset): + + def __init__(self, lists, shuffle=True, partition=True): + self.lists = lists + self.sampler = DistributedSampler(shuffle, partition) + + def set_epoch(self, epoch): + self.sampler.set_epoch(epoch) + + def __iter__(self): + sampler_info = self.sampler.update() + indexes = self.sampler.sample(self.lists) + for index in indexes: + data = dict(src=self.lists[index]) + data.update(sampler_info) + yield data + + +def Dataset(data_list_file, + data_pipeline, + mode='train', + gan=False, + shuffle=True, + partition=True, + tts_file='', + prompt_utt2data=''): + """ Construct dataset from arguments + + We have two shuffle stage in the Dataset. The first is global + shuffle at shards tar/raw file level. The second is global shuffle + at training samples level. + + Args: + data_type(str): raw/shard + tokenizer (BaseTokenizer): tokenizer to tokenize + partition(bool): whether to do data partition in terms of rank + """ + assert mode in ['train', 'inference'] + lists = read_lists(data_list_file) + if mode == 'inference': + with open(tts_file) as f: + tts_data = json.load(f) + utt2lists = read_json_lists(prompt_utt2data) + # filter unnecessary file in inference mode + lists = list({utt2lists[utt] for utt in tts_data.keys() if utt2lists[utt] in lists}) + dataset = DataList(lists, + shuffle=shuffle, + partition=partition) + if mode == 'inference': + # map partial arg to parquet_opener func in inference mode + data_pipeline[0] = partial(data_pipeline[0], tts_data=tts_data) + if gan is True: + # map partial arg to padding func in gan mode + data_pipeline[-1] = partial(data_pipeline[-1], gan=gan) + for func in data_pipeline: + dataset = Processor(dataset, func, mode=mode) + return dataset diff --git a/cosyvoice/dataset/processor.py b/cosyvoice/dataset/processor.py new file mode 100644 index 0000000000000000000000000000000000000000..e0d3979f4f02f6e4d7073aee49ff1af6d31f8e16 --- /dev/null +++ b/cosyvoice/dataset/processor.py @@ -0,0 +1,431 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import logging +import random + +import pyarrow.parquet as pq +from io import BytesIO +import torch +import torchaudio +from torch.nn.utils.rnn import pad_sequence +import torch.nn.functional as F + +torchaudio.set_audio_backend('soundfile') + +AUDIO_FORMAT_SETS = {'flac', 'mp3', 'm4a', 'ogg', 'opus', 'wav', 'wma'} + + +def parquet_opener(data, mode='train', tts_data={}): + """ Give url or local file, return file descriptor + Inplace operation. + + Args: + data(Iterable[str]): url or local file list + + Returns: + Iterable[{src, stream}] + """ + for sample in data: + assert 'src' in sample + url = sample['src'] + try: + for df in pq.ParquetFile(url).iter_batches(batch_size=64): + df = df.to_pandas() + for i in range(len(df)): + if mode == 'inference' and df.loc[i, 'utt'] not in tts_data: + continue + sample.update(dict(df.loc[i])) + if mode == 'train': + # NOTE do not return sample directly, must initialize a new dict + yield {**sample} + else: + for index, text in enumerate(tts_data[df.loc[i, 'utt']]): + yield {**sample, 'tts_index': index, 'tts_text': text} + except Exception as ex: + logging.warning('Failed to open {}, ex info {}'.format(url, ex)) + + +def filter(data, + max_length=10240, + min_length=10, + token_max_length=200, + token_min_length=1, + min_output_input_ratio=0.0005, + max_output_input_ratio=1, + mode='train'): + """ Filter sample according to feature and label length + Inplace operation. + + Args:: + data: Iterable[{key, wav, label, sample_rate}] + max_length: drop utterance which is greater than max_length(10ms) + min_length: drop utterance which is less than min_length(10ms) + token_max_length: drop utterance which is greater than + token_max_length, especially when use char unit for + english modeling + token_min_length: drop utterance which is + less than token_max_length + min_output_input_ratio: minimal ration of + token_length / feats_length(10ms) + max_output_input_ratio: maximum ration of + token_length / feats_length(10ms) + + Returns: + Iterable[{key, wav, label, sample_rate}] + """ + for sample in data: + sample['speech'], sample['sample_rate'] = torchaudio.load(BytesIO(sample['audio_data'])) + sample['speech'] = sample['speech'].mean(dim=0, keepdim=True) + del sample['audio_data'] + # sample['wav'] is torch.Tensor, we have 100 frames every second + num_frames = sample['speech'].size(1) / sample['sample_rate'] * 100 + if num_frames < min_length: + continue + if num_frames > max_length: + continue + if len(sample['text_token']) < token_min_length: + continue + if len(sample['text_token']) > token_max_length: + continue + if len(sample['speech_token']) == 0: + continue + if num_frames != 0: + if len(sample['text_token']) / num_frames < min_output_input_ratio: + continue + if len(sample['text_token']) / num_frames > max_output_input_ratio: + continue + yield sample + + +def resample(data, resample_rate=22050, min_sample_rate=16000, mode='train'): + """ Resample data. + Inplace operation. + + Args: + data: Iterable[{key, wav, label, sample_rate}] + resample_rate: target resample rate + + Returns: + Iterable[{key, wav, label, sample_rate}] + """ + for sample in data: + assert 'sample_rate' in sample + assert 'speech' in sample + sample_rate = sample['sample_rate'] + waveform = sample['speech'] + if sample_rate != resample_rate: + if sample_rate < min_sample_rate: + continue + sample['sample_rate'] = resample_rate + sample['speech'] = torchaudio.transforms.Resample( + orig_freq=sample_rate, new_freq=resample_rate)(waveform) + max_val = sample['speech'].abs().max() + if max_val > 1: + sample['speech'] /= max_val + yield sample + + +def truncate(data, truncate_length=24576, mode='train'): + """ Truncate data. + + Args: + data: Iterable[{key, wav, label, sample_rate}] + truncate_length: truncate length + + Returns: + Iterable[{key, wav, label, sample_rate}] + """ + for sample in data: + waveform = sample['speech'] + if waveform.shape[1] > truncate_length: + start = random.randint(0, waveform.shape[1] - truncate_length) + waveform = waveform[:, start: start + truncate_length] + else: + waveform = torch.concat([waveform, torch.zeros(1, truncate_length - waveform.shape[1])], dim=1) + sample['speech'] = waveform + yield sample + + +def compute_fbank(data, + feat_extractor, + mode='train'): + """ Extract fbank + + Args: + data: Iterable[{key, wav, label, sample_rate}] + + Returns: + Iterable[{key, feat, label}] + """ + for sample in data: + assert 'sample_rate' in sample + assert 'speech' in sample + assert 'utt' in sample + assert 'text_token' in sample + waveform = sample['speech'] + mat = feat_extractor(waveform).squeeze(dim=0).transpose(0, 1) + sample['speech_feat'] = mat + yield sample + + +def compute_f0(data, pitch_extractor, mode='train'): + """ Extract f0 + + Args: + data: Iterable[{key, wav, label, sample_rate}] + + Returns: + Iterable[{key, feat, label}] + """ + for sample in data: + assert 'sample_rate' in sample + assert 'speech' in sample + assert 'utt' in sample + assert 'text_token' in sample + waveform = sample['speech'] + mat = pitch_extractor(waveform).transpose(1, 2) + mat = F.interpolate(mat, size=sample['speech_feat'].shape[0], mode='linear') + sample['pitch_feat'] = mat[0, 0] + yield sample + + +def parse_embedding(data, normalize, mode='train'): + """ Parse utt_embedding/spk_embedding + + Args: + data: Iterable[{key, wav, label, sample_rate}] + + Returns: + Iterable[{key, feat, label}] + """ + for sample in data: + sample['utt_embedding'] = torch.tensor(sample['utt_embedding'], dtype=torch.float32) + sample['spk_embedding'] = torch.tensor(sample['spk_embedding'], dtype=torch.float32) + if normalize: + sample['utt_embedding'] = F.normalize(sample['utt_embedding'], dim=0) + sample['spk_embedding'] = F.normalize(sample['spk_embedding'], dim=0) + yield sample + + +def tokenize(data, get_tokenizer, allowed_special, mode='train'): + """ Decode text to chars or BPE + Inplace operation + + Args: + data: Iterable[{key, wav, txt, sample_rate}] + + Returns: + Iterable[{key, wav, txt, tokens, label, sample_rate}] + """ + tokenizer = get_tokenizer() + for sample in data: + assert 'text' in sample + sample['text_token'] = tokenizer.encode(sample['text'], allowed_special=allowed_special) + if mode == 'inference': + sample['tts_text_token'] = tokenizer.encode(sample['tts_text'], allowed_special=allowed_special) + yield sample + + +def shuffle(data, shuffle_size=10000, mode='train'): + """ Local shuffle the data + + Args: + data: Iterable[{key, feat, label}] + shuffle_size: buffer size for shuffle + + Returns: + Iterable[{key, feat, label}] + """ + buf = [] + for sample in data: + buf.append(sample) + if len(buf) >= shuffle_size: + random.shuffle(buf) + for x in buf: + yield x + buf = [] + # The sample left over + random.shuffle(buf) + for x in buf: + yield x + + +def sort(data, sort_size=500, mode='train'): + """ Sort the data by feature length. + Sort is used after shuffle and before batch, so we can group + utts with similar lengths into a batch, and `sort_size` should + be less than `shuffle_size` + + Args: + data: Iterable[{key, feat, label}] + sort_size: buffer size for sort + + Returns: + Iterable[{key, feat, label}] + """ + + buf = [] + for sample in data: + buf.append(sample) + if len(buf) >= sort_size: + buf.sort(key=lambda x: x['speech_feat'].size(0)) + for x in buf: + yield x + buf = [] + # The sample left over + buf.sort(key=lambda x: x['speech_feat'].size(0)) + for x in buf: + yield x + + +def static_batch(data, batch_size=16): + """ Static batch the data by `batch_size` + + Args: + data: Iterable[{key, feat, label}] + batch_size: batch size + + Returns: + Iterable[List[{key, feat, label}]] + """ + buf = [] + for sample in data: + buf.append(sample) + if len(buf) >= batch_size: + yield buf + buf = [] + if len(buf) > 0: + yield buf + + +def dynamic_batch(data, max_frames_in_batch=12000, mode='train'): + """ Dynamic batch the data until the total frames in batch + reach `max_frames_in_batch` + + Args: + data: Iterable[{key, feat, label}] + max_frames_in_batch: max_frames in one batch + + Returns: + Iterable[List[{key, feat, label}]] + """ + buf = [] + longest_frames = 0 + for sample in data: + assert 'speech_feat' in sample + assert isinstance(sample['speech_feat'], torch.Tensor) + new_sample_frames = sample['speech_feat'].size(0) + longest_frames = max(longest_frames, new_sample_frames) + frames_after_padding = longest_frames * (len(buf) + 1) + if frames_after_padding > max_frames_in_batch: + yield buf + buf = [sample] + longest_frames = new_sample_frames + else: + buf.append(sample) + if len(buf) > 0: + yield buf + + +def batch(data, batch_type='static', batch_size=16, max_frames_in_batch=12000, mode='train'): + """ Wrapper for static/dynamic batch + """ + if mode == 'inference': + return static_batch(data, 1) + else: + if batch_type == 'static': + return static_batch(data, batch_size) + elif batch_type == 'dynamic': + return dynamic_batch(data, max_frames_in_batch) + else: + logging.fatal('Unsupported batch type {}'.format(batch_type)) + + +def padding(data, use_spk_embedding, mode='train', gan=False): + """ Padding the data into training data + + Args: + data: Iterable[List[{key, feat, label}]] + + Returns: + Iterable[Tuple(keys, feats, labels, feats lengths, label lengths)] + """ + for sample in data: + assert isinstance(sample, list) + speech_feat_len = torch.tensor([x['speech_feat'].size(1) for x in sample], + dtype=torch.int32) + order = torch.argsort(speech_feat_len, descending=True) + + utts = [sample[i]['utt'] for i in order] + speech = [sample[i]['speech'].squeeze(dim=0) for i in order] + speech_len = torch.tensor([i.size(0) for i in speech], dtype=torch.int32) + speech = pad_sequence(speech, batch_first=True, padding_value=0) + speech_token = [torch.tensor(sample[i]['speech_token']) for i in order] + speech_token_len = torch.tensor([i.size(0) for i in speech_token], dtype=torch.int32) + speech_token = pad_sequence(speech_token, + batch_first=True, + padding_value=0) + speech_feat = [sample[i]['speech_feat'] for i in order] + speech_feat_len = torch.tensor([i.size(0) for i in speech_feat], dtype=torch.int32) + speech_feat = pad_sequence(speech_feat, + batch_first=True, + padding_value=0) + text = [sample[i]['text'] for i in order] + text_token = [torch.tensor(sample[i]['text_token']) for i in order] + text_token_len = torch.tensor([i.size(0) for i in text_token], dtype=torch.int32) + text_token = pad_sequence(text_token, batch_first=True, padding_value=0) + utt_embedding = torch.stack([sample[i]['utt_embedding'] for i in order], dim=0) + spk_embedding = torch.stack([sample[i]['spk_embedding'] for i in order], dim=0) + batch = { + "utts": utts, + "speech": speech, + "speech_len": speech_len, + "speech_token": speech_token, + "speech_token_len": speech_token_len, + "speech_feat": speech_feat, + "speech_feat_len": speech_feat_len, + "text": text, + "text_token": text_token, + "text_token_len": text_token_len, + "utt_embedding": utt_embedding, + "spk_embedding": spk_embedding, + } + if gan is True: + # in gan train, we need pitch_feat + pitch_feat = [sample[i]['pitch_feat'] for i in order] + pitch_feat_len = torch.tensor([i.size(0) for i in pitch_feat], dtype=torch.int32) + pitch_feat = pad_sequence(pitch_feat, + batch_first=True, + padding_value=0) + batch["pitch_feat"] = pitch_feat + batch["pitch_feat_len"] = pitch_feat_len + else: + # only gan train needs speech, delete it to save memory + del batch["speech"] + del batch["speech_len"] + if mode == 'inference': + tts_text = [sample[i]['tts_text'] for i in order] + tts_index = [sample[i]['tts_index'] for i in order] + tts_text_token = [torch.tensor(sample[i]['tts_text_token']) for i in order] + tts_text_token_len = torch.tensor([i.size(0) for i in tts_text_token], dtype=torch.int32) + tts_text_token = pad_sequence(tts_text_token, batch_first=True, padding_value=-1) + batch.update({'tts_text': tts_text, + 'tts_index': tts_index, + 'tts_text_token': tts_text_token, + 'tts_text_token_len': tts_text_token_len}) + if use_spk_embedding is True: + batch["embedding"] = batch["spk_embedding"] + else: + batch["embedding"] = batch["utt_embedding"] + yield batch diff --git a/cosyvoice/flow/decoder.py b/cosyvoice/flow/decoder.py new file mode 100644 index 0000000000000000000000000000000000000000..dfb3c073bf04f686ecf3752a2182e1cd0c15c03c --- /dev/null +++ b/cosyvoice/flow/decoder.py @@ -0,0 +1,299 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Zhihao Du) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import torch +import torch.nn as nn +import torch.nn.functional as F +from einops import pack, rearrange, repeat +from cosyvoice.utils.common import mask_to_bias +from cosyvoice.utils.mask import add_optional_chunk_mask +from matcha.models.components.decoder import SinusoidalPosEmb, Block1D, ResnetBlock1D, Downsample1D, TimestepEmbedding, Upsample1D +from matcha.models.components.transformer import BasicTransformerBlock + + +class Transpose(torch.nn.Module): + def __init__(self, dim0: int, dim1: int): + super().__init__() + self.dim0 = dim0 + self.dim1 = dim1 + + def forward(self, x: torch.Tensor): + x = torch.transpose(x, self.dim0, self.dim1) + return x + + +class CausalBlock1D(Block1D): + def __init__(self, dim: int, dim_out: int): + super(CausalBlock1D, self).__init__(dim, dim_out) + self.block = torch.nn.Sequential( + CausalConv1d(dim, dim_out, 3), + Transpose(1, 2), + nn.LayerNorm(dim_out), + Transpose(1, 2), + nn.Mish(), + ) + + def forward(self, x: torch.Tensor, mask: torch.Tensor): + output = self.block(x * mask) + return output * mask + + +class CausalResnetBlock1D(ResnetBlock1D): + def __init__(self, dim: int, dim_out: int, time_emb_dim: int, groups: int=8): + super(CausalResnetBlock1D, self).__init__(dim, dim_out, time_emb_dim, groups) + self.block1 = CausalBlock1D(dim, dim_out) + self.block2 = CausalBlock1D(dim_out, dim_out) + + +class CausalConv1d(torch.nn.Conv1d): + def __init__( + self, + in_channels: int, + out_channels: int, + kernel_size: int, + stride: int = 1, + dilation: int = 1, + groups: int = 1, + bias: bool = True, + padding_mode: str = 'zeros', + device=None, + dtype=None + ) -> None: + super(CausalConv1d, self).__init__(in_channels, out_channels, + kernel_size, stride, + padding=0, dilation=dilation, + groups=groups, bias=bias, + padding_mode=padding_mode, + device=device, dtype=dtype + ) + assert stride == 1 + self.causal_padding = (kernel_size - 1, 0) + + def forward(self, x: torch.Tensor): + x = F.pad(x, self.causal_padding) + x = super(CausalConv1d, self).forward(x) + return x + + +class ConditionalDecoder(nn.Module): + def __init__( + self, + in_channels, + out_channels, + causal=False, + channels=(256, 256), + dropout=0.05, + attention_head_dim=64, + n_blocks=1, + num_mid_blocks=2, + num_heads=4, + act_fn="snake", + ): + """ + This decoder requires an input with the same shape of the target. So, if your text content + is shorter or longer than the outputs, please re-sampling it before feeding to the decoder. + """ + super().__init__() + channels = tuple(channels) + self.in_channels = in_channels + self.out_channels = out_channels + self.causal = causal + self.time_embeddings = SinusoidalPosEmb(in_channels) + time_embed_dim = channels[0] * 4 + self.time_mlp = TimestepEmbedding( + in_channels=in_channels, + time_embed_dim=time_embed_dim, + act_fn="silu", + ) + self.down_blocks = nn.ModuleList([]) + self.mid_blocks = nn.ModuleList([]) + self.up_blocks = nn.ModuleList([]) + + output_channel = in_channels + for i in range(len(channels)): # pylint: disable=consider-using-enumerate + input_channel = output_channel + output_channel = channels[i] + is_last = i == len(channels) - 1 + resnet = CausalResnetBlock1D(dim=input_channel, dim_out=output_channel, time_emb_dim=time_embed_dim) if self.causal else ResnetBlock1D(dim=input_channel, dim_out=output_channel, time_emb_dim=time_embed_dim) + transformer_blocks = nn.ModuleList( + [ + BasicTransformerBlock( + dim=output_channel, + num_attention_heads=num_heads, + attention_head_dim=attention_head_dim, + dropout=dropout, + activation_fn=act_fn, + ) + for _ in range(n_blocks) + ] + ) + downsample = ( + Downsample1D(output_channel) if not is_last else CausalConv1d(output_channel, output_channel, 3) if self.causal else nn.Conv1d(output_channel, output_channel, 3, padding=1) + ) + self.down_blocks.append(nn.ModuleList([resnet, transformer_blocks, downsample])) + + for _ in range(num_mid_blocks): + input_channel = channels[-1] + out_channels = channels[-1] + resnet = CausalResnetBlock1D(dim=input_channel, dim_out=output_channel, time_emb_dim=time_embed_dim) if self.causal else ResnetBlock1D(dim=input_channel, dim_out=output_channel, time_emb_dim=time_embed_dim) + + transformer_blocks = nn.ModuleList( + [ + BasicTransformerBlock( + dim=output_channel, + num_attention_heads=num_heads, + attention_head_dim=attention_head_dim, + dropout=dropout, + activation_fn=act_fn, + ) + for _ in range(n_blocks) + ] + ) + + self.mid_blocks.append(nn.ModuleList([resnet, transformer_blocks])) + + channels = channels[::-1] + (channels[0],) + for i in range(len(channels) - 1): + input_channel = channels[i] * 2 + output_channel = channels[i + 1] + is_last = i == len(channels) - 2 + resnet = CausalResnetBlock1D( + dim=input_channel, + dim_out=output_channel, + time_emb_dim=time_embed_dim, + ) if self.causal else ResnetBlock1D( + dim=input_channel, + dim_out=output_channel, + time_emb_dim=time_embed_dim, + ) + transformer_blocks = nn.ModuleList( + [ + BasicTransformerBlock( + dim=output_channel, + num_attention_heads=num_heads, + attention_head_dim=attention_head_dim, + dropout=dropout, + activation_fn=act_fn, + ) + for _ in range(n_blocks) + ] + ) + upsample = ( + Upsample1D(output_channel, use_conv_transpose=True) + if not is_last + else CausalConv1d(output_channel, output_channel, 3) if self.causal else nn.Conv1d(output_channel, output_channel, 3, padding=1) + ) + self.up_blocks.append(nn.ModuleList([resnet, transformer_blocks, upsample])) + self.final_block = CausalBlock1D(channels[-1], channels[-1]) if self.causal else Block1D(channels[-1], channels[-1]) + self.final_proj = nn.Conv1d(channels[-1], self.out_channels, 1) + self.initialize_weights() + + def initialize_weights(self): + for m in self.modules(): + if isinstance(m, nn.Conv1d): + nn.init.kaiming_normal_(m.weight, nonlinearity="relu") + if m.bias is not None: + nn.init.constant_(m.bias, 0) + elif isinstance(m, nn.GroupNorm): + nn.init.constant_(m.weight, 1) + nn.init.constant_(m.bias, 0) + elif isinstance(m, nn.Linear): + nn.init.kaiming_normal_(m.weight, nonlinearity="relu") + if m.bias is not None: + nn.init.constant_(m.bias, 0) + + def forward(self, x, mask, mu, t, spks=None, cond=None): + """Forward pass of the UNet1DConditional model. + + Args: + x (torch.Tensor): shape (batch_size, in_channels, time) + mask (_type_): shape (batch_size, 1, time) + t (_type_): shape (batch_size) + spks (_type_, optional): shape: (batch_size, condition_channels). Defaults to None. + cond (_type_, optional): placeholder for future use. Defaults to None. + + Raises: + ValueError: _description_ + ValueError: _description_ + + Returns: + _type_: _description_ + """ + + t = self.time_embeddings(t).to(t.dtype) + t = self.time_mlp(t) + + x = pack([x, mu], "b * t")[0] + + if spks is not None: + spks = repeat(spks, "b c -> b c t", t=x.shape[-1]) + x = pack([x, spks], "b * t")[0] + if cond is not None: + x = pack([x, cond], "b * t")[0] + + hiddens = [] + masks = [mask] + for resnet, transformer_blocks, downsample in self.down_blocks: + mask_down = masks[-1] + x = resnet(x, mask_down, t) + x = rearrange(x, "b c t -> b t c").contiguous() + # attn_mask = torch.matmul(mask_down.transpose(1, 2).contiguous(), mask_down) + attn_mask = add_optional_chunk_mask(x, mask_down.bool(), False, False, 0, self.static_chunk_size, -1) + attn_mask = mask_to_bias(attn_mask==1, x.dtype) + for transformer_block in transformer_blocks: + x = transformer_block( + hidden_states=x, + attention_mask=attn_mask, + timestep=t, + ) + x = rearrange(x, "b t c -> b c t").contiguous() + hiddens.append(x) # Save hidden states for skip connections + x = downsample(x * mask_down) + masks.append(mask_down[:, :, ::2]) + masks = masks[:-1] + mask_mid = masks[-1] + + for resnet, transformer_blocks in self.mid_blocks: + x = resnet(x, mask_mid, t) + x = rearrange(x, "b c t -> b t c").contiguous() + # attn_mask = torch.matmul(mask_mid.transpose(1, 2).contiguous(), mask_mid) + attn_mask = add_optional_chunk_mask(x, mask_mid.bool(), False, False, 0, self.static_chunk_size, -1) + attn_mask = mask_to_bias(attn_mask==1, x.dtype) + for transformer_block in transformer_blocks: + x = transformer_block( + hidden_states=x, + attention_mask=attn_mask, + timestep=t, + ) + x = rearrange(x, "b t c -> b c t").contiguous() + + for resnet, transformer_blocks, upsample in self.up_blocks: + mask_up = masks.pop() + skip = hiddens.pop() + x = pack([x[:, :, :skip.shape[-1]], skip], "b * t")[0] + x = resnet(x, mask_up, t) + x = rearrange(x, "b c t -> b t c").contiguous() + # attn_mask = torch.matmul(mask_up.transpose(1, 2).contiguous(), mask_up) + attn_mask = add_optional_chunk_mask(x, mask_up.bool(), False, False, 0, self.static_chunk_size, -1) + attn_mask = mask_to_bias(attn_mask==1, x.dtype) + for transformer_block in transformer_blocks: + x = transformer_block( + hidden_states=x, + attention_mask=attn_mask, + timestep=t, + ) + x = rearrange(x, "b t c -> b c t").contiguous() + x = upsample(x * mask_up) + x = self.final_block(x, mask_up) + output = self.final_proj(x * mask_up) + return output * mask \ No newline at end of file diff --git a/cosyvoice/flow/flow.py b/cosyvoice/flow/flow.py new file mode 100644 index 0000000000000000000000000000000000000000..d99c4952b7fb03d4fcecededffc4ac42da32d16f --- /dev/null +++ b/cosyvoice/flow/flow.py @@ -0,0 +1,232 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Zhihao Du) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import logging +import random +from typing import Dict, Optional +import torch +import torch.nn as nn +from torch.nn import functional as F +from omegaconf import DictConfig +from cosyvoice.utils.mask import make_pad_mask + + +class MaskedDiffWithXvec(torch.nn.Module): + def __init__(self, + input_size: int = 512, + output_size: int = 80, + spk_embed_dim: int = 192, + output_type: str = "mel", + vocab_size: int = 4096, + input_frame_rate: int = 50, + only_mask_loss: bool = True, + encoder: torch.nn.Module = None, + length_regulator: torch.nn.Module = None, + decoder: torch.nn.Module = None, + decoder_conf: Dict = {'in_channels': 240, 'out_channel': 80, 'spk_emb_dim': 80, 'n_spks': 1, + 'cfm_params': DictConfig({'sigma_min': 1e-06, 'solver': 'euler', 't_scheduler': 'cosine', + 'training_cfg_rate': 0.2, 'inference_cfg_rate': 0.7, 'reg_loss_type': 'l1'}), + 'decoder_params': {'channels': [256, 256], 'dropout': 0.0, 'attention_head_dim': 64, + 'n_blocks': 4, 'num_mid_blocks': 12, 'num_heads': 8, 'act_fn': 'gelu'}}, + mel_feat_conf: Dict = {'n_fft': 1024, 'num_mels': 80, 'sampling_rate': 22050, + 'hop_size': 256, 'win_size': 1024, 'fmin': 0, 'fmax': 8000}): + super().__init__() + self.input_size = input_size + self.output_size = output_size + self.decoder_conf = decoder_conf + self.mel_feat_conf = mel_feat_conf + self.vocab_size = vocab_size + self.output_type = output_type + self.input_frame_rate = input_frame_rate + logging.info(f"input frame rate={self.input_frame_rate}") + self.input_embedding = nn.Embedding(vocab_size, input_size) + self.spk_embed_affine_layer = torch.nn.Linear(spk_embed_dim, output_size) + self.encoder = encoder + self.encoder_proj = torch.nn.Linear(self.encoder.output_size(), output_size) + self.decoder = decoder + self.length_regulator = length_regulator + self.only_mask_loss = only_mask_loss + + def forward( + self, + batch: dict, + device: torch.device, + ) -> Dict[str, Optional[torch.Tensor]]: + token = batch['speech_token'].to(device) + token_len = batch['speech_token_len'].to(device) + feat = batch['speech_feat'].to(device) + feat_len = batch['speech_feat_len'].to(device) + embedding = batch['embedding'].to(device) + + # xvec projection + embedding = F.normalize(embedding, dim=1) + embedding = self.spk_embed_affine_layer(embedding) + + # concat text and prompt_text + mask = (~make_pad_mask(token_len)).float().unsqueeze(-1).to(device) + token = self.input_embedding(torch.clamp(token, min=0)) * mask + + # text encode + h, h_lengths = self.encoder(token, token_len) + h = self.encoder_proj(h) + h, h_lengths = self.length_regulator(h, feat_len) + + # get conditions + conds = torch.zeros(feat.shape, device=token.device) + for i, j in enumerate(feat_len): + if random.random() < 0.5: + continue + index = random.randint(0, int(0.3 * j)) + conds[i, :index] = feat[i, :index] + conds = conds.transpose(1, 2) + + mask = (~make_pad_mask(feat_len)).to(h) + feat = F.interpolate(feat.unsqueeze(dim=1), size=h.shape[1:], mode="nearest").squeeze(dim=1) + loss, _ = self.decoder.compute_loss( + feat.transpose(1, 2).contiguous(), + mask.unsqueeze(1), + h.transpose(1, 2).contiguous(), + embedding, + cond=conds + ) + return {'loss': loss} + + @torch.inference_mode() + def inference(self, + token, + token_len, + prompt_token, + prompt_token_len, + prompt_feat, + prompt_feat_len, + embedding, + flow_cache): + assert token.shape[0] == 1 + # xvec projection + embedding = F.normalize(embedding, dim=1) + embedding = self.spk_embed_affine_layer(embedding) + + # concat text and prompt_text + token_len1, token_len2 = prompt_token.shape[1], token.shape[1] + token, token_len = torch.concat([prompt_token, token], dim=1), prompt_token_len + token_len + mask = (~make_pad_mask(token_len)).unsqueeze(-1).to(embedding) + token = self.input_embedding(torch.clamp(token, min=0)) * mask + + # text encode + h, h_lengths = self.encoder(token, token_len) + h = self.encoder_proj(h) + mel_len1, mel_len2 = prompt_feat.shape[1], int(token_len2 / self.input_frame_rate * 22050 / 256) + h, h_lengths = self.length_regulator.inference(h[:, :token_len1], h[:, token_len1:], mel_len1, mel_len2, self.input_frame_rate) + + # get conditions + conds = torch.zeros([1, mel_len1 + mel_len2, self.output_size], device=token.device) + conds[:, :mel_len1] = prompt_feat + conds = conds.transpose(1, 2) + + mask = (~make_pad_mask(torch.tensor([mel_len1 + mel_len2]))).to(h) + feat, flow_cache = self.decoder( + mu=h.transpose(1, 2).contiguous(), + mask=mask.unsqueeze(1), + spks=embedding, + cond=conds, + n_timesteps=10, + prompt_len=mel_len1, + flow_cache=flow_cache + ) + feat = feat[:, :, mel_len1:] + assert feat.shape[2] == mel_len2 + return feat, flow_cache + + +class CausalMaskedDiffWithXvec(torch.nn.Module): + def __init__(self, + input_size: int = 512, + output_size: int = 80, + spk_embed_dim: int = 192, + output_type: str = "mel", + vocab_size: int = 4096, + input_frame_rate: int = 50, + only_mask_loss: bool = True, + token_mel_ratio: int = 2, + pre_lookahead_len: int = 3, + encoder: torch.nn.Module = None, + decoder: torch.nn.Module = None, + decoder_conf: Dict = {'in_channels': 240, 'out_channel': 80, 'spk_emb_dim': 80, 'n_spks': 1, + 'cfm_params': DictConfig({'sigma_min': 1e-06, 'solver': 'euler', 't_scheduler': 'cosine', + 'training_cfg_rate': 0.2, 'inference_cfg_rate': 0.7, 'reg_loss_type': 'l1'}), + 'decoder_params': {'channels': [256, 256], 'dropout': 0.0, 'attention_head_dim': 64, + 'n_blocks': 4, 'num_mid_blocks': 12, 'num_heads': 8, 'act_fn': 'gelu'}}, + mel_feat_conf: Dict = {'n_fft': 1024, 'num_mels': 80, 'sampling_rate': 22050, + 'hop_size': 256, 'win_size': 1024, 'fmin': 0, 'fmax': 8000}): + super().__init__() + self.input_size = input_size + self.output_size = output_size + self.decoder_conf = decoder_conf + self.mel_feat_conf = mel_feat_conf + self.vocab_size = vocab_size + self.output_type = output_type + self.input_frame_rate = input_frame_rate + logging.info(f"input frame rate={self.input_frame_rate}") + self.input_embedding = nn.Embedding(vocab_size, input_size) + self.spk_embed_affine_layer = torch.nn.Linear(spk_embed_dim, output_size) + self.encoder = encoder + self.encoder_proj = torch.nn.Linear(self.encoder.output_size(), output_size) + self.decoder = decoder + self.only_mask_loss = only_mask_loss + self.token_mel_ratio = token_mel_ratio + self.pre_lookahead_len = pre_lookahead_len + + @torch.inference_mode() + def inference(self, + token, + token_len, + prompt_token, + prompt_token_len, + prompt_feat, + prompt_feat_len, + embedding, + finalize): + assert token.shape[0] == 1 + # xvec projection + embedding = F.normalize(embedding, dim=1) + embedding = self.spk_embed_affine_layer(embedding) + + # concat text and prompt_text + token_len1, token_len2 = prompt_token.shape[1], token.shape[1] + token, token_len = torch.concat([prompt_token, token], dim=1), prompt_token_len + token_len + mask = (~make_pad_mask(token_len)).unsqueeze(-1).to(embedding) + token = self.input_embedding(torch.clamp(token, min=0)) * mask + + # text encode + h, h_lengths = self.encoder(token, token_len) + if finalize is False: + h = h[:, :-self.pre_lookahead_len * self.token_mel_ratio] + mel_len1, mel_len2 = prompt_feat.shape[1], h.shape[1] - prompt_feat.shape[1] + h = self.encoder_proj(h) + + # get conditions + conds = torch.zeros([1, mel_len1 + mel_len2, self.output_size], device=token.device) + conds[:, :mel_len1] = prompt_feat + conds = conds.transpose(1, 2) + + mask = (~make_pad_mask(torch.tensor([mel_len1 + mel_len2]))).to(h) + feat, _ = self.decoder( + mu=h.transpose(1, 2).contiguous(), + mask=mask.unsqueeze(1), + spks=embedding, + cond=conds, + n_timesteps=10 + ) + feat = feat[:, :, mel_len1:] + assert feat.shape[2] == mel_len2 + return feat, None \ No newline at end of file diff --git a/cosyvoice/flow/flow_matching.py b/cosyvoice/flow/flow_matching.py new file mode 100644 index 0000000000000000000000000000000000000000..d5458d462a68db08695f677dbf5a4702dfdbe854 --- /dev/null +++ b/cosyvoice/flow/flow_matching.py @@ -0,0 +1,235 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Zhihao Du) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import onnxruntime +import torch +import torch.nn.functional as F +from matcha.models.components.flow_matching import BASECFM + + +class ConditionalCFM(BASECFM): + def __init__(self, in_channels, cfm_params, n_spks=1, spk_emb_dim=64, estimator: torch.nn.Module = None): + super().__init__( + n_feats=in_channels, + cfm_params=cfm_params, + n_spks=n_spks, + spk_emb_dim=spk_emb_dim, + ) + self.t_scheduler = cfm_params.t_scheduler + self.training_cfg_rate = cfm_params.training_cfg_rate + self.inference_cfg_rate = cfm_params.inference_cfg_rate + in_channels = in_channels + (spk_emb_dim if n_spks > 0 else 0) + # Just change the architecture of the estimator here + self.estimator = estimator + + @torch.inference_mode() + def forward(self, mu, mask, n_timesteps, temperature=1.0, spks=None, cond=None, prompt_len=0, flow_cache=torch.zeros(1, 80, 0, 2)): + """Forward diffusion + + Args: + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): output_mask + shape: (batch_size, 1, mel_timesteps) + n_timesteps (int): number of diffusion steps + temperature (float, optional): temperature for scaling noise. Defaults to 1.0. + spks (torch.Tensor, optional): speaker ids. Defaults to None. + shape: (batch_size, spk_emb_dim) + cond: Not used but kept for future purposes + + Returns: + sample: generated mel-spectrogram + shape: (batch_size, n_feats, mel_timesteps) + """ + + z = torch.randn_like(mu) * temperature + cache_size = flow_cache.shape[2] + # fix prompt and overlap part mu and z + if cache_size != 0: + z[:, :, :cache_size] = flow_cache[:, :, :, 0] + mu[:, :, :cache_size] = flow_cache[:, :, :, 1] + z_cache = torch.concat([z[:, :, :prompt_len], z[:, :, -34:]], dim=2) + mu_cache = torch.concat([mu[:, :, :prompt_len], mu[:, :, -34:]], dim=2) + flow_cache = torch.stack([z_cache, mu_cache], dim=-1) + + t_span = torch.linspace(0, 1, n_timesteps + 1, device=mu.device, dtype=mu.dtype) + if self.t_scheduler == 'cosine': + t_span = 1 - torch.cos(t_span * 0.5 * torch.pi) + return self.solve_euler(z, t_span=t_span, mu=mu, mask=mask, spks=spks, cond=cond), flow_cache + + def solve_euler(self, x, t_span, mu, mask, spks, cond): + """ + Fixed euler solver for ODEs. + Args: + x (torch.Tensor): random noise + t_span (torch.Tensor): n_timesteps interpolated + shape: (n_timesteps + 1,) + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): output_mask + shape: (batch_size, 1, mel_timesteps) + spks (torch.Tensor, optional): speaker ids. Defaults to None. + shape: (batch_size, spk_emb_dim) + cond: Not used but kept for future purposes + """ + t, _, dt = t_span[0], t_span[-1], t_span[1] - t_span[0] + t = t.unsqueeze(dim=0) + + # I am storing this because I can later plot it by putting a debugger here and saving it to a file + # Or in future might add like a return_all_steps flag + sol = [] + + if self.inference_cfg_rate > 0: + # Do not use concat, it may cause memory format changed and trt infer with wrong results! + x_in = torch.zeros([2, 80, x.size(2)], device=x.device, dtype=x.dtype) + mask_in = torch.zeros([2, 1, x.size(2)], device=x.device, dtype=x.dtype) + mu_in = torch.zeros([2, 80, x.size(2)], device=x.device, dtype=x.dtype) + t_in = torch.zeros([2], device=x.device, dtype=x.dtype) + spks_in = torch.zeros([2, 80], device=x.device, dtype=x.dtype) + cond_in = torch.zeros([2, 80, x.size(2)], device=x.device, dtype=x.dtype) + else: + x_in, mask_in, mu_in, t_in, spks_in, cond_in = x, mask, mu, t, spks, cond + for step in range(1, len(t_span)): + # Classifier-Free Guidance inference introduced in VoiceBox + if self.inference_cfg_rate > 0: + x_in[:] = x + mask_in[:] = mask + mu_in[0] = mu + t_in[:] = t.unsqueeze(0) + spks_in[0] = spks + cond_in[0] = cond + else: + x_in, mask_in, mu_in, t_in, spks_in, cond_in = x, mask, mu, t, spks, cond + dphi_dt = self.forward_estimator( + x_in, mask_in, + mu_in, t_in, + spks_in, + cond_in + ) + if self.inference_cfg_rate > 0: + dphi_dt, cfg_dphi_dt = torch.split(dphi_dt, [x.size(0), x.size(0)], dim=0) + dphi_dt = ((1.0 + self.inference_cfg_rate) * dphi_dt - self.inference_cfg_rate * cfg_dphi_dt) + x = x + dt * dphi_dt + t = t + dt + sol.append(x) + if step < len(t_span) - 1: + dt = t_span[step + 1] - t + + return sol[-1].float() + + def forward_estimator(self, x, mask, mu, t, spks, cond): + if isinstance(self.estimator, torch.nn.Module): + return self.estimator.forward(x, mask, mu, t, spks, cond) + elif isinstance(self.estimator, onnxruntime.InferenceSession): + ort_inputs = { + 'x': x.cpu().numpy(), + 'mask': mask.cpu().numpy(), + 'mu': mu.cpu().numpy(), + 't': t.cpu().numpy(), + 'spks': spks.cpu().numpy(), + 'cond': cond.cpu().numpy() + } + output = self.estimator.run(None, ort_inputs)[0] + return torch.tensor(output, dtype=x.dtype, device=x.device) + else: + self.estimator.set_input_shape('x', (2, 80, x.size(2))) + self.estimator.set_input_shape('mask', (2, 1, x.size(2))) + self.estimator.set_input_shape('mu', (2, 80, x.size(2))) + self.estimator.set_input_shape('t', (2,)) + self.estimator.set_input_shape('spks', (2, 80)) + self.estimator.set_input_shape('cond', (2, 80, x.size(2))) + # run trt engine + self.estimator.execute_v2([x.contiguous().data_ptr(), + mask.contiguous().data_ptr(), + mu.contiguous().data_ptr(), + t.contiguous().data_ptr(), + spks.contiguous().data_ptr(), + cond.contiguous().data_ptr(), + x.data_ptr()]) + return x + + def compute_loss(self, x1, mask, mu, spks=None, cond=None): + """Computes diffusion loss + + Args: + x1 (torch.Tensor): Target + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): target mask + shape: (batch_size, 1, mel_timesteps) + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + spks (torch.Tensor, optional): speaker embedding. Defaults to None. + shape: (batch_size, spk_emb_dim) + + Returns: + loss: conditional flow matching loss + y: conditional flow + shape: (batch_size, n_feats, mel_timesteps) + """ + b, _, t = mu.shape + + # random timestep + t = torch.rand([b, 1, 1], device=mu.device, dtype=mu.dtype) + if self.t_scheduler == 'cosine': + t = 1 - torch.cos(t * 0.5 * torch.pi) + # sample noise p(x_0) + z = torch.randn_like(x1) + + y = (1 - (1 - self.sigma_min) * t) * z + t * x1 + u = x1 - (1 - self.sigma_min) * z + + # during training, we randomly drop condition to trade off mode coverage and sample fidelity + if self.training_cfg_rate > 0: + cfg_mask = torch.rand(b, device=x1.device) > self.training_cfg_rate + mu = mu * cfg_mask.view(-1, 1, 1) + spks = spks * cfg_mask.view(-1, 1) + cond = cond * cfg_mask.view(-1, 1, 1) + + pred = self.estimator(y, mask, mu, t.squeeze(), spks, cond) + loss = F.mse_loss(pred * mask, u * mask, reduction="sum") / (torch.sum(mask) * u.shape[1]) + return loss, y + + +class CausalConditionalCFM(ConditionalCFM): + def __init__(self, in_channels, cfm_params, n_spks=1, spk_emb_dim=64, estimator: torch.nn.Module = None): + super().__init__(in_channels, cfm_params, n_spks, spk_emb_dim, estimator) + self.rand_noise = torch.randn([1, 80, 50 * 300]) + + @torch.inference_mode() + def forward(self, mu, mask, n_timesteps, temperature=1.0, spks=None, cond=None): + """Forward diffusion + + Args: + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): output_mask + shape: (batch_size, 1, mel_timesteps) + n_timesteps (int): number of diffusion steps + temperature (float, optional): temperature for scaling noise. Defaults to 1.0. + spks (torch.Tensor, optional): speaker ids. Defaults to None. + shape: (batch_size, spk_emb_dim) + cond: Not used but kept for future purposes + + Returns: + sample: generated mel-spectrogram + shape: (batch_size, n_feats, mel_timesteps) + """ + + z = self.rand_noise[:, :, :mu.size(2)].to(mu.device) * temperature + if self.fp16 is True: + z = z.half() + # fix prompt and overlap part mu and z + t_span = torch.linspace(0, 1, n_timesteps + 1, device=mu.device, dtype=mu.dtype) + if self.t_scheduler == 'cosine': + t_span = 1 - torch.cos(t_span * 0.5 * torch.pi) + return self.solve_euler(z, t_span=t_span, mu=mu, mask=mask, spks=spks, cond=cond), None diff --git a/cosyvoice/flow/length_regulator.py b/cosyvoice/flow/length_regulator.py new file mode 100644 index 0000000000000000000000000000000000000000..2cae42fa81de0b0e29b5f1eeee209d1891aa9a78 --- /dev/null +++ b/cosyvoice/flow/length_regulator.py @@ -0,0 +1,69 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Zhihao Du) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +from typing import Tuple +import torch.nn as nn +import torch +from torch.nn import functional as F +from cosyvoice.utils.mask import make_pad_mask + + +class InterpolateRegulator(nn.Module): + def __init__( + self, + channels: int, + sampling_ratios: Tuple, + out_channels: int = None, + groups: int = 1, + ): + super().__init__() + self.sampling_ratios = sampling_ratios + out_channels = out_channels or channels + model = nn.ModuleList([]) + if len(sampling_ratios) > 0: + for _ in sampling_ratios: + module = nn.Conv1d(channels, channels, 3, 1, 1) + norm = nn.GroupNorm(groups, channels) + act = nn.Mish() + model.extend([module, norm, act]) + model.append( + nn.Conv1d(channels, out_channels, 1, 1) + ) + self.model = nn.Sequential(*model) + + def forward(self, x, ylens=None): + # x in (B, T, D) + mask = (~make_pad_mask(ylens)).to(x).unsqueeze(-1) + x = F.interpolate(x.transpose(1, 2).contiguous(), size=ylens.max(), mode='linear') + out = self.model(x).transpose(1, 2).contiguous() + olens = ylens + return out * mask, olens + + def inference(self, x1, x2, mel_len1, mel_len2, input_frame_rate=50): + # in inference mode, interploate prompt token and token(head/mid/tail) seprately, so we can get a clear separation point of mel + # x in (B, T, D) + if x2.shape[1] > 40: + x2_head = F.interpolate(x2[:, :20].transpose(1, 2).contiguous(), size=int(20 / input_frame_rate * 22050 / 256), mode='linear') + x2_mid = F.interpolate(x2[:, 20:-20].transpose(1, 2).contiguous(), size=mel_len2 - int(20 / input_frame_rate * 22050 / 256) * 2, + mode='linear') + x2_tail = F.interpolate(x2[:, -20:].transpose(1, 2).contiguous(), size=int(20 / input_frame_rate * 22050 / 256), mode='linear') + x2 = torch.concat([x2_head, x2_mid, x2_tail], dim=2) + else: + x2 = F.interpolate(x2.transpose(1, 2).contiguous(), size=mel_len2, mode='linear') + if x1.shape[1] != 0: + x1 = F.interpolate(x1.transpose(1, 2).contiguous(), size=mel_len1, mode='linear') + x = torch.concat([x1, x2], dim=2) + else: + x = x2 + out = self.model(x).transpose(1, 2).contiguous() + return out, mel_len1 + mel_len2 diff --git a/cosyvoice/hifigan/discriminator.py b/cosyvoice/hifigan/discriminator.py new file mode 100644 index 0000000000000000000000000000000000000000..6fc784599f3493e20830290a9cd182789c0428d5 --- /dev/null +++ b/cosyvoice/hifigan/discriminator.py @@ -0,0 +1,140 @@ +import torch +import torch.nn as nn +from torch.nn.utils import weight_norm +from typing import List, Optional, Tuple +from einops import rearrange +from torchaudio.transforms import Spectrogram + + +class MultipleDiscriminator(nn.Module): + def __init__( + self, mpd: nn.Module, mrd: nn.Module + ): + super().__init__() + self.mpd = mpd + self.mrd = mrd + + def forward(self, y: torch.Tensor, y_hat: torch.Tensor): + y_d_rs, y_d_gs, fmap_rs, fmap_gs = [], [], [], [] + this_y_d_rs, this_y_d_gs, this_fmap_rs, this_fmap_gs = self.mpd(y.unsqueeze(dim=1), y_hat.unsqueeze(dim=1)) + y_d_rs += this_y_d_rs + y_d_gs += this_y_d_gs + fmap_rs += this_fmap_rs + fmap_gs += this_fmap_gs + this_y_d_rs, this_y_d_gs, this_fmap_rs, this_fmap_gs = self.mrd(y, y_hat) + y_d_rs += this_y_d_rs + y_d_gs += this_y_d_gs + fmap_rs += this_fmap_rs + fmap_gs += this_fmap_gs + return y_d_rs, y_d_gs, fmap_rs, fmap_gs + + +class MultiResolutionDiscriminator(nn.Module): + def __init__( + self, + fft_sizes: Tuple[int, ...] = (2048, 1024, 512), + num_embeddings: Optional[int] = None, + ): + """ + Multi-Resolution Discriminator module adapted from https://github.com/descriptinc/descript-audio-codec. + Additionally, it allows incorporating conditional information with a learned embeddings table. + + Args: + fft_sizes (tuple[int]): Tuple of window lengths for FFT. Defaults to (2048, 1024, 512). + num_embeddings (int, optional): Number of embeddings. None means non-conditional discriminator. + Defaults to None. + """ + + super().__init__() + self.discriminators = nn.ModuleList( + [DiscriminatorR(window_length=w, num_embeddings=num_embeddings) for w in fft_sizes] + ) + + def forward( + self, y: torch.Tensor, y_hat: torch.Tensor, bandwidth_id: torch.Tensor = None + ) -> Tuple[List[torch.Tensor], List[torch.Tensor], List[List[torch.Tensor]], List[List[torch.Tensor]]]: + y_d_rs = [] + y_d_gs = [] + fmap_rs = [] + fmap_gs = [] + + for d in self.discriminators: + y_d_r, fmap_r = d(x=y, cond_embedding_id=bandwidth_id) + y_d_g, fmap_g = d(x=y_hat, cond_embedding_id=bandwidth_id) + y_d_rs.append(y_d_r) + fmap_rs.append(fmap_r) + y_d_gs.append(y_d_g) + fmap_gs.append(fmap_g) + + return y_d_rs, y_d_gs, fmap_rs, fmap_gs + + +class DiscriminatorR(nn.Module): + def __init__( + self, + window_length: int, + num_embeddings: Optional[int] = None, + channels: int = 32, + hop_factor: float = 0.25, + bands: Tuple[Tuple[float, float], ...] = ((0.0, 0.1), (0.1, 0.25), (0.25, 0.5), (0.5, 0.75), (0.75, 1.0)), + ): + super().__init__() + self.window_length = window_length + self.hop_factor = hop_factor + self.spec_fn = Spectrogram( + n_fft=window_length, hop_length=int(window_length * hop_factor), win_length=window_length, power=None + ) + n_fft = window_length // 2 + 1 + bands = [(int(b[0] * n_fft), int(b[1] * n_fft)) for b in bands] + self.bands = bands + convs = lambda: nn.ModuleList( + [ + weight_norm(nn.Conv2d(2, channels, (3, 9), (1, 1), padding=(1, 4))), + weight_norm(nn.Conv2d(channels, channels, (3, 9), (1, 2), padding=(1, 4))), + weight_norm(nn.Conv2d(channels, channels, (3, 9), (1, 2), padding=(1, 4))), + weight_norm(nn.Conv2d(channels, channels, (3, 9), (1, 2), padding=(1, 4))), + weight_norm(nn.Conv2d(channels, channels, (3, 3), (1, 1), padding=(1, 1))), + ] + ) + self.band_convs = nn.ModuleList([convs() for _ in range(len(self.bands))]) + + if num_embeddings is not None: + self.emb = torch.nn.Embedding(num_embeddings=num_embeddings, embedding_dim=channels) + torch.nn.init.zeros_(self.emb.weight) + + self.conv_post = weight_norm(nn.Conv2d(channels, 1, (3, 3), (1, 1), padding=(1, 1))) + + def spectrogram(self, x): + # Remove DC offset + x = x - x.mean(dim=-1, keepdims=True) + # Peak normalize the volume of input audio + x = 0.8 * x / (x.abs().max(dim=-1, keepdim=True)[0] + 1e-9) + x = self.spec_fn(x) + x = torch.view_as_real(x) + x = rearrange(x, "b f t c -> b c t f") + # Split into bands + x_bands = [x[..., b[0]: b[1]] for b in self.bands] + return x_bands + + def forward(self, x: torch.Tensor, cond_embedding_id: torch.Tensor = None): + x_bands = self.spectrogram(x) + fmap = [] + x = [] + for band, stack in zip(x_bands, self.band_convs): + for i, layer in enumerate(stack): + band = layer(band) + band = torch.nn.functional.leaky_relu(band, 0.1) + if i > 0: + fmap.append(band) + x.append(band) + x = torch.cat(x, dim=-1) + if cond_embedding_id is not None: + emb = self.emb(cond_embedding_id) + h = (emb.view(1, -1, 1, 1) * x).sum(dim=1, keepdims=True) + else: + h = 0 + x = self.conv_post(x) + fmap.append(x) + x += h + + return x, fmap diff --git a/cosyvoice/hifigan/f0_predictor.py b/cosyvoice/hifigan/f0_predictor.py new file mode 100644 index 0000000000000000000000000000000000000000..36b85f4ed90c3a412cb179f49ccb471132a86550 --- /dev/null +++ b/cosyvoice/hifigan/f0_predictor.py @@ -0,0 +1,55 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Kai Hu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import torch +import torch.nn as nn +from torch.nn.utils import weight_norm + + +class ConvRNNF0Predictor(nn.Module): + def __init__(self, + num_class: int = 1, + in_channels: int = 80, + cond_channels: int = 512 + ): + super().__init__() + + self.num_class = num_class + self.condnet = nn.Sequential( + weight_norm( + nn.Conv1d(in_channels, cond_channels, kernel_size=3, padding=1) + ), + nn.ELU(), + weight_norm( + nn.Conv1d(cond_channels, cond_channels, kernel_size=3, padding=1) + ), + nn.ELU(), + weight_norm( + nn.Conv1d(cond_channels, cond_channels, kernel_size=3, padding=1) + ), + nn.ELU(), + weight_norm( + nn.Conv1d(cond_channels, cond_channels, kernel_size=3, padding=1) + ), + nn.ELU(), + weight_norm( + nn.Conv1d(cond_channels, cond_channels, kernel_size=3, padding=1) + ), + nn.ELU(), + ) + self.classifier = nn.Linear(in_features=cond_channels, out_features=self.num_class) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + x = self.condnet(x) + x = x.transpose(1, 2) + return torch.abs(self.classifier(x).squeeze(-1)) diff --git a/cosyvoice/hifigan/generator.py b/cosyvoice/hifigan/generator.py new file mode 100644 index 0000000000000000000000000000000000000000..0098b9053a093eea2374631620bbf145aa393252 --- /dev/null +++ b/cosyvoice/hifigan/generator.py @@ -0,0 +1,411 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Kai Hu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""HIFI-GAN""" + +from typing import Dict, Optional, List +import numpy as np +from scipy.signal import get_window +import torch +import torch.nn as nn +import torch.nn.functional as F +from torch.nn import Conv1d +from torch.nn import ConvTranspose1d +from torch.nn.utils import remove_weight_norm +from torch.nn.utils import weight_norm +from torch.distributions.uniform import Uniform + +from cosyvoice.transformer.activation import Snake +from cosyvoice.utils.common import get_padding +from cosyvoice.utils.common import init_weights + + +"""hifigan based generator implementation. + +This code is modified from https://github.com/jik876/hifi-gan + ,https://github.com/kan-bayashi/ParallelWaveGAN and + https://github.com/NVIDIA/BigVGAN + +""" + + +class ResBlock(torch.nn.Module): + """Residual block module in HiFiGAN/BigVGAN.""" + def __init__( + self, + channels: int = 512, + kernel_size: int = 3, + dilations: List[int] = [1, 3, 5], + ): + super(ResBlock, self).__init__() + self.convs1 = nn.ModuleList() + self.convs2 = nn.ModuleList() + + for dilation in dilations: + self.convs1.append( + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=dilation, + padding=get_padding(kernel_size, dilation) + ) + ) + ) + self.convs2.append( + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=1, + padding=get_padding(kernel_size, 1) + ) + ) + ) + self.convs1.apply(init_weights) + self.convs2.apply(init_weights) + self.activations1 = nn.ModuleList([ + Snake(channels, alpha_logscale=False) + for _ in range(len(self.convs1)) + ]) + self.activations2 = nn.ModuleList([ + Snake(channels, alpha_logscale=False) + for _ in range(len(self.convs2)) + ]) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + for idx in range(len(self.convs1)): + xt = self.activations1[idx](x) + xt = self.convs1[idx](xt) + xt = self.activations2[idx](xt) + xt = self.convs2[idx](xt) + x = xt + x + return x + + def remove_weight_norm(self): + for idx in range(len(self.convs1)): + remove_weight_norm(self.convs1[idx]) + remove_weight_norm(self.convs2[idx]) + + +class SineGen(torch.nn.Module): + """ Definition of sine generator + SineGen(samp_rate, harmonic_num = 0, + sine_amp = 0.1, noise_std = 0.003, + voiced_threshold = 0, + flag_for_pulse=False) + samp_rate: sampling rate in Hz + harmonic_num: number of harmonic overtones (default 0) + sine_amp: amplitude of sine-wavefrom (default 0.1) + noise_std: std of Gaussian noise (default 0.003) + voiced_thoreshold: F0 threshold for U/V classification (default 0) + flag_for_pulse: this SinGen is used inside PulseGen (default False) + Note: when flag_for_pulse is True, the first time step of a voiced + segment is always sin(np.pi) or cos(0) + """ + + def __init__(self, samp_rate, harmonic_num=0, + sine_amp=0.1, noise_std=0.003, + voiced_threshold=0): + super(SineGen, self).__init__() + self.sine_amp = sine_amp + self.noise_std = noise_std + self.harmonic_num = harmonic_num + self.sampling_rate = samp_rate + self.voiced_threshold = voiced_threshold + + def _f02uv(self, f0): + # generate uv signal + uv = (f0 > self.voiced_threshold).type(torch.float32) + return uv + + @torch.no_grad() + def forward(self, f0): + """ + :param f0: [B, 1, sample_len], Hz + :return: [B, 1, sample_len] + """ + + F_mat = torch.zeros((f0.size(0), self.harmonic_num + 1, f0.size(-1))).to(f0.device) + for i in range(self.harmonic_num + 1): + F_mat[:, i: i + 1, :] = f0 * (i + 1) / self.sampling_rate + + theta_mat = 2 * np.pi * (torch.cumsum(F_mat, dim=-1) % 1) + u_dist = Uniform(low=-np.pi, high=np.pi) + phase_vec = u_dist.sample(sample_shape=(f0.size(0), self.harmonic_num + 1, 1)).to(F_mat.device) + phase_vec[:, 0, :] = 0 + + # generate sine waveforms + sine_waves = self.sine_amp * torch.sin(theta_mat + phase_vec) + + # generate uv signal + uv = self._f02uv(f0) + + # noise: for unvoiced should be similar to sine_amp + # std = self.sine_amp/3 -> max value ~ self.sine_amp + # . for voiced regions is self.noise_std + noise_amp = uv * self.noise_std + (1 - uv) * self.sine_amp / 3 + noise = noise_amp * torch.randn_like(sine_waves) + + # first: set the unvoiced part to 0 by uv + # then: additive noise + sine_waves = sine_waves * uv + noise + return sine_waves, uv, noise + + +class SourceModuleHnNSF(torch.nn.Module): + """ SourceModule for hn-nsf + SourceModule(sampling_rate, harmonic_num=0, sine_amp=0.1, + add_noise_std=0.003, voiced_threshod=0) + sampling_rate: sampling_rate in Hz + harmonic_num: number of harmonic above F0 (default: 0) + sine_amp: amplitude of sine source signal (default: 0.1) + add_noise_std: std of additive Gaussian noise (default: 0.003) + note that amplitude of noise in unvoiced is decided + by sine_amp + voiced_threshold: threhold to set U/V given F0 (default: 0) + Sine_source, noise_source = SourceModuleHnNSF(F0_sampled) + F0_sampled (batchsize, length, 1) + Sine_source (batchsize, length, 1) + noise_source (batchsize, length 1) + uv (batchsize, length, 1) + """ + + def __init__(self, sampling_rate, upsample_scale, harmonic_num=0, sine_amp=0.1, + add_noise_std=0.003, voiced_threshod=0): + super(SourceModuleHnNSF, self).__init__() + + self.sine_amp = sine_amp + self.noise_std = add_noise_std + + # to produce sine waveforms + self.l_sin_gen = SineGen(sampling_rate, harmonic_num, + sine_amp, add_noise_std, voiced_threshod) + + # to merge source harmonics into a single excitation + self.l_linear = torch.nn.Linear(harmonic_num + 1, 1) + self.l_tanh = torch.nn.Tanh() + + def forward(self, x): + """ + Sine_source, noise_source = SourceModuleHnNSF(F0_sampled) + F0_sampled (batchsize, length, 1) + Sine_source (batchsize, length, 1) + noise_source (batchsize, length 1) + """ + # source for harmonic branch + with torch.no_grad(): + sine_wavs, uv, _ = self.l_sin_gen(x.transpose(1, 2)) + sine_wavs = sine_wavs.transpose(1, 2) + uv = uv.transpose(1, 2) + sine_merge = self.l_tanh(self.l_linear(sine_wavs)) + + # source for noise branch, in the same shape as uv + noise = torch.randn_like(uv) * self.sine_amp / 3 + return sine_merge, noise, uv + + +class HiFTGenerator(nn.Module): + """ + HiFTNet Generator: Neural Source Filter + ISTFTNet + https://arxiv.org/abs/2309.09493 + """ + def __init__( + self, + in_channels: int = 80, + base_channels: int = 512, + nb_harmonics: int = 8, + sampling_rate: int = 22050, + nsf_alpha: float = 0.1, + nsf_sigma: float = 0.003, + nsf_voiced_threshold: float = 10, + upsample_rates: List[int] = [8, 8], + upsample_kernel_sizes: List[int] = [16, 16], + istft_params: Dict[str, int] = {"n_fft": 16, "hop_len": 4}, + resblock_kernel_sizes: List[int] = [3, 7, 11], + resblock_dilation_sizes: List[List[int]] = [[1, 3, 5], [1, 3, 5], [1, 3, 5]], + source_resblock_kernel_sizes: List[int] = [7, 11], + source_resblock_dilation_sizes: List[List[int]] = [[1, 3, 5], [1, 3, 5]], + lrelu_slope: float = 0.1, + audio_limit: float = 0.99, + f0_predictor: torch.nn.Module = None, + ): + super(HiFTGenerator, self).__init__() + + self.out_channels = 1 + self.nb_harmonics = nb_harmonics + self.sampling_rate = sampling_rate + self.istft_params = istft_params + self.lrelu_slope = lrelu_slope + self.audio_limit = audio_limit + + self.num_kernels = len(resblock_kernel_sizes) + self.num_upsamples = len(upsample_rates) + self.m_source = SourceModuleHnNSF( + sampling_rate=sampling_rate, + upsample_scale=np.prod(upsample_rates) * istft_params["hop_len"], + harmonic_num=nb_harmonics, + sine_amp=nsf_alpha, + add_noise_std=nsf_sigma, + voiced_threshod=nsf_voiced_threshold) + self.f0_upsamp = torch.nn.Upsample(scale_factor=np.prod(upsample_rates) * istft_params["hop_len"]) + + self.conv_pre = weight_norm( + Conv1d(in_channels, base_channels, 7, 1, padding=3) + ) + + # Up + self.ups = nn.ModuleList() + for i, (u, k) in enumerate(zip(upsample_rates, upsample_kernel_sizes)): + self.ups.append( + weight_norm( + ConvTranspose1d( + base_channels // (2**i), + base_channels // (2**(i + 1)), + k, + u, + padding=(k - u) // 2, + ) + ) + ) + + # Down + self.source_downs = nn.ModuleList() + self.source_resblocks = nn.ModuleList() + downsample_rates = [1] + upsample_rates[::-1][:-1] + downsample_cum_rates = np.cumprod(downsample_rates) + for i, (u, k, d) in enumerate(zip(downsample_cum_rates[::-1], source_resblock_kernel_sizes, source_resblock_dilation_sizes)): + if u == 1: + self.source_downs.append( + Conv1d(istft_params["n_fft"] + 2, base_channels // (2 ** (i + 1)), 1, 1) + ) + else: + self.source_downs.append( + Conv1d(istft_params["n_fft"] + 2, base_channels // (2 ** (i + 1)), u * 2, u, padding=(u // 2)) + ) + + self.source_resblocks.append( + ResBlock(base_channels // (2 ** (i + 1)), k, d) + ) + + self.resblocks = nn.ModuleList() + for i in range(len(self.ups)): + ch = base_channels // (2**(i + 1)) + for _, (k, d) in enumerate(zip(resblock_kernel_sizes, resblock_dilation_sizes)): + self.resblocks.append(ResBlock(ch, k, d)) + + self.conv_post = weight_norm(Conv1d(ch, istft_params["n_fft"] + 2, 7, 1, padding=3)) + self.ups.apply(init_weights) + self.conv_post.apply(init_weights) + self.reflection_pad = nn.ReflectionPad1d((1, 0)) + self.stft_window = torch.from_numpy(get_window("hann", istft_params["n_fft"], fftbins=True).astype(np.float32)) + self.f0_predictor = f0_predictor + + def remove_weight_norm(self): + print('Removing weight norm...') + for l in self.ups: + remove_weight_norm(l) + for l in self.resblocks: + l.remove_weight_norm() + remove_weight_norm(self.conv_pre) + remove_weight_norm(self.conv_post) + self.m_source.remove_weight_norm() + for l in self.source_downs: + remove_weight_norm(l) + for l in self.source_resblocks: + l.remove_weight_norm() + + def _stft(self, x): + spec = torch.stft( + x, + self.istft_params["n_fft"], self.istft_params["hop_len"], self.istft_params["n_fft"], window=self.stft_window.to(x.device), + return_complex=True) + spec = torch.view_as_real(spec) # [B, F, TT, 2] + return spec[..., 0], spec[..., 1] + + def _istft(self, magnitude, phase): + magnitude = torch.clip(magnitude, max=1e2) + real = magnitude * torch.cos(phase) + img = magnitude * torch.sin(phase) + inverse_transform = torch.istft(torch.complex(real, img), self.istft_params["n_fft"], self.istft_params["hop_len"], + self.istft_params["n_fft"], window=self.stft_window.to(magnitude.device)) + return inverse_transform + + def decode(self, x: torch.Tensor, s: torch.Tensor = torch.zeros(1, 1, 0)) -> torch.Tensor: + s_stft_real, s_stft_imag = self._stft(s.squeeze(1)) + s_stft = torch.cat([s_stft_real, s_stft_imag], dim=1) + + x = self.conv_pre(x) + for i in range(self.num_upsamples): + x = F.leaky_relu(x, self.lrelu_slope) + x = self.ups[i](x) + + if i == self.num_upsamples - 1: + x = self.reflection_pad(x) + + # fusion + si = self.source_downs[i](s_stft) + si = self.source_resblocks[i](si) + x = x + si + + xs = None + for j in range(self.num_kernels): + if xs is None: + xs = self.resblocks[i * self.num_kernels + j](x) + else: + xs += self.resblocks[i * self.num_kernels + j](x) + x = xs / self.num_kernels + + x = F.leaky_relu(x) + x = self.conv_post(x) + magnitude = torch.exp(x[:, :self.istft_params["n_fft"] // 2 + 1, :]) + phase = torch.sin(x[:, self.istft_params["n_fft"] // 2 + 1:, :]) # actually, sin is redundancy + + x = self._istft(magnitude, phase) + x = torch.clamp(x, -self.audio_limit, self.audio_limit) + return x + + def forward( + self, + batch: dict, + device: torch.device, + ) -> Dict[str, Optional[torch.Tensor]]: + speech_feat = batch['speech_feat'].transpose(1, 2).to(device) + # mel->f0 + f0 = self.f0_predictor(speech_feat) + # f0->source + s = self.f0_upsamp(f0[:, None]).transpose(1, 2) # bs,n,t + s, _, _ = self.m_source(s) + s = s.transpose(1, 2) + # mel+source->speech + generated_speech = self.decode(x=speech_feat, s=s) + return generated_speech, f0 + + @torch.inference_mode() + def inference(self, speech_feat: torch.Tensor, cache_source: torch.Tensor = torch.zeros(1, 1, 0)) -> torch.Tensor: + # mel->f0 + f0 = self.f0_predictor(speech_feat) + # f0->source + s = self.f0_upsamp(f0[:, None]).transpose(1, 2) # bs,n,t + s, _, _ = self.m_source(s) + s = s.transpose(1, 2) + # use cache_source to avoid glitch + if cache_source.shape[2] != 0: + s[:, :, :cache_source.shape[2]] = cache_source + generated_speech = self.decode(x=speech_feat, s=s) + return generated_speech, s diff --git a/cosyvoice/hifigan/hifigan.py b/cosyvoice/hifigan/hifigan.py new file mode 100644 index 0000000000000000000000000000000000000000..de623cce3aa096b27050063a28efd653ede132cb --- /dev/null +++ b/cosyvoice/hifigan/hifigan.py @@ -0,0 +1,67 @@ +from typing import Dict, Optional +import torch +import torch.nn as nn +import torch.nn.functional as F +from matcha.hifigan.models import feature_loss, generator_loss, discriminator_loss +from cosyvoice.utils.losses import tpr_loss, mel_loss + + +class HiFiGan(nn.Module): + def __init__(self, generator, discriminator, mel_spec_transform, + multi_mel_spectral_recon_loss_weight=45, feat_match_loss_weight=2.0, + tpr_loss_weight=1.0, tpr_loss_tau=0.04): + super(HiFiGan, self).__init__() + self.generator = generator + self.discriminator = discriminator + self.mel_spec_transform = mel_spec_transform + self.multi_mel_spectral_recon_loss_weight = multi_mel_spectral_recon_loss_weight + self.feat_match_loss_weight = feat_match_loss_weight + self.tpr_loss_weight = tpr_loss_weight + self.tpr_loss_tau = tpr_loss_tau + + def forward( + self, + batch: dict, + device: torch.device, + ) -> Dict[str, Optional[torch.Tensor]]: + if batch['turn'] == 'generator': + return self.forward_generator(batch, device) + else: + return self.forward_discriminator(batch, device) + + def forward_generator(self, batch, device): + real_speech = batch['speech'].to(device) + pitch_feat = batch['pitch_feat'].to(device) + # 1. calculate generator outputs + generated_speech, generated_f0 = self.generator(batch, device) + # 2. calculate discriminator outputs + y_d_rs, y_d_gs, fmap_rs, fmap_gs = self.discriminator(real_speech, generated_speech) + # 3. calculate generator losses, feature loss, mel loss, tpr losses [Optional] + loss_gen, _ = generator_loss(y_d_gs) + loss_fm = feature_loss(fmap_rs, fmap_gs) + loss_mel = mel_loss(real_speech, generated_speech, self.mel_spec_transform) + if self.tpr_loss_weight != 0: + loss_tpr = tpr_loss(y_d_rs, y_d_gs, self.tpr_loss_tau) + else: + loss_tpr = torch.zeros(1).to(device) + loss_f0 = F.l1_loss(generated_f0, pitch_feat) + loss = loss_gen + self.feat_match_loss_weight * loss_fm + \ + self.multi_mel_spectral_recon_loss_weight * loss_mel + \ + self.tpr_loss_weight * loss_tpr + loss_f0 + return {'loss': loss, 'loss_gen': loss_gen, 'loss_fm': loss_fm, 'loss_mel': loss_mel, 'loss_tpr': loss_tpr, 'loss_f0': loss_f0} + + def forward_discriminator(self, batch, device): + real_speech = batch['speech'].to(device) + # 1. calculate generator outputs + with torch.no_grad(): + generated_speech, generated_f0 = self.generator(batch, device) + # 2. calculate discriminator outputs + y_d_rs, y_d_gs, fmap_rs, fmap_gs = self.discriminator(real_speech, generated_speech) + # 3. calculate discriminator losses, tpr losses [Optional] + loss_disc, _, _ = discriminator_loss(y_d_rs, y_d_gs) + if self.tpr_loss_weight != 0: + loss_tpr = tpr_loss(y_d_rs, y_d_gs, self.tpr_loss_tau) + else: + loss_tpr = torch.zeros(1).to(device) + loss = loss_disc + self.tpr_loss_weight * loss_tpr + return {'loss': loss, 'loss_disc': loss_disc, 'loss_tpr': loss_tpr} diff --git a/cosyvoice/llm/llm.py b/cosyvoice/llm/llm.py new file mode 100644 index 0000000000000000000000000000000000000000..f06b23a48784407da9fe8a7f6af3faf0ab3004eb --- /dev/null +++ b/cosyvoice/llm/llm.py @@ -0,0 +1,340 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Zhihao Du) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +from typing import Dict, Optional, Callable, List, Generator +import torch +from torch import nn +import torch.nn.functional as F +from transformers import Qwen2ForCausalLM +from torch.nn.utils.rnn import pad_sequence, unpad_sequence +from cosyvoice.utils.common import IGNORE_ID +from cosyvoice.transformer.label_smoothing_loss import LabelSmoothingLoss +from cosyvoice.utils.common import th_accuracy + + +class TransformerLM(torch.nn.Module): + def __init__( + self, + text_encoder_input_size: int, + llm_input_size: int, + llm_output_size: int, + text_token_size: int, + speech_token_size: int, + text_encoder: torch.nn.Module, + llm: torch.nn.Module, + sampling: Callable, + length_normalized_loss: bool = True, + lsm_weight: float = 0.0, + spk_embed_dim: int = 192, + ): + super().__init__() + self.llm_input_size = llm_input_size + self.speech_token_size = speech_token_size + # 1. build text token inputs related modules + self.text_embedding = torch.nn.Embedding(text_token_size, text_encoder_input_size) + self.text_encoder = text_encoder + self.text_encoder_affine_layer = nn.Linear( + self.text_encoder.output_size(), + llm_input_size + ) + + # 2. build speech token language model related modules + self.sos_eos = 0 + self.task_id = 1 + self.llm_embedding = torch.nn.Embedding(2, llm_input_size) + self.llm = llm + self.llm_decoder = nn.Linear(llm_output_size, speech_token_size + 1) + self.criterion_ce = LabelSmoothingLoss( + size=speech_token_size + 1, + padding_idx=IGNORE_ID, + smoothing=lsm_weight, + normalize_length=length_normalized_loss, + ) + + # 3. [Optional] build speech token related modules + self.speech_embedding = torch.nn.Embedding(speech_token_size, llm_input_size) + self.spk_embed_affine_layer = torch.nn.Linear(spk_embed_dim, llm_input_size) + + # 4. sampling method + self.sampling = sampling + + def encode( + self, + text: torch.Tensor, + text_lengths: torch.Tensor, + ): + encoder_out, encoder_mask = self.text_encoder(text, text_lengths, decoding_chunk_size=1, num_decoding_left_chunks=-1) + encoder_out_lens = encoder_mask.squeeze(1).sum(1) + encoder_out = self.text_encoder_affine_layer(encoder_out) + return encoder_out, encoder_out_lens + + def pad_unpad_sequence(self, sos_eos_emb, embedding, text_token, text_token_len, task_id_emb, speech_token, speech_token_len): + text_token = unpad_sequence(text_token, text_token_len.cpu(), batch_first=True) + speech_token = unpad_sequence(speech_token, speech_token_len.cpu(), batch_first=True) + lm_input = [torch.concat([sos_eos_emb.squeeze(dim=0), embedding[i], text_token[i], task_id_emb.squeeze(dim=0), speech_token[i]], dim=0) + for i in range(len(text_token))] + lm_input_len = torch.tensor([i.size(0) for i in lm_input], dtype=torch.int32) + lm_input = pad_sequence(lm_input, batch_first=True, padding_value=IGNORE_ID) + return lm_input, lm_input_len + + def forward( + self, + batch: dict, + device: torch.device, + ) -> Dict[str, Optional[torch.Tensor]]: + """ + Args: + text: (B, L, D) + text_lengths: (B,) + audio: (B, T, N) or (B, T) + audio_lengths: (B,) + """ + text_token = batch['text_token'].to(device) + text_token_len = batch['text_token_len'].to(device) + speech_token = batch['speech_token'].to(device) + speech_token_len = batch['speech_token_len'].to(device) + embedding = batch['embedding'].to(device) + + # 1. prepare llm_target + lm_target = [torch.tensor([IGNORE_ID] * (2 + text_token_len[i]) + speech_token[i, :speech_token_len[i]].tolist() + + [self.speech_token_size]) for i in range(text_token.size(0))] + lm_target = pad_sequence(lm_target, batch_first=True, padding_value=IGNORE_ID).to(device) + + # 1. encode text_token + text_token = self.text_embedding(text_token) + text_token, text_token_len = self.encode(text_token, text_token_len) + + # 2. embedding projection + embedding = F.normalize(embedding, dim=1) + embedding = self.spk_embed_affine_layer(embedding) + embedding = embedding.unsqueeze(1) + + # 3. eos and task_id + sos_eos_emb = self.llm_embedding.weight[self.sos_eos].reshape(1, 1, -1) + task_id_emb = self.llm_embedding.weight[self.task_id].reshape(1, 1, -1) + + # 4. encode speech_token + speech_token = self.speech_embedding(speech_token) + + # 5. unpad and pad + lm_input, lm_input_len = self.pad_unpad_sequence(sos_eos_emb, embedding, text_token, text_token_len, + task_id_emb, speech_token, speech_token_len) + + # 6. run lm forward + lm_output, lm_output_mask = self.llm(lm_input, lm_input_len.to(device)) + logits = self.llm_decoder(lm_output) + loss = self.criterion_ce(logits, lm_target) + acc = th_accuracy(logits.view(-1, self.speech_token_size + 1), lm_target, ignore_label=IGNORE_ID) + return {'loss': loss, 'acc': acc} + + def sampling_ids( + self, + weighted_scores: torch.Tensor, + decoded_tokens: List, + sampling: int, + ignore_eos: bool = True, + ): + while True: + top_ids = self.sampling(weighted_scores, decoded_tokens, sampling) + if (not ignore_eos) or (self.speech_token_size not in top_ids): + break + return top_ids + + @torch.inference_mode() + def inference( + self, + text: torch.Tensor, + text_len: torch.Tensor, + prompt_text: torch.Tensor, + prompt_text_len: torch.Tensor, + prompt_speech_token: torch.Tensor, + prompt_speech_token_len: torch.Tensor, + embedding: torch.Tensor, + sampling: int = 25, + max_token_text_ratio: float = 20, + min_token_text_ratio: float = 2, + ) -> Generator[torch.Tensor, None, None]: + device = text.device + text = torch.concat([prompt_text, text], dim=1) + text_len += prompt_text_len + text = self.text_embedding(text) + + # 1. encode text + text, text_len = self.encode(text, text_len) + + # 2. encode embedding + if embedding.shape[0] != 0: + embedding = F.normalize(embedding, dim=1) + embedding = self.spk_embed_affine_layer(embedding) + embedding = embedding.unsqueeze(dim=1) + else: + embedding = torch.zeros(1, 0, self.llm_input_size, dtype=text.dtype).to(device) + + # 3. concat llm_input + sos_eos_emb = self.llm_embedding.weight[self.sos_eos].reshape(1, 1, -1) + task_id_emb = self.llm_embedding.weight[self.task_id].reshape(1, 1, -1) + if prompt_speech_token_len != 0: + prompt_speech_token_emb = self.speech_embedding(prompt_speech_token) + else: + prompt_speech_token_emb = torch.zeros(1, 0, self.llm_input_size, dtype=text.dtype).to(device) + lm_input = torch.concat([sos_eos_emb, embedding, text, task_id_emb, prompt_speech_token_emb], dim=1) + + # 4. cal min/max_length + min_len = int((text_len - prompt_text_len) * min_token_text_ratio) + max_len = int((text_len - prompt_text_len) * max_token_text_ratio) + + # 5. step by step decode + out_tokens = [] + offset = 0 + att_cache, cnn_cache = torch.zeros((0, 0, 0, 0), device=lm_input.device), torch.zeros((0, 0, 0, 0), device=lm_input.device) + for i in range(max_len): + y_pred, att_cache, cnn_cache = self.llm.forward_chunk(lm_input, offset=offset, required_cache_size=-1, + att_cache=att_cache, cnn_cache=cnn_cache, + att_mask=torch.tril(torch.ones((1, lm_input.shape[1], lm_input.shape[1]), + device=lm_input.device)).to(torch.bool)) + logp = self.llm_decoder(y_pred[:, -1]).log_softmax(dim=-1) + # force continue decode first token + if i == 0: + logp[:, self.speech_token_size] = -float('inf') + top_ids = self.sampling_ids(logp.squeeze(dim=0), out_tokens, sampling, ignore_eos=True if i < min_len else False).item() + if top_ids == self.speech_token_size: + break + # in stream mode, yield token one by one + yield top_ids + out_tokens.append(top_ids) + offset += lm_input.size(1) + lm_input = self.speech_embedding.weight[top_ids].reshape(1, 1, -1) + + +class Qwen2Encoder(torch.nn.Module): + def __init__(self, pretrain_path): + super().__init__() + self.model = Qwen2ForCausalLM.from_pretrained(pretrain_path) + + def forward_one_step(self, xs, masks, cache=None): + input_masks = masks[:, -1, :] + outs = self.model( + inputs_embeds=xs, + attention_mask=input_masks, + output_hidden_states=True, + return_dict=True, + use_cache=True, + past_key_values=cache, + ) + xs = outs.hidden_states[-1] + new_cache = outs.past_key_values + return xs, new_cache + + +class Qwen2LM(torch.nn.Module): + def __init__( + self, + llm_input_size: int, + llm_output_size: int, + speech_token_size: int, + llm: torch.nn.Module, + sampling: Callable, + length_normalized_loss: bool = True, + lsm_weight: float = 0.0, + ): + super().__init__() + self.llm_input_size = llm_input_size + self.llm_output_size = llm_output_size + self.speech_token_size = speech_token_size + + # 2. build speech token language model related modules + self.sos_eos = 0 + self.task_id = 1 + self.fill_token = 2 + + self.llm_embedding = torch.nn.Embedding(2, llm_input_size) + self.llm = llm + self.llm_decoder = nn.Linear(llm_output_size, speech_token_size + 3) + self.criterion_ce = LabelSmoothingLoss( + size=speech_token_size + 3, + padding_idx=IGNORE_ID, + smoothing=lsm_weight, + normalize_length=length_normalized_loss, + ) + + # 3. [Optional] build speech token related modules + self.speech_embedding = torch.nn.Embedding(speech_token_size + 3, llm_input_size) + + # 4. sampling method + self.sampling = sampling + + def sampling_ids( + self, + weighted_scores: torch.Tensor, + decoded_tokens: List, + sampling: int, + ignore_eos: bool = True, + ): + while True: + top_ids = self.sampling(weighted_scores, decoded_tokens, sampling) + if (not ignore_eos) or (self.speech_token_size not in top_ids): + break + return top_ids + + @torch.inference_mode() + def inference( + self, + text: torch.Tensor, + text_len: torch.Tensor, + prompt_text: torch.Tensor, + prompt_text_len: torch.Tensor, + prompt_speech_token: torch.Tensor, + prompt_speech_token_len: torch.Tensor, + embedding: torch.Tensor, + sampling: int = 25, + max_token_text_ratio: float = 20, + min_token_text_ratio: float = 2, + ) -> Generator[torch.Tensor, None, None]: + device = text.device + text = torch.concat([prompt_text, text], dim=1) + text_len += prompt_text_len + text = self.llm.model.model.embed_tokens(text) + + # 2. encode embedding + embedding = torch.zeros(1, 0, self.llm_input_size, dtype=text.dtype).to(device) + + # 3. concat llm_input + sos_eos_emb = self.llm_embedding.weight[self.sos_eos].reshape(1, 1, -1) + task_id_emb = self.llm_embedding.weight[self.task_id].reshape(1, 1, -1) + if prompt_speech_token_len != 0: + prompt_speech_token_emb = self.speech_embedding(prompt_speech_token) + else: + prompt_speech_token_emb = torch.zeros(1, 0, self.llm_input_size, dtype=text.dtype).to(device) + lm_input = torch.concat([sos_eos_emb, embedding, text, task_id_emb, prompt_speech_token_emb], dim=1) + + # 4. cal min/max_length + min_len = int((text_len - prompt_text_len) * min_token_text_ratio) + max_len = int((text_len - prompt_text_len) * max_token_text_ratio) + + # 5. step by step decode + out_tokens = [] + cache = None + for i in range(max_len): + y_pred, cache = self.llm.forward_one_step(lm_input, + masks=torch.tril(torch.ones((1, lm_input.shape[1], lm_input.shape[1]), device=lm_input.device)).to(torch.bool), + cache=cache) + logp = self.llm_decoder(y_pred[:, -1]).log_softmax(dim=-1) + top_ids = self.sampling_ids(logp.squeeze(dim=0), out_tokens, sampling, ignore_eos=True if i < min_len else False).item() + if top_ids == self.speech_token_size: + break + if top_ids > self.speech_token_size: + continue + # in stream mode, yield token one by one + yield top_ids + out_tokens.append(top_ids) + lm_input = self.speech_embedding.weight[top_ids].reshape(1, 1, -1) \ No newline at end of file diff --git a/cosyvoice/tokenizer/assets/multilingual_zh_ja_yue_char_del.tiktoken b/cosyvoice/tokenizer/assets/multilingual_zh_ja_yue_char_del.tiktoken new file mode 100644 index 0000000000000000000000000000000000000000..ac47fe685d24565030965a94c0d98e00e0331eaa --- /dev/null +++ b/cosyvoice/tokenizer/assets/multilingual_zh_ja_yue_char_del.tiktoken @@ -0,0 +1,58836 @@ +IQ== 0 +Ig== 1 +Iw== 2 +JA== 3 +JQ== 4 +Jg== 5 +Jw== 6 +KA== 7 +KQ== 8 +Kg== 9 +Kw== 10 +LA== 11 +LQ== 12 +Lg== 13 +Lw== 14 +MA== 15 +MQ== 16 +Mg== 17 +Mw== 18 +NA== 19 +NQ== 20 +Ng== 21 +Nw== 22 +OA== 23 +OQ== 24 +Og== 25 +Ow== 26 +PA== 27 +PQ== 28 +Pg== 29 +Pw== 30 +QA== 31 +QQ== 32 +Qg== 33 +Qw== 34 +RA== 35 +RQ== 36 +Rg== 37 +Rw== 38 +SA== 39 +SQ== 40 +Sg== 41 +Sw== 42 +TA== 43 +TQ== 44 +Tg== 45 +Tw== 46 +UA== 47 +UQ== 48 +Ug== 49 +Uw== 50 +VA== 51 +VQ== 52 +Vg== 53 +Vw== 54 +WA== 55 +WQ== 56 +Wg== 57 +Ww== 58 +XA== 59 +XQ== 60 +Xg== 61 +Xw== 62 +YA== 63 +YQ== 64 +Yg== 65 +Yw== 66 +ZA== 67 +ZQ== 68 +Zg== 69 +Zw== 70 +aA== 71 +aQ== 72 +ag== 73 +aw== 74 +bA== 75 +bQ== 76 +bg== 77 +bw== 78 +cA== 79 +cQ== 80 +cg== 81 +cw== 82 +dA== 83 +dQ== 84 +dg== 85 +dw== 86 +eA== 87 +eQ== 88 +eg== 89 +ew== 90 +fA== 91 +fQ== 92 +fg== 93 +oQ== 94 +og== 95 +ow== 96 +pA== 97 +pQ== 98 +pg== 99 +pw== 100 +qA== 101 +qQ== 102 +qg== 103 +qw== 104 +rA== 105 +rg== 106 +rw== 107 +sA== 108 +sQ== 109 +sg== 110 +sw== 111 +tA== 112 +tQ== 113 +tg== 114 +tw== 115 +uA== 116 +uQ== 117 +ug== 118 +uw== 119 +vA== 120 +vQ== 121 +vg== 122 +vw== 123 +wA== 124 +wQ== 125 +wg== 126 +ww== 127 +xA== 128 +xQ== 129 +xg== 130 +xw== 131 +yA== 132 +yQ== 133 +yg== 134 +yw== 135 +zA== 136 +zQ== 137 +zg== 138 +zw== 139 +0A== 140 +0Q== 141 +0g== 142 +0w== 143 +1A== 144 +1Q== 145 +1g== 146 +1w== 147 +2A== 148 +2Q== 149 +2g== 150 +2w== 151 +3A== 152 +3Q== 153 +3g== 154 +3w== 155 +4A== 156 +4Q== 157 +4g== 158 +4w== 159 +5A== 160 +5Q== 161 +5g== 162 +5w== 163 +6A== 164 +6Q== 165 +6g== 166 +6w== 167 +7A== 168 +7Q== 169 +7g== 170 +7w== 171 +8A== 172 +8Q== 173 +8g== 174 +8w== 175 +9A== 176 +9Q== 177 +9g== 178 +9w== 179 ++A== 180 ++Q== 181 ++g== 182 ++w== 183 +/A== 184 +/Q== 185 +/g== 186 +/w== 187 +AA== 188 +AQ== 189 +Ag== 190 +Aw== 191 +BA== 192 +BQ== 193 +Bg== 194 +Bw== 195 +CA== 196 +CQ== 197 +Cg== 198 +Cw== 199 +DA== 200 +DQ== 201 +Dg== 202 +Dw== 203 +EA== 204 +EQ== 205 +Eg== 206 +Ew== 207 +FA== 208 +FQ== 209 +Fg== 210 +Fw== 211 +GA== 212 +GQ== 213 +Gg== 214 +Gw== 215 +HA== 216 +HQ== 217 +Hg== 218 +Hw== 219 +IA== 220 +fw== 221 +gA== 222 +gQ== 223 +gg== 224 +gw== 225 +hA== 226 +hQ== 227 +hg== 228 +hw== 229 +iA== 230 +iQ== 231 +ig== 232 +iw== 233 +jA== 234 +jQ== 235 +jg== 236 +jw== 237 +kA== 238 +kQ== 239 +kg== 240 +kw== 241 +lA== 242 +lQ== 243 +lg== 244 +lw== 245 +mA== 246 +mQ== 247 +mg== 248 +mw== 249 +nA== 250 +nQ== 251 +ng== 252 +nw== 253 +oA== 254 +rQ== 255 +IHQ= 256 +IGE= 257 +IHRo 258 +aW4= 259 +ZXI= 260 +IHc= 261 +IHM= 262 +b3U= 263 +IHRoZQ== 264 +cmU= 265 +b24= 266 +YXQ= 267 +ZW4= 268 +IGM= 269 +aXQ= 270 +aXM= 271 +IGI= 272 +bmQ= 273 +IGQ= 274 +IG0= 275 +IGg= 276 +IG8= 277 +aW5n 278 +ZXM= 279 +IHA= 280 +IHRv 281 +YW4= 282 +IGY= 283 +b3I= 284 +bGw= 285 +IEk= 286 +IGw= 287 +IHk= 288 +YXI= 289 +IGc= 290 +IHlvdQ== 291 +ZWQ= 292 +IGFuZA== 293 +IGlu 294 +IG9m 295 +YXM= 296 +IG4= 297 +b20= 298 +aWM= 299 +IHRoYXQ= 300 +dXM= 301 +ZXQ= 302 +dmU= 303 +YWw= 304 +b3c= 305 +bGU= 306 +IGlz 307 +IGU= 308 +IGl0 309 +b3Q= 310 +J3M= 311 +IGJl 312 +aW9u 313 +IFQ= 314 +IHdo 315 +IEE= 316 +ZW50 317 +IFM= 318 +IHJl 319 +YXk= 320 +IHdl 321 +IG9u 322 +ZXJl 323 +IGhh 324 +dXQ= 325 +YWM= 326 +aWQ= 327 +aWc= 328 +b3M= 329 +a2U= 330 +dmVy 331 +aW0= 332 +INA= 333 +IFRo 334 +YW0= 335 +YWxs 336 +IGZvcg== 337 +ZWw= 338 +Y2g= 339 +cm8= 340 +IHRoaXM= 341 +IHN0 342 +IFc= 343 +IHU= 344 +YWQ= 345 +b3V0 346 +aXI= 347 +bGQ= 348 +Y3Q= 349 +IGs= 350 +aWY= 351 +IGdv 352 +Li4= 353 +0L4= 354 +aXRo 355 +bHk= 356 +aHQ= 357 +cXU= 358 +IC0= 359 +IGRv 360 +IGo= 361 +IGhhdmU= 362 +IEI= 363 +IGFu 364 +IHdpdGg= 365 +IGFyZQ== 366 +IHI= 367 +IGRl 368 +IHNl 369 +IHNv 370 +IHY= 371 +c3Q= 372 +aWxs 373 +dXI= 374 +IGxp 375 +IE0= 376 +ZXN0 377 +b2Q= 378 +YWxseQ== 379 +J3Q= 380 +dXN0 381 +IGFz 382 +IEM= 383 +Y2U= 384 +IG1l 385 +0LA= 386 +0LU= 387 +aWw= 388 +IEg= 389 +IHdhcw== 390 +dGVy 391 +dGg= 392 +IGNhbg== 393 +YW50 394 +IGNvbQ== 395 +b3Vy 396 +aWdodA== 397 +IFk= 398 +YXRpb24= 399 +IEFuZA== 400 +b2w= 401 +IHNo 402 +0YI= 403 +b3A= 404 +c2U= 405 +IG5vdA== 406 +IFNv 407 +IG5l 408 +dW4= 409 +IGFi 410 +IGxpa2U= 411 +IGF0 412 +IEQ= 413 +aWU= 414 +IGhl 415 +IGNvbg== 416 +IGNo 417 +b3Jl 418 +IGFs 419 +IG9y 420 +IHF1 421 +IE8= 422 +b21l 423 +cmE= 424 +dWw= 425 +IE4= 426 +cHA= 427 +IHlvdXI= 428 +b3VsZA== 429 +IFA= 430 +IGZy 431 +Z2U= 432 +ZXJz 433 +J3Jl 434 +0Lg= 435 +IHRoZXk= 436 +IHdoYXQ= 437 +dXNl 438 +IGFsbA== 439 +IFRoZQ== 440 +IEw= 441 +ZXNz 442 +ZW0= 443 +IGtu 444 +IGp1c3Q= 445 +YXJ0 446 +IHBybw== 447 +dmVyeQ== 448 +dW0= 449 +IGxv 450 +IOw= 451 +IG15 452 +b2s= 453 +IGV4 454 +YWI= 455 +IHRoZXJl 456 +IGJ1dA== 457 +IGtub3c= 458 +IHN1 459 +IEc= 460 +0YE= 461 +IEU= 462 +IG1h 463 +0L7Q 464 +IGVu 465 +IGFib3V0 466 +IEl0 467 +aXN0 468 +IHdvcg== 469 +cmk= 470 +aW5k 471 +IG9uZQ== 472 +YXRl 473 +YW5k 474 +aW5r 475 +IGxl 476 +b3J0 477 +J20= 478 +IEY= 479 +aWNo 480 +0YA= 481 +aWRl 482 +IGdldA== 483 +IG91dA== 484 +Li4u 485 +IHdpbGw= 486 +44E= 487 +aXZl 488 +0L0= 489 +IGZyb20= 490 +YWlu 491 +IFdl 492 +IHVw 493 +cGU= 494 +cmVz 495 +Y2E= 496 +IFI= 497 +IGlm 498 +IHBs 499 +IGRvbg== 500 +YWNr 501 +IDE= 502 +ICI= 503 +IHRy 504 +IHVz 505 +IFdo 506 +aXR5 507 +IEo= 508 +IFlvdQ== 509 +IGhlcmU= 510 +aGVy 511 +IHNvbWU= 512 +b3Vn 513 +YWs= 514 +YXJk 515 +IGdvaW5n 516 +IHVu 517 +bWVudA== 518 +IHRoaW5r 519 +IHBl 520 +ZW5k 521 +ICg= 522 +Y2F1c2U= 523 +IHRpbQ== 524 +YXN0 525 +w6k= 526 +IG91cg== 527 +IHdhbnQ= 528 +YW1l 529 +aWVz 530 +IOs= 531 +dWQ= 532 +aW5l 533 +IHJlYWxseQ== 534 +IHRl 535 +IHNlZQ== 536 +Y2k= 537 +IGJ5 538 +c28= 539 +dXJl 540 +b3Nl 541 +IFs= 542 +YXJl 543 +IG1vcmU= 544 +YWg= 545 +b25l 546 +Y2s= 547 +b3BsZQ== 548 +0LDQ 549 +IHRoZW4= 550 +IHRoaW5n 551 +IHRoZW0= 552 +dmVu 553 +b3VuZA== 554 +b3N0 555 +b25n 556 +ZWN0 557 +IHJpZ2h0 558 +YWc= 559 +IGludA== 560 +IHBlb3BsZQ== 561 +IHdoZW4= 562 +b3Vz 563 +cGw= 564 +IHRpbWU= 565 +IGlt 566 +IHdobw== 567 +IDI= 568 +YXA= 569 +IGJlY2F1c2U= 570 +aGluZw== 571 +IG5v 572 +aWNl 573 +IGxvb2s= 574 +IGhhcw== 575 +IHdvdWxk 576 +IGhvdw== 577 +YWN0 578 +IGZl 579 +bnQ= 580 +b3VnaA== 581 +IHBy 582 +IEJ1dA== 583 +IHNheQ== 584 +0YM= 585 +IG5vdw== 586 +IG1hbg== 587 +IHZlcnk= 588 +IHdvcms= 589 +aXo= 590 +IEs= 591 +aXY= 592 +aXR0 593 +IGFy 594 +ZXA= 595 +IGNs 596 +IHdoaWNo 597 +IGNv 598 +YW5z 599 +J3Zl 600 +IHNh 601 +ZmY= 602 +J2xs 603 +IGFueQ== 604 +IGFjdA== 605 +IHll 606 +YmVy 607 +YWNo 608 +YWdl 609 +cGVy 610 +IGFsc28= 611 +ZmVy 612 +IHRoZXNl 613 +IGFk 614 +0LXQ 615 +dGhlcg== 616 +YWNl 617 +aWNr 618 +YWtl 619 +cmVhdA== 620 +aXJl 621 +dWU= 622 +IGFn 623 +IFU= 624 +dWNo 625 +aW9ucw== 626 +cnk= 627 +MDA= 628 +bmE= 629 +IGRpZA== 630 +IHF1ZQ== 631 +IGhhZA== 632 +IGV2ZXJ5 633 +IEhl 634 +IGxh 635 +IHdheQ== 636 +IHNw 637 +Ymxl 638 +IFRoaXM= 639 +YXNz 640 +IHRoZWly 641 +aXRl 642 +IG5lZWQ= 643 +IHBhcnQ= 644 +IHdlcmU= 645 +IGJhY2s= 646 +aXA= 647 +b3du 648 +b21ldA== 649 +YmU= 650 +YXNl 651 +IG1ha2U= 652 +aXJzdA== 653 +aWE= 654 +ZW5jZQ== 655 +YW5n 656 +YW5r 657 +IGdvdA== 658 +IHByZQ== 659 +IGNvbnQ= 660 +IG90aGVy 661 +cHQ= 662 +IFRoYXQ= 663 +b2c= 664 +IGdvb2Q= 665 +IGludG8= 666 +YWxr 667 +IGJlZW4= 668 +IGFt 669 +IG92ZXI= 670 +dWFsbHk= 671 +IOI= 672 +7J0= 673 +IHVuZA== 674 +aGU= 675 +d2F5 676 +IGdy 677 +0Yw= 678 +IGRpZg== 679 +IHBlcg== 680 +0Y8= 681 +IElu 682 +IHR3 683 +b25k 684 +YXJz 685 +aW50 686 +b3Jt 687 +IGxvdA== 688 +IHdoZXJl 689 +IMM= 690 +IFY= 691 +IHNvbWV0 692 +0Ls= 693 +ZW5z 694 +IGd1 695 +IGFj 696 +dWc= 697 +0Ys= 698 +xLE= 699 +IGZpcnN0 700 +cmVl 701 +IGhpcw== 702 +aXR0bGU= 703 +IGltcA== 704 +IG1v 705 +YXY= 706 +IGxpdHRsZQ== 707 +IFdoYXQ= 708 +IG11Y2g= 709 +IHo= 710 +IOo= 711 +YWJsZQ== 712 +INC/ 713 +IHBv 714 +IGNvbXA= 715 +bmU= 716 +IGRpcw== 717 +IGxldA== 718 +YW5jZQ== 719 +IGhlcg== 720 +IHRoaW5ncw== 721 +IHN0YXJ0 722 +dWx0 723 +IGFwcA== 724 +IHJlcw== 725 +IGZv 726 +IGNvdWxk 727 +IGludGVy 728 +IHRob3Nl 729 +IGRlcw== 730 +IHdlbGw= 731 +IHR3bw== 732 +IGtpbmQ= 733 +eHQ= 734 +cmVzcw== 735 +ZWx5 736 +w6Q= 737 +IGJy 738 +IHRocg== 739 +INCy 740 +IGk= 741 +aXNo 742 +IGRpZmZlcg== 743 +IHJv 744 +IFN0 745 +IHNvbWV0aGluZw== 746 +IHRha2U= 747 +IGJv 748 +eXM= 749 +IHNoZQ== 750 +IHRhbGs= 751 +bG8= 752 +0Yc= 753 +IGV2ZW4= 754 +0Lo= 755 +44A= 756 +INC9 757 +IGJ1 758 +IElm 759 +IGRvd24= 760 +IENo 761 +YWRl 762 +YXRpb25z 763 +IHVzZQ== 764 +b3Jk 765 +IG9mZg== 766 +IGFjdHVhbGx5 767 +IHNwZQ== 768 +ZHU= 769 +YXRlZA== 770 +YXRlcg== 771 +b3Nz 772 +bmluZw== 773 +w7w= 774 +IGRvZXM= 775 +INGB 776 +IG5ldw== 777 +IGJldA== 778 +dmVs 779 +Y2Vzcw== 780 +cGxl 781 +IGhhcHA= 782 +dGluZw== 783 +b25uYQ== 784 +IGVz 785 +IGRheQ== 786 +IG9ubHk= 787 +aWdu 788 +a2F5 789 +c2Vs 790 +ZW50cw== 791 +b3VudA== 792 +aWxk 793 +aWxl 794 +IHNj 795 +IGhpbQ== 796 +IGFnYWlu 797 +dmluZw== 798 +IGdvbm5h 799 +IGNvbW0= 800 +IGhlbA== 801 +b3RoZXI= 802 +IGtl 803 +aWNhbA== 804 +IDM= 805 +IGVs 806 +IHRocm91Z2g= 807 +IGNvbWU= 808 +YXJr 809 +ZGF5 810 +aWVy 811 +w7M= 812 +IHRoYW4= 813 +IFRoZXk= 814 +IG1heQ== 815 +IHNlcg== 816 +7ZU= 817 +IGNhbGw= 818 +IGRpZmZlcmVudA== 819 +IHNob3VsZA== 820 +IFRoZXJl 821 +YXJ5 822 +IE5vdw== 823 +44I= 824 +dGhpbmc= 825 +d2U= 826 +b3J5 827 +ZnRlcg== 828 +IHB1dA== 829 +b3Jz 830 +aWFs 831 +64s= 832 +IHVuZGVy 833 +IGluYw== 834 +IFll 835 +dWI= 836 +Zm9ybQ== 837 +IHZpZGU= 838 +4Lg= 839 +dmVycw== 840 +IGZlZWw= 841 +w6E= 842 +b2R5 843 +ZnQ= 844 +Zm9yZQ== 845 +IGVt 846 +Z2V0 847 +IHNhaWQ= 848 +aXRpb24= 849 +IHJlYw== 850 +aW91cw== 851 +YXRjaA== 852 +IHRyeQ== 853 +IGhlbHA= 854 +IHNob3c= 855 +0LQ= 856 +IGJpdA== 857 +dWxs 858 +0LI= 859 +0YLQvg== 860 +Z3I= 861 +IHBsYXk= 862 +aWZl 863 +YWls 864 +IFllYWg= 865 +IHF1ZXN0 866 +IG1hbnk= 867 +IHBlcnM= 868 +IGdyZWF0 869 +w60= 870 +IGVzdA== 871 +bmc= 872 +IOKZ 873 +dHk= 874 +bGE= 875 +IE9o 876 +INc= 877 +4K4= 878 +IEJl 879 +YWR5 880 +IG1vc3Q= 881 +Y3Rpb24= 882 +IE5v 883 +IGRvaW5n 884 +IGJlaW5n 885 +IHRvbw== 886 +Y2Vz 887 +IGJs 888 +LiI= 889 +IHJlbQ== 890 +aXNz 891 +b25z 892 +Pj4= 893 +cnU= 894 +d24= 895 +b250 896 +aWI= 897 +ZWxs 898 +IHNt 899 +b3Ro 900 +dWFs 901 +ID4+ 902 +IHBo 903 +bGVz 904 +b2M= 905 +ZnVs 906 +IHNlYw== 907 +aXNl 908 +IGFkZA== 909 +aWdo 910 +ZXJ0 911 +IHNhbWU= 912 +4oA= 913 +IG1lYW4= 914 +IGZpbmQ= 915 +ZWs= 916 +IGVuZA== 917 +LS0= 918 +0Lw= 919 +IHN0aWxs 920 +YXo= 921 +ICc= 922 +IG1pbg== 923 +IHllYXJz 924 +dXJu 925 +IGFyb3VuZA== 926 +c2VsZg== 927 +IHdy 928 +YnM= 929 +b3VnaHQ= 930 +IOKZqg== 931 +IGZs 932 +YW5nZQ== 933 +IGFmdGVy 934 +IHBvaW50 935 +bWVy 936 +dmVk 937 +IGxvbmc= 938 +b3k= 939 +5Lg= 940 +IGNy 941 +d2F5cw== 942 +IHN5 943 +IHRyYQ== 944 +IDIw 945 +YXZl 946 +IGNoZQ== 947 +IGVudA== 948 +IGJlZm9yZQ== 949 +cGg= 950 +IGF0dA== 951 +aWFu 952 +aWx5 953 +IHBlcnNvbg== 954 +IGJpZw== 955 +IHNjaA== 956 +IHJlYWw= 957 +IG5leHQ= 958 +IGxvdmU= 959 +IHZpZGVv 960 +IExldA== 961 +IGZpbg== 962 +IG1haw== 963 +aWJsZQ== 964 +IHRvZGF5 965 +ZXJt 966 +IEFs 967 +b3dlcg== 968 +YW5u 969 +aXg= 970 +IHBhcg== 971 +IHN0dWQ= 972 +w7Y= 973 +IGltcG9ydA== 974 +dGU= 975 +IGdpdmU= 976 +dmVz 977 +IGRpZQ== 978 +IGRlYw== 979 +IHRlbGw= 980 +INC6 981 +0YHRgg== 982 +IHdoeQ== 983 +aWNhbGx5 984 +aWN0 985 +cmVk 986 +IGJhcw== 987 +IHN1cmU= 988 +IGJlbA== 989 +YXRpbmc= 990 +IHRhaw== 991 +IHNldA== 992 +IGxpZmU= 993 +IGRpZG4= 994 +2Kc= 995 +b2I= 996 +dW5k 997 +YXRo 998 +IG9w 999 +INC+ 1000 +YWl0 1001 +IHdvcmxk 1002 +IHN1cHA= 1003 +aW8= 1004 +IGNvdXI= 1005 +INC4 1006 +d2FyZA== 1007 +0LXQvQ== 1008 +IGFsd2F5cw== 1009 +dXA= 1010 +IGhhbmQ= 1011 +IEhvdw== 1012 +Y2lhbA== 1013 +IGNvbnM= 1014 +INE= 1015 +IGluZA== 1016 +IDQ= 1017 +IEFz 1018 +IGZ1bg== 1019 +amVjdA== 1020 +IGltcG9ydGFudA== 1021 +IHN1cg== 1022 +ZXc= 1023 +YXRlcw== 1024 +IDU= 1025 +IGRp 1026 +IG1hZGU= 1027 +IGlucw== 1028 +IGFzaw== 1029 +IGV0 1030 +IG51bQ== 1031 +IGNhcg== 1032 +IE9rYXk= 1033 +IHNpbQ== 1034 +aWs= 1035 +IGxhc3Q= 1036 +IEdv 1037 +IG11cw== 1038 +IHJlbA== 1039 +dWxhcg== 1040 +tOw= 1041 +IFdlbGw= 1042 +cGVjdA== 1043 +IFRoYW5r 1044 +IHRocmVl 1045 +w6M= 1046 +44M= 1047 +IGludg== 1048 +IGdlbg== 1049 +bGlj 1050 +IGhhcHBlbg== 1051 +64o= 1052 +aWVu 1053 +ZXZlcg== 1054 +0L7Qsg== 1055 +IHN0cg== 1056 +IEFsbA== 1057 +IGluc3Q= 1058 +IOKA 1059 +IGRlZg== 1060 +IHNs 1061 +IG1pZ2h0 1062 +dW5n 1063 +IHllYXI= 1064 +IG93bg== 1065 +IGtlZXA= 1066 +Ym9keQ== 1067 +ZGVy 1068 +INGC 1069 +INC0 1070 +IGFub3RoZXI= 1071 +IG1vZA== 1072 +IGV2 1073 +IGd1eXM= 1074 +IGFibGU= 1075 +w6Nv 1076 +cXVl 1077 +aWRlbnQ= 1078 +IFllcw== 1079 +IGl0cw== 1080 +IHBsYWNl 1081 +IHByb2R1 1082 +YXJu 1083 +INC8 1084 +IHJlcA== 1085 +IGV4cGVy 1086 +IGZhbQ== 1087 +aXRpZXM= 1088 +aWZpYw== 1089 +IGhpZ2g= 1090 +aWVk 1091 +b29s 1092 +aWV3 1093 +0LXRgg== 1094 +cmVu 1095 +IGRvbmU= 1096 +IC4uLg== 1097 +64qU 1098 +c3RlbQ== 1099 +IFNl 1100 +IGJldHRlcg== 1101 +Y29tZQ== 1102 +IGRlbA== 1103 +IHR5 1104 +IHVt 1105 +IGhv 1106 +IEFu 1107 +IG1vbg== 1108 +aW5ncw== 1109 +IHNr 1110 +IG9i 1111 +Y29t 1112 +YmxlbQ== 1113 +b3Bl 1114 +c3RhbmQ= 1115 +J2Q= 1116 +bWVudHM= 1117 +IGVsZQ== 1118 +IElz 1119 +IGRh 1120 +IHJlZw== 1121 +bGVhc2U= 1122 +aWtl 1123 +YWxz 1124 +aXpl 1125 +6rA= 1126 +IGNhcmU= 1127 +IG5ldmVy 1128 +7J20 1129 +ZXNl 1130 +IG1ldA== 1131 +b2xvZw== 1132 +IFdoZW4= 1133 +dWNr 1134 +0LXRgA== 1135 +IMOp 1136 +IGRhdA== 1137 +w6c= 1138 +IGV4YW0= 1139 +aWxpdHk= 1140 +IGRldA== 1141 +Y3Jp 1142 +IHVzZWQ= 1143 +IERv 1144 +IHRyYW5z 1145 +ZWc= 1146 +dGVu 1147 +0Y4= 1148 +Y3Vz 1149 +IHNlY29uZA== 1150 +IGJlc3Q= 1151 +IGhhcmQ= 1152 +IGlkZQ== 1153 +IHByb2JsZW0= 1154 +6rM= 1155 +IFVu 1156 +0YU= 1157 +IM4= 1158 +IHdhdGNo 1159 +IFNo 1160 +YXR0ZXI= 1161 +IHByZXQ= 1162 +IGRlcg== 1163 +IGNvdXJzZQ== 1164 +xZ8= 1165 +YXRpdmU= 1166 +aWNz 1167 +IHF1ZXN0aW9u 1168 +dXRl 1169 +7Jc= 1170 +IEZvcg== 1171 +YXRoZXI= 1172 +IGNvbA== 1173 +aWVuZA== 1174 +IO0= 1175 +IFo= 1176 +IGRvZXNu 1177 +YXJjaA== 1178 +IGludGVyZXN0 1179 +IHBvbA== 1180 +IGNvcg== 1181 +aWVuY2U= 1182 +IHByZXM= 1183 +IGVhY2g= 1184 +IHN5c3RlbQ== 1185 +IGZhY3Q= 1186 +aWVs 1187 +YWJseQ== 1188 +IGVy 1189 +IHJ1bg== 1190 +IOyd 1191 +IHRvcA== 1192 +bmVy 1193 +IHRob3VnaHQ= 1194 +IGVhcw== 1195 +aWVudA== 1196 +IGNyZQ== 1197 +0Yg= 1198 +IGNvbW11bg== 1199 +eWU= 1200 +cmVhZHk= 1201 +bGxvdw== 1202 +IGV2ZXJ5dGhpbmc= 1203 +b21t 1204 +IG1lZA== 1205 +mpQ= 1206 +IGNvdW50 1207 +aXRz 1208 +IGNvbXBs 1209 +aGlw 1210 +2YQ= 1211 +b29r 1212 +IHRvZ2V0 1213 +IHRvZ2V0aGVy 1214 +YW1w 1215 +IGdhbWU= 1216 +IGFscmVhZHk= 1217 +0LDQuw== 1218 +IGNhbGxlZA== 1219 +YWxl 1220 +xYI= 1221 +IE15 1222 +IHVuZGVyc3RhbmQ= 1223 +IGRy 1224 +IG1vbQ== 1225 +aXRlZA== 1226 +0L7Quw== 1227 +IHVzaW5n 1228 +enk= 1229 +IG51bWJlcg== 1230 +44CB 1231 +Y2Vk 1232 +IGNsZQ== 1233 +0L3Qvg== 1234 +64uk 1235 +aW5jZQ== 1236 +IGxvb2tpbmc= 1237 +IHByZXR0eQ== 1238 +IHByb2I= 1239 +IFNoZQ== 1240 +IHZl 1241 +IGdldHRpbmc= 1242 +IHdlZWs= 1243 +IGVmZg== 1244 +dWZm 1245 +YWly 1246 +dWVz 1247 +ZXJu 1248 +IFE= 1249 +b3Vw 1250 +ZW50aW9u 1251 +IHNpZGU= 1252 +0L7QvA== 1253 +IGZvcm0= 1254 +IGJ1cw== 1255 +IGFzcw== 1256 +IGVk 1257 +YXNvbg== 1258 +d2Vlbg== 1259 +4oCm 1260 +IHR1cm4= 1261 +IGN1cg== 1262 +IGNvbGw= 1263 +IGRpcmU= 1264 +IEdvZA== 1265 +IDEw 1266 +IGVxdQ== 1267 +INCx 1268 +IG9wZW4= 1269 +IHN1Y2g= 1270 +aXJk 1271 +0LDQug== 1272 +IGVhcg== 1273 +xJk= 1274 +Z2Fu 1275 +IHBhcnRpYw== 1276 +IGZyaWVuZA== 1277 +IGV4cA== 1278 +IGV4dA== 1279 +IGhvbWU= 1280 +IHdhdGVy 1281 +IE9u 1282 +0YLRjA== 1283 +b3Jr 1284 +INC/0YA= 1285 +IG1vdmU= 1286 +bmVzcw== 1287 +ZW5zZQ== 1288 +aG8= 1289 +IGNoYXI= 1290 +Y28= 1291 +aW5z 1292 +IGJvdGg= 1293 +IDE5 1294 +IGdyYQ== 1295 +IGJldHdlZW4= 1296 +4bs= 1297 +IOyV 1298 +YXNo 1299 +IFJl 1300 +YWk= 1301 +YWx0aA== 1302 +dXJlcw== 1303 +ZW1iZXI= 1304 +IGF2 1305 +IHZlcg== 1306 +w6o= 1307 +b25leQ== 1308 +IHRoYW5r 1309 +IG1heWJl 1310 +dWM= 1311 +aW1l 1312 +6rOg 1313 +IGF3YXk= 1314 +IG5hbWU= 1315 +b3VzZQ== 1316 +IGFjYw== 1317 +IG11c2lj 1318 +IGNoYW5nZQ== 1319 +IHBhc3M= 1320 +Z2Vy 1321 +IGJ1aWxk 1322 +IHZhbA== 1323 +aW5lc3M= 1324 +YW55 1325 +IGZldw== 1326 +tOs= 1327 +dGE= 1328 +IGxpc3Q= 1329 +w6U= 1330 +IG9sZA== 1331 +IOye 1332 +IHNvcnQ= 1333 +IG1lbQ== 1334 +IGNh 1335 +Y2VwdA== 1336 +IGdlbmVy 1337 +IHllYWg= 1338 +IHdoaWxl 1339 +IGFueXRoaW5n 1340 +cmlj 1341 +Z3JhbQ== 1342 +IGVpbg== 1343 +Y3k= 1344 +dXJpbmc= 1345 +IERl 1346 +IHBvd2Vy 1347 +IGNvbWluZw== 1348 +IHdvcmQ= 1349 +IC0t 1350 +IGJlbGll 1351 +IGZvdW5k 1352 +dG8= 1353 +0L8= 1354 +IG1lYW5z 1355 +IGluZm9ybQ== 1356 +INg= 1357 +INGH 1358 +IHNtYWxs 1359 +MDAw 1360 +IGNhbWU= 1361 +IO2V 1362 +d2g= 1363 +IHdvcmtpbmc= 1364 +IGV4YW1wbGU= 1365 +IHBvcw== 1366 +IGRlcA== 1367 +6rI= 1368 +5Lo= 1369 +b3Rl 1370 +IGRlbQ== 1371 +7Kc= 1372 +dHM= 1373 +IHZhcg== 1374 +YXV0 1375 +IHRyaQ== 1376 +Y2hu 1377 +IGhlYWQ= 1378 +IHdob2xl 1379 +15k= 1380 +emU= 1381 +IHRyeWluZw== 1382 +IHRlbQ== 1383 +IGNvdQ== 1384 +ZXRz 1385 +IDY= 1386 +IGZpbA== 1387 +dmVsb3A= 1388 +IGNhc2U= 1389 +4K8= 1390 +IHByb2JhYmx5 1391 +IG9rYXk= 1392 +IHBsYW4= 1393 +IHNpdA== 1394 +IHNjaG9vbA== 1395 +IFRoZW4= 1396 +uOs= 1397 +bWU= 1398 +IHByb2Nlc3M= 1399 +IGZhcg== 1400 +IHJlYWQ= 1401 +IHBvc3M= 1402 +IGJyZQ== 1403 +IHNvbA== 1404 +aWNodA== 1405 +IHN1cHBvcnQ= 1406 +IFRv 1407 +ZXJ0YWlu 1408 +IHN0YXJ0ZWQ= 1409 +IGNhcA== 1410 +IGxlZnQ= 1411 +IGRhdGE= 1412 +IHRpbWVz 1413 +0LXQuw== 1414 +IHdhbnRlZA== 1415 +0LDQvQ== 1416 +IHRhbGtpbmc= 1417 +IGlzdA== 1418 +IGhhdmluZw== 1419 +dW1w 1420 +IGNvbnRpbg== 1421 +IHN1Yg== 1422 +INC3 1423 +cHI= 1424 +64uI 1425 +aW5h 1426 +xbw= 1427 +IGNyZWF0 1428 +b2Rl 1429 +15U= 1430 +5pg= 1431 +ISE= 1432 +IHRlcm0= 1433 +aXNt 1434 +0L7QtA== 1435 +IEJlY2F1c2U= 1436 +IHdlbnQ= 1437 +aWRlcg== 1438 +IHByb3Y= 1439 +IGNoaWxk 1440 +IGRlbg== 1441 +IGxpZ2h0 1442 +YnI= 1443 +s9C+ 1444 +b2g= 1445 +IGJvb2s= 1446 +INk= 1447 +dXRpb24= 1448 +IEp1c3Q= 1449 +ZW5l 1450 +IGZvdXI= 1451 +IHZpcw== 1452 +6rCA 1453 +IGhvcGU= 1454 +IG1ha2luZw== 1455 +IExl 1456 +7JU= 1457 +IG9wcA== 1458 +YXU= 1459 +IG1vbmV5 1460 +IHByb2dyYW0= 1461 +w6g= 1462 +IHN0YW5k 1463 +SU4= 1464 +IHNpZ24= 1465 +IGxlYXJu 1466 +w6A= 1467 +IERvbg== 1468 +IHRlYW0= 1469 +INC90LA= 1470 +bHVk 1471 +IHJlc3Q= 1472 +aWNlcw== 1473 +5pw= 1474 +INGA 1475 +IGF1dA== 1476 +IGxlYWQ= 1477 +YXRpb25hbA== 1478 +ZGU= 1479 +Z3k= 1480 +IG5pY2U= 1481 +IGRhcw== 1482 +IGRpc3Q= 1483 +IGh1bQ== 1484 +IE9uZQ== 1485 +5og= 1486 +IGNvbWVz 1487 +IGpv 1488 +IGNlbnQ= 1489 +IGV4cGw= 1490 +IG1hcms= 1491 +cmVlbg== 1492 +bGVk 1493 +Z2lu 1494 +7JqU 1495 +IGxldmVs 1496 +IGNvbmY= 1497 +dXNo 1498 +IGRldmVsb3A= 1499 +IHRlc3Q= 1500 +ZW5n 1501 +dmlvdXM= 1502 +YXR1cmU= 1503 +0LXQvA== 1504 +cmV0 1505 +IGpl 1506 +IHN0dWZm 1507 +IGNsYXNz 1508 +b3dz 1509 +IOq3 1510 +IHNp 1511 +IGxlcw== 1512 +cm9w 1513 +55o= 1514 +IHBvcg== 1515 +IHdhcg== 1516 +7JeQ 1517 +IGV2ZXJ5b25l 1518 +IGdl 1519 +IGNoZWNr 1520 +b3R0 1521 +IHNpbmc= 1522 +IGFydA== 1523 +IGZvbGxvdw== 1524 +IDIwMQ== 1525 +IEZy 1526 +YWlz 1527 +7JY= 1528 +zrE= 1529 +5bA= 1530 +IMOg 1531 +aW1lcw== 1532 +IHJldA== 1533 +IGNoYW5n 1534 +IHB1Yg== 1535 +IGluZg== 1536 +IHRlY2hu 1537 +YWRh 1538 +aXZlcw== 1539 +IGJlaA== 1540 +IGxvb2tz 1541 +44CC 1542 +0Lc= 1543 +IFdoeQ== 1544 +IGVub3VnaA== 1545 +IGJyYQ== 1546 +aXRjaA== 1547 +5Ls= 1548 +IGFkdg== 1549 +0LE= 1550 +IHdpdGhvdXQ= 1551 +d2Vy 1552 +bWVyaWM= 1553 +ZGVu 1554 +IGNvbXBsZXQ= 1555 +IGlkZWE= 1556 +dGVycw== 1557 +b2Nr 1558 +IGRlZmlu 1559 +IGV2ZXI= 1560 +IGds 1561 +IG9uY2U= 1562 +IGJyaW5n 1563 +IHNheWluZw== 1564 +IGFucw== 1565 +IGhlYXI= 1566 +bmVjdA== 1567 +IGxlc3M= 1568 +Z28= 1569 +cmVhbQ== 1570 +YWRv 1571 +7J4= 1572 +IG1pbmQ= 1573 +ZW50ZQ== 1574 +IGZ1bGw= 1575 +IGJhZA== 1576 +IHdvbQ== 1577 +IHNvbWVvbmU= 1578 +IGR1 1579 +IHdvbg== 1580 +IGNvbnRybw== 1581 +b3J0dW4= 1582 +IGhlYWx0aA== 1583 +IGNobw== 1584 +IEFy 1585 +IGNvbmM= 1586 +IGluZm9ybWF0aW9u 1587 +IHN0b3A= 1588 +YXR0 1589 +YXRlbHk= 1590 +5L0= 1591 +IGdyb3Vw 1592 +INGD 1593 +IHF1aXRl 1594 +IHJlc3A= 1595 +RVI= 1596 +dWdodA== 1597 +6rg= 1598 +bWFu 1599 +aXplZA== 1600 +IEJy 1601 +IHJlbWVtYmVy 1602 +IGZhbWlseQ== 1603 +IGJ1c2luZXNz 1604 +YXc= 1605 +IHNwZWM= 1606 +IGF1 1607 +IE9y 1608 +xIU= 1609 +IHNlZW4= 1610 +IGxhcg== 1611 +IDc= 1612 +Z2c= 1613 +YmVycw== 1614 +IGRyYQ== 1615 +IG1vbnRo 1616 +IHNheXM= 1617 +IGlzcw== 1618 +IGxpdmU= 1619 +IGxpbmU= 1620 +IG1vbWVudA== 1621 +IGV4Yw== 1622 +ZWxz 1623 +IHNvdW5k 1624 +IGNvb2w= 1625 +IGxvYw== 1626 +IGNlcnRhaW4= 1627 +IGRyaQ== 1628 +0L7Rgg== 1629 +YW1lcw== 1630 +IG11c3Q= 1631 +bnk= 1632 +0LjRgg== 1633 +IGtpZA== 1634 +IGluY2x1ZA== 1635 +7J2E 1636 +YXRvcg== 1637 +xJ8= 1638 +aGE= 1639 +YXJlZA== 1640 +IHNlZW0= 1641 +0Lk= 1642 +7IQ= 1643 +IGVsc2U= 1644 +IOyg 1645 +aXJs 1646 +IDg= 1647 +IHZv 1648 +IHF1ZXN0aW9ucw== 1649 +aW5lcw== 1650 +ZWU= 1651 +w7xy 1652 +IEFtZXJpYw== 1653 +IHN0b3J5 1654 +IHNlcnY= 1655 +dmVybg== 1656 +YWdlcw== 1657 +bGFuZA== 1658 +IOKAkw== 1659 +ZXJh 1660 +IENhbg== 1661 +IHBvcA== 1662 +ZXRoZXI= 1663 +IG5h 1664 +IG9yZGVy 1665 +IG1ha2Vz 1666 +IHNpbmNl 1667 +Y29u 1668 +Y3Rvcg== 1669 +IHRob3VnaA== 1670 +IHByb2R1Y3Q= 1671 +0LvQuA== 1672 +IGxlZw== 1673 +IG1lZXQ= 1674 +YWxm 1675 +0YHRjw== 1676 +dW5jaA== 1677 +aXRlcg== 1678 +b3Zl 1679 +15XX 1680 +aWV0 1681 +0LDQvA== 1682 +aXRhbA== 1683 +IHN1cGVy 1684 +bGluZw== 1685 +IHBheQ== 1686 +IHBhcmE= 1687 +IGpvYg== 1688 +IEhlcmU= 1689 +IHN3 1690 +a3M= 1691 +cHRpb24= 1692 +bWE= 1693 +IGJlbGlldmU= 1694 +rOs= 1695 +IHdhaXQ= 1696 +0L7QuQ== 1697 +IHVudA== 1698 +IHF1aWNr 1699 +aHI= 1700 +INGN 1701 +IFBybw== 1702 +IG1lbg== 1703 +4Lk= 1704 +IGRheXM= 1705 +IGdvZXM= 1706 +IHNwZWFr 1707 +IEF0 1708 +ZW1lbnQ= 1709 +IG1pc3M= 1710 +IGF3 1711 +IGRlc2lnbg== 1712 +IHByb2plY3Q= 1713 +0L7RgA== 1714 +aWo= 1715 +YW50cw== 1716 +YXRz 1717 +IENocg== 1718 +IDk= 1719 +IGN1dA== 1720 +IHJlcXU= 1721 +INC90LU= 1722 +IE5vdA== 1723 +YXN0ZXI= 1724 +IG1pbGw= 1725 +IHBhcnRpY3VsYXI= 1726 +IHBpZQ== 1727 +IHN0dWRlbnRz 1728 +IGZpdmU= 1729 +b3Vu 1730 +IE5l 1731 +IGdp 1732 +IHBhcw== 1733 +IGZyZWU= 1734 +IFNw 1735 +bGljaA== 1736 +IHByb2Y= 1737 +IGVuZw== 1738 +IHByb3Q= 1739 +IExpa2U= 1740 +b3NlZA== 1741 +IGNvbm5lY3Q= 1742 +YXBw 1743 +IOun 1744 +aXRpbmc= 1745 +IGJsbw== 1746 +IGxvcw== 1747 +aXN0cw== 1748 +IGV4cGVyaWVuY2U= 1749 +cmVudA== 1750 +IHN0YXk= 1751 +IGZvb2Q= 1752 +dG9u 1753 +cnVjdA== 1754 +IGhpc3Q= 1755 +dmlldw== 1756 +aW5pbmc= 1757 +bW9zdA== 1758 +aXZlcnM= 1759 +Ym8= 1760 +IFRy 1761 +Z2Vu 1762 +IHBsZWFzZQ== 1763 +IGNvbW11bml0eQ== 1764 +IGNl 1765 +QU4= 1766 +bm8= 1767 +IGJvZHk= 1768 +IGhvdXI= 1769 +IHZlcnM= 1770 +4bo= 1771 +Y2Vy 1772 +IOqw 1773 +IHJlYXNvbg== 1774 +IFJpZ2h0 1775 +IGxhdGVy 1776 +z4Q= 1777 +IGhvdXNl 1778 +IFg= 1779 +0L7QvQ== 1780 +IHN0YXRl 1781 +Zmlj 1782 +5aQ= 1783 +xZs= 1784 +aWVsZA== 1785 +IHByaQ== 1786 +IHBhc3Q= 1787 +IHdhbGs= 1788 +b2xvZ3k= 1789 +ZXJpbmc= 1790 +YW5uYQ== 1791 +IHRlcg== 1792 +IGhvbGQ= 1793 +IG9yZ2Fu 1794 +YmVu 1795 +zr8= 1796 +w7Nu 1797 +IGVmZmVjdA== 1798 +IHlvdXJzZWxm 1799 +IHBsdXM= 1800 +YWo= 1801 +YW5kbw== 1802 +dXJhbA== 1803 +IHJvb20= 1804 +bGVjdA== 1805 +6rKM 1806 +PyI= 1807 +c2lkZQ== 1808 +IGJlY29tZQ== 1809 +0YY= 1810 +IMI= 1811 +b29k 1812 +IGNvbnN0 1813 +IG5pZ2h0 1814 +dXRlcw== 1815 +0LY= 1816 +IGJyZWFr 1817 +IHBhaW4= 1818 +IHN0ZXA= 1819 +aXJlZA== 1820 +IG5vdGhpbmc= 1821 +IHVudGls 1822 +0ZY= 1823 +0LDQsg== 1824 +2Yo= 1825 +IGR1cmluZw== 1826 +7KeA 1827 +bGVzcw== 1828 +b2xs 1829 +0L3Riw== 1830 +zrk= 1831 +ZmVjdA== 1832 +aXZlcg== 1833 +j4Q= 1834 +aXRoZXI= 1835 +eWluZw== 1836 +IGJlZ2lu 1837 +15nX 1838 +aXZpZA== 1839 +IMOn 1840 +IHNhbA== 1841 +IHRh 1842 +IHBvdA== 1843 +ICQ= 1844 +IG1hcg== 1845 +IGNsZWFy 1846 +IGZhY2U= 1847 +IGdyb3c= 1848 +ICo= 1849 +IGluc2lkZQ== 1850 +IGZyaWVuZHM= 1851 +IGxlYXZl 1852 +ZW5u 1853 +IGVhc3k= 1854 +IGFyZWE= 1855 +YWxpdHk= 1856 +b3Vk 1857 +IGVhdA== 1858 +2YY= 1859 +IHB1cg== 1860 +b3Ju 1861 +IHNhdw== 1862 +IGFuc3dlcg== 1863 +IGZyb250 1864 +IGJlYXV0 1865 +vOs= 1866 +IG1hdHRlcg== 1867 +IHNvbg== 1868 +IE5ldw== 1869 +IHJlc3VsdA== 1870 +aWRlcw== 1871 +Y2hl 1872 +IGZ1dA== 1873 +cHM= 1874 +IGZvY3Vz 1875 +IGludGVyZXN0aW5n 1876 +5aU= 1877 +IGFw 1878 +Ii4= 1879 +IGNyZWF0ZQ== 1880 +0L7RgQ== 1881 +IHByZXNz 1882 +cm9zcw== 1883 +IHBpY2s= 1884 +bGluZQ== 1885 +IHRvb2s= 1886 +IE1heQ== 1887 +cm93 1888 +IGljaA== 1889 +mOs= 1890 +IHJlZg== 1891 +IG1vcg== 1892 +cmFjdA== 1893 +YXJlbnQ= 1894 +QVI= 1895 +IGV4YWN0 1896 +IHNwYWNl 1897 +d29yaw== 1898 +0L3QuA== 1899 +IGJpcg== 1900 +IGRldg== 1901 +0LM= 1902 +IHRvbGQ= 1903 +IHB1YmxpYw== 1904 +Y2lhbGx5 1905 +IHZpZXc= 1906 +IEhleQ== 1907 +bWVk 1908 +bGxv 1909 +Y2M= 1910 +IGZhYw== 1911 +IGNvdXBsZQ== 1912 +IGhlYXJ0 1913 +bGVy 1914 +IHJlYWR5 1915 +IGFsbW9zdA== 1916 +YXJpbmc= 1917 +IGhhbGY= 1918 +IE1l 1919 +YXZvcg== 1920 +aXF1ZQ== 1921 +IGNoYXJhYw== 1922 +IHByYWN0 1923 +T04= 1924 +YW5l 1925 +IGls 1926 +0L3QsA== 1927 +IHZp 1928 +bGlzaA== 1929 +aGVhZA== 1930 +IGxlYXN0 1931 +IGJhc2ljYWxseQ== 1932 +YXNlZA== 1933 +cmlnaHQ= 1934 +IHlldA== 1935 +IHRha2luZw== 1936 +IGNvdW50cnk= 1937 +IHdpbg== 1938 +IGlzbg== 1939 +IHBvc3NpYmxl 1940 +IGNhbQ== 1941 +IGluY3Jl 1942 +IHBhdA== 1943 +IHdhbm5h 1944 +IGNvbnNpZGVy 1945 +IGFicw== 1946 +IHdpdGhpbg== 1947 +IGh1bWFu 1948 +IHRoaW5raW5n 1949 +IG9o 1950 +oZw= 1951 +IHF1aQ== 1952 +YXNlcw== 1953 +IDA= 1954 +aXRlbHk= 1955 +IGtpbGw= 1956 +IG1pbA== 1957 +IGludmVzdA== 1958 +aXN0ZXI= 1959 +IHN1Yw== 1960 +aW9uYWw= 1961 +ZWxm 1962 +IHdoZXRoZXI= 1963 +IGNvbnRyb2w= 1964 +IGFnYWluc3Q= 1965 +b3Rz 1966 +64uI64uk 1967 +aW9y 1968 +IHByZXNlbnQ= 1969 +INin 1970 +IHdhdGNoaW5n 1971 +dWJl 1972 +ZXJ2 1973 +IG5pY2h0 1974 +IGdvdmVybg== 1975 +IFRoZXNl 1976 +IDo= 1977 +dWl0 1978 +dWdo 1979 +IHdvcmtz 1980 +b28= 1981 +IHdpcg== 1982 +IGFpcg== 1983 +IFRl 1984 +0LDQtw== 1985 +aXNpb24= 1986 +d2hlcmU= 1987 +IHRvdA== 1988 +am95 1989 +7Is= 1990 +IHZvbA== 1991 +INC1 1992 +IGNsb3Nl 1993 +IEFk 1994 +0Yk= 1995 +aW5lZA== 1996 +IHVuYQ== 1997 +IOq3uOs= 1998 +sOs= 1999 +b3JyeQ== 2000 +IGJybw== 2001 +IGZpbG0= 2002 +aWZ0 2003 +MjA= 2004 +IHR5cGU= 2005 +IGhhcHBlbmVk 2006 +IEFt 2007 +IGdpcmw= 2008 +IEFyZQ== 2009 +d2FyZHM= 2010 +IHBvdXI= 2011 +IGNvbG9y 2012 +ZWx0 2013 +0LDRgQ== 2014 +IHNlbnNl 2015 +bGV4 2016 +IFdpdGg= 2017 +dXNz 2018 +cmli 2019 +IHJlc2U= 2020 +IG5vcm0= 2021 +IGZ1dHVyZQ== 2022 +IGRlYWw= 2023 +ZW5kaW5n 2024 +ZXk= 2025 +IHg= 2026 +ZXJv 2027 +IENs 2028 +dWs= 2029 +IHdoYXRldmVy 2030 +c2VsdmVz 2031 +IHlvdW5n 2032 +7Io= 2033 +IE1hcg== 2034 +IENocmlzdA== 2035 +IGd1ZXNz 2036 +IHBlcmZvcm0= 2037 +IGVuZXI= 2038 +cm9u 2039 +IGhpdA== 2040 +IHdvbmQ= 2041 +IGRpcmVjdA== 2042 +IEV2ZXJ5 2043 +IG9mdGVu 2044 +IGZh 2045 +IGFsb25n 2046 +IGNsaWNr 2047 +IExvb2s= 2048 +IHNpdHU= 2049 +IGhhcHB5 2050 +ZWFk 2051 +IGFnbw== 2052 +IGVuYw== 2053 +IG15c2VsZg== 2054 +IGNvdmVy 2055 +0L7QsQ== 2056 +IG1pZA== 2057 +IGNvc3Q= 2058 +IHRlbg== 2059 +IFNjaA== 2060 +IGV4cGVjdA== 2061 +IHdhc24= 2062 +IHN0cm9uZw== 2063 +aWZ1bA== 2064 +IG9wcG9ydHVu 2065 +aW5hbA== 2066 +eWxl 2067 +IHNoYXJl 2068 +IHRydWU= 2069 +IGFwcHJv 2070 +IGNoYWxs 2071 +IG1pbnV0ZXM= 2072 +IGNoYW5u 2073 +IOuC 2074 +zrU= 2075 +bGk= 2076 +IG1lc3M= 2077 +b3JpZXM= 2078 +cGVjaWFsbHk= 2079 +IHdyb25n 2080 +IHllcw== 2081 +IOyX 2082 +aXJvbg== 2083 +IGFsbG93 2084 +IHN1YnM= 2085 +IGZvcmU= 2086 +IGZpZ2h0 2087 +IHNvY2lhbA== 2088 +IGNyYQ== 2089 +YW5h 2090 +IGFmZg== 2091 +IGVzcw== 2092 +IHdheXM= 2093 +IHNob3J0 2094 +IGZhbGw= 2095 +IGxhdw== 2096 +IFdobw== 2097 +IGVuam95 2098 +IGNhbA== 2099 +IGFjY2Vzcw== 2100 +ZmU= 2101 +IG5vbg== 2102 +IGFjcm9zcw== 2103 +ZXJ5 2104 +dmlvdXNseQ== 2105 +IEV4 2106 +aWRlZA== 2107 +IGxpbms= 2108 +IFBy 2109 +IHRlcm1z 2110 +YWNlcw== 2111 +IGxhbmQ= 2112 +YXppbmc= 2113 +IDE1 2114 +IG11bHQ= 2115 +IHNwZWNpYWw= 2116 +5YA= 2117 +aXZpbmc= 2118 +7J2A 2119 +IHR5cA== 2120 +IHN0ZQ== 2121 +IMQ= 2122 +IGZvcndhcmQ= 2123 +5Y8= 2124 +IGZyZQ== 2125 +IHJlc2VhcmNo 2126 +4K+N 2127 +0LDRgg== 2128 +IG1haW4= 2129 +IHJlY29yZA== 2130 +IGh1 2131 +IGRlZmluaXRlbHk= 2132 +IGVpdGhlcg== 2133 +IGxpc3Rlbg== 2134 +IGtleQ== 2135 +IG1hcmtldA== 2136 +INGH0YLQvg== 2137 +aXphdGlvbg== 2138 +IHZpZGVvcw== 2139 +IGd1eQ== 2140 +IGZpZw== 2141 +IHN0cmE= 2142 +IFBs 2143 +dWxseQ== 2144 +YW1vcw== 2145 +IG1lbnRpb24= 2146 +IHNvbmc= 2147 +IGludGVybg== 2148 +cmFs 2149 +dXJz 2150 +IGhvbg== 2151 +IHZhbHVl 2152 +IGJhcg== 2153 +Y2xl 2154 +0L7Qtg== 2155 +xIc= 2156 +nOs= 2157 +IHp1 2158 +0LjQvA== 2159 +IHNpbmdsZQ== 2160 +IGF1Y2g= 2161 +Y3Vzcw== 2162 +IGdldHM= 2163 +IHNvbWV0aW1lcw== 2164 +5b4= 2165 +YW1i 2166 +bW0= 2167 +Y2luZw== 2168 +IHBlcmZlY3Q= 2169 +IEJs 2170 +b3V0aA== 2171 +7KA= 2172 +IHNjaQ== 2173 +cGFy 2174 +IHJlZA== 2175 +IHBvc3Q= 2176 +IG1vdA== 2177 +IGVsZWN0 2178 +IEV1 2179 +aXRpdmU= 2180 +IFNvbWU= 2181 +IGRlc2NyaQ== 2182 +IGN1cnJlbnQ= 2183 +w6lz 2184 +IHRyZQ== 2185 +IEVu 2186 +IG1pdA== 2187 +RU4= 2188 +iOs= 2189 +aXVt 2190 +IGhlYXJk 2191 +IHNpbXBsZQ== 2192 +bGFy 2193 +IGV2ZXJ5Ym9keQ== 2194 +aWxhcg== 2195 +IG5lZWRz 2196 +IGRpZmZpYw== 2197 +IEdvb2Q= 2198 +dW1lbnQ= 2199 +Y2VudA== 2200 +IG9wZXI= 2201 +0LDRgtGM 2202 +ZXR5 2203 +IGJsYWNr 2204 +IGdpdmVu 2205 +b25lcw== 2206 +IHdlbA== 2207 +6YA= 2208 +IOyVhA== 2209 +IDMw 2210 +QVQ= 2211 +IHN0YXQ= 2212 +b3VjaA== 2213 +IE1y 2214 +0LDRgA== 2215 +IHNobw== 2216 +IGNvbmQ= 2217 +15Q= 2218 +bXk= 2219 +IGNoaWxkcmVu 2220 +IGV1 2221 +0LXQtA== 2222 +7JWE 2223 +dGVybg== 2224 +IHVo 2225 +IGhhcg== 2226 +IHByb20= 2227 +IHB1bGw= 2228 +cmV3 2229 +IGNvbXBhbnk= 2230 +IGJlYXV0aWZ1bA== 2231 +dXN0b20= 2232 +7ZWY 2233 +0LrQuA== 2234 +IHN0cmU= 2235 +IGFtYXppbmc= 2236 +cmllcw== 2237 +IHN1Y2Nlc3M= 2238 +IG1hY2g= 2239 +bm90 2240 +IGRpc2N1c3M= 2241 +IG5hdA== 2242 +pqw= 2243 +IHVuZQ== 2244 +IGRpZmZpY3VsdA== 2245 +IHJpcw== 2246 +zr0= 2247 +IGNhbXA= 2248 +IGJ1eQ== 2249 +IG1hZw== 2250 +cG8= 2251 +IFlvdXI= 2252 +IGJlaGluZA== 2253 +aWNh 2254 +xLFu 2255 +IE9L 2256 +IGxhbmc= 2257 +IHdvbWVu 2258 +IGVudg== 2259 +IHJlY2U= 2260 +IGNoYW5uZWw= 2261 +aWFsbHk= 2262 +dWxl 2263 +IDEy 2264 +dGhlcnM= 2265 +IGJvdHQ= 2266 +IHJlcG9ydA== 2267 +ZW50bHk= 2268 +ZnVsbHk= 2269 +VGhl 2270 +IHNlbnQ= 2271 +IGV2ZW50 2272 +IGVuZXJneQ== 2273 +bHQ= 2274 +IHdvcmRz 2275 +YXJy 2276 +ZGxl 2277 +IGFoZWFk 2278 +YXJkcw== 2279 +2LE= 2280 +IHRvb2w= 2281 +Y29ub20= 2282 +0LXRgQ== 2283 +IGV4YWN0bHk= 2284 +IGZhdm9y 2285 +IGxvdw== 2286 +IHByb3Blcg== 2287 +IOyeiA== 2288 +ICE= 2289 +IHJlbGF0aW9ucw== 2290 +IG1hcw== 2291 +IGtpZHM= 2292 +IGVudGlyZQ== 2293 +dWRl 2294 +2YU= 2295 +IFdoZXJl 2296 +IG9uZXM= 2297 +IGNpdHk= 2298 +b2x1dA== 2299 +IHNpeA== 2300 +YWJpbGl0eQ== 2301 +w7Zy 2302 +aWxp 2303 +IEVz 2304 +IGhhcHBlbnM= 2305 +YWlucw== 2306 +IG1vZGVs 2307 +IHBpY3Q= 2308 +IGVzcGVjaWFsbHk= 2309 +IDEwMA== 2310 +a3Q= 2311 +IHNvb24= 2312 +Ynk= 2313 +cm9kdQ== 2314 +IGFubg== 2315 +IHN1YnNjcmk= 2316 +IFF1 2317 +IGF2YWls 2318 +aW1lbnQ= 2319 +IHZvYw== 2320 +a2E= 2321 +IDIwMA== 2322 +YXBlcg== 2323 +IEluZA== 2324 +IOyn 2325 +aG9y 2326 +jbA= 2327 +am9y 2328 +0LjQuw== 2329 +IHNxdQ== 2330 +QVU= 2331 +YXJuaW5n 2332 +INCz 2333 +SVM= 2334 +INC7 2335 +0LXQuQ== 2336 +eWVz 2337 +5YU= 2338 +INCS 2339 +IG9yaWc= 2340 +0L7Qs9C+ 2341 +IGFza2Vk 2342 +aWx0 2343 +0L7Qsw== 2344 +IGNvbnRpbnVl 2345 +IOyY 2346 +cmFt 2347 +IG90aGVycw== 2348 +RVM= 2349 +b2hu 2350 +IGxheQ== 2351 +IGJhc2Vk 2352 +IHB1 2353 +IGFwcGU= 2354 +IGxpbQ== 2355 +IHByb3A= 2356 +gOs= 2357 +bWlu 2358 +IGhvdA== 2359 +IExh 2360 +IGZhc3Q= 2361 +IHByb3RlY3Q= 2362 +IGFtb3VudA== 2363 +IGFxdQ== 2364 +IGZ1bmQ= 2365 +IGN1c3RvbQ== 2366 +IGN1bHQ= 2367 +IGhhbmRz 2368 +IGhhdmVu 2369 +IGF1ZA== 2370 +IG91dHNpZGU= 2371 +IEFmdGVy 2372 +YXBz 2373 +IGFuaW0= 2374 +cGxveQ== 2375 +IGhhdA== 2376 +IEZpcnN0 2377 +IHRyZWF0 2378 +IGVw 2379 +IG1hdGVy 2380 +IGJ1aWxkaW5n 2381 +IOuw 2382 +5ZA= 2383 +7ISc 2384 +emE= 2385 +dWdodGVy 2386 +IFBl 2387 +bmV5 2388 +ZXRlcg== 2389 +YXRpYw== 2390 +IGVkdWM= 2391 +6riw 2392 +IG1vdg== 2393 +k6Q= 2394 +YW1h 2395 +cmF0aW9u 2396 +IHNu 2397 +2Yg= 2398 +IHN1bQ== 2399 +IHBob3Q= 2400 +INCd 2401 +IC4= 2402 +IGZpbmlzaA== 2403 +aXR0aW5n 2404 +5a4= 2405 +IGxhcmdl 2406 +IOyW 2407 +IHdoaXRl 2408 +YXJh 2409 +IG1haXM= 2410 +IEhp 2411 +IGRhbQ== 2412 +INin2YQ= 2413 +IGJveA== 2414 +IEhlbGxv 2415 +IHNsZQ== 2416 +IG9wdA== 2417 +cmllZA== 2418 +pbw= 2419 +IGFjdGl2 2420 +IG7Do28= 2421 +IENvbQ== 2422 +IHBsYXlpbmc= 2423 +VGg= 2424 +IGF2YWlsYWJsZQ== 2425 +IHBvcnQ= 2426 +5Yg= 2427 +IEFo 2428 +IGxhcw== 2429 +IGVhcmx5 2430 +IHdvbmRlcg== 2431 +sbA= 2432 +IDE4 2433 +Y3Vs 2434 +IGZ1bmN0aW9u 2435 +IG1vcm5pbmc= 2436 +bGxl 2437 +aWVudHM= 2438 +dXg= 2439 +IGNpcg== 2440 +aXRpb25z 2441 +IGRlZXA= 2442 +IHBvbGl0 2443 +eW9y 2444 +bXA= 2445 +YWtpbmc= 2446 +jOs= 2447 +IE1hbg== 2448 +IG1pbGxpb24= 2449 +IC8= 2450 +IGluZGl2aWQ= 2451 +IHBhbg== 2452 +IGdvdmVybm1lbnQ= 2453 +IHdyaXRl 2454 +IFRvZA== 2455 +YW1lbnQ= 2456 +IM8= 2457 +IHdpbmQ= 2458 +IEVuZw== 2459 +Y2hlbg== 2460 +V2g= 2461 +7Jw= 2462 +IGlkZW50 2463 +dmVudA== 2464 +dXJjaA== 2465 +IGh5 2466 +IHlh 2467 +IHRyYWQ= 2468 +IHJlbGF0aW9uc2hpcA== 2469 +w7o= 2470 +IGRvdQ== 2471 +T1I= 2472 +IHN3ZQ== 2473 +IG5lZw== 2474 +aW5hdGlvbg== 2475 +IHRleHQ= 2476 +aXBw 2477 +IGZpbmU= 2478 +w6Fz 2479 +IERy 2480 +IENvbWU= 2481 +IG1vbnRocw== 2482 +LCI= 2483 +0LXQvdC4 2484 +IGhvdXJz 2485 +IHBvZA== 2486 +aXJ0 2487 +IGludm9s 2488 +IGNvbGxlY3Q= 2489 +IGF1Zg== 2490 +IHBh 2491 +IGhpc3Rvcnk= 2492 +bWI= 2493 +aWZ5 2494 +ID8= 2495 +IGJlbG93 2496 +YXN1cmU= 2497 +YWJ5 2498 +IGxhbmd1 2499 +IGFudA== 2500 +IGNvbWI= 2501 +YXRv 2502 +IGV4aXN0 2503 +IOuL 2504 +IHRha2Vz 2505 +IGNoYXJhY3Rlcg== 2506 +YWZm 2507 +IGZpZWxk 2508 +IGVjb25vbQ== 2509 +aWVm 2510 +IHBpZWNl 2511 +5Zw= 2512 +IHJlYWNo 2513 +IOqy 2514 +b255 2515 +IG1hdGVyaWFs 2516 +IGRpZw== 2517 +IHBoeXM= 2518 +IGltcHJv 2519 +IHNpbWlsYXI= 2520 +SUM= 2521 +IG5ldA== 2522 +eW4= 2523 +IHBvc2l0aW9u 2524 +w58= 2525 +IGJlbmU= 2526 +cmVhZA== 2527 +IGxlYXJuaW5n 2528 +dW1l 2529 +IGNsZWFu 2530 +0YLQvtGA 2531 +IGNvb2s= 2532 +IHNlZW1z 2533 +IG9s 2534 +IFVT 2535 +IEplcw== 2536 +IOCu 2537 +ZW50aWFs 2538 +aXZlcnNpdHk= 2539 +YWN5 2540 +INGP 2541 +b2x1dGVseQ== 2542 +cmVjdA== 2543 +IFBsZWFzZQ== 2544 +IHJlcHJlcw== 2545 +IHRvdWNo 2546 +bWVu 2547 +INCw 2548 +acOzbg== 2549 +IFRoYW5rcw== 2550 +IGFuZw== 2551 +IG1ham9y 2552 +IGl0c2VsZg== 2553 +aWxscw== 2554 +Iiw= 2555 +aWFucw== 2556 +IHNjcmVlbg== 2557 +IGhvcg== 2558 +IGtub3du 2559 +IGVudmlyb24= 2560 +IGZpbmFs 2561 +IGZpZ3VyZQ== 2562 +IFR3 2563 +IGV5ZXM= 2564 +IGltYWc= 2565 +IHNlZWluZw== 2566 +IGhhaXI= 2567 +cmVt 2568 +IGFwcGxpYw== 2569 +ZW5kcw== 2570 +cHV0 2571 +IG5ld3M= 2572 +IGNvbXBsZXRlbHk= 2573 +dWdocw== 2574 +IGtuZXc= 2575 +aWZpZWQ= 2576 +IEpl 2577 +IERpZA== 2578 +IHNpdHVhdGlvbg== 2579 +IGZsbw== 2580 +bXM= 2581 +IHBob25l 2582 +IGJhbGw= 2583 +ZG8= 2584 +IHBhcmVudA== 2585 +IHNvcnJ5 2586 +dXJ5 2587 +0LjQvQ== 2588 +aXBz 2589 +0LDQtA== 2590 +IGluc3RlYWQ= 2591 +IGh1Z2U= 2592 +IHR1 2593 +IOOB 2594 +IEdy 2595 +IGRldGFpbA== 2596 +INCf 2597 +IGluZGl2aWR1YWw= 2598 +IGZpcmU= 2599 +IGNsb3M= 2600 +IHdlcg== 2601 +dW5l 2602 +IHJ1bm5pbmc= 2603 +IGNvbnZlcnM= 2604 +IHJlY29tbQ== 2605 +IGNvbW8= 2606 +IHNvbWVib2R5 2607 +IEpvaG4= 2608 +IOydtA== 2609 +IE91cg== 2610 +cGxlcw== 2611 +IFBo 2612 +IGFuYWw= 2613 +IDUw 2614 +IG9mZmVy 2615 +IDw= 2616 +aXRpb25hbA== 2617 +Z2VzdA== 2618 +IHZvdXM= 2619 +bGV0 2620 +aWN5 2621 +IGZlZWxpbmc= 2622 +TEU= 2623 +cm9z 2624 +IHRoaXJk 2625 +0L7Qug== 2626 +IHNlcmllcw== 2627 +IEFueQ== 2628 +aXNlZA== 2629 +b2xk 2630 +IGRyYXc= 2631 +IHNlcnZpY2U= 2632 +IGNhbm5vdA== 2633 +YmFs 2634 +IGxpdmluZw== 2635 +xLFt 2636 +IGRpZmZlcmVuY2U= 2637 +IG9wcG9ydHVuaXR5 2638 +IG5lYXI= 2639 +b3J0aA== 2640 +a2Vu 2641 +IGxvY2Fs 2642 +2Ko= 2643 +IENvbg== 2644 +IG9iamVjdA== 2645 +IGRhc3M= 2646 +kNc= 2647 +IHF1aWNrbHk= 2648 +cmFwaA== 2649 +IGlzc3Vlcw== 2650 +IEFtZXJpY2Fu 2651 +IHByZXA= 2652 +ZW5jZXM= 2653 +IHByb2Zlc3M= 2654 +bGxpbmc= 2655 +b2Y= 2656 +IGZvb3Q= 2657 +YnJl 2658 +IHVzdWFsbHk= 2659 +IGdlbmVyYWw= 2660 +ZGE= 2661 +YW5jZXM= 2662 +IGRlc3Q= 2663 +IG9jYw== 2664 +IG1lbWJlcnM= 2665 +IGRhbnM= 2666 +IGVxdWFs 2667 +enQ= 2668 +IGJlY29t 2669 +IG1vdmluZw== 2670 +IHNwZWNpZmlj 2671 +w61h 2672 +IGZ1cg== 2673 +IG5lY2Vzcw== 2674 +IGNvbW1vbg== 2675 +IGF0dGFjaw== 2676 +INGN0YLQvg== 2677 +IFRvZGF5 2678 +IHVucw== 2679 +IEd1 2680 +aW9k 2681 +IGFjY291bnQ= 2682 +IGdyYW5k 2683 +IHNlbGY= 2684 +IEVs 2685 +IHRhc3Q= 2686 +IGNvbnRlbnQ= 2687 +IGN1 2688 +hOs= 2689 +IE1heWJl 2690 +IEplc3Vz 2691 +b3Jlcw== 2692 +cG9ydA== 2693 +qbQ= 2694 +IGdpdmVz 2695 +IG5vcm1hbA== 2696 +0YDRgw== 2697 +IGltcGFjdA== 2698 +w6Ry 2699 +IGRpZXM= 2700 +IGxhYg== 2701 +c2g= 2702 +aW9z 2703 +IFByZXM= 2704 +IFVuZA== 2705 +IE9m 2706 +IGZpbmFsbHk= 2707 +IGRvbGw= 2708 +IHZvY8Oq 2709 +cGx5 2710 +IEFn 2711 +IHRha2Vu 2712 +IGdyb3VuZA== 2713 +Zm9ydA== 2714 +IGdhdmU= 2715 +IEluc3Q= 2716 +IGxvc3Q= 2717 +IHdvcmtlZA== 2718 +IGxpdGVy 2719 +IGlzc3Vl 2720 +IGluZHVzdA== 2721 +IHJldHVybg== 2722 +IGhhcHBlbmluZw== 2723 +IHdhbnRz 2724 +0LjQsg== 2725 +IHByb2JsZW1z 2726 +IENhcg== 2727 +nbw= 2728 +IEFsc28= 2729 +IHNpemU= 2730 +IG9idmlvdXNseQ== 2731 +IFN1 2732 +IFNj 2733 +IHJlY29tbWVuZA== 2734 +b3VyY2Vz 2735 +YXN0aWM= 2736 +Li4uLg== 2737 +IG1p 2738 +bGllcg== 2739 +IEV2ZW4= 2740 +Y2lh 2741 +IGh1cg== 2742 +dmE= 2743 +IG1hc3M= 2744 +IHdvdWxkbg== 2745 +dW50 2746 +Y2tz 2747 +IGZlbHQ= 2748 +b3Nw 2749 +bGlnaHQ= 2750 +0L7Qu9GM 2751 +bmll 2752 +IGJvdHRvbQ== 2753 +INCx0Ys= 2754 +b3JlZA== 2755 +aXNvbg== 2756 +IGdyYWQ= 2757 +IHVtYQ== 2758 +IHZh 2759 +IOyC 2760 +cmVzc2lvbg== 2761 +dWxhdGlvbg== 2762 +SUQ= 2763 +aWRlbmNl 2764 +IGJ1cg== 2765 +IGdvbmU= 2766 +bHU= 2767 +7Ja07A== 2768 +IHJlZHU= 2769 +IGph 2770 +7J2Y 2771 +aXRh 2772 +IHNvZnQ= 2773 +IMOnYQ== 2774 +aWNv 2775 +ZXJhbA== 2776 +w7E= 2777 +YWY= 2778 +IHBvaW50cw== 2779 +Z3U= 2780 +IGTDqQ== 2781 +YXB0 2782 +YXg= 2783 +IEFscmlnaHQ= 2784 +IGNhbWVyYQ== 2785 +IGFjaA== 2786 +INC/0L4= 2787 +IHNldmVy 2788 +NTA= 2789 +IHNpZQ== 2790 +z4E= 2791 +IG1hbA== 2792 +IGNvbXB1dA== 2793 +IG1pZGRsZQ== 2794 +IGNvdWxkbg== 2795 +bWluZw== 2796 +IOyL 2797 +IEhpcw== 2798 +IGdhbWVz 2799 +IGludHJvZHU= 2800 +IGNlbGw= 2801 +cG9y 2802 +IHNsZWVw 2803 +IOuz 2804 +aWRpbmc= 2805 +IG91 2806 +IGRlZw== 2807 +IGRyaW5r 2808 +IGVudmlyb25tZW50 2809 +IFVuaXRlZA== 2810 +IHRhbGtlZA== 2811 +IGNob29zZQ== 2812 +IGpvdXI= 2813 +ZWdl 2814 +IE1pbg== 2815 +IGludGU= 2816 +IHJhdGhlcg== 2817 +IG9mZmlj 2818 +0LrQsA== 2819 +YWNoaW5n 2820 +IG1lbnRpb25lZA== 2821 +IGZpbGw= 2822 +IHRyYWNr 2823 +IG5pZQ== 2824 +IHV0 2825 +INCy0Ys= 2826 +aWJpbGl0eQ== 2827 +IHZhYw== 2828 +IHJhZA== 2829 +IHBhY2s= 2830 +IHNlbmQ= 2831 +IERhcw== 2832 +IEFi 2833 +IGVuZ2luZQ== 2834 +IGNvbXBldA== 2835 +w7Q= 2836 +INCy0YE= 2837 +IGRvb3I= 2838 +IGxvbmdlcg== 2839 +IGxhbmd1YWdl 2840 +IGV4dHJh 2841 +cGxheQ== 2842 +IHdlYnM= 2843 +dW1i 2844 +cm9vbQ== 2845 +55w= 2846 +IGJlZ2lubmluZw== 2847 +IHJlZmVy 2848 +QU0= 2849 +bmVu 2850 +aWdoZXI= 2851 +ZmFjZQ== 2852 +ZXJj 2853 +IGZvcmdldA== 2854 +IGNvbW1lbnQ= 2855 +0LXQug== 2856 +0LvRjw== 2857 +cm9y 2858 +xbxl 2859 +IEdl 2860 +IGRhcms= 2861 +IGFueW9uZQ== 2862 +YW50ZQ== 2863 +Z2Vz 2864 +7Iq1 2865 +0ZE= 2866 +YmVk 2867 +amU= 2868 +cnVjdHVyZQ== 2869 +IHByaW0= 2870 +aWRh 2871 +6KY= 2872 +IG1peA== 2873 +IHN0YXJ0aW5n 2874 +IOydtOs= 2875 +IHByb3ZpZGU= 2876 +YWN0aW9u 2877 +IG1vdGhlcg== 2878 +IHBlcmlvZA== 2879 +IHN0aWNr 2880 +IFlvdVQ= 2881 +IHRlY2hub2xvZ3k= 2882 +6rk= 2883 +IGJlZA== 2884 +IGdpdmluZw== 2885 +IGV4cGxhaW4= 2886 +emVu 2887 +aW1hdGU= 2888 +IHJlcHJlc2VudA== 2889 +bG9hZA== 2890 +IEhvd2V2ZXI= 2891 +IGxpdmVz 2892 +dXRo 2893 +aXJpdA== 2894 +b2du 2895 +IGxpaw== 2896 +IHJlc3BvbnM= 2897 +IHByaXY= 2898 +IHRvbQ== 2899 +w6fDo28= 2900 +aWFt 2901 +IGV4Y2l0ZWQ= 2902 +IGNhcmQ= 2903 +Z3JvdW5k 2904 +INeU 2905 +IHNlbnM= 2906 +IHRlYWNo 2907 +aWRv 2908 +aG9k 2909 +IGVwaXM= 2910 +IHdlbGNvbWU= 2911 +IHdhbGw= 2912 +5Lk= 2913 +IGNoYW5jZQ== 2914 +aGVu 2915 +INCh 2916 +IMSR 2917 +IHNpbXBseQ== 2918 +INGC0LDQug== 2919 +cmluZw== 2920 +amE= 2921 +Ym9vaw== 2922 +IHNldmVyYWw= 2923 +c3Rl 2924 +IGNyZWF0ZWQ= 2925 +INC+0YI= 2926 +IHB1c2g= 2927 +PT0= 2928 +IGhpZ2hlcg== 2929 +dWY= 2930 +b3VyY2U= 2931 +b2tl 2932 +IG9ubGluZQ== 2933 +IHJlbGU= 2934 +IHRvbg== 2935 +ZW5zaXZl 2936 +IGZhdm9yaXRl 2937 +0YPQtA== 2938 +IGxvb2tlZA== 2939 +IHZvbg== 2940 +4oCU 2941 +IGbDvHI= 2942 +IGJ1dHRvbg== 2943 +IGJpbGw= 2944 +IGNoYW5nZXM= 2945 +ISI= 2946 +IHNsb3c= 2947 +YWJsZXM= 2948 +IGRlYXRo 2949 +YW5kcw== 2950 +YXRlZw== 2951 +IHRoZW1zZWx2ZXM= 2952 +IGNvcA== 2953 +IHBlcnNvbmFs 2954 +dWdoaW5n 2955 +IDEx 2956 +Z2Fy 2957 +YWRlcw== 2958 +IG5lZWRlZA== 2959 +IHN0dWR5 2960 +YWdlZA== 2961 +0YHRgtCy 2962 +aW5v 2963 +IGRpc2M= 2964 +a2k= 2965 +IGFkZHJlc3M= 2966 +16g= 2967 +aXR0ZW4= 2968 +ZXNvbWU= 2969 +INC2 2970 +pOs= 2971 +dXJh 2972 +IG11 2973 +IGNvbnRpbnU= 2974 +Zm9y 2975 +IG1hdGNo 2976 +IHN0cmFpZ2h0 2977 +kOs= 2978 +bmVycw== 2979 +IGRvZw== 2980 +IGRlYg== 2981 +IENP 2982 +IG9z 2983 +Z2Vk 2984 +Y2FtZQ== 2985 +IGNvcnJlY3Q= 2986 +ZXR0ZQ== 2987 +IFNlZQ== 2988 +IGluY2x1ZGluZw== 2989 +IEV1cm8= 2990 +ZXN0ZXI= 2991 +IGp1bXA= 2992 +IFdoaWNo 2993 +INC60LDQug== 2994 +c29u 2995 +eWE= 2996 +SU5H 2997 +IGVpbmU= 2998 +b3No 2999 +ZW5jeQ== 3000 +IG1lZGlh 3001 +IHN1YnNjcmliZQ== 3002 +6YI= 3003 +IHByaW4= 3004 +IGhhYg== 3005 +IFBlcg== 3006 +IFdhcw== 3007 +IHBhZ2U= 3008 +aXRvcg== 3009 +IHRvd2FyZHM= 3010 +IHRyaWVk 3011 +ZW5nZQ== 3012 +YXJ0bWVudA== 3013 +IHZhcmk= 3014 +IHBhcGVy 3015 +IHBpY3R1cmU= 3016 +IHZlcnNpb24= 3017 +IGJyb3VnaHQ= 3018 +d2FyZQ== 3019 +IFN0YXRlcw== 3020 +IHNpY2g= 3021 +bGVkZ2U= 3022 +IHBlcmNlbnQ= 3023 +IGdvZA== 3024 +ZWM= 3025 +IENvbW0= 3026 +IGRlY2lkZWQ= 3027 +IHNlbGVjdA== 3028 +7ZWc 3029 +KS4= 3030 +dXJpdHk= 3031 +IGZ1cnRoZXI= 3032 +IGNvbW1lbnRz 3033 +bGVtZW50 3034 +IGRyZWFt 3035 +IGNlbnRlcg== 3036 +bWk= 3037 +IGNhcw== 3038 +IHdvbWFu 3039 +IHJvYWQ= 3040 +IGZhaWw= 3041 +IGJlY2FtZQ== 3042 +bHVz 3043 +aWxpdGllcw== 3044 +IENv 3045 +IG1hbmFnZQ== 3046 +IHJlY29nbg== 3047 +IGFjdGlvbg== 3048 +IGJlbmVm 3049 +IGVhcmxpZXI= 3050 +15w= 3051 +IHNwZWVk 3052 +IG1lbnQ= 3053 +IHNvY2k= 3054 +IHNob290 3055 +dWk= 3056 +IMOk 3057 +IGFwcGx5 3058 +dm8= 3059 +eGlt 3060 +IGNhdXNl 3061 +IHN1cnBy 3062 +IGhhYmVu 3063 +REk= 3064 +IGZhdGhlcg== 3065 +IE5leHQ= 3066 +IFlvdVR1YmU= 3067 +IGNvZGU= 3068 +IHJvbGU= 3069 +Z3Jlc3M= 3070 +IGdyZWVu 3071 +ZXR0 3072 +IGJ1aWx0 3073 +IGZsb3c= 3074 +IGJhc2U= 3075 +IHRyYWluaW5n 3076 +IHJvdW5k 3077 +IFdpbGw= 3078 +IHBhdGg= 3079 +IFJv 3080 +IGludGVyZXN0ZWQ= 3081 +7Ja0 3082 +IHJlc3BlY3Q= 3083 +IGNoYW5nZWQ= 3084 +aXNzaW9u 3085 +IHN0dWRlbnQ= 3086 +b2dyYXBo 3087 +IGFwcHJvYWNo 3088 +IHNob3dz 3089 +IHRhcg== 3090 +IGNyaXQ= 3091 +IGdsbw== 3092 +7Iq164uI64uk 3093 +IGRlYWQ= 3094 +IFByZXNpZGVudA== 3095 +IHRob3Vz 3096 +IGJhbA== 3097 +c3Rlcg== 3098 +ZXg= 3099 +IGFic29sdXRlbHk= 3100 +IG1pYw== 3101 +IHByYWN0aWNl 3102 +IHF1YWxpdHk= 3103 +IGxvd2Vy 3104 +b2dsZQ== 3105 +IHNlcGFy 3106 +YmFsbA== 3107 +bWVkaQ== 3108 +IHJldmlldw== 3109 +IEFwcA== 3110 +IG9r 3111 +4oCL 3112 +IGV4cGVyaWVu 3113 +IGNvbmNlcm4= 3114 +ZW50aWFsbHk= 3115 +bW9yZQ== 3116 +IEpv 3117 +YXBhbg== 3118 +IEljaA== 3119 +aXN0aWM= 3120 +IGZhaXI= 3121 +IHdlYnNpdGU= 3122 +aXJlcw== 3123 +IEJ5 3124 +IHRyYXZlbA== 3125 +IHJpc2s= 3126 +IG1pcg== 3127 +IGJvYXJk 3128 +IHNlbg== 3129 +IHBhcmVudHM= 3130 +IFdvdw== 3131 +IGZlZWQ= 3132 +IHNhdmU= 3133 +IHNlcmlvdXM= 3134 +IGluaXQ= 3135 +RUw= 3136 +dW5kcmVk 3137 +QVM= 3138 +IHZhbg== 3139 +b3Jyb3c= 3140 +IHdvcnRo 3141 +IHNlYXJjaA== 3142 +IDE2 3143 +IHBhcnRz 3144 +0YHRgtGM 3145 +IGNvbXBhbg== 3146 +IG1vdmll 3147 +IG1ldGhvZA== 3148 +IGlsbA== 3149 +IHdpc2g= 3150 +ZHk= 3151 +IGl0ZW0= 3152 +IG1pbnVz 3153 +YW5nZXI= 3154 +IHZvaWNl 3155 +IHNraW4= 3156 +IGFyZWFz 3157 +IGVpZ2h0 3158 +IG9icw== 3159 +ICw= 3160 +0LDQuQ== 3161 +IG9pbA== 3162 +IGN5 3163 +IGJhYnk= 3164 +c3k= 3165 +IGVtcGxveQ== 3166 +IEtl 3167 +IHBsYWNlcw== 3168 +IGZpeA== 3169 +IGVzdMOh 3170 +aXZlZA== 3171 +IGxvdHM= 3172 +IHNlYXNvbg== 3173 +dW5r 3174 +YWx0 3175 +IHRhYmxl 3176 +INCi 3177 +w6I= 3178 +IGF0dGVudGlvbg== 3179 +IEhlcg== 3180 +IGFnZQ== 3181 +IHByYQ== 3182 +YmFjaw== 3183 +Y2ls 3184 +IG5ldHdvcms= 3185 +cml0 3186 +IGRvYw== 3187 +IGFyZW4= 3188 +aWdlbg== 3189 +IOuE 3190 +2K8= 3191 +ZW5kZXI= 3192 +IHRvdGFs 3193 +IHByaWNl 3194 +IGNyYXp5 3195 +7Jo= 3196 +aXF1 3197 +dGhvdWdo 3198 +WW91 3199 +2Yc= 3200 +z4U= 3201 +IHNhdA== 3202 +IGJp 3203 +IERpZQ== 3204 +IHNoYQ== 3205 +IHRoYW5rcw== 3206 +dWg= 3207 +IHN0YWdl 3208 +0LDQtg== 3209 +IEZs 3210 +IGxlYXY= 3211 +IGJveQ== 3212 +IGFm 3213 +w7Zu 3214 +IEdldA== 3215 +IGFjY2VwdA== 3216 +IGVudGVy 3217 +IHR1cg== 3218 +IHNpxJk= 3219 +IGhvbmVzdA== 3220 +44CM 3221 +IHNhbQ== 3222 +IHJlcGw= 3223 +Z2luZw== 3224 +IGRldmVsb3BtZW50 3225 +IEFjdA== 3226 +b3Jh 3227 +44CN 3228 +5L4= 3229 +IGtub3dz 3230 +IGltYWdl 3231 +IExvcmQ= 3232 +0LjRgtGM 3233 +IHdlZWtz 3234 +IHNleA== 3235 +lOs= 3236 +IGh1bmRyZWQ= 3237 +IHNvdW5kcw== 3238 +IGxlYXJuZWQ= 3239 +IGJ1ZA== 3240 +INGB0YI= 3241 +IGluY3JlZA== 3242 +4pk= 3243 +IG5vcw== 3244 +IGRyb3A= 3245 +IGJlbg== 3246 +INCY 3247 +IHNhZmU= 3248 +YXRh 3249 +IGZ1Y2s= 3250 +c29jaQ== 3251 +IGRhbg== 3252 +IGNyb3Nz 3253 +MTA= 3254 +bW8= 3255 +dmVydA== 3256 +IDE3 3257 +emll 3258 +5ZU= 3259 +IGRvbQ== 3260 +IEJv 3261 +IHNldHRpbmc= 3262 +IGludm9sdmVk 3263 +YXJpbHk= 3264 +IHNpbmQ= 3265 +IHN1cw== 3266 +IHdvcnJ5 3267 +ZXRo 3268 +6rmM 3269 +IHN1bg== 3270 +IGhpZXI= 3271 +IGNlcnRhaW5seQ== 3272 +b3Vs 3273 +b3J0cw== 3274 +IEVy 3275 +IFVt 3276 +IGNhdXM= 3277 +IG5hdHVyYWw= 3278 +IMO8 3279 +IGNyeQ== 3280 +IFNlYw== 3281 +IHNvbQ== 3282 +5rI= 3283 +IGVkdWNhdGlvbg== 3284 +0LDQtdGC 3285 +IG11bHRpcA== 3286 +IGFsb25l 3287 +IGV5ZQ== 3288 +IHJhdGU= 3289 +IEV1cm9wZQ== 3290 +6L8= 3291 +bW9u 3292 +IGZpdA== 3293 +aXppbmc= 3294 +cHBlZA== 3295 +IHByZXNzdXJl 3296 +dGhl 3297 +0LjRgQ== 3298 +aXRlcw== 3299 +IEFm 3300 +cmVjaQ== 3301 +YXR0bGU= 3302 +IHNlcnZpY2Vz 3303 +IEdvb2dsZQ== 3304 +6YE= 3305 +IGNhc2Vz 3306 +IGRyaXZl 3307 +IGNoYWxsZW5n 3308 +dXo= 3309 +IE1v 3310 +7Jy86w== 3311 +dmFs 3312 +IGZvbA== 3313 +IOyi 3314 +ZmZpYw== 3315 +IHJh 3316 +IHNpbg== 3317 +IGJsdWU= 3318 +IGFmZmVjdA== 3319 +IG1pcw== 3320 +IHNob3Q= 3321 +INC+0LE= 3322 +YXNpbmc= 3323 +IHNpZ25pZmlj 3324 +IENoZQ== 3325 +IOqz 3326 +IHBvc2l0aXZl 3327 +7KM= 3328 +IHdpZQ== 3329 +IDQw 3330 +b3JkaW5n 3331 +IEZyb20= 3332 +6rU= 3333 +IGJyYW5k 3334 +IHRydXN0 3335 +IHBsZQ== 3336 +IGNvbW11bmlj 3337 +IHdlaWdodA== 3338 +IGFza2luZw== 3339 +IHRheA== 3340 +IEphcGFu 3341 +IO2VmA== 3342 +b3Bz 3343 +z4I= 3344 +IHB1dHRpbmc= 3345 +IHJvbGw= 3346 +IEFtZXJpY2E= 3347 +cmVn 3348 +ntc= 3349 +YXR1cmVz 3350 +ZW5zaW9u 3351 +IFNvbWV0 3352 +IG9yaWdpbmFs 3353 +cGluZw== 3354 +IMWf 3355 +IHByb2R1Y3Rz 3356 +IGNvbnRhY3Q= 3357 +b2x1dGlvbg== 3358 +IGdvYWw= 3359 +IHBvdw== 3360 +IHBlcmZvcm1hbmNl 3361 +IGJsb29k 3362 +YXRvcnM= 3363 +IE1pY2g= 3364 +IHRlbXBlcg== 3365 +IERhbg== 3366 +IHN1Z2c= 3367 +0YLQuA== 3368 +IGltbQ== 3369 +IG9mZmljZQ== 3370 +IGFycmk= 3371 +IGNvbWZvcnQ= 3372 +INCU 3373 +IHN1Z2dlc3Q= 3374 +IHBsYXQ= 3375 +gpg= 3376 +MTk= 3377 +IG9t 3378 +IHNldmVu 3379 +IENlbnQ= 3380 +aWxsZQ== 3381 +IGNvbmNlcHQ= 3382 +IGJhZw== 3383 +w7xu 3384 +aXZlbHk= 3385 +IGRpdg== 3386 +bW9z 3387 +5ok= 3388 +IGZlZWxz 3389 +IGly 3390 +YWtlcw== 3391 +bGV5 3392 +IHBhcnRpY2lw 3393 +INCa 3394 +Zmw= 3395 +anVzdA== 3396 +IHNpbA== 3397 +IFBh 3398 +QUw= 3399 +IGdvdHRh 3400 +IGZhbg== 3401 +IGNoYWxsZW5nZQ== 3402 +IGNvbXBhbmllcw== 3403 +IFBlb3BsZQ== 3404 +PC8= 3405 +0L7Qtw== 3406 +IHBlbg== 3407 +aXNpbmc= 3408 +IGF1cw== 3409 +ZW1pYw== 3410 +YW1lbnRl 3411 +IG1lZXRpbmc= 3412 +IHZpc2l0 3413 +IHN1cHBvc2Vk 3414 +IE9uY2U= 3415 +0LTQsA== 3416 +b3JsZA== 3417 +MzA= 3418 +VVM= 3419 +IHZpb2w= 3420 +IG5vdGljZQ== 3421 +INCQ 3422 +aGFu 3423 +cGVk 3424 +7Jg= 3425 +aGg= 3426 +IHRyb3U= 3427 +IG1pbnV0ZQ== 3428 +IFBhcg== 3429 +cmF5 3430 +IHRpdA== 3431 +IHVwZA== 3432 +IGJsb2Nr 3433 +IGR1ZQ== 3434 +YXVy 3435 +IGZvcmNl 3436 +IGNvdW4= 3437 +IOKAlA== 3438 +IHR5cGVz 3439 +66c= 3440 +IGxhdGU= 3441 +IGltcHJvdmU= 3442 +IOyI 3443 +IGF2ZQ== 3444 +dWxlcw== 3445 +Y2w= 3446 +YW1lZA== 3447 +IGF3ZXNvbWU= 3448 +IE9r 3449 +IHZvdA== 3450 +IG1hY2hpbmU= 3451 +IGZvbGxvd2luZw== 3452 +IG1lYXN1cmU= 3453 +YWNpw7Nu 3454 +dWVs 3455 +Y2hhbg== 3456 +IGFiaWxpdHk= 3457 +IHRvdXQ= 3458 +IGlkZWFz 3459 +IGluY3JlYXNl 3460 +IGVucw== 3461 +INGF 3462 +IOuq 3463 +IGplc3Q= 3464 +INCc 3465 +IHRydXRo 3466 +aHk= 3467 +IHNwZW5k 3468 +IHNjaWVuY2U= 3469 +ZXRl 3470 +IDE0 3471 +IGVwaXNvZGU= 3472 +IGFsZw== 3473 +ZW5kZWQ= 3474 +YXJp 3475 +bGxh 3476 +IGZpc2g= 3477 +IHRocm93 3478 +bWl0 3479 +5bk= 3480 +IGNpcmM= 3481 +IENhbA== 3482 +IHRvdXI= 3483 +IGRpcmVjdGlvbg== 3484 +IG5vY2g= 3485 +0LXQsg== 3486 +w6lu 3487 +IGNvdW50cmllcw== 3488 +IGluZHVzdHJ5 3489 +aW55 3490 +aWNsZQ== 3491 +IGZlZXQ= 3492 +SXQ= 3493 +IGxlYWRlcnM= 3494 +ZXR6dA== 3495 +IHN0YWZm 3496 +55Q= 3497 +IHB1cnA= 3498 +aXRv 3499 +PyE= 3500 +IEph 3501 +IHN0b3Jl 3502 +ZXRpYw== 3503 +IENoaW5h 3504 +IOuQ 3505 +IFVuaXZlcnNpdHk= 3506 +ICM= 3507 +IGRlY2lzaW9u 3508 +IGFjaGll 3509 +IGFjdHVhbA== 3510 +dWx5 3511 +IHNlY3Rpb24= 3512 +IHJlc3VsdHM= 3513 +IHN0YXI= 3514 +IG1pc3Q= 3515 +aWJseQ== 3516 +IGRhZA== 3517 +IG51bWJlcnM= 3518 +b21i 3519 +6Ko= 3520 +IFNwZQ== 3521 +IG1lcg== 3522 +IDI1 3523 +IGF1dG9t 3524 +IGNvbGQ= 3525 +2Kg= 3526 +hJw= 3527 +YWdlcg== 3528 +IFRW 3529 +IFNpZQ== 3530 +IEhhdmU= 3531 +IMW8ZQ== 3532 +dWdn 3533 +YWluZWQ= 3534 +IHVwb24= 3535 +IGxvZw== 3536 +IGNvbXBsZXRl 3537 +IGJyYWlu 3538 +YWdpbmc= 3539 +IE11cw== 3540 +b3Zlcg== 3541 +IGVhc2llcg== 3542 +IGludGVncg== 3543 +IG3DoXM= 3544 +IHR1cm5lZA== 3545 +IHN0cmk= 3546 +aXZhbA== 3547 +IGhlYXY= 3548 +IFRI 3549 +IHdyaXRpbmc= 3550 +0YDQsA== 3551 +IGNsYQ== 3552 +ZGluZw== 3553 +IHRlbGxpbmc= 3554 +0LjQtA== 3555 +aWNhdGVk 3556 +YWNodA== 3557 +aGFwcw== 3558 +IFN0ZQ== 3559 +IHJlc291cmNlcw== 3560 +IGRhbm4= 3561 +IHBhcnR5 3562 +IM+E 3563 +IHNhZg== 3564 +aXNlcw== 3565 +dHJl 3566 +b2ludA== 3567 +IGtub3dsZWRnZQ== 3568 +IGFueW1vcmU= 3569 +IGZseQ== 3570 +IG1haW50 3571 +0LjQug== 3572 +5ZE= 3573 +IHNlbGw= 3574 +bGF1Z2hz 3575 +IFlvcms= 3576 +IGJpZW4= 3577 +IG9k 3578 +IGVhc2lseQ== 3579 +IHJhbmdl 3580 +IG9wdGlvbg== 3581 +2Lk= 3582 +IGFwcHJlY2k= 3583 +b2Ny 3584 +IGRldGVybQ== 3585 +0YQ= 3586 +IG1lYW5pbmc= 3587 +IHNpdGU= 3588 +IGRpc2Nv 3589 +dmVyYWdl 3590 +IGxvc2U= 3591 +IGluc3RhbGw= 3592 +IGVtb3Q= 3593 +YW50bHk= 3594 +w6R0 3595 +IHRhbWI= 3596 +IFdhcg== 3597 +IEhv 3598 +IEdlbg== 3599 +ZW15 3600 +0LXQtw== 3601 +IFBvbA== 3602 +IG1lc3NhZ2U= 3603 +IG5vdGU= 3604 +jIA= 3605 +IGhldA== 3606 +IGltbWVkaQ== 3607 +IGF2bw== 3608 +IGJvb2tz 3609 +IGJlY29tZXM= 3610 +cmVzaA== 3611 +w6hz 3612 +YXNvbnM= 3613 +IGhpbXNlbGY= 3614 +dXRz 3615 +IGp1 3616 +IGF3YXJl 3617 +IHJlcXVpcmU= 3618 +IHN5c3RlbXM= 3619 +IEhhcg== 3620 +IGFtb25n 3621 +IGhvbQ== 3622 +IGJyZWF0 3623 +IHdlaXJk 3624 +IOu2 3625 +zrs= 3626 +2Kk= 3627 +aWZm 3628 +b3Jpbmc= 3629 +IHBsYXRmb3Jt 3630 +IFRha2U= 3631 +IGhlbHBz 3632 +dXRpb25z 3633 +IGZvcmc= 3634 +IGx1Y2s= 3635 +IEVuZ2xpc2g= 3636 +IHdlYg== 3637 +IG5lZ2F0aXZl 3638 +IHR1dA== 3639 +IGFib3Zl 3640 +bmd0aA== 3641 +IOqxsA== 3642 +IHN0b3JpZXM= 3643 +IGxvYWQ= 3644 +IGJhY2tncm91bmQ= 3645 +IHN3aXRjaA== 3646 +Z2E= 3647 +IHByaW5jaQ== 3648 +IGZpbmFu 3649 +IHZhcmlvdXM= 3650 +IGzDoA== 3651 +IGtpbmRz 3652 +YWluaW5n 3653 +IG5hdHVyZQ== 3654 +INCe 3655 +Y3o= 3656 +IHByYXk= 3657 +IGdhcg== 3658 +aXJt 3659 +ICY= 3660 +IOyD 3661 +bnM= 3662 +IFJlcA== 3663 +IEZl 3664 +IHJldg== 3665 +cmFuZA== 3666 +IGxpa2VseQ== 3667 +IHVuZGVyc3RhbmRpbmc= 3668 +xLFy 3669 +IGZhbA== 3670 +IDEz 3671 +0YbQuA== 3672 +IHN1ZA== 3673 +IGJyb3RoZXI= 3674 +IHBsYW50 3675 +IHRocm91Z2hvdXQ= 3676 +d2lzZQ== 3677 +cHJl 3678 +IGN1bHR1cmU= 3679 +INmF 3680 +IHdvbmRlcmZ1bA== 3681 +IGFo 3682 +cHBlcg== 3683 +IHNvbGQ= 3684 +IHN0YXJ0cw== 3685 +IHdyaXR0ZW4= 3686 +zq8= 3687 +bmk= 3688 +INeU1w== 3689 +IERhdg== 3690 +IHVsdA== 3691 +IGFybQ== 3692 +IHJvY2s= 3693 +IHdlYXI= 3694 +642w 3695 +YW5v 3696 +cmFn 3697 +IHNxdWFyZQ== 3698 +0LDQvdC4 3699 +Y2FzdA== 3700 +bGVicg== 3701 +IGxpdGVyYWxseQ== 3702 +IHBsYXllZA== 3703 +IGhlYXQ= 3704 +b25zZQ== 3705 +cmljdA== 3706 +IGluc3A= 3707 +aWRz 3708 +IHBvcHVsYXI= 3709 +64+E 3710 +IGNhdGNo 3711 +IG1vdW50 3712 +IGp1ZA== 3713 +V2hhdA== 3714 +0LXQsQ== 3715 +UkE= 3716 +YXVk 3717 +0LrQvg== 3718 +IHN1cmZhY2U= 3719 +IGNvbnY= 3720 +IHBpZWNlcw== 3721 +T2g= 3722 +5oA= 3723 +IHN0eWxl 3724 +cHBpbmc= 3725 +IHJlYWRpbmc= 3726 +IGNvbnZlcnNhdGlvbg== 3727 +0L7Qvw== 3728 +IEFnYWlu 3729 +IGJhbms= 3730 +dGltZQ== 3731 +0YPRgg== 3732 +ZXJ2ZQ== 3733 +IEdyZWF0 3734 +IGNhcHQ= 3735 +0LDQsQ== 3736 +YXlz 3737 +IEZpbg== 3738 +aWZpY2F0aW9u 3739 +IMOkcg== 3740 +0LDRjg== 3741 +IGVnZw== 3742 +IFdlbA== 3743 +IHRhcmdldA== 3744 +dWxh 3745 +Y2hlcw== 3746 +YW5p 3747 +T08= 3748 +aWNpb3Vz 3749 +bm93 3750 +z4M= 3751 +Ym9hcmQ= 3752 +IGdlbnRl 3753 +IGRybw== 3754 +IEV0 3755 +IGRpbg== 3756 +IGNvcw== 3757 +IGF1dGhvcg== 3758 +2LM= 3759 +IG9jaA== 3760 +IGVtYWls 3761 +IHNwaXJpdA== 3762 +IHNpdHRpbmc= 3763 +bWFz 3764 +IHN0cmVuZ3Ro 3765 +IGJpZ2dlcg== 3766 +IFdhaXQ= 3767 +IG1hdA== 3768 +IHBvbGljZQ== 3769 +cmVzc2Vk 3770 +IHdhaXRpbmc= 3771 +aXNoaW5n 3772 +IGRvbGxhcnM= 3773 +aG9vZA== 3774 +c3M= 3775 +IGltYWdpbmU= 3776 +aW5p 3777 +IG1lcw== 3778 +IGRpc2U= 3779 +aWRnZQ== 3780 +YWJvcg== 3781 +IHBldA== 3782 +IGhvcA== 3783 +IEtpbmc= 3784 +IGNvbXB1dGVy 3785 +IGdvbGQ= 3786 +IG51 3787 +IGZpbmc= 3788 +KSw= 3789 +IHNlY3VyaXR5 3790 +cnVjdGlvbg== 3791 +IHNvbHV0aW9u 3792 +ZXh0 3793 +IHBhdHRlcg== 3794 +aWNrZW4= 3795 +dXJlZA== 3796 +IHN0YW5kYXJk 3797 +7Iuc 3798 +IGRvdWJsZQ== 3799 +zrc= 3800 +IHdpZmU= 3801 +aXNh 3802 +IGRpcmVjdGx5 3803 +YWNlZA== 3804 +IGJ1bmNo 3805 +IMK/ 3806 +0LDQu9GM 3807 +IHJlZ2FyZA== 3808 +IHN3ZWV0 3809 +IHVuaXF1ZQ== 3810 +IOKZqw== 3811 +IHRyYWlu 3812 +IEdlcm0= 3813 +zqw= 3814 +UkU= 3815 +IGJlaGF2 3816 +IHByZWQ= 3817 +7IM= 3818 +c2V0 3819 +IGRlc2NyaXB0aW9u 3820 +w6ll 3821 +IGNhdA== 3822 +5ZM= 3823 +IGNvbGxlZ2U= 3824 +7Js= 3825 +IGFwcGxpY2F0aW9u 3826 +IFNlbg== 3827 +YXNr 3828 +IGNyZWQ= 3829 +dWJsaWM= 3830 +IG11bHRpcGxl 3831 +IG5p 3832 +IHByZXNpZGVudA== 3833 +IGFkZGVk 3834 +IHJvYg== 3835 +IGFxdWk= 3836 +IGhvc3A= 3837 +IHRvb2xz 3838 +IGd1bg== 3839 +IGJhc2lj 3840 +IGxpbmVz 3841 +IHN0cnVjdHVyZQ== 3842 +IFJ1c3M= 3843 +IHRvdGFsbHk= 3844 +IGJpZ2dlc3Q= 3845 +IGVlbg== 3846 +IGFyZw== 3847 +INec 3848 +IHBhcms= 3849 +IERlcw== 3850 +IGNlbGVicg== 3851 +IGZhaXQ= 3852 +0LXQvdGM 3853 +IHN1ZmY= 3854 +IHJlZ3VsYXI= 3855 +qOs= 3856 +IG1pbmU= 3857 +IEtvcmU= 3858 +IHByZXZpb3Vz 3859 +IHBp 3860 +IHNlZw== 3861 +IHBvbGljeQ== 3862 +INC60L4= 3863 +IFRydW1w 3864 +IHZhY2M= 3865 +w7N3 3866 +IFN5 3867 +0LjRhw== 3868 +aXR0ZXI= 3869 +IHBvbGl0aWNhbA== 3870 +cmFz 3871 +IGFscw== 3872 +0LXQu9GM 3873 +IHNoYXBl 3874 +YW56 3875 +IG9udG8= 3876 +IGFyY2g= 3877 +IGFtYg== 3878 +YWdyYW0= 3879 +IFNt 3880 +Y3Rpb25z 3881 +IGpvaW4= 3882 +Ym9y 3883 +5Zs= 3884 +IGZyYW1l 3885 +oIc= 3886 +IGNob2ljZQ== 3887 +4K+B 3888 +0YPRjg== 3889 +IENvcg== 3890 +IFN3 3891 +SVQ= 3892 +IHRlbmQ= 3893 +IEVhcg== 3894 +IHRvcg== 3895 +IGV2ZW50cw== 3896 +IGNsYWlt 3897 +IERh 3898 +IE1hcms= 3899 +IGdyb3Vwcw== 3900 +IGVhdGluZw== 3901 +IFdvcmxk 3902 +IHJlY2VudGx5 3903 +IHRhc3Rl 3904 +IHN1cnY= 3905 +4KQ= 3906 +IHNraWxscw== 3907 +INC40Lc= 3908 +aXR0ZWQ= 3909 +IHNob3A= 3910 +7J207A== 3911 +IGVzdGFi 3912 +IOuCmA== 3913 +IHNlY29uZHM= 3914 +IFRob3Nl 3915 +IEVudA== 3916 +IOyE 3917 +ZXJzb24= 3918 +IHRvd24= 3919 +IGNhbmQ= 3920 +IG9wdGlvbnM= 3921 +IGluZw== 3922 +VklE 3923 +IGVuY291cg== 3924 +IHLDqQ== 3925 +4pmq 3926 +IGVudHJl 3927 +IG1vdmVtZW50 3928 +IEJlbg== 3929 +IGJpcnRo 3930 +IHdoZQ== 3931 +IGhhbmc= 3932 +IEVt 3933 +aWdl 3934 +cm9sbA== 3935 +IHVuZg== 3936 +7II= 3937 +IHJpZA== 3938 +IHNwcmVhZA== 3939 +IGhvc3Q= 3940 +YWxk 3941 +IEVk 3942 +IGNvbnN1bQ== 3943 +VU4= 3944 +IG9waW4= 3945 +aXRhcg== 3946 +IE1lZA== 3947 +IHN1YmplY3Q= 3948 +IHBhbA== 3949 +IGNhcnJ5 3950 +IGFncmVl 3951 +IFdoaWxl 3952 +IGNhcmVlcg== 3953 +IHNjaWVudA== 3954 +IHN1ZGRlbg== 3955 +IGZpbGU= 3956 +emk= 3957 +IGV4Y2VwdA== 3958 +6bo= 3959 +IHBvdGVudGlhbA== 3960 +IEFub3RoZXI= 3961 +IGNvbXBsZXg= 3962 +IFNpbQ== 3963 +ZW5kbw== 3964 +IHJhaXM= 3965 +IHBoeXNpY2Fs 3966 +IGRhdGU= 3967 +YWtlcg== 3968 +IENvbA== 3969 +IHBvd2VyZnVs 3970 +IG1lbWJlcg== 3971 +cmFw 3972 +IHNwb3Q= 3973 +IHNvdXJjZQ== 3974 +IGZlbQ== 3975 +w6lt 3976 +IGVtcA== 3977 +amk= 3978 +aWV0eQ== 3979 +IGluZmx1 3980 +IGRyeQ== 3981 +IGxvY2s= 3982 +IHplcm8= 3983 +IFVo 3984 +IHJvdXQ= 3985 +IHBvcnF1ZQ== 3986 +IDI0 3987 +IHRhbA== 3988 +IGZvbGtz 3989 +IGxhdW5jaA== 3990 +IGNvbXBvbg== 3991 +IFdlbGNvbWU= 3992 +IGthbm4= 3993 +w6Ru 3994 +INGN0YI= 3995 +ZWVz 3996 +INmI 3997 +IGFueXdheQ== 3998 +IGF1ZGllbmNl 3999 +IHNsaWdodA== 4000 +b25h 4001 +IHVy 4002 +IHJlbGln 4003 +IGV4dHJlbQ== 4004 +xLF6 4005 +IE1h 4006 +zrw= 4007 +IMO2 4008 +IGFsbG93cw== 4009 +IGZhdA== 4010 +IEZhY2U= 4011 +IG5hdGlvbmFs 4012 +IGludGVydmlldw== 4013 +IE1j 4014 +w6l0 4015 +IGN1dGU= 4016 +ZWxh 4017 +IHNlY3JldA== 4018 +IFdlc3Q= 4019 +IERlcA== 4020 +IGV4ZXJj 4021 +IGhpc3Rvcg== 4022 +IHByaW9y 4023 +IDYw 4024 +YXZh 4025 +YWNoZXI= 4026 +eW9uZA== 4027 +IEhh 4028 +IGVzdGU= 4029 +aW5hcnk= 4030 +IE5vcnRo 4031 +b25zdA== 4032 +IHNtYXJ0 4033 +YW1z 4034 +0LDQu9C4 4035 +IGRhcg== 4036 +ZXJlZA== 4037 +IGZ1bm55 4038 +IE9i 4039 +IEJsYWNr 4040 +IHJlbGF0ZWQ= 4041 +IEJ1 4042 +IHNvbWV3aGVyZQ== 4043 +IFJlbQ== 4044 +bmVz 4045 +bWVudGU= 4046 +IFJlYWxseQ== 4047 +IGNyZWF0aW5n 4048 +IGZhbWls 4049 +IHNvY2lldHk= 4050 +IGdlbA== 4051 +IHRyYW5zZm9ybQ== 4052 +xIM= 4053 +IGluY2x1ZGU= 4054 +IGhvbA== 4055 +bGlrZQ== 4056 +a28= 4057 +YWlycw== 4058 +INC/0L7QtA== 4059 +IHBlcnNwZWN0 4060 +IGJlcw== 4061 +IHBhcnRpY3VsYXJseQ== 4062 +IHNob3dpbmc= 4063 +IFBhcnQ= 4064 +IHF1YWw= 4065 +bG9jaw== 4066 +IHJlYWxpdHk= 4067 +aG9sZA== 4068 +aWN0aW9u 4069 +b29u 4070 +IHZpcg== 4071 +aXRhcnk= 4072 +IGRydWc= 4073 +IGZlYXR1cmU= 4074 +IHJlYXNvbnM= 4075 +INep 4076 +IHdyb3Rl 4077 +IGZhbnQ= 4078 +IGJhbmQ= 4079 +2YM= 4080 +ZW5h 4081 +a2V5 4082 +IGVhcnRo 4083 +ZG9t 4084 +IGZlYXR1cmVz 4085 +IGZsb29y 4086 +IHNwZWFraW5n 4087 +IHRpcA== 4088 +IEF1c3Q= 4089 +IHN0b2Nr 4090 +IGNodXJjaA== 4091 +IHJhYw== 4092 +7Jy866Gc 4093 +4LiZ 4094 +a3k= 4095 +IHJlc3BvbnNl 4096 +24w= 4097 +dWxhdGlvbnM= 4098 +IHNsaWRl 4099 +IGdyYWR1 4100 +Y2lvdXM= 4101 +IG1lYW50 4102 +ID09 4103 +INeQ1w== 4104 +44U= 4105 +IGtpbmRh 4106 +IHNjZW5l 4107 +IG11aXQ= 4108 +IOqwgA== 4109 +cmFzdA== 4110 +cmVzdA== 4111 +IHBsYXllcnM= 4112 +d2E= 4113 +IGJyb2Fk 4114 +IHRvbW9ycm93 4115 +b2NvbA== 4116 +INGB0LI= 4117 +IEJhcg== 4118 +xLFr 4119 +IHNlYQ== 4120 +IHJlbW92ZQ== 4121 +IHJlbWluZA== 4122 +0L7QvNGD 4123 +IFNpbmNl 4124 +IGF2ZWM= 4125 +Y2VsbA== 4126 +0LjRhQ== 4127 +IGRvY3VtZW50 4128 +IOq3uOuf 4129 +IG5laWdo 4130 +YmVhdA== 4131 +IHDDpQ== 4132 +IGFzcGVjdA== 4133 +IGRlZA== 4134 +bGlzaGVk 4135 +aWxz 4136 +IG91cnNlbHZlcw== 4137 +dWNl 4138 +IGhleQ== 4139 +INC/0YDQvg== 4140 +ZW50eQ== 4141 +IGFzc29jaQ== 4142 +YWRvcw== 4143 +dW1iZXI= 4144 +IF0= 4145 +bm92 4146 +IOyZ 4147 +0YPRhw== 4148 +IGNvbmRpdGlvbg== 4149 +64qU642w 4150 +IHZhbHVlcw== 4151 +IHNjZW4= 4152 +bWluaXN0 4153 +IGNhc3Q= 4154 +IGdyb3dpbmc= 4155 +IHVzZXI= 4156 +IHJlc3BvbmQ= 4157 +bGlt 4158 +w6ly 4159 +eW0= 4160 +b3Nlcw== 4161 +c3ljaA== 4162 +INGA0LDQtw== 4163 +IGFwcGVhcg== 4164 +IHByb2dyZXNz 4165 +ZW5ndGg= 4166 +IGphaw== 4167 +IERpcw== 4168 +IHBhdGllbnRz 4169 +IFNlcg== 4170 +IGdhcw== 4171 +w6hyZQ== 4172 +7Ja07JqU 4173 +IHJlY2k= 4174 +7J24 4175 +IHNjYQ== 4176 +ZXBlbmQ= 4177 +0YHQug== 4178 +0LDQvw== 4179 +IGJhdHRlcg== 4180 +IHZlaA== 4181 +8J8= 4182 +IGFjY29t 4183 +IGJlYXQ= 4184 +IHBhaW50 4185 +IGNvbnRyaWI= 4186 +IHNhZA== 4187 +xrA= 4188 +YWxlcw== 4189 +IHRyZWU= 4190 +YmE= 4191 +IGJvcm4= 4192 +aWNlZA== 4193 +4K6V 4194 +YmFuZA== 4195 +IG1lY2hhbg== 4196 +IERldA== 4197 +IGNhcGl0YWw= 4198 +IGRlbGl2ZXI= 4199 +IGZlYXI= 4200 +npg= 4201 +IFNvdXRo 4202 +IGJvdWdodA== 4203 +IHN0cmVzcw== 4204 +IHZvcg== 4205 +Pz8= 4206 +aWg= 4207 +7JW8 4208 +IGVyYQ== 4209 +7J206w== 4210 +0LDRjw== 4211 +aXNpb25z 4212 +aXZpdHk= 4213 +IGhlbHBlZA== 4214 +IGFzc2lzdA== 4215 +IHBsYXllcg== 4216 +cmFu 4217 +IGltbWVkaWF0ZWx5 4218 +IG1vdmVk 4219 +Y2ll 4220 +6rE= 4221 +IGFubm91bg== 4222 +5b8= 4223 +7J6Q 4224 +IHByb2R1Y3Rpb24= 4225 +IHN1bW1lcg== 4226 +IHR1bg== 4227 +IHByb2dyYW1z 4228 +R0g= 4229 +YWxpbmc= 4230 +aXJh 4231 +ZWxlc3M= 4232 +Lik= 4233 +IGF2ZXJhZ2U= 4234 +IGdsYXNz 4235 +b21hbg== 4236 +aWZpY2FsbHk= 4237 +IOuLpA== 4238 +IENvbmc= 4239 +IFZlcg== 4240 +IHRyaWNr 4241 +IGJlZ2Fu 4242 +IHZpbGw= 4243 +6rGw 4244 +aG93 4245 +5q0= 4246 +IHRpbGw= 4247 +IDkw 4248 +YmVydA== 4249 +IOq4 4250 +IHRlbXBlcmF0dXJl 4251 +w7I= 4252 +4LmI 4253 +IGdyYXBo 4254 +IOq3uA== 4255 +IHJvdA== 4256 +IG1vYg== 4257 +QVk= 4258 +YWVs 4259 +IHJlcGU= 4260 +IGRldmljZQ== 4261 +IDE5OQ== 4262 +IHRlbGU= 4263 +IGtlcHQ= 4264 +cGE= 4265 +5pY= 4266 +dmVyc2U= 4267 +IHN0cmVhbQ== 4268 +0LXRhw== 4269 +ZXNzaW9u 4270 +IHN0cnVnZw== 4271 +eno= 4272 +IGRlZ3JlZQ== 4273 +IGhlbHBpbmc= 4274 +IHNtZWxs 4275 +IHBlcmhhcHM= 4276 +cHJv 4277 +IGNvbnRleHQ= 4278 +IGlr 4279 +INC/0LXRgA== 4280 +IGNhbGN1bA== 4281 +YmluZw== 4282 +IHJlYWxpemU= 4283 +bGFt 4284 +IENoYXI= 4285 +eXQ= 4286 +IOydtOw= 4287 +IGRhbmdlcg== 4288 +IElt 4289 +YWE= 4290 +IGxvdmVk 4291 +IHB1cnBvc2U= 4292 +IGZpbmlzaGVk 4293 +IHBlYWNl 4294 +IG90 4295 +IGdsb2JhbA== 4296 +z4A= 4297 +IGFiZXI= 4298 +log= 4299 +IGNoYXJhY3RlcnM= 4300 +IG51cg== 4301 +IGRhbWFnZQ== 4302 +IGVtZXI= 4303 +IHByZWM= 4304 +IFdpcg== 4305 +IGluc3RpdA== 4306 +kdc= 4307 +IGFsbG93ZWQ= 4308 +Ym9u 4309 +IHRvZA== 4310 +0LXQs9C+ 4311 +IGpldHp0 4312 +IG1lZGlj 4313 +IHNtYWxsZXI= 4314 +Y2VlZA== 4315 +IGxldmVscw== 4316 +IGludGVsbA== 4317 +V2U= 4318 +IHNlbQ== 4319 +IGN1cnJlbnRseQ== 4320 +IG1vZGVybg== 4321 +IGNvbnRyYWN0 4322 +IGRldGFpbHM= 4323 +b3J0dW5hdGVseQ== 4324 +T1M= 4325 +IHN0YXRlcw== 4326 +IGFkanVzdA== 4327 +YW50YWdl 4328 +ZXo= 4329 +IFZlcnk= 4330 +IHNjYWxl 4331 +IHJlbGVhc2U= 4332 +IGZheg== 4333 +IGlj 4334 +aXR1ZGU= 4335 +QUM= 4336 +IFBhdA== 4337 +aWRlbg== 4338 +rZA= 4339 +IHByZWZlcg== 4340 +b2xvZ2ljYWw= 4341 +IEZhY2Vib29r 4342 +IOqwmQ== 4343 +IC4u 4344 +IE1ha2U= 4345 +INC60L7RgtC+0YA= 4346 +IERhdmlk 4347 +IEFmcmlj 4348 +IG1vZGU= 4349 +IENpdHk= 4350 +IHNoYWxs 4351 +INGE 4352 +aW1pbg== 4353 +INC30LA= 4354 +cm9t 4355 +dWE= 4356 +IGJleW9uZA== 4357 +IGRpc3RyaWI= 4358 +0LrRgw== 4359 +IERvZXM= 4360 +IHZpY3Q= 4361 +cmF0ZQ== 4362 +IHZhaQ== 4363 +IHN1Y2Nlc3NmdWw= 4364 +IGhvdXM= 4365 +YWhh 4366 +ZXN0cw== 4367 +IEVzdA== 4368 +IGRpc2NvdmVy 4369 +IHRoZXJlZm9yZQ== 4370 +Y2hh 4371 +IGN1cA== 4372 +IHBvcHVsYXRpb24= 4373 +IEls 4374 +c2M= 4375 +IHNwZW50 4376 +cmVs 4377 +IHVzZWZ1bA== 4378 +IHRhYg== 4379 +5p0= 4380 +IMU= 4381 +IOygnA== 4382 +IGNvbnNl 4383 +IHF1YW50 4384 +YXlh 4385 +IGJvbg== 4386 +IENoaW4= 4387 +IOqygw== 4388 +b3VuZHM= 4389 +0LXRiA== 4390 +ZWxsZQ== 4391 +IGljZQ== 4392 +MjE= 4393 +IGtpY2s= 4394 +IHN0ZXBz 4395 +IHRvbmlnaHQ= 4396 +0L3Ri9C5 4397 +cmVuY2g= 4398 +Lic= 4399 +IGdyYWI= 4400 +IGltcGxlbWVudA== 4401 +IOyImA== 4402 +IG1pc3Npb24= 4403 +IGNsZWFybHk= 4404 +IGFwcHJlY2lhdGU= 4405 +6IA= 4406 +IGZyZXNo 4407 +YXJt 4408 +IFR3bw== 4409 +IGV4ZWM= 4410 +IHByb2plY3Rz 4411 +IGNvbW11bml0aWVz 4412 +cmlibGU= 4413 +IHJlZ2lvbg== 4414 +IGZyZXF1 4415 +cm95 4416 +IGhvd2V2ZXI= 4417 +IHBhcnRuZXJz 4418 +YW5j 4419 +IG1pbmlt 4420 +IGxhdA== 4421 +IGZhbWlsaWVz 4422 +IGV2aWRlbmNl 4423 +IHB1bg== 4424 +cmFmdA== 4425 +IGxvc3M= 4426 +IG1hcA== 4427 +IGFueWJvZHk= 4428 +IGNoYW5naW5n 4429 +IHJ1bGVz 4430 +IG9yZ2FuaXphdGlvbg== 4431 +IGVzc2VudGlhbGx5 4432 +IFJlZA== 4433 +IGVsZW1lbnQ= 4434 +5pc= 4435 +IHZpcnQ= 4436 +cmF0 4437 +IHByaW50 4438 +YW5kZXI= 4439 +YXJlbg== 4440 +ZW1vcw== 4441 +zr/PhQ== 4442 +IGNvbmRpdGlvbnM= 4443 +YWJl 4444 +IGRhbmNl 4445 +0LjRgA== 4446 +IGRvcw== 4447 +0L7Rhw== 4448 +IFF1ZQ== 4449 +IHdhbGtpbmc= 4450 +IHRybw== 4451 +IGlk 4452 +IGFkZGl0aW9uYWw= 4453 +IGZ1bGx5 4454 +IGZhbnM= 4455 +IGFkZGl0aW9u 4456 +IGxpa2Vk 4457 +IMO8YmVy 4458 +IGJvdw== 4459 +ZGk= 4460 +IG1hc3Rlcg== 4461 +b2Zm 4462 +KTo= 4463 +bWJlcg== 4464 +IOus 4465 +5a8= 4466 +bGF1c2U= 4467 +IG9kZXI= 4468 +IHNhZmV0eQ== 4469 +IHJlYWN0 4470 +4K6/ 4471 +YnQ= 4472 +IGRpc2FwcA== 4473 +IGdpcmxz 4474 +U3Q= 4475 +IEFuZw== 4476 +IGZhaXRo 4477 +IHR1cm5z 4478 +IHRpZ2h0 4479 +IG1vdXRo 4480 +YW1p 4481 +emVy 4482 +IHdlYXA= 4483 +INCx0YPQtA== 4484 +IGhvc3BpdGFs 4485 +cmFpZA== 4486 +IG1pY3Jv 4487 +IFN0YXRl 4488 +IE1vc3Q= 4489 +YWdu 4490 +IGRlY2lkZQ== 4491 +IHBhdGllbnQ= 4492 +IGNvcm5lcg== 4493 +IGRpZWQ= 4494 +Tm8= 4495 +IFN0dWQ= 4496 +cmVuZA== 4497 +ZW1wdA== 4498 +IGxpZQ== 4499 +IGxpZg== 4500 +IEJlZm9yZQ== 4501 +dMOz 4502 +IFN1cGVy 4503 +IGJlbGw= 4504 +NjA= 4505 +IHByaXZhdGU= 4506 +IFBhdWw= 4507 +IGdpYg== 4508 +IGFncmU= 4509 +tOyEnA== 4510 +IHNpZw== 4511 +IGludmVzdGln 4512 +0Y/Rgg== 4513 +ZW5pbmc= 4514 +IGRpc3RhbmNl 4515 +IHdhcm0= 4516 +IGRpZ2l0YWw= 4517 +aW5lcg== 4518 +IHBhbmQ= 4519 +IENPVklE 4520 +0LPQvg== 4521 +Z24= 4522 +IHJhY2U= 4523 +IHByb3Vk 4524 +IHRlYWNoaW5n 4525 +INGC0L4= 4526 +7J6l 4527 +IEFsbGFo 4528 +SW4= 4529 +IHdvb2Q= 4530 +IGNvbG9ycw== 4531 +IHdpcmQ= 4532 +dWo= 4533 +aWRhZA== 4534 +IGN1c3RvbWVycw== 4535 +IGNvbm5lY3RlZA== 4536 +IGxheWVy 4537 +IGFjaGlldmU= 4538 +IHBlcnNwZWN0aXZl 4539 +IENvbGw= 4540 +2YI= 4541 +IGNsb3Vk 4542 +ISEh 4543 +IGVuZGVk 4544 +oIfqsow= 4545 +IG1hbmFnZW1lbnQ= 4546 +IHJpY2g= 4547 +IHN1YnN0 4548 +IHJlbW8= 4549 +IHNlcnZl 4550 +IHJlc2lzdA== 4551 +IHRob3VnaHRz 4552 +IGdyb3d0aA== 4553 +aWxpYXI= 4554 +IHJpZ2h0cw== 4555 +IGNoYXJnZQ== 4556 +IGNvbnNpc3Q= 4557 +IHdlcmRlbg== 4558 +IGVtYg== 4559 +YW5kb20= 4560 +IGh1cnQ= 4561 +IGthbg== 4562 +aWFz 4563 +0LvQvg== 4564 +IHNoaXQ= 4565 +IGJlZw== 4566 +IHJlY2VpdmVk 4567 +aXRhdGlvbg== 4568 +IG1lYXQ= 4569 +IGlzc28= 4570 +ZmZlZQ== 4571 +IGZhbW91cw== 4572 +IGNvbWZvcnRhYmxl 4573 +SUw= 4574 +IEJ5ZQ== 4575 +b3RoZXM= 4576 +IG1lZGljYWw= 4577 +IGVuam95ZWQ= 4578 +IGhlYWx0aHk= 4579 +IHd5 4580 +Y2llcw== 4581 +IGVmZm9ydA== 4582 +IGRvY3Rvcg== 4583 +IG1pbGl0YXJ5 4584 +TEFV 4585 +IGdybw== 4586 +IGJhdHRsZQ== 4587 +IGZlZA== 4588 +IGNhcGFj 4589 +IGFmcmFpZA== 4590 +aXZpbA== 4591 +INCy0YHQtQ== 4592 +IGxlbmd0aA== 4593 +eXNpcw== 4594 +IGJlaQ== 4595 +pO0= 4596 +IG9yZ2FuaXo= 4597 +b3Jn 4598 +aW5j 4599 +IGludGVyYWN0 4600 +IENoaW5lc2U= 4601 +IGFjY29yZGluZw== 4602 +IGluY3JlZGlibGU= 4603 +IGtpbGxlZA== 4604 +IGRhdWdodGVy 4605 +IM+A 4606 +0YvQsg== 4607 +IHNjaG9vbHM= 4608 +IMKr 4609 +bGxlcg== 4610 +IHNob3VsZG4= 4611 +bmFs 4612 +IGNyaXM= 4613 +IGNoaWNrZW4= 4614 +IGZhc3Rlcg== 4615 +IGV4dHJlbWVseQ== 4616 +IG9wcG9z 4617 +IG5vdXM= 4618 +ICs= 4619 +cmlh 4620 +IGZpbmFuY2lhbA== 4621 +IGV4Y2l0aW5n 4622 +IGpvdXJuZXk= 4623 +15nXnQ== 4624 +oOs= 4625 +IGRpc3BsYXk= 4626 +IG1lbW9yeQ== 4627 +IGhlYXZ5 4628 +0L3QtQ== 4629 +IHBhc3NlZA== 4630 +0YDQuA== 4631 +aWxlcw== 4632 +IHBzeWNo 4633 +IHNwZWNpZmljYWxseQ== 4634 +IGVuZ2FnZQ== 4635 +IGxlZA== 4636 +b3JnZQ== 4637 +IERlbQ== 4638 +b3JkZXI= 4639 +IDgw 4640 +IGNyZWFt 4641 +ZXN0ZXJkYXk= 4642 +IGVkZ2U= 4643 +INC/0L7Quw== 4644 +IGJ1bGw= 4645 +IGluZGlj 4646 +IGt0w7M= 4647 +IGhvcGVmdWxseQ== 4648 +dW1lbnRz 4649 +YWdlbg== 4650 +0L3QvtCz0L4= 4651 +IGhhdGU= 4652 +Y2h0 4653 +ODA= 4654 +IGVmZmlj 4655 +IOyngA== 4656 +IGludGVybmV0 4657 +IGJ1ZGdldA== 4658 +IHByb3BlcnR5 4659 +aWRheQ== 4660 +IOya 4661 +INC80L7Qtg== 4662 +b2xh 4663 +IHNob3dlZA== 4664 +IE1vbg== 4665 +IHRob3VzYW5k 4666 +QVA= 4667 +IHBvb3I= 4668 +dXNlZA== 4669 +IEphY2s= 4670 +IHPDpQ== 4671 +g70= 4672 +IGVzYw== 4673 +IHNvZnR3YXJl 4674 +IHF1YXI= 4675 +INio 4676 +IG5lY2Vzc2FyaWx5 4677 +b21lbg== 4678 +aXk= 4679 +IGV2ZW50dWFsbHk= 4680 +aXNoZWQ= 4681 +IGJyaWdodA== 4682 +RUQ= 4683 +IHNwbA== 4684 +IGRlbWFuZA== 4685 +IHRocmVhdA== 4686 +IHNpcg== 4687 +IHJlbGVhc2Vk 4688 +Y2tldA== 4689 +IOKAqw== 4690 +IHJlcXVpcmVk 4691 +IHZvdGU= 4692 +7Lk= 4693 +4K6k 4694 +IGRldmVsb3BlZA== 4695 +IOyCrA== 4696 +YXRvcnk= 4697 +IGRpcg== 4698 +Y2FwZQ== 4699 +IHNsaWdodGx5 4700 +w6w= 4701 +4LmJ 4702 +cmVldA== 4703 +IGRpc2Vhc2U= 4704 +IGNvdXJ0 4705 +IGl0ZW1z 4706 +IEVhcnRo 4707 +0YHRgtC4 4708 +0LbQtQ== 4709 +7LI= 4710 +IGNoYWxsZW5nZXM= 4711 +IEJyaXQ= 4712 +IGRlc2lnbmVk 4713 +MTI= 4714 +IGhlYXJpbmc= 4715 +IGxpc3RlbmluZw== 4716 +em8= 4717 +INGB0Ls= 4718 +IHBlcm8= 4719 +IHdlYXJpbmc= 4720 +cGxpYw== 4721 +IGNoZW0= 4722 +IGJhbGFuY2U= 4723 +IGJh 4724 +IHJlY2VpdmU= 4725 +aW1h 4726 +IHNpZ25pZmljYW50 4727 +INC80Ys= 4728 +YW5jaA== 4729 +IENy 4730 +IENvdW4= 4731 +6riI 4732 +IGpvYnM= 4733 +IG9mZmljaWFs 4734 +IHBlcm0= 4735 +b21z 4736 +IG9wcG9ydHVuaXRpZXM= 4737 +IG92ZXJhbGw= 4738 +IGh1cw== 4739 +b2Rlcw== 4740 +IG5hdGlvbg== 4741 +IFJlZw== 4742 +IG9yZA== 4743 +IHJlc3RhdXI= 4744 +IOyG 4745 +IG1lbA== 4746 +dmlu 4747 +IHdlbm4= 4748 +IGvDtm4= 4749 +5oM= 4750 +IG9waW5pb24= 4751 +6Kw= 4752 +IFNvbWV0aW1lcw== 4753 +54I= 4754 +0YnQtQ== 4755 +YXNj 4756 +T1U= 4757 +IDIwMjA= 4758 +IGRlbGljaW91cw== 4759 +aWdlcg== 4760 +IOyViA== 4761 +b2xl 4762 +IGhhbmRsZQ== 4763 +IGNpdA== 4764 +IO2VnA== 4765 +IGbDtnI= 4766 +b290aA== 4767 +IG5lY2Vzc2FyeQ== 4768 +IGluZGVwZW5k 4769 +5oQ= 4770 +aXN0ZW4= 4771 +aGFt 4772 +IMOpdA== 4773 +IG11bHRp 4774 +z4w= 4775 +Pyk= 4776 +IGNhbXB1cw== 4777 +IHRvcGlj 4778 +IHJhaW4= 4779 +IHBhbmVs 4780 +IFNhbQ== 4781 +IGxhcmdlcg== 4782 +YXVkaWVuY2U= 4783 +IHBhaWQ= 4784 +IGVjb25vbWlj 4785 +b2x0 4786 +IHN0cmVldA== 4787 +IENvbnQ= 4788 +IGRyaXZpbmc= 4789 +IOyggA== 4790 +IGhheQ== 4791 +IHByb2Zlc3Npb25hbA== 4792 +IEludGVybg== 4793 +5bg= 4794 +IGlucHV0 4795 +IGNhdGVn 4796 +IGNybw== 4797 +IGxs 4798 +RVQ= 4799 +0YvQuQ== 4800 +Kio= 4801 +IFpl 4802 +QkxF 4803 +IOyk 4804 +cmVlcw== 4805 +INCv 4806 +ZWRl 4807 +aWVydA== 4808 +IGZvbGQ= 4809 +IGR1cg== 4810 +IE5hdGlvbmFs 4811 +IOyWtOs= 4812 +YW5jZWQ= 4813 +IGZhaXJl 4814 +dXRlZA== 4815 +IGtpbmc= 4816 +IHdpbGQ= 4817 +b2k= 4818 +dXBiZWF0 4819 +IHByZXZlbnQ= 4820 +aXVz 4821 +IMOo 4822 +IHdpZGU= 4823 +IHJpbmc= 4824 +IHRpdGxl 4825 +IHN0YW5kaW5n 4826 +IGFsdGhvdWdo 4827 +IGhp 4828 +IHNhdWNl 4829 +IHNpZGVz 4830 +IGFuaW1hbHM= 4831 +aWxpbmc= 4832 +YXRpdmVz 4833 +7JeQ7ISc 4834 +IE92ZXI= 4835 +IGRlc3A= 4836 +IGNvbnNpZGVyZWQ= 4837 +YXJpZXM= 4838 +aWVycw== 4839 +IGVpbmVu 4840 +IHNpc3Rlcg== 4841 +IOuV 4842 +IFN1cmU= 4843 +cmllbmQ= 4844 +YWlnbg== 4845 +IHNob3du 4846 +IHNhYw== 4847 +IHNvbnQ= 4848 +IGNlbnR1cnk= 4849 +IHRpZW4= 4850 +IM66 4851 +IFNU 4852 +IG9sZGVy 4853 +aWVt 4854 +IHRydWx5 4855 +IFNp 4856 +IHdpbmRvdw== 4857 +aXF1ZXM= 4858 +YXJpbw== 4859 +IGxvY2F0aW9u 4860 +zro= 4861 +IOyc 4862 +dmk= 4863 +YWd1ZQ== 4864 +IFNvcnJ5 4865 +IGRpc3A= 4866 +IGhlbGw= 4867 +IMOJ 4868 +IHRyYWRl 4869 +IGNyaXRpY2Fs 4870 +IOqx 4871 +IG5hbWVk 4872 +IHByZXBhcmVk 4873 +IEhvdXNl 4874 +YWx1 4875 +IHRvdWdo 4876 +IHRyaXA= 4877 +IHNhbmQ= 4878 +Y2Vs 4879 +w7x6 4880 +IFB1dA== 4881 +IGFwYXJ0 4882 +aXNm 4883 +dmlz 4884 +IGxpYnI= 4885 +YXZlbg== 4886 +IHZpZQ== 4887 +IGVmZmVjdGl2ZQ== 4888 +4Liy 4889 +IG1hZ24= 4890 +IG11aXRv 4891 +IOq1 4892 +aGFs 4893 +IGxpbWl0 4894 +IG5pbmU= 4895 +IHdpbGxpbmc= 4896 +xLHFnw== 4897 +c3A= 4898 +0LXQsw== 4899 +aGk= 4900 +IGFsdA== 4901 +IEphbg== 4902 +IG9yaWdpbg== 4903 +IFVz 4904 +IGVsZW1lbnRz 4905 +IHVzZXM= 4906 +IGhlbHBmdWw= 4907 +IGZsYXQ= 4908 +IGZhbWlsaWFy 4909 +IFBhcms= 4910 +IGNvcmU= 4911 +IGNsb3Nlcg== 4912 +IGFjdGl2ZQ== 4913 +IGFkbWluaXN0 4914 +Q0U= 4915 +0L3Ri9C1 4916 +54Q= 4917 +IHJlbGF0aXZl 4918 +IG1lbnRhbA== 4919 +IHJhbmRvbQ== 4920 +IHBhcnRuZXI= 4921 +IHV0aWw= 4922 +cGhvbmU= 4923 +IHJ1bGU= 4924 +d3c= 4925 +IOyglQ== 4926 +IHNjaG9u 4927 +IGNvZmZlZQ== 4928 +SEE= 4929 +IGNvbm5lY3Rpb24= 4930 +IHVuaXQ= 4931 +bGF1Z2hpbmc= 4932 +bG9n 4933 +IGFwcGw= 4934 +0LvQsA== 4935 +dXNpYw== 4936 +IEJyYQ== 4937 +IGFueXdoZXJl 4938 +QVVESQ== 4939 +IHNlcGFyYXRl 4940 +Ym94 4941 +IGRpdmlk 4942 +IHRlc3Rpbmc= 4943 +IHNpY2s= 4944 +IHdlcmVu 4945 +INec1w== 4946 +IGFkdmFudGFnZQ== 4947 +IHRyYW5zZmVy 4948 +Jy4= 4949 +IOu5 4950 +IGZpbmRpbmc= 4951 +0L3QvtC5 4952 +IOyiiw== 4953 +IGZvcnQ= 4954 +IGVjb25vbXk= 4955 +IGxhY2s= 4956 +IGxlYXZpbmc= 4957 +IGRpbQ== 4958 +5Y4= 4959 +IFJlcw== 4960 +2K0= 4961 +IGRpc2N1c3Npb24= 4962 +0LXQvw== 4963 +IGdlcw== 4964 +ZHVjdA== 4965 +IGNoYWlu 4966 +IHVzZXJz 4967 +ZWNo 4968 +xYJh 4969 +IGRpc2g= 4970 +IGNhcmVmdWw= 4971 +IHRlYWNoZXI= 4972 +IG9wdGlt 4973 +IGZsdQ== 4974 +YXRpY2FsbHk= 4975 +IHJlZmxlY3Q= 4976 +IHRyZWF0bWVudA== 4977 +ZWVk 4978 +acSZ 4979 +w7k= 4980 +4K6+ 4981 +IGVxdWlw 4982 +IHBsYW5uaW5n 4983 +IHNvbHZl 4984 +IFRvbQ== 4985 +IGF2b2lk 4986 +IHBvdQ== 4987 +IGdyZWF0ZXI= 4988 +bGlu 4989 +T0w= 4990 +IEx1 4991 +IE1vcmU= 4992 +IGF0dHJhY3Q= 4993 +w6pu 4994 +dW5h 4995 +IHBob3Rv 4996 +ZXJhdGlvbg== 4997 +IHBsYW5ldA== 4998 +IGNvcHk= 4999 +IHZpc3VhbA== 5000 +aXJpbmc= 5001 +IGludGVybmF0aW9uYWw= 5002 +IGxhdWdoaW5n 5003 +IHRoaWNr 5004 +IGhvbGRpbmc= 5005 +IGJyaW5naW5n 5006 +IGxldHRlcg== 5007 +IGJ1cm4= 5008 +IGVmZmVjdHM= 5009 +aXTDqQ== 5010 +b3Vycw== 5011 +T1Q= 5012 +w6ptZQ== 5013 +IFNjaG9vbA== 5014 +15XXqg== 5015 +cm9wcmk= 5016 +bGln 5017 +zrHOuQ== 5018 +IGFkdWx0 5019 +IHN1Z2Fy 5020 +IHJpZGU= 5021 +IGhpZ2hsaWdodA== 5022 +IG5vYm9keQ== 5023 +IDIx 5024 +IGNoYXQ= 5025 +INC/0YDQuA== 5026 +IGlubm92 5027 +dW5nZW4= 5028 +IGF0dGFjaA== 5029 +ZWRvbQ== 5030 +5Yo= 5031 +eWw= 5032 +IGxlZ2Fs 5033 +IHJpY2U= 5034 +IGNvbGxhYm9y 5035 +a2luZw== 5036 +ZG93bg== 5037 +5pk= 5038 +IGlo 5039 +IEFj 5040 +b3VzbHk= 5041 +IHJhcA== 5042 +IHNvbGlk 5043 +IGdlbmVyYWxseQ== 5044 +IHBhdHRlcm4= 5045 +YWxp 5046 +4Lit 5047 +IHRyYW5zbA== 5048 +aW50ZXI= 5049 +YXVsdA== 5050 +IOuo 5051 +IGV4cHJlc3M= 5052 +IGV4YW1wbGVz 5053 +IGNob3Nl 5054 +IHRlbGxz 5055 +w61z 5056 +YWludA== 5057 +IFRlbGw= 5058 +IE1pY2hhZWw= 5059 +5qg= 5060 +IE51bWJlcg== 5061 +IHRhcA== 5062 +IGV4cGVyaW1lbnQ= 5063 +IGJlbmVmaXQ= 5064 +IOyw 5065 +IHNlcXU= 5066 +IGV4cGVuc2l2ZQ== 5067 +IGdlbmVyYXRpb24= 5068 +IE1hbnk= 5069 +IGFkZGluZw== 5070 +IGtpbA== 5071 +IGNhbXBhaWdu 5072 +IEFudA== 5073 +cmF3 5074 +b21tZW4= 5075 +IHNvdWw= 5076 +am8= 5077 +IEFjdHVhbGx5 5078 +YW1t 5079 +6rKg 5080 +IG1heGlt 5081 +IHNhbHQ= 5082 +IGNydQ== 5083 +IGNhbGxpbmc= 5084 +IGJhc2lz 5085 +YmFu 5086 +IGtlZXBpbmc= 5087 +IE1vcg== 5088 +ZWRz 5089 +7IY= 5090 +IHRvZG8= 5091 +0LDQvNC4 5092 +0L3Rjw== 5093 +IGxpdmVk 5094 +IER1 5095 +Zm9yY2U= 5096 +ZmVyZW5jZQ== 5097 +YWxh 5098 +IG9jY3Vy 5099 +c2s= 5100 +IHJlY2VudA== 5101 +IGNhcnM= 5102 +IHRyYWRpdGlvbmFs 5103 +ZW50bGU= 5104 +sog= 5105 +IGhlbGQ= 5106 +IG5hY2g= 5107 +IENlbnRlcg== 5108 +ZXJlbg== 5109 +IGJpbg== 5110 +2YE= 5111 +IGNvbW1l 5112 +IHJldmU= 5113 +IOyYpA== 5114 +IGV4cGVjdGVk 5115 +YWJpbA== 5116 +IGZvY3VzZWQ= 5117 +b3Y= 5118 +IGlQ 5119 +b3JpYWw= 5120 +aXJv 5121 +IGV0Yw== 5122 +YW1pbmc= 5123 +IFNvbg== 5124 +IHllc3RlcmRheQ== 5125 +IHN0cmF0ZQ== 5126 +INGG 5127 +IOuP 5128 +cGVz 5129 +IGFjdGl2aXR5 5130 +IGFkdmljZQ== 5131 +IG9wZW5pbmc= 5132 +Zmlu 5133 +IHJlbGE= 5134 +6ZY= 5135 +IGluc3RhbmNl 5136 +IEV2ZXJ5b25l 5137 +Ymw= 5138 +cGVu 5139 +IHZpc2lvbg== 5140 +IEFsZXg= 5141 +aWZvcm4= 5142 +IHRpY2s= 5143 +SGU= 5144 +IHN0cmF0ZWd5 5145 +IGtvbQ== 5146 +UEU= 5147 +IEds 5148 +IGVsZWN0cmlj 5149 +MTU= 5150 +IGRhaWx5 5151 +IGh1c2JhbmQ= 5152 +IHN0YXRpb24= 5153 +IGFuYWx5c2lz 5154 +eW5hbQ== 5155 +IGF0dGVtcHQ= 5156 +IGJpbGxpb24= 5157 +dmFudA== 5158 +IGZvcnRo 5159 +IG1hdGg= 5160 +YWx5 5161 +IGJlaGF2aW9y 5162 +IE1hcw== 5163 +a2Fu 5164 +IERheQ== 5165 +IGJsZXNz 5166 +IGd1dA== 5167 +IEhpZ2g= 5168 +b3g= 5169 +IGRyZXNz 5170 +IGplZA== 5171 +6K8= 5172 +5ZY= 5173 +IGV4cGVyaWVuY2Vz 5174 +aXN0YQ== 5175 +IGZpZ2h0aW5n 5176 +5bc= 5177 +INGB0Lo= 5178 +IG1vc3RseQ== 5179 +YXVzZQ== 5180 +IHBpY3R1cmVz 5181 +0LXQvdGC 5182 +IG1hZA== 5183 +IG1vZGVscw== 5184 +0YjQtQ== 5185 +IENvdW50 5186 +xYQ= 5187 +xYJv 5188 +ZXB0 5189 +T00= 5190 +IEFO 5191 +IHRyb3VibGU= 5192 +NDA= 5193 +IGJpcmQ= 5194 +dWxhdGU= 5195 +IG11cg== 5196 +IHByb2R1Y2U= 5197 +IG1hcnJpZWQ= 5198 +Yml0 5199 +IHRoZW9yeQ== 5200 +7Zg= 5201 +IGxlYWRlcg== 5202 +IExhc3Q= 5203 +QUE= 5204 +6LU= 5205 +IGltYWdlcw== 5206 +IGV4cGFuZA== 5207 +IFBvcg== 5208 +IHB1cmNo 5209 +IFNhbg== 5210 +IENocmlzdG1hcw== 5211 +IEF1c3RyYWw= 5212 +IHdpZA== 5213 +IE1pc3M= 5214 +IGtub3dpbmc= 5215 +IHpl 5216 +c2hpcA== 5217 +a3U= 5218 +0YXQvtC0 5219 +IEluc3RhZ3JhbQ== 5220 +IEluZGlh 5221 +IGVzdGE= 5222 +IENhbGlmb3Ju 5223 +IDcw 5224 +IGRyYWc= 5225 +IGJydXNo 5226 +IG5hbWVz 5227 +QW5k 5228 +IHlv 5229 +aWxsYQ== 5230 +IHNjaGVk 5231 +IGRlc3Ryb3k= 5232 +eWVhcg== 5233 +IHZhbW9z 5234 +INmE 5235 +w6dh 5236 +IGZvcmdvdA== 5237 +0LjQtQ== 5238 +IHJhaXNl 5239 +cmVtZQ== 5240 +7ZW0 5241 +IEdpdmU= 5242 +IGNvbnRhaW4= 5243 +cmFi 5244 +IGdpZnQ= 5245 +INGB0L8= 5246 +IHJlcXVlc3Q= 5247 +IHNodXQ= 5248 +IGRlZ3JlZXM= 5249 +IGJlbmVmaXRz 5250 +0YvQtQ== 5251 +IHN0dWRpZXM= 5252 +IGVuZHM= 5253 +IGV2ZXJ5d2hlcmU= 5254 +IGhlcm8= 5255 +b3Bo 5256 +ZXJyeQ== 5257 +IG1hdGVyaWFscw== 5258 +ZW5lZA== 5259 +TkE= 5260 +5Y0= 5261 +IG11eQ== 5262 +IHdvcnNl 5263 +IE1hZA== 5264 +IGRlY2lzaW9ucw== 5265 +aW9uZQ== 5266 +IGZvcmVpZ24= 5267 +bGF1Z2h0ZXI= 5268 +aWJlcg== 5269 +0LXQvdC40Y8= 5270 +44WL 5271 +IHJlYWxpemVk 5272 +IGlnbg== 5273 +IHdlYWs= 5274 +IM68 5275 +IHNjYXJlZA== 5276 +IGFzc3Vt 5277 +QUs= 5278 +778= 5279 +77+9 5280 +IGNvdmVyZWQ= 5281 +IFNhdA== 5282 +INC+0L0= 5283 +IGluZGl2aWR1YWxz 5284 +IGNvbXBhcmVk 5285 +MTE= 5286 +IEFkZA== 5287 +aWNsZXM= 5288 +IGNlcnQ= 5289 +cmFy 5290 +IGJyaWVm 5291 +IGFjdGl2aXRpZXM= 5292 +IGZhYg== 5293 +YmFy 5294 +IGFzdA== 5295 +IE90aGVy 5296 +IGNsYXNzZXM= 5297 +IG9n 5298 +IG1pc3Npbmc= 5299 +6Z0= 5300 +d2Vycw== 5301 +16k= 5302 +IGludHJvZHVjZQ== 5303 +IGVxdWF0aW9u 5304 +IG5vbQ== 5305 +IHBhaW50aW5n 5306 +dXNoaW5n 5307 +IEFQ 5308 +IGVuY291cmFnZQ== 5309 +IHNoaXA= 5310 +aXR0ZWU= 5311 +aXZlcnNl 5312 +b3Rh 5313 +bmFt 5314 +IGV4ZXJjaXNl 5315 +INCt 5316 +IG5hcw== 5317 +IHRob3VzYW5kcw== 5318 +IENhbGlmb3JuaWE= 5319 +IHNlcw== 5320 +IHJvdw== 5321 +nog= 5322 +IHBhbmRlbWlj 5323 +IHNraWxs 5324 +YmVs 5325 +IGRpcmVjdG9y 5326 +IG1pbGs= 5327 +IG51dA== 5328 +IG1vdGlvbg== 5329 +IGNsb3NlZA== 5330 +6Kg= 5331 +IGNyZWRpdA== 5332 +YWhy 5333 +IGNoZWVzZQ== 5334 +IGFsdGVybg== 5335 +aW1hdGVseQ== 5336 +IHN1c3Q= 5337 +IFRyYQ== 5338 +IGdsYWQ= 5339 +IGhpZ2hseQ== 5340 +IHdh 5341 +IHJlZHVjZQ== 5342 +IGJsZQ== 5343 +YWRvcg== 5344 +aW5hdGVk 5345 +aW9uZXM= 5346 +Y2llbnQ= 5347 +IGRlcGVuZGluZw== 5348 +IHNoYXJpbmc= 5349 +IGNhdWdodA== 5350 +cmFlbA== 5351 +IG1laHI= 5352 +IHBhc3Npb24= 5353 +55s= 5354 +IHJ1 5355 +IGZhcm0= 5356 +VEk= 5357 +YXZlcw== 5358 +IFJvYg== 5359 +IEJybw== 5360 +IG1vdGl2 5361 +cmV0Y2g= 5362 +cnVwdA== 5363 +IEJpZw== 5364 +IGFsbGU= 5365 +IGV0dA== 5366 +dWJz 5367 +IEphcGFuZXNl 5368 +IEhhbGw= 5369 +0LjQu9C4 5370 +QVVESUJMRQ== 5371 +56w= 5372 +IGNlbGxz 5373 +aWth 5374 +ZWxpbmU= 5375 +aWxlcg== 5376 +IOyj 5377 +IHNreQ== 5378 +SU5BVURJQkxF 5379 +ZW5kZQ== 5380 +YXB0ZXI= 5381 +IHBpbg== 5382 +IGdhdGhlcg== 5383 +aG9s 5384 +bGVjdGlvbg== 5385 +IHN5bg== 5386 +IHBsdWc= 5387 +cm91bmQ= 5388 +IHVuaXZlcnNpdHk= 5389 +aGli 5390 +IGZhbnRhc3RpYw== 5391 +a24= 5392 +IGhvbGU= 5393 +IFJlbWVtYmVy 5394 +aW5jdA== 5395 +YWtz 5396 +Q0g= 5397 +IGJyb2tlbg== 5398 +IHN0cmF0ZWc= 5399 +IGFsaXZl 5400 +IHRhbms= 5401 +IGNhcnQ= 5402 +cmF0ZWQ= 5403 +cmll 5404 +IFN0ZXA= 5405 +IEV2ZXJ5dGhpbmc= 5406 +IGJvdW5k 5407 +IHNvYnJl 5408 +IGN1c3RvbWVy 5409 +oYw= 5410 +dXJn 5411 +IEJpbGw= 5412 +TGE= 5413 +d2hhdA== 5414 +IHJlYWN0aW9u 5415 +IHNlc3Npb24= 5416 +IHBsYW5z 5417 +IOydtOugh+qyjA== 5418 +IGRvd25sb2Fk 5419 +7Jk= 5420 +dWVy 5421 +IGNhYg== 5422 +IGluc3Ry 5423 +aWZ5aW5n 5424 +IE5pY2U= 5425 +IHRlYW1z 5426 +xLFs 5427 +IGdvYWxz 5428 +aXNjaA== 5429 +IHRyYW5zcG9ydA== 5430 +IGFuaW1hbA== 5431 +IGNvc3Rz 5432 +IGNhbGxz 5433 +IHNlaHI= 5434 +7Ig= 5435 +cmlhbg== 5436 +IGRpYWw= 5437 +IHdlYXRoZXI= 5438 +4LmA 5439 +INCy0L7Rgg== 5440 +IFBsYXk= 5441 +IHNoYXJlZA== 5442 +IHNtb290aA== 5443 +YWJh 5444 +IGxlYXZlcw== 5445 +4K6p 5446 +IGNvbmNlbnQ= 5447 +IHNoaWZ0 5448 +IOuQmA== 5449 +IEdvdmVybg== 5450 +IGRlbW9uc3Q= 5451 +IGJ1dHRlcg== 5452 +IOyXrA== 5453 +IHNhdGlzZg== 5454 +iOus 5455 +IHJlY29nbml6ZQ== 5456 +IEZyZW5jaA== 5457 +IHZvbHVtZQ== 5458 +w6RuZA== 5459 +0YPQvA== 5460 +IOynhA== 5461 +IEtlZXA= 5462 +b3dh 5463 +aXBwZWQ= 5464 +0YHRgtGA 5465 +IGRldGVjdA== 5466 +IM+D 5467 +IGxpZnQ= 5468 +IGNsb3RoZXM= 5469 +IFN0b3A= 5470 +w7U= 5471 +bWV0 5472 +IGNsaW4= 5473 +IGFycg== 5474 +ZnJpZW5k 5475 +IHN0dWNr 5476 +WWU= 5477 +aGFuZA== 5478 +dW1h 5479 +IHNjcmk= 5480 +IGZ1Y2tpbmc= 5481 +Y3RvcnM= 5482 +16o= 5483 +IGpvaW5pbmc= 5484 +IGNldHRl 5485 +INij 5486 +IFdoaXRl 5487 +IGlocg== 5488 +zq0= 5489 +IGluY2x1ZGVk 5490 +ZXNzbw== 5491 +IGFjYWQ= 5492 +YnVt 5493 +IHNhYg== 5494 +INC00LvRjw== 5495 +dWZhY3Q= 5496 +IFJlcHVibGlj 5497 +cmlt 5498 +IHllbGxvdw== 5499 +IGxpbWl0ZWQ= 5500 +VEVS 5501 +IFR5 5502 +IG5vdGVz 5503 +dmVzdA== 5504 +0LjQtw== 5505 +YWxlZA== 5506 +IHBoYXNl 5507 +YW5kYQ== 5508 +IE1vbQ== 5509 +Ukk= 5510 +IGltbWVy 5511 +bWFs 5512 +IGluag== 5513 +IHlhbmc= 5514 +dWRpYmxl 5515 +0LDQsw== 5516 +IHNldHQ= 5517 +IG1hZ2lj 5518 +IGVuc3VyZQ== 5519 +IHNwcmluZw== 5520 +IHNob2Nr 5521 +IHdoZWVs 5522 +0L7Qs9C00LA= 5523 +IGNhbmNlcg== 5524 +IHJvb3Q= 5525 +0JA= 5526 +Z2VuY3k= 5527 +IOuN 5528 +aWk= 5529 +IG91dHB1dA== 5530 +IGNvbW1pdA== 5531 +IHdvcmtlcnM= 5532 +7JWE7JqU 5533 +INGB0LDQvA== 5534 +dmV5 5535 +IHBldQ== 5536 +IGNpdmls 5537 +aXNj 5538 +IGJyaW5ncw== 5539 +0YDQsNCy 5540 +YW5pYQ== 5541 +xIE= 5542 +Y3JhZnQ= 5543 +bWJvbA== 5544 +IGludGVsbGln 5545 +Ymk= 5546 +YWNpbmc= 5547 +eW91 5548 +IGJlY29taW5n 5549 +IERlcg== 5550 +ZW1h 5551 +IGluZ3JlZA== 5552 +IGNvbW1hbmQ= 5553 +IHVwZGF0ZQ== 5554 +IHByZW0= 5555 +IG9wZW5lZA== 5556 +hKQ= 5557 +0LXQvdC40LU= 5558 +IGdhcmQ= 5559 +IHN0YXRlbWVudA== 5560 +IHNjcmV3 5561 +IHByb3Rl 5562 +IGNhcmRz 5563 +IHRhc2s= 5564 +IGV2ZW5pbmc= 5565 +IHN0aXRjaA== 5566 +aW5lbg== 5567 +IEJlcg== 5568 +bWFyaw== 5569 +IERhZA== 5570 +INC10YHRgtGM 5571 +INee1w== 5572 +7JeI 5573 +IGJhbg== 5574 +IGNsaW0= 5575 +IGZyZWVkb20= 5576 +IG5vcm1hbGx5 5577 +0LXRgdGM 5578 +5aY= 5579 +IHByb3ZpZGVk 5580 +IOyekA== 5581 +IOyVhOuLiA== 5582 +IEtpbQ== 5583 +aWVkZXI= 5584 +7J2M 5585 +IGNpdGl6 5586 +IGJpa2U= 5587 +IGJhaw== 5588 +IG5vaXNl 5589 +IGNsaW1hdGU= 5590 +aXplcw== 5591 +IGluY3JlYXNpbmc= 5592 +IFRIRQ== 5593 +IGxpcXU= 5594 +IHBlcnNvbmFsbHk= 5595 +ZWY= 5596 +cmVzcA== 5597 +IGxlZ3M= 5598 +aW5kZXI= 5599 +IHBlZA== 5600 +IOunjg== 5601 +IGRlcGVuZA== 5602 +IHZhcmlldHk= 5603 +IElzcmFlbA== 5604 +IHdhc2g= 5605 +5YY= 5606 +IHF1aWV0 5607 +IEphbWVz 5608 +IEpldw== 5609 +IGZvcmV2ZXI= 5610 +IEludA== 5611 +IGNvdW50ZXI= 5612 +dXJhbmNl 5613 +IEFueXdheQ== 5614 +Y2FyZQ== 5615 +IE9ubHk= 5616 +Y2nDs24= 5617 +YWRp 5618 +IEV2 5619 +64uI6rmM 5620 +IM6x 5621 +IHNsb3dseQ== 5622 +INC+0LQ= 5623 +IG5vdGljZWQ= 5624 +aWVyZW4= 5625 +IGZlbGw= 5626 +INCR 5627 +IG3Dqm1l 5628 +IHdoZW5ldmVy 5629 +ISk= 5630 +IEh5 5631 +5bw= 5632 +b3Jkcw== 5633 +dXNpb24= 5634 +IFN0YXI= 5635 +IO2Y 5636 +IE1hYw== 5637 +aXZlbg== 5638 +IOyLnA== 5639 +IOyXhg== 5640 +IFR1cg== 5641 +IGdlcg== 5642 +cmlz 5643 +IHZleg== 5644 +INC70Y4= 5645 +IHZlcnN1cw== 5646 +2KfY 5647 +b2NvbGF0ZQ== 5648 +IHBsYW5l 5649 +IHpv 5650 +IHN1aXQ= 5651 +VGhpcw== 5652 +IG5lcnY= 5653 +IEFjYw== 5654 +0YPQtg== 5655 +7IKs 5656 +bmg= 5657 +ZW1l 5658 +IGF1c3M= 5659 +IG1lYXM= 5660 +IHRyw6hz 5661 +z4k= 5662 +0YHQu9C4 5663 +IEFydA== 5664 +IFNlY29uZA== 5665 +0L7Qu9GM0LrQvg== 5666 +Y2hv 5667 +aXRlY3Q= 5668 +0LXRgdGC 5669 +IGJvc3M= 5670 +IGluY29tZQ== 5671 +oKQ= 5672 +IHNoYWQ= 5673 +IGFwcHJvcHJp 5674 +IE1hbA== 5675 +b3B0 5676 +IGFydGlzdA== 5677 +IHBsYXlz 5678 +b3RoZXJz 5679 +IEludGVy 5680 +IHZpcnVz 5681 +IGh1bmc= 5682 +IGNvbnN0YW50 5683 +IHNjcmlwdA== 5684 +IHNub3c= 5685 +dWxm 5686 +a2V0 5687 +IGRldmljZXM= 5688 +IG1ldGFs 5689 +aWdodHM= 5690 +7IS4 5691 +IHNhbGVz 5692 +IHZlZ2V0 5693 +IGNvbGxlY3Rpb24= 5694 +IHZpYQ== 5695 +a2Vy 5696 +IGdvdHRlbg== 5697 +T1c= 5698 +acOpbg== 5699 +IGFjY3Vy 5700 +IHdhdmU= 5701 +dWx0eQ== 5702 +IEFpcg== 5703 +IGxlYWRpbmc= 5704 +aWNpbmc= 5705 +IGNlbnRyYWw= 5706 +IENocmlzdGlhbg== 5707 +ZnI= 5708 +IEFsdGhvdWdo 5709 +IHNvbmdz 5710 +IGZpZg== 5711 +0L3Ri9GF 5712 +IGJlbG9uZw== 5713 +b3NzaWJsZQ== 5714 +7LA= 5715 +IHBob3Rvcw== 5716 +aXNs 5717 +IHJlbGF4 5718 +c2E= 5719 +VVNJQw== 5720 +6rc= 5721 +IG1hbnVmYWN0 5722 +IFR3aXR0ZXI= 5723 +IGRhbmdlcm91cw== 5724 +IGh5ZA== 5725 +bGVhcg== 5726 +aWFudA== 5727 +IOKApg== 5728 +IHN1ZGRlbmx5 5729 +IGxhdWdo 5730 +IGFuZ2xl 5731 +IEdvdA== 5732 +IHdvcnJpZWQ= 5733 +0L7QtQ== 5734 +IHBhcA== 5735 +IE1hcnQ= 5736 +ZW5v 5737 +IGJhdHRlcnk= 5738 +INC/0L7RgQ== 5739 +IGxpZ2h0cw== 5740 +IGFybXM= 5741 +IEFicw== 5742 +bWVz 5743 +4oCT 5744 +dXNldW0= 5745 +IHRlYQ== 5746 +IE1pYw== 5747 +IGZvcm1lcg== 5748 +b2dyYXBoeQ== 5749 +IGFwcGxpY2F0aW9ucw== 5750 +IERpcmU= 5751 +IGZlZWRiYWNr 5752 +aXRjaGVu 5753 +eW9ydW0= 5754 +dWVk 5755 +aWd0 5756 +xrDhuw== 5757 +b3NpdGlvbg== 5758 +IERlbA== 5759 +IO2VmOs= 5760 +IEJhY2s= 5761 +YWRz 5762 +IHByaW1l 5763 +7KO8 5764 +7KOg 5765 +15E= 5766 +IG11dA== 5767 +XS4= 5768 +INCX 5769 +bG9j 5770 +a2lu 5771 +IGV4cGVydA== 5772 +IGFscmlnaHQ= 5773 +dW5ncw== 5774 +IHN1cHBseQ== 5775 +IGxlYWRlcnNoaXA= 5776 +IEZyYQ== 5777 +IHR5cGljYWxseQ== 5778 +IHNlbA== 5779 +IHRyZWVz 5780 +IDIy 5781 +aGFy 5782 +IHdvcnN0 5783 +IGJ1c3k= 5784 +YW50bw== 5785 +IFVw 5786 +IEJhcw== 5787 +IHByZXNlbnRhdGlvbg== 5788 +IHN0cmFuZ2U= 5789 +IHRoaW4= 5790 +0YLQtQ== 5791 +IHZlaGljbGU= 5792 +INC00L4= 5793 +Y2VsbGVudA== 5794 +NzA= 5795 +IHRpcmVk 5796 +IGNyaXNpcw== 5797 +IHRpbnk= 5798 +YXN5 5799 +IHJhbg== 5800 +6Yc= 5801 +IGZvcmNlcw== 5802 +INC+0Yc= 5803 +IGlkZW50aWZ5 5804 +IGFzc2Vzcw== 5805 +0LjRgtC1 5806 +U0U= 5807 +IGNyZWF0aXZl 5808 +558= 5809 +IGRlcGFydG1lbnQ= 5810 +IGluaXRpYWw= 5811 +IERhbQ== 5812 +YWt0 5813 +dmVyZQ== 5814 +IGluZmVjdA== 5815 +IHB1bXA= 5816 +4bqh 5817 +IHZpZWw= 5818 +IHJhcmU= 5819 +IGRvdA== 5820 +YXNoaW9u 5821 +ZW1wbA== 5822 +IGZsZXg= 5823 +IGtvbg== 5824 +IHRydWNr 5825 +IGxlY3Q= 5826 +IHBsYXN0aWM= 5827 +bGF3 5828 +IGxpa2Vz 5829 +IHJvdWdo 5830 +IE1BVA== 5831 +7Z6I 5832 +IGNvbW1lcg== 5833 +IGFzc2U= 5834 +IGNha2U= 5835 +IGFjdGlvbnM= 5836 +IGFkbQ== 5837 +IG90aGVyd2lzZQ== 5838 +IEhlYWx0aA== 5839 +IGNvbGxl 5840 +4LmA4Lg= 5841 +IHJ1Yg== 5842 +5pQ= 5843 +IHNjcg== 5844 +IHp1bQ== 5845 +IEhpbQ== 5846 +IGNoYW1w 5847 +IGNvbmNlcm5lZA== 5848 +IDUwMA== 5849 +IHBsYXRl 5850 +IE91dA== 5851 +IGRvbmM= 5852 +IGVxdWlwbWVudA== 5853 +IHRhdWdodA== 5854 +bGxlZA== 5855 +IO2Z 5856 +aXZh 5857 +IG1vdG9y 5858 +wrs= 5859 +IGd1aWRl 5860 +5Yk= 5861 +IHN0b3BwZWQ= 5862 +IHJhdA== 5863 +IGxhYm9y 5864 +IGFpbQ== 5865 +IHByZXBhcmU= 5866 +INGI 5867 +IHNob290aW5n 5868 +YW5uZWQ= 5869 +Y3JpcHQ= 5870 +IGVuZW15 5871 +IGRlcGVuZHM= 5872 +IG5hdg== 5873 +IGJlcg== 5874 +IGxhbmRz 5875 +IHVuaXZlcnM= 5876 +aXU= 5877 +IGZhY3Rvcg== 5878 +b2tpbmc= 5879 +IGNhcmJvbg== 5880 +YnV0 5881 +IExvdmU= 5882 +ZWxk 5883 +IM61 5884 +IGdh 5885 +IMOpcw== 5886 +IGJyZWFk 5887 +IHZvbHQ= 5888 +7Yo= 5889 +IHdhc3Rl 5890 +IGtlZXBz 5891 +IHN0b3I= 5892 +IGhvbm9y 5893 +IHVubGVzcw== 5894 +IGNvbHVt 5895 +IOuMgA== 5896 +IHBsYW50cw== 5897 +WWVhaA== 5898 +IGluY2x1ZGVz 5899 +IG94 5900 +IHBldXQ= 5901 +66eM 5902 +7IOB 5903 +aXN0cnk= 5904 +4Lix 5905 +IERlcGFydG1lbnQ= 5906 +YW50YQ== 5907 +IGZpbmdlcg== 5908 +IHN0cmV0Y2g= 5909 +IHN5bWJvbA== 5910 +IG5laWdoYm9y 5911 +5qw= 5912 +6rCE 5913 +fn4= 5914 +INGC0Ys= 5915 +IEFiZXI= 5916 +a2Vz 5917 +IG1hc3NpdmU= 5918 +IENI 5919 +IFNhbA== 5920 +16A= 5921 +IGR5bmFt 5922 +YWNoZQ== 5923 +IFByZQ== 5924 +IG1vbml0b3I= 5925 +ZW50ZWQ= 5926 +RU8= 5927 +IHJhaXNlZA== 5928 +aXN0aWNz 5929 +2qk= 5930 +IHZvdQ== 5931 +aXRlbg== 5932 +obA= 5933 +IGJ1c2luZXNzZXM= 5934 +IGVhcm4= 5935 +IG1vYmlsZQ== 5936 +aWRhZGU= 5937 +IGhhYmU= 5938 +eXI= 5939 +bGljdA== 5940 +IGNvbmR1Y3Q= 5941 +IGZlZGVyYWw= 5942 +IHdv 5943 +YnU= 5944 +IG5vbmU= 5945 +IHRlYWNoZXJz 5946 +INin2YTY 5947 +aWRlbnRz 5948 +2KfZhA== 5949 +IHRyZW5k 5950 +0LXQtg== 5951 +IGFsYnVt 5952 +IG1pY2g= 5953 +YmFzZWQ= 5954 +4Li1 5955 +IHRyYW5zaXRpb24= 5956 +INC90L4= 5957 +w7Vlcw== 5958 +aG9zdA== 5959 +ZWR5 5960 +IFByb2Y= 5961 +cGFu 5962 +aWpu 5963 +IGNhcGFjaXR5 5964 +dW5kbw== 5965 +INeR1w== 5966 +IGJyZWF0aA== 5967 +INC80LXQvQ== 5968 +IG3DvA== 5969 +7Zk= 5970 +IEF1dA== 5971 +aGluZ3Rvbg== 5972 +IG5vcg== 5973 +IGdhaW4= 5974 +cG9pbnQ= 5975 +WWVz 5976 +INiq 5977 +IE5h 5978 +w6Vy 5979 +IGnDpw== 5980 +IE1hcnk= 5981 +IHNwaW4= 5982 +IGFudGk= 5983 +IHNvbWVob3c= 5984 +IGxhd3M= 5985 +IG1vbWVudHM= 5986 +IGdyZQ== 5987 +IG1vdmVz 5988 +IFdvdWxk 5989 +IHByZWRpY3Q= 5990 +IHZyYQ== 5991 +IDIwMTk= 5992 +toQ= 5993 +IGZ1bmRhbWVudA== 5994 +MjU= 5995 +IHB1cmU= 5996 +IHdvdw== 5997 +IGlzbGFuZA== 5998 +IGludmVzdG1lbnQ= 5999 +IGJhdGg= 6000 +IFlh 6001 +IGhhcmRlcg== 6002 +IHRpcHM= 6003 +5Zc= 6004 +IGVsZWN0cm9u 6005 +IEJvYg== 6006 +IGJvbmQ= 6007 +b2RpZXM= 6008 +IEF1Zw== 6009 +IGdpYnQ= 6010 +IGNoYWly 6011 +IHR3aWNl 6012 +d29vZA== 6013 +IGNsYXI= 6014 +IG1hc2s= 6015 +IGhvbmVzdGx5 6016 +IDIwMTg= 6017 +dGllcw== 6018 +Jyw= 6019 +IHBlbnM= 6020 +IHN1cnByaXNlZA== 6021 +IGNvbW11bmljYXRpb24= 6022 +IHNwcg== 6023 +IHdob3Nl 6024 +IHN0YXJz 6025 +15DX 6026 +IOKAiw== 6027 +IHByb3Blcmx5 6028 +IGdyZXc= 6029 +b3Npbmc= 6030 +IGRpdmVycw== 6031 +QUQ= 6032 +IGVtcHQ= 6033 +IGV4cHJlc3Npb24= 6034 +4bq/ 6035 +IFBhbA== 6036 +IGp1c3RpY2U= 6037 +IHBhaXI= 6038 +d28= 6039 +IHNlYXQ= 6040 +b3J0ZXI= 6041 +IGxpbmtz 6042 +IE1lcg== 6043 +IHJlbmQ= 6044 +0L3QvtC1 6045 +dXBpZA== 6046 +IEhlbA== 6047 +IE1hcmNo 6048 +IExv 6049 +0YHRjA== 6050 +IGhhc24= 6051 +IGV2YWx1 6052 +aWxvcw== 6053 +IGZ1bmRpbmc= 6054 +IHZlbg== 6055 +dWFu 6056 +IE1hc3Rlcg== 6057 +IE9s 6058 +IEZyZQ== 6059 +IHlhcA== 6060 +IFNpcg== 6061 +c2No 6062 +IG1pc3Rha2U= 6063 +YW1hbg== 6064 +IGRpbm5lcg== 6065 +IFdhc2hpbmd0b24= 6066 +IG9yZ2FuaXphdGlvbnM= 6067 +INC20LU= 6068 +YXZpbmc= 6069 +IHbDrQ== 6070 +IGJpcnRoZGF5 6071 +IGJlYXI= 6072 +INmB 6073 +IGFmZm9yZA== 6074 +IHJldmVu 6075 +IHJlbGF0aW9uc2hpcHM= 6076 +cm91Z2g= 6077 +IFRpbWU= 6078 +IHRhZw== 6079 +IFN1bg== 6080 +dWFyeQ== 6081 +IFBv 6082 +Y2Fy 6083 +YWJpbGl0aWVz 6084 +IHByaXNvbg== 6085 +IGxpYw== 6086 +7KCV 6087 +aWRkZW4= 6088 +IHNwZWNpZXM= 6089 +6bs= 6090 +IGZpcm0= 6091 +IHNjb3Jl 6092 +IGRpdA== 6093 +IHNwZWN0 6094 +IHBlbA== 6095 +IGNvbXBsaWNhdGVk 6096 +IHJhbms= 6097 +IG9wcG9zaXRl 6098 +IHBpY2tlZA== 6099 +INC60L7QvQ== 6100 +ZWxlcg== 6101 +IG1pZw== 6102 +IFNs 6103 +IE5ldA== 6104 +IG5lY2s= 6105 +IEZyYW5jZQ== 6106 +IHRlY2huaWNhbA== 6107 +4Lih 6108 +IG1pbGVz 6109 +IHByaW1hcnk= 6110 +IHNlaW4= 6111 +c2Vz 6112 +IGxhdWdocw== 6113 +YnJh 6114 +xZtjaQ== 6115 +cmlhZ2U= 6116 +IG5pYw== 6117 +ZXRlcnM= 6118 +IMOq 6119 +b2xvZ2llcw== 6120 +IElT 6121 +cmFk 6122 +dWRv 6123 +xLFuZA== 6124 +bWFy 6125 +IGV4Y2g= 6126 +IGNvbXBldGl0aW9u 6127 +IGF1c3Np 6128 +IFNlcnY= 6129 +IHJlbnQ= 6130 +IGNob2NvbGF0ZQ== 6131 +IHdpZWRlcg== 6132 +IG5lYXJseQ== 6133 +IHNwZWVjaA== 6134 +IHVuYw== 6135 +IHBhcmFt 6136 +IEJyaXRpc2g= 6137 +IHJlbWFpbg== 6138 +4LiB 6139 +dXJ0 6140 +INi5 6141 +IGNyYWNr 6142 +YWlscw== 6143 +IHByb21pc2U= 6144 +IHBheWluZw== 6145 +acOf 6146 +IGFkYXB0 6147 +0LDQu9Cw 6148 +IG1vdmllcw== 6149 +IHdpcmU= 6150 +n6w= 6151 +IHRlcnJpYmxl 6152 +IHPDsw== 6153 +IHBlcmZlY3RseQ== 6154 +b3JkaW4= 6155 +IGrDoQ== 6156 +IGltcG9zc2libGU= 6157 +IFRocmVl 6158 +IG5o 6159 +IHR1cm5pbmc= 6160 +cnVt 6161 +IEJlbA== 6162 +aWdn 6163 +IHJlc3BvbnNpYmxl 6164 +0LjQuQ== 6165 +IGluY3JlZGlibHk= 6166 +d2k= 6167 +aWFubw== 6168 +IGh1bWFucw== 6169 +IMOH 6170 +IHNldHRpbmdz 6171 +IGpveQ== 6172 +b290 6173 +IGRlYWxpbmc= 6174 +aWxsZWQ= 6175 +IHN1cnJvdW5k 6176 +IGZvbGxvd2Vk 6177 +IHBvc3NpYmx5 6178 +IGluaXRp 6179 +c3Rlbg== 6180 +IHByb3M= 6181 +IGNhbmRpZA== 6182 +IGFzc2lnbg== 6183 +IHZpb2xlbmNl 6184 +V2VsbA== 6185 +IHJpc2U= 6186 +UFM= 6187 +IHRhbWLDqW0= 6188 +IOuTpA== 6189 +aWFuY2U= 6190 +eWFu 6191 +IGF1ZGlv 6192 +IEJldA== 6193 +IEFtZXJpY2Fucw== 6194 +IEFzcw== 6195 +aXNjaGVu 6196 +7J6F 6197 +IHVsdGltYXRlbHk= 6198 +IHBvbGlj 6199 +IG1ham9yaXR5 6200 +IEZpbmFsbHk= 6201 +ZXJhcA== 6202 +IGd1YXJk 6203 +IE1BVFQ= 6204 +IGJyb3du 6205 +0LzQuA== 6206 +IGNoYQ== 6207 +IEhvbHk= 6208 +IG5lcnZvdXM= 6209 +aXBwaW5n 6210 +xJlk 6211 +IFNh 6212 +k5zr 6213 +toA= 6214 +bGll 6215 +IG51Yw== 6216 +IEFwcg== 6217 +6Zs= 6218 +IEtvcmVh 6219 +ZWdv 6220 +IENhbmFkYQ== 6221 +IGvDtm5uZW4= 6222 +IGNvbXBhcg== 6223 +IGdhbno= 6224 +IE1haXM= 6225 +IHRoZW1l 6226 +IGtp 6227 +IGRyYXdpbmc= 6228 +YXpvbg== 6229 +IE9mZg== 6230 +dHQ= 6231 +IFdpbmQ= 6232 +IHRvZG9z 6233 +IG9idmlvdXM= 6234 +0L3QsNGP 6235 +SU0= 6236 +INCg 6237 +d2VsbA== 6238 +IGJsb3c= 6239 +IGhvb2s= 6240 +IGNpcmNsZQ== 6241 +IOuztA== 6242 +IGFyY2hpdGVjdA== 6243 +IEty 6244 +IGPDsw== 6245 +IHByb3RlY3Rpb24= 6246 +ZWdh 6247 +5Yc= 6248 +IHdhdGNoZWQ= 6249 +IGFuc3dlcnM= 6250 +IGRpZXQ= 6251 +aXZv 6252 +IHBvd2Rlcg== 6253 +IHlvdXJz 6254 +IGhpZ2hlc3Q= 6255 +RkY= 6256 +5bo= 6257 +IGJveXM= 6258 +w7Z5bGU= 6259 +IGx1bmNo 6260 +IElJ 6261 +IHNldHM= 6262 +IG1vbGU= 6263 +24E= 6264 +IHdpbnRlcg== 6265 +IGx1Y2t5 6266 +IHJlc3BvbnNpYmlsaXR5 6267 +IHNpZ25hbA== 6268 +IHdvbmRlcmluZw== 6269 +IGF4 6270 +IGNvb2tpbmc= 6271 +0L7QstC+0YA= 6272 +bGVn 6273 +INC/0L7Rgg== 6274 +IHN1cnByaXNl 6275 +IGRlbW9jcg== 6276 +IGxvb3A= 6277 +IGphZw== 6278 +IGN1cmlvdXM= 6279 +IG1hcmtldGluZw== 6280 +0J0= 6281 +YXJvbg== 6282 +IEFwcGxl 6283 +IHZpcnR1YWw= 6284 +IDE5OA== 6285 +bm9vbg== 6286 +IE1ldA== 6287 +0L7RgdGC0L4= 6288 +0L7QsdGL 6289 +aXR1 6290 +IEF3 6291 +IGJ1eWluZw== 6292 +IHJlc3RhdXJhbnQ= 6293 +IEJ1ZA== 6294 +IGRvdWJ0 6295 +IGdyYW50 6296 +IHZlcmQ= 6297 +IGNhc2g= 6298 +IGZhY3VsdHk= 6299 +VGhhdA== 6300 +IEVpbg== 6301 +IHdlZA== 6302 +aXRuZXNz 6303 +IE1hZw== 6304 +bmVs 6305 +IG5hcnI= 6306 +IGFjY2lkZW50 6307 +IG1lZGl1bQ== 6308 +ZW1lbnRz 6309 +IGNyb3c= 6310 +bmlnaHQ= 6311 +7J28 6312 +IGxpYnJhcnk= 6313 +0LDRjtGC 6314 +IHRhbWJpw6lu 6315 +IHJlZmVyZW5jZQ== 6316 +IGZvdXJ0aA== 6317 +aG91c2U= 6318 +dmVudGlvbg== 6319 +IGZpbGxlZA== 6320 +IENvdXI= 6321 +aWJy 6322 +IG5n 6323 +IGRldmVsb3Bpbmc= 6324 +IHByb3ZpZGVz 6325 +IHBvbGw= 6326 +IHRyYWZmaWM= 6327 +YXJlbnRseQ== 6328 +4K6f 6329 +IGZvcm1z 6330 +IGNsaWVudA== 6331 +IGdlbnRsZQ== 6332 +IG11c3M= 6333 +IENvbmdyZXNz 6334 +IEluZGlhbg== 6335 +Y2Vhbg== 6336 +IHBpbA== 6337 +IGN6eQ== 6338 +c3Rvb2Q= 6339 +dXR5 6340 +IG7DpA== 6341 +IHNwZW5kaW5n 6342 +IGNvbnN0cnVjdGlvbg== 6343 +aW5hdWRpYmxl 6344 +IOuniA== 6345 +iOustA== 6346 +IOyDnQ== 6347 +b21h 6348 +b3Nlbg== 6349 +YWdv 6350 +IGxhcmdlc3Q= 6351 +44WL44WL 6352 +IHVuaXZlcnNl 6353 +YmVz 6354 +b3Nh 6355 +INC10LPQvg== 6356 +IGR1ZGU= 6357 +IE1BUg== 6358 +IGluZGVlZA== 6359 +zrXOuQ== 6360 +IG1hbmFnZWQ= 6361 +IFNob3VsZA== 6362 +U28= 6363 +IGFwcGxpZWQ= 6364 +IGZhaXJseQ== 6365 +IERlbg== 6366 +IGFuYWx5 6367 +IGNvbnN0YW50bHk= 6368 +0YHQvw== 6369 +SG93 6370 +IFNheQ== 6371 +ZW5jaWVz 6372 +IFBD 6373 +IGVnZ3M= 6374 +4K6w 6375 +IGV0aA== 6376 +IEVudMOjbw== 6377 +aW5hcg== 6378 +aW90 6379 +IGN6 6380 +IEV1cm9wZWFu 6381 +IEFN 6382 +IGPDoQ== 6383 +IHJhZGlv 6384 +p4w= 6385 +IGhpZGU= 6386 +IFN0YXJ0 6387 +IGNsdWI= 6388 +IEhvcGU= 6389 +IGVmZm9ydHM= 6390 +bHVzaW9u 6391 +IGNpdGllcw== 6392 +aG9uZQ== 6393 +IHJlYWNoZWQ= 6394 +IGd1aWQ= 6395 +cm9pZA== 6396 +IGhhcm0= 6397 +IGN1dHRpbmc= 6398 +IGJ1bA== 6399 +MTg= 6400 +aWVzdA== 6401 +IE1leA== 6402 +IGlyb24= 6403 +IGFmdGVybm9vbg== 6404 +IGhhbGw= 6405 +IHByenk= 6406 +IGdvc2g= 6407 +IGluZmx1ZW5jZQ== 6408 +INCy0LjQtA== 6409 +IGluY3JlYXNlZA== 6410 +IE1pbmlzdGVy 6411 +IGRpc2Np 6412 +IFBldGVy 6413 +IHZlcnQ= 6414 +IG1lbnU= 6415 +IHNlbGxpbmc= 6416 +dXJhbGx5 6417 +IHF1b3Rl 6418 +IMKh 6419 +IGNvbnRpbnVlcw== 6420 +bXByZQ== 6421 +IMWfZXk= 6422 +aXR1dGlvbg== 6423 +INC90LDRgQ== 6424 +Y2xlcw== 6425 +IEdlcm1hbg== 6426 +Y3p5 6427 +INCj 6428 +QmU= 6429 +IGtpdGNoZW4= 6430 +IFRyeQ== 6431 +aXBl 6432 +IGljb24= 6433 +YXJw 6434 +IHByb3ZpZGluZw== 6435 +IFRyYW5z 6436 +IHRlY2huaXF1ZQ== 6437 +IGjDpHI= 6438 +IGluZnJhc3Q= 6439 +IHN1c3A= 6440 +w7xjaw== 6441 +aWNpcA== 6442 +INCV 6443 +IGNpbg== 6444 +7Ja06w== 6445 +IHByeg== 6446 +IGNvbXBvbmVudA== 6447 +IGJ5ZQ== 6448 +IEJpYmxl 6449 +aXplcg== 6450 +Q2g= 6451 +IHNvbHV0aW9ucw== 6452 +IGFjY29tcGw= 6453 +IDIwMTY= 6454 +SUU= 6455 +IFRh 6456 +IGFzc3VtZQ== 6457 +IGxpcXVpZA== 6458 +IOuouQ== 6459 +IHF1YXJ0ZXI= 6460 +IGZlbWFsZQ== 6461 +IFRoaW5r 6462 +IHN0YXR1cw== 6463 +aXR1dGU= 6464 +IGNvYWNo 6465 +IHJlaW4= 6466 +IGNvbWJpbmF0aW9u 6467 +6Lc= 6468 +IFRlcg== 6469 +IG9iamVjdHM= 6470 +IGRpc3RyaWN0 6471 +IG1ha2V1cA== 6472 +IG11cmRlcg== 6473 +d2Fz 6474 +ZmVu 6475 +IGJvd2w= 6476 +IHB1Ymxpc2hlZA== 6477 +IHNwb3J0cw== 6478 +IGlkZW50aXR5 6479 +IHNlZW1lZA== 6480 +IGFjdGluZw== 6481 +0LvRjg== 6482 +cml4 6483 +IHVwbG9hZA== 6484 +IGhhc3Q= 6485 +IGJvYXQ= 6486 +IE1vZA== 6487 +cmlv 6488 +ID0= 6489 +IGN5Y2xl 6490 +r7g= 6491 +IGxvdWQ= 6492 +dXN0ZWQ= 6493 +Y29taW5n 6494 +IDIwMTc= 6495 +IG9udA== 6496 +IGxlZ2lzbA== 6497 +IHN0cnVjdA== 6498 +IFNvbWV0aGluZw== 6499 +IGNvbmZsaWN0 6500 +IHVwcGVy 6501 +IG1hbmFnZXI= 6502 +IG1vcnQ= 6503 +IGZyYQ== 6504 +IMSw 6505 +IE1pa2U= 6506 +IFdvcms= 6507 +IG7Dsw== 6508 +cGhlcmU= 6509 +IOyCrOs= 6510 +IExhbmQ= 6511 +IGZpbHRlcg== 6512 +IHByb21vdA== 6513 +5rA= 6514 +lbw= 6515 +IHJlY29yZGluZw== 6516 +150= 6517 +IGFzc29jaWF0ZWQ= 6518 +IGZ1ZWw= 6519 +dW5kZXI= 6520 +IGVsZWN0aW9u 6521 +IGVtcGxveWVlcw== 6522 +IENvbXA= 6523 +0YDRg9Cz 6524 +IFdv 6525 +cm9s 6526 +IHNhdmVk 6527 +IEhvbg== 6528 +IFZp 6529 +YWNh 6530 +cHJldA== 6531 +IHdldA== 6532 +IHN0dXBpZA== 6533 +IGxhZA== 6534 +IGZlc3Q= 6535 +IHdha2U= 6536 +INC40L0= 6537 +IGdyZWF0ZXN0 6538 +IEppbQ== 6539 +IHNlcmlvdXNseQ== 6540 +IOy5 6541 +IGZlZWxpbmdz 6542 +IDMwMA== 6543 +aWF0aW9u 6544 +IGJlYXV0eQ== 6545 +IOyemA== 6546 +IHNhbg== 6547 +k6A= 6548 +IC0o 6549 +IGNvbnNjaW91cw== 6550 +INC00LXQuw== 6551 +Ynll 6552 +55k= 6553 +TWFu 6554 +IGxldHM= 6555 +IHNob2Vz 6556 +eWQ= 6557 +IGRpc2FwcGU= 6558 +IENvdW50eQ== 6559 +IFNjb3R0 6560 +IGJ1dHQ= 6561 +IGFxdcOt 6562 +IGNvbmZpZw== 6563 +cmVzcG9uZA== 6564 +TEFVR0g= 6565 +qeuLiOuLpA== 6566 +IGRpdmlkZWQ= 6567 +IGFjcXU= 6568 +IHpvbmU= 6569 +IGtvbW0= 6570 +YcOnw6Nv 6571 +7Kec 6572 +Y3V0 6573 +IDIz 6574 +IG1heGltdW0= 6575 +cm9n 6576 +IHJ1bnM= 6577 +IGNvbXBvbmVudHM= 6578 +IGFycml2ZWQ= 6579 +IGNvbmZpZGVudA== 6580 +0YDQvtCy 6581 +IGhlaWdodA== 6582 +IHByb2NlZA== 6583 +RU0= 6584 +INCt0YLQvg== 6585 +IE1lbg== 6586 +IHRhbGtz 6587 +IGNvbmZpZGVuY2U= 6588 +IENocmlz 6589 +IGxlYWRz 6590 +IG5vc2U= 6591 +ZmFsbA== 6592 +YmI= 6593 +IE5vdGhpbmc= 6594 +aXNlcg== 6595 +IGluZGVwZW5kZW50 6596 +IG1pbm9y 6597 +IHN5bQ== 6598 +bGVu 6599 +Y2llbmNl 6600 +IGZhc2hpb24= 6601 +IHNleHVhbA== 6602 +IGJ1bg== 6603 +aGVyZQ== 6604 +IHNvaWw= 6605 +IGRpZXNl 6606 +IHNoYXA= 6607 +IGVtcHR5 6608 +IGpvdXJuYWw= 6609 +YWdvbg== 6610 +IFRoZWly 6611 +IHdlZWtlbmQ= 6612 +w610 6613 +IGVycm9y 6614 +IG5hcg== 6615 +w7g= 6616 +6Kk= 6617 +YW5jeQ== 6618 +IOyVig== 6619 +IGZvcmVzdA== 6620 +IGhhY2Vy 6621 +IG1pc3NlZA== 6622 +IGV2aWw= 6623 +IHN0b3JhZ2U= 6624 +IHNpbmdpbmc= 6625 +aW5oYQ== 6626 +IGtub2Nr 6627 +IGltcHJlc3M= 6628 +INC+0YfQtdC90Yw= 6629 +IEdvbGQ= 6630 +IFN1cg== 6631 +IFBvcnQ= 6632 +IExvbmQ= 6633 +IGZhemVy 6634 +b3R5 6635 +b3Rv 6636 +IGFueA== 6637 +IFdpbGxpYW0= 6638 +IGV4aXN0aW5n 6639 +cGxhY2U= 6640 +IENE 6641 +zrM= 6642 +IENvbGxlZ2U= 6643 +bG9y 6644 +IEVhc3Q= 6645 +c2Vu 6646 +ZmFjaA== 6647 +b2Z0 6648 +IGV4cGVyaWVuY2Vk 6649 +IGxvdmVz 6650 +aW1t 6651 +IHBvbHk= 6652 +IGVzc2U= 6653 +7KQ= 6654 +IEdyYW5k 6655 +6Kc= 6656 +Y2hlcg== 6657 +IHZpY3RpbQ== 6658 +IEdlcw== 6659 +0LvRjA== 6660 +dmlzaW9u 6661 +IHRhbGw= 6662 +IGxlbnM= 6663 +INC30L3QsA== 6664 +IEJvdGg= 6665 +IOyy 6666 +IHN1c3RhaW4= 6667 +IGFyZ3VtZW50 6668 +IGZhY3RvcnM= 6669 +IGF1dG9tYXRpY2FsbHk= 6670 +IGZydWl0 6671 +IGxpYmVy 6672 +IGFsZQ== 6673 +IFByZXNz 6674 +IEJh 6675 +INCz0L4= 6676 +IGh1bmRyZWRz 6677 +dGhhdA== 6678 +IFJpY2g= 6679 +IHJlY2lwZQ== 6680 +IElU 6681 +6Ic= 6682 +4bql 6683 +IGRlc2NyaWJl 6684 +IGRyaXZlcg== 6685 +IE9jdA== 6686 +IE1hdA== 6687 +0LTQtQ== 6688 +IG1lYWw= 6689 +IGxhdGVzdA== 6690 +IHRoZXJhcA== 6691 +IGNvbXBhcmU= 6692 +IEFtYXpvbg== 6693 +IOyigA== 6694 +IFJ1c3NpYQ== 6695 +IHN0cmluZw== 6696 +IGth 6697 +IENvbW11bg== 6698 +IGRpYQ== 6699 +SXM= 6700 +IG1pbGxpb25z 6701 +IGNvcnBvcg== 6702 +IGNvcnJlc3BvbmQ= 6703 +IGZpeGVk 6704 +IEpvZQ== 6705 +2Y4= 6706 +IHZpZXdz 6707 +IHJpdmVy 6708 +IHN0dWRpbw== 6709 +aWdnZXI= 6710 +IGZsYXZvcg== 6711 +IHByZXNlbmNl 6712 +IHVuaXRz 6713 +IHNhdmluZw== 6714 +YXZvdXI= 6715 +IHBlc3Nv 6716 +b3JpdGg= 6717 +IGhlcnM= 6718 +IE5hdA== 6719 +YXNpb24= 6720 +IEZyYW5r 6721 +0L7RiA== 6722 +xYJ5 6723 +7YQ= 6724 +IGVpbmVt 6725 +IGZ1bmN0aW9ucw== 6726 +dW1hbg== 6727 +IG5vcnRo 6728 +IOyghA== 6729 +IGhvcnNl 6730 +dmlk 6731 +IHBsZWFzdXJl 6732 +0LDRiA== 6733 +w6llcw== 6734 +aW5kYQ== 6735 +IHRhaWw= 6736 +IGV4cGxvcmU= 6737 +U1Q= 6738 +IGNvbW1lcmNpYWw= 6739 +IER1cmluZw== 6740 +YXJs 6741 +XTo= 6742 +Zml0 6743 +IHJhdGVz 6744 +5rM= 6745 +TVVTSUM= 6746 +IGhvdXNpbmc= 6747 +IGVpbmVy 6748 +IHNpdHVhdGlvbnM= 6749 +5os= 6750 +IGRlY3Jl 6751 +IGFwcHJvcHJpYXRl 6752 +0LXQvdC90L4= 6753 +JS4= 6754 +IGJhYw== 6755 +IHdhdA== 6756 +ZW5zaXR5 6757 +w6Ro 6758 +a25vd24= 6759 +aXR6 6760 +IGVtb3Rpb25hbA== 6761 +ZXJ2YXRpb24= 6762 +IGJsaW5k 6763 +MTY= 6764 +7YM= 6765 +IGpvaW5lZA== 6766 +IGxvY2F0ZWQ= 6767 +INGB0Lw= 6768 +YWRhcw== 6769 +YmVyZw== 6770 +IGRlc3M= 6771 +IGRlYXI= 6772 +ZWRlbg== 6773 +Y29z 6774 +IGFkb3B0 6775 +MTAw 6776 +b3dl 6777 +IENoZWNr 6778 +aXNtbw== 6779 +IHNpbXBs 6780 +IGFuZ3J5 6781 +INC80LXQvdGP 6782 +IENhbQ== 6783 +IHBhZA== 6784 +IGF0dGVuZA== 6785 +IHNhbXBsZQ== 6786 +IOyb 6787 +IElO 6788 +dWxvdXM= 6789 +IFNhcg== 6790 +IFNob3c= 6791 +IGluZnJhc3RydWN0dXJl 6792 +IEF1Z3VzdA== 6793 +IGxlc3Nvbg== 6794 +IG5pZXQ= 6795 +5o4= 6796 +IGZvaQ== 6797 +IGJyb2tl 6798 +dHI= 6799 +55U= 6800 +IDQ1 6801 +IGdldw== 6802 +0YPQvw== 6803 +YXRp 6804 +IG1haW50YWlu 6805 +IGFydGlzdHM= 6806 +aW5nZXI= 6807 +ZXJ2ZWQ= 6808 +SUE= 6809 +IGVxdWFscw== 6810 +IG9wZXJhdGlvbg== 6811 +aWxseQ== 6812 +IOuCtA== 6813 +IGNyb3dk 6814 +IGludGVybmFs 6815 +IHRlc3Rz 6816 +IFJvY2s= 6817 +IENvbnM= 6818 +IOuEiOustA== 6819 +d2Fy 6820 +IHNvdQ== 6821 +IGNoYXJ0 6822 +IEp1bmU= 6823 +IEFwcmls 6824 +Z2VudA== 6825 +IHZlbnQ= 6826 +IHF1YW5k 6827 +IEtvcmVhbg== 6828 +aW1v 6829 +54k= 6830 +aWRlcnM= 6831 +IG1vdW50YWlu 6832 +0YHRgtCw0LI= 6833 +aWpr 6834 +IGRpc2NvdmVyZWQ= 6835 +IFN1bmQ= 6836 +IFNpbA== 6837 +IHNvbG8= 6838 +wrQ= 6839 +IHNjaG9s 6840 +IEVhY2g= 6841 +57U= 6842 +IGJhcmU= 6843 +IO2M 6844 +IHbDrWRl 6845 +IGluZ3JlZGllbnRz 6846 +IEl0cw== 6847 +nbzqs6A= 6848 +IOyK 6849 +z40= 6850 +IExlZQ== 6851 +IHNjYXJ5 6852 +IHByaW5jaXA= 6853 +IHNwaXJpdHVhbA== 6854 +7IU= 6855 +IEhvbGQ= 6856 +IGRlZmluZQ== 6857 +IExlcw== 6858 +IE5vcg== 6859 +IEVuZA== 6860 +IGJsb2c= 6861 +IEdyZWVu 6862 +0LDQtdGC0YHRjw== 6863 +cGFydA== 6864 +ZWxlcw== 6865 +IFVuZGVy 6866 +IHBhcnRl 6867 +IDM1 6868 +IHNlY3Rvcg== 6869 +IFNlcHQ= 6870 +IGF1dGg= 6871 +4K6u 6872 +b21pbg== 6873 +IGNsaWVudHM= 6874 +IGNp 6875 +IEZyaWRheQ== 6876 +ZXJhcw== 6877 +IHR3ZQ== 6878 +dWxhdGVk 6879 +IGN1bHR1cmFs 6880 +INGB0LLQvg== 6881 +IOuNlA== 6882 +IMO6 6883 +IHBhcmNl 6884 +4K6y 6885 +IHRyYWRpdGlvbg== 6886 +IGp1ZGdl 6887 +IEdlbmVyYWw= 6888 +IGRldGVybWluZQ== 6889 +IElzbg== 6890 +IFBM 6891 +bmVhdGg= 6892 +IG1hdHRlcnM= 6893 +7ZW07A== 6894 +IV0= 6895 +0LDRhQ== 6896 +IHBvb2w= 6897 +IHZhcmlhYmxl 6898 +IHZhY2NpbmU= 6899 +IGNhdXNlZA== 6900 +IHdlc3Q= 6901 +IFllcA== 6902 +ZmFzdA== 6903 +IHBoaWxvcw== 6904 +aG9yYQ== 6905 +IGNvbnRpbnVlZA== 6906 +IHVuZm9ydHVuYXRlbHk= 6907 +5pU= 6908 +IGZsaWdodA== 6909 +IHdyYXA= 6910 +IGh1aA== 6911 +IEFic29sdXRlbHk= 6912 +IHBpbms= 6913 +IHJlbWFpbnM= 6914 +IG7DqQ== 6915 +IGZsZQ== 6916 +IFNvbA== 6917 +IGxvc2luZw== 6918 +IGFsZ29yaXRo 6919 +IHJlcXVpcmVz 6920 +IGZvdW5kYXRpb24= 6921 +IEJ1cg== 6922 +IHByb2Zlc3Npb24= 6923 +IE1pZA== 6924 +IOutkA== 6925 +Y2Fu 6926 +IE1pbA== 6927 +IHlvdW5nZXI= 6928 +IGFwcGVhcnM= 6929 +dGVybQ== 6930 +7ZWY6rOg 6931 +YWNsZQ== 6932 +IExvbmRvbg== 6933 +IGVuZ2luZWVyaW5n 6934 +4Lii 6935 +IGFkdmVudA== 6936 +7IS47JqU 6937 +IOq4sA== 6938 +IE1hag== 6939 +0YDQtdC8 6940 +aW5ndQ== 6941 +IFVL 6942 +dXJv 6943 +c3Bl 6944 +IHRlbnQ= 6945 +IHJlcG9ydGVk 6946 +IEFM 6947 +SGV5 6948 +IOunkA== 6949 +IGRlbnQ= 6950 +IEF1c3RyYWxpYQ== 6951 +IEphbnVhcnk= 6952 +s7Q= 6953 +YWd1ZXM= 6954 +YXJzaA== 6955 +cmln 6956 +IHRpZW5l 6957 +4Lij 6958 +zq4= 6959 +IG1hY2hlbg== 6960 +dW50ZQ== 6961 +0YPRgQ== 6962 +IGVsZWN0cg== 6963 +IHR1dG9yaWFs 6964 +IHBsYWNlZA== 6965 +IOydtOqxsA== 6966 +IENvdW5jaWw= 6967 +7ZaI 6968 +sOumrA== 6969 +YWhyZW4= 6970 +IOq3uOuemA== 6971 +IHByb3Zl 6972 +Zm9s 6973 +IHF1ZXI= 6974 +IGNoZWFw 6975 +IEZhdGhlcg== 6976 +IFBvd2Vy 6977 +k5w= 6978 +IHB1cnM= 6979 +IGVzcA== 6980 +IEJyZQ== 6981 +6riw6w== 6982 +b21hcw== 6983 +0LjQu9GM 6984 +IGdlaHQ= 6985 +b3N0ZXI= 6986 +6rO8 6987 +IGZpbGVz 6988 +INCn 6989 +YmVsbA== 6990 +IHdob20= 6991 +IOuY 6992 +IGV4Y2VsbGVudA== 6993 +IGRhdGFi 6994 +IGfDtg== 6995 +IOynhOynnA== 6996 +IGJlbGllZg== 6997 +amV0 6998 +IGphY2s= 6999 +IHN3aW0= 7000 +cmlhbA== 7001 +dW1pbg== 7002 +YXVj 7003 +IHNvbGw= 7004 +IGVzc2VudGlhbA== 7005 +7ZWY64qU 7006 +IGV2b2w= 7007 +Y2hhZnQ= 7008 +YWluZQ== 7009 +dGhsZXQ= 7010 +IGluY29y 7011 +IHJlcG9ydHM= 7012 +IGRlZmluaXRpb24= 7013 +a2Vs 7014 +IGNpcmN1bQ== 7015 +IHByb2R1Y2Vk 7016 +INeb 7017 +YW50aWM= 7018 +bmV0 7019 +IGF3YXJk 7020 +IGR1cmNo 7021 +IHRyYW5zcA== 7022 +IG1hbGU= 7023 +pqzr 7024 +IG1vb24= 7025 +IEdlb3JnZQ== 7026 +IGZseWluZw== 7027 +acOz 7028 +IHNvdXJjZXM= 7029 +IHBsZW50eQ== 7030 +IERlbW9jcg== 7031 +Uk8= 7032 +IDAw 7033 +IHNlY3VyZQ== 7034 +IEJpcg== 7035 +cmFpbg== 7036 +IHp1cg== 7037 +IGVmZmljaWVudA== 7038 +IHJlcGVhdA== 7039 +IG1ldGhvZHM= 7040 +IGNhbG0= 7041 +IGRpc2N1c3NlZA== 7042 +IOyeiOuKlA== 7043 +IHNlcnZlcg== 7044 +YW5pZQ== 7045 +IEluc3RlYWQ= 7046 +IGlkZWFs 7047 +IGNvbnZlbg== 7048 +IGhvcGluZw== 7049 +IFRvcg== 7050 +IGRlcHRo 7051 +IGhlYXZlbg== 7052 +RU5DRQ== 7053 +IGhhYml0 7054 +Z3JhZA== 7055 +IGZsYWc= 7056 +IGluZQ== 7057 +IGto 7058 +IExJ 7059 +IGZhY2luZw== 7060 +IEFV 7061 +IFRpbQ== 7062 +IGdlbQ== 7063 +IEp1bA== 7064 +IGVsYQ== 7065 +aXp6YQ== 7066 +IGZlbGxvdw== 7067 +IHF1ZWw= 7068 +IHNwb2tl 7069 +IGNpdGl6ZW5z 7070 +dWdl 7071 +IHBhZ2Vz 7072 +IGZhc2M= 7073 +IHJlbGlnaW91cw== 7074 +YXRlbg== 7075 +IGNoYXB0ZXI= 7076 +IFZhbA== 7077 +IGNvbnN1bHQ= 7078 +IE1pbGw= 7079 +Z2w= 7080 +b3Blcg== 7081 +IGluZmlu 7082 +IG1hcnJpYWdl 7083 +IG1lZGljaW5l 7084 +INC00LI= 7085 +IGRvZ3M= 7086 +IGluc3RydW1lbnQ= 7087 +IEV4YWN0 7088 +w6Fu 7089 +IDIwMjE= 7090 +IGZlcg== 7091 +IHdlYWx0aA== 7092 +IGdyYWRl 7093 +0YvRhQ== 7094 +IGNyaW1l 7095 +IHRocmVhZA== 7096 +IGVzc2E= 7097 +IHdpbmU= 7098 +Y29ob2w= 7099 +cGhh 7100 +4LiH 7101 +b2d1ZQ== 7102 +IGluc3VyYW5jZQ== 7103 +YXJyYXRvcg== 7104 +IFNlcHRlbWJlcg== 7105 +IHZpZA== 7106 +IFNwaXJpdA== 7107 +IGdlc3Q= 7108 +IFJ1c3NpYW4= 7109 +IHByb3BlcnRpZXM= 7110 +IGFydGljbGU= 7111 +IHVuZGVybmVhdGg= 7112 +eWVy 7113 +IGpvaW50 7114 +IHJlbGF0aXZlbHk= 7115 +IGluY2g= 7116 +IGRlc3BpdGU= 7117 +IEdyZWU= 7118 +IGNsYXNzaWM= 7119 +IHN1cHBvcnRpbmc= 7120 +IGluc3RydWN0 7121 +bHVzaXZl 7122 +IGRpYWdu 7123 +5oo= 7124 +IGFkbWluaXN0cmF0aW9u 7125 +0LDQsdC+0YI= 7126 +IE9wZW4= 7127 +INC/0L7Qug== 7128 +IGRvbGxhcg== 7129 +IGNvbnNlcXU= 7130 +b2Jlcg== 7131 +IEdlcm1hbnk= 7132 +IHRlcnI= 7133 +IFFV 7134 +INCT 7135 +574= 7136 +IHN0cm9uZ2Vy 7137 +yZk= 7138 +INmK 7139 +IGlQaG9uZQ== 7140 +IGZhYnJpYw== 7141 +w7xo 7142 +IGVuZW0= 7143 +5q8= 7144 +IHN1YnQ= 7145 +RUU= 7146 +b25kZQ== 7147 +IGNyZXc= 7148 +IHJlbW92ZWQ= 7149 +IGxhZHk= 7150 +IHBvdGVudGlhbGx5 7151 +INCd0L4= 7152 +eWFs 7153 +IHN5bXB0 7154 +IGFybXk= 7155 +IGludHJvZHVjZWQ= 7156 +dGVz 7157 +IGFzcGVjdHM= 7158 +MTQ= 7159 +IExvdQ== 7160 +ICk= 7161 +IGRlcGxveQ== 7162 +cGV0 7163 +IGhhbg== 7164 +IFdhdGNo 7165 +IHdlYXBvbnM= 7166 +IHBoZW4= 7167 +IHJlZ2lzdGVy 7168 +IGVpbmZhY2g= 7169 +IHNwb3J0 7170 +IGJyaWRnZQ== 7171 +IGlubmVy 7172 +IG1pbmltdW0= 7173 +IHdpdG5lc3M= 7174 +IGVzbw== 7175 +IHZpbGxhZ2U= 7176 +IG93bmVy 7177 +pqzqs6A= 7178 +IHNjcmVhbQ== 7179 +aWxlZA== 7180 +IHBpdGNo 7181 +YnJ1 7182 +IGFkdmFuY2U= 7183 +IHN1cHBvc2U= 7184 +IEF0dA== 7185 +0LXRgtGB0Y8= 7186 +IGRpZmZlcmVuY2Vz 7187 +YWtlZA== 7188 +IGludGVycHJldA== 7189 +w6Y= 7190 +aWVuZG8= 7191 +IGFic29s 7192 +INCx0YPQtNC10YI= 7193 +IOuy 7194 +IHRyaWFs 7195 +IHRoaW5rcw== 7196 +bHlpbmc= 7197 +Y2VwdGlvbg== 7198 +IEFmcmljYW4= 7199 +IGNoZW1pY2Fs 7200 +IHRhcGU= 7201 +IGNvbnZlcnNhdGlvbnM= 7202 +IGRpc3RyaWJ1dGlvbg== 7203 +dGk= 7204 +IEFJ 7205 +IGZsYXNo 7206 +IHVuZGVyc3Rvb2Q= 7207 +IEdvdmVybm1lbnQ= 7208 +IT8= 7209 +IFNr 7210 +6rGw6w== 7211 +cmllcg== 7212 +VFM= 7213 +IEFjY29yZGluZw== 7214 +0Y7Rgg== 7215 +IHNwb25z 7216 +0YLQvtCx0Ys= 7217 +IHZhbHU= 7218 +ZXJlbQ== 7219 +aWNodGln 7220 +IHJlc2lzdGFuY2U= 7221 +IEdhbA== 7222 +Z2VyeQ== 7223 +IGJlZ2lucw== 7224 +IGFkdmFuY2Vk 7225 +IHJlbGV2YW50 7226 +IHBvbGl0aWNz 7227 +IEZhbQ== 7228 +IMOnb2s= 7229 +IE5ldmVy 7230 +aWxsaW5n 7231 +IGZvb3RiYWxs 7232 +0LjQuA== 7233 +IElE 7234 +IEFmcmljYQ== 7235 +IGZpbmdlcnM= 7236 +INCx0L7Qu9GM 7237 +IMOh 7238 +IGNsaXA= 7239 +IExhdA== 7240 +IOyngOq4iA== 7241 +ZXNzZQ== 7242 +IHZvb3I= 7243 +IGFzaWRl 7244 +5p4= 7245 +IHRvd2FyZA== 7246 +IGJhdA== 7247 +IHZhbGlk 7248 +IE1lbnM= 7249 +IGNvbXBsZXRlZA== 7250 +xLHEnw== 7251 +IHBvZGNhc3Q= 7252 +IEJvbg== 7253 +25I= 7254 +IEp1bHk= 7255 +aWxh 7256 +IHBhY2thZ2U= 7257 +IHB1bGxlZA== 7258 +Y2hhcg== 7259 +IE1lbA== 7260 +b2lz 7261 +IHNvdXRo 7262 +IOuU 7263 +IGltcG9ydGFuY2U= 7264 +IHB1c2hpbmc= 7265 +IGlzb2w= 7266 +IHN0YW5kcw== 7267 +Y2lsbA== 7268 +5Lw= 7269 +IPCf 7270 +b3Jp 7271 +6rCB 7272 +IGhvbWVz 7273 +IGNvbmNlcm5z 7274 +IGJpeg== 7275 +5b0= 7276 +Ymll 7277 +IGJpcw== 7278 +IGdlYXI= 7279 +IE1T 7280 +IGh1bg== 7281 +IE1hdHQ= 7282 +4bqj 7283 +c2V5 7284 +IFNlY3JldA== 7285 +IG9kZA== 7286 +IE1heA== 7287 +b2xseQ== 7288 +Zm9yZA== 7289 +IFNI 7290 +IHJlcGxhY2U= 7291 +IG5hdmln 7292 +IGluaQ== 7293 +0LjRjw== 7294 +IGdpYW50 7295 +IG1hbmQ= 7296 +IEhhcHA= 7297 +VElPTg== 7298 +Z3Vu 7299 +aWFtbw== 7300 +7J6F64uI64uk 7301 +IGdhcA== 7302 +IMOqdHJl 7303 +IGNsYXNzcm9vbQ== 7304 +IGh5cA== 7305 +YWtp 7306 +6K4= 7307 +aXN0ZXJz 7308 +YWNrcw== 7309 +INGB0L4= 7310 +IGJ1Zw== 7311 +IGdyYXY= 7312 +YW1pbg== 7313 +IGV2ZXJ5ZGF5 7314 +IOyhsA== 7315 +IGdhcmRlbg== 7316 +Y2VtYmVy 7317 +IGVzdG8= 7318 +2Kw= 7319 +n7A= 7320 +5YE= 7321 +IHJvbQ== 7322 +IOygnOqwgA== 7323 +IGZhbGxpbmc= 7324 +IGZhdWx0 7325 +ZWxseQ== 7326 +IGNoZXN0 7327 +INC70Lg= 7328 +IHBvdGF0bw== 7329 +IGJ1aWxkaW5ncw== 7330 +IG9wZXJhdGluZw== 7331 +IHBhcmU= 7332 +d3I= 7333 +RG9u 7334 +IEZvdXI= 7335 +IHZ1bA== 7336 +IGzDoQ== 7337 +IGZydXN0 7338 +IERhbm4= 7339 +b2xlcw== 7340 +bnlh 7341 +IOy2 7342 +INGA0LDRgQ== 7343 +15s= 7344 +IGHDrQ== 7345 +d29yZA== 7346 +IHdlYXBvbg== 7347 +IG9idA== 7348 +IEZhbGw= 7349 +IFN0ZXZl 7350 +IG1peGVk 7351 +IHBvZGU= 7352 +IEFT 7353 +IExlZw== 7354 +IGRlc2M= 7355 +IHNwbGl0 7356 +IGVtZXJnZW5jeQ== 7357 +IFNpbmc= 7358 +IHByb2ZpdA== 7359 +IHR5cGljYWw= 7360 +IERvbmM= 7361 +IGFubm91bmNl 7362 +IFRleA== 7363 +IHNhY3I= 7364 +dGVybmFs 7365 +IGNvbW1pdHRlZQ== 7366 +aWdv 7367 +IGRpYW0= 7368 +cGhhcw== 7369 +IGRlZmU= 7370 +IFByb2Zlc3M= 7371 +IGRlY2w= 7372 +0YPRgA== 7373 +MjI= 7374 +b2xm 7375 +IE1vbmQ= 7376 +dXk= 7377 +IGF5 7378 +IGxlbQ== 7379 +IGxvdmVseQ== 7380 +IENvdWxk 7381 +IGd1YXI= 7382 +SEg= 7383 +IGNhcmVmdWxseQ== 7384 +IExpc3Rlbg== 7385 +INC60YA= 7386 +IHlvdXRo 7387 +IFRoZXJlZm9yZQ== 7388 +IGRyZWFtcw== 7389 +IEplZmY= 7390 +P10= 7391 +IOuI 7392 +REE= 7393 +IGJvZGllcw== 7394 +YXV4 7395 +IHRlY2huaXF1ZXM= 7396 +IG1lY2hhbmlzbQ== 7397 +15M= 7398 +INC+0L3QuA== 7399 +IGRlc2lyZQ== 7400 +w64= 7401 +IFZv 7402 +cXVlcw== 7403 +INGD0LbQtQ== 7404 +IFdob2E= 7405 +IEdhbWU= 7406 +IGhhbA== 7407 +YW5pc2g= 7408 +IHByYWN0aWNlcw== 7409 +NTAw 7410 +IHNvcnRz 7411 +dXBz 7412 +YXRlZnVs 7413 +IGhlcnNlbGY= 7414 +IGd1aXRhcg== 7415 +IHByb3Bvcw== 7416 +IHNpdGVz 7417 +IGJlYWNo 7418 +INei 7419 +0L3Rgw== 7420 +IGRyYW0= 7421 +IE5vdmU= 7422 +VkU= 7423 +cmFudA== 7424 +IHBsb3Q= 7425 +IOyXrOq4sA== 7426 +IENh 7427 +IGVzdGFibGlzaGVk 7428 +IDIwMTU= 7429 +IGluc3BpcmVk 7430 +IGFubm91bmNlZA== 7431 +INGC0YA= 7432 +IDI2 7433 +IHZveQ== 7434 +IHRlY2g= 7435 +7KCB 7436 +IHByb2Nlc3Nlcw== 7437 +b250bw== 7438 +IFBhbg== 7439 +IHJhcGlk 7440 +aXN0YW4= 7441 +IDE5Nw== 7442 +IHJlbGlnaW9u 7443 +IDI4 7444 +IHNtaWxl 7445 +IGJhYg== 7446 +INqp 7447 +IFZpcg== 7448 +IHNjaGVkdWxl 7449 +IGV4ZWN1dA== 7450 +IHByb24= 7451 +0Y0= 7452 +INCd0YM= 7453 +bXVzaWM= 7454 +7JuQ 7455 +IGdhbg== 7456 +7Iug 7457 +IGRlZmF1bHQ= 7458 +IGJlbQ== 7459 +2Yk= 7460 +IGZvcmNlZA== 7461 +IE9idmlvdXNseQ== 7462 +IHN0b25l 7463 +IHRpZQ== 7464 +IGRyaW5raW5n 7465 +IHNlcnZlZA== 7466 +Q2F1c2U= 7467 +IGNvbmZlcmVuY2U= 7468 +IEV4YWN0bHk= 7469 +oJw= 7470 +7JmA 7471 +IFJh 7472 +IGZha2U= 7473 +IGRpZmY= 7474 +IGNoYWxsZW5naW5n 7475 +IOykkQ== 7476 +z4c= 7477 +IGludGVsbGlnZW5jZQ== 7478 +cmV0ZQ== 7479 +IHN0dWR5aW5n 7480 +IGFwcG9pbnQ= 7481 +IHRhbg== 7482 +INC40Lw= 7483 +IGN1cnZl 7484 +IFRlYW0= 7485 +IEF6 7486 +INC30LQ= 7487 +IE11c2lj 7488 +ZmllbGQ= 7489 +aXJhdGlvbg== 7490 +IGZhaWxlZA== 7491 +IG5vdmVs 7492 +IGRpZmZlcmVudGx5 7493 +IGVzY2FwZQ== 7494 +IFlv 7495 +IE9jdG9iZXI= 7496 +xLF5b3I= 7497 +IGRlc2NyaWJlZA== 7498 +IGNvbnZlcnQ= 7499 +YWNlbWVudA== 7500 +IGhvdGVs 7501 +aXNhdGlvbg== 7502 +IHN1aXM= 7503 +IHdhbGtlZA== 7504 +MjAw 7505 +IG5laWdoYm9yaG9vZA== 7506 +aXNw 7507 +IExvcw== 7508 +IGhpZGRlbg== 7509 +IDI3 7510 +0LvQtQ== 7511 +IHBocg== 7512 +IElzbGFuZA== 7513 +IFN0cmVldA== 7514 +ZW5kYQ== 7515 +aGlwcw== 7516 +b3N1cmU= 7517 +IGRlZmluZWQ= 7518 +4Lin 7519 +IHZpZGE= 7520 +IGxhYmVs 7521 +IEV2ZXJ5Ym9keQ== 7522 +IGpva2U= 7523 +aWFv 7524 +2KfZhg== 7525 +IGF0aGxldA== 7526 +Li4uIg== 7527 +IEZpcmU= 7528 +RG8= 7529 +IGRlZmVuc2U= 7530 +IGVudGVydGFpbg== 7531 +w6F0 7532 +IHBvbGljaWVz 7533 +IGFsY29ob2w= 7534 +IEVuZ2luZQ== 7535 +IGdhbA== 7536 +IEp1ZA== 7537 +IHZvbHVudGU= 7538 +aWNrcw== 7539 +ZXRh 7540 +YWd0 7541 +INeV 7542 +IG3Dtg== 7543 +MTM= 7544 +IGVuY291bg== 7545 +IGVo 7546 +IG9yYW5nZQ== 7547 +IGFic29y 7548 +IHNwYWNlcw== 7549 +IE5vdmVtYmVy 7550 +6rWs 7551 +aWF0 7552 +IHRhbQ== 7553 +Y2tub3c= 7554 +IHN0b3Jt 7555 +IERpcmVjdG9y 7556 +IHByZWdu 7557 +IOydvA== 7558 +INC+0L8= 7559 +IHJlc291cmNl 7560 +IGJhcmQ= 7561 +bmV3 7562 +IERlY2VtYmVy 7563 +dWl0cw== 7564 +IHdlaWw= 7565 +IGNvbnN0cnVjdA== 7566 +c2k= 7567 +bmlj 7568 +IGZsb3Vy 7569 +IHJlc3RyaWN0 7570 +w7x0 7571 +IGVudGlyZWx5 7572 +IGJyZWFraW5n 7573 +ZW50bGljaA== 7574 +IHR3ZW50eQ== 7575 +IGNhdXNlcw== 7576 +IGVsZXY= 7577 +IFNwcg== 7578 +IEludGVybmV0 7579 +IGtpc3M= 7580 +IG9wZXJhdGlvbnM= 7581 +c3p5 7582 +IOuK 7583 +IHNjaWVudGlzdHM= 7584 +IGdyb3du 7585 +IG93bmVycw== 7586 +b3V0cw== 7587 +IGNvdXJzZXM= 7588 +IHVzdWFs 7589 +IGlubg== 7590 +IHRyYW5zbQ== 7591 +w7Fv 7592 +IG51ZXN0 7593 +0LrQvtCy 7594 +IGNhdGVnb3J5 7595 +IExpZmU= 7596 +IFBsdXM= 7597 +IGF0bW9z 7598 +d2hpbGU= 7599 +IHJlY29yZHM= 7600 +IGRlxJ8= 7601 +64uk6rOg 7602 +IOyCrOue 7603 +IHJlcXVpcmVtZW50cw== 7604 +aW5u 7605 +IGltbWln 7606 +IGRlZXBlcg== 7607 +57Q= 7608 +IGFwcHM= 7609 +IGNvbGxlYWd1ZXM= 7610 +xbx5 7611 +IG9mZmVycw== 7612 +IHTDoQ== 7613 +IGNvbHVtbg== 7614 +bGF1ZA== 7615 +SVI= 7616 +IE1z 7617 +IGV4Y2hhbmdl 7618 +bGFz 7619 +IExhdw== 7620 +IEpvbg== 7621 +aXNzZQ== 7622 +cm9nZW4= 7623 +IG1vaQ== 7624 +15c= 7625 +IHNlbmRpbmc= 7626 +IGhlbGxv 7627 +0LXQtQ== 7628 +xZvEhw== 7629 +IHN1Y2NlZWQ= 7630 +IHN1ZmZlcmluZw== 7631 +IGFkdmVydA== 7632 +IOyjvA== 7633 +IHJlY28= 7634 +xLFuxLE= 7635 +INC60L7QvA== 7636 +YWxsZXk= 7637 +IGZhaWx1cmU= 7638 +aWVq 7639 +IOuVjA== 7640 +IGRydWdz 7641 +IGN1YW5kbw== 7642 +IOyWtOuW 7643 +IEFib3V0 7644 +IHF1YW5kbw== 7645 +OTA= 7646 +IEZlZA== 7647 +MTc= 7648 +U2g= 7649 +aW5obw== 7650 +IFN1bmRheQ== 7651 +IFBoaWw= 7652 +IGFjYWRlbWlj 7653 +IEluYw== 7654 +IG1haW50ZW4= 7655 +IHJld2FyZA== 7656 +ZXJk 7657 +IGNvbW1pdHRlZA== 7658 +7Iqk 7659 +0LPRgA== 7660 +IHN0YW5kYXJkcw== 7661 +IGthbA== 7662 +IGludGVudGlvbg== 7663 +IFpo 7664 +IGFja25vdw== 7665 +5L8= 7666 +ID09PQ== 7667 +b2d5 7668 +5ac= 7669 +IGZpbG1z 7670 +aXNr 7671 +IHRlZXRo 7672 +IHN0cnVnZ2xl 7673 +cmQ= 7674 +dWVu 7675 +IGRpc3M= 7676 +IERhcg== 7677 +YW15 7678 +IGVuZW1pZXM= 7679 +IHZlbG9j 7680 +IENhbGw= 7681 +dW1icw== 7682 +0LjRgtC10LvRjA== 7683 +IG9jZWFu 7684 +w6lk 7685 +7Jqw 7686 +IHRyZW0= 7687 +aWVudG8= 7688 +0LXRiNGM 7689 +ZmZpY2llbnQ= 7690 +IGJvdHRsZQ== 7691 +IGluc3RpdHV0aW9u 7692 +ZXN0eQ== 7693 +IEhhbg== 7694 +aGFi 7695 +64qY 7696 +IGFycmVzdA== 7697 +IGxldHRlcnM= 7698 +b3VuY2U= 7699 +7Yw= 7700 +QW4= 7701 +IGNyZWF0ZXM= 7702 +IGNsb2Nr 7703 +IGRlYnQ= 7704 +IGFuY2llbnQ= 7705 +aWZpY2F0aW9ucw== 7706 +Z2k= 7707 +QnV0 7708 +IFR1 7709 +a2w= 7710 +IGJvcmRlcg== 7711 +IG9vaw== 7712 +IEJheQ== 7713 +ZXN0YQ== 7714 +IOuztOw= 7715 +IHdyYQ== 7716 +cHJlbmU= 7717 +IOqyjA== 7718 +YW5nbGU= 7719 +IGJlbGlldmVk 7720 +aWVuY3k= 7721 +YWth 7722 +IGNyaXRpYw== 7723 +IGJvbWI= 7724 +IGhhbQ== 7725 +INCb 7726 +6rWt 7727 +IEd1eXM= 7728 +cm9zb2Z0 7729 +IGNyaW0= 7730 +ZXRjaA== 7731 +QVJS 7732 +IHNpZ2h0 7733 +0LjQvdCw 7734 +IGFpbg== 7735 +4buR 7736 +aXNjaGU= 7737 +IGF1eA== 7738 +IG51bWVy 7739 +IHN1cnZpdmU= 7740 +QWxs 7741 +QkM= 7742 +IHN6 7743 +n6zr 7744 +IGphbQ== 7745 +IENvdXJ0 7746 +IGFsbGVz 7747 +IHRyaWdnZXI= 7748 +0J4= 7749 +IGZvcm1hdA== 7750 +IGRlY2FkZXM= 7751 +IGNlcw== 7752 +IHNpZ25z 7753 +IHJvYm90 7754 +IENodXJjaA== 7755 +IGF6 7756 +IHNvdXA= 7757 +IFRleGFz 7758 +dXRlbg== 7759 +INGH0YLQvtCx0Ys= 7760 +IG5laWdoYg== 7761 +lteU 7762 +IGNvbW11bmljYXRl 7763 +xaE= 7764 +IGVsaW1pbg== 7765 +IGZyZXF1ZW5jeQ== 7766 +aGVybg== 7767 +aWRvcw== 7768 +IGVtcGhhcw== 7769 +IG1lc3NhZ2Vz 7770 +IGdlbmRlcg== 7771 +IFdlbm4= 7772 +INCy0L4= 7773 +IHByaWNlcw== 7774 +b2xv 7775 +INC/0L7QvQ== 7776 +d2luZw== 7777 +IEZpbA== 7778 +0LDQtdC8 7779 +IEN1cg== 7780 +IGZhbHNl 7781 +IGZpZWxkcw== 7782 +IHPDqQ== 7783 +MjQ= 7784 +IG1hYw== 7785 +dcWf 7786 +IGxheWVycw== 7787 +IGFkdm9j 7788 +d2Fu 7789 +IGthcg== 7790 +IMWe 7791 +IGRlY29y 7792 +IHdhbGxz 7793 +b2U= 7794 +aXNzaW9ucw== 7795 +IHJlc29s 7796 +16I= 7797 +IENhcm9s 7798 +IFZpZGU= 7799 +bGVlcA== 7800 +IFlPVQ== 7801 +IGZsaXA= 7802 +IHN1cmdlcnk= 7803 +IGNob3A= 7804 +VVI= 7805 +Liw= 7806 +IGFnZW5jeQ== 7807 +IHdhbnRpbmc= 7808 +IHNvbGFy 7809 +IGhvcml6 7810 +IEFkYW0= 7811 +IHN0YXlpbmc= 7812 +b2xpYw== 7813 +IGdyYXRlZnVs 7814 +IHJlbWFyaw== 7815 +IHRlY2hub2xvZ2llcw== 7816 +IHByb3RlaW4= 7817 +0LTQtdC7 7818 +IE1vbnQ= 7819 +IHNob3VsZGVy 7820 +IHph 7821 +cmV5 7822 +IE9vaA== 7823 +IHN0eQ== 7824 +aWNhcg== 7825 +0L7RgtGA 7826 +IHJvdXRl 7827 +IFR1cm4= 7828 +IGJvbQ== 7829 +IGRlYmF0ZQ== 7830 +IHBvc3NpYmlsaXR5 7831 +IO2VtOw= 7832 +YXBh 7833 +IGludmVudA== 7834 +w7xybGljaA== 7835 +IHByb2ZpbGU= 7836 +IHNlbmlvcg== 7837 +cHB5 7838 +dmFz 7839 +IG11bmRv 7840 +YXRldmVy 7841 +IGFwcGFyZW50bHk= 7842 +ZW5lcg== 7843 +15A= 7844 +560= 7845 +IHByZWNpcw== 7846 +IGFsaWdu 7847 +IGtuaWZl 7848 +IFJvYmVydA== 7849 +5Ys= 7850 +IGZvb2w= 7851 +IGludml0ZQ== 7852 +dXNpbmc= 7853 +IGNpcmN1bXN0 7854 +IGNhcHR1cmU= 7855 +IGRvdWdo 7856 +IFNhbmQ= 7857 +IHNldQ== 7858 +IE5ld3M= 7859 +IGJpdGU= 7860 +IG5ldXQ= 7861 +d2lkZQ== 7862 +IGxlY3R1cmU= 7863 +IOuYkA== 7864 +IG9yaWdpbmFsbHk= 7865 +IGNob2ljZXM= 7866 +IEdhcg== 7867 +IHZlcnNl 7868 +IGxpdA== 7869 +IDE5Ng== 7870 +7ZWg 7871 +IG1lYXN1cmVz 7872 +w6fDtWVz 7873 +d2F0ZXI= 7874 +cml2ZQ== 7875 +IHppam4= 7876 +7YE= 7877 +IEJ1cw== 7878 +IGhlYg== 7879 +0LXRhQ== 7880 +IEthcg== 7881 +IE7Do28= 7882 +IGtpbGxpbmc= 7883 +4K6q 7884 +IG1pcnJvcg== 7885 +bW9k 7886 +IG1vbA== 7887 +IGNyZWF0aW9u 7888 +IGVzdGlt 7889 +IGF0bW9zcGhlcmU= 7890 +IGdhbQ== 7891 +IHRhYmxlcw== 7892 +aXNp 7893 +IExpdHRsZQ== 7894 +IHRhcw== 7895 +IEVsZQ== 7896 +w6ls 7897 +IHNjZW5lcw== 7898 +IHRvbmU= 7899 +IGFmZmVjdGVk 7900 +IEFVREk= 7901 +IEJyb3du 7902 +SWY= 7903 +INmH 7904 +IERhbmllbA== 7905 +cXVlcg== 7906 +Y2hp 7907 +7ZWY6w== 7908 +IG1pc3Rha2Vz 7909 +IHNsYQ== 7910 +IGVudHI= 7911 +INC10YHQu9C4 7912 +IHNob3V0 7913 +IHBvcnRpb24= 7914 +0Zc= 7915 +IHByZXZpb3VzbHk= 7916 +4buZ 7917 +INC/0YDQtdC0 7918 +0L7RgdGM 7919 +IGhlYWRz 7920 +544= 7921 +5a0= 7922 +IGdyYXNz 7923 +4Liw 7924 +Y3JpYmU= 7925 +IHF1w6k= 7926 +IFNwYW5pc2g= 7927 +IG9mZmVyZWQ= 7928 +INCx0YvQu9C+ 7929 +IENsb3Vk 7930 +IHZlY3Rvcg== 7931 +IEh1aA== 7932 +IGthZA== 7933 +aWZ0cw== 7934 +IM69 7935 +IGh1bmdyeQ== 7936 +0KE= 7937 +IHBhcmFsbA== 7938 +QU5E 7939 +IHbDrWRlbw== 7940 +aXp6 7941 +IG9jY3Vw 7942 +IO2U 7943 +IHNlZWs= 7944 +aGVz 7945 +IGRvb3Jz 7946 +IGhvdXNlcw== 7947 +IGNvbnNpZGVyaW5n 7948 +IGdyYWR1YXRl 7949 +IGZ1bGY= 7950 +6KM= 7951 +IGV4dHJlbWU= 7952 +IGZsb3dlcnM= 7953 +aXRhdGU= 7954 +IFByaQ== 7955 +IGZ1bmRhbWVudGFs 7956 +0YfQsNGB 7957 +IHRleHR1cmU= 7958 +jZg= 7959 +IEFORA== 7960 +4K6x 7961 +IFRlbQ== 7962 +IG5hZGE= 7963 +7KeE 7964 +IGNlbGVicmF0ZQ== 7965 +dW1z 7966 +IHBpbGw= 7967 +INC40LvQuA== 7968 +Z29pbmc= 7969 +IGhpcA== 7970 +IHN1cHBvcnRlZA== 7971 +IHBlcm1hbg== 7972 +IGFncmVlbWVudA== 7973 +IHR5bQ== 7974 +IOuR 7975 +k6TsnbQ= 7976 +IHB1cmNoYXNl 7977 +7ZQ= 7978 +IFBsYW4= 7979 +ZWdlbg== 7980 +IHJlY292ZXI= 7981 +UFU= 7982 +IE1pY3Jvc29mdA== 7983 +ZHVj 7984 +IGhvbGVz 7985 +IGRyb3BwZWQ= 7986 +IHBpZw== 7987 +IGVuZGluZw== 7988 +IGF0dGFja3M= 7989 +YmVj 7990 +IHJlbg== 7991 +IHJhcHA= 7992 +IOyasOumrA== 7993 +IHRlcnJvcg== 7994 +INeZ 7995 +IGVkaXQ= 7996 +IGFv 7997 +Ljwv 7998 +IDIwMDA= 7999 +IFVuaW9u 8000 +IHNjaWVudGlmaWM= 8001 +IHB1bmNo 8002 +b3J0aW9u 8003 +IHB1dHM= 8004 +IE1vbmRheQ== 8005 +IEplcg== 8006 +RUM= 8007 +IG1hdHJpeA== 8008 +IGluc3RpdHV0aW9ucw== 8009 +IG1vbnQ= 8010 +IGV4aGli 8011 +IHNwZWFrZXI= 8012 +IG1ldGVycw== 8013 +Ll0= 8014 +IHNlcnZpbmc= 8015 +IGRhdGFiYXNl 8016 +IExBVQ== 8017 +IGRhbW4= 8018 +IHBvZGVy 8019 +ISEhIQ== 8020 +IO2WiA== 8021 +IEFVRElFTkNF 8022 +IGp1bg== 8023 +IEFD 8024 +IEl0YWw= 8025 +c2Vj 8026 +IFlvdW5n 8027 +cnVjaw== 8028 +b3V2ZQ== 8029 +4LiE 8030 +54g= 8031 +IOunjOs= 8032 +YWRpbmc= 8033 +dXJhdGlvbg== 8034 +IFBT 8035 +0Jo= 8036 +IFVuZg== 8037 +6IE= 8038 +b3JpYQ== 8039 +IG1hbmlm 8040 +IHNlbnRlbmNl 8041 +IHNpZ25lZA== 8042 +QlM= 8043 +IHByb29m 8044 +IE11c2xpbQ== 8045 +IG51Y2xlYXI= 8046 +INCz0L7QstC+0YA= 8047 +IHdvbGw= 8048 +IGZhdm91cg== 8049 +IFdI 8050 +IHZ1bG5lcg== 8051 +IGNsb3NlbHk= 8052 +IGluZGV4 8053 +0YLQtdGA 8054 +YWNoZWw= 8055 +IGNhcGFibGU= 8056 +IEJlcw== 8057 +IGNyb2No 8058 +ZWt0 8059 +IHNoZWV0 8060 +IHNlZXM= 8061 +IG5hdHVyYWxseQ== 8062 +IEVuZ2xhbmQ= 8063 +IHBhcnRpY2lwYXRl 8064 +IGV4aXN0cw== 8065 +IHNoYXJw 8066 +cHk= 8067 +IGJyZWFrZmFzdA== 8068 +Ym93 8069 +IHR3aXN0 8070 +56c= 8071 +aW5hdGluZw== 8072 +b3Rp 8073 +IEZvdW5k 8074 +IGRldXg= 8075 +IHNlbGVjdGVk 8076 +7KCE 8077 +b3Npcw== 8078 +IHByZXNlbnRlZA== 8079 +IGxpbmVhcg== 8080 +IOq0 8081 +IGt1bg== 8082 +w7RuZw== 8083 +IGLEmWQ= 8084 +IHRlbXBvcg== 8085 +IGNhYmxl 8086 +INC/0YDQvtGB0YLQvg== 8087 +0LrQtQ== 8088 +INGC0LDQvA== 8089 +IHdpbm5pbmc= 8090 +mOuPhA== 8091 +IDIwMTQ= 8092 +IOyXrOs= 8093 +IFVO 8094 +IENsaWNr 8095 +IHByZXBhcg== 8096 +IFRP 8097 +IHN1YQ== 8098 +IEhhbQ== 8099 +IGzDpA== 8100 +IGFic29sdXRl 8101 +IGVuZ2FnZWQ= 8102 +IEhtbQ== 8103 +IGRhc2g= 8104 +VEE= 8105 +w7Fvcw== 8106 +IHNwbw== 8107 +KV0= 8108 +IHRlc3RlZA== 8109 +IGJsYW5r 8110 +IHJlamVjdA== 8111 +IGFzc2lt 8112 +IHJlYXI= 8113 +IFN0cg== 8114 +IGNyYXNo 8115 +INC90LDRiA== 8116 +0LjRgtGB0Y8= 8117 +IGNvbG9u 8118 +IFVudA== 8119 +IENl 8120 +IGFjaWQ= 8121 +6Zc= 8122 +IGtpdA== 8123 +aWJpbGl0aWVz 8124 +dXRv 8125 +IHZhbHVhYmxl 8126 +bGlzdA== 8127 +IHBhcnRpZXM= 8128 +IE1t 8129 +IGNvbG91cg== 8130 +IGNoYW0= 8131 +IHN0ZWVs 8132 +IEltcA== 8133 +IGZ1bmRz 8134 +IEROQQ== 8135 +IEtlbg== 8136 +aW5kZQ== 8137 +7ZW07ISc 8138 +IEhhcHB5 8139 +IFVzZQ== 8140 +IExpZ2h0 8141 +IGxpcA== 8142 +IGF1dGhvcml0eQ== 8143 +IExvbmc= 8144 +IElyYW4= 8145 +IGVsbA== 8146 +IGNvb3JkaW4= 8147 +IHN1Ym0= 8148 +IHJlY29yZGVk 8149 +0YPRiA== 8150 +IGRlbHRh 8151 +IHJlZm9ybQ== 8152 +IFN0aWxs 8153 +IG9wcG9u 8154 +IGFsbG93aW5n 8155 +IHBhdHRlcm5z 8156 +IGxldHRpbmc= 8157 +IHNsZWVwaW5n 8158 +T2theQ== 8159 +IHBpenph 8160 +IMWb 8161 +INC00L7Quw== 8162 +IHRhbGVudA== 8163 +ZW5zaW9ucw== 8164 +IGVudmlyb25tZW50YWw= 8165 +IHByb2Zlc3Nvcg== 8166 +IHNob3Rz 8167 +IGNvbnRhaW5z 8168 +dWdhcg== 8169 +eW8= 8170 +j5k= 8171 +IHNlcXVlbmNl 8172 +zrnOsQ== 8173 +YWRlcg== 8174 +6aA= 8175 +0LDRhw== 8176 +2YbYpw== 8177 +IElr 8178 +IHRvdXM= 8179 +dXJpZXM= 8180 +IHBvdW5kcw== 8181 +IGV4dGVybmFs 8182 +aW1lbnRz 8183 +IHZyYWltZW50 8184 +7Iuk 8185 +IGhhcHBpbmVzcw== 8186 +IHByemU= 8187 +ZXN0aWM= 8188 +IGVzdGFibGlzaA== 8189 +IEZsb3I= 8190 +IHJpZw== 8191 +IGhvbmV5 8192 +IHB1bA== 8193 +IHN5bXB0b21z 8194 +IGJyb3dz 8195 +0LXQu9C4 8196 +IM+Ezr8= 8197 +IHNoaXJ0 8198 +IFRlY2hu 8199 +IFByb2dyYW0= 8200 +0LXQvNGD 8201 +IHVwc2V0 8202 +IGd1ZXN0 8203 +YnVyZw== 8204 +IHVubGlrZQ== 8205 +IHNvbWV3aGF0 8206 +IGhhbmdpbmc= 8207 +YWU= 8208 +IHJ1bQ== 8209 +IHBob3RvZ3JhcGg= 8210 +IExp 8211 +IHN0YWJsZQ== 8212 +IHZvbHRhZ2U= 8213 +IEVsbA== 8214 +IGVudHJlcHJlbmU= 8215 +dXNlcw== 8216 +YXNzZW4= 8217 +rLg= 8218 +IOunjuydtA== 8219 +IGdob3N0 8220 +IHNhZ2Vu 8221 +IGNvbWJhdA== 8222 +IGfDtnI= 8223 +IENhcA== 8224 +IHPDo28= 8225 +IEthdA== 8226 +IGZvcm1h 8227 +IHN1bW0= 8228 +IG1hcmNo 8229 +IHZhc3Q= 8230 +w7xr 8231 +IGNvbW1pdG1lbnQ= 8232 +aW1vcw== 8233 +TGV0 8234 +IGRlZGljYXRlZA== 8235 +aXN0ZQ== 8236 +bGF5 8237 +IHRvcGljcw== 8238 +IG1hY2hpbmVz 8239 +IFBhcmlz 8240 +IOydtOufsA== 8241 +IG1pbmk= 8242 +IG1hcmtldHM= 8243 +IGtv 8244 +zrQ= 8245 +dmlsbGU= 8246 +IGdvb2RuZXNz 8247 +IGZyYW1ld29yaw== 8248 +dWx0dXJl 8249 +IGJhc2tldA== 8250 +ZXNzYQ== 8251 +0LDRhtC4 8252 +dXN0ZXI= 8253 +IOq5 8254 +IGV4dGVudA== 8255 +IE1lbnNjaGVu 8256 +IGNvbnNpc3RlbnQ= 8257 +IGF1dG8= 8258 +cmlw 8259 +IG1lcmU= 8260 +4K+I 8261 +0ZQ= 8262 +IGVsbGU= 8263 +jIDr 8264 +b2tlbg== 8265 +IHB1bGxpbmc= 8266 +IGNvdw== 8267 +b3V0aGVybg== 8268 +IG1lZXRpbmdz 8269 +IGNhZGE= 8270 +0L3Ri9C8 8271 +aWVudGU= 8272 +IGJhc3Q= 8273 +YW5pbmc= 8274 +IGZvY3VzaW5n 8275 +cm9hZA== 8276 +IHJvb2Y= 8277 +IFByb2Zlc3Nvcg== 8278 +IFNQ 8279 +0YDQsNC3 8280 +IG5vb2Q= 8281 +IDQwMA== 8282 +IOydtOygnA== 8283 +7J6I 8284 +IE1vdW50 8285 +0LXQudGH0LDRgQ== 8286 +INeQ 8287 +V2h5 8288 +154= 8289 +xLFuZGE= 8290 +IHBvc2l0aW9ucw== 8291 +w6htZQ== 8292 +548= 8293 +INC00YDRg9Cz 8294 +aXlvcg== 8295 +IHBhc3Npbmc= 8296 +IGFzc2VtYg== 8297 +IHNtb2tl 8298 +IHRpbA== 8299 +IG11c2V1bQ== 8300 +0JQ= 8301 +IFBlcnNvbg== 8302 +0L3QuNC8 8303 +bGVpY2g= 8304 +IGludGVudA== 8305 +IHNxdWU= 8306 +IGNyYWZ0 8307 +7IiY 8308 +b3JzdW4= 8309 +IDE1MA== 8310 +IGJyb3RoZXJz 8311 +dm9y 8312 +IFNwZWFrZXI= 8313 +aWNpYW5z 8314 +IG9mZmljZXI= 8315 +IGnDp2lu 8316 +INGC0LXQsQ== 8317 +IHNjcmF0Y2g= 8318 +IGdlbmVyYXRl 8319 +eWk= 8320 +IGVtb3Rpb25z 8321 +YXVz 8322 +7LmY 8323 +NDU= 8324 +IExpbms= 8325 +IFJlYWw= 8326 +IGF0ZQ== 8327 +INC90LDQtA== 8328 +IG5hdGl2ZQ== 8329 +4buH 8330 +xLF5 8331 +IGVub3Jt 8332 +IGJsb2Nrcw== 8333 +IGZhY2Vz 8334 +YWNj 8335 +aXZlbmVzcw== 8336 +IGluY2hlcw== 8337 +dWlz 8338 +aGVpdA== 8339 +IHN0cmVldHM= 8340 +IHByb2JhYmlsaXR5 8341 +YXNp 8342 +IGltcGw= 8343 +IOCk 8344 +dXJkYXk= 8345 +IGZhdXQ= 8346 +b215 8347 +IHBpcA== 8348 +IGlsbHVzdA== 8349 +4K6v 8350 +IEp1bg== 8351 +IGx5aW5n 8352 +OTk= 8353 +IG1lbW9yaWVz 8354 +IHByYWN0aWNhbA== 8355 +aWFuYQ== 8356 +b25jZXM= 8357 +IHZpZXdlcnM= 8358 +IFRob21hcw== 8359 +5ow= 8360 +IEdpcmw= 8361 +IFdoZXRoZXI= 8362 +IGlubm92YXRpb24= 8363 +IGRpc2FwcG9pbnQ= 8364 +TXk= 8365 +IHdpbm5lcg== 8366 +IGln 8367 +IHJhdGlv 8368 +IEJsdWU= 8369 +IFN1Yg== 8370 +IGRvY3VtZW50cw== 8371 +IGZvcm11bGE= 8372 +IOup 8373 +0Yo= 8374 +IGFwcGVhcmVk 8375 +dmFy 8376 +YW5kb24= 8377 +IHNwcmF5 8378 +bWFr 8379 +IFFVRVM= 8380 +S0U= 8381 +IHdlZGRpbmc= 8382 +UmU= 8383 +0LDRgtGM0YHRjw== 8384 +IHVubw== 8385 +IGdhbGw= 8386 +7YSw 8387 +Y2lv 8388 +Y2Vycw== 8389 +INC80L3QtQ== 8390 +IHBlcHBlcg== 8391 +IEZlYnJ1 8392 +IGFsdGVybmF0aXZl 8393 +IGZ1 8394 +IEJhc2ljYWxseQ== 8395 +IFNtaXRo 8396 +IGdhdGU= 8397 +IFRhbQ== 8398 +IFdoYXRldmVy 8399 +IGFwcHJveGlt 8400 +IGNvbmNlcnQ= 8401 +IGp1aWNl 8402 +IEVzcGVjaWFsbHk= 8403 +IGR5bmFtaWM= 8404 +UXU= 8405 +b25kZXI= 8406 +aXZlcnk= 8407 +IGJhbmc= 8408 +IHJ1bA== 8409 +IFBhcnR5 8410 +IHNjaG9sYXJz 8411 +IGNyeWluZw== 8412 +asSF 8413 +0KI= 8414 +IFFVRVNUSU9O 8415 +cmlk 8416 +IGFjY3VyYXRl 8417 +w6dv 8418 +IENvb2w= 8419 +Y29pbg== 8420 +IOyDgQ== 8421 +IEZv 8422 +IHByw7M= 8423 +IFJvbWFu 8424 +INCf0YA= 8425 +IGNoZWNraW5n 8426 +Pyc= 8427 +IGF0dGFjaGVk 8428 +IElzbGFt 8429 +IGV4cGVydHM= 8430 +16c= 8431 +IENvbnN0 8432 +0YDQsNC9 8433 +IHNoYWRvdw== 8434 +IGRlbGF5 8435 +0JI= 8436 +IG9yaWVudA== 8437 +64I= 8438 +ZWxsZW4= 8439 +IGFzw60= 8440 +0LrQuNC5 8441 +IGhpc3RvcmljYWw= 8442 +IHVuY29t 8443 +b21w 8444 +aG0= 8445 +IGJpbA== 8446 +IHBsYW5uZWQ= 8447 +IFVuZm9ydHVuYXRlbHk= 8448 +IFdpbmRvd3M= 8449 +2LQ= 8450 +IGVuY291bnRlcg== 8451 +IOyDneqwgQ== 8452 +IHJlZ2FyZGluZw== 8453 +YXJyYXNz 8454 +IHJlY292ZXJ5 8455 +IEh1cg== 8456 +IEVtcA== 8457 +IHPDrQ== 8458 +7ZWY6rKM 8459 +IGRlZmVuZA== 8460 +IGNldA== 8461 +YXNzZQ== 8462 +64uo 8463 +b2tlcw== 8464 +IHJlbW90ZQ== 8465 +INiz 8466 +IGFydHM= 8467 +aXNjbw== 8468 +YXVjb3Vw 8469 +IE1leGljbw== 8470 +INC/0L7QvA== 8471 +IGNob3Nlbg== 8472 +ZW1hdA== 8473 +b2Rpbmc= 8474 +IGZsb3dlcg== 8475 +c3RhbmRpbmc= 8476 +IEFzc29jaQ== 8477 +dW1teQ== 8478 +SUxM 8479 +IGNhbWVyYXM= 8480 +IEFyYWI= 8481 +IFN1bQ== 8482 +IHRlZ28= 8483 +IGNyaW1pbmFs 8484 +aWZvcm0= 8485 +IHN0YWNr 8486 +7ISx 8487 +IERvbmFsZA== 8488 +IE9sZA== 8489 +IGR1c3Q= 8490 +IEpvc2U= 8491 +IGhlbQ== 8492 +IGluY3JlYXNlcw== 8493 +b3N0YQ== 8494 +IGR5aW5n 8495 +IFJpdmVy 8496 +IG1vaXN0 8497 +0YLQvtCy 8498 +YXJlcw== 8499 +IGRpc2NpcGw= 8500 +cmFpdA== 8501 +IEhhcw== 8502 +eWdlbg== 8503 +IFRyZQ== 8504 +IOu0 8505 +IGxhbmd1YWdlcw== 8506 +IEhlbg== 8507 +IDM2 8508 +IERpc25leQ== 8509 +aW50cw== 8510 +IGFsZ28= 8511 +IGZvb2Rz 8512 +IHNldHVw 8513 +bGFu 8514 +IGVmZmVjdGl2ZWx5 8515 +IHdoZXJldmVy 8516 +IHVudGVy 8517 +Zm9ybWF0aW9u 8518 +IGhpdHM= 8519 +IHByaW5jaXBsZQ== 8520 +IHRhc3Rlcw== 8521 +p4g= 8522 +IHRyZWF0ZWQ= 8523 +IHJlc29sdXRpb24= 8524 +IHByaXZpbGU= 8525 +IElQ 8526 +67A= 8527 +IHRlcnJpdA== 8528 +IHBvd2Vycw== 8529 +IO2D 8530 +IFZpY3Q= 8531 +IGJvdGhlcg== 8532 +IENoYWly 8533 +IG11c2NsZQ== 8534 +IHNhbGU= 8535 +IGRlY2VudA== 8536 +IGNvdXA= 8537 +IFNxdQ== 8538 +IGNvYXN0 8539 +IHJvZA== 8540 +IEZyYW5j 8541 +IGJhdGhyb29t 8542 +IHNob3BwaW5n 8543 +INC80L7QttC10YI= 8544 +IGnFnw== 8545 +IFN0YXk= 8546 +Z3JhZGU= 8547 +IGZvcm1lZA== 8548 +IGJhxZ8= 8549 +IGJyaWxs 8550 +am91cg== 8551 +7ZY= 8552 +d2ll 8553 +aWNhdGU= 8554 +IOKAi+KAiw== 8555 +IE5vcm0= 8556 +4KU= 8557 +IG1haW5seQ== 8558 +IFNwYWNl 8559 +IHRyZW1lbmQ= 8560 +aXRp 8561 +4K61 8562 +VVQ= 8563 +TXVzaWM= 8564 +IEZlYnJ1YXJ5 8565 +IGNvbnRyYXN0 8566 +ZXN0aW5n 8567 +IM60 8568 +aW5naW5n 8569 +INmG 8570 +c3Nlbg== 8571 +IEhvbWU= 8572 +IHNoZWxs 8573 +IEhheQ== 8574 +IGFsbGVy 8575 +IEFw 8576 +IFdlc3Rlcm4= 8577 +IFdvcmQ= 8578 +IFBMQVk= 8579 +IOuF 8580 +IEFxdQ== 8581 +IGVudHJ5 8582 +IGxhdW5jaGVk 8583 +IE1lbQ== 8584 +IFBvdXI= 8585 +IHp3ZQ== 8586 +IFNvbWVvbmU= 8587 +aW5nZQ== 8588 +IFByb2I= 8589 +bWJsZQ== 8590 +IFJlbA== 8591 +dXJ1 8592 +IHJoeQ== 8593 +IGdpZw== 8594 +IGVuZ2FnZW1lbnQ= 8595 +w7zFnw== 8596 +IG9mZmVyaW5n 8597 +d2hlbA== 8598 +IGFjdG9y 8599 +QVBQ 8600 +d2VzdA== 8601 +IFJveQ== 8602 +IHJldHVybmVk 8603 +IHNpbHZlcg== 8604 +cmF0aW5n 8605 +IGVzdGFy 8606 +IHNrZQ== 8607 +IHRp 8608 +aWNhdGlvbg== 8609 +IGFubm95 8610 +IGRlZXBseQ== 8611 +7Jqp 8612 +IG5hdMO8cmxpY2g= 8613 +RUxM 8614 +IENhdGg= 8615 +IHJhaWw= 8616 +0L3QvtCy 8617 +IHByYXllcg== 8618 +Y29s 8619 +R0I= 8620 +INCi0LDQug== 8621 +IGdsYQ== 8622 +IFdhdGVy 8623 +0Y/RgtGM 8624 +IE5vbg== 8625 +w7R0 8626 +YWdlcnM= 8627 +IGh1Zw== 8628 +IGRvY3RvcnM= 8629 +YW5jaW5n 8630 +IFRhbGs= 8631 +emluZw== 8632 +IGhhZG4= 8633 +IGx1aQ== 8634 +IGF0w6k= 8635 +IOq3uOumrOqzoA== 8636 +6rmM7KeA 8637 +aWNp 8638 +IGluY29ycG9y 8639 +IERp 8640 +emls 8641 +YW55YQ== 8642 +qoU= 8643 +IMK7 8644 +MzU= 8645 +IGJlZXI= 8646 +IGJlYXVjb3Vw 8647 +IE1D 8648 +IGVhcnM= 8649 +b2dlbg== 8650 +IFF1ZXN0 8651 +ZWRh 8652 +IFNhdHVyZGF5 8653 +IGZhbGxz 8654 +c3Rvbg== 8655 +Ymxlcw== 8656 +IHRodXM= 8657 +IOuEpA== 8658 +4LmE 8659 +IHRoZXJt 8660 +IGRpdmVyc2l0eQ== 8661 +IHNveQ== 8662 +YXp1 8663 +aW1w 8664 +IHRlbGV2aXNpb24= 8665 +INep15w= 8666 +IHd1cg== 8667 +IGVkZ2Vz 8668 +IGxlc3NvbnM= 8669 +IEF1ZA== 8670 +dm9pcg== 8671 +YW1lbnRv 8672 +IGV4cGxhaW5lZA== 8673 +INC+0L3QsA== 8674 +IHRlbXBz 8675 +z44= 8676 +VGhleQ== 8677 +IHN1cnByaXNpbmc= 8678 +0LDQvdC40Y8= 8679 +IERyYWc= 8680 +IENsZQ== 8681 +IG5hbQ== 8682 +INC70Y7QtA== 8683 +IGhhcmR3YXJl 8684 +IHRodW1icw== 8685 +IM66zrHOuQ== 8686 +IFRvcA== 8687 +IMOl 8688 +6Zk= 8689 +15XXqA== 8690 +IOq3uOuemOyEnA== 8691 +IEJ1ZGQ= 8692 +dGhlcm4= 8693 +IGludGVyZXN0cw== 8694 +2LA= 8695 +IGRldmVsb3BlcnM= 8696 +IGhpdHRpbmc= 8697 +IG9wcG9zZWQ= 8698 +IGhlYXJ0cw== 8699 +IEFuZHJvaWQ= 8700 +IEhhbmQ= 8701 +IHJlcHJlc2VudHM= 8702 +Z2xpY2g= 8703 +7Yq4 8704 +IDMy 8705 +IGRvbWlu 8706 +IEFubg== 8707 +IMOpdMOp 8708 +IHpvb20= 8709 +IGt0w7NyZQ== 8710 +IGFkdWx0cw== 8711 +IG9yZGVyZWQ= 8712 +IHBpY2tpbmc= 8713 +IEhvbmc= 8714 +IGZpbG1pbmc= 8715 +IHNlZWQ= 8716 +IEFU 8717 +IGNhbGN1bGF0ZQ== 8718 +INC60L7Qs9C00LA= 8719 +IE9z 8720 +aWNpdA== 8721 +IHJlbWFpbmluZw== 8722 +IHNlZ3U= 8723 +w7s= 8724 +IOyYpOuKmA== 8725 +IGFycml2ZQ== 8726 +IGNvbmdy 8727 +IGdyYW5kZQ== 8728 +IGhlYWx0aGNhcmU= 8729 +INC80L7QttC90L4= 8730 +U0E= 8731 +ZXN0ZQ== 8732 +IGF3YXJlbmVzcw== 8733 +IHNxdWFyZWQ= 8734 +eHR1cmU= 8735 +IEJlaW5n 8736 +IHNvbGRpZXJz 8737 +0YPQsQ== 8738 +IHJldm9sdXRpb24= 8739 +IHRyYWluZWQ= 8740 +ZW5kZW4= 8741 +6LA= 8742 +IGRhbmNpbmc= 8743 +IGluc3RhbGxlZA== 8744 +cHJpc2U= 8745 +IHZldGVy 8746 +IG1lbm9z 8747 +bmVsbA== 8748 +IEJyb3RoZXI= 8749 +IG51bg== 8750 +IGltcG9ydGFudGx5 8751 +YWxsZWQ= 8752 +aWHFgg== 8753 +YWJsZWQ= 8754 +IFN5c3RlbQ== 8755 +IFZvbA== 8756 +IGVsZA== 8757 +IGVtb3Rpb24= 8758 +aWNhbg== 8759 +IEJhbms= 8760 +aWtlcw== 8761 +IHZsb2c= 8762 +INCy0L7Qtw== 8763 +IHB1ZWRl 8764 +7Jik 8765 +IHRlZW4= 8766 +IHNldmVyZQ== 8767 +JSw= 8768 +IGNsZWFuaW5n 8769 +esSF 8770 +l5A= 8771 +IFRocm91Z2g= 8772 +IFNldA== 8773 +RVA= 8774 +Ij8= 8775 +IE1vdGhlcg== 8776 +IGZpZ3VyZWQ= 8777 +IG11ZA== 8778 +INGW 8779 +IE9mZmljZQ== 8780 +IHJhdw== 8781 +IGRlc3Ryb3llZA== 8782 +ZW50YQ== 8783 +IGFnZ3Jlc3M= 8784 +INC+0YE= 8785 +IOuqqOs= 8786 +w6TDpA== 8787 +IEFS 8788 +IGNvcnJlY3RseQ== 8789 +IHN0aXI= 8790 +IGV4dHJhY3Q= 8791 +IHZlaGljbGVz 8792 +IFJ1bg== 8793 +INCy0YDQtdC8 8794 +IHBhcmFsbGVs 8795 +IGxhZw== 8796 +anU= 8797 +IGRhcmU= 8798 +IE1vdA== 8799 +b25v 8800 +IGJlaW5ncw== 8801 +IHN0cm8= 8802 +IGV4Y3VzZQ== 8803 +IGFscGhh 8804 +IGFza3M= 8805 +IHBvY2tldA== 8806 +Li4uPw== 8807 +IGtpdGE= 8808 +w7xt 8809 +IGFwcGVhcmFuY2U= 8810 +b3JkYW4= 8811 +IGluc2VydA== 8812 +INC90LDRhw== 8813 +m2k= 8814 +IHRlbXBv 8815 +IGZhY2lsaXR5 8816 +IHZpc2libGU= 8817 +5ZI= 8818 +IFNjaWVuY2U= 8819 +dXJvcw== 8820 +INmB2Yo= 8821 +IFZhbg== 8822 +IHRlbnNpb24= 8823 +IO2VoA== 8824 +IGRlbGl2ZXJ5 8825 +IHN0aW0= 8826 +IHN1cnZleQ== 8827 +IEdyYQ== 8828 +IGJvbA== 8829 +5qA= 8830 +IHdlaXRlcg== 8831 +w59lbg== 8832 +IHByb2NlZWQ= 8833 +IGltcHJlc3NpdmU= 8834 +IFZvYw== 8835 +aW91c2x5 8836 +INC00LA= 8837 +aGFsZQ== 8838 +b2No 8839 +IGdsdWU= 8840 +cGhldA== 8841 +Y29udA== 8842 +IGZpdHM= 8843 +IGJveGVz 8844 +IGNvbnRyb2xz 8845 +IENoaWxk 8846 +IHNjZW5hcmlv 8847 +IHRyb3A= 8848 +IHByb2Nlc3Npbmc= 8849 +INGC0L7Qu9GM0LrQvg== 8850 +IGJpcmRz 8851 +IENoaWM= 8852 +INC90LDQvw== 8853 +IDIwMTM= 8854 +IG3DvHNzZW4= 8855 +IEphZw== 8856 +IHPEhQ== 8857 +IHBlcmNl 8858 +cmVo 8859 +IEZvcmU= 8860 +IGNvbmZ1c2Vk 8861 +YWlyZQ== 8862 +IGFjY29tcGxpc2g= 8863 +IGNhc2E= 8864 +Y2xvY2s= 8865 +IGluZmx1ZW4= 8866 +IFJP 8867 +IGJvbmU= 8868 +aWNpYW4= 8869 +IFND 8870 +IHN0cmF0ZWdpZXM= 8871 +Z2g= 8872 +0LTRgw== 8873 +IGl0dQ== 8874 +IHBlcnNvbmFsaXR5 8875 +IGJhcmR6bw== 8876 +IGFjY2VwdGVk 8877 +IHN0b20= 8878 +aWV2 8879 +IEhpc3Q= 8880 +IEF1cw== 8881 +IOuwlOs= 8882 +QVRPUg== 8883 +b2ly 8884 +IG1hZ2F6 8885 +IGV4cGxhbg== 8886 +IGNvcm4= 8887 +IGlscw== 8888 +IGNpcmN1aXQ= 8889 +IGdheQ== 8890 +aG9w 8891 +IGVxdWl2YWw= 8892 +IGRpZXNlcg== 8893 +ZXJ2ZXM= 8894 +Y29tZXM= 8895 +a2xpY2g= 8896 +IOuVjOs= 8897 +YWJldA== 8898 +IGV4aGE= 8899 +IG1hbm5lcg== 8900 +IOKZquKZqg== 8901 +w6lj 8902 +w6Rs 8903 +IGNvbmZpcm0= 8904 +IGVudGVyZWQ= 8905 +ZW1wbG8= 8906 +IEZhcg== 8907 +IG/DuQ== 8908 +ZXNzaW9ucw== 8909 +IG51cnM= 8910 +IGVudMOjbw== 8911 +IGFiYW5kb24= 8912 +bGlmZQ== 8913 +IHdpcw== 8914 +TmFycmF0b3I= 8915 +IOyWtA== 8916 +VGhlcmU= 8917 +IFJhbQ== 8918 +YXN0ZQ== 8919 +IGF0dHJpYg== 8920 +IEF5 8921 +IG1lc21v 8922 +IM69zrE= 8923 +6as= 8924 +ZW5zZXM= 8925 +IGNyb3A= 8926 +INC30LTQtdGB0Yw= 8927 +IFVudGls 8928 +c3RlaW4= 8929 +IG92ZW4= 8930 +IHN1c3BlY3Q= 8931 +aGV0 8932 +IHB1aXM= 8933 +IGNhcnJpZWQ= 8934 +w6ln 8935 +IERldg== 8936 +ZW1z 8937 +cmVlbnM= 8938 +YmVycnk= 8939 +IHRlbXBs 8940 +IEJpdA== 8941 +IHZhcmlhYmxlcw== 8942 +IG92ZXJ3aGVs 8943 +zrzOtQ== 8944 +IGluaXRpYWxseQ== 8945 +7JWY 8946 +b3RoaW5n 8947 +0LXRgtGM 8948 +IEhpbGw= 8949 +IGRlcGFydA== 8950 +IG15c3Q= 8951 +YXp6 8952 +IGZsdWlk 8953 +IERD 8954 +IGNsaW5pY2Fs 8955 +IFJ5YW4= 8956 +IEZsb3JpZGE= 8957 +IFRhaw== 8958 +IGFueGlldHk= 8959 +YnJv 8960 +IGNpcmN1bXN0YW5jZXM= 8961 +INmD 8962 +IGV4aXN0ZW5jZQ== 8963 +IHRvbmc= 8964 +IDIwMTI= 8965 +IFNlY3JldGFyeQ== 8966 +IHNwaWN5 8967 +IFso 8968 +IFdpdGhvdXQ= 8969 +IGZhY3Rz 8970 +IHRvbnM= 8971 +QXBw 8972 +IFN0YW5k 8973 +IGxpZXM= 8974 +IEFE 8975 +d2lu 8976 +z4TOtQ== 8977 +YXBwbGF1c2U= 8978 +SVA= 8979 +c3Rh 8980 +IFN1cA== 8981 +cGhvbmVz 8982 +npE= 8983 +cGll 8984 +IFBvdA== 8985 +IE5P 8986 +INee 8987 +INCU0LA= 8988 +aWNhcw== 8989 +IEly 8990 +IHB1c2hlZA== 8991 +IHVuY2xl 8992 +INmF2YY= 8993 +IGxvbg== 8994 +IHByaW5jaXBsZXM= 8995 +IEludGVybmF0aW9uYWw= 8996 +IMOW 8997 +xb4= 8998 +IHNheWE= 8999 +IOqzoA== 9000 +IHJpYg== 9001 +IHBhc3Rl 9002 +IHdhcm5pbmc= 9003 +IG11c2ljYWw= 9004 +IGFncmVlZA== 9005 +0L7RgNC8 9006 +IGdhcmxpYw== 9007 +IG94eWdlbg== 9008 +7JiI 9009 +QWw= 9010 +IOunng== 9011 +ZWxpbmVz 9012 +TEFVU0U= 9013 +Z3lwdA== 9014 +R0U= 9015 +Y2tlcg== 9016 +dHU= 9017 +IHNoZWw= 9018 +IHN0YXllZA== 9019 +INCz0L7QtA== 9020 +IGxhcHQ= 9021 +IE1hcnRpbg== 9022 +IGludml0ZWQ= 9023 +IGNvbmZpcg== 9024 +IGVtYmFycmFzcw== 9025 +YWNpb25lcw== 9026 +IENhbXA= 9027 +IGhvbGRz 9028 +YXh5 9029 +IGRpdmU= 9030 +dWNrbGVz 9031 +IGJvb3N0 9032 +IHfDvHI= 9033 +c3RhbA== 9034 +INGA0LDQsdC+0YI= 9035 +IGTDqWM= 9036 +IG9mZmljZXJz 9037 +IOyVhOs= 9038 +b2xvZ2lzdA== 9039 +157X 9040 +IHNlZWRz 9041 +IGJ1ZmY= 9042 +IHVwZGF0ZXM= 9043 +ZGVk 9044 +IGZyaWVuZGx5 9045 +IGNvdW5jaWw= 9046 +IFByb2JhYmx5 9047 +IHBpYW5v 9048 +IHJlZHVjZWQ= 9049 +z4TOsQ== 9050 +IGF1dGhlbnQ= 9051 +IGV4cGxvcw== 9052 +cGFzcw== 9053 +IEhpdA== 9054 +anVk 9055 +IE5hdg== 9056 +b21p 9057 +IGNvbW1pc3Npb24= 9058 +IGd5bQ== 9059 +0J8= 9060 +IHBvbg== 9061 +0YDQvtGB 9062 +IGludGVyZmFjZQ== 9063 +IHN0cnVjdHVyZXM= 9064 +IEplbg== 9065 +IHlvaw== 9066 +IG1ldQ== 9067 +7KeA66eM 9068 +bmVk 9069 +IFdpZQ== 9070 +IGlkZW50aWZpZWQ= 9071 +IGNoYW5uZWxz 9072 +xLFuYQ== 9073 +IHBoaWxvc29w 9074 +a2VpdA== 9075 +IGJpdHM= 9076 +ZW50ZXM= 9077 +IGZyYWc= 9078 +IEtpbmQ= 9079 +IGRvY2g= 9080 +IHNuZQ== 9081 +aW5kaW5n 9082 +IEpld2lzaA== 9083 +0L7RgNC+0Yg= 9084 +IGZ1ZQ== 9085 +IO2P 9086 +IG3EsQ== 9087 +IGtlaW5l 9088 +IGxvY2F0aW9ucw== 9089 +IG1ldGVy 9090 +IGJlZWY= 9091 +IG1hbmlw 9092 +IHNvbm8= 9093 +enpsZQ== 9094 +57Y= 9095 +IHBlcw== 9096 +IGhvcnJpYmxl 9097 +IFNu 9098 +IGZhY3Rvcnk= 9099 +IGZpZnRo 9100 +IGNvb2tlZA== 9101 +IG1vb2Q= 9102 +IHZlbG9jaXR5 9103 +IG9ibGln 9104 +IGNvbm5lY3Rpb25z 9105 +xJ9pbQ== 9106 +IOqztQ== 9107 +IGRvbWFpbg== 9108 +IGFwcGx5aW5n 9109 +IHJpZGlj 9110 +IGNlbA== 9111 +IGNoaWxkaG9vZA== 9112 +IFRlc3Q= 9113 +cmF0dWxhdGlvbnM= 9114 +IFZpcmdpbg== 9115 +IENFTw== 9116 +INC/0Ls= 9117 +IGFsZ29yaXRobQ== 9118 +IGludGVyYWN0aW9u 9119 +YWdh 9120 +IGtpZGRpbmc= 9121 +IHRvbWF0bw== 9122 +IGNvbnRpbnVpbmc= 9123 +bGFk 9124 +c3RyZWFt 9125 +0L7QttC1 9126 +IOyYgQ== 9127 +0LXQu9C+0LI= 9128 +QkE= 9129 +IG5hcA== 9130 +IE5vYm9keQ== 9131 +IHRodW1i 9132 +IE9O 9133 +IHJ1c2g= 9134 +RFI= 9135 +IHN0cmlrZQ== 9136 +IGV2b2x1dGlvbg== 9137 +aWNoZQ== 9138 +IOy7 9139 +IOq3uOufsA== 9140 +2KfYqg== 9141 +IGFr 9142 +IHdpbmRvd3M= 9143 +IGV4Y2Vzcw== 9144 +IGNvbmNsdWQ= 9145 +IGVwaXNvZGVz 9146 +IHN0cnVnZ2xpbmc= 9147 +IERhdA== 9148 +nbzr 9149 +IGtleXM= 9150 +IGtsZQ== 9151 +IHZlZ2V0YWJsZXM= 9152 +eXN0ZW0= 9153 +w6puY2lh 9154 +cmljaw== 9155 +IHJldmVudWU= 9156 +IEhhdw== 9157 +IGxhbg== 9158 +YW50ZXM= 9159 +aW5peg== 9160 +0LjRgdGC 9161 +IHN1cA== 9162 +qbTshJw= 9163 +IG1vbWVudG8= 9164 +aXN0bw== 9165 +IEVyaWM= 9166 +aW9ycw== 9167 +YmFq 9168 +IGludHJvZHVjdGlvbg== 9169 +aXJ0eQ== 9170 +IGRlY2s= 9171 +cmVhbA== 9172 +IE1hcmlv 9173 +IGxvdmluZw== 9174 +4LiU 9175 +IHN1cHBvcnRz 9176 +0LjRh9C10YE= 9177 +IGluY2lkZW50 9178 +dXRjaA== 9179 +dXY= 9180 +IGJvb20= 9181 +0LXRgNGM 9182 +INC90YPQtg== 9183 +IGNvbWJpbmVk 9184 +IExpbg== 9185 +MjM= 9186 +b3JhdGlvbg== 9187 +bnRl 9188 +IHNvcg== 9189 +IGRpcnR5 9190 +aWZlcg== 9191 +IEFQSQ== 9192 +IGNvbGxhYm9yYXRpb24= 9193 +aWFibGU= 9194 +IHByaW9yaXR5 9195 +IEFsZQ== 9196 +IFByaW4= 9197 +IEV4Yw== 9198 +IHZhaXM= 9199 +IGdyYW4= 9200 +IHN0b29k 9201 +IHJlY3J1 9202 +IE11cg== 9203 +ZXNpcw== 9204 +YXNw 9205 +IGxvY2tlZA== 9206 +IFBlcm8= 9207 +IEhhcnJ5 9208 +IHR1ZG8= 9209 +IFRlbg== 9210 +2LU= 9211 +Zm9yY2VtZW50 9212 +KSk= 9213 +b2xp 9214 +IOyduA== 9215 +IHN1cHBs 9216 +IGNyb2NoZXQ= 9217 +IHBoZW5vbWVu 9218 +bG9z 9219 +YXRoYW4= 9220 +IFN1cHA= 9221 +IGVtYnI= 9222 +IGJlaw== 9223 +IFplaXQ= 9224 +Z2VuZA== 9225 +IHJvb21z 9226 +qr0= 9227 +VkVS 9228 +bnljaA== 9229 +IGRvbnQ= 9230 +IGNhYmlu 9231 +IGFjY291bnRz 9232 +IEVhc3Rlcg== 9233 +15XXnA== 9234 +IGZhY2lsaXRpZXM= 9235 +YmVpdA== 9236 +IGxpbmtlZA== 9237 +IEdlcg== 9238 +IHByb2dyYW1taW5n 9239 +b3RpYw== 9240 +IGRyYW1h 9241 +IDI5 9242 +IO2B 9243 +IGluc3RydWN0aW9ucw== 9244 +IGltcG9ydGFudGU= 9245 +IHdhdmVz 9246 +IGFpZA== 9247 +Q0s= 9248 +6rKg7Iq164uI64uk 9249 +IE1pcg== 9250 +IHRpZA== 9251 +IEhvdA== 9252 +IGFycmFuZ2U= 9253 +IEJhYnk= 9254 +IHRhY2s= 9255 +INGJ 9256 +7Z0= 9257 +IHZlcnRpY2Fs 9258 +IGhlZWw= 9259 +IEN1dA== 9260 +IG5hcnJvdw== 9261 +IEFyaQ== 9262 +IGtuZWU= 9263 +IEJyYXppbA== 9264 +IEZpdmU= 9265 +IHBvc3RlZA== 9266 +VUQ= 9267 +IHJvbGxpbmc= 9268 +zrg= 9269 +IGNsYWltcw== 9270 +IElucw== 9271 +T0s= 9272 +dWlu 9273 +IEluc3RpdHV0ZQ== 9274 +IGludGVuc2U= 9275 +aWFy 9276 +IE5pY2s= 9277 +IHNlbGVjdGlvbg== 9278 +IGxlZ2VuZA== 9279 +IHVuaWZvcm0= 9280 +w7pu 9281 +IHN0dWRpZWQ= 9282 +INCl 9283 +IOyVjA== 9284 +Z2Vycw== 9285 +IGRvdw== 9286 +IENT 9287 +IGFnZW50 9288 +IEF1Zg== 9289 +IGpvZw== 9290 +IGFpcmNyYWZ0 9291 +64uY 9292 +IHZpdA== 9293 +dWxz 9294 +IHNlZ21lbnQ= 9295 +IG9yZGVycw== 9296 +IENsYXNz 9297 +IGFwb2xvZw== 9298 +IHBsYXRmb3Jtcw== 9299 +IG15dGg= 9300 +0LDQttC1 9301 +IEJvb2s= 9302 +IHNlbnNpdGl2ZQ== 9303 +INC/0L7Qu9GD0Yc= 9304 +IGRhbWl0 9305 +IENhcHQ= 9306 +c29sZQ== 9307 +IGFyY2hpdGVjdHVyZQ== 9308 +IFdpbA== 9309 +IGluaGVy 9310 +Y2Fw 9311 +IEJveQ== 9312 +IGJ1cm5pbmc= 9313 +IFB1YmxpYw== 9314 +IGJlaGFsZg== 9315 +IOychA== 9316 +IHRoZXJhcHk= 9317 +dWJzY3JpYmU= 9318 +IGludm9sdmU= 9319 +IGV4cG9zZWQ= 9320 +acWf 9321 +w6p0cmU= 9322 +IHRvaWw= 9323 +IHNpbms= 9324 +cGly 9325 +5YM= 9326 +SUk= 9327 +IGFnZW5jaWVz 9328 +IHE= 9329 +IERvd24= 9330 +YXVm 9331 +IOunmw== 9332 +IHByb2M= 9333 +b2tlZA== 9334 +IHN0b3Jlcw== 9335 +cG93ZXI= 9336 +IFRoaW5ncw== 9337 +IGFjY2Vzc2libGU= 9338 +IHRlxbw= 9339 +IEVkdWM= 9340 +IHNwZWFrZXJz 9341 +IFNhcmFo 9342 +lJQ= 9343 +IGRpdmVyc2U= 9344 +7J6W 9345 +IFVsdA== 9346 +w6B5 9347 +IENoaWNhZ28= 9348 +U2hl 9349 +YXRoeQ== 9350 +IGVuYWJsZQ== 9351 +IHRyYWRpbmc= 9352 +IG11c2NsZXM= 9353 +5ps= 9354 +IENhcmU= 9355 +IFVy 9356 +IFNjb3Q= 9357 +IHBocmFzZQ== 9358 +RU5U 9359 +IOqyvQ== 9360 +IEphYw== 9361 +cGFjaw== 9362 +IGRldGVybWluZWQ= 9363 +w7xuZA== 9364 +IG5lZ290aQ== 9365 +IHZpZMOp 9366 +IHJveg== 9367 +IFN1cw== 9368 +IHJpZGluZw== 9369 +aG1lbg== 9370 +IERlZg== 9371 +IENyZQ== 9372 +IFdhbGw= 9373 +aWdhbg== 9374 +IHNlbXByZQ== 9375 +0ZbQtA== 9376 +IGRyaXZlbg== 9377 +IGZvb3RhZ2U= 9378 +IGZvbmQ= 9379 +IFdheQ== 9380 +w6Rt 9381 +IE9iYW1h 9382 +IFNlcnZpY2U= 9383 +IDc1 9384 +IERhcms= 9385 +IOq3vOs= 9386 +IENhdA== 9387 +2Lc= 9388 +6Yw= 9389 +IGp1Zw== 9390 +IGV0d2Fz 9391 +IGJyZWF0aGluZw== 9392 +4buD 9393 +IFdlYg== 9394 +IGZvaXM= 9395 +IGxpZ2h0aW5n 9396 +IERB 9397 +IG9ic3Q= 9398 +IGxldXI= 9399 +IEVneXB0 9400 +IEFybXk= 9401 +aWNpZGU= 9402 +0LDRgtC4 9403 +IOuLpOs= 9404 +IGFwYXJ0bWVudA== 9405 +IGNoaWVm 9406 +IFdlZA== 9407 +IG5ldHdvcmtz 9408 +IGJhdHQ= 9409 +5rg= 9410 +IEx1Yw== 9411 +IG5pY2VseQ== 9412 +IHZlcmI= 9413 +4Li0 9414 +7LY= 9415 +b3NpdA== 9416 +IHJldmVhbGVk 9417 +IHRhdA== 9418 +IHRpZWQ= 9419 +4buB 9420 +IGFuaW1hdGlvbg== 9421 +IHJvbGVz 9422 +7Iqk7Q== 9423 +IHZlcnNpb25z 9424 +0YfQuNGC 9425 +IHRhc2tz 9426 +r7w= 9427 +IHJlc2M= 9428 +c2hl 9429 +IGxvb3Nl 9430 +IGPhuw== 9431 +IGNvaXNh 9432 +IGFsZXJ0 9433 +IG5pbg== 9434 +IFNBTQ== 9435 +IHRyYWJhag== 9436 +aXJ1cw== 9437 +VEg= 9438 +xqE= 9439 +b2dldGhlcg== 9440 +IFRhaQ== 9441 +IGZpZ3VyZXM= 9442 +INeQ16o= 9443 +IGNyZWVw 9444 +IGludmVzdGlnYXRpb24= 9445 +IHJlY29tbWVuZGVk 9446 +IEFr 9447 +IHJlc2lkZW50cw== 9448 +0YHRgtCy0L4= 9449 +c2VjdA== 9450 +0LDQvdC40LU= 9451 +IG1pbmRz 9452 +dWluZw== 9453 +5bE= 9454 +b3dpbmc= 9455 +IG5vZw== 9456 +IHJheg== 9457 +2KfYsQ== 9458 +IHF1b3Q= 9459 +INC40YU= 9460 +IHNlZA== 9461 +IGFwcGxhdWQ= 9462 +IGNvdmVyYWdl 9463 +dm9s 9464 +IFJlYw== 9465 +xJs= 9466 +INCy0YHRkQ== 9467 +IGV4cGVjdGluZw== 9468 +IG9wZXJhdGU= 9469 +IGNvbnZlcg== 9470 +IFN1Y2g= 9471 +IFJhZA== 9472 +IFByaW1l 9473 +IHB1cnBsZQ== 9474 +IDIwMTA= 9475 +IOyViOs= 9476 +IGV4ZW0= 9477 +IGNvbXBhcmlzb24= 9478 +IGxhbmRzY2FwZQ== 9479 +IG5laXRoZXI= 9480 +IEVo 9481 +64U= 9482 +IHN0b21hY2g= 9483 +IGNhc28= 9484 +w6Ju 9485 +IHBlcmNlbnRhZ2U= 9486 +d2ljaA== 9487 +aXRhbg== 9488 +IGts 9489 +IGV4cGFucw== 9490 +INin2YTZhQ== 9491 +IG9jY2FzaW9u 9492 +cmV0cw== 9493 +aWduaW5n 9494 +IGtpbG9tZXQ= 9495 +IGd1c3Q= 9496 +Y3pl 9497 +IHVyYmFu 9498 +IGFncmlj 9499 +IGFzc2lzdGFuY2U= 9500 +IHN1cmY= 9501 +aW1ldGVy 9502 +IHBldGl0 9503 +IGFzc2Vzc21lbnQ= 9504 +IG1hbnVhbA== 9505 +IGltcHJvdmVk 9506 +YnN0 9507 +IHBpbG90 9508 +IE1hcnM= 9509 +IHZpZWxl 9510 +IENvbmdyYXR1bGF0aW9ucw== 9511 +IGFyZ3Vl 9512 +IHdpcmtsaWNo 9513 +IGNsaWNraW5n 9514 +UklT 9515 +IGxvZ28= 9516 +IG91dGNvbWU= 9517 +IENlbnRyYWw= 9518 +IEpp 9519 +IGdhbWluZw== 9520 +IGNvbnNlcnY= 9521 +IHVsdGltYXRl 9522 +IFZl 9523 +IFdhbA== 9524 +YXJv 9525 +c3Rhcg== 9526 +IGNvbnN1bWVy 9527 +IHRyYXZlbGluZw== 9528 +aW1lcg== 9529 +IDEwMDA= 9530 +0L3QuNC6 9531 +IHByaW5jaXBhbA== 9532 +IHNha2U= 9533 +0ZbQsg== 9534 +IG1vdXNl 9535 +YXJpb3M= 9536 +IHJlbGF0aW9u 9537 +IG1vcmFs 9538 +IHRoZXRh 9539 +d3k= 9540 +IGthbQ== 9541 +IGVpZw== 9542 +IGdvbGRlbg== 9543 +16Q= 9544 +IGFtcGw= 9545 +IHZ1 9546 +c3Ry 9547 +cm9ycw== 9548 +IHdoZXJlYXM= 9549 +aXphcg== 9550 +IGFkbWluaXN0cg== 9551 +IG7Ds3M= 9552 +IFByZXQ= 9553 +IEFjYWQ= 9554 +YW5naW5n 9555 +YmFnZQ== 9556 +w6l0YWl0 9557 +dXJp 9558 +IGhlYWxpbmc= 9559 +IHRpcG8= 9560 +IG1hcnJ5 9561 +0YPQsg== 9562 +IGVzdGF0ZQ== 9563 +dXU= 9564 +7JQ= 9565 +IEJlc3Q= 9566 +IHN1ZmZlcg== 9567 +IDE5NA== 9568 +IGJhY3Rlcg== 9569 +INCS0L7Rgg== 9570 +IE9t 9571 +IGR6 9572 +6LY= 9573 +7KY= 9574 +IG9sZHU= 9575 +IHBoeXNpY2FsbHk= 9576 +IExvdWlz 9577 +ZXRpbWU= 9578 +Y2FzZQ== 9579 +IHBpZXI= 9580 +7KCc 9581 +dmFu 9582 +IGFzc2V0cw== 9583 +IOuB 9584 +dmV0 9585 +0LjQsQ== 9586 +IHByb21vdGU= 9587 +IGNvbmdyYXQ= 9588 +dWVzZGF5 9589 +IGR1dHk= 9590 +IFZpZGVv 9591 +2K4= 9592 +IEpvaG5zb24= 9593 +a3Rpb24= 9594 +IFZvY8Oq 9595 +44CL 9596 +IGFp 9597 +IGFubnVhbA== 9598 +IEpvc2g= 9599 +aXR0ZQ== 9600 +IEpP 9601 +IHNsaWRlcw== 9602 +IGFuYw== 9603 +uYQ= 9604 +dGVlbg== 9605 +IGNhcnJ5aW5n 9606 +bHltcA== 9607 +ZWRpbmc= 9608 +IGZybw== 9609 +IGFkbWl0 9610 +cmVy 9611 +IG9mZmljaWFscw== 9612 +cHRpb25z 9613 +Z2Fs 9614 +IGhldXRl 9615 +IHZvaWNlcw== 9616 +IGJhbGxz 9617 +IGd1ZXN0cw== 9618 +YW5uZXI= 9619 +44CK 9620 +aXNoZXI= 9621 +IE1S 9622 +IFJpY2hhcmQ= 9623 +IHJvdWdobHk= 9624 +bMSx 9625 +IHZpY3Rvcnk= 9626 +IGFsZ3Vu 9627 +IE1ycw== 9628 +xZtjaWU= 9629 +IFVr 9630 +IGV5 9631 +IFdhcnM= 9632 +IGJyYW5jaA== 9633 +YXN0eQ== 9634 +IFByaW5jZQ== 9635 +0LXQutGC 9636 +IHJlY29nbml6ZWQ= 9637 +IG11Y2hv 9638 +IExlYXZl 9639 +Y29ubmVjdA== 9640 +IHNwZWxs 9641 +IHRvdWNoZWQ= 9642 +IGFnZW5kYQ== 9643 +6L4= 9644 +YXJpYQ== 9645 +IEtvbmc= 9646 +b2dh 9647 +IHBhcmFtZXRlcnM= 9648 +64uk6w== 9649 +IGluc3RhbnQ= 9650 +IHJlZ3Vs 9651 +Q29u 9652 +IGVkaXRvcg== 9653 +IERpc3Q= 9654 +IHVua25vd24= 9655 +IHB1bmlzaA== 9656 +IGV4cGVjdGF0aW9ucw== 9657 +IGNyeXB0 9658 +IGRpdmlkZQ== 9659 +YWtlbg== 9660 +IE1lc3M= 9661 +IGh5cGVy 9662 +IFByb2plY3Q= 9663 +aWtp 9664 +IGFnb3Jh 9665 +IGFidXNl 9666 +IGNhdXNpbmc= 9667 +IGNvbnZpbg== 9668 +IExB 9669 +IGNvbmNlbnRyYXRpb24= 9670 +IGJyZWFrcw== 9671 +dXJlcg== 9672 +IGNvbmNyZXRl 9673 +IGZvcm1hbA== 9674 +IGJldGE= 9675 +aXRvcnM= 9676 +IENoYW1w 9677 +IGhlYWRpbmc= 9678 +IEJsbw== 9679 +IHByZW5k 9680 +IFNlbmF0ZQ== 9681 +IGFkdmVudHVyZQ== 9682 +b3Nv 9683 +IG9wZW5z 9684 +IFBMQVlJTkc= 9685 +IFNV 9686 +dXJlbg== 9687 +aWt0 9688 +INC70Y7QsQ== 9689 +IEZvbGxvdw== 9690 +IEJpZGVu 9691 +ZWxu 9692 +IFNreQ== 9693 +ZXRpbmc= 9694 +IEV4dA== 9695 +0L3Rg9GO 9696 +IOyZnA== 9697 +IHNocg== 9698 +ZWxsYQ== 9699 +IERpdg== 9700 +IHRyYW5zZm9ybWF0aW9u 9701 +IGhvdXNlaG9sZA== 9702 +ZXRyeQ== 9703 +6KE= 9704 +IERlc3A= 9705 +IGNvdXJhZ2U= 9706 +IHBhcmtpbmc= 9707 +IGV0dMOk 9708 +Y2Fs 9709 +bHlu 9710 +IGxhaWQ= 9711 +IHRyaWVz 9712 +aXJ0cw== 9713 +aWdh 9714 +IHJlY2FsbA== 9715 +aWZpZXI= 9716 +z4HOsQ== 9717 +IGFhbg== 9718 +IGJ1dHRvbnM= 9719 +IHJlYWNoaW5n 9720 +IOq3vOuNsA== 9721 +IHNwYXJr 9722 +IFNvY2lhbA== 9723 +INC10YnQtQ== 9724 +IGNhbmFs 9725 +IGNyaXRlcg== 9726 +IGt0w7NyeQ== 9727 +IHRlbmVtb3M= 9728 +gqw= 9729 +INC90LXRgg== 9730 +IHR1YmU= 9731 +YWNsZXM= 9732 +0LjRiA== 9733 +IGRlxJ9pbA== 9734 +IHN0YW1w 9735 +IGluZmw= 9736 +IGFob3Jh 9737 +IHRyYWls 9738 +IG1peHR1cmU= 9739 +IFJvbGw= 9740 +IHJvdXRpbmU= 9741 +IGNvdW50eQ== 9742 +IGVuam95aW5n 9743 +0L3QvtGB0YLRjA== 9744 +ZXJlcw== 9745 +IHB1cnBvc2Vz 9746 +IFNhbnRh 9747 +IGJyZWFzdA== 9748 +w6RuZw== 9749 +IHdyaXRlcg== 9750 +5Yw= 9751 +0YDQvg== 9752 +IG5lbQ== 9753 +aWNvcw== 9754 +0LDRgdGC 9755 +IGRldGFpbGVk 9756 +IHJldmVyc2U= 9757 +IFJlYWR5 9758 +IGRpc3RyYWN0 9759 +IEFsb3Jz 9760 +dXR0ZXI= 9761 +IGRlc2VydmU= 9762 +IFJvbg== 9763 +0L3QvtC8 9764 +IG9ic2Vydg== 9765 +IGxvZ2lj 9766 +IFB5 9767 +IEtldmlu 9768 +pbQ= 9769 +2YrZhg== 9770 +IHNrYQ== 9771 +IHRhY3Q= 9772 +IGhvbGlkYXk= 9773 +IGJ1bXA= 9774 +INC80L7Qsw== 9775 +IGRlaXg= 9776 +7YU= 9777 +IHdvcnNoaXA= 9778 +Q2w= 9779 +IHN1Y2s= 9780 +INGB0LXQsQ== 9781 +IGFwcGxhdXNl 9782 +IEVw 9783 +INC80L4= 9784 +IHBhdGNo 9785 +4bqt 9786 +IGxhZGllcw== 9787 +IGJyb2FkY2FzdA== 9788 +IGlsbGVn 9789 +IG5hcnJhdGl2ZQ== 9790 +b3NzYQ== 9791 +QVJSQVRPUg== 9792 +IHNhbmc= 9793 +IG1vdmVtZW50cw== 9794 +IHBhcnRuZXJzaGlw 9795 +IG9yZ2FuaXplZA== 9796 +IG5vZGU= 9797 +ZXN0eWxl 9798 +IE1lZw== 9799 +IGluZHVzdHJpYWw= 9800 +IGdvbA== 9801 +IGJvcmluZw== 9802 +IGN1dHM= 9803 +IHJlY29u 9804 +YXNh 9805 +IGltcHJlc3Npb24= 9806 +7Jq0 9807 +Z2ll 9808 +TUE= 9809 +hrU= 9810 +IGVkaXRpbmc= 9811 +cm9udA== 9812 +IGZvbGxvd3M= 9813 +IEl0YWxpYW4= 9814 +0YDQvtC0 9815 +IOqwmeydgA== 9816 +IOuwqQ== 9817 +IHBhcnRpY2xlcw== 9818 +IEJvYXJk 9819 +15nXqg== 9820 +anVu 9821 +cm9uaWM= 9822 +IGVq 9823 +IM+Ezrc= 9824 +15XXkw== 9825 +Y2lvbg== 9826 +aXR0eQ== 9827 +IFR1ZXNkYXk= 9828 +dW1lcw== 9829 +IFByb3Q= 9830 +ZWRlcg== 9831 +IHBlc3NvYXM= 9832 +INC90L7Qsg== 9833 +IHNraXA= 9834 +IG9iamVjdGl2ZQ== 9835 +w61hcw== 9836 +IGRlc2s= 9837 +IExvb2tz 9838 +dW5kZW4= 9839 +IHByaW1hcmlseQ== 9840 +aW1lbnRv 9841 +IHJlcG9ydGluZw== 9842 +IGhhY2U= 9843 +IGNoZWNrZWQ= 9844 +6Zg= 9845 +IOuztOs= 9846 +IHNtZWxscw== 9847 +IGFjdG9ycw== 9848 +IEFzaWE= 9849 +aWzDoA== 9850 +IHJlY2VpdmluZw== 9851 +IHRheGVz 9852 +IGdyYWNl 9853 +IGNvbXBldGl0aXZl 9854 +IGRpdmlzaW9u 9855 +IGVzcGVy 9856 +IHdoZWVscw== 9857 +IGtvbW10 9858 +IHRyZW1lbmRvdXM= 9859 +IGVzcGU= 9860 +Li4uKQ== 9861 +IOyehQ== 9862 +IGxpc3RlZA== 9863 +w6RsbA== 9864 +IHVudXM= 9865 +IEhvbGx5 9866 +IGd1aWRhbmNl 9867 +IGN1Yg== 9868 +IGludGVsbGVjdA== 9869 +INCx0YvQuw== 9870 +IHJlZ2FyZGxlc3M= 9871 +IFN0YW4= 9872 +IGNvbmNsdXNpb24= 9873 +YWNhxJ8= 9874 +IGxvbA== 9875 +IEJhdA== 9876 +IG1hbmlmZXN0 9877 +IENoaWVm 9878 +IHNoYW1l 9879 +IG91dGNvbWVz 9880 +IG1haWw= 9881 +IGt1cg== 9882 +zrnOug== 9883 +ZXR6 9884 +IHByZXBhcmluZw== 9885 +Mjc= 9886 +IFF1ZWVu 9887 +4K6z 9888 +IOu5hA== 9889 +IHRpc3M= 9890 +IGNvbnNjaW91c25lc3M= 9891 +IHBhbnRz 9892 +IG1lbHQ= 9893 +dWNodA== 9894 +aW5o 9895 +7JuM 9896 +IHZvdHJl 9897 +IG1vZHVsZQ== 9898 +b3d5 9899 +IG1vbnN0ZXI= 9900 +IOuG 9901 +IGVsZWN0cm9uaWM= 9902 +IGNlbnRyZQ== 9903 +IHN0b3Bz 9904 +IHRvdQ== 9905 +IOut 9906 +IGxhbWI= 9907 +IGNvbnNlcXVlbmNlcw== 9908 +IHN0cmF3 9909 +IGltcGVy 9910 +IGV4dGVuZA== 9911 +IGFuc3dlcmVk 9912 +IE1haA== 9913 +IExBVVJB 9914 +aWZ0aW5n 9915 +dWF0ZQ== 9916 +IFVTQg== 9917 +IEFuZHJldw== 9918 +IEZyZWQ= 9919 +IERF 9920 +IEdlb3Jn 9921 +57s= 9922 +w6xuaA== 9923 +IGRyYXdu 9924 +IGxpcHM= 9925 +Ymly 9926 +IG1heW9y 9927 +aW1p 9928 +IGVuY29yZQ== 9929 +Zm9ydGFibGU= 9930 +dXJzZGF5 9931 +IEZvcm0= 9932 +IGJsYW1l 9933 +IHNob3dlcg== 9934 +IGNvbnRhaW5lcg== 9935 +c3RlcnM= 9936 +dWRlcw== 9937 +IFRheQ== 9938 +4Lil 9939 +IOyYiA== 9940 +IHZvbQ== 9941 +IGJhc3M= 9942 +IExhYg== 9943 +aXNzYQ== 9944 +IGRpbWVuc2lvbg== 9945 +IGV4ZWN1dGl2ZQ== 9946 +IFJvbQ== 9947 +6rKM7JqU 9948 +IERvY3Rvcg== 9949 +IGRlbGl2ZXJlZA== 9950 +IGdhbmc= 9951 +IGNlcg== 9952 +IHBpdA== 9953 +ZWxp 9954 +IGV4dHJhb3Jk 9955 +amFy 9956 +IGRlcml2 9957 +IGlsbG5lc3M= 9958 +IGd1bnM= 9959 +IDIwMTE= 9960 +IGFpcnBvcnQ= 9961 +0JU= 9962 +IGF0dGl0dWRl 9963 +IGdyYXQ= 9964 +IFdy 9965 +IE5BUlJBVE9S 9966 +IOyalA== 9967 +IHJlbmV3 9968 +IGNvc2E= 9969 +IGNvbnRyb2xsZWQ= 9970 +b21teQ== 9971 +b25kcw== 9972 +IGVzZQ== 9973 +w6RjaA== 9974 +IHZlbmQ= 9975 +ZGFt 9976 +IGFyZ3U= 9977 +IGFjY2VsZXI= 9978 +IG5haWw= 9979 +aWVuZQ== 9980 +7IOd 9981 +IGVuY29udA== 9982 +ZXNlYXJjaA== 9983 +6aE= 9984 +IGdvb2Rz 9985 +IGZpc2hpbmc= 9986 +QVBQTEFVU0U= 9987 +IE5BUw== 9988 +ZWN0aW9u 9989 +IHRlbXBsZQ== 9990 +bGljaGU= 9991 +IGtleWJvYXJk 9992 +IGRlc2Rl 9993 +IGVkdWNhdGlvbmFs 9994 +IE5pZ2h0 9995 +MzM= 9996 +IGJyZWF0aGU= 9997 +bGljaGVu 9998 +dGht 9999 +acOocmU= 10000 +4Lia 10001 +bGFyxLE= 10002 +IGFsaQ== 10003 +IGNvbXBvcw== 10004 +IHNlbnNvcg== 10005 +IOu2gOs= 10006 +IG5ld3Nw 10007 +IEJ1bmQ= 10008 +IE1p 10009 +IHBlcmZvcm1pbmc= 10010 +IGRydW0= 10011 +QkU= 10012 +IHBvcms= 10013 +IGNvYWw= 10014 +ZW5nZXI= 10015 +IHJhbQ== 10016 +IOuyiA== 10017 +0LjRgNC+0LI= 10018 +IFBvcA== 10019 +IHBob25lcw== 10020 +IGZhY2ls 10021 +IHRyYWNrcw== 10022 +b250ZQ== 10023 +IG9yZ2FuaWM= 10024 +IGRpYWxvZ3Vl 10025 +IEhhdmluZw== 10026 +IFBvc3Q= 10027 +IHBheW1lbnQ= 10028 +IGFycmF5 10029 +IGludGVuZGVk 10030 +w7pz 10031 +IGJhcnM= 10032 +IHJldmlld3M= 10033 +bGFuZHM= 10034 +IGtpbmdkb20= 10035 +IHN0YWdlcw== 10036 +IG1vdW50YWlucw== 10037 +IGR1bg== 10038 +IGRlY2ly 10039 +xI0= 10040 +IGJhbmtz 10041 +IHRocm93aW5n 10042 +IOuquw== 10043 +IGFuZ2Vy 10044 +INGB0LXQudGH0LDRgQ== 10045 +IGRpc3R1cg== 10046 +IGh1bWFuaXR5 10047 +IGVsZXM= 10048 +IHNob3VsZGVycw== 10049 +IFBlcmZlY3Q= 10050 +IGZhbmN5 10051 +IGJyaWxsaWFudA== 10052 +IGluc3BpcmF0aW9u 10053 +aG1t 10054 +IGxpZA== 10055 +VUw= 10056 +IG3DpQ== 10057 +aW5kaQ== 10058 +6Ig= 10059 +IHNoaWVsZA== 10060 +IOyYpOs= 10061 +Q1Q= 10062 +YWdpbmU= 10063 +dWJlcg== 10064 +IEJS 10065 +IHF1ZXN0bw== 10066 +INC30LDQug== 10067 +IEtub3c= 10068 +IHRhbmc= 10069 +7ZWp64uI64uk 10070 +IGJhcmVseQ== 10071 +IFNF 10072 +IG1hcmdpbg== 10073 +cmVp 10074 +0LDRgtC10LvRjA== 10075 +IGNvbnRy 10076 +IHbDoA== 10077 +IGxlZ2l0 10078 +0Jg= 10079 +a2lucw== 10080 +0YDQtdC0 10081 +IEFzaA== 10082 +IGFkdmlz 10083 +IEdyZWVr 10084 +0YPQug== 10085 +IHNoYWtl 10086 +aWRhZGVz 10087 +0LDRgdGM 10088 +IGNvbnZlbnRpb24= 10089 +IGNvbnRlc3Q= 10090 +TVM= 10091 +IFllYXI= 10092 +IHJlcHJlc2VudGF0aW9u 10093 +aW5kZW4= 10094 +ZW5kYXI= 10095 +IHByb3N0 10096 +IEh1bWFu 10097 +IEN5 10098 +YW5nZWQ= 10099 +UEE= 10100 +IGF4aXM= 10101 +IHRoZW9yZQ== 10102 +YXR6 10103 +IO2VmOqzoA== 10104 +IGVscw== 10105 +IFJlc2VhcmNo 10106 +IGJlbmVmaWM= 10107 +IGRlbnNpdHk= 10108 +aW5kbw== 10109 +7Jy8 10110 +aW1kaQ== 10111 +IHJlc2VhcmNoZXJz 10112 +6rGw65Og 10113 +aWdocw== 10114 +ZGFu 10115 +IGRpY2U= 10116 +IG1hYXI= 10117 +IHN1Ym1pdA== 10118 +IGR1bWI= 10119 +IGJpag== 10120 +YXdheQ== 10121 +IFBhc3M= 10122 +IGV4dGVuc2lvbg== 10123 +IGNydXNo 10124 +IGNvdmVyaW5n 10125 +ZWRp 10126 +Ym9ybg== 10127 +aW5hdGlvbnM= 10128 +INGB0LTQtdC7 10129 +0LLQtdGA 10130 +IE90aGVyd2lzZQ== 10131 +aXN0YW50 10132 +0LDQudGC0LU= 10133 +IHRhbnRv 10134 +IHBlcmZvcm1lZA== 10135 +INC30LDQvw== 10136 +YWxv 10137 +IEZvdW5kYXRpb24= 10138 +IHByb3RvY29s 10139 +IFpv 10140 +bWF5 10141 +IGhhY2s= 10142 +IGJ1ZGR5 10143 +bWFkZQ== 10144 +IGFkcw== 10145 +IGZhc2NpbmF0aW5n 10146 +IGVxdWl2YWxlbnQ= 10147 +Z2Vs 10148 +IGFyYw== 10149 +INGH0LXQu9C+0LI= 10150 +IHByb3Bvc2Vk 10151 +IG5vdHJl 10152 +YW5nZXM= 10153 +IGNvdW5zZWw= 10154 +YWxsYQ== 10155 +IDMx 10156 +d2VldA== 10157 +yJk= 10158 +IGVsZWN0cmljaXR5 10159 +IHRveA== 10160 +xYJhZA== 10161 +IOy0 10162 +IGRpZmZpY3VsdHk= 10163 +oNeZ 10164 +bmVzZGF5 10165 +0LjRgdGM 10166 +IGFsbGVn 10167 +IEdP 10168 +IHF1aXQ= 10169 +IEhlcnI= 10170 +IGVzdMOhbg== 10171 +IGdpcmxmcmllbmQ= 10172 +IHRlbmc= 10173 +aWZpY2lhbA== 10174 +IEphbQ== 10175 +IGNhbmNlbA== 10176 +IGZyZXF1ZW50bHk= 10177 +SVY= 10178 +IGNsb3Npbmc= 10179 +IGRlY2FkZQ== 10180 +IHJlcHJlc2VudGVk 10181 +IENhbmFk 10182 +INC60L7RgtC+0YDRi9C1 10183 +IGVzdGFtb3M= 10184 +IFRodXJzZGF5 10185 +IEdh 10186 +IExpdmU= 10187 +bGVt 10188 +YmJsZQ== 10189 +U09O 10190 +IDIwMDg= 10191 +IGRpY2g= 10192 +IEF3ZXNvbWU= 10193 +IGNvbmNlcHRz 10194 +UEVBSw== 10195 +IGxpdGVyYXR1cmU= 10196 +IE9seW1w 10197 +0LvQsNC0 10198 +IG5vc3Q= 10199 +dml0 10200 +IEVudGVy 10201 +b3JkZXJz 10202 +aWNraW5n 10203 +bmllag== 10204 +IGV1Y2g= 10205 +IFRob3VnaA== 10206 +IGJhZ3M= 10207 +IGxpbWl0cw== 10208 +IHN0YWtl 10209 +g6U= 10210 +IG9j 10211 +IFZpcw== 10212 +IDEyMA== 10213 +IG51ZQ== 10214 +IGNvbmNl 10215 +IGRpc2Fn 10216 +56g= 10217 +IGFudGljaXA= 10218 +oIg= 10219 +c2w= 10220 +IHZvdGluZw== 10221 +IGV4cG9zdXJl 10222 +IENvbW11bml0eQ== 10223 +IEp1c3RpY2U= 10224 +b3JuZXk= 10225 +c3p5c3Q= 10226 +IGZyaWVk 10227 +7Iuc6w== 10228 +IFdpbg== 10229 +IEA= 10230 +IEhvcGVmdWxseQ== 10231 +ZXN6 10232 +IG1vbmRl 10233 +IGNvbWJpbmU= 10234 +Z21lbnQ= 10235 +IHJlY29tbWVuZGF0aW9ucw== 10236 +IHByZWduYW50 10237 +7Iud 10238 +cmFm 10239 +IGx1 10240 +ZG9vcg== 10241 +0LDQt9GL0LI= 10242 +dWVnbw== 10243 +IGltcHJvdmVtZW50 10244 +IHRyaW0= 10245 +IGVpZ2Vu 10246 +IGFwcHJveGltYXRlbHk= 10247 +INCy0LDQvA== 10248 +YXdh 10249 +INGB0L7QsQ== 10250 +IGNvcm9u 10251 +IG9uZ29pbmc= 10252 +IGhlcw== 10253 +IGluanVyeQ== 10254 +IGZyYW5r 10255 +IGthZGFy 10256 +cmVuY3k= 10257 +IENvbG9y 10258 +IEdydQ== 10259 +IGRpcA== 10260 +0YDRiw== 10261 +IHRlYXJz 10262 +Z3Q= 10263 +IFBE 10264 +IHBhdXNl 10265 +b3Nj 10266 +IHVzdGVk 10267 +IFdvbw== 10268 +IHdpxJk= 10269 +IGRlbm4= 10270 +IFBldA== 10271 +IG92ZXJjb21l 10272 +IOuCtOqwgA== 10273 +IE1vdmU= 10274 +IGxpY2Vuc2U= 10275 +IHJlcGVhdGVk 10276 +4K+H 10277 +IGNhdGVnb3JpZXM= 10278 +IG5vb2RsZXM= 10279 +IGZsb29k 10280 +IE1hc3M= 10281 +IG51dHM= 10282 +IEplc3M= 10283 +IElo 10284 +IGNoYW5jZXM= 10285 +kJg= 10286 +IGRvbmRl 10287 +SUc= 10288 +IGFuZGVyZQ== 10289 +IGJvbmVz 10290 +7J6R 10291 +IGVmZmljaWVuY3k= 10292 +IG1vZGVy 10293 +cm9hdA== 10294 +IOydtOqyjA== 10295 +aWxsZXI= 10296 +IG9tZWdh 10297 +INC/0L7Qsg== 10298 +IEdyb3Vw 10299 +IHByb2R1Y2luZw== 10300 +YW1v 10301 +IHBhcnRpY2lwYW50cw== 10302 +dXBw 10303 +aWZpY2U= 10304 +IGZvcnR1bg== 10305 +aWV0bmFt 10306 +YWNhaw== 10307 +IEtv 10308 +bWnFnw== 10309 +IGphaWw= 10310 +IEpvbmVz 10311 +xZtteQ== 10312 +IERldXRz 10313 +IGJyaWVmbHk= 10314 +IFRhbA== 10315 +IFBlcmhhcHM= 10316 +IFJ1Yg== 10317 +IEtu 10318 +64uk64qU 10319 +csOp 10320 +IHZvY8Oqcw== 10321 +IENoYXJsZXM= 10322 +0LXRgtC1 10323 +cmllcnM= 10324 +IGhlYWw= 10325 +YW50ZWU= 10326 +IGRlbW9jcmFjeQ== 10327 +IGxvYW4= 10328 +IGNoZWY= 10329 +0Y/QvA== 10330 +IHVuY29tZm9ydGFibGU= 10331 +IGV0ZXJu 10332 +YXBwaW5n 10333 +IHJlcGFpcg== 10334 +cm90 10335 +IFRhcg== 10336 +IGNvdmVycw== 10337 +b21pbmc= 10338 +IEV0aA== 10339 +IM6t 10340 +0YfQvdC+ 10341 +IGFmdGVyd2FyZHM= 10342 +INCy0LXRgA== 10343 +IGRhaGE= 10344 +IGtuZWVz 10345 +IG9yZGluYXJ5 10346 +w7xs 10347 +Z2Fz 10348 +IHRpY2tldA== 10349 +IOyggOuKlA== 10350 +IOyeiOyKteuLiOuLpA== 10351 +Y2h0ZQ== 10352 +TXI= 10353 +IHNpc3Q= 10354 +aHVp 10355 +6re46w== 10356 +7Jes 10357 +IHZhcnk= 10358 +IG1lbW9y 10359 +IGNvbnRyb2xsZXI= 10360 +IGLEmWR6aWU= 10361 +IG1pbmlzdGVy 10362 +15I= 10363 +Zmxvdw== 10364 +QUg= 10365 +IHRvd2Vy 10366 +55A= 10367 +IHNjYXI= 10368 +IFBlbg== 10369 +IHBhw61z 10370 +15g= 10371 +7J246w== 10372 +IGVuZXJn 10373 +IHN3b3Jk 10374 +IHBhcGVycw== 10375 +0LjQu9Cw 10376 +IFdlZG5lc2RheQ== 10377 +IEZvcmNl 10378 +IGV4dHJhb3JkaW5hcnk= 10379 +IExha2U= 10380 +IOqwgOs= 10381 +IEJlYXV0 10382 +IHJlYXNvbmFibGU= 10383 +IGNvbnRyaWJ1dGU= 10384 +IHBsZWFzZWQ= 10385 +IHVwZGF0ZWQ= 10386 +IHBpw7k= 10387 +ZWxv 10388 +IHNpZ25pZmljYW50bHk= 10389 +IGJvdA== 10390 +IGdlbmVyYXRpb25z 10391 +IHByb3RlY3RlZA== 10392 +IGhpZGluZw== 10393 +IElsbA== 10394 +IG5ldXRyYWw= 10395 +XSw= 10396 +z4TOvw== 10397 +IHRvbmd1ZQ== 10398 +VGhhbms= 10399 +IOqzhA== 10400 +IHBheXM= 10401 +zq/OvQ== 10402 +IGFwcGxl 10403 +MDE= 10404 +ZXJr 10405 +aWVyYQ== 10406 +IGplZw== 10407 +IFN1YnNjcmliZQ== 10408 +IHRoZWF0ZXI= 10409 +IHN0cm9uZ2x5 10410 +IOyGjA== 10411 +INC/0YDQsNCy 10412 +dWNreQ== 10413 +IEppbg== 10414 +a3dhcmQ= 10415 +6rG0 10416 +IG9wcG9uZW50 10417 +IFNP 10418 +IGhvbHk= 10419 +IGZpbGxpbmc= 10420 +Ol0= 10421 +IGhpag== 10422 +0Jw= 10423 +IGJpc3M= 10424 +IGJsZW5k 10425 +IGltcGxpYw== 10426 +IOy9 10427 +bGxlaWNodA== 10428 +2YrYqQ== 10429 +YXNhbnQ= 10430 +ZXJ0ZQ== 10431 +IFNhbWU= 10432 +IGludGVyaW9y 10433 +U2U= 10434 +IGJlbmNo 10435 +IHBvY28= 10436 +IG1hcmtz 10437 +IHdpbnM= 10438 +IM6z 10439 +IGRpc3RpbmN0 10440 +IEFzaWFu 10441 +IG1vbGVj 10442 +IEphY2tzb24= 10443 +IGVhc3Q= 10444 +IHBoeXNpY3M= 10445 +aW1hbA== 10446 +IHBlYWs= 10447 +YXJpYW4= 10448 +ZXBz 10449 +IG5lYXQ= 10450 +INCy0LDRgQ== 10451 +dXJuaW5n 10452 +IHN5bnRo 10453 +IHJldmVhbA== 10454 +xbo= 10455 +Z29u 10456 +bmlz 10457 +YXRpdg== 10458 +IExhcw== 10459 +IHB5 10460 +IE1hamVzdHk= 10461 +IFZhbGxleQ== 10462 +IGVuZg== 10463 +IGdlbnM= 10464 +IHJvb3Rz 10465 +ZXpl 10466 +YmV0 10467 +IGFjdHM= 10468 +6Zo= 10469 +6JA= 10470 +IHBoaWxvc29waHk= 10471 +IG1hdGNoZXM= 10472 +nWk= 10473 +IGp1xbw= 10474 +IGRlc3Blcg== 10475 +IEVkdWNhdGlvbg== 10476 +IHNwb3Rz 10477 +IHJlZ2lvbnM= 10478 +QXI= 10479 +IE5hbQ== 10480 +ZWVu 10481 +IGRpYWdyYW0= 10482 +IHJlbHk= 10483 +IHRlbnM= 10484 +IGRhdGluZw== 10485 +IGNvYXQ= 10486 +IEhvcg== 10487 +IGFja25vd2xlZGdl 10488 +IFByZXR0eQ== 10489 +INC/0L7Qvw== 10490 +IHZvaXI= 10491 +IGZhdm91cml0ZQ== 10492 +IG1vxbw= 10493 +IGtt 10494 +IERP 10495 +IGZlcnQ= 10496 +IOuPhA== 10497 +IFBhYw== 10498 +IGZvbnQ= 10499 +IGZpbmRz 10500 +IEl0YWx5 10501 +INC60L7Quw== 10502 +IGNvbXBhc3M= 10503 +67M= 10504 +bGlhbWVudA== 10505 +IG5vdGlvbg== 10506 +IGluamVjdA== 10507 +IHdpc2RvbQ== 10508 +IMOc 10509 +IE1vb24= 10510 +IEJ1c2luZXNz 10511 +cmljcw== 10512 +IFlvdXQ= 10513 +IGZvcmdpdmU= 10514 +IGZpbmFuY2U= 10515 +aWxv 10516 +2KM= 10517 +YWhs 10518 +IGRlbW8= 10519 +IGNsaW1i 10520 +IGV4cG9ydA== 10521 +5aA= 10522 +IHN1Y2Nlc3NmdWxseQ== 10523 +IEZlcg== 10524 +cGVjdGVk 10525 +ZGVt 10526 +IHJldGlyZQ== 10527 +IGxhcHRvcA== 10528 +IHNwaXI= 10529 +IEFzc29jaWF0aW9u 10530 +INCz0Ls= 10531 +IFNlbA== 10532 +IO2VnOs= 10533 +IGVtcGxveWVl 10534 +IG1vbHQ= 10535 +Ukw= 10536 +0K8= 10537 +IGNvbnRyYQ== 10538 +IHVn 10539 +IEJhbGw= 10540 +IEphdmE= 10541 +w6lyaWU= 10542 +IHByb2NlZHVyZQ== 10543 +IGdyaWQ= 10544 +IOuKkOs= 10545 +IGJlbHQ= 10546 +INGN0YLQvtCz0L4= 10547 +dXJk 10548 +IGNvbXByZWg= 10549 +IGRldmVsb3Blcg== 10550 +INGN0YLQvtC8 10551 +5Zg= 10552 +Y3I= 10553 +IOuT 10554 +IHNwb2tlbg== 10555 +cmVuY2U= 10556 +IHRlcm1pbg== 10557 +IGFnZ3Jlc3NpdmU= 10558 +IGJpc3NjaGVu 10559 +IGhhc3Rh 10560 +IEJyaWFu 10561 +IENvbW1pc3Npb24= 10562 +IFl1 10563 +IHByb21pc2Vk 10564 +IGVxdWl0eQ== 10565 +aWtv 10566 +dmVydHk= 10567 +IHJlcGxhY2Vk 10568 +IEhlbHA= 10569 +IHBvc2U= 10570 +IE1pZGRsZQ== 10571 +IGtpbQ== 10572 +IG1laW4= 10573 +IENvdW5jaWxs 10574 +INCS0YE= 10575 +b3Jv 10576 +IEJlcm4= 10577 +IGJleg== 10578 +IGFuYWx5dA== 10579 +YW5nZW4= 10580 +IOyLtg== 10581 +IEdsbw== 10582 +IHF1YWQ= 10583 +0YLQsA== 10584 +IHNwZWFrcw== 10585 +7JiI7JqU 10586 +IOyXrOufrOs= 10587 +ZnJlZQ== 10588 +0L3Rlg== 10589 +cmljaA== 10590 +IOuvuA== 10591 +IERpZXM= 10592 +YWJi 10593 +pbg= 10594 +IGRlcHJlc3Npb24= 10595 +IHJldGFpbA== 10596 +hOuTpA== 10597 +IFZvdXM= 10598 +IExhdGlu 10599 +4bk= 10600 +IOyii+yVhA== 10601 +IHRvcnQ= 10602 +IGNvbXB1dGVycw== 10603 +IHNlYXJjaGluZw== 10604 +IHR1Yg== 10605 +YXRlbGw= 10606 +IG1lcmM= 10607 +IGdsYXNzZXM= 10608 +cGVyc29u 10609 +IGRpc2hlcw== 10610 +IGd1YXJhbnRlZQ== 10611 +IG1lZw== 10612 +c20= 10613 +IFdhbGs= 10614 +7Jy866m0 10615 +IGZvbGRlcg== 10616 +IE1pdA== 10617 +IHRpbWluZw== 10618 +IGFic3Q= 10619 +IExvZw== 10620 +IGFwcHJvdmVk 10621 +IFVTQQ== 10622 +0LLQtdGC 10623 +IHdpc2U= 10624 +ZXNzZWQ= 10625 +IGRvdWI= 10626 +IHJlc2lkZW50 10627 +IGdlbmVyYXRlZA== 10628 +IHN0YXlz 10629 +IGV4cGxhbmF0aW9u 10630 +IHBvaXNvbg== 10631 +YXRyZQ== 10632 +IGluc2FuZQ== 10633 +IHJlZmVycmVk 10634 +YWlyZXM= 10635 +IFRSQQ== 10636 +IHNlaQ== 10637 +IGlubm9j 10638 +QWg= 10639 +IG1hbnQ= 10640 +aHVz 10641 +IG91dGVy 10642 +Z2Vi 10643 +b2ljZQ== 10644 +IGRpc2N1c3Npbmc= 10645 +IGNvbnZlbmllbnQ= 10646 +X18= 10647 +IGF2b2ly 10648 +IHNoYXBlcw== 10649 +IGdyYXk= 10650 +IGRlbnRybw== 10651 +IG1hY2h0 10652 +IDE5NQ== 10653 +2Y8= 10654 +IGFkZHM= 10655 +dXRpbmc= 10656 +IGNhcGFiaWxpdGllcw== 10657 +IHNlY3Rpb25z 10658 +IHR1bmU= 10659 +IENhdXNl 10660 +YXJkZQ== 10661 +INGB0LrQsNC3 10662 +YXZpcnVz 10663 +IFJF 10664 +IHR1bmVk 10665 +IGxlYWY= 10666 +dGVyaW9y 10667 +IENhcHRhaW4= 10668 +INis 10669 +IGNob29zaW5n 10670 +aGlu 10671 +Z2dpbmc= 10672 +dmlldA== 10673 +IHJlZ3JldA== 10674 +MjY= 10675 +b25kZXJu 10676 +IGJvbnVz 10677 +IFJheQ== 10678 +QXM= 10679 +IHRvcm4= 10680 +IEhpZXI= 10681 +IEVV 10682 +IHJpc2tz 10683 +IGFtYQ== 10684 +IFlldA== 10685 +IGNoYXJhY3RlcmlzdGljcw== 10686 +IOqwkA== 10687 +IFNlbmF0b3I= 10688 +IFZhbW9z 10689 +IHJvc2U= 10690 +IGNvcnBvcmF0ZQ== 10691 +Z2hhbg== 10692 +IGNlbnRlcnM= 10693 +c3RhaXJz 10694 +IG5pdA== 10695 +IHVudXN1YWw= 10696 +IFRvbnk= 10697 +IEdS 10698 +IFdpbGQ= 10699 +IFNpbWlsYXI= 10700 +IHRvZGFz 10701 +IGhvcml6b250 10702 +bWVs 10703 +IHN0cmljdA== 10704 +IGN1YWw= 10705 +IHdyaXQ= 10706 +IGV4dGVuZGVk 10707 +IO2VmOuKlA== 10708 +IHJlbGllZg== 10709 +IG9uaW9u 10710 +IGJhYmllcw== 10711 +IGRpZmVy 10712 +IGludGVncmF0ZWQ= 10713 +w7x6aWs= 10714 +ZXBpbmc= 10715 +LS0tLQ== 10716 +IG1lbnM= 10717 +IHN0cmF0ZWdpYw== 10718 +ZmluaXRlbHk= 10719 +IGVpZ2VudGxpY2g= 10720 +V2hv 10721 +IHs= 10722 +IFRyaQ== 10723 +IHBvaW50ZWQ= 10724 +8J0= 10725 +bmFtZW50 10726 +0LXRhg== 10727 +IHByaWRl 10728 +IFJlcHVibGljYW4= 10729 +IHNhbXBsZXM= 10730 +IGRvbWVzdGlj 10731 +TFk= 10732 +dmV6 10733 +IHdlYmluYXI= 10734 +2KfZhQ== 10735 +IGVuaA== 10736 +IHN1Z2dlc3RlZA== 10737 +IG1laW5l 10738 +IHB1ZWQ= 10739 +b3Jlbg== 10740 +cmly 10741 +IGhlYXZpbHk= 10742 +IGluc3RydWN0aW9u 10743 +IG1pY3JvcGhvbmU= 10744 +IGlndWFs 10745 +IElyYQ== 10746 +IHZ1bG5lcmFibGU= 10747 +IFZpcmdpbmlh 10748 +IGNvbnRpbnVvdXM= 10749 +IHBvdmVydHk= 10750 +IGJsYWRl 10751 +IHJlbGF0ZQ== 10752 +IGNhcmE= 10753 +IEdvaW5n 10754 +IHJlZ2lvbmFs 10755 +IEZ1Y2s= 10756 +IHRvdw== 10757 +IE11c2V1bQ== 10758 +cmFudHM= 10759 +INCx0LXQtw== 10760 +bGFpbQ== 10761 +IGNoYW1waW9u 10762 +dGxl 10763 +w61u 10764 +ZW5jaWE= 10765 +IGRpZXNlbQ== 10766 +IERpZw== 10767 +bWF0ZXM= 10768 +IGludmVzdGluZw== 10769 +IEpvcmRhbg== 10770 +IGludGVncmF0aW9u 10771 +IO2O 10772 +4Lir 10773 +ZW5zdXM= 10774 +IEFyY2g= 10775 +IHBlbmNpbA== 10776 +0LDQu9GM0L3Qvg== 10777 +aXNzZW4= 10778 +IEth 10779 +IHJvY2tz 10780 +IHJhdGluZw== 10781 +IHJlZnVnZQ== 10782 +IGFwcg== 10783 +ZXRlZA== 10784 +IGFzc2lzdGFudA== 10785 +IG1lYW5pbmdmdWw= 10786 +IHBlcm1hbmVudA== 10787 +IGhpbGw= 10788 +IHdzenlzdA== 10789 +IHdvdW5k 10790 +IEF0bA== 10791 +IGxha2U= 10792 +IEZvcnQ= 10793 +IHJlZHVjdGlvbg== 10794 +IHZpdg== 10795 +IHNvdXI= 10796 +IGVjb3M= 10797 +IGhheg== 10798 +IHN0ZWFs 10799 +IG15c3Rlcg== 10800 +INCa0LDQug== 10801 +INGN0YLQuA== 10802 +IFZpZXRuYW0= 10803 +IGFudGVz 10804 +IGNvbm5lY3Rpbmc= 10805 +IERhdmU= 10806 +IGLDtnlsZQ== 10807 +IENhc3Q= 10808 +TGU= 10809 +IGN1bA== 10810 +IGdlbnJl 10811 +66eQ 10812 +IGNvbXBsYWlu 10813 +IGh1cnJ5 10814 +YXJ0ZQ== 10815 +Z3JlZw== 10816 +IG1vbml0b3Jpbmc= 10817 +IGRlc2VydA== 10818 +INGB0L7Qsg== 10819 +ZWxpbmc= 10820 +IFN1cHJlbWU= 10821 +IGdpYmk= 10822 +IGxhcmc= 10823 +IG5hdGlvbnM= 10824 +IFRvaw== 10825 +IG5lZWRsZQ== 10826 +5rU= 10827 +IGFzbGVlcA== 10828 +IGNvbXVu 10829 +IEpld3M= 10830 +IGFjaGlldmVk 10831 +IGV4aXQ= 10832 +IGRpc2Vhc2Vz 10833 +bGluZXM= 10834 +cmllbmRz 10835 +IHJlY3Q= 10836 +IHNjYW4= 10837 +IGh1cnRz 10838 +esSZ 10839 +IExvb2tpbmc= 10840 +7ZI= 10841 +dWx0dXJhbA== 10842 +4buT 10843 +aW5lbnQ= 10844 +IHB1ZXM= 10845 +IGNoZWVyaW5n 10846 +p4A= 10847 +YWdnZXI= 10848 +IGFkYQ== 10849 +TGF1Z2h0ZXI= 10850 +IFdvbWVu 10851 +6Ks= 10852 +IG9jY3VycmVk 10853 +IHNlYXRz 10854 +IGVtcG93ZXI= 10855 +dW51 10856 +ZWxsaW5n 10857 +QkVS 10858 +ZW5zaW9uYWw= 10859 +IGNvbnNvbGU= 10860 +YXNoaW5n 10861 +IGVpbm1hbA== 10862 +ZmFyZQ== 10863 +IOuPvA== 10864 +IHNlc3Npb25z 10865 +2ZA= 10866 +IHJpZGljdWxvdXM= 10867 +w61hbg== 10868 +IEhlbnJ5 10869 +IEhvbA== 10870 +IGNvbGxlY3RlZA== 10871 +IGRpc2N1c3Npb25z 10872 +RGU= 10873 +IGRpc2FiaWxpdHk= 10874 +IO2b 10875 +IHN1YnNjcmliZXJz 10876 +IGlyZ2VuZA== 10877 +IGZlbA== 10878 +IGRpcmVjdGlvbnM= 10879 +IG1hbnVmYWN0dXJpbmc= 10880 +IFJvZA== 10881 +IOyWmA== 10882 +4LiX 10883 +IGNyaXRlcmlh 10884 +IG1vbGQ= 10885 +IGVudGVyaW5n 10886 +cmlq 10887 +aXNlbg== 10888 +IFBhcmE= 10889 +aWV2ZQ== 10890 +IGNoYXJnZWQ= 10891 +IGpvdQ== 10892 +IGNhdHM= 10893 +0LvQtdC0 10894 +YWRheXM= 10895 +0LDQvdC+0LI= 10896 +asSZ 10897 +dmF0aW9u 10898 +IGFzdHJvbg== 10899 +aXRhbHM= 10900 +IEJyYW5k 10901 +IEthbg== 10902 +IHBsYWlu 10903 +IGFuZGVyZW4= 10904 +YW5kZQ== 10905 +0Y/Qtw== 10906 +IHRvbGVy 10907 +xYJlbQ== 10908 +IHByw6k= 10909 +0LzQvtGC0YA= 10910 +YWdlbWVudA== 10911 +dWN0 10912 +Y2jDqQ== 10913 +IEVuZXI= 10914 +YWrEhQ== 10915 +IO2VtOs= 10916 +IHN0YQ== 10917 +IHJpbmdz 10918 +IHRvaWxldA== 10919 +IENyYQ== 10920 +IGV4cGVyaWVuY2luZw== 10921 +IHNsaXA= 10922 +IHNhbmR3aWNo 10923 +IFVzaW5n 10924 +IHNwZWN0cnVt 10925 +IFJvcw== 10926 +YXBzZQ== 10927 +IEpheQ== 10928 +0LzRgw== 10929 +RXg= 10930 +IHJlY29nbml0aW9u 10931 +IERpZG4= 10932 +dWRh 10933 +YWpl 10934 +ZXN0bHk= 10935 +IGZlbWlu 10936 +aXR1cmU= 10937 +0YDQsNGC 10938 +IGhpcmU= 10939 +IG5vd2hlcmU= 10940 +4bqn 10941 +IHdpbmc= 10942 +IHNhdg== 10943 +IFNlY3VyaXR5 10944 +IHJ1cmFs 10945 +IEZ1bg== 10946 +YXllcg== 10947 +IGFjY3Vz 10948 +IG1t 10949 +IEpvc2VwaA== 10950 +IHNjcmVlbnM= 10951 +IGJvcnJvdw== 10952 +IHN3aW5n 10953 +IDQ4 10954 +IHRvdWNoaW5n 10955 +dGhpcw== 10956 +aW50ZW5kbw== 10957 +6YM= 10958 +0KA= 10959 +IFNjb3RsYW5k 10960 +IEphc29u 10961 +IFZlbg== 10962 +IGV4Y2VwdGlvbg== 10963 +IG5lYXJieQ== 10964 +IGJyb3dzZXI= 10965 +YW5nZXJz 10966 +IFNpbg== 10967 +z4DOvw== 10968 +b3NwZWw= 10969 +IHd1cmRl 10970 +IGRydW5r 10971 +7Zo= 10972 +7IaN 10973 +IOyKpO0= 10974 +IExpZQ== 10975 +b2Nv 10976 +IExlYWd1ZQ== 10977 +IGlnbm9yZQ== 10978 +IDop 10979 +IGxhbmRpbmc= 10980 +INi52YQ= 10981 +IFRhZw== 10982 +Mjg= 10983 +IGRyYWZ0 10984 +IGFlcg== 10985 +IOq3uOuDpQ== 10986 +IHBlbnNl 10987 +INC00LDQttC1 10988 +IGJlZHJvb20= 10989 +IG5hag== 10990 +7KeA6rOg 10991 +aWdlbm91cw== 10992 +IGRlYWxz 10993 +ZWxsbw== 10994 +IHBvc2l0 10995 +6rs= 10996 +IHZpc2l0ZWQ= 10997 +aWZpZXM= 10998 +IHByZW1p 10999 +IGNhbnQ= 11000 +IFJpY2s= 11001 +IHJhaXNpbmc= 11002 +IHBlcm1pc3Npb24= 11003 +IHB1Ymw= 11004 +dW5jaQ== 11005 +IGJlbmQ= 11006 +IGNoYW1waW9ucw== 11007 +ZGll 11008 +IGF3ZnVs 11009 +IGp1bXBpbmc= 11010 +IGxsZWc= 11011 +IHN1c3RhaW5hYmxl 11012 +IFRvdA== 11013 +IGNhbmR5 11014 +IHNhdGlzZmllZA== 11015 +IHBpcGU= 11016 +IGNvY2s= 11017 +2LY= 11018 +c3RvbmU= 11019 +IG1vbWVudHVt 11020 +INCd0LA= 11021 +IGFsb3Jz 11022 +IHJldHVybnM= 11023 +YW1tZW4= 11024 +564= 11025 +0YvQvA== 11026 +YXdu 11027 +b3R0ZWQ= 11028 +IHdvbGxlbg== 11029 +aWN0ZWQ= 11030 +IGNhbmRpZGF0ZXM= 11031 +IExhZHk= 11032 +IHlpZWxk 11033 +IG1haW50ZW5hbmNl 11034 +ZmZlY3Q= 11035 +IGV4cGFuc2lvbg== 11036 +IExFRA== 11037 +IGRhcmtuZXNz 11038 +IG91dGZpdA== 11039 +7JWI 11040 +INC40YHQvw== 11041 +cnVwdGlvbg== 11042 +IGVuZ2FnaW5n 11043 +IGluc2lnaHQ= 11044 +IEFsd2F5cw== 11045 +IGdlZg== 11046 +cmFr 11047 +IHBpeA== 11048 +IHF1YW50aXR5 11049 +IGluaw== 11050 +IEtpbmdkb20= 11051 +IGNvcnQ= 11052 +IGdvdmVybm1lbnRz 11053 +IHByb3Rlc3Q= 11054 +cG9vbg== 11055 +INGC0L7Qs9C+ 11056 +dWNoZW4= 11057 +cXVhbGl0eQ== 11058 +IFBvcnF1ZQ== 11059 +IENsdWI= 11060 +IHJpdA== 11061 +IGFydGljbGVz 11062 +Qkk= 11063 +aWdpYmxl 11064 +IGRpc2FzdGVy 11065 +0LjQsw== 11066 +INC90LjQug== 11067 +2YfYpw== 11068 +66W8 11069 +YXJldA== 11070 +IHVuYWJsZQ== 11071 +IMOu 11072 +IGVyc3Q= 11073 +INeg 11074 +dmFyZA== 11075 +IGFubm95aW5n 11076 +IEtpcg== 11077 +0LXRgNC2 11078 +ZW5uaXM= 11079 +IHVuY2VydGFpbg== 11080 +MzY= 11081 +w7Zz 11082 +IGVjb3N5c3RlbQ== 11083 +emVk 11084 +asOg 11085 +c3Vu 11086 +7Ja07ISc 11087 +IMW8ZWJ5 11088 +IG1hcHM= 11089 +64KY 11090 +IEp1c3Rpbg== 11091 +IHRyYXNo 11092 +IGVub3Jtb3Vz 11093 +IHN0YXRlZA== 11094 +IGJyYW5kcw== 11095 +IHlvdXQ= 11096 +INGH0LXQu9C+0LLQtdC6 11097 +IE1hdHRo 11098 +IHRyYW5zcG9ydGF0aW9u 11099 +IGxlZ2lzbGF0aW9u 11100 +IHByb3ZpZGVycw== 11101 +INit 11102 +IG1hZ2F6aW5l 11103 +IHNlaGVu 11104 +IERlc3BpdGU= 11105 +IHBhc3Nlcw== 11106 +IGFsdGVy 11107 +YWRhbg== 11108 +IGZhcm1lcnM= 11109 +IGNvbmZpcm1lZA== 11110 +IGVzYQ== 11111 +aXRvcw== 11112 +IHJvYWRz 11113 +VklT 11114 +IHdvcmtlcg== 11115 +IGRlc2lnbnM= 11116 +IFNvdmlldA== 11117 +YnJpZA== 11118 +IHByYWN0aWNpbmc= 11119 +IOu2gA== 11120 +IFNlYQ== 11121 +INC/0YDQvtC0 11122 +IGNoaWxs 11123 +IGxlbW9u 11124 +7JeQ64qU 11125 +IGZsZXhpYmxl 11126 +IEV4Y3VzZQ== 11127 +IHRlcnJpdG9yeQ== 11128 +IGx1eA== 11129 +IGxpZmV0aW1l 11130 +IGRpc3Rpbmd1 11131 +IFRpbWVz 11132 +IGdyb3Nz 11133 +ZW56 11134 +IHNjcm9sbA== 11135 +bcSxxZ8= 11136 +Y2lw 11137 +o7w= 11138 +RFA= 11139 +IHB1Ymxpc2g= 11140 +IGViZW4= 11141 +IHJlZ2lzdA== 11142 +IGVkaXRpb24= 11143 +IExF 11144 +IGNoYXJnaW5n 11145 +dXRhdGlvbg== 11146 +eXJpY3M= 11147 +aWRhcw== 11148 +IM6/ 11149 +INC60L7RgA== 11150 +IFRvbg== 11151 +IHdob2V2ZXI= 11152 +IEZveA== 11153 +6rGw65Og7JqU 11154 +IGZvdWdodA== 11155 +IGRyaWxs 11156 +IEFmZ2hhbg== 11157 +fiE= 11158 +IFRvbw== 11159 +IHNlY29uZGFyeQ== 11160 +csOk 11161 +IEhlYWQ= 11162 +aW5uZW4= 11163 +IHlhcm4= 11164 +INC90LDQvA== 11165 +IHdpZHRo 11166 +IGVuZ2luZWVy 11167 +acSF 11168 +IHdpbmdz 11169 +IOuVjOusuA== 11170 +IHRyYXVtYQ== 11171 +IHJlcHJvZHU= 11172 +IGNoaXA= 11173 +IHBhc3Npb25hdGU= 11174 +IGF3a3dhcmQ= 11175 +IO2K 11176 +0LDQttC0 11177 +IEJpdGNvaW4= 11178 +IGtow7RuZw== 11179 +IHLDsw== 11180 +cmVjdGlvbg== 11181 +INCz0LTQtQ== 11182 +IFVzdWFsbHk= 11183 +IGltcGxlbWVudGF0aW9u 11184 +IGdhbWVwbGF5 11185 +IG15c3Rlcnk= 11186 +INC+0Lo= 11187 +IGHDsW9z 11188 +YW5keQ== 11189 +0LjQvNC4 11190 +IHByaXZhY3k= 11191 +YWNv 11192 +IGR1bXA= 11193 +IFBheQ== 11194 +IGRpcGw= 11195 +IGZ1cm4= 11196 +IHNoaXBz 11197 +TEE= 11198 +INGF0L7RgNC+0Yg= 11199 +IGVj 11200 +IGRyb3Bz 11201 +Y2hs 11202 +MzI= 11203 +IG9ic2VydmU= 11204 +IERldmVsb3A= 11205 +TcO8emlr 11206 +YW5uZWw= 11207 +b3dhxIc= 11208 +IGZhY2Vk 11209 +w6Fs 11210 +IHZpY3RpbXM= 11211 +IGdpZnRz 11212 +IGJvb3Q= 11213 +w59l 11214 +cm9k 11215 +IDIwMDk= 11216 +w7ZydA== 11217 +IHVuaXZlcnNhbA== 11218 +IG5vdXZl 11219 +IGJveWZyaWVuZA== 11220 +IGNldGVyYQ== 11221 +0YHRgtCw 11222 +J1M= 11223 +IG5pdmU= 11224 +IGNydWNpYWw= 11225 +IHN1cnZl 11226 +IGNvaW4= 11227 +IHNvbmRlcm4= 11228 +IHNoYWRl 11229 +IGx1Z2Fy 11230 +IHN1cmVseQ== 11231 +IG1heA== 11232 +IGltcHJvdmluZw== 11233 +IHdlbg== 11234 +INeR 11235 +IOyWtOw= 11236 +IGVuZm9yY2VtZW50 11237 +aWJs 11238 +IGxpdg== 11239 +bGVyaQ== 11240 +IG1lam9y 11241 +IENhcm9saW5h 11242 +IHZhcw== 11243 +IGNvbXByb20= 11244 +IGRpcnQ= 11245 +IHVwZ3JhZGU= 11246 +IEJlbGw= 11247 +IHJlc3RhdXJhbnRz 11248 +IHRyYXA= 11249 +IHRlYXM= 11250 +YmxpYw== 11251 +IEdyZWc= 11252 +c2Fu 11253 +IG93 11254 +dWVzdA== 11255 +IHByb3Bvc2Fs 11256 +IFJldA== 11257 +ZnJvbnQ= 11258 +IHBhc3NhZ2U= 11259 +IHN1cnJvdW5kaW5n 11260 +IMO6bHQ= 11261 +IHVwY29taW5n 11262 +IGhvcnJvcg== 11263 +IGNsb3RoaW5n 11264 +IOyVvQ== 11265 +IGRpbA== 11266 +cm9tZQ== 11267 +IElk 11268 +IFJvYWQ= 11269 +INGN0YLQvtGC 11270 +Y2hhaW4= 11271 +INCx0YvRgtGM 11272 +IE9mZmlj 11273 +INCd0LU= 11274 +IGluc2Fu 11275 +IGRlY3JlYXNl 11276 +INGF0L7Rgg== 11277 +YnVpbGQ= 11278 +IERyYWdvbg== 11279 +5YI= 11280 +IGludmVzdG9ycw== 11281 +YW50aQ== 11282 +IHNhY3JpZmljZQ== 11283 +IHRyb29wcw== 11284 +IEJhZA== 11285 +IHBhc3N3b3Jk 11286 +IGNvbnN0cmE= 11287 +4LiV 11288 +IMOHYQ== 11289 +YWRvdw== 11290 +dGhyb3VnaA== 11291 +0YbQsA== 11292 +Q2Fu 11293 +IGNhbmRpZGF0ZQ== 11294 +IGFudGli 11295 +7JeF 11296 +IHRhc3R5 11297 +2YjZhg== 11298 +IEluZg== 11299 +IEJhbmc= 11300 +acOfdA== 11301 +aW5pdHk= 11302 +ZmF0aGVy 11303 +IGNvbnRyb3ZlcnM= 11304 +IFBhaw== 11305 +aWx0eQ== 11306 +6rWs6w== 11307 +IGxpZ2h0ZXI= 11308 +IGZhbGxlbg== 11309 +IHp1cw== 11310 +IEd1YXJk 11311 +IGNvdHQ= 11312 +IEZyZWU= 11313 +IGluaXRpYXRpdmU= 11314 +YWxvdXM= 11315 +IG5vdGlmaWNhdGlvbg== 11316 +IE1lZGlj 11317 +IENvbW1pdHRlZQ== 11318 +7Jew 11319 +IFdvb2Q= 11320 +IG11c2g= 11321 +dWx1bQ== 11322 +6LI= 11323 +YWhhaA== 11324 +IHN1ZmZpY2llbnQ= 11325 +IHNpbmdlcg== 11326 +0LrQvtC5 11327 +QUxJ 11328 +w6R0dA== 11329 +IFBS 11330 +IExhcg== 11331 +Y3VsZXM= 11332 +aWVtcG8= 11333 +IHVuZXg= 11334 +IGludGVncmFs 11335 +IHRyYW5zbWlzc2lvbg== 11336 +IGljaQ== 11337 +0YPRhQ== 11338 +Z2lj 11339 +IE5pbnRlbmRv 11340 +IENvcA== 11341 +IFRydXN0 11342 +ZW5hcw== 11343 +IGFiaWxpdGllcw== 11344 +IGNoaXBz 11345 +cGF0 11346 +IGFuY2hl 11347 +0LvQtdC9 11348 +IGFwcHJvYWNoZXM= 11349 +IHRob3I= 11350 +IHNpc3RlcnM= 11351 +IGRyaXZlcnM= 11352 +IGFsbGE= 11353 +MDM= 11354 +IHJ1YmJlcg== 11355 +IG7DpQ== 11356 +QUNL 11357 +IGRpc2FwcGVhcg== 11358 +6rCc 11359 +IGNvbXBlbnM= 11360 +IHZpYnI= 11361 +R08= 11362 +IHNpemVz 11363 +IHRyYWNraW5n 11364 +7ZmU 11365 +IOyEuA== 11366 +IGltcGFjdHM= 11367 +aWJpbA== 11368 +ZmlzaA== 11369 +QlI= 11370 +IGFycm93 11371 +IGxhcmdlbHk= 11372 +YW5ueQ== 11373 +IGxhd3llcg== 11374 +am91cnM= 11375 +2ro= 11376 +dmlh 11377 +IGRlbGxh 11378 +IG1hdGhlbWF0 11379 +IE1pbmU= 11380 +IEtvbGw= 11381 +2LI= 11382 +IENyb3Nz 11383 +IDY1 11384 +IGdyYWM= 11385 +IGludm9sdmVz 11386 +IGRlbGlnaHQ= 11387 +IEhvbGx5d29vZA== 11388 +IGltbWVkaWF0ZQ== 11389 +b25pYw== 11390 +IGxhZG8= 11391 +IGJ1bGxldA== 11392 +IE5vdGU= 11393 +IHVubG9jaw== 11394 +IGRpc2NvdW50 11395 +IHJpc2luZw== 11396 +cHJlc3M= 11397 +IHBhY2U= 11398 +IHNob3J0ZXI= 11399 +IHRlbmVy 11400 +Z2Vvbg== 11401 +IG1hbmFnaW5n 11402 +IGNlcmU= 11403 +Q2hy 11404 +V2hlbg== 11405 +YWNoZW4= 11406 +IOyT 11407 +IEh1bg== 11408 +IG9mdA== 11409 +IDI1MA== 11410 +aWVydW5n 11411 +IHN0YWJpbA== 11412 +IENvbm5lY3Q= 11413 +IHlhbmk= 11414 +IGRvd250 11415 +zrzOsQ== 11416 +IHZvY2Fs 11417 +zr3OsQ== 11418 +IGxlYW4= 11419 +IHZpZMOpbw== 11420 +IEZhbWlseQ== 11421 +cmVzZW50 11422 +IGFtb3VudHM= 11423 +7KeB 11424 +Y2xhc3M= 11425 +IHZpYg== 11426 +IEF2 11427 +YXJzZQ== 11428 +IGdlbnRsZW1lbg== 11429 +IHNlZWtpbmc= 11430 +IHVuaW9u 11431 +IHJlZ3VsYXJseQ== 11432 +5o8= 11433 +IEphaHI= 11434 +IEZvb2Q= 11435 +IFByb2JsZW0= 11436 +IGFydGlmaWNpYWw= 11437 +IFNpeA== 11438 +IGltcHJlc3NlZA== 11439 +IHRvb3Ro 11440 +IEto 11441 +IHlhcmQ= 11442 +IO2VtA== 11443 +IG93bmVk 11444 +IOuPmQ== 11445 +7LKt 11446 +IHRvZGE= 11447 +IHBvcnRmb2w= 11448 +IOuCqA== 11449 +b3JnZW91cw== 11450 +IGRhdGVz 11451 +0L7Qu9GM0Lc= 11452 +0LXRh9C90L4= 11453 +IGNvbmZpZ3VyYXRpb24= 11454 +IHJlcXVpcmVtZW50 11455 +IGJlbGx5 11456 +IHBhaW5mdWw= 11457 +IGRlbW9uc3RyYXRl 11458 +IGdsZWljaA== 11459 +IHZpc2l0aW5n 11460 +IENvbmY= 11461 +IGRhbA== 11462 +2ZE= 11463 +IGFtZW5k 11464 +IEZ1cg== 11465 +IHZpdGFs 11466 +4buL 11467 +IG1hdGU= 11468 +IE91 11469 +IGxlZ2FjeQ== 11470 +dXN0aW5n 11471 +IGFjY29tbW9k 11472 +IHF1b2k= 11473 +YXVlbg== 11474 +IGxpZmVzdHlsZQ== 11475 +Q0M= 11476 +w6TDpG4= 11477 +YXJ0ZW4= 11478 +IG1pbmhh 11479 +csOz 11480 +IOuqqA== 11481 +IGZvcm1hdGlvbg== 11482 +IHRyYWlsZXI= 11483 +cGVyb3I= 11484 +INCz0YA= 11485 +IHVk 11486 +enU= 11487 +IGtvbW1lbg== 11488 +IGNhdmU= 11489 +IENvdW5jaWxsb3I= 11490 +IHRocm93bg== 11491 +IHRyaWNrcw== 11492 +TEFVR0hURVI= 11493 +IEFjYWRlbXk= 11494 +cm93ZA== 11495 +oZ0= 11496 +7KCA 11497 +IEltYWdpbmU= 11498 +IGluZm9ybWVk 11499 +cm9waA== 11500 +IGxpZw== 11501 +IHNrdWxs 11502 +YWJldGg= 11503 +IGZ1bmN0aW9uYWw= 11504 +ZXJlaw== 11505 +T24= 11506 +6aY= 11507 +IGFuY2VzdA== 11508 +IHNhZmVseQ== 11509 +IEhU 11510 +64u5 11511 +IGRhdg== 11512 +IGRyaXZlcw== 11513 +QW1lcmlj 11514 +IHRpcmU= 11515 +IHNhaXM= 11516 +w6FyaQ== 11517 +YXZvcnM= 11518 +IGNvcnJlc3BvbmRpbmc= 11519 +IHByw6lz 11520 +Y2hlc3Q= 11521 +IGJhY3Rlcmlh 11522 +IGluZmVjdGlvbg== 11523 +dXNhbA== 11524 +IGF2ZXo= 11525 +IGJhc2tldGJhbGw= 11526 +IHN1cHBsaWVz 11527 +IGV4cGVydGlzZQ== 11528 +oKU= 11529 +ZmE= 11530 +IHRpZW1wbw== 11531 +IFdhbnQ= 11532 +IHNpbGx5 11533 +IHVwcA== 11534 +IGVsZWN0ZWQ= 11535 +IGZpcmVk 11536 +INiv 11537 +IHVuaXZlcnNpdGllcw== 11538 +YWxsZQ== 11539 +IGphY2tldA== 11540 +wrA= 11541 +IHRyYXY= 11542 +bHM= 11543 +IGRlZmVhdA== 11544 +IGNvZ24= 11545 +IGVxdWF0aW9ucw== 11546 +dWtp 11547 +IFNoZXI= 11548 +IHRoaXJ0eQ== 11549 +IHN0cmVhbWluZw== 11550 +b3Ryb3M= 11551 +IFByb2R1 11552 +bmVq 11553 +IGRlc2lnbmVy 11554 +IOuKkOuC 11555 +IHBhaW50ZWQ= 11556 +cmFpbmU= 11557 +bWFpbA== 11558 +IHZlc3M= 11559 +IHJoeXRobQ== 11560 +bGVzaA== 11561 +IDk5 11562 +IGFpbmRh 11563 +Y2hpZWQ= 11564 +IMOpdGFpdA== 11565 +IGFmZmVjdHM= 11566 +6aM= 11567 +IEZpbmQ= 11568 +IMOpbA== 11569 +IHBvdGF0b2Vz 11570 +IHBhZw== 11571 +INC/0LDRgA== 11572 +YXJ0cw== 11573 +IE5hY2g= 11574 +IDMz 11575 +IEhhcmQ= 11576 +IElyYXE= 11577 +IG9waW5pb25z 11578 +d2l0aA== 11579 +ZXJtYW4= 11580 +w70= 11581 +6K0= 11582 +IFNQRUFL 11583 +rLw= 11584 +IHN0YWJpbGl0eQ== 11585 +IEhF 11586 +IGNhcHR1cmVk 11587 +IGJ1Y2tz 11588 +IG1hc2tz 11589 +IGNvbXBldGU= 11590 +IGZvcmdvdHRlbg== 11591 +0LvRjtGH 11592 +c2VxdQ== 11593 +IOyEoA== 11594 +aWxsaW9u 11595 +IGdyYXBoaWNz 11596 +IGh1Yg== 11597 +IOyXsA== 11598 +ZW1wb3I= 11599 +IGNyb3du 11600 +IHdpZGVy 11601 +IG9jY3Vycw== 11602 +RFM= 11603 +5oE= 11604 +IEJhdHRsZQ== 11605 +IGR1YWw= 11606 +IDYwMA== 11607 +YXRoZXJz 11608 +4LmB 11609 +IHNldHRsZQ== 11610 +IGF2YWl0 11611 +IGRvaXM= 11612 +0LrQuNGF 11613 +YWRvcmVz 11614 +IMOz 11615 +bmVnbw== 11616 +IEdlb3JnaWE= 11617 +IFJvZw== 11618 +IGRpdm9y 11619 +IFNvbmc= 11620 +IFNwZWNpYWw= 11621 +IG11bg== 11622 +IHByZXRlbmQ= 11623 +TUFO 11624 +IHZpb2xlbnQ= 11625 +IGJlc2lkZXM= 11626 +dnk= 11627 +IE5heg== 11628 +Mjk= 11629 +IHN3ZWF0 11630 +IHp3 11631 +IEh1 11632 +IEJ1aWxk 11633 +IGhvcm0= 11634 +IENhcmQ= 11635 +IOycoA== 11636 +IHJlY29tbWVuZGF0aW9u 11637 +Y2FsbGVk 11638 +c3RpY2s= 11639 +IFBvbGljZQ== 11640 +IGNvbnN1bWVycw== 11641 +IGdyb2Nlcg== 11642 +IHN0dW4= 11643 +INCS0Ys= 11644 +0KM= 11645 +IERhdGE= 11646 +IHN1YnN0YW50 11647 +aXJlY3Q= 11648 +4LI= 11649 +INCy0Lc= 11650 +IEFybQ== 11651 +IHNlbWVzdGVy 11652 +IEJyYWQ= 11653 +IG91cnM= 11654 +INC60L7RgtC+0YDRi9C5 11655 +p2E= 11656 +IGdyYW1z 11657 +IGV4ZXJjaXNlcw== 11658 +NzU= 11659 +IHN3ZWFy 11660 +IGluY2VudA== 11661 +z4HOvw== 11662 +IGlsbGVnYWw= 11663 +IERhbW4= 11664 +IG7Dug== 11665 +IG5lY2Vz 11666 +IGN1eg== 11667 +aWNvbg== 11668 +IGhvcnM= 11669 +IENvbW8= 11670 +IOuRkA== 11671 +IG92ZXJzZQ== 11672 +IGhhcnZlc3Q= 11673 +IHRocmV3 11674 +INC/0L7RgtC+0LzRgw== 11675 +15nXlA== 11676 +IG90cm8= 11677 +INC/0LXRgNCy 11678 +IHNjb3Bl 11679 +IGdsb3J5 11680 +IE1pY2hpZ2Fu 11681 +IGFzc3VtaW5n 11682 +INGD0LQ= 11683 +IGJvbGQ= 11684 +Z3Vl 11685 +bW90aGVy 11686 +IHdhcmVu 11687 +INil 11688 +IEthbQ== 11689 +aXNwaWVs 11690 +IHRvdWpvdXJz 11691 +IGNvbnN0aXR1dGlvbg== 11692 +IH4= 11693 +IGZyYW5rbHk= 11694 +b2xlbg== 11695 +b25zY2lvdXM= 11696 +IHfDvHJkZQ== 11697 +dGhvbg== 11698 +IE9G 11699 +7J6Q6w== 11700 +dW5kYQ== 11701 +INC/0L7RgA== 11702 +IGVtcGxveW1lbnQ= 11703 +0ZHRgg== 11704 +IHN0ZWFt 11705 +IERJ 11706 +IHByb2Zlc3Npb25hbHM= 11707 +IGVuZ2luZWVycw== 11708 +IFhpYQ== 11709 +56s= 11710 +7JiB 11711 +IER1bg== 11712 +IGJpdGNo 11713 +IEZvcmQ= 11714 +c2VjdGlvbg== 11715 +IHZpY2U= 11716 +IExhdGVy 11717 +b3N0b24= 11718 +0Y3Rgg== 11719 +16Y= 11720 +IEF6dXJl 11721 +cGxpbmc= 11722 +IDE4MA== 11723 +IENyZWF0 11724 +SVNIQQ== 11725 +IGJ1ZW5v 11726 +7Z2s 11727 +cnVw 11728 +bGVycw== 11729 +IFlhbmc= 11730 +IEhB 11731 +YmF0 11732 +IENhdGhvbGlj 11733 +IGFjY2VudA== 11734 +IG1peGluZw== 11735 +Y2tldHM= 11736 +IGVuaGFuY2U= 11737 +w7xocg== 11738 +w6pz 11739 +IO2W 11740 +IHN3aW1taW5n 11741 +IGPhu6dh 11742 +IEVsaXo= 11743 +IGltbXVuZQ== 11744 +INCx0L7Quw== 11745 +IGZhcmU= 11746 +IEdhYg== 11747 +16E= 11748 +IHNhdGVsbA== 11749 +IEFueXRoaW5n 11750 +IGFzc2V0 11751 +IHNjaGVkdWw= 11752 +IHJhZGljYWw= 11753 +IHp3ZWk= 11754 +IE1F 11755 +cmVsYXRlZA== 11756 +IHNlcGFyYXRlZA== 11757 +IExpYnI= 11758 +IGdyaXA= 11759 +IOCuqg== 11760 +IGJlYW5z 11761 +IE9w 11762 +7IaM 11763 +IHBvdW5k 11764 +IGVudHJhbmNl 11765 +z4Y= 11766 +IE5pZQ== 11767 +IFJlcHVibGljYW5z 11768 +IGF0b20= 11769 +IHBlcnNvbmFz 11770 +IEFsaQ== 11771 +w6Rocg== 11772 +IGRyYW1hdGlj 11773 +IEZpbmU= 11774 +IHJlbWluZHM= 11775 +6Jk= 11776 +IGTDqWrDoA== 11777 +IGFmZm9yZGFibGU= 11778 +IGJyYW4= 11779 +aWVybw== 11780 +YWxhcg== 11781 +Y3U= 11782 +IFw= 11783 +IG1vxbxl 11784 +IGJsYXN0 11785 +IHJlY3k= 11786 +ZmlyZQ== 11787 +IGxsZQ== 11788 +INCy0YDQtdC80Y8= 11789 +IFdX 11790 +IHZz 11791 +IER1ZGU= 11792 +IFJvbWU= 11793 +IGdyZWV0 11794 +IEhldA== 11795 +Y2lhcw== 11796 +IOuLuQ== 11797 +bGVzc2x5 11798 +IHByZW1pdW0= 11799 +IGV4cGVyaW1lbnRz 11800 +YXRhcg== 11801 +w6lyaQ== 11802 +IG9mZmljaWFsbHk= 11803 +IGZlZQ== 11804 +4LmH 11805 +INGH0LXQvA== 11806 +cmVh 11807 +IHRveQ== 11808 +T1A= 11809 +IFRheWxvcg== 11810 +IE1jQw== 11811 +aWxleQ== 11812 +IEJhaw== 11813 +IGFsdW0= 11814 +IFVudGVy 11815 +IG1hZ2ljYWw= 11816 +IHRyYWJhbA== 11817 +IHZvdGVz 11818 +aXRhZ2U= 11819 +IG1lY2hhbmljYWw= 11820 +aG4= 11821 +INC40L3RgtC10YA= 11822 +IGhpbnQ= 11823 +IGF1dGhvcml0aWVz 11824 +IE5BU0E= 11825 +aXZlcnNhcnk= 11826 +INC/0L7Rhw== 11827 +cmFj 11828 +IFNQRUFLRVI= 11829 +w7Z0 11830 +IGZyYW1lcw== 11831 +IGdvb2RieWU= 11832 +IGNoZXI= 11833 +aHU= 11834 +IG5ldXI= 11835 +IE1hY2g= 11836 +IEhlbGw= 11837 +IGZlc3RpdmFs 11838 +64WE 11839 +dXRh 11840 +IG11c2hyb29t 11841 +IHRhbnQ= 11842 +IHRhdHRv 11843 +IGRlbGV0ZQ== 11844 +IGRpeg== 11845 +IHbDpA== 11846 +IHNldmVudA== 11847 +IFF1aWNr 11848 +IGJha2luZw== 11849 +IGFzc2VtYmx5 11850 +R28= 11851 +IERyZWFt 11852 +IExhZA== 11853 +w6J5 11854 +YWdz 11855 +IGdyYXZpdHk= 11856 +IOynkQ== 11857 +ZW1wbG95 11858 +IGRpZXNlcw== 11859 +IGRpc2NvdmVyeQ== 11860 +0YHRgtCy0LA= 11861 +IGhlYmJlbg== 11862 +IGdlcmFkZQ== 11863 +IERS 11864 +ICcn 11865 +IHRlY2huaWNhbGx5 11866 +INCf0L4= 11867 +IHByaXZpbGVnZQ== 11868 +IEV2ZXI= 11869 +IFNlcnZpY2Vz 11870 +dXJhbg== 11871 +IGNvbnN1bXB0aW9u 11872 +IFJldg== 11873 +IFNoYWxs 11874 +YXNzZXI= 11875 +toDthLA= 11876 +IHJhY2lhbA== 11877 +IFlvdXR1YmU= 11878 +IFByYQ== 11879 +0YHRgtCy0LXQvQ== 11880 +Y2Vr 11881 +5rQ= 11882 +YXNoYQ== 11883 +INuB 11884 +kZw= 11885 +YWhu 11886 +SUNL 11887 +IGRyaW5rcw== 11888 +IGNhcmI= 11889 +IDY0 11890 +IE1tbQ== 11891 +IGVsZWN0cmljYWw= 11892 +IGZydWl0cw== 11893 +IEhE 11894 +w7Fh 11895 +IERlZmluaXRlbHk= 11896 +IOuwmw== 11897 +IGZhaXM= 11898 +cmF0aW9ucw== 11899 +IGNvZQ== 11900 +YWh1 11901 +IEZhaXI= 11902 +IGVhdGVu 11903 +IGZpcg== 11904 +IEF1 11905 +0YPQvQ== 11906 +dWxhdGluZw== 11907 +aW5nbHk= 11908 +IHZhY2NpbmVz 11909 +IGRyYWdvbg== 11910 +IHBvaW50aW5n 11911 +IHBlbG8= 11912 +b3J0ZXJz 11913 +IHdvcmtvdXQ= 11914 +0LjQvNC10YA= 11915 +bW9uZA== 11916 +IE5vcGU= 11917 +INeW15Q= 11918 +INmC 11919 +IGFkb3B0ZWQ= 11920 +YnVs 11921 +IHNhbnM= 11922 +IHBvc3NpYmlsaXRpZXM= 11923 +IHBlbmQ= 11924 +IHphbWFu 11925 +aG91 11926 +IHNoYXJlcw== 11927 +IGNhbGVuZGFy 11928 +IHBlcnNvbmE= 11929 +IHNlYWw= 11930 +IGdlbmU= 11931 +IHN0b3JlZA== 11932 +INC/0L7Qtw== 11933 +IGx5cmljcw== 11934 +IGluc3RydW1lbnRz 11935 +IE1B 11936 +gOydtA== 11937 +IGNsb3Vkcw== 11938 +aG90 11939 +4bqv 11940 +IOqwmeyVhOyalA== 11941 +IEVtcGlyZQ== 11942 +IGJpbw== 11943 +d2luZA== 11944 +aWVnbw== 11945 +IEV1cm9w 11946 +ZWRnZQ== 11947 +IGJhY2t3YXJkcw== 11948 +IOyngOs= 11949 +IHF1ZWVu 11950 +IHNoaW5l 11951 +IMOnxLFr 11952 +IGNhZA== 11953 +IE9k 11954 +IOyCrOuejA== 11955 +IGJ1YmJsZQ== 11956 +w7Rp 11957 +emVz 11958 +IHJlYWN0aW9ucw== 11959 +IGp1ZGdtZW50 11960 +IERlbW9jcmF0cw== 11961 +IGNvc2Fz 11962 +YXNoZWQ= 11963 +INC00L7Qu9C2 11964 +xZtuaWU= 11965 +6rQ= 11966 +IGV4ZW1wbGU= 11967 +TVA= 11968 +4buv 11969 +IFZlcnM= 11970 +IHJlc2ls 11971 +IG3DoQ== 11972 +xYRzdA== 11973 +YmVsaWV2 11974 +IFZvcg== 11975 +IHNjaGVtZQ== 11976 +b25kYQ== 11977 +IHBvZGVtb3M= 11978 +IGNoYXJnZXM= 11979 +IGRlc3RpbmF0aW9u 11980 +IEt5 11981 +IFNT 11982 +IHNpbGVuY2U= 11983 +IGVtYmVk 11984 +bmF0 11985 +4bubaQ== 11986 +QU5U 11987 +Z2dlZA== 11988 +IHJlZHVjaW5n 11989 +IHVnbHk= 11990 +IG1pbQ== 11991 +0YPQtNCw 11992 +MzQ= 11993 +IGNvcmQ= 11994 +INGC0L7QttC1 11995 +IExpc2E= 11996 +IMO2bg== 11997 +IENocmlzdGlhbnM= 11998 +dW1ibGVz 11999 +b2xvZ2lzdHM= 12000 +YXph 12001 +IHRlbmRz 12002 +IENvb2s= 12003 +IGdlc2FndA== 12004 +IO2VmOuCmA== 12005 +IFRlcw== 12006 +ZXJlbW9ueQ== 12007 +INC90YPQttC90L4= 12008 +IE1BUklTSEE= 12009 +IGVucm9sbA== 12010 +IENyeQ== 12011 +RVNT 12012 +IFNhZA== 12013 +IGltcGxlbWVudGVk 12014 +IGTDrWE= 12015 +w5w= 12016 +IHBpc3Q= 12017 +RHI= 12018 +IHNhYmU= 12019 +IFNvY2k= 12020 +w6RyZQ== 12021 +INC60YLQvg== 12022 +IEZyYW5jaXNjbw== 12023 +IOyepQ== 12024 +IGNyZWF0dXJlcw== 12025 +YXdz 12026 +IGVhcm5lZA== 12027 +IGNoZWFwZXI= 12028 +IGRsYQ== 12029 +IHdhcm4= 12030 +c2NoZQ== 12031 +IGJsYWg= 12032 +IG51dHI= 12033 +6Lw= 12034 +IGdvcmdlb3Vz 12035 +IEFuZ2VsZXM= 12036 +IGdlbWFjaHQ= 12037 +IGhvbWVsZXNz 12038 +b2dyYXBoaWM= 12039 +IFRhaXdhbg== 12040 +IFNvbQ== 12041 +IEhhZA== 12042 +YWN0aW9ucw== 12043 +IHBvc3Rz 12044 +IG91dHJh 12045 +IE1lYW4= 12046 +a2Fy 12047 +IGNvdXM= 12048 +IGJyYWNr 12049 +0LjRgtGM0YHRjw== 12050 +IGJlbGlldmVz 12051 +IHN1aWNpZGU= 12052 +IGVxdWFsbHk= 12053 +IGNhcmVz 12054 +0L7QttC90L4= 12055 +IHN0ZW0= 12056 +IE11Y2g= 12057 +IHByb2R1Y2Vy 12058 +15XXkA== 12059 +IHByb3RlY3Rpbmc= 12060 +IFRSQVZJUw== 12061 +IGludGVydmlld3M= 12062 +IGFsaWVu 12063 +IEFzaw== 12064 +IHNvbGU= 12065 +Q08= 12066 +IFN1ZA== 12067 +IHN1cnZpdg== 12068 +IHNrZXRjaA== 12069 +IHfFgmE= 12070 +IGNvbG9j 12071 +IGFwb2xvZ2l6ZQ== 12072 +d2VpZ2h0 12073 +IDU1 12074 +ID4= 12075 +IGhlcm9lcw== 12076 +IEJvc3Rvbg== 12077 +IGRlcGVuZGVudA== 12078 +IG1vdGl2YXRpb24= 12079 +ZmxpeA== 12080 +IHNlYW0= 12081 +0LrQuNC1 12082 +IGRyYWlu 12083 +b2RlZA== 12084 +IGd1aWx0eQ== 12085 +IEplbm4= 12086 +aW5nZW4= 12087 +IGdyYW50ZWQ= 12088 +IEtlbGx5 12089 +IFNhdg== 12090 +IFVuY2xl 12091 +IEhvbmVzdGx5 12092 +RUxJ 12093 +IG5hdmlnYXRl 12094 +IGJsZXNzZWQ= 12095 +Y29yZQ== 12096 +IGVhcm5pbmc= 12097 +IHNpZ25hbHM= 12098 +IGRpc2s= 12099 +aWFscw== 12100 +IGFnZXM= 12101 +5oU= 12102 +IHBhcnRpY2xl 12103 +INGH0LXRgA== 12104 +IGNhbm4= 12105 +IHRpZXI= 12106 +IHN0YXRlbWVudHM= 12107 +6rOg7JqU 12108 +IOuVjOusuOyXkA== 12109 +IENobw== 12110 +IHBvbGFy 12111 +YW7Dpw== 12112 +IEtlbm4= 12113 +IE5p 12114 +IEZpZ2h0 12115 +b3JnYW4= 12116 +6ZU= 12117 +IENoYQ== 12118 +IFPDrQ== 12119 +IHNsaWM= 12120 +IGNlcnRpZmlj 12121 +IHRlbXBsYXRl 12122 +IEZlZGVyYWw= 12123 +IGNvbnNpZGVyYXRpb24= 12124 +IGV4cGxv 12125 +IE1haW4= 12126 +IE5F 12127 +IGFsb25nc2lkZQ== 12128 +IGRyZXNzZWQ= 12129 +IFBvaW50 12130 +IGVudmlyb25tZW50cw== 12131 +IHByw7N4aW0= 12132 +IGRhYXI= 12133 +IHByb21wdA== 12134 +IHB1cnN1ZQ== 12135 +IGVudGVydGFpbm1lbnQ= 12136 +IHRocm9hdA== 12137 +IHByb2JsZW1h 12138 +IG1hcnQ= 12139 +7Lw= 12140 +IHByb3ZpZGVy 12141 +2Iw= 12142 +INeX 12143 +aW50ZQ== 12144 +bWFraW5n 12145 +IHN0cm9rZQ== 12146 +IHRpc3N1ZQ== 12147 +VW4= 12148 +IHByZWNpb3Vz 12149 +IEFydHM= 12150 +aW5raW5n 12151 +INCe0L0= 12152 +INC40YE= 12153 +bmFo 12154 +INCV0YHQu9C4 12155 +IGNvcm5lcnM= 12156 +IHRyaWNreQ== 12157 +aW5jaA== 12158 +bGlqaw== 12159 +IHByZXNzaW5n 12160 +bGV2ZWw= 12161 +QU5H 12162 +IHJhZGlhdGlvbg== 12163 +7ISg 12164 +IGNvbmZyb250 12165 +IHZldA== 12166 +IHJlcHJlc2VudGF0aXZl 12167 +IHByb3BhZw== 12168 +IGNyYXA= 12169 +IERlYw== 12170 +IHJhbXA= 12171 +0LXQv9C10YDRjA== 12172 +dcOpcw== 12173 +ZXNzZW4= 12174 +Y3JpcHRpb24= 12175 +IGJpbGxz 12176 +IE1hdHRoZXc= 12177 +IGFuaW1l 12178 +4bqldA== 12179 +IGxvd2VzdA== 12180 +aGFz 12181 +c2NyZWVu 12182 +b2dyYXA= 12183 +0LDQu9C+ 12184 +aW50b24= 12185 +IEphaA== 12186 +aXTDoA== 12187 +IGtheQ== 12188 +IHJvdGF0aW9u 12189 +IFdlcmU= 12190 +YWJlaQ== 12191 +IHRyaWFscw== 12192 +IGxldmVy 12193 +aWdodHk= 12194 +IHNwb29u 12195 +IGh1bnQ= 12196 +Y2xpbmc= 12197 +IGRpc20= 12198 +INCx0L7Qu9GM0Yg= 12199 +IGFzc2F1bHQ= 12200 +IO2YlQ== 12201 +IHdlZWtseQ== 12202 +IG1pc21v 12203 +IGdlbmV0aWM= 12204 +dWxwdA== 12205 +IFN0dWRlbnQ= 12206 +IHJlYWxpc3RpYw== 12207 +IGF1dGhlbnRpYw== 12208 +YXN0YQ== 12209 +IGFycmVzdGVk 12210 +IGd1aWRlbGluZXM= 12211 +INec15A= 12212 +INC00LDQsg== 12213 +IENvbWluZw== 12214 +ZsO8cg== 12215 +IHJlcXVlc3Rz 12216 +g5A= 12217 +IGFuYWx5emU= 12218 +IGludGVyZXNz 12219 +IGhhbHQ= 12220 +IE9wZXI= 12221 +b25vbQ== 12222 +IGR1Y2s= 12223 +IHdpdGhk 12224 +c2Vy 12225 +IM+M 12226 +IEhpc3Rvcnk= 12227 +IHlvdXR1YmU= 12228 +IHNhYmVy 12229 +d2Fsaw== 12230 +Zm9udA== 12231 +IG92ZXJ2aWV3 12232 +Mzk= 12233 +w7x5 12234 +ZXR0aQ== 12235 +IGZyb3plbg== 12236 +IGZsZXNo 12237 +xJ9p 12238 +IFBN 12239 +IOyZgA== 12240 +6aI= 12241 +0YbQuNC4 12242 +IOq4sOs= 12243 +7YGs 12244 +IHByb3Nl 12245 +b29vbw== 12246 +cmF0ZXM= 12247 +V1M= 12248 +IGF1dG9tYXRpYw== 12249 +IGNvbGxlY3Rpbmc= 12250 +xZE= 12251 +IG5laWdoYm9ycw== 12252 +wrsu 12253 +IEV4cGw= 12254 +IGNpcmN1bA== 12255 +Y292ZXI= 12256 +d2Vn 12257 +IHN0aWNrcw== 12258 +IGVsbGVy 12259 +IHd3dw== 12260 +IGRvcm0= 12261 +IEV4cGVy 12262 +IHN0YXRpc3RpY3M= 12263 +IGVtYWlscw== 12264 +IGdyYXZl 12265 +aW1peg== 12266 +SFM= 12267 +IHVpdA== 12268 +LCc= 12269 +IGxhc2Vy 12270 +6Ik= 12271 +INGC0LXQvA== 12272 +0YvRiA== 12273 +0YnRkQ== 12274 +IGdlbmF1 12275 +IHRpZW5lbg== 12276 +IG1lZGl0YXRpb24= 12277 +IE9yZ2Fu 12278 +IGVzdGltYXRl 12279 +IOustOw= 12280 +bGV0cw== 12281 +IG7DoHk= 12282 +IG1pbmRzZXQ= 12283 +IHJlc29u 12284 +IG3DqXM= 12285 +IG51bWVyb3Vz 12286 +IHZpZWxsZWljaHQ= 12287 +IFRoaXJk 12288 +dW91cw== 12289 +IERlYWQ= 12290 +0LDQvdC0 12291 +SE4= 12292 +IHJhY2luZw== 12293 +IGFnZW50cw== 12294 +IFV0 12295 +IHRlYXI= 12296 +IEhQ 12297 +IGNoZW1pc3RyeQ== 12298 +IHN1cnZpdmFs 12299 +IGNvbnZpbmNlZA== 12300 +IDs= 12301 +IHJlZ3VsYXRpb25z 12302 +IEVT 12303 +MzAw 12304 +IGVuc2U= 12305 +IOy1 12306 +IGRpY3Q= 12307 +R0E= 12308 +IGFow60= 12309 +IHRlag== 12310 +INC+0YHRgg== 12311 +IEVsZWN0 12312 +IGludGVsbGVjdHVhbA== 12313 +IGJpYXM= 12314 +IGJ1cmRlbg== 12315 +IOyWtOuWuw== 12316 +IGNoZWVy 12317 +IHNvcGg= 12318 +IHBvcnRmb2xpbw== 12319 +dWJh 12320 +IGVzdG9z 12321 +VFY= 12322 +Rm9y 12323 +IGFzaA== 12324 +IGtvbW1lcg== 12325 +IGNvbGxlY3RpdmU= 12326 +IHdyZXN0 12327 +IEpldHp0 12328 +IFdhdA== 12329 +cmVpY2g= 12330 +IHByaW1lcg== 12331 +YWN0aXZl 12332 +IG1pZQ== 12333 +aWNrZWQ= 12334 +IGh1bnRpbmc= 12335 +IHRlc3RpbQ== 12336 +IGNvbXBhc3Npb24= 12337 +INix 12338 +IGJydXQ= 12339 +IHNhbGFk 12340 +0L7QsdGJ0LU= 12341 +IHNvbHZpbmc= 12342 +IGZsb2F0aW5n 12343 +57c= 12344 +IGF0dHJhY3RpdmU= 12345 +2YjZhA== 12346 +IHBlcmQ= 12347 +aWZmZXI= 12348 +IHNjdWxwdA== 12349 +aGho 12350 +IFdlZWs= 12351 +IGVudGh1cw== 12352 +IG5hZA== 12353 +IG1lcmNo 12354 +IO2ZlQ== 12355 +IG1pbGU= 12356 +IM64 12357 +IOuCmOs= 12358 +Mzg= 12359 +IGNoYWlucw== 12360 +IEFsbW9zdA== 12361 +IHRpY2tldHM= 12362 +cmlu 12363 +IEND 12364 +IGRpc3RyaWJ1dGVk 12365 +YWJldGVz 12366 +IHRlbXBlcmF0dXJlcw== 12367 +IGdhaW5lZA== 12368 +IGZsZXhpYmlsaXR5 12369 +IHNjcmVhbWluZw== 12370 +IGFicm9hZA== 12371 +dW5v 12372 +IGVudHJlcHJlbmV1cnM= 12373 +IE5ldHdvcms= 12374 +IENhbmFkaWFu 12375 +IHByZXY= 12376 +IHPDtg== 12377 +INGC0LXQsdGP 12378 +IFBva2U= 12379 +IFBvZA== 12380 +IFR1cmtleQ== 12381 +IGFic3RyYWN0 12382 +IHNuYWtl 12383 +IEFteQ== 12384 +IOuKkOuCjA== 12385 +IGJyYXZl 12386 +IOyeiOyWtOyalA== 12387 +IEthbA== 12388 +IDIwMDc= 12389 +w6FyaW8= 12390 +IG1hcmtlZA== 12391 +Z2luZXM= 12392 +IGFsbG9j 12393 +T05H 12394 +IHNjaWVudGlzdA== 12395 +IGVzY2E= 12396 +IHJhY2lzbQ== 12397 +15HX 12398 +IFNhbXM= 12399 +IFBlbm4= 12400 +IGxvYWRz 12401 +IOCuqA== 12402 +w7xiZXI= 12403 +TWU= 12404 +aXjDsg== 12405 +IHBlcsOy 12406 +YW5uZQ== 12407 +IGV4cHJlc3NlZA== 12408 +0LzQtdGA 12409 +IG1vZXQ= 12410 +IHJldHVybmluZw== 12411 +bmlh 12412 +IGV4cG9u 12413 +UHJv 12414 +IGxveWFs 12415 +TUw= 12416 +IGxhbXA= 12417 +IHNoeQ== 12418 +IGNvbXBvc2l0aW9u 12419 +IEx5 12420 +IG1hZ25ldGlj 12421 +IHByZW1pZXI= 12422 +IG1lYXN1cmVk 12423 +IHN1bW1hcnk= 12424 +IGF0dGFja2Vk 12425 +IGZpbmlzaGluZw== 12426 +0Jc= 12427 +56U= 12428 +IHNpdHM= 12429 +IGh5ZHJvZ2Vu 12430 +IG1haQ== 12431 +IERldXRzY2g= 12432 +YXPEsQ== 12433 +IG9idGFpbg== 12434 +dmll 12435 +IHNvaXQ= 12436 +IOuwlA== 12437 +IGxhbmU= 12438 +IGNvbnNlZ3U= 12439 +0LLQvg== 12440 +IGVhc2U= 12441 +YWtpbg== 12442 +IEZh 12443 +IHVudHVr 12444 +IGJ1cnN0 12445 +IGN1bQ== 12446 +YWzEsW0= 12447 +w7pibGlj 12448 +aWRp 12449 +IFJveWFs 12450 +IEtvbg== 12451 +IGNvbW1vbmx5 12452 +IHJlbW92aW5n 12453 +IGp1cg== 12454 +aWxpYg== 12455 +IGFuY2g= 12456 +7ZaJ 12457 +xrDhu6M= 12458 +INCc0Ys= 12459 +IEFudGg= 12460 +IFPDpQ== 12461 +IGludGVycnVwdA== 12462 +IHN0ZXJl 12463 +IE9T 12464 +b255bQ== 12465 +dGVyeQ== 12466 +IE1hcmlh 12467 +6rKD 12468 +IGV4cGxvcmluZw== 12469 +IHRyYW5zcGFyZW50 12470 +IGZhdGU= 12471 +IEp1bmc= 12472 +IGdydXA= 12473 +IGRhcmtlcg== 12474 +IERvdWc= 12475 +IG1hbmU= 12476 +4bqhaQ== 12477 +ZHJp 12478 +bG9vaw== 12479 +IERlc2lnbg== 12480 +IHR1dGFq 12481 +IGhvcml6b250YWw= 12482 +cmVvbg== 12483 +b3J0ZQ== 12484 +IENvcnJlY3Q= 12485 +IFN0ZXZlbg== 12486 +IHZpbmU= 12487 +MDI= 12488 +acSH 12489 +IHNpZW1wcmU= 12490 +IEtleQ== 12491 +IEdhbWVz 12492 +IG5hYXI= 12493 +IHNob2NrZWQ= 12494 +ZWx2ZQ== 12495 +IFJvc2U= 12496 +7Ius 12497 +IHN0b3BwaW5n 12498 +b2hs 12499 +IE1peA== 12500 +IHN1ZmZlcmVk 12501 +IHNpZ21h 12502 +IHdlYWtuZXNz 12503 +IE93 12504 +4Li14LmI 12505 +SUY= 12506 +IOCuhQ== 12507 +YWRlZA== 12508 +IE5ldGZsaXg= 12509 +YW5lcw== 12510 +IHJlbWFpbmVk 12511 +aXJ5 12512 +IHJpcA== 12513 +ZWxsdA== 12514 +IHNpbGVudA== 12515 +IHByb3Zlbg== 12516 +IHRveGlj 12517 +IGFsdW1pbg== 12518 +IG11bHRpcGw= 12519 +YWxhbmQ= 12520 +IDM0 12521 +MDY= 12522 +IEJydQ== 12523 +IOygleunkA== 12524 +SnVzdA== 12525 +Ym95 12526 +IHNob2U= 12527 +IGNyZWF0dXJl 12528 +IGhlYWRlZA== 12529 +INC+0YLQug== 12530 +5rE= 12531 +IGVzc2VuY2U= 12532 +IHJlbWFya2FibGU= 12533 +IG7Dum1lcg== 12534 +IGRyZXc= 12535 +IHB1enpsZQ== 12536 +IExpYnJhcnk= 12537 +IEZ1 12538 +YXNoZXM= 12539 +a2s= 12540 +IElzdA== 12541 +prA= 12542 +IEJyeQ== 12543 +IGNlcmVtb255 12544 +IOCujg== 12545 +IGNyaQ== 12546 +ZXF1 12547 +IHByaXpl 12548 +IGRpbWVuc2lvbnM= 12549 +b2dyYW0= 12550 +IGxlYXRoZXI= 12551 +IHBvcHVsYXRpb25z 12552 +dXVt 12553 +IHZlZ2Fu 12554 +0Y/QtA== 12555 +IGPDs21v 12556 +5YQ= 12557 +IHN0cmlw 12558 +5aM= 12559 +IHZhY2F0aW9u 12560 +hZU= 12561 +IG1lYWxz 12562 +aWxpcHA= 12563 +IGVudHM= 12564 +YXJhbQ== 12565 +cmljaHQ= 12566 +IGdyYWlu 12567 +IFNwYWlu 12568 +IGNoZWVr 12569 +IEFmZg== 12570 +SU9O 12571 +IEJyaW5n 12572 +IDM4 12573 +aWVsZW4= 12574 +dWx1 12575 +INCx0L7Qu9GM0YjQtQ== 12576 +IGFubm91bmNlbWVudA== 12577 +INGC0YPRgg== 12578 +IFByb3BoZXQ= 12579 +YXJkbw== 12580 +Mzc= 12581 +IHdva2U= 12582 +IHRyYW5zbGF0aW9u 12583 +IE5PVA== 12584 +IENM 12585 +IGTDvMWf 12586 +0YbRlg== 12587 +YWNlcg== 12588 +IExvYw== 12589 +IHBlcmNlcHRpb24= 12590 +Tk8= 12591 +IGRpZXNlbg== 12592 +TG9vaw== 12593 +aGVhcnQ= 12594 +YXZlZA== 12595 +IGJvdW5kYXJ5 12596 +IGZsb3dz 12597 +0ZHQvA== 12598 +IGFyZ3VtZW50cw== 12599 +IGVsZWN0aW9ucw== 12600 +xLFz 12601 +IGhlY2s= 12602 +IHN1aXRhYmxl 12603 +IGZpYmVy 12604 +IFN0cmE= 12605 +eHk= 12606 +IEh1bQ== 12607 +IG1vbnRobHk= 12608 +dXBlcg== 12609 +IGdvbGY= 12610 +IGxhdGVseQ== 12611 +IEdhcmQ= 12612 +IFJlbg== 12613 +IEFzdA== 12614 +IEZhbnQ= 12615 +0LDRgdGB 12616 +IG9ic2Vy 12617 +66Gc 12618 +IGVhc2llc3Q= 12619 +jZTr 12620 +IHdlYnNpdGVz 12621 +cG9s 12622 +IGNvY29u 12623 +IOCuhw== 12624 +IFZlZw== 12625 +IHdhbGtz 12626 +IGludHJv 12627 +IGRpcmVjdGVk 12628 +IEFubmE= 12629 +IOuTpOyWtA== 12630 +IEVhc3Rlcm4= 12631 +IFNhaW50 12632 +IEJvdw== 12633 +IHJvYXN0 12634 +IFVSTA== 12635 +IGplZGVu 12636 +dXJhcw== 12637 +YWph 12638 +IHNlbWk= 12639 +IHJhcGlkbHk= 12640 +IHRhcmdldHM= 12641 +IENvbnRyb2w= 12642 +IGJhaA== 12643 +IHJlZmxlY3Rpb24= 12644 +IGNyZWF0aXZpdHk= 12645 +aG9sZGVycw== 12646 +IOyYrOs= 12647 +IGFtb25nc3Q= 12648 +IGZlZWRpbmc= 12649 +0Y3RgtC+0LzRgw== 12650 +INCy0LjQtNC1 12651 +IOunjOuTpA== 12652 +IFNtYXJ0 12653 +IHJlbGlhYmxl 12654 +IHZlemVz 12655 +INeo 12656 +Y2h1Y2tsZXM= 12657 +YXppb25l 12658 +IFdpbGxpYW1z 12659 +IGHDpw== 12660 +IHNsZWU= 12661 +0LXRiQ== 12662 +IHRpbWVsaW5l 12663 +IHRob3JvdWdo 12664 +4buN 12665 +IE90 12666 +4bqhbg== 12667 +IGltYWdpbmF0aW9u 12668 +IG1lY2hhbmljcw== 12669 +cmlzdA== 12670 +IGNsYWltZWQ= 12671 +z4TOtw== 12672 +w6p0ZQ== 12673 +IEh1cnJ5 12674 +IGlQYWQ= 12675 +IGNvbnN0cnU= 12676 +IENsYQ== 12677 +IEFscw== 12678 +dXR6 12679 +IGN1bHR1cmVz 12680 +IOyWtOuWu+qyjA== 12681 +IGJlbG9uZ3M= 12682 +IHllcg== 12683 +IERvZXNu 12684 +IGdlb21ldA== 12685 +IGJpZA== 12686 +IGZvYW0= 12687 +IGhvYg== 12688 +IEJyaXRhaW4= 12689 +IHN1YnN0YW5jZQ== 12690 +IGFubml2ZXJzYXJ5 12691 +IOuEiA== 12692 +IG5vdGVk 12693 +IGdvdmVybm9y 12694 +IHN0b2Nrcw== 12695 +MzE= 12696 +IGRpeWU= 12697 +7Iqk6w== 12698 +IHJlYg== 12699 +emVs 12700 +IG11bHRpcGx5 12701 +IG9wZXJhdG9y 12702 +hKTsmpQ= 12703 +IHdhdGVycw== 12704 +IGTDpHI= 12705 +IHVuc2Vy 12706 +IEVsaXphYmV0aA== 12707 +IGluY3JlYXNpbmdseQ== 12708 +IEdybw== 12709 +IGVuZ2luZXM= 12710 +aXJz 12711 +2Ks= 12712 +IHRyZWFzdXJl 12713 +UEM= 12714 +aW5jdGlvbg== 12715 +aXJp 12716 +IGFjY3Vt 12717 +IHZhcmlhdGlvbg== 12718 +IHBvbQ== 12719 +IHRpdGxlcw== 12720 +IEZlc3Q= 12721 +w7Nz 12722 +IGVsZGVy 12723 +bnlt 12724 +cnVu 12725 +0Y/Qsg== 12726 +IGlubm92YXRpdmU= 12727 +IG5vbWJyZQ== 12728 +IGNvaW5j 12729 +IGZyYW5jaA== 12730 +IGVudG9uY2Vz 12731 +IG5pY2h0cw== 12732 +IGV4Y2x1c2l2ZQ== 12733 +IENoZWVycw== 12734 +IEJp 12735 +dWpl 12736 +IHBvaw== 12737 +IFByZW0= 12738 +IHJvY2tldA== 12739 +RUxJUEU= 12740 +IGhvc3BpdGFscw== 12741 +cml1bQ== 12742 +IGp1c3Rl 12743 +IGhhbW1lcg== 12744 +IHF1YW50dW0= 12745 +IHJlc3BvbnNlcw== 12746 +bGx5 12747 +ZW5kaQ== 12748 +IGFjdGl2ZWx5 12749 +IGZyaWRnZQ== 12750 +aWF0ZQ== 12751 +bG9uZw== 12752 +IHF1ZW0= 12753 +IGRlYXRocw== 12754 +IHN1cGVyaW9y 12755 +Y2tlbg== 12756 +7J207JeQ 12757 +a3RvcA== 12758 +IGdhdGhlcmVk 12759 +o6g= 12760 +IGRhenU= 12761 +IHJlY2lwZXM= 12762 +IGJ1eno= 12763 +Y2Vu 12764 +IGFueXRpbWU= 12765 +b25zZW5zZQ== 12766 +IGNpcmNsZXM= 12767 +IHNvbHZlZA== 12768 +IOyLoA== 12769 +IGNvcm9uYXZpcnVz 12770 +IEx1a2U= 12771 +IGJ1YmI= 12772 +IGNvbnRlbXBvcg== 12773 +cnp5 12774 +IEphbmU= 12775 +INC00L7QvA== 12776 +IHNjcmV3cw== 12777 +IGh5YnJpZA== 12778 +IGNhc3VhbA== 12779 +IHNlbGJzdA== 12780 +YmVpbmc= 12781 +IMSQ 12782 +IENvbHVtYg== 12783 +INGF0L7Rhw== 12784 +IGJ1Y2tldA== 12785 +IGV2YWx1YXRl 12786 +IGlkb2w= 12787 +IHJlcHV0YXRpb24= 12788 +IOyGjOs= 12789 +2YjYsQ== 12790 +IGhlY2hv 12791 +IHBvZW0= 12792 +IHN1YmplY3Rz 12793 +cGxhbnQ= 12794 +IEJlaA== 12795 +IFNwZWFraW5n 12796 +IGJhdHRlcmllcw== 12797 +IGZvbGxvd2Vycw== 12798 +w7Zs 12799 +IGdlbnRseQ== 12800 +IHNpeHQ= 12801 +IHBhcmFtZXRlcg== 12802 +IGlra2U= 12803 +IFRvdXI= 12804 +IERK 12805 +b3R0ZQ== 12806 +IEphaHJlbg== 12807 +IHByZXBhcmF0aW9u 12808 +INC00YPQvA== 12809 +IDgwMA== 12810 +Y29w 12811 +aWtpbmc= 12812 +IOusuA== 12813 +INC90YM= 12814 +INC70LXRgg== 12815 +IElkZQ== 12816 +IOyhsOq4iA== 12817 +IGxhdWdodGVy 12818 +IG1vbGVjdWxlcw== 12819 +IFJlc3Q= 12820 +IG9ic2VydmVk 12821 +ZHppZQ== 12822 +IGFkdmVydGlzaW5n 12823 +ZXJ0bw== 12824 +IG1vaW5z 12825 +IE1JVA== 12826 +IGV4Y2l0 12827 +IHR1bQ== 12828 +IHR5bA== 12829 +IGludmVzdGVk 12830 +IHBoYXJt 12831 +IHVuZXhwZWN0ZWQ= 12832 +IHBoaQ== 12833 +b3R5cGU= 12834 +d2Vpc2U= 12835 +IGdlw6c= 12836 +am91cmQ= 12837 +IGhvcnNlcw== 12838 +bsSF 12839 +PSI= 12840 +IFNN 12841 +IGZpYg== 12842 +IGNsaXBz 12843 +IHJlZ2ltZQ== 12844 +IHJvdGF0ZQ== 12845 +cm91 12846 +bmlr 12847 +IGFybW9y 12848 +8J+Y 12849 +0LXRgNCw 12850 +IE9jaA== 12851 +IHJpY2h0aWc= 12852 +w7x6ZWw= 12853 +YW5lb3VzbHk= 12854 +bWVr 12855 +IFhpYW8= 12856 +IGV4aXN0ZWQ= 12857 +d29ydGg= 12858 +IG5hdWdodA== 12859 +IGhlacOfdA== 12860 +IEJhbA== 12861 +IHJlc2lk 12862 +aXZvdA== 12863 +b21hdGlj 12864 +IGhpcmVk 12865 +IGdyYWR1YWxseQ== 12866 +IG9uaW9ucw== 12867 +IGNvbXBhdA== 12868 +IGludGlt 12869 +IGpldw== 12870 +IGNvbnRyaWJ1dGlvbg== 12871 +IElyZQ== 12872 +YWNqaQ== 12873 +IHNsaWNl 12874 +IGltbXVu 12875 +IFJ1cw== 12876 +IGdyb3dz 12877 +IFNpbWlsYXJseQ== 12878 +IGhhcmRlc3Q= 12879 +IHN0cnVjaw== 12880 +IG1lYXN1cmVtZW50 12881 +Li4uXQ== 12882 +dGhleQ== 12883 +IOyggOs= 12884 +IHNuZWFr 12885 +IGFwcGxpZXM= 12886 +INC90LXQvA== 12887 +5pM= 12888 +15HXqA== 12889 +INCn0YLQvg== 12890 +IG91dHJv 12891 +IGlubm9jZW50 12892 +IG1vZw== 12893 +IFNhbXN1bmc= 12894 +IG1lcmN5 12895 +IGhhbmRsaW5n 12896 +IGludGVydmVudGlvbg== 12897 +aWRheXM= 12898 +Z290 12899 +IGN1cnJpYw== 12900 +IGJvdW5kYXJpZXM= 12901 +IGNvbmZ1c2luZw== 12902 +nbzripQ= 12903 +5oc= 12904 +IHN0aXRjaGVz 12905 +w612ZWw= 12906 +IHR1bm5lbA== 12907 +aXTDpA== 12908 +IGdvc3Q= 12909 +aW15 12910 +IGN6YXM= 12911 +IG3DqQ== 12912 +IGNhdGFs 12913 +IFNpbW9u 12914 +IExJQU0= 12915 +bWlj 12916 +INCk 12917 +IGV5ZWw= 12918 +aXNhcw== 12919 +IENQVQ== 12920 +IERvdQ== 12921 +IG7DpGNo 12922 +IGluZmluaXR5 12923 +IHJpZg== 12924 +IFBlYWNl 12925 +IEN1 12926 +IG1pbmltYWw= 12927 +IGxpc3RlbmVk 12928 +IHBvbGU= 12929 +aGFsYg== 12930 +IGxvYWRlZA== 12931 +IHN0ZWFkeQ== 12932 +IEJlc2lkZXM= 12933 +w6pt 12934 +IGxhcA== 12935 +IGNvb3A= 12936 +IGZyaWVuZHNoaXA= 12937 +d29ybGQ= 12938 +IGdlaA== 12939 +IHR5bGtv 12940 +IExhdXJh 12941 +IHN1cnJvdW5kZWQ= 12942 +IEV2ZW50 12943 +IGNoYXA= 12944 +IFdvbmRlcg== 12945 +YnJlYWs= 12946 +IGRyb3Zl 12947 +IGJyb2FkZXI= 12948 +IGNoaQ== 12949 +Rmk= 12950 +IGdlaGVu 12951 +IHdlc3Rlcm4= 12952 +IGludGVsbGlnZW50 12953 +IHBlcnNpc3Q= 12954 +IGZvdW5kZWQ= 12955 +IGhpc3Rvcmlj 12956 +IGZyw6U= 12957 +Y2tzw6U= 12958 +IGhhbmR5 12959 +IHN5bXA= 12960 +IHJvd3M= 12961 +IG51dHJp 12962 +YnVy 12963 +IExlb24= 12964 +IHNpc3RlbWE= 12965 +IGV4dGVuc2l2ZQ== 12966 +INGD0LI= 12967 +7Y8= 12968 +IG5pZ2h0cw== 12969 +IGPDoWM= 12970 +IGNvdW50aW5n 12971 +IE11c3Q= 12972 +YWxsb3c= 12973 +0LXRgdGB 12974 +TW9t 12975 +INC90LDQtNC+ 12976 +IGJhcnJlbA== 12977 +QVJE 12978 +IGluc3RhbGxhdGlvbg== 12979 +IGluc2VjdA== 12980 +IOuFuOs= 12981 +dWrEhQ== 12982 +IMSRaQ== 12983 +IHBhY2tlZA== 12984 +IGZpY3Rpb24= 12985 +Tm93 12986 +IFlheQ== 12987 +IHBlcnQ= 12988 +cm9ucw== 12989 +dW5kZQ== 12990 +YWNoZXM= 12991 +IHN0eWxlcw== 12992 +IGFwcsOocw== 12993 +b2t1 12994 +IFZpY2U= 12995 +xLFuxLF6 12996 +Y29tbQ== 12997 +IGFzc2lnbmVk 12998 +IGludGVyYWN0aW9ucw== 12999 +IGFjYWI= 13000 +RkVMSVBF 13001 +IHJlc2N1ZQ== 13002 +IGluZHVzdHJpZXM= 13003 +IEFuZHk= 13004 +IHByYWlzZQ== 13005 +IGZsYW1l 13006 +IHNuYWNr 13007 +7YI= 13008 +54E= 13009 +IHN3bw== 13010 +cmVuZGVy 13011 +IGJvYXJkcw== 13012 +INGC0L7QvA== 13013 +ZW5uZQ== 13014 +IHBhc3Rh 13015 +IGRldmls 13016 +IEZlbA== 13017 +IGhhdHRl 13018 +IGNvbGxlZw== 13019 +ZWg= 13020 +7Ls= 13021 +IHByb2R1Y3RpdmU= 13022 +Zm9yd2FyZA== 13023 +0LjQvw== 13024 +IHNtYXJ0cGhvbmU= 13025 +IGludmlz 13026 +IGJ1bQ== 13027 +IHdob2E= 13028 +7J6E 13029 +IG9ja3PDpQ== 13030 +IExhbmc= 13031 +IFN5cmlh 13032 +IHNlc2k= 13033 +zq/OsQ== 13034 +IGFwcHJvdmFs 13035 +NDg= 13036 +INC+0LTQuNC9 13037 +IOuW 13038 +IEhhcnI= 13039 +IEFkbWluaXN0 13040 +INek 13041 +IERlYW4= 13042 +Zmk= 13043 +IGNpdGl6ZW4= 13044 +IHNoYXJr 13045 +MDU= 13046 +IGJvaWw= 13047 +IGluZGljYXRl 13048 +5aE= 13049 +QXJl 13050 +IGxheW91dA== 13051 +IHJlZnI= 13052 +IFBhY2lmaWM= 13053 +QUFBQQ== 13054 +IEF1c3RyYWxpYW4= 13055 +Z3Jlc3Npb24= 13056 +Vm9pY2U= 13057 +0LDQu9GB0Y8= 13058 +IHNoZWx0ZXI= 13059 +VG8= 13060 +YXVwdA== 13061 +IGV2YWx1YXRpb24= 13062 +YXBvcg== 13063 +IGN1cnJlbmN5 13064 +INC80L3QvtCz0L4= 13065 +aWdvcw== 13066 +IG9jdA== 13067 +IHJveWFs 13068 +6LM= 13069 +YXNpbA== 13070 +IENoaWxkcmVu 13071 +IHJpZW4= 13072 +IOuTnOs= 13073 +IGJhcnJpZXI= 13074 +IGVqZW1wbG8= 13075 +IGVr 13076 +TkQ= 13077 +ZXNw 13078 +0LXQvdCw 13079 +IHBpYw== 13080 +IGtpbGxlcg== 13081 +IGludGVncmF0ZQ== 13082 +IGZld2Vy 13083 +IGRpc2FiaWxpdGllcw== 13084 +IC4uLi4= 13085 +IHRyaWFuZ2xl 13086 +IGZlZXM= 13087 +IHdpZGVseQ== 13088 +ZW1p 13089 +IG92ZXJ3aGVsbWluZw== 13090 +IHpvbWI= 13091 +IGJlcmU= 13092 +IGhvb2Q= 13093 +IEF5ZQ== 13094 +IEhhcnZhcmQ= 13095 +ZXY= 13096 +IM+Ezr/PhQ== 13097 +IGN1cHM= 13098 +IEF1Y2g= 13099 +em9uYQ== 13100 +IDE5OTA= 13101 +IHdlacOf 13102 +IGNydW5jaA== 13103 +5qU= 13104 +INC30LDQsg== 13105 +IG1lYXN1cmluZw== 13106 +IHN0YXRpb25z 13107 +IFN0ZXBoZW4= 13108 +IHNob3J0bHk= 13109 +IHNpZ25pbmc= 13110 +IGNvbWVkeQ== 13111 +b21v 13112 +IHN1Z2dlc3Rpb25z 13113 +IHNpZ25hdHVyZQ== 13114 +INC/0YDQuNCy 13115 +IGRpc29yZGVy 13116 +YXNrYQ== 13117 +IHdvcmxkcw== 13118 +IHByZWNpc2VseQ== 13119 +bm9ybQ== 13120 +cmF2 13121 +IENpdmls 13122 +SW50ZXI= 13123 +IENlcnRhaW4= 13124 +IGluanVyZWQ= 13125 +IHN1Z2dlc3Rz 13126 +IEdvbGRlbg== 13127 +IGN5YmVy 13128 +INi0 13129 +IHRlbXBvcmFyeQ== 13130 +IGNvb3Blcg== 13131 +IHZvdGVk 13132 +IG91Z2h0 13133 +4bqleQ== 13134 +eHVhbA== 13135 +IHBhbmVscw== 13136 +IDk1 13137 +IGhhbmRzb21l 13138 +INC/0YDQvtCy 13139 +IHBlcm1pdA== 13140 +IGtlaW4= 13141 +IGJhZGx5 13142 +IG5vdGlmaWNhdGlvbnM= 13143 +aXph 13144 +IE5vdGljZQ== 13145 +IGluY2x1c2l2ZQ== 13146 +IGFuc3dlcmluZw== 13147 +IO2X 13148 +dWxk 13149 +7YWM 13150 +IG5vd2FkYXlz 13151 +IDM3 13152 +IGJvbHQ= 13153 +IHN0YXRpYw== 13154 +IEhvcA== 13155 +IGF2YW50 13156 +YWpv 13157 +IOunm+yeiA== 13158 +IGZpZnR5 13159 +IEZpbmFs 13160 +IHNjb3Jlcw== 13161 +IFRhcA== 13162 +IGN5bA== 13163 +IGNvbnZpbmNl 13164 +IGFueXdheXM= 13165 +b2Rh 13166 +IOyVvA== 13167 +IHNlcnZlcw== 13168 +INGC0LDQutC+0Lk= 13169 +IFpvb20= 13170 +IHNhdmluZ3M= 13171 +dWxv 13172 +IHNvdXRoZXJu 13173 +dmlld2Vy 13174 +IGhvamU= 13175 +IHNlamE= 13176 +IHJlcHJlc2VudGluZw== 13177 +iOuNmA== 13178 +bGlr 13179 +IFNvbWVib2R5 13180 +IGJlYXN0 13181 +IHN0aWNraW5n 13182 +IGluc2lzdA== 13183 +IHRhbGVudGVk 13184 +IGV4cGxhaW5pbmc= 13185 +IGF0dG9ybmV5 13186 +IHN0YWlycw== 13187 +IERvZw== 13188 +7Ys= 13189 +IGNpZw== 13190 +IHNoYXBlZA== 13191 +IHNvbnM= 13192 +z4HOuQ== 13193 +dXR0 13194 +IOyU 13195 +IHBhcmFk 13196 +7J24642w 13197 +IGhvcm4= 13198 +IEpvdXI= 13199 +YW5ubw== 13200 +IHdvcmxkd2lkZQ== 13201 +IHBhcnRpY2lwYXRpb24= 13202 +poQ= 13203 +IG3Ds3c= 13204 +IGJ1cm5lZA== 13205 +IHdyaXRlcnM= 13206 +YWxsYWg= 13207 +IEZ1bmQ= 13208 +IGNsZXZlcg== 13209 +IExldXRl 13210 +Ymlu 13211 +IGJlYXRpbmc= 13212 +Zm9vdA== 13213 +IOybkA== 13214 +IFN0dWRpbw== 13215 +IHZhZw== 13216 +YmV5 13217 +cnpl 13218 +IG9wcG9zaXRpb24= 13219 +INC20LjQtw== 13220 +d2hv 13221 +IOqxtA== 13222 +IHRyYWNl 13223 +INC00LXQvdGM 13224 +IGVwaWQ= 13225 +IGdlc2No 13226 +IE5hcg== 13227 +IEJF 13228 +0YPQuQ== 13229 +IFNpZ24= 13230 +ZWRseQ== 13231 +IGNsYXk= 13232 +IGluc3RhbnRseQ== 13233 +IGdhdGhlcmluZw== 13234 +IEdhbGF4eQ== 13235 +IGJvcmVk 13236 +IEJ1ZGRo 13237 +Y8Op 13238 +IG1hbQ== 13239 +IHNsb3Bl 13240 +IOuLpOydjA== 13241 +IHNjaMO2bg== 13242 +IHBpcg== 13243 +Z2Vm 13244 +YW1lcg== 13245 +IGjDtg== 13246 +IGNvbGxlYWd1ZQ== 13247 +IHByZXNlbnRz 13248 +YWRpdW0= 13249 +IOCutQ== 13250 +IGZhbGFy 13251 +YmVlcA== 13252 +IGRyaWVk 13253 +aXNtcw== 13254 +IHJvcGU= 13255 +IHdvcmtzaG9w 13256 +IGVzdHVk 13257 +IGJhbmRz 13258 +IHRoZW1lcw== 13259 +2YrYsQ== 13260 +IHJlbWluZGVy 13261 +0YLRgw== 13262 +IEJo 13263 +IGNvY29udXQ= 13264 +INGB0YLQvg== 13265 +IENoYW5uZWw= 13266 +IGltbWlncmF0aW9u 13267 +w6Rz 13268 +Li4uLi4= 13269 +c3RvcA== 13270 +INC60LDRgA== 13271 +IGNvaW5z 13272 +INGH0LDRgQ== 13273 +IGRlc3RydWN0aW9u 13274 +bGluZWQ= 13275 +IGJhcnJpZXJz 13276 +YW50aW5l 13277 +IHByaW50ZWQ= 13278 +IGNvbmdyYXR1bGF0aW9ucw== 13279 +IEhlYXJ0 13280 +IGlucXU= 13281 +dGhh 13282 +IGhhcmRseQ== 13283 +IEF2ZW4= 13284 +IHRpbmhh 13285 +IFNvbnk= 13286 +IE5G 13287 +IGdyYWR1YXRlcw== 13288 +IHNxdWVlemU= 13289 +ZXJlbXk= 13290 +z4TOuQ== 13291 +IGVwaWM= 13292 +IEp1 13293 +IG9sbQ== 13294 +IExhdWdodGVy 13295 +IGJlbGllZnM= 13296 +IENydQ== 13297 +IFRydWU= 13298 +IFNvdWw= 13299 +b3dlZW4= 13300 +IHJvbWFudGlj 13301 +INC30LI= 13302 +IGFub3M= 13303 +IFl1cA== 13304 +ZGlt 13305 +IGluZmVy 13306 +INC30LDQvA== 13307 +IHNvYw== 13308 +dWth 13309 +IHByZWNpc2U= 13310 +IGRyb3BwaW5n 13311 +IGNsdWU= 13312 +IGVycm9ycw== 13313 +Y2hhcmdl 13314 +IFB1 13315 +b21ldGVy 13316 +IGxhbWJkYQ== 13317 +YWNpb25hbA== 13318 +IERvbmc= 13319 +IGNoYW1iZXI= 13320 +IHRoYW5rZnVs 13321 +IE51 13322 +IEhhd2Fp 13323 +IGluZm8= 13324 +IGFjdGl2YXRl 13325 +IFF1YWw= 13326 +IHF1ZWQ= 13327 +0YPQu9GM 13328 +IGNsb3Ro 13329 +IHdpY2h0aWc= 13330 +NTU= 13331 +IG90cmE= 13332 +b2dyYXBoZXI= 13333 +IGN1cmlvcw== 13334 +IDE5ODA= 13335 +IGVtcHJlcw== 13336 +ZGVzcw== 13337 +ZXVy 13338 +IGNsdXN0ZXI= 13339 +YXJ0ZXI= 13340 +b2JpbGU= 13341 +IFlhbg== 13342 +IEFkdg== 13343 +IGRpc2NpcGxpbmU= 13344 +IOygleuPhA== 13345 +IFBsYWNl 13346 +IFNlbGVjdA== 13347 +VEU= 13348 +INCx0YvQu9Cw 13349 +IHdoaXM= 13350 +IGJheQ== 13351 +IERvcg== 13352 +ZW5jaW5n 13353 +IHJlcGV0 13354 +IGZpY2Fy 13355 +cGFk 13356 +IGZvZw== 13357 +dXlvcg== 13358 +IHNuYXA= 13359 +aWJ0 13360 +IHNvYmll 13361 +IGFwcG9pbnRtZW50 13362 +IFJ5 13363 +IGNlaWxpbmc= 13364 +b3Vyc2U= 13365 +IHdyaXRlcw== 13366 +IEFmZ2hhbmlzdGFu 13367 +IG1vcw== 13368 +YXpl 13369 +IHBlbmFs 13370 +IGNyeXN0YWw= 13371 +SUNF 13372 +6rCQ 13373 +6Z8= 13374 +IFRlc2xh 13375 +IHRoZW9yaWVz 13376 +IGFwcGVhbA== 13377 +IG5ld3NwYXBlcg== 13378 +IGNvb2tpZXM= 13379 +5qk= 13380 +INin2YTZhA== 13381 +IG1hag== 13382 +IEdldHRpbmc= 13383 +a29tbWVu 13384 +IEhlYXZlbg== 13385 +ZWxscw== 13386 +IGRpdmluZQ== 13387 +xKs= 13388 +IGFrdA== 13389 +IGhvcGVz 13390 +IENoZW4= 13391 +d2VnZW4= 13392 +Kioq 13393 +IEZyYWdl 13394 +INC90Lg= 13395 +4Li5 13396 +bWluaXN0ZXI= 13397 +bmVzb3Rh 13398 +d2hpY2g= 13399 +IGV4cGxpY2l0 13400 +IHZlcmRhZA== 13401 +IGdyYWR1YXRlZA== 13402 +IFBoaWxpcHA= 13403 +UUw= 13404 +IE1J 13405 +IGRldm90 13406 +IGN1cmU= 13407 +IGNsb3Nlc3Q= 13408 +IMOE 13409 +IHNleHk= 13410 +IERlYXRo 13411 +b2tv 13412 +dWd1 13413 +IEFubmU= 13414 +aXRhcmlhbg== 13415 +ZXNh 13416 +0LXQs9C+0LQ= 13417 +IER1cg== 13418 +IDAwMA== 13419 +emVpdA== 13420 +IHRvdXJuYW1lbnQ= 13421 +IG1lbGhvcg== 13422 +4Liq 13423 +IGluZHU= 13424 +IGZsYXc= 13425 +IHdhcnM= 13426 +IE1pbmQ= 13427 +IElyb24= 13428 +0YLQsNC6 13429 +IFZS 13430 +IHNpeg== 13431 +IFNvdXRoZXJu 13432 +IOq3uOufrOs= 13433 +IGF3YWs= 13434 +IOyVng== 13435 +IGN1YmU= 13436 +YmVsaWV2YWJsZQ== 13437 +aWZhbGw= 13438 +ZGlz 13439 +IGFiYW5kb25lZA== 13440 +bWluZA== 13441 +IHBhcmw= 13442 +IGNsYXNzaWNhbA== 13443 +6Is= 13444 +4buZdA== 13445 +IEF1dG8= 13446 +IEJvcg== 13447 +56k= 13448 +NDAw 13449 +IFNvY2lldHk= 13450 +IHN1YnRsZQ== 13451 +IG1pc3Npb25z 13452 +IHJlbWVtYmVyZWQ= 13453 +IEVpdGhlcg== 13454 +IGRhZsO8cg== 13455 +T1JE 13456 +IGludGVuc2l0eQ== 13457 +RVNJTg== 13458 +IEN1cA== 13459 +IHJhcmVseQ== 13460 +IHRveXM= 13461 +IENoYXJsaWU= 13462 +4buf 13463 +IGdsYXViZQ== 13464 +IHJvdW5kcw== 13465 +VElO 13466 +IGNhcGFiaWxpdHk= 13467 +IGRlcml2YXRpdmU= 13468 +IHJlZmVycmluZw== 13469 +IGTDpQ== 13470 +IFRBTEk= 13471 +IGNvdHRvbg== 13472 +IGNvbmZlcg== 13473 +IGNvbHVtbnM= 13474 +IGxpYmVyYWw= 13475 +IG51bmNh 13476 +IM68zrU= 13477 +IGluZG8= 13478 +aWJlbg== 13479 +IEJlaXNwaWVs 13480 +IOq3uOughw== 13481 +INGD0Yc= 13482 +IGhveQ== 13483 +IGZyeQ== 13484 +IFNjb3R0aXNo 13485 +6Io= 13486 +IGNpdg== 13487 +IGNvbnNlcnZhdGl2ZQ== 13488 +IGFpcnBs 13489 +IHNhcg== 13490 +cnVz 13491 +IGludmVzdG1lbnRz 13492 +IGluZmluaXRl 13493 +IOCulQ== 13494 +IFRBTElFU0lO 13495 +IEdhcnk= 13496 +dWVsbA== 13497 +INCw0Lo= 13498 +IENpcg== 13499 +IHJpdHVhbA== 13500 +ID4+Pg== 13501 +IHRlbXB0 13502 +IFRlY2g= 13503 +IFBva2Vtb24= 13504 +IGltcHJvdmVtZW50cw== 13505 +IHNwYXJl 13506 +IHRyYW5zbGF0ZQ== 13507 +IHNvbnJh 13508 +IEZpbG0= 13509 +d29ydA== 13510 +INC80Lg= 13511 +IHBlcmlvZHM= 13512 +IGplYWxvdXM= 13513 +IHRpcg== 13514 +TUk= 13515 +IGNvbmR1Y3RlZA== 13516 +IOyViOuFlQ== 13517 +MDk= 13518 +IFBvbGl0 13519 +IFdoZXJlYXM= 13520 +IG1vaXN0dXJl 13521 +IHNpbnM= 13522 +IGthcA== 13523 +INGN0Lo= 13524 +IGJlbmlt 13525 +IGVsaW1pbmF0ZQ== 13526 +IGF0aGxldGVz 13527 +IE1hbmFnZXI= 13528 +IGZlYXR1cmVk 13529 +YXBvcmU= 13530 +IOuwnA== 13531 +IHBlcmY= 13532 +IFRodXM= 13533 +IGRlYnV0 13534 +0L7QsdGA 13535 +IHNlw7E= 13536 +IG15c3RlcmlvdXM= 13537 +d29yZHM= 13538 +lOqwgA== 13539 +IGNoZWNrcw== 13540 +IHZvbHVudGVlcg== 13541 +IHdhc2hpbmc= 13542 +IE1hcnZlbA== 13543 +IEFC 13544 +aXNzb3Jz 13545 +ISc= 13546 +IEZ1bGw= 13547 +eWVvbg== 13548 +IHdlaWdo 13549 +IEpPSE4= 13550 +IHZvcw== 13551 +IHByb2NlZHVyZXM= 13552 +IGFkZHJlc3NlZA== 13553 +IEJlcmxpbg== 13554 +cHV0ZXI= 13555 +IEJhbg== 13556 +IG1lZGljYXRpb24= 13557 +IGRyb25l 13558 +INGD0LE= 13559 +IEplYW4= 13560 +IGNhcHM= 13561 +IGRpc2FwcG9pbnRlZA== 13562 +IHdvcmU= 13563 +IOq1rQ== 13564 +IG9yZ2FuaXpl 13565 +IEhhbGxvd2Vlbg== 13566 +IGZhbnRhc3k= 13567 +eWFyZA== 13568 +IG5vc290cm9z 13569 +IGp1bXBlZA== 13570 +IHBob3RvZ3JhcGh5 13571 +IE5hbWU= 13572 +cmVj 13573 +QUI= 13574 +IGJsZXNzaW5n 13575 +IFNodXQ= 13576 +IGJpdHRlcg== 13577 +cG9w 13578 +IGRlaQ== 13579 +IGZ1bGZpbGw= 13580 +IGRlbmdhbg== 13581 +IGJlbG8= 13582 +IE1lYW53aGlsZQ== 13583 +IGRlcG9pcw== 13584 +IGRpYWJldGVz 13585 +IGJ1bmQ= 13586 +IFplYWxhbmQ= 13587 +IGRpZ2VzdA== 13588 +IHRpcmVz 13589 +IGRvZA== 13590 +YWduZQ== 13591 +4bq/dA== 13592 +IHBlZWw= 13593 +INC30LDQsQ== 13594 +IG5vZGVz 13595 +IHRyZW5kcw== 13596 +IFN3aXRjaA== 13597 +IEF3YXJk 13598 +IE9yaWc= 13599 +IEhhbA== 13600 +IGVzdGFz 13601 +IDM2MA== 13602 +IHNpbXVsdA== 13603 +IGNvbWlj 13604 +IG3DoA== 13605 +IGJhbGFuY2Vk 13606 +IFByaW5jZXNz 13607 +IGtpbG9tZXRlcnM= 13608 +4bup 13609 +IHBhcnRpcg== 13610 +7KSR 13611 +c29mdA== 13612 +IFZpZXc= 13613 +IGJpb2xvZ2ljYWw= 13614 +aW5zdA== 13615 +NDQ= 13616 +IG1hbmVyYQ== 13617 +IGNvbXByZWhlbnNpdmU= 13618 +IFNhYg== 13619 +IGNyaW1lcw== 13620 +eWVycw== 13621 +IENvbXBhbnk= 13622 +IFBob3Q= 13623 +IHBvdWNv 13624 +aWFj 13625 +IGJlaW0= 13626 +aW5hdGU= 13627 +IHN1YnNlcXU= 13628 +IE1heW9y 13629 +IGNlbnR1cmllcw== 13630 +w6hyZXM= 13631 +7J6W7JWE7JqU 13632 +IOq3uOufvA== 13633 +IEZyYXU= 13634 +IE9I 13635 +IOuBnQ== 13636 +IE5haA== 13637 +IFNlcmllcw== 13638 +IG92ZXJuaWdodA== 13639 +7ZKI 13640 +IOKAog== 13641 +IHRyYXZl 13642 +YXR0ZXJlZA== 13643 +IHdhcnJp 13644 +IEdydW5k 13645 +IEluZG9uZXM= 13646 +IHNjcmE= 13647 +b2J5 13648 +IEJyb29r 13649 +IGN1cnM= 13650 +IOu4 13651 +IGV4cGxhaW5z 13652 +cmFtYXRpYw== 13653 +IHBhcnRpY2lwYXRpbmc= 13654 +IG1pbnV0 13655 +IGNvbnRyYWN0cw== 13656 +IGdlZ2Vu 13657 +IGRpc2FwcGVhcmVk 13658 +IFNO 13659 +IHJvYnVzdA== 13660 +YXBo 13661 +IHNocmlt 13662 +IGRldmFzdA== 13663 +Y29wZQ== 13664 +IG1lZXRz 13665 +IHBlYWNlZnVs 13666 +bWF0ZQ== 13667 +IHdlbGQ= 13668 +INeq 13669 +ZG9u 13670 +0YPRgtGM 13671 +IHJlZ2lzdGVyZWQ= 13672 +IE5paw== 13673 +amlu 13674 +IGNhdg== 13675 +IGVjaHQ= 13676 +aW94 13677 +IGZsb3dpbmc= 13678 +0L3QvtGB0YLQuA== 13679 +IHRvZQ== 13680 +IGVudGl0eQ== 13681 +0L7QstCw 13682 +Zml0cw== 13683 +IFBhdHJpY2s= 13684 +0YLRgA== 13685 +IGxldmVyYWdl 13686 +IGNvcnJlbA== 13687 +aWFo 13688 +IHN0cmluZ3M= 13689 +aXN0aW5jdA== 13690 +IGd1ZQ== 13691 +YXJjaHk= 13692 +IHRlbmdv 13693 +xLFtxLF6 13694 +IG9yYml0 13695 +INC10YnRkQ== 13696 +Y2FrZQ== 13697 +INec15Q= 13698 +IE1pbm5lc290YQ== 13699 +IGJyYWtl 13700 +b3dpZQ== 13701 +IGNyYXc= 13702 +6riw66W8 13703 +IHByb2dyYW1tZQ== 13704 +INGB0LvRg9GH 13705 +aWVuY2Vz 13706 +IE91aQ== 13707 +IFBlcnM= 13708 +aW1pZW50bw== 13709 +IEludmVzdA== 13710 +IHNsb3dlcg== 13711 +IEJldGg= 13712 +IG51cnNl 13713 +IFNwcmluZw== 13714 +U3A= 13715 +IHVuZW1wbG95 13716 +0LTQuA== 13717 +IGdlbml1cw== 13718 +IEFhcm9u 13719 +IOq3uOufrA== 13720 +IGVp 13721 +IHRhbmtz 13722 +IGF1am91cmQ= 13723 +IGNvbXBsZXhpdHk= 13724 +INGA0LXRiA== 13725 +IG9sZGVzdA== 13726 +IGxldHo= 13727 +IHBoZW5vbWVub24= 13728 +cHJpbnQ= 13729 +IEJ1bmRlcw== 13730 +aXRhdA== 13731 +6ruY 13732 +IDQy 13733 +IFdp 13734 +IGluY29t 13735 +IGdlaw== 13736 +IGVtYnJhY2U= 13737 +IHRpZXM= 13738 +b3V0ZQ== 13739 +IGRvc2U= 13740 +IEZyaWVuZHM= 13741 +0YvRgg== 13742 +0LXQs9C+0LTQvdGP 13743 +IG9yZw== 13744 +hOuhnA== 13745 +w7Nn 13746 +IGV4Y2VlZA== 13747 +IGdvZHM= 13748 +IOqxsOyYiOyalA== 13749 +IHNvY2lldA== 13750 +IFVuaXZlcnM= 13751 +aXTDpHQ= 13752 +IHdvcmRlbg== 13753 +IHNtb2tpbmc= 13754 +IGludGVucw== 13755 +YWJ1bA== 13756 +ZW1pYQ== 13757 +6JE= 13758 +NDc= 13759 +Zmx5 13760 +IDIwMDY= 13761 +IFNlcmlvdXNseQ== 13762 +IHByemV6 13763 +5rw= 13764 +Y3Jl 13765 +IG5hbg== 13766 +IG1vZGVz 13767 +0L7QstCw0YLRjA== 13768 +IEhhbmc= 13769 +ZW1lbg== 13770 +IGJlbmVmaWNpYWw= 13771 +IHZvdGVycw== 13772 +IEJyb2Fk 13773 +IGJlbnQ= 13774 +V293 13775 +IG11bA== 13776 +IFVD 13777 +IGRhbWFnZWQ= 13778 +IFVrcmFpbmU= 13779 +IHdpcGU= 13780 +IHN0b25lcw== 13781 +IG1hbmFnZXJz 13782 +IHJhYg== 13783 +0YHRgtGA0L4= 13784 +bGF0 13785 +IGRlY2U= 13786 +IGdyYXBoaWM= 13787 +IGZvc3M= 13788 +IGRpc2FncmVl 13789 +IEFtZW4= 13790 +IHNlY3JldHM= 13791 +aG9sZQ== 13792 +aW5rbGU= 13793 +IGZvcnR1bmF0ZQ== 13794 +IOyx 13795 +7JyE 13796 +IGhhYml0cw== 13797 +IGJ1cmllZA== 13798 +IGhpbg== 13799 +IHZpcnR1YWxseQ== 13800 +b2xhcw== 13801 +IFJQ 13802 +IFRhYg== 13803 +bG93 13804 +IHNhY3JpZmlj 13805 +IGVzdGltYXRlZA== 13806 +b2xu 13807 +2Ys= 13808 +Y3Vy 13809 +IEZlZWw= 13810 +IGNhc3RsZQ== 13811 +IHVzZWxlc3M= 13812 +IGRpc2c= 13813 +IEphY29i 13814 +IGdhYW4= 13815 +IHVwc2lkZQ== 13816 +IHBhcmVjZQ== 13817 +IHNoaXBwaW5n 13818 +IENS 13819 +IGRpc3J1cHQ= 13820 +YWN0ZXI= 13821 +VU5E 13822 +ZnU= 13823 +IFBpY2s= 13824 +IENoYXJs 13825 +IEJ1bGw= 13826 +IGVudGVycHJpc2U= 13827 +IHB1bmlzaG1lbnQ= 13828 +YWNraW5n 13829 +IGZyYWN0aW9u 13830 +IHRhYmxldA== 13831 +IGNob3Jk 13832 +IHNpbWlsYXJseQ== 13833 +IFRvcm9udG8= 13834 +IGNvdXJ0cw== 13835 +xJ9s 13836 +ZXN6Y3pl 13837 +IHByb25vdW4= 13838 +IFNpc3Rlcg== 13839 +IE1Q 13840 +IGdyZWF0bHk= 13841 +IERhbms= 13842 +aWNvcA== 13843 +IGdhcmJhZ2U= 13844 +IHJlc29sdmU= 13845 +IFNhZg== 13846 +IEd1bg== 13847 +IGNvbXBvdW5k 13848 +IOuwsA== 13849 +IE11c2lr 13850 +4pmr 13851 +IGNoYW9z 13852 +IFdoZW5ldmVy 13853 +IGV1cm9z 13854 +IG9yY2hlc3Q= 13855 +IHJlZnJpZ2Vy 13856 +YWxhbg== 13857 +4Li3 13858 +IEFtYXppbmc= 13859 +IHB1ZA== 13860 +YWdhbg== 13861 +IGplc3pjemU= 13862 +aXN5 13863 +IGFjY3VyYWN5 13864 +IEFtYQ== 13865 +aXNvZGU= 13866 +64yA 13867 +IGludGVycHJldGF0aW9u 13868 +IExpYmVy 13869 +5rc= 13870 +Y2Ft 13871 +IGV2b2x2ZWQ= 13872 +IEtheQ== 13873 +0YbRiw== 13874 +IGNyZWF0b3I= 13875 +aXRhcw== 13876 +IGFsYXJt 13877 +IGNlbGVicmF0aW9u 13878 +emVudA== 13879 +IGZ1bmNpb24= 13880 +IG92 13881 +dW1ibGluZw== 13882 +ICU= 13883 +4LiI 13884 +IHJlc3RyaWN0aW9ucw== 13885 +INC90LDQsg== 13886 +IEtpbmRlcg== 13887 +IGJhbmFuYQ== 13888 +0YzRjw== 13889 +IGRpYW1ldGVy 13890 +IG5vcnRoZXJu 13891 +dXJlcnM= 13892 +IFBhcw== 13893 +IHdvcmtmb3JjZQ== 13894 +IGp1bmc= 13895 +IGd1YXJhbnRl 13896 +IGVxdWlsaWI= 13897 +IHN1aXRl 13898 +IGV1cm8= 13899 +IGRlbGliZXI= 13900 +U3Rl 13901 +IGRvd250b3du 13902 +IGNoaW4= 13903 +IGNvZGVz 13904 +ZWRpYQ== 13905 +IHNoZWVw 13906 +cmVzaG9sZA== 13907 +d25pZQ== 13908 +w7Ni 13909 +IHVuZGVybHlpbmc= 13910 +bGlh 13911 +amVy 13912 +z4DPjA== 13913 +550= 13914 +dGhyb3A= 13915 +IHphcA== 13916 +IHZhY3V1bQ== 13917 +IEhhYg== 13918 +IHdyYXBwZWQ= 13919 +7KI= 13920 +IGludmVudG9yeQ== 13921 +0LzQsA== 13922 +IGNvb3Jk 13923 +IHBsYXRlcw== 13924 +IHN5bW0= 13925 +VGU= 13926 +IHfFgmHFm25pZQ== 13927 +IHJlYWNoZXM= 13928 +IGxvbmVseQ== 13929 +U2NyaXB0 13930 +bGVl 13931 +ZXNzZXI= 13932 +IOqxuA== 13933 +IEdlc2No 13934 +IE1vdmluZw== 13935 +IHLDqXA= 13936 +IFZpbGw= 13937 +IFJhY2hlbA== 13938 +IHRlbW9z 13939 +T05F 13940 +IHN0cmFpbg== 13941 +IGFuZ2Vs 13942 +IGbDpQ== 13943 +VHI= 13944 +IGFjaG8= 13945 +IGhpZ2hsaWdodHM= 13946 +IFdlcg== 13947 +IENhcmw= 13948 +IGJsdXI= 13949 +IHJlZ2FyZHM= 13950 +wrc= 13951 +0LjQu9GB0Y8= 13952 +IHJlY3Jl 13953 +IFlhbmk= 13954 +VUNL 13955 +oLg= 13956 +IGVsZWN0cm9ucw== 13957 +IFNwaWVs 13958 +IHZlZA== 13959 +2r4= 13960 +IGJlYW0= 13961 +IGlkaW90 13962 +65Ok 13963 +0L3QsNGH 13964 +aWRk 13965 +IHNraQ== 13966 +aXRhdGl2ZQ== 13967 +IGh5cG90aGVz 13968 +ZW50ZXI= 13969 +IOyVhOuLiOs= 13970 +IGlocmU= 13971 +IHByZXZpZXc= 13972 +YW5nZWw= 13973 +IGRlbW9u 13974 +IGR1cw== 13975 +IGRpYw== 13976 +IEtvbQ== 13977 +TEVZ 13978 +Li4uIQ== 13979 +IHNpZWh0 13980 +IFNvbmlj 13981 +IHRlbmhv 13982 +YW5hcw== 13983 +IGRpZ2l0 13984 +IE1hYXI= 13985 +IHVuZGVyZ3JhZA== 13986 +b3VuY2Vy 13987 +dWZmeQ== 13988 +IGNvbnZlcnNpb24= 13989 +IGRpc2Nvbm5lY3Q= 13990 +IGVjaG8= 13991 +b21lcg== 13992 +IGN1cnJpY3VsdW0= 13993 +IHBlcmNow6k= 13994 +IHdhbmQ= 13995 +Li4/ 13996 +IHJvbGxlZA== 13997 +IGVudHJlcHJlbmV1cg== 13998 +IHRoZW9yZXQ= 13999 +INGJ0L4= 14000 +IGluc2lnaHRz 14001 +IHp1c2FtbWVu 14002 +b2lu 14003 +cmV0dA== 14004 +cHJvZHU= 14005 +IHZpc2l0b3Jz 14006 +ZW91cw== 14007 +IGdyYW5kbW90aGVy 14008 +IGh1bW9y 14009 +INC90LjRhQ== 14010 +emVuaWE= 14011 +aW5zb24= 14012 +IHJlc2V0 14013 +IGJhc2ViYWxs 14014 +IG1hdGNoaW5n 14015 +64uk6rCA 14016 +IHB1bnRv 14017 +7KE= 14018 +IHJlZGU= 14019 +IGFkZHJlc3Npbmc= 14020 +IGZvcmVjYXN0 14021 +IEJvbA== 14022 +IGNvbG9yZWQ= 14023 +IGRvY3VtZW50YXRpb24= 14024 +IGV4cGVjdGF0aW9u 14025 +IE5vcnRoZXJu 14026 +IGNyZW8= 14027 +IOCumg== 14028 +Zm9u 14029 +IHVuc2VyZQ== 14030 +VU0= 14031 +IGNvcGllcw== 14032 +IGV4cGFuZGVk 14033 +IHZldGVyYW5z 14034 +IEFsbQ== 14035 +INCy0L7QvtCx0YnQtQ== 14036 +IHBzeWNob2xvZ2ljYWw= 14037 +IG5vc3Nv 14038 +IHBheW1lbnRz 14039 +aW1ldGVycw== 14040 +IC0tPg== 14041 +IEplbm5pZmVy 14042 +IHZvbHVudGVlcnM= 14043 +b3NzZQ== 14044 +b3Jpb3Vz 14045 +INCx0YvQu9C4 14046 +6II= 14047 +IEVzcw== 14048 +d3M= 14049 +IEJD 14050 +IElD 14051 +V29tYW4= 14052 +IHZvbnQ= 14053 +IGV0aG5pYw== 14054 +RU5O 14055 +0LjQvNC+ 14056 +IGxvYg== 14057 +IG91aQ== 14058 +Y3M= 14059 +IHJlaGU= 14060 +IOyggQ== 14061 +IGNoaWNr 14062 +w7pzaWNh 14063 +IGtvbnQ= 14064 +IERpc3RyaWN0 14065 +IHBpbGU= 14066 +INCw0LI= 14067 +0LXQudGB0YLQsg== 14068 +IMKj 14069 +IGlzc3VlZA== 14070 +INC60L7QvNC/ 14071 +IHByb3NwZXI= 14072 +IHByb2ZvdW5k 14073 +IERlYXI= 14074 +IGZ1bmRlZA== 14075 +IGJpc2E= 14076 +npjr 14077 +158= 14078 +IOydmA== 14079 +IHR3ZWx2ZQ== 14080 +IENoYW1waW9ucw== 14081 +0YHQuw== 14082 +IDIwMDU= 14083 +cG0= 14084 +IG9uZGU= 14085 +IGRpZmbDqQ== 14086 +IENoYWxs 14087 +IGRpZmZpY3VsdGllcw== 14088 +IGdhcmFnZQ== 14089 +IGTDoQ== 14090 +w7xuaw== 14091 +IOusvA== 14092 +IHRyYW4= 14093 +IHN1Ym1pdHRlZA== 14094 +enc= 14095 +2YjYpw== 14096 +IGFyaw== 14097 +IOyEsQ== 14098 +IGdyb2Nlcnk= 14099 +0L7QvdCw 14100 +aWVyZQ== 14101 +IGFlc3Q= 14102 +IGV4aGliaXRpb24= 14103 +IHLDqXM= 14104 +IGNvbnNpc3RlbmN5 14105 +IGNvb2tpZQ== 14106 +0L3QtdC5 14107 +IHJlcGxhY2VtZW50 14108 +IFNlbQ== 14109 +IOyCrOyaqQ== 14110 +ODAw 14111 +IGdlbmVz 14112 +IHRyYW5zYWN0aW9u 14113 +IEVM 14114 +IGR1cmFudGU= 14115 +aWJsZXM= 14116 +IEVhdA== 14117 +dGFpbA== 14118 +aXNzYW5jZQ== 14119 +IHRvc3M= 14120 +IHN1cnZpdmVk 14121 +IG9mZmljZXM= 14122 +IHN1cHBvcnRpdmU= 14123 +V2hlcmU= 14124 +IHRvdXRlcw== 14125 +IOuniQ== 14126 +IGpva2Vz 14127 +aWVyb24= 14128 +YXBlcnM= 14129 +IG1hdHVyZQ== 14130 +IE1hcnNo 14131 +IHNpZG8= 14132 +a2luZA== 14133 +IHJlYWxtZW50ZQ== 14134 +IENoZWY= 14135 +IHF1ZWxxdWU= 14136 +IGp1ZGdlcw== 14137 +ZWZ0 14138 +RVJT 14139 +IGpldA== 14140 +IHBlcnNvbnM= 14141 +6Ls= 14142 +aXphdGlvbnM= 14143 +cmlr 14144 +IHNob3Bz 14145 +IFd5 14146 +IGVsZWc= 14147 +cXXDqA== 14148 +cXVvaQ== 14149 +IGp1Z2E= 14150 +IO2VnOuyiA== 14151 +IFF1ZXN0aW9u 14152 +IEdsb2JhbA== 14153 +IOyVveqwhA== 14154 +IFN0YXRpb24= 14155 +IE9oaW8= 14156 +IHN0aWNreQ== 14157 +IHN0cmVzc2Vk 14158 +IGfDvG4= 14159 +IO2d 14160 +0YHRgtGD0L8= 14161 +IFBoRA== 14162 +aW1tZXI= 14163 +IG1lbnRvcg== 14164 +IGludmVudGVk 14165 +IHJldW4= 14166 +IGluZXZpdA== 14167 +IHBvbMOtdA== 14168 +IGV4ZWN1dGU= 14169 +IFN0b3J5 14170 +IG91dHN0YW5kaW5n 14171 +IGd1ZXI= 14172 +IFJhaW4= 14173 +IGNob3Nlcw== 14174 +IFRpdA== 14175 +INGB0LXRgA== 14176 +IFNpbmdhcG9yZQ== 14177 +IE5vbmU= 14178 +IGNocm9uaWM= 14179 +sOuNsA== 14180 +IGVnbw== 14181 +RVNU 14182 +IFdhbmc= 14183 +IE5BVA== 14184 +IGF1Zw== 14185 +IGRlc2t0b3A= 14186 +IGV0ZXJuYWw= 14187 +IOyCrOyLpA== 14188 +IENvbnN0aXR1dGlvbg== 14189 +7IKs6w== 14190 +15nXnA== 14191 +cHJlcw== 14192 +INCi0Ys= 14193 +IGludGVyZg== 14194 +IGxpc3Rz 14195 +IGZpZ2h0cw== 14196 +ZnRlbg== 14197 +IElvd2E= 14198 +IG1vdGl2YXRlZA== 14199 +IEhvc3A= 14200 +IGVsc2V3aGVyZQ== 14201 +IHBhdGhz 14202 +IGluc3RhbmNlcw== 14203 +Qmw= 14204 +cmFuZ2U= 14205 +4bux 14206 +IFNpdA== 14207 +bWFuYQ== 14208 +IOyLnOyekQ== 14209 +IG3DrG5o 14210 +YW5zYXM= 14211 +IHNuYQ== 14212 +IHBoaWxvc29waA== 14213 +IHBhc3Nl 14214 +xrDhu51p 14215 +YWto 14216 +ZW50YWw= 14217 +IGlobg== 14218 +cnVjdG9y 14219 +INCy0LDRiA== 14220 +IGdlbmVyb3Vz 14221 +IHBpdm90 14222 +0L/QvtC7 14223 +IGphbWFpcw== 14224 +IGNvbWVudA== 14225 +IExldw== 14226 +b2R6aQ== 14227 +IFhib3g= 14228 +INCy0L7QtA== 14229 +IGNvbnNlbnQ= 14230 +ieyepQ== 14231 +IGRpc3Bhcg== 14232 +bGFzcw== 14233 +IEdvdmVybm9y 14234 +QmVpZmFsbA== 14235 +IOqwnA== 14236 +IGJlbG92ZWQ= 14237 +16DXlQ== 14238 +c2VsbA== 14239 +IGhvbm9yZWQ= 14240 +bGVo 14241 +IHfDpHJl 14242 +dW50aW5n 14243 +IGZyYXVk 14244 +IFJBTQ== 14245 +6rG4 14246 +IGtpbGxz 14247 +IGVjb25vbWljcw== 14248 +MDQ= 14249 +0L/QtdGA 14250 +IGNvaXNhcw== 14251 +INC40LPRgA== 14252 +w61t 14253 +IG3DtmNodGU= 14254 +IOy1nA== 14255 +IHN0aW11bA== 14256 +IGZhc3Rlc3Q= 14257 +bHY= 14258 +IGfDqW4= 14259 +IFNvdW5kcw== 14260 +IDE5NzA= 14261 +IGhvbWV3b3Jr 14262 +c3BlYWtpbmc= 14263 +IGVuY291cmFnaW5n 14264 +IHF1ZXJ5 14265 +IHJldmVycw== 14266 +cHJvZml0 14267 +IGR5 14268 +IOyekQ== 14269 +64qU642w7JqU 14270 +IHNvYXA= 14271 +IEdhbGw= 14272 +IENO 14273 +IEFucw== 14274 +IGZpYw== 14275 +YW5rcw== 14276 +IGRlc3NlcnQ= 14277 +IOyggO2drA== 14278 +IE1ha2luZw== 14279 +IGNvbWXDpw== 14280 +6rOE 14281 +IGFzc29jaWF0aW9u 14282 +RGFk 14283 +aGVl 14284 +IGhvZ3k= 14285 +IGFwcm8= 14286 +IGludmlzaWJsZQ== 14287 +QW1lcmljYW4= 14288 +7Y4= 14289 +IHZpYmU= 14290 +IGVtaXNzaW9ucw== 14291 +IGFkdm9jYXRl 14292 +IGtpY2tlZA== 14293 +IHZlbA== 14294 +IHN1bW1hcg== 14295 +IGZyZWFraW5n 14296 +Y2hyb24= 14297 +IHBpbmNo 14298 +IHdzenlzdGs= 14299 +aXNjYWw= 14300 +IHByb3ZlZA== 14301 +IG1pbmRmdWw= 14302 +IHTDpA== 14303 +IG5vaXNlcw== 14304 +IGlzb2xhdGVk 14305 +IGNyb3NzZWQ= 14306 +IOqwlQ== 14307 +IHZvaWzDoA== 14308 +IGNob3Jl 14309 +IFJB 14310 +Q29t 14311 +IHJlbGF4ZWQ= 14312 +YXRybw== 14313 +IHByZXZlbnRpb24= 14314 +Vm9pY2VvdmVy 14315 +T0Q= 14316 +IENvdmlk 14317 +IHNlcGFyYXRpb24= 14318 +IC1b 14319 +0LjRh9C10LPQvg== 14320 +IFNE 14321 +YmxlZXA= 14322 +IGluZGVwZW5kZW5jZQ== 14323 +IHBhcnRpYWw= 14324 +IGFsZ29yaXRobXM= 14325 +IEFueW9uZQ== 14326 +IGFzc29jaWF0ZQ== 14327 +aHVt 14328 +aWN1bGFy 14329 +IGLhuqFu 14330 +IGJhdHRsZXM= 14331 +R29vZA== 14332 +QXBwbGF1c2U= 14333 +IGJhc3RhbnRl 14334 +IGFkdmFudA== 14335 +IFN3ZWV0 14336 +IHJlZnVzZWQ= 14337 +INGC0LXQsdC1 14338 +cGxldA== 14339 +IGVuY291cmFnZWQ= 14340 +IG1pcmFjbGU= 14341 +IEJ1bg== 14342 +IFZhcg== 14343 +cmltaW5hdGlvbg== 14344 +ZWxlY3Q= 14345 +IE11bHQ= 14346 +IGRlbGl2ZXJpbmc= 14347 +ZWluZw== 14348 +IGNt 14349 +bmVobWVu 14350 +IExpbmU= 14351 +IOunjA== 14352 +ZW5jZWQ= 14353 +IFNvdW5k 14354 +IENvbnRpbg== 14355 +aWpk 14356 +VU5H 14357 +a2xl 14358 +IHRocmVzaG9sZA== 14359 +IGNvbXBhY3Q= 14360 +YWR0 14361 +IHRvZXM= 14362 +IFB1cg== 14363 +b3duZWQ= 14364 +bWVudGVk 14365 +IGRlc2lnbmluZw== 14366 +IHZhY2NpbmF0ZWQ= 14367 +IGV4aGF1c3Q= 14368 +IGJhc2ljcw== 14369 +IGNvbnNpc3Rz 14370 +IEd1eQ== 14371 +YWN6eQ== 14372 +IG3DrQ== 14373 +d29u 14374 +IDg1 14375 +5oI= 14376 +IG11bQ== 14377 +IGlnbm9y 14378 +IHByaW50aW5n 14379 +YWN1bGFy 14380 +cG93 14381 +IGV4cGFuZGluZw== 14382 +IGdpcg== 14383 +IENhYg== 14384 +7Zi4 14385 +0YLRjNGB0Y8= 14386 +IOyXrOufrOu2hA== 14387 +IGFuZ2xlcw== 14388 +IHRlcm1pbmFs 14389 +IFdvbg== 14390 +IEludGVyZXN0aW5n 14391 +IGNyb3NzaW5n 14392 +IGJvbmRz 14393 +IHB1ZWRlbg== 14394 +IG9yYg== 14395 +bGFyxLFu 14396 +IGNyZWVweQ== 14397 +IG51dHJpdGlvbg== 14398 +IGFsbGllcw== 14399 +IHdpcmVsZXNz 14400 +IGRlc2lyZWQ= 14401 +IGNvbXB1dGU= 14402 +IEFyaXpvbmE= 14403 +IEJlYXV0aWZ1bA== 14404 +IHByb2R1Y2Vz 14405 +IG51ZXN0cm8= 14406 +dGVk 14407 +IGVsaWdpYmxl 14408 +INGB0L7Qtw== 14409 +aWNpYWw= 14410 +IEhlcm8= 14411 +IGNvbnN1bWU= 14412 +IHJvYm90cw== 14413 +IHB1cmNoYXNlZA== 14414 +Y2Npw7Nu 14415 +IGl6 14416 +xrDhu6Nj 14417 +zq/Ovc6xzrk= 14418 +INij2YY= 14419 +IHNoYWRvd3M= 14420 +IE1lZGlh 14421 +IHByaW5jZXNz 14422 +IGtsYXI= 14423 +IHdvb2Rlbg== 14424 +IHVzYXI= 14425 +IGfDvHplbA== 14426 +IHNsb3Q= 14427 +cmFkZQ== 14428 +IOuS 14429 +IGhhcm1vbg== 14430 +IGluZ3JlZGllbnQ= 14431 +b3JzaGlw 14432 +ZWtp 14433 +IGdyYW5kZmF0aGVy 14434 +IGV4Y2l0ZW1lbnQ= 14435 +IHBvbGl0aWNpYW5z 14436 +Li4h 14437 +IG91dHM= 14438 +IHNlcGFyYXRlbHk= 14439 +INGP0Lo= 14440 +IFdlbHQ= 14441 +IFBvdw== 14442 +amFu 14443 +IG9yaWVudGF0aW9u 14444 +TEM= 14445 +YWdlbQ== 14446 +24zaug== 14447 +IGJyYW5jaGVz 14448 +YWRlbg== 14449 +cmVudGU= 14450 +IElocg== 14451 +YXNt 14452 +IGVzdMOjbw== 14453 +IE5pYw== 14454 +IHNsYXZl 14455 +IGNvbXByZXNz 14456 +Y3Jvd2Q= 14457 +IGNsaW1iaW5n 14458 +IE1hbmFnZW1lbnQ= 14459 +IEJhaA== 14460 +IHBhbmlj 14461 +IGtvcg== 14462 +IGNvb2xpbmc= 14463 +IGJpbmQ= 14464 +INC30LDQtA== 14465 +IHJhY2s= 14466 +IGVudGl0 14467 +IHNlbmRz 14468 +IHlvdXJzZWx2ZXM= 14469 +ZGVz 14470 +IE11c2xpbXM= 14471 +IO2a 14472 +aXNtYQ== 14473 +Y3ljbGU= 14474 +dW5rdA== 14475 +IENvcmU= 14476 +IGluanVyaWVz 14477 +IGlkZW50aWNhbA== 14478 +0LrQsNGP 14479 +IERldXRzY2hsYW5k 14480 +INC10LU= 14481 +aXNhbg== 14482 +IHRydWM= 14483 +bGV0b24= 14484 +IGJhY2t1cA== 14485 +IHVsdHJh 14486 +IGFidW5k 14487 +aWxsZXVycw== 14488 +IGJ5xYJv 14489 +b3J0ZWQ= 14490 +IGVhcnRocXU= 14491 +INC60Ls= 14492 +IG9ic2VydmF0aW9u 14493 +IG1haW50ZW5hbnQ= 14494 +ZWxlbg== 14495 +IHNldHRsZWQ= 14496 +IHBlbGE= 14497 +IEVjb25vbQ== 14498 +INU= 14499 +IHN0ZWVyaW5n 14500 +IEFMTA== 14501 +IENoZXI= 14502 +IHBhdGllbmNl 14503 +IFNub3c= 14504 +IGJvcg== 14505 +IHdvcnRoeQ== 14506 +IGPDoWk= 14507 +INen 14508 +IM66zrE= 14509 +ZG9n 14510 +IEthcmVu 14511 +aWxsZXM= 14512 +zrI= 14513 +IGFncmljdWx0dXJl 14514 +15XXnw== 14515 +IFNlYW4= 14516 +IHNlbnNvcnM= 14517 +7ZW06w== 14518 +YWdo 14519 +IHB1YmxpY2x5 14520 +IHBldXg= 14521 +IEFsZXhhbmRlcg== 14522 +IHByaW9yaXQ= 14523 +IGxhenk= 14524 +YXJkb24= 14525 +YXR0ZXJpbmc= 14526 +IGNvc3R1bWU= 14527 +2LPYqg== 14528 +IHVudw== 14529 +0Js= 14530 +IHRoaWNrbmVzcw== 14531 +cXVpdG8= 14532 +Z3VudA== 14533 +aXN0YXM= 14534 +bmV5cw== 14535 +IOuQmOqyjA== 14536 +IEJyYXNpbA== 14537 +IHRva2Vu 14538 +IGFmZmlsaQ== 14539 +bG9u 14540 +IGbDpXI= 14541 +IEJlYWNo 14542 +IHdpdGNo 14543 +IFNldmVu 14544 +IHBhbnQ= 14545 +zrvOuw== 14546 +IGNhcHRhaW4= 14547 +5Z0= 14548 +IHZldXQ= 14549 +IHBvdXZvaXI= 14550 +YWN6 14551 +IEJhcmI= 14552 +IHV0aWxpdHk= 14553 +IGNvbnRlbXBvcmFyeQ== 14554 +IG9idGFpbmVk 14555 +IHBhaW50aW5ncw== 14556 +ZWFy 14557 +IHBlYW4= 14558 +IE9n 14559 +IGN1c3Q= 14560 +0LvQtdC8 14561 +gpjr 14562 +IElzc28= 14563 +IGFjb250ZQ== 14564 +IFRlbGU= 14565 +IEFzc2lzdGFudA== 14566 +w4k= 14567 +7ZaI7Iq164uI64uk 14568 +IGNvdW50cw== 14569 +IGJ1Y2s= 14570 +IERlZXA= 14571 +IHRhY2tsZQ== 14572 +IGhhcnNo 14573 +IGRlY2lkZXM= 14574 +LuKAiw== 14575 +IEFuZ2Vs 14576 +IGxheWluZw== 14577 +IGNhbG9yaWVz 14578 +IGNvbnRyb2xsaW5n 14579 +IGFkdmFudGFnZXM= 14580 +INGN0YLQvtC5 14581 +IGFwcHJvYWNoaW5n 14582 +IHRocmVhdHM= 14583 +YWthbg== 14584 +ZW1hdGlj 14585 +bWFubg== 14586 +6rO1 14587 +bXVtYmxlcw== 14588 +YWNpw7M= 14589 +IG1haW50YWluaW5n 14590 +IGZvdW5kZXI= 14591 +bGFo 14592 +ZmlnaHQ= 14593 +IGFkbWl0dGVk 14594 +4oCmLg== 14595 +lYw= 14596 +YWJvbA== 14597 +IHVzYWdl 14598 +IG5vbnNlbnNl 14599 +IFBhbGVzdA== 14600 +IGNvbnRyZQ== 14601 +IERlbW9jcmF0aWM= 14602 +IEVS 14603 +amVrdA== 14604 +IGFyYml0 14605 +INCz0L7Quw== 14606 +IE1pY2hlbGxl 14607 +aWNoZXI= 14608 +ZXNo 14609 +IFBobw== 14610 +0LrQvtC8 14611 +NDk= 14612 +IEVuZXJneQ== 14613 +zr/PjQ== 14614 +IGNlbnRz 14615 +IHJlZmVycw== 14616 +IGdvc3BlbA== 14617 +IFNoYQ== 14618 +IFNoYXJl 14619 +15nXoA== 14620 +IGNsaW5pYw== 14621 +IOuEow== 14622 +IGVxdWFsaXR5 14623 +dWdz 14624 +IHNoZWQ= 14625 +IHBsYW5lcw== 14626 +IHRvdXRl 14627 +cmVjaw== 14628 +IHN0cmFuZA== 14629 +IGJpb2xvZ3k= 14630 +IGxlYWd1ZQ== 14631 +IFBvaw== 14632 +IG7Dum1lcm8= 14633 +IENvYXN0 14634 +IGNvbnNpc3RlbnRseQ== 14635 +IG51Y2xl 14636 +T09PTw== 14637 +IG9iamV0 14638 +IGNob3I= 14639 +IGdpbmdlcg== 14640 +IGRhYmVp 14641 +IGNvb3BlcmF0aW9u 14642 +4K+NLg== 14643 +bnRlbg== 14644 +56Q= 14645 +bMOg 14646 +7JaR 14647 +cmFkbw== 14648 +IHBhc3NpdmU= 14649 +IGdsb3Zlcw== 14650 +IHVuZGVyZ3JvdW5k 14651 +IGxvZ2ljYWw= 14652 +IGtldA== 14653 +IGZ1bmN0aW9uYWxpdHk= 14654 +uOumrA== 14655 +IHBvcnRhbA== 14656 +ZWxsZXI= 14657 +15nXqA== 14658 +IFRlZA== 14659 +IEdyZQ== 14660 +kJw= 14661 +IHBlcnNvbm5lbA== 14662 +IGVtZXJnaW5n 14663 +IEbDvHI= 14664 +IG1lYW50aW1l 14665 +dXNhbGVt 14666 +IENsZWFy 14667 +IHRyYXBwZWQ= 14668 +IOyasA== 14669 +IGRpc3Bs 14670 +IG1ldHRyZQ== 14671 +IG11bmljaXA= 14672 +IHdpdGhkcmF3 14673 +IHNwYXQ= 14674 +dW5lcw== 14675 +IGFjY2Vzc2liaWxpdHk= 14676 +IGFwYXJl 14677 +IHByb3NwZWN0 14678 +INC90LDQtw== 14679 +IGNvcHBlcg== 14680 +IFBSTw== 14681 +z4XPhA== 14682 +IGF0dGFja2luZw== 14683 +IFZpbg== 14684 +IFN0b25l 14685 +IGludmVzdGlnYXRl 14686 +c3R5bGU= 14687 +IM67 14688 +66Gd 14689 +66eI 14690 +IGluc3BlY3Q= 14691 +IGxpdmVy 14692 +0LDQu9C40YHRjA== 14693 +IHNlcmE= 14694 +aGFsdGVu 14695 +ZW1hbg== 14696 +IG1pbmlzdHJ5 14697 +Jyc= 14698 +IGRvdHM= 14699 +44WL44WL44WL44WL 14700 +0YPRgdGC 14701 +IEphaw== 14702 +QUtF 14703 +IGdhcHM= 14704 +dWNrZXI= 14705 +INC40L3RgtC10YDQtdGB 14706 +IEVtaWx5 14707 +IGludGVydmFs 14708 +IHRlbmRlcg== 14709 +IFRlY2hub2xvZ3k= 14710 +Z2FtZQ== 14711 +IHRyaWI= 14712 +2YTYpw== 14713 +IERldmVsb3BtZW50 14714 +2YXYpw== 14715 +IHdyaXN0 14716 +IGZpcmVz 14717 +IHRhcmdldGVk 14718 +7KCQ 14719 +IHNvZA== 14720 +7ZqM 14721 +IG9sZHXEnw== 14722 +IHNlYXNvbnM= 14723 +dmVudGlvbnM= 14724 +INC90LXQs9C+ 14725 +IHNvbWV0aW1l 14726 +0LvQuNCy 14727 +bsOp 14728 +IHTDug== 14729 +IERldXM= 14730 +IGV4ZWN1dGlvbg== 14731 +w6Fw 14732 +IENoYW5nZQ== 14733 +IEluZGVlZA== 14734 +IHJlZ3VsYXRpb24= 14735 +IEh1bmc= 14736 +w6lpcw== 14737 +IHdpc2hlcw== 14738 +IGpheno= 14739 +IHN0cnVjdHVyYWw= 14740 +IGJsb3dpbmc= 14741 +IGJ5xIc= 14742 +IHRoZXJtYWw= 14743 +cGhhbnQ= 14744 +0YDRg9C3 14745 +0LDQvdGC 14746 +IFB1bGw= 14747 +IGNvbmZ1c2lvbg== 14748 +0L3Ri9C80Lg= 14749 +IHNjZW5hcmlvcw== 14750 +7KCB7Jy866Gc 14751 +INC00LXRgg== 14752 +IHRhdHRvbw== 14753 +IGF1dHJl 14754 +IGhlYXRpbmc= 14755 +IHRyZWF0aW5n 14756 +INC/0L7QvdC40Lw= 14757 +IGV4Y2x1cw== 14758 +IExPTA== 14759 +d2Vhcg== 14760 +YWdsZQ== 14761 +IHp1csO8Y2s= 14762 +IHJhdGlvbmFs 14763 +c3U= 14764 +IGRldGVy 14765 +IE5hdGl2ZQ== 14766 +4K6V4K6z 14767 +YWNoZWQ= 14768 +IOOD 14769 +IEVudG9uY2Vz 14770 +IGhvcmE= 14771 +7J207JeQ7JqU 14772 +IGxpdGU= 14773 +w6s= 14774 +IHNpeHRo 14775 +INCx0L7Qu9C10LU= 14776 +YWN0b3I= 14777 +IHBzeWNob2xvZ3k= 14778 +IGRlbWFuZHM= 14779 +IHBlZXI= 14780 +IG5ld2x5 14781 +IFdXRQ== 14782 +RG9uYWxk 14783 +IEJveA== 14784 +IHBpbmU= 14785 +IGxvYWRpbmc= 14786 +IE5pY28= 14787 +IHPFgg== 14788 +b21tZQ== 14789 +QVJU 14790 +IHJlY3J1aXQ= 14791 +IGJ1Z3M= 14792 +YXJlbnRz 14793 +INC/0YDQvtCx 14794 +IEluc2lkZQ== 14795 +aXBwZXI= 14796 +ZHJhbWF0aWM= 14797 +IHBsYW5ldHM= 14798 +b3JkZQ== 14799 +IHlvZ2E= 14800 +Y2hpbGQ= 14801 +IE1hcmll 14802 +IEJM 14803 +IGZpbG1lZA== 14804 +IHJlZnJlc2g= 14805 +IHRvbWF0b2Vz 14806 +IGZldA== 14807 +UXXDqQ== 14808 +ICEh 14809 +IOuCtOs= 14810 +cmluZQ== 14811 +IGludGVyYWN0aXZl 14812 +c2Fs 14813 +YW5uYWg= 14814 +cGV6 14815 +IHVuZGVyc3RhbmRz 14816 +IFRva3lv 14817 +IGxpYnJhcmllcw== 14818 +IHJlYWRlcg== 14819 +kZA= 14820 +b3o= 14821 +IEVuZGU= 14822 +IEZsbw== 14823 +IG1pbGQ= 14824 +IHBvZXRyeQ== 14825 +INC20LjQsg== 14826 +IGJlaGF2ZQ== 14827 +IGRvZW4= 14828 +IFN1c2Fu 14829 +cGFnZQ== 14830 +cmFoYW0= 14831 +IGNvbW11bmljYXRpb25z 14832 +IHR1bmluZw== 14833 +IHBhYw== 14834 +IGFueGlvdXM= 14835 +SU8= 14836 +TWFyaw== 14837 +IGhpw6c= 14838 +Ym9va3M= 14839 +IHBpc3M= 14840 +IGVuYWJsZWQ= 14841 +YWNoZWxvcg== 14842 +IEZPUg== 14843 +IMOpYw== 14844 +IFRS 14845 +aWxzdA== 14846 +aGF0 14847 +IOydjA== 14848 +IHR5Y2g= 14849 +IGphcg== 14850 +IGJ1aWxkcw== 14851 +IEFyZ2VudA== 14852 +IGludGVybWVkaQ== 14853 +IGxvdQ== 14854 +IGFyYQ== 14855 +IGFzc2lnbm1lbnQ= 14856 +IGNhYmluZXQ= 14857 +IHJldGlyZW1lbnQ= 14858 +IGRpc2FibGVk 14859 +cmljYQ== 14860 +IGF3YXJkcw== 14861 +IGJvb3Rz 14862 +IGFja25vd2xlZA== 14863 +IHRoeQ== 14864 +IOq1rA== 14865 +IHN5bmQ= 14866 +0L3QuNC5 14867 +aWx0b24= 14868 +IHByb2Js 14869 +IEZhbA== 14870 +IHZlcmRhZGU= 14871 +IDcwMA== 14872 +IExlYXJuaW5n 14873 +b2N1cw== 14874 +IHBhbGFjZQ== 14875 +Tm90 14876 +dGFpbg== 14877 +Y20= 14878 +IG1hZ25ldA== 14879 +aW5jb2xu 14880 +IGZpZ3VyaW5n 14881 +IEx5bg== 14882 +IEJvc3M= 14883 +IFZP 14884 +IGRpYWdub3Npcw== 14885 +IGVxdWlwcGVk 14886 +d2F0Y2g= 14887 +aW5vcw== 14888 +YWRlcnM= 14889 +IHNoZWxm 14890 +IG9yZ2FuaXM= 14891 +IG5vZA== 14892 +IGvEsXo= 14893 +cHBlcnM= 14894 +IHJlc3RvcmU= 14895 +IGFydGlj 14896 +IFZvaWNl 14897 +xLF5b3J1bQ== 14898 +6rKp 14899 +IHNwcmVhZGluZw== 14900 +IGhpcHM= 14901 +IHdhcmQ= 14902 +dXJlYXU= 14903 +IGludGVyc2VjdGlvbg== 14904 +NjY= 14905 +IDM5 14906 +57M= 14907 +IHdhaXRlZA== 14908 +7LQ= 14909 +aGhoaA== 14910 +IGR5cw== 14911 +IEVO 14912 +IGJhdGNo 14913 +IGNhZg== 14914 +IG1hcmtlcg== 14915 +b3JhYmxl 14916 +w7NyaWE= 14917 +IHN0ZXBwZWQ= 14918 +IGNlbGVicmF0aW5n 14919 +0LDQvdCw 14920 +IHdvcm4= 14921 +IEZvbA== 14922 +IHBsYQ== 14923 +IGF0dGVtcHRz 14924 +IHR3ZWV0 14925 +IHJ1c3Q= 14926 +Z2VuY2U= 14927 +7Ya1 14928 +IHJldmVs 14929 +IHJlY2VwdA== 14930 +ZW5lc3M= 14931 +ICgo 14932 +IeKAiw== 14933 +IOyGkA== 14934 +IGluZmx1ZW5jZWQ= 14935 +0LjQtg== 14936 +INC60L7QvdC10YfQvdC+ 14937 +IGNvbGxlZ2Vz 14938 +aW9uaQ== 14939 +IHNhZw== 14940 +QW5u 14941 +b2xhcg== 14942 +IGV4cHJlc3Npb25z 14943 +IHN1aXRz 14944 +IG93bmVyc2hpcA== 14945 +ZWxhbmQ= 14946 +cGllY2U= 14947 +IGRlc3B1w6lz 14948 +IHRlbA== 14949 +IGluc3VsdA== 14950 +IOq1ieyepQ== 14951 +IFNtYWxs 14952 +IEZS 14953 +b2th 14954 +YmVycmllcw== 14955 +IEFudG9u 14956 +0LXQu9GP 14957 +0Y/RgQ== 14958 +IHZhbHZl 14959 +YWN0cw== 14960 +IHdvb2Rz 14961 +4K6j 14962 +IGN1bHRpdg== 14963 +IGbDoQ== 14964 +IGNoZWVycw== 14965 +IGFzc3VtcHRpb24= 14966 +IGZpdG5lc3M= 14967 +w61jdWw= 14968 +IHBvZHI= 14969 +IHdlaXQ= 14970 +IEhpbmQ= 14971 +IGRpZ24= 14972 +INC30L0= 14973 +IHNxdWFk 14974 +IGRlc3Rybw== 14975 +Y2VyZQ== 14976 +c2hpcnQ= 14977 +aW1tdA== 14978 +ZW5nZXJz 14979 +IHPDpA== 14980 +a8WCYWQ= 14981 +IMiZ 14982 +IG9jY2Fz 14983 +IOykhA== 14984 +IHByb2Nlc3Nvcg== 14985 +IERN 14986 +IERhZGR5 14987 +IHNvb25lcg== 14988 +IHN0cmFpZ2h0Zm9yd2FyZA== 14989 +IGRlcGFydG1lbnRz 14990 +IENocm9tZQ== 14991 +IHdvcmtwbGFjZQ== 14992 +IFB5dGhvbg== 14993 +IG1lbmc= 14994 +IERBTg== 14995 +IEljZQ== 14996 +IOuIiA== 14997 +IEdp 14998 +IGhpcmluZw== 14999 +IGxhbmRlZA== 15000 +IGRlbW9jcmF0aWM= 15001 +aWVkeg== 15002 +IHNldg== 15003 +aWNpYQ== 15004 +IGVzcGVjaWFs 15005 +IE5vdXM= 15006 +IGjDpHQ= 15007 +IGJvdQ== 15008 +cGVydA== 15009 +aWVzeg== 15010 +IHZpbA== 15011 +xZtsaQ== 15012 +IMOubg== 15013 +IGxvc3Nlcw== 15014 +IHRvYXN0 15015 +IHJlYWxt 15016 +IEF1c3Rpbg== 15017 +IEluZm9ybWF0aW9u 15018 +IHJlc3VtZQ== 15019 +IGNoYXNl 15020 +IHNhbGFyeQ== 15021 +IOu2hA== 15022 +0LvQuNGH 15023 +INGB0LvQtdC0 15024 +IEZ1cnRoZXI= 15025 +IGNhcmluZw== 15026 +IHZpZw== 15027 +IHZhbG9y 15028 +INGH0LA= 15029 +IGFuYWx5dGljcw== 15030 +IGdsb2Jl 15031 +IE1BTg== 15032 +IG5lbA== 15033 +7J207JW8 15034 +n7w= 15035 +IG95 15036 +7ZWY7IS47JqU 15037 +amVu 15038 +IHRyb3VibGVz 15039 +YWhhaGE= 15040 +IGNodXJjaGVz 15041 +dWV0 15042 +IG1lYXN1cmVtZW50cw== 15043 +Ymls 15044 +7L0= 15045 +aWZ1bGx5 15046 +0LjQvdGD 15047 +IFdpbHNvbg== 15048 +prQ= 15049 +IO2MjA== 15050 +IOywqA== 15051 +IHDDumJsaWM= 15052 +IEplcnVzYWxlbQ== 15053 +IG5haWxz 15054 +IHNwaW5l 15055 +IGhlbW9z 15056 +IHpu 15057 +cXVpcw== 15058 +IExlYmVu 15059 +IHJlZmVyZW5jZXM= 15060 +SVRI 15061 +aXBlcg== 15062 +INGB0LXQsdGP 15063 +7IE= 15064 +IFdh 15065 +c3RhdGU= 15066 +p50= 15067 +IEdlbmVy 15068 +IGFjdHJlc3M= 15069 +IEVuam95 15070 +4LmD 15071 +INeS 15072 +IGluZmVjdGVk 15073 +IHNoYWtpbmc= 15074 +IG5pY2s= 15075 +4Li4 15076 +IGZvdA== 15077 +IGFjY29tcGxpc2hlZA== 15078 +dWtl 15079 +IHNoZWV0cw== 15080 +IGZlbmNl 15081 +IG51cnNpbmc= 15082 +IGludHJvZHVjaW5n 15083 +IGZlYXQ= 15084 +T25l 15085 +VE8= 15086 +IGNsdWJz 15087 +IEJydWNl 15088 +b25nZQ== 15089 +Y2hhbmdl 15090 +IEJhdG1hbg== 15091 +IE9mZmljZXI= 15092 +IGh5ZHJv 15093 +IHN1cHBsZW1lbnQ= 15094 +IGNlbGE= 15095 +IGxvbmdlc3Q= 15096 +IGNvbXBldGluZw== 15097 +IGNvbmhl 15098 +Z2l2aW5n 15099 +IGJyYWlucw== 15100 +IGxvYW5z 15101 +IHdhZ2U= 15102 +IENsaW50b24= 15103 +IHPEgw== 15104 +YW5lb3Vz 15105 +IGxvcmQ= 15106 +0YDRg9C2 15107 +IHF1aXo= 15108 +IHN0aWZm 15109 +IExHQg== 15110 +c3o= 15111 +TUU= 15112 +bWFyZQ== 15113 +dGhlcmU= 15114 +IG7DpHI= 15115 +IE1hbmQ= 15116 +bGFzdA== 15117 +IGRhZw== 15118 +IGhhbGZ3YXk= 15119 +IEJhbmQ= 15120 +IOuLpOyLnA== 15121 +IEFyZW4= 15122 +IGlsZQ== 15123 +UE4= 15124 +ZW50bw== 15125 +IGFsZ3Vt 15126 +IHNvY2Nlcg== 15127 +IGJsb2NrZWQ= 15128 +IEpvbmF0aGFu 15129 +IHNldw== 15130 +IFRlc3RhbWVudA== 15131 +IHZhbGU= 15132 +IGJlaGF2aQ== 15133 +IGNvbm5h 15134 +SUNI 15135 +IGF1ZGllbmNlcw== 15136 +bWw= 15137 +YW1tYWQ= 15138 +IOyCtOw= 15139 +SUdI 15140 +IHJhY2Vz 15141 +ZW1lZA== 15142 +IG3hu5l0 15143 +w68= 15144 +IG92ZXJz 15145 +IGRlY2xhcmVk 15146 +IHNhbmE= 15147 +IFVuYQ== 15148 +INGA0LU= 15149 +dWNrcw== 15150 +IHBhaXJz 15151 +IGFuZ2U= 15152 +TmU= 15153 +IHVwcw== 15154 +YXZ5 15155 +w7hy 15156 +cmVlaw== 15157 +IGJlaGF2aW9ycw== 15158 +IHJlZmxlY3RlZA== 15159 +IHByaW9yaXRpZXM= 15160 +IGNvbmR1 15161 +IHJldHJlYXQ= 15162 +IGV4cGVuc2Vz 15163 +IOu0kA== 15164 +IHRyaXBsZQ== 15165 +IOq1ieyepe2eiA== 15166 +w6RsdA== 15167 +IGluZGlnZW5vdXM= 15168 +IG1pbmluZw== 15169 +IGFjY2VwdGFibGU= 15170 +IHJ1aW4= 15171 +Q0E= 15172 +dWluZQ== 15173 +IHBpcGVsaW5l 15174 +Y3RpYw== 15175 +w6p0 15176 +INCy0YHQtdCz0L4= 15177 +IGJvdW4= 15178 +IERpZ2l0YWw= 15179 +IEJvb20= 15180 +0YbQtQ== 15181 +INC70YPRhw== 15182 +IGFzYw== 15183 +jIDroZw= 15184 +IEdvb2RieWU= 15185 +IHJlbmRlcg== 15186 +ZW5leg== 15187 +YXJyZQ== 15188 +IFRIQVQ= 15189 +Ym91cg== 15190 +aWNpw7Nu 15191 +RXZlcnk= 15192 +IHdpcmVz 15193 +IFBhcmxpYW1lbnQ= 15194 +bnVuZw== 15195 +YXRldXI= 15196 +IFNhdmU= 15197 +IFBoeXM= 15198 +IGFtb3I= 15199 +IEV2ZQ== 15200 +IGZyaWdodA== 15201 +IGdhbW1h 15202 +IG1pY3Jvcw== 15203 +bWl0dA== 15204 +IENvZGU= 15205 +IEJleQ== 15206 +cGxlZA== 15207 +INC40YHQv9C+0LvRjNC3 15208 +55c= 15209 +7IOJ 15210 +IG1vbmV0 15211 +IEphaHJl 15212 +IGx1eHVyeQ== 15213 +IGRlYWY= 15214 +IGJldHJheQ== 15215 +IOqysA== 15216 +0LjQutC4 15217 +IGRlZmVhdGVk 15218 +IHVuZGVydA== 15219 +IHdlZw== 15220 +IGNvb2xlcg== 15221 +aWFtaQ== 15222 +IEplc3NpY2E= 15223 +IEpveQ== 15224 +IHNvcGhpc3RpYw== 15225 +0LXQvdC40Lg= 15226 +8J2Y 15227 +IGNoaWxp 15228 +IFR5cGU= 15229 +IHByb3RlaW5z 15230 +IHByZXNlbnRpbmc= 15231 +YWxpYQ== 15232 +7Jq4 15233 +IE1ham9y 15234 +IG1vbGVjdWxl 15235 +dW1lcg== 15236 +IGNvbGxhcHNl 15237 +IEFueXdheXM= 15238 +IE1vdW50YWlu 15239 +YW50ZWQ= 15240 +44CQ 15241 +INCy0LjQtNC10L4= 15242 +QXVk 15243 +IGNvbnF1 15244 +IHZvbGw= 15245 +IGtuaXQ= 15246 +IG1lbWJy 15247 +IE1hcmtldA== 15248 +IGRhcmk= 15249 +IGNhbGN1bGF0ZWQ= 15250 +0LPQuA== 15251 +IHNocmltcA== 15252 +IE11 15253 +INC/0YDQvtGC 15254 +IOyYgeyDgQ== 15255 +IHByb2R1Y3Rpdml0eQ== 15256 +IGNvZ25pdGl2ZQ== 15257 +IEhlYg== 15258 +aWN0aW9ucw== 15259 +6rK9 15260 +IGNyw6k= 15261 +ZsO2cg== 15262 +IHByYXlpbmc= 15263 +YXNoaQ== 15264 +IFRpaw== 15265 +w7Ny 15266 +d2Vu 15267 +0YzRjg== 15268 +aXhv 15269 +ICgi 15270 +INGC0LXQuw== 15271 +IOyWtOuWpA== 15272 +INC/0LXRgNC10LQ= 15273 +IERyaXZl 15274 +44CR 15275 +IEVxdQ== 15276 +IGVxdWlsaWJyaXVt 15277 +IGRlc2NyaWJlcw== 15278 +0L3QtdC1 15279 +NDI= 15280 +IEN1cnJlbnQ= 15281 +eXk= 15282 +IGFic29yYg== 15283 +IHNvbGRpZXI= 15284 +ZGVycw== 15285 +IHRlc3RpbW9ueQ== 15286 +IGRlY2xpbmU= 15287 +nOuhnA== 15288 +Z2FnZQ== 15289 +IGluc3BpcmU= 15290 +bGFwcGluZw== 15291 +IHNwaW5uaW5n 15292 +IHNsYXZlcnk= 15293 +IGZhY2lhbA== 15294 +IHRyYWRpdGlvbnM= 15295 +w6FyaW9z 15296 +IEhvc3BpdGFs 15297 +IG5lc3Q= 15298 +IOuIhA== 15299 +IHRvaQ== 15300 +IGZlYXJz 15301 +7IWo 15302 +IE11aA== 15303 +IGdyYWR1YXRpb24= 15304 +IGltcGFjdGVk 15305 +IGF1bnQ= 15306 +IExldHM= 15307 +IGFsdW1pbnVt 15308 +IGRvbWluYW50 15309 +IERhdmlz 15310 +IE5hdnk= 15311 +IGNvbXB0 15312 +b3BsZXM= 15313 +IGVzdGF2YQ== 15314 +6KU= 15315 +IHNjYWw= 15316 +IHByZXNlcnZl 15317 +IE9wcA== 15318 +IHByYWN0aWNhbGx5 15319 +IG1hZ25pdHVkZQ== 15320 +IGZpdHRpbmc= 15321 +IGNvb3JkaW5hdGU= 15322 +IGZ1cm5pdHVyZQ== 15323 +IEZhbWls 15324 +IGV4cGxvc2lvbg== 15325 +IGRvY3VtZW50YXJ5 15326 +IFNjcmlwdA== 15327 +IHBvcnRyYXk= 15328 +bWF0 15329 +IHNjaGVkdWxlZA== 15330 +IGR5bmFtaWNz 15331 +cGh5 15332 +YWt5 15333 +IFVJ 15334 +Q2hl 15335 +IGNvbnRpbnVvdXNseQ== 15336 +IFByb3Y= 15337 +0YPQtw== 15338 +cmFo 15339 +IGdlcm5l 15340 +cHJvb2Y= 15341 +IHNlY3JldGFyeQ== 15342 +IFBhdHJlb24= 15343 +c2NyZWFt 15344 +IEtpZHM= 15345 +4buTaQ== 15346 +IGtn 15347 +IHVuY2VydGFpbnR5 15348 +INC60LDQttC0 15349 +IG1pdGln 15350 +IHJlYWRz 15351 +IFJ1 15352 +IHByaWVzdA== 15353 +INC90LXQtA== 15354 +IGxpbWl0YXRpb25z 15355 +IGZsb2F0 15356 +NjAw 15357 +IFRveQ== 15358 +IEppbW15 15359 +IG9mZmVuc2l2ZQ== 15360 +ZW5p 15361 +IFhp 15362 +IGV5ZWJy 15363 +IFR1cms= 15364 +IGFjY2lkZW50YWxseQ== 15365 +IG9obmU= 15366 +IFNhdWQ= 15367 +OTU= 15368 +IER1dGNo 15369 +0LDQvdGB 15370 +IFNlYXR0bGU= 15371 +IOuTsQ== 15372 +Y2hlY2s= 15373 +a8SZ 15374 +IGNvbnRyaWJ1dGlvbnM= 15375 +IGJlc2lkZQ== 15376 +IHF1aW5kaQ== 15377 +IGZsZXc= 15378 +2LDYpw== 15379 +IExP 15380 +IHdhaXN0 15381 +IEVW 15382 +IGhvbGlkYXlz 15383 +am9u 15384 +IG1pc3VuZGVy 15385 +0Y/QvQ== 15386 +IGJvdXQ= 15387 +IGRpbWlu 15388 +4bq9 15389 +w7Ns 15390 +IEdyYWNl 15391 +IGlucHV0cw== 15392 +IGRlbnk= 15393 +IGZvcm1pbmc= 15394 +IEJpbGQ= 15395 +IGFkZXF1 15396 +IGZvbGs= 15397 +IHJlamVjdGVk 15398 +c2VtYg== 15399 +IGZydXN0cmF0ZWQ= 15400 +b3Blbg== 15401 +IEJldHRlcg== 15402 +aWxvbg== 15403 +IHRvd2Vs 15404 +IGRpZmZlcmVudGlhbA== 15405 +IHNhY3JlZA== 15406 +IHNhaWw= 15407 +ZW50aW1lcw== 15408 +IGdlbnRsZW1hbg== 15409 +IGljb25pYw== 15410 +IGNvbXBhcmluZw== 15411 +IHNhZ3Q= 15412 +IHRleHRz 15413 +IGdyYW5kbWE= 15414 +IHJvbGxz 15415 +IGNvbnRlbnRz 15416 +0L7RgdGB 15417 +IHN1c3BlbnNpb24= 15418 +cm9pdA== 15419 +prw= 15420 +IGFzc2V6 15421 +IGRvcnQ= 15422 +IE1hdGg= 15423 +IFZpY3Rvcg== 15424 +IEphdmFTY3JpcHQ= 15425 +IGVuaGFu 15426 +xZk= 15427 +IEJ1c2g= 15428 +IHByb21vdGlvbg== 15429 +IGtpbg== 15430 +IG1vbnN0ZXJz 15431 +IENvbG9yYWRv 15432 +IM6y 15433 +7ZW07JqU 15434 +aWZmZXJlbnQ= 15435 +IG5ha2Vk 15436 +IHByb2Q= 15437 +ZXRpY3M= 15438 +IFdvbWFu 15439 +IHRyZWF0bWVudHM= 15440 +IGVzdG95 15441 +dsOp 15442 +IGxpZnRpbmc= 15443 +IHlhcHQ= 15444 +IFJvYmVy 15445 +IOy5nA== 15446 +IHN1YnN0aXR1dGU= 15447 +YWt1 15448 +cmlkZ2U= 15449 +IOqxsOs= 15450 +IHJlc3BvbmRlZA== 15451 +IGLDqQ== 15452 +IEVuZ2luZWVy 15453 +IHRyYW5zZmVycmVk 15454 +67I= 15455 +IGhhYmVy 15456 +b29w 15457 +IFdF 15458 +IHZlc3Q= 15459 +IGZvcnR5 15460 +IERT 15461 +IDIwMDQ= 15462 +IGNvYWNoaW5n 15463 +bm9t 15464 +IEJhYg== 15465 +IG5vc3Nh 15466 +IEpha2U= 15467 +IGd5 15468 +IGRlbGVn 15469 +IOyeoA== 15470 +INC60YDQsNGB 15471 +IHN0YW5kcG9pbnQ= 15472 +IGRpc2Fk 15473 +IGFydHdvcms= 15474 +QWQ= 15475 +aWxsbw== 15476 +IMSRxrDhu6Nj 15477 +IFByb20= 15478 +IExpYg== 15479 +IGNyaXRpY2lzbQ== 15480 +IGNvbnRhY3Rz 15481 +0YDQsNC8 15482 +IGFjaGlldmVtZW50 15483 +0JTQsA== 15484 +IGRpc3NvbA== 15485 +IFZlZ2Fz 15486 +IHN0cmVhbXM= 15487 +IEtlbnQ= 15488 +INi52YTZiQ== 15489 +IHJhZGl1cw== 15490 +IHN1Y2tz 15491 +IEFjaA== 15492 +IGZp 15493 +b3VzdA== 15494 +INC70Y7QtNC4 15495 +IHBhbGV0dGU= 15496 +IEhheg== 15497 +IEFudGhvbnk= 15498 +IHRlbWE= 15499 +IENvcw== 15500 +IHNhZmVy 15501 +zrHPgg== 15502 +IGNvbnRyYWQ= 15503 +IG1haW9y 15504 +IGluZmxhdGlvbg== 15505 +IFNpbHZlcg== 15506 +IGF0dGVuZGluZw== 15507 +7ZWc7YWM 15508 +YXJ0bw== 15509 +IGFwcGxhdWRpbmc= 15510 +IGNvbXB1dGluZw== 15511 +IEhhdA== 15512 +5rs= 15513 +a25vdw== 15514 +bWFrZXJz 15515 +IGNvbm9j 15516 +IGVkdWNhdGVk 15517 +IG1vZGlmaWVk 15518 +IGluY2x1c2lvbg== 15519 +bWVudGFs 15520 +npA= 15521 +aXNpYQ== 15522 +IM+Azr/PhQ== 15523 +IGF1bg== 15524 +IElyZWxhbmQ= 15525 +IGvDtg== 15526 +IGNvbXBsaWFuY2U= 15527 +IGluc3BpcmluZw== 15528 +0LjRgtC10LvRjNC90L4= 15529 +IGRpc3Bvcw== 15530 +7LCo 15531 +IHdpcA== 15532 +cmljYWw= 15533 +cmF3ZA== 15534 +IHRyZXM= 15535 +IG1vYmls 15536 +b2x1dGlvbnM= 15537 +Qk8= 15538 +IGJvdW5jZQ== 15539 +IGFzc3VtZWQ= 15540 +IE1lZGljYWw= 15541 +IGZpc2NhbA== 15542 +IG5nxrDhu51p 15543 +aXRpb25hbGx5 15544 +IHN0b2xlbg== 15545 +IEJN 15546 +IG1lY2hhbmlzbXM= 15547 +zrXOrw== 15548 +IHF1YWxpZmllZA== 15549 +IOyekOs= 15550 +dWdodGVycw== 15551 +IEhJVg== 15552 +IExvdHM= 15553 +IHNlcnZlcnM= 15554 +IGNhcnI= 15555 +IFRvZ2V0aGVy 15556 +IGF0dHJhY3RlZA== 15557 +IGty 15558 +dGh1cg== 15559 +aW5pbg== 15560 +IEhhbGY= 15561 +yJs= 15562 +IFBhcA== 15563 +IHJlbWluZGVk 15564 +QUxM 15565 +IGhlbG1ldA== 15566 +IGJvdHRsZXM= 15567 +IHByb2Zlc3NvcnM= 15568 +IHNlaW5l 15569 +xYLEhQ== 15570 +IOqxsOyVvA== 15571 +INei15w= 15572 +ZnVu 15573 +IEJpcmQ= 15574 +IGZpZ2h0ZXI= 15575 +IOuUsOs= 15576 +IFRvb2w= 15577 +IHRpbg== 15578 +aW5vaXM= 15579 +67aE 15580 +15nXnw== 15581 +IENBUg== 15582 +aXJzdHk= 15583 +IG91dGRvb3I= 15584 +IE5T 15585 +44WO 15586 +ZmZlbg== 15587 +IGx1ZA== 15588 +SGVsbG8= 15589 +IHJvbGxlcg== 15590 +aWVsZQ== 15591 +IFBvbGFuZA== 15592 +IGFwYQ== 15593 +ZXhw 15594 +IGNlcnRpZmljYXRl 15595 +IFRvd24= 15596 +0LDRjtGC0YHRjw== 15597 +aWxkZQ== 15598 +IGRldGVybWlu 15599 +UFI= 15600 +IGZyZWV6ZQ== 15601 +IG1haW5zdHJlYW0= 15602 +IG9iamVjdGl2ZXM= 15603 +Ymxv 15604 +IHRha2ll 15605 +IOuwlOuhnA== 15606 +ZWxldA== 15607 +IElW 15608 +IEZhc3Q= 15609 +IGRlcmU= 15610 +ZW1w 15611 +IERyYQ== 15612 +IOyeiOyXiA== 15613 +IGRpc2NyaW1pbmF0aW9u 15614 +IM61zq/Ovc6xzrk= 15615 +bmVjZXNz 15616 +5q4= 15617 +xLHEn8Sx 15618 +IHBvc3Rpbmc= 15619 +d2nFm2NpZQ== 15620 +IGx1Yg== 15621 +IG9saXZl 15622 +IHJpbQ== 15623 +IG1vZGVsaW5n 15624 +IGHDsW8= 15625 +IFBha2lzdGFu 15626 +IG92ZXJs 15627 +IGluZmxhbQ== 15628 +TkU= 15629 +7JeQ6rKM 15630 +IGF0dGVuZGVk 15631 +IGRlYWx0 15632 +IEFsdA== 15633 +IExpbmNvbG4= 15634 +IGF3YWtl 15635 +IGZpbHRlcnM= 15636 +IFdpdGhpbg== 15637 +Y3p5d2nFm2NpZQ== 15638 +IHPDuw== 15639 +IEpvaG5ueQ== 15640 +IGludGVncml0eQ== 15641 +IGlzb2xhdGlvbg== 15642 +IEVhc3k= 15643 +INC/0YDQuNC9 15644 +IEFsaWNl 15645 +IHNtaWxpbmc= 15646 +ZW5peA== 15647 +LC4uLg== 15648 +zrY= 15649 +IGJlZ3Vu 15650 +IGpld2Vs 15651 +IGNvbnZlbnRpb25hbA== 15652 +IHN0YXRpc3Q= 15653 +IGhhbmRlZA== 15654 +IGlycmU= 15655 +IHByb2hpYg== 15656 +IHNhdGVsbGl0ZQ== 15657 +IEluZHVzdA== 15658 +IHRyYWdlZA== 15659 +IHRyYXZh 15660 +IGlobQ== 15661 +IGNydWVs 15662 +IEFnb3Jh 15663 +IERvYw== 15664 +IHpvbmVz 15665 +IG1hbGw= 15666 +IHRyYXk= 15667 +15XXoA== 15668 +IGlycml0 15669 +IGthbnM= 15670 +IEJlYXQ= 15671 +dWRnZQ== 15672 +aWVsbGU= 15673 +IHRydXN0ZWQ= 15674 +IGJpa2Vz 15675 +INGD0L8= 15676 +IE1lbWJlcg== 15677 +d2ljaw== 15678 +IGNyZWF0b3Jz 15679 +IGhlcml0YWdl 15680 +aW5kaXN0aW5jdA== 15681 +IHJlc3Vy 15682 +ZW5uZW4= 15683 +Q29tZQ== 15684 +IGZpcmluZw== 15685 +IEJ1ZW5v 15686 +INCi0L4= 15687 +aWthbg== 15688 +ZXR0ZXM= 15689 +IGtlcw== 15690 +IHRyaXBz 15691 +IGRpdm9yY2U= 15692 +IEts 15693 +IGNvbnNvbA== 15694 +a2VlcA== 15695 +6riw6rCA 15696 +IFJlcG9ydA== 15697 +IGhvc3Rpbmc= 15698 +IGRpYW1vbmQ= 15699 +IGNvbXBsaWM= 15700 +IGhlbGljb3A= 15701 +IGRlcHVpcw== 15702 +ZHM= 15703 +IENoYW4= 15704 +0Y/Quw== 15705 +IHNjaXNzb3Jz 15706 +aWxhdGlvbg== 15707 +IHByb3BvcnRpb24= 15708 +RVJF 15709 +INmI2KfZhA== 15710 +aW50YQ== 15711 +IG11Y2hhcw== 15712 +dWF0aW9u 15713 +aXRpcw== 15714 +0Y/RiQ== 15715 +IG5paW4= 15716 +IGVtcGhhc2l6ZQ== 15717 +dWVsYQ== 15718 +IHByb2R1Y2Vycw== 15719 +IHJ6ZQ== 15720 +w6RuZGVy 15721 +RVRI 15722 +5ro= 15723 +IGNvbnN0aXR1 15724 +IHBlcmZvcm1hbmNlcw== 15725 +aXN0bGU= 15726 +Z292 15727 +IExpdGVy 15728 +IGluY29ycG9yYXRl 15729 +IGVkdWNhdGU= 15730 +IE5pbg== 15731 +7Kq9 15732 +2YfZhQ== 15733 +ZWxlcmF0aW9u 15734 +15XXkQ== 15735 +IHlhxZ8= 15736 +b3JvdXM= 15737 +IENhcw== 15738 +IGdyYW50cw== 15739 +64ql 15740 +YW1lbA== 15741 +IOq3uOugh+qyjA== 15742 +IEVzdGU= 15743 +0YXQvtC00LjRgg== 15744 +INC/0L7RgdC70LU= 15745 +IGdlbnQ= 15746 +IGZvY3VzZXM= 15747 +YWxpdGllcw== 15748 +IFJo 15749 +67O0 15750 +IERhbmNl 15751 +cnI= 15752 +IGFtZXI= 15753 +IHV0aWxpemU= 15754 +IGzDrQ== 15755 +IEFtb25n 15756 +IHByZWduYW5jeQ== 15757 +IGxvb3Bz 15758 +0LDQu9C+0YHRjA== 15759 +IE1vaA== 15760 +IGNhdGNoaW5n 15761 +IGdsb2I= 15762 +IGFqdWQ= 15763 +IFs/ 15764 +IEFuYWw= 15765 +bG9va2luZw== 15766 +IHN1cmZhY2Vz 15767 +IHByb2dyZXNzaXZl 15768 +IHZpcmFs 15769 +MDg= 15770 +zr4= 15771 +S0E= 15772 +IMW8eQ== 15773 +IHBpY2tz 15774 +YW5ub24= 15775 +IGJ1bGs= 15776 +IFJvc3M= 15777 +IGRlc2NyaWJpbmc= 15778 +IEdlbA== 15779 +IGxvY2FsbHk= 15780 +IGVuZGxlc3M= 15781 +IG1hc3NhZ2U= 15782 +IGNsZWFuZWQ= 15783 +IHRyYXZlbGVk 15784 +0LXQvdGL 15785 +IHNlbnRpbWVudA== 15786 +aWdtYQ== 15787 +IE5hcw== 15788 +IGNoZW1pY2Fscw== 15789 +IHJpZ2h0ZW91cw== 15790 +IE1hZ2lj 15791 +IHJlbGF0ZXM= 15792 +IHRydWNrcw== 15793 +IDE5NjA= 15794 +IGFwcGV0 15795 +IHNuYWNrcw== 15796 +IFN1bW1lcg== 15797 +IHnDvHo= 15798 +IHByaXM= 15799 +IE1leGljYW4= 15800 +IHRyYW5zcGFyZW4= 15801 +IG1pbm9yaXR5 15802 +IHZlcnRl 15803 +IGxhc3Nlbg== 15804 +NDY= 15805 +0LvQtdC6 15806 +w6lw 15807 +INGE0LjQu9GM 15808 +IGl5aQ== 15809 +IHNwYW4= 15810 +7ZWY7KeA 15811 +IGluZGljYXRlZA== 15812 +cXVhcg== 15813 +IHNjaG9sYXJzaGlw 15814 +IExHQlQ= 15815 +IGhpc3RvcmljYWxseQ== 15816 +w7PFgg== 15817 +IG1pbmlzdA== 15818 +IHBlbmV0 15819 +IFJhcA== 15820 +IGNvbnNlcnZhdGlvbg== 15821 +IEhvbmV5 15822 +IEJlaQ== 15823 +aWRlbA== 15824 +IHJlc3BvbnNpYmlsaXRpZXM= 15825 +IG1lc3N5 15826 +IEV4Y2VwdA== 15827 +T1JF 15828 +IGluaXRpYXRpdmVz 15829 +IGp1bmlvcg== 15830 +IGRlc2lnbmVycw== 15831 +IGV4cGxvcmF0aW9u 15832 +IHNwb25zb3I= 15833 +IG1vYmlsaXR5 15834 +IGludGVn 15835 +bGFuZG8= 15836 +IGJhcms= 15837 +IGluZGljYXRlcw== 15838 +4LY= 15839 +IGVtcGxveWVy 15840 +IGNvdXNpbg== 15841 +IGJvaWxpbmc= 15842 +IGNocm9t 15843 +IMOnYWw= 15844 +IHBlcnBldA== 15845 +IGNvbnRhaW5lZA== 15846 +IHBhcmtz 15847 +0Ks= 15848 +IEVuZ2luZWVyaW5n 15849 +UGxlYXNl 15850 +IFN0YXJ0aW5n 15851 +aGVybw== 15852 +IGxhd3llcnM= 15853 +IHpk 15854 +IGZyYW5jaGlzZQ== 15855 +cmFnZQ== 15856 +IGludHVpdA== 15857 +IEdM 15858 +cmVhY2g= 15859 +IEVsbGU= 15860 +IG5oxrA= 15861 +IE5vcmQ= 15862 +IGJlYW4= 15863 +MDc= 15864 +IHBsZWFzYW50 15865 +dmlyb24= 15866 +IGdyYWRpZW50 15867 +enVz 15868 +IEVN 15869 +IGVzc2F5 15870 +7JeQ7JqU 15871 +4bq/bg== 15872 +bnU= 15873 +4bur 15874 +IMOJcw== 15875 +IGRlbm9taW4= 15876 +IEdpcmxz 15877 +IHBlcnNvbm5lcw== 15878 +INin2YTYow== 15879 +YmlsZA== 15880 +IFN0YXQ= 15881 +IGNvbXBsaW1lbnQ= 15882 +IEthdGU= 15883 +IG9wdGltYWw= 15884 +IGhpZA== 15885 +2K/Zig== 15886 +IHF1aWNrZXI= 15887 +d2FsbA== 15888 +RW4= 15889 +SU5F 15890 +Pz8/ 15891 +7LK0 15892 +IEFjdGlvbg== 15893 +5Z8= 15894 +IHBlbmFsdHk= 15895 +IEtheg== 15896 +Jz8= 15897 +IGNyaWVk 15898 +IGNhbnZhcw== 15899 +ZnRl 15900 +IGV4Y2x1ZA== 15901 +uOuhnA== 15902 +IGVtcGhhc2lz 15903 +IGVuenk= 15904 +IEhvdQ== 15905 +IG92ZXJzZWFz 15906 +w61hbW9z 15907 +w7ZnbGljaA== 15908 +IGhlYWRwaG9uZXM= 15909 +Y24= 15910 +IEFnZQ== 15911 +IGFrYW4= 15912 +IGNoYXJhY3RlcmlzdGlj 15913 +7ZWY66m0 15914 +Z2V0cw== 15915 +IOu2iA== 15916 +IHJpdmFs 15917 +IGJvcmRlcnM= 15918 +ZW1lbnRl 15919 +ZW3DoXM= 15920 +IHlvbA== 15921 +IGNvbXBl 15922 +ZW5kZXJz 15923 +xLFuZGFu 15924 +IG3DtmdsaWNo 15925 +IGJ1YmJsZXM= 15926 +bmF0dXJhbA== 15927 +IGFybWVk 15928 +IGVsYWJvcg== 15929 +IOydtOuyiA== 15930 +IHdhc2hlZA== 15931 +zr/Phc68zrU= 15932 +IGZsYXZvcnM= 15933 +IGV4aXN0ZQ== 15934 +IHByZXN0 15935 +IFRoZW1h 15936 +0L7Qv9GA0L7RgQ== 15937 +ZXJvbg== 15938 +VUU= 15939 +ZXJp 15940 +IGNvbmNlcg== 15941 +IGFpeMOy 15942 +IHByb3RlY3RpdmU= 15943 +INC30L3QsNGO 15944 +IOuCoA== 15945 +IElJSQ== 15946 +IG1lZXI= 15947 +IFNob3A= 15948 +bGxp 15949 +IE9yZGVy 15950 +IE1Z 15951 +IEdob3N0 15952 +YWRlbA== 15953 +IHN0b2xl 15954 +IHJlbGVhc2luZw== 15955 +IENvbW1lbnQ= 15956 +IHRyYWlucw== 15957 +66qF 15958 +IHdpc3Nlbg== 15959 +ZW5zZWQ= 15960 +IGRlc2NlbmQ= 15961 +IGZpZXI= 15962 +IHJhZGk= 15963 +IHBlcnN1 15964 +56I= 15965 +INC80L0= 15966 +IERlc3Q= 15967 +IHdvcnJpZXM= 15968 +aXRldA== 15969 +YmFz 15970 +IHN0YWI= 15971 +bmFtZQ== 15972 +b3JpYw== 15973 +IENsb3Nl 15974 +IGFsdW1uaQ== 15975 +IFNlbGY= 15976 +ZmZl 15977 +aXRhdGluZw== 15978 +YXRoZXJpbmU= 15979 +IFJpZ2h0cw== 15980 +IGVsbG9z 15981 +IHdhcnJhbnQ= 15982 +IG5lcnZl 15983 +IHZlZ2V0YWJsZQ== 15984 +IFRlaWw= 15985 +IOqwmeydtA== 15986 +Ulk= 15987 +IHN1c3RhaW5hYmlsaXR5 15988 +IHN0ZWh0 15989 +IGJyaWQ= 15990 +YWRhxZ8= 15991 +IHR2 15992 +IGR1cmF0aW9u 15993 +IHBlc3NvYQ== 15994 +IG1ldHJpY3M= 15995 +IGFkYW0= 15996 +Y2Fz 15997 +0LDRgNC4 15998 +IGV2aWRlbnQ= 15999 +IGRpc3BsYXllZA== 16000 +2KfYpg== 16001 +IHJlY2s= 16002 +IEJ1ZGRoYQ== 16003 +IGRlbGU= 16004 +IERpZWdv 16005 +b3NwaA== 16006 +IGJsYQ== 16007 +IE1paw== 16008 +dWxhdG9y 16009 +IDIwMDE= 16010 +IHByb21vdGluZw== 16011 +eWNo 16012 +IEVY 16013 +IGxhc3RseQ== 16014 +IG91dGxpbmU= 16015 +IHNwaXJpdHM= 16016 +IHZldXg= 16017 +IHN1YnRyYWN0 16018 +IMWfaW1kaQ== 16019 +IHBpbnM= 16020 +IGJ1cmdlcg== 16021 +IG1vbHRv 16022 +IGhhYsOtYQ== 16023 +IOuwmA== 16024 +aWd1 16025 +ZXJzdA== 16026 +IG5lbg== 16027 +IGJhY29u 16028 +aXRpb3Vz 16029 +IGNhcnJpZXM= 16030 +IHByb21pc2Vz 16031 +bmRl 16032 +IExlZnQ= 16033 +IExpbQ== 16034 +5qM= 16035 +IDQ0 16036 +IGNhcmVlcnM= 16037 +IOyjvOs= 16038 +IHNwZWVkcw== 16039 +cXXDqQ== 16040 +bWFk 16041 +bWFya2V0 16042 +aXNtZQ== 16043 +IDIwMDM= 16044 +IHJlY2Vzcw== 16045 +IEpVRA== 16046 +IHJhY2lzdA== 16047 +IFNjaGw= 16048 +IHBhcmxlcg== 16049 +IG90cm9z 16050 +aXNoZXM= 16051 +IGNvbnZlcnRlZA== 16052 +YWFhYQ== 16053 +0LDQvdC40Lg= 16054 +IEFyaw== 16055 +IENoYW5jZQ== 16056 +IGVsZW1lbnRhcnk= 16057 +zrXOvQ== 16058 +aW5rcw== 16059 +SW50ZXJ2aWV3ZXI= 16060 +IGZyZWVseQ== 16061 +YWxhaA== 16062 +IOuLpOuluA== 16063 +IHJlcXVlc3RlZA== 16064 +IHRvcnF1ZQ== 16065 +bm/Fm2Np 16066 +b3VyZWQ= 16067 +IFN0YWZm 16068 +IHN0YWlu 16069 +IEFsYW4= 16070 +IHZlcmU= 16071 +IFdpbnRlcg== 16072 +IGRlZmVjdA== 16073 +aWVkeQ== 16074 +IGJlYXRz 16075 +IGjDoQ== 16076 +dW1u 16077 +b29ucw== 16078 +aXR1ZGVz 16079 +IHNlaXQ= 16080 +b2x5 16081 +IHJlc2Vydg== 16082 +IGV4dHI= 16083 +IHBoeXNpY2lhbg== 16084 +dmlzb3I= 16085 +IGhhbmRmdWw= 16086 +IE5hdGlvbnM= 16087 +IOyii+ydgA== 16088 +dWNjZXNz 16089 +IHVwc3RhaXJz 16090 +IFNxdWFyZQ== 16091 +IGhlaW4= 16092 +IFNlYXNvbg== 16093 +b2xpcw== 16094 +IHByaW5jZQ== 16095 +IGRlZmVuc2l2ZQ== 16096 +570= 16097 +INC80LXRgdGC 16098 +0ZbQuQ== 16099 +INin2YY= 16100 +dW1ibGU= 16101 +6rmM7JqU 16102 +IGFzc2Fzcw== 16103 +IGNpcmN1bGFy 16104 +IHF1YWxpdGllcw== 16105 +IGhtbQ== 16106 +IGJsb3du 16107 +IExpeg== 16108 +IEt1cg== 16109 +IFNB 16110 +IGZpbmRpbmdz 16111 +IGNvbG91cnM= 16112 +IGRlbGxl 16113 +IElS 16114 +IEF0aA== 16115 +IER1Yg== 16116 +IE94 16117 +INiu 16118 +IHBvY2tldHM= 16119 +IGdyaWxs 16120 +IHN3aXRjaGluZw== 16121 +IHByZWZlcnJlZA== 16122 +IFdhbGVz 16123 +IGV4ZW1wbG8= 16124 +IGNob3BwZWQ= 16125 +IHZhY2NpbmF0aW9u 16126 +IG5ldXJv 16127 +IHNwZWNpZnk= 16128 +aXZvcw== 16129 +IHNlcsOh 16130 +IHppZQ== 16131 +IOCurg== 16132 +IHJlc3VsdGluZw== 16133 +IFVnaA== 16134 +IG1lc3NlZA== 16135 +Q0Q= 16136 +IHBhYXI= 16137 +IGNvbWVy 16138 +IGNvdWNo 16139 +IEZlc3RpdmFs 16140 +IDQ5 16141 +dm91cw== 16142 +emVucw== 16143 +IEtlbm5lZHk= 16144 +IFRz 16145 +IOuztOyX 16146 +IGRlbW9uc3RyYXRpb24= 16147 +IHVudG8= 16148 +IGZydXN0cmF0aW5n 16149 +IGxhYm9yYXRvcnk= 16150 +IGVneQ== 16151 +IGJlYXV0aWZ1bGx5 16152 +IOyerOs= 16153 +IGFsZ3U= 16154 +IMO2eWxl 16155 +IFBI 16156 +IGZvcnR1bmU= 16157 +IGNsZWFuZXI= 16158 +IFJvYmlu 16159 +IHNhdXM= 16160 +IEdlbGQ= 16161 +IGthdA== 16162 +b2Jz 16163 +IG9sdXI= 16164 +IG1hdHQ= 16165 +IHF1ZXN0YQ== 16166 +IHN1Z2dlc3Rpb24= 16167 +ZW5jZXI= 16168 +0L7RgdGC 16169 +IHJhZGFy 16170 +IOyeoQ== 16171 +aXNoYQ== 16172 +4K6o 16173 +amVz 16174 +IHZlZWw= 16175 +7IKw 16176 +IGF1dGhvcnM= 16177 +44CO 16178 +cGxhbg== 16179 +IGNvbGxhYm9yYXRpdmU= 16180 +IGluc3RpbmN0 16181 +IGZhcm1pbmc= 16182 +YXVnZQ== 16183 +RWR1 16184 +IG1lbWJlcnNoaXA= 16185 +IHNpbXVsdGFuZW91c2x5 16186 +IGJha2U= 16187 +IGvDpA== 16188 +IGxlY3R1cmVz 16189 +0YfQtdGB 16190 +IHByZW5kcmU= 16191 +IGNvbGxhcHM= 16192 +IFNheWE= 16193 +IEZ1dA== 16194 +IHlvZw== 16195 +IFJhdGhlcg== 16196 +2LHZig== 16197 +IGNhbXBz 16198 +0L7Qu9C+0LQ= 16199 +IHNpbXVsYXRpb24= 16200 +IE1haw== 16201 +TGF1Z2hz 16202 +IGdyZXk= 16203 +IHNlbnRlbmNlcw== 16204 +eWVu 16205 +IFVubGVzcw== 16206 +SmU= 16207 +IFNhdGFu 16208 +INGC0LDQutC20LU= 16209 +IE5B 16210 +IGJyb24= 16211 +ID9d 16212 +IHNvdWxz 16213 +IGxpZ2h0bmluZw== 16214 +IGltYWdpbmVk 16215 +IGN6eWxp 16216 +cHNpbG9u 16217 +ZXR0YQ== 16218 +IGJlbGlldmluZw== 16219 +IHN0cm9uZ2VzdA== 16220 +IENPTg== 16221 +IHF1ZWxxdWVz 16222 +IGltbWlncmFudHM= 16223 +IHdhbGxldA== 16224 +IEplcnNleQ== 16225 +IGltcGxpY2F0aW9ucw== 16226 +IGZvcmI= 16227 +44CP 16228 +IHVuYmVsaWV2YWJsZQ== 16229 +2KfYoQ== 16230 +IG9wZXJhdGlvbmFs 16231 +w7xz 16232 +IEdN 16233 +IOq3uOufsOuNsA== 16234 +IGdyYWNpYXM= 16235 +IGVudGVuZA== 16236 +IFJlZ2FyZA== 16237 +cm9i 16238 +INGC0LXRhQ== 16239 +6I8= 16240 +IFJldm9sdXRpb24= 16241 +IHdhYXI= 16242 +IEJpeg== 16243 +dGhlbGVzcw== 16244 +IHNwb25zb3JlZA== 16245 +cXVpZXI= 16246 +IOydvOs= 16247 +IHRlaw== 16248 +IOuQoA== 16249 +aWdrZWl0 16250 +IEx1Y2s= 16251 +IENlcnRhaW5seQ== 16252 +IHRvbGw= 16253 +INC90LjRh9C10LPQvg== 16254 +IE1vbmV5 16255 +INGB0YLQvtGA 16256 +IERvdWJsZQ== 16257 +IFdvbGY= 16258 +IGNodW5r 16259 +zqzOvQ== 16260 +aXTDqXM= 16261 +b25pbmc= 16262 +TWFy 16263 +IGdyYW5kZXM= 16264 +IGNvbGxlY3Rpb25z 16265 +IEV1cm9wYQ== 16266 +INCw0YA= 16267 +IOKAi+KAi+KAiw== 16268 +IOq3uOufrOuptA== 16269 +INC+0LHRig== 16270 +IOyLnOqwhA== 16271 +IEN1c3RvbQ== 16272 +IOyymA== 16273 +0ZbQu9GM 16274 +IGluZGl2aWR1YWxseQ== 16275 +7Zc= 16276 +IGRvemVu 16277 +IG93ZQ== 16278 +IFZpY3Rvcmlh 16279 +IGJlZXQ= 16280 +dXJi 16281 +IGFuYWxvZw== 16282 +acOnw6Nv 16283 +gpw= 16284 +c29ldmVy 16285 +IG1vZG8= 16286 +IHN1YnNjcmliZWQ= 16287 +7J6s 16288 +IGVudGl0aWVz 16289 +IGNsb3NldA== 16290 +IHJlc3BvbmRpbmc= 16291 +IHByaW50ZXI= 16292 +IFN0ZXBoYW4= 16293 +IGJ5xYI= 16294 +IERvbQ== 16295 +IEZlcm4= 16296 +IFBpZXI= 16297 +IHdpxJlj 16298 +IGhlbmNl 16299 +IG1vZHVsZXM= 16300 +IOuUsQ== 16301 +IERhbm55 16302 +INGB0LXQsdC1 16303 +IHZhZA== 16304 +IOyXhA== 16305 +IHNvdXM= 16306 +IHNwaGVyZQ== 16307 +Qlk= 16308 +IFBlZA== 16309 +aWduZWQ= 16310 +IHdoZWF0 16311 +IHVuZGVycw== 16312 +IGV2b2x2ZQ== 16313 +IGRlY2xhcg== 16314 +IGxpZ2h0bHk= 16315 +IGlkZW50aWZ5aW5n 16316 +IGxlZ2VuZGFyeQ== 16317 +IGdlbnVpbmU= 16318 +IGdyaW5k 16319 +IFVuZQ== 16320 +Z2ViZW4= 16321 +IGJpY3k= 16322 +IGp1bXBz 16323 +IHByb3ZpbmNl 16324 +emnEmQ== 16325 +INeQ16DXmQ== 16326 +IGhvYw== 16327 +INCx0Ls= 16328 +IEdyYWQ= 16329 +IHJldmVuZ2U= 16330 +INin2YTYqg== 16331 +b29o 16332 +0LDRhtC40Lg= 16333 +IGVsZWN0cm8= 16334 +IOuQkA== 16335 +IGZhbHM= 16336 +cmllbA== 16337 +b2tlcg== 16338 +IEV4Y2VsbGVudA== 16339 +IE1vcmdhbg== 16340 +IGJyaWNr 16341 +IHN1YnN0YW50aWFs 16342 +IHBvbGx1dGlvbg== 16343 +IFTDvHI= 16344 +IEV2ZXQ= 16345 +IGx1bmc= 16346 +15nXqQ== 16347 +b21tZXM= 16348 +IHJlYWxpemluZw== 16349 +IGh1bWJsZQ== 16350 +IExvY2s= 16351 +IGJvZA== 16352 +IOyWuA== 16353 +IHBlZXJz 16354 +dXp6 16355 +IGVtYmVkZGVk 16356 +IGNsYXJv 16357 +IGFnZ3JlZw== 16358 +IGVtcGxveWVycw== 16359 +IFJhag== 16360 +IFlp 16361 +IGpldQ== 16362 +YXRlcnM= 16363 +IHN0cmlrZXM= 16364 +bm9z 16365 +YXV0cmVz 16366 +ZHI= 16367 +b3BoZXI= 16368 +IEFwcGFyZW50bHk= 16369 +7ZiE 16370 +IGluZmFudA== 16371 +2KfYqA== 16372 +0YLRiw== 16373 +7Zs= 16374 +2q8= 16375 +IHJlZGVz 16376 +YWNhxJ/EsW0= 16377 +IERBVklE 16378 +IENoaWNrZW4= 16379 +IHBlcnNwZWN0aXZlcw== 16380 +IHZpZXdlcg== 16381 +IHNoYXI= 16382 +INC/0YDQvtC40Lc= 16383 +bGlndA== 16384 +ZXJvcw== 16385 +aXRhYmxl 16386 +0LjQu9C+0YHRjA== 16387 +IGRpZsOt 16388 +tOuNsA== 16389 +IHJldGlyZWQ= 16390 +IHRoYXRz 16391 +emVuaWU= 16392 +YmVpdGVu 16393 +IG15Y2tldA== 16394 +IFJhYg== 16395 +IGluZmxhbW0= 16396 +7LCu 16397 +IGR1bQ== 16398 +IGRhZGR5 16399 +IGltbWVycw== 16400 +IHBsYXlsaXN0 16401 +4K+G 16402 +IHRyYXVt 16403 +IHJlZnVzZQ== 16404 +c3RlcA== 16405 +4K6a 16406 +Y3Vw 16407 +IHBvcHM= 16408 +cmltaW4= 16409 +YXnEsW0= 16410 +IGFsZA== 16411 +IHVubmVjZXNz 16412 +IGRhaA== 16413 +IElyaXNo 16414 +IGNvbXBy 16415 +bGHFnw== 16416 +VFA= 16417 +IHRyYW5zbGF0ZWQ= 16418 +U2M= 16419 +Y2XEn2lt 16420 +tJA= 16421 +IGRyZWk= 16422 +INC70Y7QtNC10Lk= 16423 +IHF1aWVybw== 16424 +IGhlbGU= 16425 +emxpY2g= 16426 +IGFwcGxlcw== 16427 +IGRpc3RyaWN0cw== 16428 +IGNyZWRpdHM= 16429 +IGFzcA== 16430 +IOuLqA== 16431 +b3JhbA== 16432 +IHN0ZXBwaW5n 16433 +IFZh 16434 +IGdhaW5z 16435 +NjU= 16436 +IG51ZXN0cmE= 16437 +ZWRheQ== 16438 +YXNzYWRvcg== 16439 +IExpbmQ= 16440 +IGNyb3Bz 16441 +Y2llbmRv 16442 +aWd1ZQ== 16443 +IGJhbmE= 16444 +QW0= 16445 +IHBlbnQ= 16446 +IGFkZGljdGlvbg== 16447 +IHBhY2thZ2luZw== 16448 +w6Rk 16449 +qqg= 16450 +IHBlcnF1w6g= 16451 +IGNhbXBhaWducw== 16452 +IHN0ZWVw 16453 +IG5ldWU= 16454 +IGVtYmFycmFzc2Vk 16455 +IGRpc3RpbmN0aW9u 16456 +aXR6ZXI= 16457 +IHJlZ2lzdHJhdGlvbg== 16458 +IGxsYW0= 16459 +IEFsbWlnaHR5 16460 +bGllc3Q= 16461 +IHV6 16462 +bmFr 16463 +57o= 16464 +IHRlcmF6 16465 +aWFtZW50ZQ== 16466 +IHRyYW5zYWN0aW9ucw== 16467 +IGPDtHQ= 16468 +IHN3aXRjaGVk 16469 +IGNvbWJv 16470 +IHByYXllcnM= 16471 +IGludGVybnNoaXA= 16472 +IGFkZHJlc3Nlcw== 16473 +IGNoYXJpdHk= 16474 +IFdPTw== 16475 +IGJhaXQ= 16476 +IO+/vQ== 16477 +IGZpY2E= 16478 +IFR5bGVy 16479 +YXJ1 16480 +IGF0b21z 16481 +IExldmVs 16482 +INC/0L7RgtC+0Lw= 16483 +IGZhbWU= 16484 +dWxr 16485 +IHRlYWNoZXM= 16486 +IHJlYnVpbGQ= 16487 +0LXQtNGM 16488 +IEluZG9uZXNpYQ== 16489 +dXNoaQ== 16490 +IFNob3J0 16491 +IGVuc3VyaW5n 16492 +ZnM= 16493 +ZWxl 16494 +IG1hcmdpbmFs 16495 +IGNvbmNsdWRl 16496 +YW10 16497 +IHZlcmlmeQ== 16498 +IE1jRG9uYWxk 16499 +IHNrYWw= 16500 +IHJlY29uc3Q= 16501 +IE1hbm4= 16502 +IGJhc2VtZW50 16503 +IHRyYW5zZm9ybWVk 16504 +IG9jY2FzaW9uYWxseQ== 16505 +em9uZQ== 16506 +IERhbnM= 16507 +INC60LDQutC+0Lk= 16508 +IGRpYWdub3NlZA== 16509 +IM+EzrE= 16510 +IGNvbW1hbmRz 16511 +IHByZXNpZGVudGlhbA== 16512 +IGFiYg== 16513 +IGJyYWNrZXQ= 16514 +IExlbQ== 16515 +w6VuZw== 16516 +IGZhdm9yaXRlcw== 16517 +IHJldm9s 16518 +IO2KuQ== 16519 +IGhhcmFzcw== 16520 +6YU= 16521 +IGNsZWFucw== 16522 +c3TDpG5k 16523 +IGtub2NrZWQ= 16524 +IHBlb3BsZXM= 16525 +IG11c2ljaWFucw== 16526 +IG11dHVhbA== 16527 +IENvbGQ= 16528 +ODg= 16529 +emVq 16530 +YXRpZQ== 16531 +IEhvbm9y 16532 +IG9ic2Vzc2Vk 16533 +IE1VU0lD 16534 +IEJyZWFr 16535 +w7puZw== 16536 +IG1vZGlmeQ== 16537 +IHPDtnlsZQ== 16538 +INee15Q= 16539 +IE9ubGluZQ== 16540 +Zm8= 16541 +IE1pbGxlcg== 16542 +IGxpa2luZw== 16543 +IGluaGFi 16544 +IGdyYXRpdHVkZQ== 16545 +IEpvdXJuYWw= 16546 +YXJuZXNz 16547 +Sm9obg== 16548 +IEdpdA== 16549 +IHNpbmNlcmU= 16550 +IFNjaQ== 16551 +IEVsaQ== 16552 +IHN5bWJvbHM= 16553 +IG1hbnVhbGx5 16554 +zrXPgg== 16555 +INCy0ZbQtA== 16556 +IEZhdA== 16557 +IGxhYmVscw== 16558 +IHNvcGhpc3RpY2F0ZWQ= 16559 +dW1wcw== 16560 +IHJlbGVhc2Vz 16561 +IDQ3 16562 +IE9N 16563 +6rCA6w== 16564 +IEJpZW4= 16565 +IFJlZg== 16566 +IFN0YQ== 16567 +IEVnZw== 16568 +IGluZGljYXRvcg== 16569 +cHNvbg== 16570 +IG5hc8SxbA== 16571 +UmlnaHQ= 16572 +IGNvbnZleQ== 16573 +IGtub3Q= 16574 +IGNvbm5lY3Rz 16575 +dWxhcw== 16576 +IHByZWNlZA== 16577 +IGluZXF1YWxpdHk= 16578 +YW1pZW50bw== 16579 +IHJlcGx5 16580 +T1k= 16581 +IGRpc21pc3M= 16582 +IOuQnA== 16583 +INGF0L7RgNC+0YjQvg== 16584 +IG3DqWQ= 16585 +IHJhbmRvbWx5 16586 +IE9udA== 16587 +dWFyZA== 16588 +IHB1bGxz 16589 +INGC0LXQv9C10YDRjA== 16590 +IE5lZWQ= 16591 +IFNvZnQ= 16592 +IHN0cmVuZ3Rocw== 16593 +IGdvZWQ= 16594 +dW1lbg== 16595 +IO2OuA== 16596 +INC00L7QsQ== 16597 +IGNsYXJpdHk= 16598 +IEFp 16599 +IGJhbGxvb24= 16600 +IFBhbmQ= 16601 +IOyVhOuL 16602 +IHNoaW55 16603 +IHNtYWxsZXN0 16604 +b25pYQ== 16605 +aGlsbA== 16606 +b3Rpbmc= 16607 +IGVpbmc= 16608 +IG1lcmVseQ== 16609 +IHNldXM= 16610 +INC90LXQvw== 16611 +IO2GtQ== 16612 +IGd1aWRlcw== 16613 +IHNwZWNpYWxpc3Q= 16614 +IHN0ZWFr 16615 +IG1pZ3JhdGlvbg== 16616 +cXVlbGU= 16617 +IHJ1aW5lZA== 16618 +IHB1cHA= 16619 +IGtlbmQ= 16620 +YW5nYW4= 16621 +IHBhbG0= 16622 +IHVuZmFpcg== 16623 +IHpt 16624 +IERW 16625 +Y2hlc3Rlcg== 16626 +0LjRjg== 16627 +IG9vaA== 16628 +ZXJn 16629 +QVRI 16630 +sKk= 16631 +cmlzb24= 16632 +IGludm9sdmluZw== 16633 +IHBhcnRseQ== 16634 +YW7Dp2Fpcw== 16635 +IHZvdw== 16636 +IHByb21pbmVudA== 16637 +IGNyeXN0 16638 +aWJh 16639 +IGRlc2VydmVz 16640 +IG92ZXJ0 16641 +IHNlbnNpdA== 16642 +IFdoZQ== 16643 +IHRpZ2h0ZW4= 16644 +IGludGltaWQ= 16645 +IGFsaW1lbnQ= 16646 +d2lsbA== 16647 +IHN0cmVuZ3RoZW4= 16648 +IFRhbg== 16649 +b25p 16650 +IE11bg== 16651 +IHByb3Bo 16652 +IHJlaGVhcnM= 16653 +IEtsZQ== 16654 +IHZlY2Vz 16655 +IHdvbmRlcmVk 16656 +b2tp 16657 +IHNlbnNlcw== 16658 +tOyL 16659 +xrDhu5s= 16660 +IMiZaQ== 16661 +IG11Y2hvcw== 16662 +IHdhdGNoZXM= 16663 +b3J0dW5hdGU= 16664 +IEp1YW4= 16665 +7J6W7JWE 16666 +0YDQtQ== 16667 +ZWk= 16668 +aW9uZW4= 16669 +IGV4cGVyaW1lbnRhbA== 16670 +IGRhdWdodGVycw== 16671 +4Lib 16672 +IG1lbnRhbGx5 16673 +YmVjY2E= 16674 +YXdhcmU= 16675 +7ISd 16676 +IHdoYXRzb2V2ZXI= 16677 +IGVuYWJsZXM= 16678 +IExvdw== 16679 +b2lk 16680 +4LiK 16681 +w7Nk 16682 +2Lo= 16683 +IGNvbnN0cnVjdGVk 16684 +IExhZGllcw== 16685 +IGFjY3VzZWQ= 16686 +INCw0L0= 16687 +RGFu 16688 +IHNwYXdu 16689 +IGNvbnRhaW5lcnM= 16690 +IGFydGlzdGlj 16691 +xLFw 16692 +IGRpc2Ns 16693 +IGF1dHJlcw== 16694 +aW5hcw== 16695 +IE5hdGlvbg== 16696 +IG5hZw== 16697 +YmVhbg== 16698 +d2hl 16699 +nOuPhA== 16700 +IFNlb3Vs 16701 +IO2PrA== 16702 +IE5pY2g= 16703 +IGNvbXBsZW1lbnQ= 16704 +IGludGVydmVu 16705 +IE1vZGVs 16706 +IE9yYW5nZQ== 16707 +bmFtb24= 16708 +IGNhbGN1bGF0aW9u 16709 +c2Vl 16710 +IHVzdGVkZXM= 16711 +IGxlYg== 16712 +IGRvY3Q= 16713 +0ZbQvQ== 16714 +IGZvc3Rlcg== 16715 +IGVsYXN0aWM= 16716 +IEFoaA== 16717 +IGFjZQ== 16718 +IFBpbms= 16719 +IEplZw== 16720 +IGRlZXI= 16721 +c2lz 16722 +IGpha28= 16723 +IEVtbWE= 16724 +0YHRgtCy0LXQvdC90L4= 16725 +IHBvcnRyYWl0 16726 +IG1ha2Vy 16727 +IGF1bWVudA== 16728 +0YDQvtCx 16729 +IGFpcnBsYW5l 16730 +IHRyYW5zcGFyZW5jeQ== 16731 +IGFkanVzdG1lbnQ= 16732 +IENEQw== 16733 +w6dvbg== 16734 +IHVwbG9hZGVk 16735 +INC00LXQudGB0YLQsg== 16736 +INCz0L7RgtC+0LI= 16737 +IGl0ZXI= 16738 +IGN1cnNl 16739 +w7Ru 16740 +bWVyY2U= 16741 +YXJhbg== 16742 +IGxlYWs= 16743 +IGFic2VuY2U= 16744 +0YHQutC40Lk= 16745 +IHJlYWRlcnM= 16746 +YWxlcg== 16747 +IGJlbmVhdGg= 16748 +YW5nbw== 16749 +aGV0aWM= 16750 +IGZpbm5z 16751 +IHBvb3A= 16752 +IGR1cGxpYw== 16753 +SGk= 16754 +aWdz 16755 +b2xvZ2ljYWxseQ== 16756 +b3Bw 16757 +IGRpemVy 16758 +IEFsbGVu 16759 +IGdsaQ== 16760 +IGFjY2VsZXJhdGlvbg== 16761 +IHZpdGFtaW4= 16762 +dsOk 16763 +IEFjY2Vzcw== 16764 +4K6Z 16765 +csOhcw== 16766 +IGFwcHJlY2lhdGVk 16767 +IG5haA== 16768 +IHBvc3Rlcg== 16769 +IHRhbGU= 16770 +IGhpZ2hsaWdodGVk 16771 +xbxlbGk= 16772 +IGJsb2NrY2hhaW4= 16773 +IG1pY3Jvdw== 16774 +IGNpbmVtYQ== 16775 +IENoYW5n 16776 +IFNlYXJjaA== 16777 +dXN0ZXJz 16778 +IFplcm8= 16779 +IERpdmlzaW9u 16780 +0YDQsNGB 16781 +IHNjYXJl 16782 +IGplbGx5 16783 +IEFkbWluaXN0cmF0aW9u 16784 +U08= 16785 +IGxpbmVk 16786 +IOqwhA== 16787 +IGdlYmVu 16788 +IHNvZGE= 16789 +IHdpbm5lcnM= 16790 +s7w= 16791 +2ZI= 16792 +IEFtYg== 16793 +5ZQ= 16794 +IHBlZw== 16795 +NDM= 16796 +IHJhdXM= 16797 +IHJld2FyZHM= 16798 +IGluY2x1cw== 16799 +IGhpZ2h3YXk= 16800 +IGhhaA== 16801 +IG11bHRpcGxpZWQ= 16802 +IHPhur0= 16803 +IGRpc2NpcGxlcw== 16804 +IG5pbmc= 16805 +IGRyZXNzaW5n 16806 +IGF0dHJpYnV0ZXM= 16807 +IE1vc2M= 16808 +IEdyZWVjZQ== 16809 +IHNlaw== 16810 +IExlYXJu 16811 +IGp1cw== 16812 +cmVuZHJl 16813 +IHBlcnNvbm5l 16814 +cGxldGU= 16815 +IHBsYWNpbmc= 16816 +IGx1ZWdv 16817 +aWxsYW5jZQ== 16818 +INC+0LHRiQ== 16819 +IHByb3Zpc2lvbg== 16820 +IGxpb24= 16821 +dHJh 16822 +Ym9hcmRz 16823 +IGJlaGF2aW91cg== 16824 +aGV5 16825 +IHN1YnNjcmlwdGlvbg== 16826 +IHByb3RhZ29u 16827 +IHZhcmE= 16828 +IMWfdQ== 16829 +IGhhaGE= 16830 +IHRlYXNwb29u 16831 +5p8= 16832 +YXZvaXI= 16833 +IGNyeXB0bw== 16834 +INGB0YLQsNGA 16835 +IFN0b3Jl 16836 +YWJz 16837 +IFN0dWRlbnRz 16838 +IGxhdW5k 16839 +aW50bw== 16840 +IGFwcHJvYWNoZWQ= 16841 +sJw= 16842 +0YPRjtGJ 16843 +IExhYm9y 16844 +b3Rlcw== 16845 +aWF0cmlj 16846 +IGdyb8Of 16847 +dXRpdmU= 16848 +INC40LQ= 16849 +IEdpYg== 16850 +IHBsYWNlbWVudA== 16851 +IGRpZsOtY2ls 16852 +IGZyb2c= 16853 +INCy0YHQtdGF 16854 +IEpy 16855 +YXplZA== 16856 +0YPRiQ== 16857 +IOq8 16858 +ZnJhbWU= 16859 +0LDQtdGI0Yw= 16860 +IGxvY2tkb3du 16861 +IG1lZGk= 16862 +INeU157X 16863 +0LXQvdC40Lk= 16864 +ZW1hbGU= 16865 +7KKF 16866 +YXRlcmFs 16867 +IGRpc3RhbnQ= 16868 +IGJlYXJz 16869 +IGpvdXJuYWxpc3Q= 16870 +IE1hcnNoYWxs 16871 +IElobmVu 16872 +dWV0b290aA== 16873 +YmFn 16874 +IMSRw6M= 16875 +IEhpZ2huZXNz 16876 +IOywjQ== 16877 +0LjQutCw 16878 +IFd1 16879 +IEZyYW4= 16880 +IHBlbmc= 16881 +IGZvbg== 16882 +IGh5cG90aGVzaXM= 16883 +INGA0YM= 16884 +IGx5 16885 +15o= 16886 +7JuU 16887 +IFJhZGlv 16888 +4Lie 16889 +RGF2 16890 +IGVtYmFycmFzc2luZw== 16891 +IOyeiOyWtA== 16892 +IGNhc3Rpbmc= 16893 +IGNhZ2U= 16894 +IFBzeWNo 16895 +IOydvOuLqA== 16896 +IMW+ 16897 +aW1i 16898 +IGRpcmVjdG9ycw== 16899 +U0g= 16900 +IM+EzrfOvQ== 16901 +4buBdQ== 16902 +IGtvbnXFnw== 16903 +IG9wdGlvbmFs 16904 +cXVhcnRlcnM= 16905 +aWtlcg== 16906 +IFNhbnQ= 16907 +IHZlcnNlcw== 16908 +67aA 16909 +IG9sYXI= 16910 +IM+H 16911 +IM6zzrnOsQ== 16912 +IEltbQ== 16913 +IGNvbnRyb3ZlcnNpYWw= 16914 +IGVyc3Rlbg== 16915 +IHJlY2lw 16916 +IENocmlzdGlhbml0eQ== 16917 +IOq0nA== 16918 +b3Jkb24= 16919 +15XXqQ== 16920 +IHNsYXNo 16921 +IFBm 16922 +0YPQtNGM 16923 +15XXnQ== 16924 +IFBlcnJ5 16925 +IG1hbXk= 16926 +IGJhY2tncm91bmRz 16927 +IOCujuCuqQ== 16928 +IHBlbmRhbnQ= 16929 +IENvbHVtYmlh 16930 +IGludmVyc2U= 16931 +INGH0LXRgNC10Lc= 16932 +IHN2 16933 +IGRpZ2dpbmc= 16934 +NDE= 16935 +Y2hlbQ== 16936 +IG5hdmlnYXRpb24= 16937 +IFNoaW4= 16938 +IEZyb250 16939 +UEQ= 16940 +IGJlYXJpbmc= 16941 +IFdhc3Nlcg== 16942 +IHdheA== 16943 +IENIUklT 16944 +Y2hpbmc= 16945 +IHByZXNzZWQ= 16946 +RWw= 16947 +IERhbA== 16948 +b25zaW4= 16949 +IGJpbmRpbmc= 16950 +0YHQutC+0Lk= 16951 +cG9vbnM= 16952 +IG1vY2s= 16953 +YXJlc3Q= 16954 +0LrRgNCw 16955 +TU0= 16956 +IGNvcnJ1cHQ= 16957 +c3Rvcm0= 16958 +IHJlZnJlcw== 16959 +IENvYWNo 16960 +bGzDpA== 16961 +IFRISVM= 16962 +IHBhcmFn 16963 +IOyTsA== 16964 +cG9vbA== 16965 +IGJpbGxpb25z 16966 +IOq5gA== 16967 +Z3JvdXA= 16968 +IHdlbGNvbWluZw== 16969 +Y2VsbGVuY2U= 16970 +IER1a2U= 16971 +6ri0 16972 +IHByaW1lcmE= 16973 +7KC4 16974 +IHBvbmQ= 16975 +IHN0YXR1ZQ== 16976 +IOq1rOs= 16977 +IGhhdGNo 16978 +IGluc3RydW1lbnRhbA== 16979 +IHJlc2lkZW50aWFs 16980 +7Luk 16981 +IGFjY2VwdGluZw== 16982 +b3NoaQ== 16983 +ZGF0ZQ== 16984 +IOyUqA== 16985 +IHBsYW50ZWQ= 16986 +IGpva2luZw== 16987 +IOyEnA== 16988 +IGhhdGVk 16989 +INGA0LDRgdGB0Lo= 16990 +IHNsZXB0 16991 +IHBhY2thZ2Vz 16992 +IGlzbGFuZHM= 16993 +ZXNlbg== 16994 +xJ/EsQ== 16995 +IGRpYWdvbg== 16996 +IE9zYw== 16997 +IG1lc2g= 16998 +IHNjYWxlcw== 16999 +YXJpdHk= 17000 +IERlZmVuc2U= 17001 +IExld2lz 17002 +INGB0LXQs9C+0LTQvdGP 17003 +IGZsaWVz 17004 +dWluZWx5 17005 +IENvbnNpZGVy 17006 +IHN0YXJr 17007 +aGV3 17008 +IEFzw60= 17009 +s7Tr 17010 +IHByb3Bvc2U= 17011 +IO2VmOuptA== 17012 +b2Rv 17013 +IE5vcm1hbGx5 17014 +IGhlZWZ0 17015 +IEhhcnJpcw== 17016 +Z3Jv 17017 +IEJsb29k 17018 +YmFzZQ== 17019 +IGlPUw== 17020 +IHRvdWNoZXM= 17021 +IGluc3Bpcg== 17022 +INeT 17023 +IGJpbmFyeQ== 17024 +IOy2lA== 17025 +IHNlcmlhbA== 17026 +IGlvbg== 17027 +IHVuZW1wbG95bWVudA== 17028 +IG9kZHM= 17029 +IEZhYg== 17030 +IEZCSQ== 17031 +QlJVTg== 17032 +IHdlaWdodHM= 17033 +zr3Ovw== 17034 +YXRpbGU= 17035 +IG51cnNlcw== 17036 +IGludm9sdmVtZW50 17037 +IO2UvA== 17038 +IGdvdmVybmFuY2U= 17039 +IOKCrA== 17040 +0YDRg9C/ 17041 +aWVycmE= 17042 +7ZiV 17043 +IEplcnJ5 17044 +IGJlYXJk 17045 +IHNhbHZhdGlvbg== 17046 +IEFsb25n 17047 +Z2VudGxl 17048 +IEtp 17049 +Ym9s 17050 +IFBsYXQ= 17051 +IGhhc2h0 17052 +IHdhcmU= 17053 +IHBhcnRpZQ== 17054 +eWN6 17055 +IGludHI= 17056 +Rmlo 17057 +bmVudA== 17058 +IGNoZWF0 17059 +aWxlbg== 17060 +IOuv 17061 +b3JpZQ== 17062 +IGbDoWNpbA== 17063 +ZXRyaWM= 17064 +IGFmZmVjdGluZw== 17065 +dW5jaWF0aW9u 17066 +IGFmZmFpcnM= 17067 +IGJlZQ== 17068 +IHZpZXdpbmc= 17069 +IG9yYW5n 17070 +IExhbg== 17071 +INCh0YI= 17072 +IE1lcw== 17073 +g4E= 17074 +ZXJpZQ== 17075 +IGVzcGE= 17076 +IGludGVycHJl 17077 +IHBvc3Nlc3M= 17078 +IHB1cmVseQ== 17079 +cml0bw== 17080 +Zm91bmQ= 17081 +YXNtYQ== 17082 +7KCB7J24 17083 +IGV4YW1pbmU= 17084 +INGD0Lw= 17085 +IGJlc2No 17086 +IFRvbW9ycm93 17087 +IEJsb2Nr 17088 +IHZhcmlhbnQ= 17089 +IHByZWZlcmVuY2U= 17090 +IGNvYWNoZXM= 17091 +IG1lZGljYXRpb25z 17092 +IO2YhA== 17093 +IGVtcGlyZQ== 17094 +64Sk 17095 +IElsbGlub2lz 17096 +IGNyaXNweQ== 17097 +IHRow6w= 17098 +IGJlZXM= 17099 +Nzc= 17100 +IGdsb3c= 17101 +6Lo= 17102 +IFN0dWRpZXM= 17103 +IENoYWxsZW5nZQ== 17104 +IHVubGlrZWx5 17105 +0Kc= 17106 +xLF5b3JzdW4= 17107 +RElF 17108 +IG1pbmltaXpl 17109 +aXphcmQ= 17110 +IMO6bg== 17111 +IGVuY29udHJhcg== 17112 +IEtpbGw= 17113 +5bs= 17114 +IHZhbmlsbGE= 17115 +IEdyYW50 17116 +IEdU 17117 +c2Vh 17118 +IHNvdWdodA== 17119 +0LLQvtC0 17120 +IG7DpG0= 17121 +IEF1bnQ= 17122 +T1dO 17123 +IHB1bXBraW4= 17124 +c3RlbGxlbg== 17125 +IHJhZw== 17126 +0LXQs9C00LA= 17127 +IHN0b3J5dA== 17128 +IGZvcnVt 17129 +IGVzdGFiYQ== 17130 +dWNoZQ== 17131 +IGNvbmdyZXNz 17132 +IFJleQ== 17133 +IGRyYW1hdGljYWxseQ== 17134 +IFNwb3J0 17135 +IFllbGxvdw== 17136 +IOqzhOyGjQ== 17137 +IGRpc2d1c3Rpbmc= 17138 +IFJlY2VudA== 17139 +IGFjcXVpcmVk 17140 +IGNhYmxlcw== 17141 +ZGlu 17142 +IHZpc3Rv 17143 +IGNvbW11bmljYXRpbmc= 17144 +0YHRgtCw0LLQu9GP 17145 +0LXRgdGC0L4= 17146 +IHLDqWc= 17147 +IHNvY2tz 17148 +IHByb2Nlcw== 17149 +YmVjYXVzZQ== 17150 +IHV0dGVy 17151 +IGNvbG9jYXI= 17152 +IG5ld2VzdA== 17153 +IGdyYW1t 17154 +IHNoaWZ0aW5n 17155 +IGNhcnJpZXI= 17156 +INGB0LrQvtGA 17157 +IFNjaHc= 17158 +IGV4ZWN1dGVk 17159 +IG1haW50YWluZWQ= 17160 +IM+G 17161 +IE1vc2Vz 17162 +IGRpc3Nl 17163 +IGhvcnI= 17164 +44Cc 17165 +IHJhbGx5 17166 +IGFsbGVt 17167 +IEV2ZW50dWFsbHk= 17168 +IGRpeW9y 17169 +bHZhbmlh 17170 +IHNjaG5lbGw= 17171 +IOqzvA== 17172 +IOunpA== 17173 +IHN0cnVnZ2xlcw== 17174 +bGF0ZQ== 17175 +IGNsYXJpZnk= 17176 +w6ltZW50 17177 +IG11bHRpcGxpYw== 17178 +0LjQsdC+ 17179 +IGpvdXJu 17180 +IGZyYWdy 17181 +IHN1cnByaXNpbmdseQ== 17182 +IGRlc3BlcmF0ZQ== 17183 +NTI= 17184 +IHN1bA== 17185 +IFJlYWQ= 17186 +IEZyaWVk 17187 +IG1vbmQ= 17188 +d29v 17189 +IG9yZ2FuaXppbmc= 17190 +IFNvb24= 17191 +INCy0L7Qv9GA0L7RgQ== 17192 +IE51cg== 17193 +INCX0LQ= 17194 +IHNwaWRlcg== 17195 +0LXRgdGP 17196 +IHR1dG9yaWFscw== 17197 +IG51dHJpZW50cw== 17198 +b3Jlcg== 17199 +IGNvZWZmaWNpZW50 17200 +IGFycmFuZ2VtZW50 17201 +IHByaWNpbmc= 17202 +bmFu 17203 +eXU= 17204 +Qkw= 17205 +IHRyaWJl 17206 +IEhvd2FyZA== 17207 +dW5rcw== 17208 +IG5ld2Vy 17209 +IHByb3Zpbg== 17210 +IHByZWRpY3Rpb24= 17211 +aG9z 17212 +IG9sc3Vu 17213 +IEFyb3VuZA== 17214 +IHZpZXI= 17215 +INGB0YLQvtGA0L7QvQ== 17216 +IHZhbGxleQ== 17217 +IEVsYQ== 17218 +aWZp 17219 +IGdhbGF4eQ== 17220 +IHRyYW5xdQ== 17221 +IGFkdmVycw== 17222 +IFRlbXBsZQ== 17223 +aWZmcw== 17224 +aWdlbmNl 17225 +IGvDtm5udGU= 17226 +IMSRw7M= 17227 +RGlk 17228 +IHBob3RvZ3JhcGhz 17229 +IEFXUw== 17230 +0YbQuNGP 17231 +IGd1YXJkcw== 17232 +IGFwcG9pbnRlZA== 17233 +IEdpbA== 17234 +INC80L7QvA== 17235 +IGNvZA== 17236 +IFVubGlrZQ== 17237 +IGV2ZW5seQ== 17238 +aXNjb25zaW4= 17239 +IGVzdG91 17240 +IG1uaWU= 17241 +IEV4ZWM= 17242 +IE1W 17243 +IEVpbmU= 17244 +IFJvZ2Vy 17245 +IEZhYw== 17246 +IExpc3Q= 17247 +IGZ1ZXI= 17248 +0LDQtdGC0LU= 17249 +b21lZA== 17250 +IGF0dHJhY3Rpb24= 17251 +IHRlcnJhaW4= 17252 +IERyb3A= 17253 +IGNvcnBvcmF0aW9ucw== 17254 +IHNjaWVuY2Vz 17255 +IHRocm9uZQ== 17256 +IGFq 17257 +IFJvdA== 17258 +IHN1cHBvcnRlcnM= 17259 +IEJlcmU= 17260 +SGVyZQ== 17261 +IGRpZmVyZW50ZXM= 17262 +IHNpZ25pZmljYW5jZQ== 17263 +z4POtw== 17264 +IGNsYW1w 17265 +IOuMgOs= 17266 +IGZhYnVsb3Vz 17267 +cmV6 17268 +IGFzc3VtcHRpb25z 17269 +dXRoZXI= 17270 +d2lk 17271 +cG90 17272 +IHlhbg== 17273 +dWxpbg== 17274 +0YDRi9Cy 17275 +IFNsb3c= 17276 +IFBlbm5zeQ== 17277 +IO2VtOyEnA== 17278 +IG1laW8= 17279 +IHdlYWx0aHk= 17280 +IEVpZ2h0 17281 +IHB1bHNl 17282 +IGZyaWN0aW9u 17283 +aWRpdHk= 17284 +IEhvbGw= 17285 +aXlvcnVt 17286 +IHNvdW5kZWQ= 17287 +IENhcnI= 17288 +IGZvcms= 17289 +4pg= 17290 +IFBB 17291 +IGNvbnNwaXI= 17292 +IGNvZGluZw== 17293 +cnQ= 17294 +IFR5cA== 17295 +IOyWkQ== 17296 +INC/0L7Qsw== 17297 +IG1pc2Vy 17298 +INGB0LzQvtGC0YA= 17299 +IFN3ZWRlbg== 17300 +IG9sYXJhaw== 17301 +IFpoYW5n 17302 +IENoaQ== 17303 +IFRpdGFu 17304 +IHNjcmVlbmluZw== 17305 +IFNwaWRlcg== 17306 +IMWeaW1kaQ== 17307 +IG9ic3RhY2xlcw== 17308 +bGFyYQ== 17309 +IGNoYWxsZW5nZWQ= 17310 +cHNl 17311 +VE9O 17312 +4bul 17313 +IFBp 17314 +IGxhZ2k= 17315 +aWV1cnM= 17316 +IGh1cnRpbmc= 17317 +IG5lZ2xlY3Q= 17318 +IGdlbmVyYXRpbmc= 17319 +IHlvdW5nZXN0 17320 +IGF1ZGl0 17321 +INGA0LXQtw== 17322 +z4HOrA== 17323 +IGRvbmF0ZQ== 17324 +IFBERg== 17325 +IHZpc2l0cw== 17326 +IGNydWlzZQ== 17327 +UFA= 17328 +YXNlcg== 17329 +IHdzcA== 17330 +YmFja3M= 17331 +aXZhbHM= 17332 +IGRldmU= 17333 +IHByb3BvcnQ= 17334 +IGNhdGg= 17335 +IEVmZmVjdA== 17336 +IHdpbmRz 17337 +IOyZlA== 17338 +IGNoYXJ0cw== 17339 +IHNhbWE= 17340 +IGF1dG9tYXRpb24= 17341 +INC/0L7QutCw 17342 +IG9sYW4= 17343 +IGJvYXRz 17344 +IGNhZmU= 17345 +IGRlbmllZA== 17346 +IE1hbWE= 17347 +IGJsb2NraW5n 17348 +IFRob3I= 17349 +IHBoZW5vbWVuYWw= 17350 +IHN0YWtlaG9sZGVycw== 17351 +IHVub3M= 17352 +0YPQtdGC 17353 +IEFicmFoYW0= 17354 +IGRldGVjdGlvbg== 17355 +IGp1cmlz 17356 +IHBvd2VyZWQ= 17357 +emlhbA== 17358 +IHdlbGZhcmU= 17359 +IHVwZ3JhZA== 17360 +IG1vxbxuYQ== 17361 +IENhc2U= 17362 +Y3VsYXI= 17363 +lOydtA== 17364 +IEd1ZXNz 17365 +IGN5Y2xlcw== 17366 +cm9jaw== 17367 +dW1p 17368 +IGVsaXRl 17369 +IHF1w6g= 17370 +0YLQvtC8 17371 +IHNob3Jl 17372 +Z3VudGE= 17373 +IGt1 17374 +IGZhaXRoZnVs 17375 +IEplcmVteQ== 17376 +YWlk 17377 +4Lc= 17378 +dWdhbA== 17379 +IFZlbA== 17380 +IHZyYWk= 17381 +c3RlbGw= 17382 +qLg= 17383 +IGtvbA== 17384 +6L0= 17385 +IHF1YW50bw== 17386 +INC30LDRgA== 17387 +IDIwMDI= 17388 +ZXN5 17389 +IHJlc2VydmU= 17390 +INC80L7QvNC10L3Rgg== 17391 +IGRlcGxveWVk 17392 +IGRlZmluaW5n 17393 +IHNhdQ== 17394 +IGdhYXQ= 17395 +Iik= 17396 +IHRyYW5zbWl0 17397 +IHB1Ymxpc2hpbmc= 17398 +IHJhbmtpbmc= 17399 +IG9mZmVuc2U= 17400 +IDQ2 17401 +cGlu 17402 +IFRha2luZw== 17403 +IGVudGl0bGVk 17404 +IGdlbnVpbmVseQ== 17405 +IHZhcmlhdGlvbnM= 17406 +IGZpbmRl 17407 +IHRhdQ== 17408 +IHVuZm9ydHVuYXRl 17409 +IFJhaA== 17410 +cG9ydHM= 17411 +IGPF 17412 +IG1vbmtleQ== 17413 +IGJyYWM= 17414 +d2Vp 17415 +bHVuZw== 17416 +IGFydGlm 17417 +IHN5cnVw 17418 +INCU0LDQsg== 17419 +IGxpZnRlZA== 17420 +IGNoZXo= 17421 +IEFkdmVudA== 17422 +IFN0b2Nr 17423 +IGRvbA== 17424 +0LzQtdC9 17425 +0LjRiNGM 17426 +IHlu 17427 +Z2lv 17428 +ZGV0 17429 +IGRlc3Nl 17430 +IGdyaQ== 17431 +IENoYWlybWFu 17432 +54U= 17433 +IGN1ZW50YQ== 17434 +YW5pbQ== 17435 +IGNyYWI= 17436 +IGVzY2Fs 17437 +IHByZW1pw6hyZQ== 17438 +IEdlZg== 17439 +IGRpbmluZw== 17440 +IHNldmVudGg= 17441 +IGNoYXNpbmc= 17442 +IFRvd2Vy 17443 +IGJydXRhbA== 17444 +IGZ1bmRhbWVudGFsbHk= 17445 +0LvQtdC90LjRjw== 17446 +c3RhZ2U= 17447 +IGFjcXVpcw== 17448 +IGN5bGluZGVy 17449 +IGNvbW1hbmRlcg== 17450 +bWVt 17451 +IFVW 17452 +aGFwcHk= 17453 +IGVwc2lsb24= 17454 +IGludml0YXRpb24= 17455 +IGZhcm1lcg== 17456 +Y2hhaXI= 17457 +IGRlc3Rpbnk= 17458 +IHNvdmVyZQ== 17459 +IEhlYnJldw== 17460 +IHNlcnZhbnQ= 17461 +IGJldw== 17462 +IGdhc3Q= 17463 +dXRpZXM= 17464 +IGFkbWluaXN0cmF0aXZl 17465 +IENvbW1hbmQ= 17466 +w6l0YQ== 17467 +IG5pdHJvZ2Vu 17468 +6re8 17469 +IGFiaQ== 17470 +IHZpbGxhaW4= 17471 +IGJsYW5rZXQ= 17472 +IFNlbmQ= 17473 +IGJlYXRlbg== 17474 +soQ= 17475 +IHZvbHVudA== 17476 +IHNjaG9sYXI= 17477 +IEVtcGVyb3I= 17478 +IDQz 17479 +dmFibGU= 17480 +IER1cw== 17481 +IEdV 17482 +IHRhcmdldGluZw== 17483 +d3d3 17484 +IGFtZW5kbWVudA== 17485 +7IaM6w== 17486 +IHRpbmc= 17487 +IG5hc3R5 17488 +IGdhdWdl 17489 +INGA0L7QtA== 17490 +IEhhbnM= 17491 +WW91cg== 17492 +zrHOvQ== 17493 +IHByb2pldA== 17494 +IEhhd2FpaQ== 17495 +IHN1c3BpY2lvdXM= 17496 +IHNjaHc= 17497 +IHJlbW92YWw= 17498 +IGludHJpZw== 17499 +IE1V 17500 +IHBvbnRv 17501 +4KS+ 17502 +INC+0LHRgNCw0Lc= 17503 +IGd1ZXNzaW5n 17504 +cGFjZQ== 17505 +IG1vdGhlcnM= 17506 +IG1pbGxpbWV0ZXI= 17507 +0LvQtdC90LjQtQ== 17508 +IGF2YWlsYWJpbGl0eQ== 17509 +aWN6 17510 +IGZyYWN0 17511 +IGJhc2Vz 17512 +a20= 17513 +IEJUUw== 17514 +IEZpZWxk 17515 +IGR6aWU= 17516 +IHNlZ3VuZG8= 17517 +IOuCmOuKlA== 17518 +IGxlZ2l0aW1hdGU= 17519 +aW1hcw== 17520 +INCy0L0= 17521 +IGNvcnJ1cHRpb24= 17522 +IHNtYXNo 17523 +IFZhbGVudA== 17524 +IGFsaWduZWQ= 17525 +IFBlbm5zeWx2YW5pYQ== 17526 +IGdhYg== 17527 +IEV1bg== 17528 +ZW50aA== 17529 +IE1vcm5pbmc= 17530 +IGNhbmRsZQ== 17531 +IGJhY2twYWNr 17532 +IElzbGFtaWM= 17533 +YcOnw7Vlcw== 17534 +IGVuY3J5 17535 +IG11c2hyb29tcw== 17536 +7YyM 17537 +ZGl0 17538 +IHRyYW5zaXQ= 17539 +IFdpc2NvbnNpbg== 17540 +IHBhcnRpY2lwYXRlZA== 17541 +IElscw== 17542 +IHVuZm9sZA== 17543 +toDr 17544 +IHByb2ZpdHM= 17545 +IHdhcm1pbmc= 17546 +IEdhbmc= 17547 +IG5ldHdvcmtpbmc= 17548 +IG1lZ2E= 17549 +IHRob3JvdWdobHk= 17550 +bGVtZW50cw== 17551 +IEht 17552 +IGRlY2lkaW5n 17553 +IGVtb3Rpb25hbGx5 17554 +IGV4aGF1c3RlZA== 17555 +INCf0L7Rgg== 17556 +Y2lkbw== 17557 +IEhUTUw= 17558 +IGNvcHlyaWdodA== 17559 +IG1lbG9keQ== 17560 +eWlt 17561 +IGFuZGVycw== 17562 +b3Nob3A= 17563 +IOuzvA== 17564 +IGF0aGxldGU= 17565 +IEdF 17566 +IGZyZXF1ZW50 17567 +IGRlc2lyZXM= 17568 +IG5lZWRpbmc= 17569 +IFl1bg== 17570 +IHJpZmxl 17571 +IGxvdmVy 17572 +J1Q= 17573 +IGRlbnNl 17574 +IHTDo28= 17575 +IG5vdGlmaWVk 17576 +IGlkaQ== 17577 +7Jet 17578 +7YY= 17579 +IGludGVyYWN0aW5n 17580 +IHJhcHBvcnQ= 17581 +0LXRgNC4 17582 +c2tp 17583 +IGJlc3Nlcg== 17584 +IG1hbnVmYWN0dXJlcg== 17585 +IEt5bGU= 17586 +IGFjY291bnRhYmxl 17587 +IFNhaw== 17588 +IFBpbA== 17589 +IERvbWlu 17590 +IHByZXN1bQ== 17591 +INCS0YHQtQ== 17592 +IHZpbmVnYXI= 17593 +IGd1YXJhbnRlZWQ= 17594 +IGhhbmRsZWQ= 17595 +Y2F0 17596 +IGNpdmlsaXphdGlvbg== 17597 +IGFjY29tcA== 17598 +IFZN 17599 +w6ltb24= 17600 +IGRlemU= 17601 +IGdyYWRlcw== 17602 +IHNvbGx0ZQ== 17603 +IHN0YXJpbmc= 17604 +15DXqg== 17605 +YXJudA== 17606 +IGhvcml6b24= 17607 +IHRyYXZhaWw= 17608 +aG91cg== 17609 +IEVE 17610 +IERhaw== 17611 +IG55 17612 +IGNvbnZl 17613 +IENoYW0= 17614 +IGZpcm1z 17615 +IExpdQ== 17616 +INGB0YLRgNCw0L0= 17617 +IGxpYmVydA== 17618 +IGxlbnNlcw== 17619 +IGludGFrZQ== 17620 +INCy0YvQsQ== 17621 +IG1lbnNlbg== 17622 +aGVs 17623 +IHByYWN0aXRpb24= 17624 +IDM1MA== 17625 +Rk8= 17626 +IGJlZHM= 17627 +IGFuY2VzdG9ycw== 17628 +IOyXhOyyrQ== 17629 +IGRpc3R1cmI= 17630 +IExhc3RseQ== 17631 +IFN1cHBvcnQ= 17632 +4Li14LmJ 17633 +IENvcm9uYQ== 17634 +IGVudGh1c2k= 17635 +INCy0L7Qt9C8 17636 +IOyCrOuejOs= 17637 +IDUy 17638 +YmlyZA== 17639 +IHJlZHVjZXM= 17640 +IOyeiOydhA== 17641 +IEdlbmU= 17642 +6rWQ 17643 +xJlw 17644 +IMOcYmVy 17645 +IGNvbmNlcm5pbmc= 17646 +dXNlcg== 17647 +IGNvbmNlbnRyYXRl 17648 +IFdIQVQ= 17649 +aXNob3A= 17650 +b255bW91cw== 17651 +bm9sZA== 17652 +IHN1Z2dlc3Rpbmc= 17653 +qbA= 17654 +IEZpc2g= 17655 +Li4uLi4uLi4= 17656 +IHZlc3NlbA== 17657 +IHRyYWJham8= 17658 +IE9jZWFu 17659 +eWc= 17660 +IHRvd25z 17661 +ZGVs 17662 +IHRlcnJpZnlpbmc= 17663 +IMOnYWzEscWf 17664 +IHNpbm8= 17665 +IGVhdHM= 17666 +IGdleg== 17667 +IGdlbWU= 17668 +IOyZhA== 17669 +IGNvbXBhcnQ= 17670 +IGltcGxlbWVudGluZw== 17671 +IFBvdHRlcg== 17672 +IEdlcm1hbnM= 17673 +IGfFgg== 17674 +IHRlbm5pcw== 17675 +IGNhcnBldA== 17676 +YXVlcg== 17677 +IFNhdWRp 17678 +eWVvbmc= 17679 +IGN1cnJ5 17680 +IEZvcmVzdA== 17681 +0YvQuw== 17682 +IGZpZnRlZW4= 17683 +IGJvbHRz 17684 +IHtc 17685 +rLQ= 17686 +IHNldHRsZW1lbnQ= 17687 +IGxhbmdl 17688 +IGJhbQ== 17689 +R2V0 17690 +7ZWZ 17691 +IHN3YXA= 17692 +IEtoYW4= 17693 +IGNvbW1lbmNl 17694 +IHF1YXJhbnRpbmU= 17695 +IHNjb3JlZA== 17696 +55Y= 17697 +IDE5NTA= 17698 +IHRoaWNrZXI= 17699 +IHPDu3I= 17700 +IExhcnJ5 17701 +IGFsbGV6 17702 +7Iuc64qU 17703 +IGfDvA== 17704 +IHNwZWN0YWN1bGFy 17705 +Ly8= 17706 +Ym90aA== 17707 +IHN0YXRz 17708 +IE5hbmN5 17709 +IGJ1bnU= 17710 +IGNydXN0 17711 +IGFjdGl2YXRlZA== 17712 +IOq3uOue 17713 +b3V0aGU= 17714 +IHBvcnRz 17715 +IG5ldXJhbA== 17716 +IGphdw== 17717 +IG9ic2VydmF0aW9ucw== 17718 +IHZvaXQ= 17719 +YWJhbg== 17720 +4bqjaQ== 17721 +pqzrpbw= 17722 +b21lcw== 17723 +4K+L 17724 +cXVp 17725 +IGtpbmRuZXNz 17726 +0JE= 17727 +IDQx 17728 +IG1vZGVyYXRl 17729 +IGFuZ2Vscw== 17730 +IFRhbWI= 17731 +w6h0 17732 +IGNobG9y 17733 +IEJpbGx5 17734 +7LKY6w== 17735 +YWNvbg== 17736 +IHNlbGVjdGluZw== 17737 +IERlbHRh 17738 +IG51bGw= 17739 +ZGVubHk= 17740 +IGNpdWQ= 17741 +IHRlbmRlbmN5 17742 +IGJyZWFrZG93bg== 17743 +IG1pbnQ= 17744 +0YTQvtGA0Lw= 17745 +b3JwaA== 17746 +IGRhd24= 17747 +c3By 17748 +IFdJTEw= 17749 +w6RjaGxpY2g= 17750 +IHB1cHB5 17751 +NzAw 17752 +IOCupA== 17753 +IGZhaWxz 17754 +IENvbmM= 17755 +IHJlbGF0aXZlcw== 17756 +IGludml0aW5n 17757 +IGF1dG9ub20= 17758 +IGNvbXBvc2Vk 17759 +IHVuaXR5 17760 +IGRlY2lz 17761 +IGFjY2Vzc29yaWVz 17762 +IENhc3M= 17763 +IGJpc3Q= 17764 +IFRpcA== 17765 +7Ke4 17766 +IHB1bnQ= 17767 +IHLDoXA= 17768 +QU5L 17769 +ZXhpc3Q= 17770 +IGNvbXBhdGlibGU= 17771 +IG5lcg== 17772 +INC10LzRgw== 17773 +IGFwbGlj 17774 +IGJhcHQ= 17775 +IGZhaWxpbmc= 17776 +IFRhbWFt 17777 +IG9zY2lsbA== 17778 +IGxldHp0ZW4= 17779 +IHJlcGVhdGVkbHk= 17780 +IGp1bmdsZQ== 17781 +IFB1c2g= 17782 +aGFp 17783 +IM63 17784 +IGRlYWRseQ== 17785 +0Y/Qtg== 17786 +d2nEhQ== 17787 +IENvbW1vbg== 17788 +IM6V 17789 +IHNrYXRl 17790 +VEM= 17791 +IE1pbmk= 17792 +IGhvYmJ5 17793 +4bqnbg== 17794 +IHJvdXRlcw== 17795 +IGFtaWdvcw== 17796 +IGNvbmp1bg== 17797 +IHBhcnRuZXJzaGlwcw== 17798 +IG5vdm8= 17799 +IGF2ZXI= 17800 +IHBvdXZleg== 17801 +YnJpZGdl 17802 +IHByZW9j 17803 +aGlt 17804 +IHR1cmI= 17805 +IHNvYg== 17806 +IFNuYXA= 17807 +IOywuA== 17808 +bWludXRl 17809 +IHRyYWplY3Q= 17810 +dWrEmQ== 17811 +IGVhZ2Vy 17812 +IHJlZ3VsYXRvcnk= 17813 +IGJhbmtpbmc= 17814 +Ymxpbmc= 17815 +0YjRjA== 17816 +YcW8 17817 +IGJpemFycmU= 17818 +aXRhdGVk 17819 +ZGlyZQ== 17820 +IHRocmVhdGVuZWQ= 17821 +IHNoaW5pbmc= 17822 +IG5lc3Nl 17823 +IGNvcnBz 17824 +INGB0YM= 17825 +IHRlbGVz 17826 +IHRlbXA= 17827 +dGVt 17828 +INC60LDQvQ== 17829 +IGZldmVy 17830 +TmV3 17831 +IGhlYXZpZXI= 17832 +IFNhaA== 17833 +YnVk 17834 +IG91dHJvcw== 17835 +IOywvg== 17836 +IOuqhQ== 17837 +YXJyaW5n 17838 +IOq0nOywrg== 17839 +IE5hcA== 17840 +IHNlbWlu 17841 +IFRoYW4= 17842 +aWZz 17843 +IGRlc2Vu 17844 +INGC0LDQutC+0LU= 17845 +IGxvc2Vz 17846 +IEJhbHQ= 17847 +a29u 17848 +INC90LDQv9GA 17849 +IHZvaXM= 17850 +IE1vc2Nvdw== 17851 +IGNoYWlycw== 17852 +aGlz 17853 +IHJlZnVnZWVz 17854 +a2c= 17855 +IGtvbGU= 17856 +jag= 17857 +0LDRgdC40LHQvg== 17858 +pr0= 17859 +IFVuaXZlcnNl 17860 +IERpcmVjdA== 17861 +IGNoZWF0aW5n 17862 +IENpbg== 17863 +IHBhdHJp 17864 +IGFkdmlzZQ== 17865 +IE5ldGhlcg== 17866 +IHByaW1laXJv 17867 +IG1lbnRpb25pbmc= 17868 +bnV0 17869 +NTY= 17870 +YXLEsQ== 17871 +IHBldGl0ZQ== 17872 +YmxlZA== 17873 +IHBlbnNhcg== 17874 +aWNpbw== 17875 +SU5E 17876 +IHZldGVyYW4= 17877 +IGxhZGRlcg== 17878 +IGNvbnNlcXVlbmNl 17879 +0L7QttCw0Ls= 17880 +IEJ1cm4= 17881 +IHJ1Zw== 17882 +IE1hZGU= 17883 +IGdpdA== 17884 +Ii4uLg== 17885 +IGNvbXBldGl0b3Jz 17886 +IHByemVk 17887 +IGFwcGFyZW50 17888 +IEFyZ2VudGluYQ== 17889 +IFdvcmtpbmc= 17890 +IGNvbGxhYm9yYXRl 17891 +d29tYW4= 17892 +IHJldGFpbg== 17893 +IGxldXJz 17894 +IGRhc2hib2FyZA== 17895 +15nXkw== 17896 +IEVhcmx5 17897 +Qk0= 17898 +INC10ZE= 17899 +0L7Qu9C+0LM= 17900 +IHNhdGlzZnlpbmc= 17901 +IG9mdGVudGltZXM= 17902 +IG1hcHBpbmc= 17903 +w7xua8O8 17904 +YXJ0aA== 17905 +Zm9sZA== 17906 +IGxhdW5jaGluZw== 17907 +IGF1cmE= 17908 +IHByZWNpc2lvbg== 17909 +d29ya3M= 17910 +R29k 17911 +IHN0cmFw 17912 +IEltcGVy 17913 +IHJpdmVycw== 17914 +IHw= 17915 +IGN1ZXI= 17916 +cmVnb24= 17917 +IGFycml2YWw= 17918 +0LrQsNGF 17919 +IE1pYW1p 17920 +0LDQvdGL 17921 +IHN1cnZpdm9ycw== 17922 +IFNlbmlvcg== 17923 +RGF2aWQ= 17924 +IGVzdGFkbw== 17925 +IHNlY3RvcnM= 17926 +IHBvcHBpbmc= 17927 +IGNoaW0= 17928 +YXnEsQ== 17929 +IGt1bm5lbg== 17930 +IGdhbGxlcnk= 17931 +IHN1bmxpZ2h0 17932 +ZXNlaGVu 17933 +IHllbGxpbmc= 17934 +IE1laW4= 17935 +IFBob2VuaXg= 17936 +IG1hbm8= 17937 +IGhpc3Rvcmlh 17938 +IG9jY3VycmluZw== 17939 +7Lg= 17940 +0LDQtNC4 17941 +IGluc3RpdHV0aW9uYWw= 17942 +IFR1dA== 17943 +57I= 17944 +IHNsYXZlcw== 17945 +IGZvcmdpdmVuZXNz 17946 +IHR3aW4= 17947 +IEh5dW4= 17948 +0L3RjA== 17949 +IEtvbW0= 17950 +YW5kcmE= 17951 +c2hvdA== 17952 +c3PDpA== 17953 +INGG0LU= 17954 +YXR0YQ== 17955 +IGV4cGVuc2U= 17956 +IEdQVQ== 17957 +IFBhc3Q= 17958 +cmlibHk= 17959 +IOutkOyVvA== 17960 +INCz0L7QtNCw 17961 +IHJlc3Bpcg== 17962 +IFF1ZWVucw== 17963 +aG9wcw== 17964 +IHPDqXJpZQ== 17965 +IHByZWY= 17966 +IGNvbWVk 17967 +IHBsdXQ= 17968 +IE92ZXJhbGw= 17969 +IGN1c2g= 17970 +IHJpbmdpbmc= 17971 +IGluY29ycmVjdA== 17972 +INGB0YLRgA== 17973 +IGdlb21ldHJ5 17974 +IGFkdmVydGlz 17975 +INCo 17976 +IHJldmlld2Vk 17977 +IGRvemVucw== 17978 +IGRldGVybWluYXRpb24= 17979 +IFBoaWxs 17980 +IGNvbnRyaWJ1dGVk 17981 +IENpdA== 17982 +IHBhc3NlbmdlcnM= 17983 +IGPDtHTDqQ== 17984 +IHJldmVy 17985 +IHRlY2hub2xvZ2ljYWw= 17986 +IGFsbGVu 17987 +IHJhaW5pbmc= 17988 +YXZp 17989 +IHNhbHR5 17990 +IHR5cGluZw== 17991 +INGC0LU= 17992 +IHRpbHQ= 17993 +IOy5mA== 17994 +INC+0YA= 17995 +INC/0YDRj9C8 17996 +IHJvdQ== 17997 +IGFyZW5h 17998 +YXJhdA== 17999 +SEhISA== 18000 +IG1hbnVmYWN0dXJlcnM= 18001 +IEVkd2FyZA== 18002 +IHR1Y2s= 18003 +IGJsb3dz 18004 +aW5nbw== 18005 +IE1hcmM= 18006 +7JWE7ISc 18007 +TWljaA== 18008 +IENsZWFu 18009 +6LQ= 18010 +ZXN0bw== 18011 +IFBhY2s= 18012 +IHNoYWZ0 18013 +QlJVTk8= 18014 +IGF2ZW4= 18015 +dXVy 18016 +0YHQutC+0LvRjNC60L4= 18017 +6rSA 18018 +IGF1dG9tYXRlZA== 18019 +IHZlbnR1cmU= 18020 +IHN1cnZlaWxsYW5jZQ== 18021 +IEdyb3c= 18022 +IEVtZXI= 18023 +INC00L7RgA== 18024 +IGludmVzdG9y 18025 +IFlvaw== 18026 +IGxhdHRlcg== 18027 +IE5J 18028 +IGZ1bmN0aW9uaW5n 18029 +IEhhbWlsdG9u 18030 +IDUx 18031 +IG11cmRlcmVk 18032 +IGFuY2hvcg== 18033 +IGN1Yw== 18034 +IFNDUA== 18035 +IE1hZGFt 18036 +IGNvbnN0cmFpbnRz 18037 +IGJhcm4= 18038 +YW5rZW4= 18039 +IOunjuydgA== 18040 +IE1vdG9y 18041 +IERvaW5n 18042 +IGFtZW4= 18043 +ZXR0cw== 18044 +IGluc3RydWN0b3I= 18045 +ZWd0 18046 +YWtv 18047 +IHBvc3R1cmU= 18048 +aXZpYQ== 18049 +IFBvbGlzaA== 18050 +INC00LLQsA== 18051 +IGNvbG9yZnVs 18052 +IGVsYm93 18053 +IHBhcmxl 18054 +IHBhc3Nlcg== 18055 +IGNvbmRlbQ== 18056 +b3J0YWw= 18057 +IGZlcnRpbA== 18058 +2KfYrw== 18059 +IENvbG9tYg== 18060 +IGFsaWdubWVudA== 18061 +IGFzdHJvbmF1dA== 18062 +IE11dA== 18063 +IHNhbG1vbg== 18064 +IHN0cnVjdHVyZWQ= 18065 +nteo 18066 +IGNsaWNrcw== 18067 +IG1pZWo= 18068 +IFJvdW5k 18069 +IHJhaW5ib3c= 18070 +IFZB 18071 +7KeI 18072 +b3R6 18073 +LDwv 18074 +IE5pY29sZQ== 18075 +bGlzaGluZw== 18076 +IHdoaWxzdA== 18077 +IHJlcHVibGlj 18078 +IHRhbWFt 18079 +dmVydGVk 18080 +IHJlY29nbml6aW5n 18081 +INCz0LvQsNCy 18082 +IGR1Yg== 18083 +IEpvcw== 18084 +ZmFsbHM= 18085 +aWNoaQ== 18086 +IGN6xJk= 18087 +INCm 18088 +IE1pdGNo 18089 +Q1I= 18090 +Y2xpY2s= 18091 +IHN0dW5uaW5n 18092 +IEp1bGlh 18093 +bWVycw== 18094 +IFBvbHk= 18095 +IGRlc3Nh 18096 +IGludMOp 18097 +IOqzoOs= 18098 +IGRvxJ8= 18099 +IGRpdmVy 18100 +IHN0cmlraW5n 18101 +YXBob3I= 18102 +IGFwZW5hcw== 18103 +b3VzZXM= 18104 +IHRyYWdlZHk= 18105 +IEZhbg== 18106 +IFR1cmtpc2g= 18107 +IHByb3BoZXQ= 18108 +IGRpc3RhbmNpbmc= 18109 +IEhlbQ== 18110 +IGNhcnRvb24= 18111 +S2U= 18112 +YW50aW5n 18113 +IENsYXJr 18114 +578= 18115 +IGRhdm9u 18116 +IO2F 18117 +IHl1bW15 18118 +IGNvbXByb21pc2U= 18119 +IHN0YXJ0dXA= 18120 +cml0dA== 18121 +IGNlcnRpZmllZA== 18122 +IHBpbGxvdw== 18123 +YmVyZQ== 18124 +7KSA 18125 +IHNlZ3Vpcg== 18126 +IHN0YWRpdW0= 18127 +YXRpdm8= 18128 +IHNpbXBsZXI= 18129 +s7g= 18130 +IHZpc2E= 18131 +IHBhdGh3YXk= 18132 +IG51ZXZv 18133 +IHJheQ== 18134 +6Zw= 18135 +w7bDnw== 18136 +INC30LDQvQ== 18137 +IGNlbGVicml0eQ== 18138 +0LfQsA== 18139 +IGVpbmVz 18140 +IEdpdmVu 18141 +IEFyYQ== 18142 +IEpvYg== 18143 +IHlhaw== 18144 +IEFyYmVpdA== 18145 +cmVzc2luZw== 18146 +w6FuZA== 18147 +IGdyYWJiZWQ= 18148 +cGVuZA== 18149 +IHNpbmU= 18150 +aXJr 18151 +INCe0YI= 18152 +IEZsZQ== 18153 +aWNoZW4= 18154 +56Y= 18155 +IE5laWw= 18156 +IHJlcGVhdGluZw== 18157 +IGRyYXdpbmdz 18158 +cmlzZQ== 18159 +IGdsaXR0ZXI= 18160 +Zml2ZQ== 18161 +IHN1cnQ= 18162 +IHNpY2hlcg== 18163 +IGFkanVzdG1lbnRz 18164 +aXBwaQ== 18165 +Y2tl 18166 +IHJlcHJlc2VudGF0aXZlcw== 18167 +IG1pZHN0 18168 +IHNwb2ls 18169 +bWV5ZQ== 18170 +IHRhZ3M= 18171 +IHllcA== 18172 +IFN0ZXBoYW5pZQ== 18173 +IGdlcmU= 18174 +IFJ1ZA== 18175 +54s= 18176 +IGdyb3M= 18177 +IHF1ZXVl 18178 +IGFjY29yZA== 18179 +IG9yZ2FuaXNhdGlvbg== 18180 +ZW5keQ== 18181 +IFRleHQ= 18182 +w7x5b3I= 18183 +IMOt 18184 +IGNvbmNsdXM= 18185 +IOykgOs= 18186 +IGFtcA== 18187 +IExlc3M= 18188 +IOuQmOuKlA== 18189 +Y2Fubw== 18190 +IFBpeA== 18191 +YXBlZA== 18192 +IGRhcmF1Zg== 18193 +dW8= 18194 +eW50aA== 18195 +YWJlbA== 18196 +IERvbmU= 18197 +IGRpY2s= 18198 +YXRob24= 18199 +IGhpbGFy 18200 +YWNjbw== 18201 +IOyGjQ== 18202 +IE9yZWdvbg== 18203 +IFdlaWw= 18204 +IG1hdGhlbWF0aWNz 18205 +IGFsbQ== 18206 +IHBpeGVscw== 18207 +IGZyw6Vu 18208 +0LHQvg== 18209 +RkM= 18210 +0L3Rjg== 18211 +aGVpbQ== 18212 +Z29z 18213 +IEZvcmdldA== 18214 +ZmVuZA== 18215 +IFZvaWzDoA== 18216 +IEdyZWV0 18217 +IM6xz4XPhA== 18218 +IHJlY3Vy 18219 +NTE= 18220 +IOyeiOqzoA== 18221 +QXQ= 18222 +IHlhcmRz 18223 +0LjRgtC4 18224 +IG9mZnNldA== 18225 +cm9sbGluZw== 18226 +INCf0L7RgQ== 18227 +IGVubGlnaHQ= 18228 +IFBhZA== 18229 +bGltaXRlZA== 18230 +0LjQu9GM0L3Qvg== 18231 +IFNhcmE= 18232 +INGB0LTQtdC70LDRgtGM 18233 +bWFydA== 18234 +IEp1bXA= 18235 +IGFkb3JhYmxl 18236 +b3JzZQ== 18237 +Y2hlZXJpbmc= 18238 +IGVtcGF0aHk= 18239 +IFRvbmlnaHQ= 18240 +b3Jw 18241 +IEh1bnRlcg== 18242 +UG9pbnQ= 18243 +0LPQsA== 18244 +IHBhc3Nlbmdlcg== 18245 +IEtuaWdodA== 18246 +IHNlZW1pbmdseQ== 18247 +aHVo 18248 +IHRoZWF0cmU= 18249 +IHRvbWI= 18250 +IGRlcHJlc3NlZA== 18251 +IHN1bW1vbg== 18252 +IHNhdGlzZmFjdGlvbg== 18253 +ZG9vcnM= 18254 +IEhvdXN0b24= 18255 +0LDRjtGJ 18256 +IFJpbw== 18257 +0LPQu9GP 18258 +IGFycmFuZ2Vk 18259 +IGhhbmRsZXM= 18260 +IHRyaWxsaW9u 18261 +IG5pZ2h0bWFyZQ== 18262 +IFF1YW5kbw== 18263 +IG9sZQ== 18264 +IEd1aWRl 18265 +b29v 18266 +IGJpbGU= 18267 +IGVtcGV6 18268 +IDcy 18269 +Y3JpYmVk 18270 +IHByb2dyZXNzaW9u 18271 +IExpbnV4 18272 +66as 18273 +IOyymOydjA== 18274 +IGZvc3NpbA== 18275 +IHF1ZXJv 18276 +7Iah 18277 +YXRpdmE= 18278 +IHB1eno= 18279 +IFp1cw== 18280 +IHRocmlsbGVk 18281 +IENC 18282 +IG1pbmVy 18283 +0YDQsNGJ 18284 +IFNBUg== 18285 +IE5vcw== 18286 +INCz0L7RgNC+0LQ= 18287 +IGNhbWI= 18288 +INGC0LA= 18289 +IHJlc3VsdGVk 18290 +IERpY2s= 18291 +b3VuZw== 18292 +IGNvbWljcw== 18293 +IGFic29sdXQ= 18294 +c3Rhbg== 18295 +ZGltZW5zaW9uYWw= 18296 +IHRlbnNl 18297 +bXVz 18298 +IEludGVsbA== 18299 +INGN0YLRgw== 18300 +IHBoYXNlcw== 18301 +IHZvbHRh 18302 +IHbDo28= 18303 +Ym91bmQ= 18304 +IEFuZGVyc29u 18305 +IGN1cmlvc2l0eQ== 18306 +IHBvbnQ= 18307 +IGRlbW9uc3RyYXRlZA== 18308 +b2xpbmU= 18309 +IFNwZWVk 18310 +IG1hbWE= 18311 +IHNob2NraW5n 18312 +IGtpZWR5 18313 +IGVhcnRocXVha2U= 18314 +IGltcGxpZXM= 18315 +IGVudGVycw== 18316 +noA= 18317 +IGVsZXZhdG9y 18318 +IGRlbGlnaHRlZA== 18319 +IE1pdHQ= 18320 +IEJhc2Vk 18321 +IERvbA== 18322 +IGtlbg== 18323 +IHdvcnJ5aW5n 18324 +IGZpbGVk 18325 +YWlsYW5k 18326 +INC80LXRgg== 18327 +IG1hc2M= 18328 +IM6R 18329 +IEp1bGll 18330 +IGRpbWVuc2lvbmFs 18331 +aHVtYW4= 18332 +VG9r 18333 +w78= 18334 +IHVuc3Q= 18335 +IHNldWxl 18336 +IGVtYmFy 18337 +IO2VqeuLiOuLpA== 18338 +YWNpb24= 18339 +IOyJ 18340 +IOu2gOu2hA== 18341 +IGhlYXRlZA== 18342 +4oCm4oCm 18343 +IiE= 18344 +IHJlYWxpc2U= 18345 +0LXRgtGL 18346 +aWVuaWE= 18347 +aWV6 18348 +IGbDvGg= 18349 +IEVzc2U= 18350 +IHBz 18351 +IGTDsw== 18352 +YXN0ZXJz 18353 +IG9ucw== 18354 +UE0= 18355 +IHJldHJv 18356 +bWFrZXI= 18357 +d2hlbg== 18358 +IGVsbGE= 18359 +IExpdmluZw== 18360 +IExhbQ== 18361 +IHRyb25n 18362 +IGFwcHJvdmU= 18363 +IM64zrE= 18364 +IHN1bmc= 18365 +0LXQvdC40Y4= 18366 +IFJlbW92ZQ== 18367 +w6huZQ== 18368 +aXJlbg== 18369 +IHN0cmFuZ2Vy 18370 +0LjQvdGL 18371 +IHbDpg== 18372 +YWZ0ZXI= 18373 +b3R0bw== 18374 +lOuhnA== 18375 +IEFob3Jh 18376 +bWlsbA== 18377 +SVNI 18378 +IGdyYWR1YXRpbmc= 18379 +a3Rl 18380 +IHJlbm92 18381 +IHByb2Nlc3NlZA== 18382 +a2V5cw== 18383 +0LXQutC+ 18384 +IGVucmljaA== 18385 +IMWfZWs= 18386 +IGluc2Vj 18387 +IE5hbg== 18388 +Y2FrZXM= 18389 +IGlsbHVzaW9u 18390 +mOulvA== 18391 +IGFpcmw= 18392 +aW1z 18393 +IGFudGVu 18394 +4buvbmc= 18395 +c24= 18396 +IHByZWNpc2E= 18397 +6riw7J6Q 18398 +INin2YTYuQ== 18399 +IGZvcmVtb3N0 18400 +IHBhcmFncmFwaA== 18401 +YXZhaXM= 18402 +INCy0L7RgQ== 18403 +IG1hbnM= 18404 +w61maWM= 18405 +Ym90 18406 +INi52YY= 18407 +IGJyb3Ro 18408 +IGFsdGVybmF0ZQ== 18409 +IENoYXB0ZXI= 18410 +IHZlY3RvcnM= 18411 +ZXNhcg== 18412 +IGluZGljYXRpb24= 18413 +IE5laW4= 18414 +toE= 18415 +IGplYW5z 18416 +WUU= 18417 +Y29uZA== 18418 +IHVuaXRlZA== 18419 +YWJp 18420 +IFNlcmdl 18421 +IHBhcnRpYWxseQ== 18422 +IG1hY3Jv 18423 +IGV0aGljYWw= 18424 +cnVpdA== 18425 +IHNoaWZ0ZWQ= 18426 +IGNhYmU= 18427 +IG1hdGhlbWF0aWNhbA== 18428 +IHJ1ZGU= 18429 +15nXldeq 18430 +IE1lcmM= 18431 +IGdhbnpl 18432 +aWNpb24= 18433 +IHVuY29uc2Npb3Vz 18434 +IGJ1cm50 18435 +INGA0LXQsQ== 18436 +7Yq46w== 18437 +IGNoYXJt 18438 +YW5kYWw= 18439 +7LKc 18440 +b3RoeQ== 18441 +IEhhZGk= 18442 +IGFwcHJlY2lhdGlvbg== 18443 +RU5E 18444 +IHLDqWFs 18445 +toTrk6Q= 18446 +IE5hZw== 18447 +oKTqs6A= 18448 +IExhdXJlbg== 18449 +IHbhu5tp 18450 +IEJyaWRnZQ== 18451 +IFVtbQ== 18452 +IFdlZw== 18453 +IGNoYXF1ZQ== 18454 +IFNvcGg= 18455 +IGdkemll 18456 +7ZGc 18457 +IHN0ZXI= 18458 +IEJsYQ== 18459 +IHJlZmxlY3Rz 18460 +IGJlbmNobWFyaw== 18461 +0LLQsNGC 18462 +YW1pbmU= 18463 +IGFuaA== 18464 +IGNvbnRpbmVudA== 18465 +IEZEQQ== 18466 +7KGw 18467 +IMOqdGVz 18468 +15nXkA== 18469 +IGJsb29keQ== 18470 +IE5pbmU= 18471 +aWVsdA== 18472 +ZW1hbmQ= 18473 +IOuztOqzoA== 18474 +IHRpZGFr 18475 +IFNjaWVudA== 18476 +cGxleA== 18477 +b3N0ZW4= 18478 +IGFuaW1hdGVk 18479 +YXNzYQ== 18480 +IGRlcml2ZWQ= 18481 +INC40YHRgtC+0YA= 18482 +IE1pZw== 18483 +7IWY 18484 +IHJvcw== 18485 +cGx1cw== 18486 +b3NhdXI= 18487 +IF4= 18488 +IGludGVuc2l2ZQ== 18489 +IGdsb2JhbGx5 18490 +IGRpZmVyZW4= 18491 +7J206rOg 18492 +xIVk 18493 +IGTDqXM= 18494 +IHByZXNlbnRhdGlvbnM= 18495 +IENybw== 18496 +IGVzc2Vz 18497 +IEJldHdlZW4= 18498 +UGE= 18499 +IG5hdw== 18500 +4Lit4LiH 18501 +IGJyZWVk 18502 +aWNodGU= 18503 +INCe0L3QuA== 18504 +IEJ1aWxkaW5n 18505 +IGNvbmZvcm0= 18506 +TU8= 18507 +INCW 18508 +IEtpZA== 18509 +bmFz 18510 +IER1ZQ== 18511 +csOpcw== 18512 +IGRpb3g= 18513 +IEJpbg== 18514 +IHRheGk= 18515 +IHNhcA== 18516 +IEh1Yg== 18517 +IGNlbnRlcmVk 18518 +IHN1cmdl 18519 +IGF2b25z 18520 +IGxlYXJudA== 18521 +IFlhbQ== 18522 +IERpZXNl 18523 +0L3QuNC60Lg= 18524 +IEJlaWo= 18525 +V2lsbA== 18526 +IGF0dGVtcHRlZA== 18527 +IGdyaWVm 18528 +w7Nq 18529 +IGtpZG5leQ== 18530 +IG9wcG9uZW50cw== 18531 +IG5vbWU= 18532 +NTc= 18533 +0Y/RgtC90L4= 18534 +IG1pZG5pZ2h0 18535 +QW5ub3VuY2Vy 18536 +YWNpdHk= 18537 +b25lZA== 18538 +IHB1ZWRlcw== 18539 +IHByb2JsZW1hdGlj 18540 +IGNvcHM= 18541 +IFBldGU= 18542 +cmludA== 18543 +dW50ZWQ= 18544 +IGJpcA== 18545 +5qI= 18546 +IMOA 18547 +IGNlbnM= 18548 +YXRpdmVseQ== 18549 +IHVyZ2VudA== 18550 +IHN0cnVnZ2xlZA== 18551 +YWNodXM= 18552 +IG1pY3Jvd2F2ZQ== 18553 +IFNpZGU= 18554 +IERlbm4= 18555 +INGP0LI= 18556 +IHVyZ2U= 18557 +IGZvcmNpbmc= 18558 +d2FuZw== 18559 +INC60L7RgtC+0YDQsNGP 18560 +IG1hbW0= 18561 +IPCfjg== 18562 +IHRyaWJlcw== 18563 +IFNoYWRvdw== 18564 +IFNhbmc= 18565 +IEhpdGxlcg== 18566 +IGx1bg== 18567 +IHNjZW50 18568 +7KeR 18569 +IG92ZXJ3aGVsbWVk 18570 +IGJvbWJz 18571 +IGNyaW1pbg== 18572 +IGNvbnNvbGlk 18573 +IG1vbGVjdWxhcg== 18574 +15XXpw== 18575 +bm9y 18576 +IHBlcmNlaXZlZA== 18577 +IHbDqQ== 18578 +IGFsdG9nZXRoZXI= 18579 +IG9ydGg= 18580 +IHZlbQ== 18581 +IHp3YXI= 18582 +aXpv 18583 +xas= 18584 +IG1lbHRlZA== 18585 +b3JkZW4= 18586 +IENoYXJsb3R0ZQ== 18587 +IEV4Y2Vs 18588 +YXJ0YQ== 18589 +7Jyg 18590 +IEdldw== 18591 +IHJvbWFuY2U= 18592 +ZXJlbW9z 18593 +IGNvbG9uaWFs 18594 +IHRyYWRpdGlvbmFsbHk= 18595 +IHF1YW4= 18596 +aG9v 18597 +IGNoYW1waW9uc2hpcA== 18598 +IGFyYml0cg== 18599 +7IWU 18600 +INC80LjQvQ== 18601 +IHNlbGZpc2g= 18602 +IGJsZXc= 18603 +cnlpbmc= 18604 +IG9wZXJhdG9ycw== 18605 +IGp1cmlzZA== 18606 +j4U= 18607 +dWl0aW9u 18608 +IEVD 18609 +IEFueWJvZHk= 18610 +dmF0ZQ== 18611 +aWV0aWVz 18612 +IGFuYWx5c3Q= 18613 +tOyXkA== 18614 +INCy0YHQtdCz0LTQsA== 18615 +w6dlaw== 18616 +IEt1bg== 18617 +IGFnaW5n 18618 +1aE= 18619 +0YDQsNGE 18620 +IE1vbWVudA== 18621 +IEh1YQ== 18622 +6IM= 18623 +dGhlbg== 18624 +0LXQu9Cw 18625 +ZXN0b25l 18626 +IGVuZGU= 18627 +IGF3YXJkZWQ= 18628 +IG7DpGNoc3Rlbg== 18629 +IFNwb3Q= 18630 +IE5lZw== 18631 +IGZhaXJ5 18632 +IENvdmVy 18633 +IGRlcG9zaXQ= 18634 +IHN0cmVzc2Z1bA== 18635 +IGp1bms= 18636 +IG1ldGFib2w= 18637 +SmE= 18638 +IOq3gA== 18639 +IHVuZGVyZ3JhZHVhdGU= 18640 +IGNhbmNlbGw= 18641 +IGNvbnNlbnN1cw== 18642 +IG9zbw== 18643 +4bq3 18644 +xJ9lcg== 18645 +cmFkYQ== 18646 +IFBhbGFjZQ== 18647 +IHBlZGFs 18648 +IGV4YWdnZXI= 18649 +IGJlaGF2aW9yYWw= 18650 +cGxheWVy 18651 +bGxlcw== 18652 +IGNvbm5lY3Rvcg== 18653 +IHNrZXB0 18654 +jZTrnbzqs6A= 18655 +IG1pdHQ= 18656 +IEhhaGE= 18657 +IHBlcXVl 18658 +IEdvdHQ= 18659 +ZmFuZw== 18660 +4LA= 18661 +am9z 18662 +IGtpY2tpbmc= 18663 +IG1vdW50ZWQ= 18664 +IHJlcGxhY2luZw== 18665 +dm9z 18666 +IHF1aWV0bHk= 18667 +IG1pbGl0 18668 +IG93bnM= 18669 +IG5pdmVhdQ== 18670 +IGF1cg== 18671 +IEJ1eQ== 18672 +IHByZWRpY3RlZA== 18673 +IGNvd3M= 18674 +IHBvbmVy 18675 +IERyaQ== 18676 +IHJlbWFya3M= 18677 +IHJlcG9ydGVy 18678 +IGFya2FkYcWf 18679 +0LXRgdGC0Lg= 18680 +IHNhdmVz 18681 +IMOnb2M= 18682 +IG1ldGFwaG9y 18683 +IEtlbA== 18684 +c3RhdGlvbg== 18685 +c2VtYmx5 18686 +IGFkdmlzb3I= 18687 +IHdvcmtzaG9wcw== 18688 +IGFjY291bnRpbmc= 18689 +IHRvaw== 18690 +bmllcg== 18691 +aW5uZXI= 18692 +IGJ1cmFkYQ== 18693 +IEJC 18694 +IE9seW1waWM= 18695 +IFByYWN0 18696 +Q2hyaXN0 18697 +INGB0Y4= 18698 +IGthcw== 18699 +IHZpZXdlZA== 18700 +IG1hcmtlcnM= 18701 +IGZvdG8= 18702 +Z2V0aWM= 18703 +IEx1Y2Fz 18704 +IHBhZHM= 18705 +IEpvaA== 18706 +IENEVQ== 18707 +YWZmZW4= 18708 +YXJlbQ== 18709 +IEJlY2s= 18710 +IEdvc2g= 18711 +c2hpdA== 18712 +IE1hdGVy 18713 +YWJ1bGFyeQ== 18714 +IFJvb20= 18715 +bGxlbg== 18716 +IEZvbGxvd2luZw== 18717 +IGRvaXQ= 18718 +YmFsbHM= 18719 +aXhh 18720 +IGdyb3VuZHM= 18721 +IOyeiOuKlOuNsA== 18722 +TFM= 18723 +IHdpbGRsaWZl 18724 +IFNRTA== 18725 +IHNoaWZ0cw== 18726 +Qm9vaw== 18727 +IGhvc3RlZA== 18728 +bGxvcg== 18729 +IHNuYXBz 18730 +IGJlc29pbg== 18731 +INep15Q= 18732 +IHBlYW51dA== 18733 +w6RmdA== 18734 +uaA= 18735 +xZts 18736 +QXVkaWVuY2U= 18737 +IEJhcmJhcmE= 18738 +IGFkb3B0aW9u 18739 +IHdvbGY= 18740 +INC+0YHQvdC+0LI= 18741 +YXJkYQ== 18742 +IGV4cG9zZQ== 18743 +IOym 18744 +amFz 18745 +xJM= 18746 +IGNvdW50bGVzcw== 18747 +IOyngQ== 18748 +aGVhbHRo 18749 +dWVudA== 18750 +aXNv 18751 +b3Rpb24= 18752 +IGh1bmdlcg== 18753 +IG1vaXM= 18754 +b2Zmcw== 18755 +IGNsYWltaW5n 18756 +IM6a 18757 +IEJlbGc= 18758 +INC90LDQuQ== 18759 +6riw64+E 18760 +IHVucHJl 18761 +IGdlZA== 18762 +IElv 18763 +INC/0L7RgdC80L7RgtGA 18764 +IGNvxZs= 18765 +IE5hcnJhdG9y 18766 +IMOHb2s= 18767 +7Zmp 18768 +4Lit4Lii 18769 +Y2lwbA== 18770 +IHRpbWVy 18771 +IGRlZmlj 18772 +YXZpbg== 18773 +IGNhdGVnb3I= 18774 +IHRocm93cw== 18775 +IOuCnA== 18776 +INC/0L7RgdC70LXQtA== 18777 +IFRoYWk= 18778 +IG1hc2N1bA== 18779 +IGJla29tbWVu 18780 +IGludGVybmF0aW9u 18781 +dWxzZQ== 18782 +IGF5ZQ== 18783 +IHBvaQ== 18784 +IHBpeGVs 18785 +Q2hyaXM= 18786 +IHN0b3Zl 18787 +zr/OuQ== 18788 +IGdlbmVyYXRvcg== 18789 +IOy7rOs= 18790 +IGFjYWRlbQ== 18791 +IHByYWN0aWNlZA== 18792 +IGFxdWVzdA== 18793 +IGNvbnRyaWJ1dGluZw== 18794 +IEln 18795 +IOG7nw== 18796 +IGNvbnRhaW5pbmc= 18797 +IHdyZXN0bGluZw== 18798 +INGH0LXQs9C+ 18799 +aGF1cHQ= 18800 +IGVzc2Fz 18801 +dmVsb3Bl 18802 +IGV4Y2VwdGlvbmFs 18803 +WVU= 18804 +IEFwcGxhdXNl 18805 +cmljYW5l 18806 +IGNvbnZlbmllbmNl 18807 +INC00LXQu9Cw0YLRjA== 18808 +0LjQu9C40YHRjA== 18809 +IEVudmlyb24= 18810 +ODU= 18811 +IGPDog== 18812 +IOyViOuFle2VmOyEuOyalA== 18813 +IE1P 18814 +IFBvcGU= 18815 +IHNhaA== 18816 +b2Jp 18817 +IG1hc3RlcnM= 18818 +YWluZXM= 18819 +IGJsZXNzaW5ncw== 18820 +IG9iZXk= 18821 +IGZsdXg= 18822 +IGJyb3c= 18823 +IOyLpA== 18824 +IHBvcHVsYXJpdHk= 18825 +IExhbWI= 18826 +emV1Zw== 18827 +7JmU 18828 +j4TroZ0= 18829 +aXR1YXRpb24= 18830 +IGFjY29tcGFu 18831 +IGRpYWxvZw== 18832 +IEphbWll 18833 +IHNld2luZw== 18834 +IGJsZWVkaW5n 18835 +IGJhaWw= 18836 +IHRocmVhZHM= 18837 +b2RnZQ== 18838 +IFNoYW5n 18839 +IGRlcGxveW1lbnQ= 18840 +Y2hlZA== 18841 +IHNhdGlzZnk= 18842 +IGxheg== 18843 +IG1pc3NpbGU= 18844 +IExpbmtlZA== 18845 +IG1ha2Vycw== 18846 +Y2l1bQ== 18847 +ZnJl 18848 +IOuovA== 18849 +IOustOs= 18850 +IEVkZ2U= 18851 +IHNvY2lldGllcw== 18852 +IGFndWE= 18853 +IHN5bmNocm9u 18854 +oaA= 18855 +dW5mdA== 18856 +IHVubQ== 18857 +IHRyaWFuZw== 18858 +IGluanVzdA== 18859 +dG9w 18860 +IG9yYWw= 18861 +a29y 18862 +IO2VqA== 18863 +bGRpZ3Q= 18864 +Y2XEnw== 18865 +cXVldA== 18866 +IExlbw== 18867 +IHNhdm9pcg== 18868 +IGVhc3Rlcm4= 18869 +aWV1 18870 +IGV4cGVk 18871 +INCh0L8= 18872 +IHVubmVjZXNzYXJ5 18873 +IFBlcmZvcm0= 18874 +IE1pbmc= 18875 +INGA0LDQsg== 18876 +IGludGVudGlvbnM= 18877 +IGNvbXByZXNzaW9u 18878 +IFNhYw== 18879 +zr/Ouw== 18880 +YXJzb24= 18881 +IHRyb3V2ZQ== 18882 +IE11aGFtbWFk 18883 +INCy0YvRgQ== 18884 +IGZpbml0ZQ== 18885 +INC90LDRhdC+0LQ= 18886 +dWdh 18887 +0YDQsNC30YM= 18888 +IGNlbGVicmF0ZWQ= 18889 +IGNvbmZlc3M= 18890 +IHNxdWFyZXM= 18891 +IEdvcmRvbg== 18892 +IOuCmOyY 18893 +IHN5bmRyb21l 18894 +IGNvbXBsZXRpb24= 18895 +IGJhY2tpbmc= 18896 +IGRhcmY= 18897 +IFF1cmFu 18898 +IGludGVybWVkaWF0ZQ== 18899 +IGtlcg== 18900 +IGTDvA== 18901 +aGVzaXZl 18902 +IGFjY291bnRhYmlsaXR5 18903 +IFJlYmVjY2E= 18904 +IFNsZWVw 18905 +IGRpZmbDqXJlbnQ= 18906 +b2xz 18907 +IFJpY2U= 18908 +IOuzuA== 18909 +IGFudGliaW90 18910 +z4TOrA== 18911 +cno= 18912 +YW1ibGluZw== 18913 +IHNlbnNpdGl2aXR5 18914 +IGNocm9u 18915 +YWxsYXM= 18916 +NjQ= 18917 +IGZsZWV0 18918 +IG9wdGltaXN0aWM= 18919 +0YHQutC+0LPQvg== 18920 +IGphZGk= 18921 +YWlsbGV1cnM= 18922 +IEVub3VnaA== 18923 +IHNlbmlu 18924 +IHBhY2tz 18925 +Ym4= 18926 +IEFyZWE= 18927 +IFRybw== 18928 +qOumrA== 18929 +0LDRlA== 18930 +IFRob20= 18931 +IGhhcm1vbnk= 18932 +0L3QuNC60LA= 18933 +IHNvbWVkYXk= 18934 +SVNF 18935 +IEJyb2Fkd2F5 18936 +bGFyZXM= 18937 +ZXJuZXNz 18938 +4LmE4Lih 18939 +IFRlbm4= 18940 +IE5BVE8= 18941 +IG1pbnV0b3M= 18942 +IEthbnNhcw== 18943 +IE1vbmc= 18944 +IGNvbXB0ZQ== 18945 +iqQ= 18946 +IOyXrQ== 18947 +IHN1cGVyaGVybw== 18948 +IEdhcmRlbg== 18949 +IE1vcw== 18950 +IGF0dGFjaG1lbnQ= 18951 +IGJ1c3Q= 18952 +4K+K 18953 +IFRoYWlsYW5k 18954 +c3RhdA== 18955 +IHNwaWNl 18956 +IExlYg== 18957 +IGxlYXA= 18958 +emVjaA== 18959 +R0w= 18960 +IHZlcmw= 18961 +IGZpeGluZw== 18962 +IOuztOuptA== 18963 +IHBvcm4= 18964 +IGLDvHk= 18965 +INmF2Kc= 18966 +IFZpcnQ= 18967 +IFRvbW15 18968 +IGNhcmdv 18969 +IE9saGE= 18970 +IHJva3U= 18971 +2YPZhg== 18972 +IGJha2Vk 18973 +IHRhY3RpY3M= 18974 +IG1hcmtldHBsYWNl 18975 +IGt0w7NyYQ== 18976 +YXJsbw== 18977 +IHN3aXRjaGVz 18978 +IGNhY2hl 18979 +IEhS 18980 +IEdhbg== 18981 +IEdQUw== 18982 +IGR1YXM= 18983 +aGVyZXM= 18984 +0LXRgNGI 18985 +dHJhY2s= 18986 +IGx1bmdz 18987 +U3RhdGlvbg== 18988 +aWdnbGVz 18989 +IGNhbXBpbmc= 18990 +IGNvbXBsZXRpbmc= 18991 +YW1hcw== 18992 +IGN5Y2w= 18993 +IHByb3RvdHlwZQ== 18994 +IEp1ZGdl 18995 +b3R5cGVz 18996 +IGluZmVjdGlvbnM= 18997 +oKTr 18998 +0LXRgNCz 18999 +b2Jh 19000 +IEJvZA== 19001 +IFNlY29uZGx5 19002 +IGFwb3N0 19003 +IHNvZ2Fy 19004 +IHJlYXNz 19005 +aWVr 19006 +IGFzaGFtZWQ= 19007 +IGN1cnZlcw== 19008 +INCy0LDQtg== 19009 +IGVuc2VtYmxl 19010 +YXR1cg== 19011 +IHBob3RvZ3JhcGhlcg== 19012 +IGVpZ2h0aA== 19013 +IHdhc3RlZA== 19014 +IGRhbXA= 19015 +INC80LDQuw== 19016 +YXJlbmE= 19017 +IGludGVybmFsbHk= 19018 +IGhlZWxz 19019 +IFNhbHQ= 19020 +IGJsaXI= 19021 +iOuCmA== 19022 +IGNvbnRyYXJ5 19023 +IHByaW1h 19024 +IG9zcw== 19025 +IHJhYmJpdA== 19026 +IGF1dG9y 19027 +IGJyb2FkbHk= 19028 +w61zdA== 19029 +IGJhY2tz 19030 +7ZSE 19031 +ZXRv 19032 +IGp1cnk= 19033 +6LE= 19034 +IHByb3N0dQ== 19035 +IGJhcmE= 19036 +IHBhcmxpYW1lbnQ= 19037 +b3JpZW50 19038 +0LjQu9Cw0YHRjA== 19039 +IGluZGlyZWN0 19040 +w6Ft 19041 +IMOlcg== 19042 +IHRyYWl0cw== 19043 +IGTDrWFz 19044 +2YTZhQ== 19045 +IENU 19046 +YWx5c3Q= 19047 +IGxpdmVzdA== 19048 +IGtvcw== 19049 +TWF5 19050 +IEppbmc= 19051 +IGpvdXJuYWxpc3Rz 19052 +0YfQuNC6 19053 +YXJtcw== 19054 +IOqwkOyCrA== 19055 +INC40LzQtQ== 19056 +IMOpZ2Fs 19057 +IE5ld3Rvbg== 19058 +IHJlY292ZXJlZA== 19059 +IGJyYXVjaGVu 19060 +IEJyb24= 19061 +0LDQvdC+ 19062 +IHBhbGU= 19063 +cHJpc2Vz 19064 +IGhvcmFz 19065 +Y2h0cw== 19066 +w7/Dvw== 19067 +YWtlcnM= 19068 +IEFsYXNrYQ== 19069 +emllag== 19070 +IHNjb29w 19071 +7J206rCA 19072 +Y29y 19073 +w6lsw6k= 19074 +IHN1cmc= 19075 +IHZpZW5l 19076 +IEtyaXN0 19077 +NTQ= 19078 +IGJhbm5lZA== 19079 +IHNtb290aGx5 19080 +IHRyZWF0cw== 19081 +IHByb25vdW5jZQ== 19082 +IGZsdXNo 19083 +IGNhbWJp 19084 +IG11c2ljaWFu 19085 +IEFzaGxleQ== 19086 +IFNQRA== 19087 +IEJvYmJ5 19088 +IGdsb3Nz 19089 +cmVzcGVjdA== 19090 +IHJldmlld2luZw== 19091 +IGdlbmVyaWM= 19092 +xrDhu5tj 19093 +YXRzw6RjaGxpY2g= 19094 +IGhlYWx0aGllcg== 19095 +dWJlcnM= 19096 +INC00LDQvQ== 19097 +IE1lZGljYXJl 19098 +NTM= 19099 +IGNvbXBsYWludHM= 19100 +amFj 19101 +IGFncmljdWx0dXJhbA== 19102 +U3Bl 19103 +IEpvbmc= 19104 +IGRpb3hpZGU= 19105 +6rKo 19106 +ZWxpams= 19107 +IFNoaXQ= 19108 +YWludHM= 19109 +IElhbg== 19110 +IFNpbXBseQ== 19111 +IFN0cmU= 19112 +IEdEUA== 19113 +NTk= 19114 +YXN6 19115 +IEthdGll 19116 +INCx0YA= 19117 +IHBlZWs= 19118 +b3d5Y2g= 19119 +IHJlc29ydA== 19120 +IHJlc2lkZW5jZQ== 19121 +IHNwaWNlcw== 19122 +Y2nDsw== 19123 +IGplZGVy 19124 +IGVtbw== 19125 +YXJpdW0= 19126 +IHB1ZmY= 19127 +66eJ 19128 +0YPQu9GM0YI= 19129 +IG1ldGE= 19130 +IOyghOs= 19131 +IG9wdGltaXphdGlvbg== 19132 +Z2FuZw== 19133 +IO2VhA== 19134 +IGVmZmljaWVudGx5 19135 +IHZpc3VhbGx5 19136 +IGZyb3N0 19137 +IEFydGh1cg== 19138 +IMW8 19139 +IGFjaGlldmluZw== 19140 +IHJvdGF0aW5n 19141 +IGxpbmluZw== 19142 +IG9jY3VwaWVk 19143 +bWVudGF0aW9u 19144 +IHN0cmV0Y2hpbmc= 19145 +IHN0YWxs 19146 +b3N0aWM= 19147 +IFNldmVy 19148 +IGdsdWM= 19149 +IHLDs8W8 19150 +IG91dHJlYWNo 19151 +c3RyYQ== 19152 +aWtlbg== 19153 +IOyWmOq4sA== 19154 +IEpvaW4= 19155 +IGltcGU= 19156 +IGNvbXBlbnNhdGlvbg== 19157 +IFRhdA== 19158 +IENhcmxvcw== 19159 +w7xocnQ= 19160 +IEZyYW5jaXM= 19161 +Y2pp 19162 +eWVhaA== 19163 +IG1lbWJyYW5l 19164 +IGV4aGFsZQ== 19165 +IHJlbGk= 19166 +IE9S 19167 +IHJlZnJpZ2VyYXRvcg== 19168 +IFZlbmV6 19169 +TGlrZQ== 19170 +IHJhaXNlcw== 19171 +b3R0bGU= 19172 +YXR1cmE= 19173 +IHJ1bGVy 19174 +IHdlZXI= 19175 +IGd1aWRlZA== 19176 +IE1hZ24= 19177 +IENvcnBvcg== 19178 +jZQ= 19179 +IGF0dHJpYnV0ZQ== 19180 +IFdvYWg= 19181 +IGFycm93cw== 19182 +IGF3YWl0 19183 +IFByaW0= 19184 +IGRpZ25pdHk= 19185 +IE9udGFyaW8= 19186 +aXNjaGVy 19187 +IOyLnQ== 19188 +aW1lbg== 19189 +b3V2ZXI= 19190 +QVNT 19191 +4buHbg== 19192 +b3B5 19193 +YWNodXNldHRz 19194 +IGVsZGVybHk= 19195 +RkE= 19196 +IERhaWx5 19197 +c2hpbmU= 19198 +IDU2 19199 +6KI= 19200 +aWVybm8= 19201 +IHNraWxsZWQ= 19202 +IGdyb8OfZQ== 19203 +IE9haw== 19204 +aWdnbGU= 19205 +0LXQu9C10Lk= 19206 +IGJpcmF6 19207 +IGFyZ3Vpbmc= 19208 +INC/0L7RjdGC0L7QvNGD 19209 +IGRyaWZ0 19210 +IGhhcm5lc3M= 19211 +IGRlaXhhcg== 19212 +YXV0cmU= 19213 +IFNlZWluZw== 19214 +IGNhcGl0YWxpc20= 19215 +IEVsZA== 19216 +emlvbmU= 19217 +IEJleW9uZA== 19218 +IHBlcmZlY3Rpb24= 19219 +IGhvZQ== 19220 +IGRlY2xhcmU= 19221 +0LDQu9Cw0YHRjA== 19222 +IHBva2U= 19223 +INeh 19224 +IGZpZ2h0ZXJz 19225 +6rKg64uk 19226 +0L7RgNC+0LI= 19227 +IGFjY29yZGluZ2x5 19228 +IElzYQ== 19229 +IG9wdGltaXpl 19230 +IE1pbmlzdHJ5 19231 +IHNhZ2U= 19232 +7Iuc66m0 19233 +IGJlbmk= 19234 +IGRvbmF0aW9u 19235 +IGNsZWFyZWQ= 19236 +IEx1Y2tpbHk= 19237 +IGhhcm1mdWw= 19238 +tey7pA== 19239 +IGNlbWVudA== 19240 +0L/QuNGB 19241 +IGRlZGk= 19242 +IENyYWln 19243 +IGRlbW9ucw== 19244 +IGN1c3RvbWl6ZQ== 19245 +IGlnbm9yZWQ= 19246 +IFRpYW4= 19247 +IGhvcGVk 19248 +IEJ1cmVhdQ== 19249 +IHJp 19250 +IFlhaA== 19251 +IHNvY2tldA== 19252 +IGZlYXR1cmluZw== 19253 +IHBhcmY= 19254 +IFRF 19255 +IFRlYWNoZXI= 19256 +IGNhdGFsb2c= 19257 +6rCA7KeA6rOg 19258 +IFNlaXRl 19259 +IGNvbmU= 19260 +IFBhbGVzdGlu 19261 +IGdld29vbg== 19262 +IGdhaW5pbmc= 19263 +INii 19264 +IGNhdGFzdA== 19265 +IG5laWdoYm91cg== 19266 +SVNU 19267 +IHN0ZWFsaW5n 19268 +IHRyb2lz 19269 +IGludGVuZA== 19270 +IFNob290 19271 +IHBpb25l 19272 +IEludGVs 19273 +IExJTg== 19274 +IGJyaWdodGVy 19275 +IFllc3RlcmRheQ== 19276 +IHNvdw== 19277 +c2lu 19278 +b2Rz 19279 +IGV0aGljcw== 19280 +IGludGVydmlld2Vk 19281 +cmVsbA== 19282 +IHJlZnJlc2hpbmc= 19283 +c8Ol 19284 +IGFic3VyZA== 19285 +IHBob3NwaA== 19286 +Zmls 19287 +IHN0ZWhlbg== 19288 +dmFscw== 19289 +IGNhcmVk 19290 +IGRlbGw= 19291 +Ym9uZQ== 19292 +IGhvY2g= 19293 +IHB1cA== 19294 +IGlv 19295 +IGFjb250ZWNl 19296 +ZWxsZXM= 19297 +IFNwbA== 19298 +aWdp 19299 +IHTDpG4= 19300 +IGVsZXBoYW50 19301 +IGdhdGVz 19302 +IHNsaWNlcw== 19303 +IHByYW5r 19304 +b2tyYXQ= 19305 +IGhpbGFyaW91cw== 19306 +IFNpZA== 19307 +IOuSpA== 19308 +IGVzc2VyZQ== 19309 +IHRlbGVwaG9uZQ== 19310 +aW5hbGx5 19311 +cmF0b3I= 19312 +IGhlbGljb3B0ZXI= 19313 +IGnFn3Rl 19314 +IGdpZA== 19315 +IHRvdXJpc3Q= 19316 +IGNvbmZsaWN0cw== 19317 +0LDRgtCw 19318 +IHTDqQ== 19319 +IGFzc2VydA== 19320 +IGxhdW5kcnk= 19321 +IEJvbQ== 19322 +IHNwZWNpYWxpemVk 19323 +IE1vZGVybg== 19324 +b2dyYWY= 19325 +IGFubw== 19326 +IHJldHJpZQ== 19327 +IFB1dGlu 19328 +IEhBUg== 19329 +INC80LDRiA== 19330 +IM6xz4DPjA== 19331 +IHR1dHRp 19332 +INCy0YLQvtGA 19333 +7Ja1 19334 +IEJ1bA== 19335 +64uk66m0 19336 +xYJl 19337 +YXJpbg== 19338 +IHRoZXJhcGlzdA== 19339 +IGfDpXI= 19340 +IEN6eQ== 19341 +cHBl 19342 +bWly 19343 +IFRlcm0= 19344 +IEJlYXI= 19345 +bGFjZQ== 19346 +IE1vcmVvdmVy 19347 +IERpc2M= 19348 +IO2DgA== 19349 +IHRpdGxlZA== 19350 +IHN0cmlwcw== 19351 +IEZhaHI= 19352 +IFJpbmc= 19353 +cmFuZG8= 19354 +YWZh 19355 +IHNob3J0cw== 19356 +IHRydW5r 19357 +IHNlbnRpZG8= 19358 +z4nOvQ== 19359 +IGFjcmVz 19360 +IG92ZXJk 19361 +IE9seW1waWNz 19362 +IE1lcmNp 19363 +IOuCmOyYpA== 19364 +IGdlcm0= 19365 +YW1tZWQ= 19366 +IHByZWd1bnQ= 19367 +IE51dA== 19368 +IDwv 19369 +IHRyYXZlbHM= 19370 +IHZvY2FidWxhcnk= 19371 +ZXRlbg== 19372 +b2Rlcg== 19373 +IGNvbnN1bWluZw== 19374 +d3JpdGluZw== 19375 +IGFwcGVhcmluZw== 19376 +IGFkanVzdGVk 19377 +c2Vt 19378 +IGZyZW50ZQ== 19379 +IG1heGltaXpl 19380 +IHp3aXNjaGVu 19381 +IHphbQ== 19382 +Y29uc2Npb3Vz 19383 +emVr 19384 +aGFv 19385 +7LKY65+8 19386 +IEVwaXNvZGU= 19387 +IHZpc2liaWxpdHk= 19388 +IG1pam4= 19389 +IHZpZWxlbg== 19390 +IEJyb3RoZXJz 19391 +15nXkQ== 19392 +IHbDpGxkaWd0 19393 +IGNydXNoZWQ= 19394 +dWZlbg== 19395 +YWN0aWM= 19396 +IEJlZA== 19397 +IEZB 19398 +aXNzaXBwaQ== 19399 +IHJlbW90 19400 +IHBldHM= 19401 +IHRodW5kZXI= 19402 +IE1hbQ== 19403 +7JW17Luk 19404 +cGFyZW50cw== 19405 +IGLEsQ== 19406 +IHN1cnRvdXQ= 19407 +IHNlZ21lbnRz 19408 +IG5laG1lbg== 19409 +IHV0aWxpeg== 19410 +IFJ1Ynk= 19411 +IHLhu5Np 19412 +IGhhcHBpbHk= 19413 +IGJ1c2g= 19414 +dWx0YW4= 19415 +2Lg= 19416 +IEhpbA== 19417 +IGxhd24= 19418 +IGV5ZWJyb3dz 19419 +bWV6 19420 +IFN5ZA== 19421 +cmVw 19422 +aW5m 19423 +IG92ZXJoZWFk 19424 +Y3puaWU= 19425 +IG94aWQ= 19426 +IFdvbA== 19427 +IGRlc3Ryb3lpbmc= 19428 +IEFkZGl0aW9uYWxseQ== 19429 +dW1ibGVk 19430 +ZGVw 19431 +IGRlcG9z 19432 +IGNvbW1vZA== 19433 +IGNha2Vz 19434 +IHRhbGVudHM= 19435 +IHBvdXJxdW9p 19436 +IGNvbnRlbXBs 19437 +bmVscw== 19438 +0L7RiQ== 19439 +IEFyYWJpYw== 19440 +IE1hcnlsYW5k 19441 +b3dv 19442 +IFBsYQ== 19443 +xJ9sdW0= 19444 +IHByb3BoZQ== 19445 +IFJlcHJlc2VudA== 19446 +b3BvbA== 19447 +YWNjb3Jk 19448 +IE1lYW5pbmc= 19449 +IGpvaW50cw== 19450 +IGJyYWtlcw== 19451 +Y2t0 19452 +IDE5OTk= 19453 +IHB1YmxpY2F0aW9u 19454 +IFJldmlldw== 19455 +0L7QudC0 19456 +IG5pY2hl 19457 +IHNpZ25pZmljYQ== 19458 +IGRlYnI= 19459 +IG92ZXJsYXA= 19460 +IGRlbWFuZGluZw== 19461 +IFPDsw== 19462 +IHN1YnNlcXVlbnQ= 19463 +IHF1b3Rlcw== 19464 +IEN1cnJlbnRseQ== 19465 +IHByZXZlbnRpbmc= 19466 +IDEzMA== 19467 +IENlbA== 19468 +b25u 19469 +d25pZcW8 19470 +7JW9 19471 +INC60LDQutC40LU= 19472 +QUNI 19473 +IGd1bQ== 19474 +IElzcmFlbGk= 19475 +7Jy864uI6rmM 19476 +5ag= 19477 +cnVrdA== 19478 +IGNsYXBwaW5n 19479 +IE1hc3NhY2h1c2V0dHM= 19480 +IHJlc2lsaWVuY2U= 19481 +IHN1YnNjcmliaW5n 19482 +IGpld2Vscnk= 19483 +Z2VicmE= 19484 +IGNvcnJlY3Rpb24= 19485 +Ym9v 19486 +2KY= 19487 +bGlv 19488 +c2Ft 19489 +IGVudmVsb3Bl 19490 +a2Fs 19491 +IEZhcm0= 19492 +IGNhdHRsZQ== 19493 +IGJyYXM= 19494 +IHJlcGVudA== 19495 +IHRvbmVz 19496 +b3Npb24= 19497 +cGVjdGlvbg== 19498 +IGRlbmVu 19499 +yJtp 19500 +IE1hcmc= 19501 +IGFjcXVpcmU= 19502 +aWJsaW5ncw== 19503 +IGFzcGly 19504 +IHNpemVk 19505 +IGFsYw== 19506 +IHZpYnJhdGlvbg== 19507 +dGls 19508 +ZW1pbg== 19509 +IGNvcnJlbGF0aW9u 19510 +IHNpbmd1bGFy 19511 +INC/0L7Rj9Cy 19512 +cmVr 19513 +IGNoYXB0ZXJz 19514 +bWJyZQ== 19515 +IGF1ZGl0aW9u 19516 +w6dhcw== 19517 +IHZhbXA= 19518 +IHRlcw== 19519 +INGA0LDQt9Cy 19520 +IHJlc3BlY3RlZA== 19521 +Y2lu 19522 +IGZ1Y2tpbg== 19523 +IMO8YmVyaGF1cHQ= 19524 +INC/0L7QsQ== 19525 +IGFsaWtl 19526 +tog= 19527 +cm9iaQ== 19528 +w650 19529 +IFRvdWNo 19530 +YW56YQ== 19531 +IGZpcm1seQ== 19532 +IEdyZWV0aW5ncw== 19533 +c2NhbGU= 19534 +ZGFk 19535 +0LDQutGC0Lg= 19536 +IGJhY2t5YXJk 19537 +0L7QttC0 19538 +R3I= 19539 +IFNURQ== 19540 +0L7RgNGC 19541 +IGjDpHR0ZQ== 19542 +IEZpcnN0bHk= 19543 +IE9mdGVu 19544 +YXN1cmVz 19545 +IGRyYXdz 19546 +cmVkaXQ= 19547 +QVRF 19548 +UGU= 19549 +Q1A= 19550 +IGNvbXBlbGxpbmc= 19551 +IHN1YnNpZA== 19552 +IG5laWdoYm9yaG9vZHM= 19553 +IGRpcGxvbQ== 19554 +IGVudGVuZGVy 19555 +cGVyaW5n 19556 +YXVn 19557 +Y2hhdA== 19558 +0J3Rgw== 19559 +IERvbGw= 19560 +IOygkA== 19561 +IGhvc2U= 19562 +bmFy 19563 +IHJld2FyZGluZw== 19564 +IFNvbGQ= 19565 +IHRha2k= 19566 +IGJsYWRlcw== 19567 +IEthdGg= 19568 +IGpvZ28= 19569 +IHNlbnNhdGlvbg== 19570 +dWFuYQ== 19571 +cGVs 19572 +IFJlY2VudGx5 19573 +IHBvbHltZXI= 19574 +IFVQ 19575 +LS0t 19576 +IGhvdmVy 19577 +IHJ1bGVk 19578 +INeU15DX 19579 +IGFmZmVjdGlvbg== 19580 +IMSR4buD 19581 +IGJyZWU= 19582 +IExheQ== 19583 +IFlvbmc= 19584 +IHJlY2VpdmVy 19585 +nOulvA== 19586 +IGRpc3Nv 19587 +IFFpbmc= 19588 +IMOpdg== 19589 +IG3DunNpY2E= 19590 +IGFlc3RoZXRpYw== 19591 +IEJyZWF0 19592 +IFRB 19593 +IGFjY3VyYXRlbHk= 19594 +P+KAiw== 19595 +IHdhZ2Vz 19596 +cmF3ZMSZ 19597 +IHN3YWxsb3c= 19598 +IGNvbXBsYWludA== 19599 +IGxpZWQ= 19600 +YmVjdWU= 19601 +IHJlbGF4aW5n 19602 +IFBva8OpbW9u 19603 +IHRlY24= 19604 +YmFuZw== 19605 +s7Ts 19606 +IHF1aWVu 19607 +0L3QvtC80YM= 19608 +IGhhYml0YXQ= 19609 +Li4uLi4u 19610 +YWJsaW5n 19611 +INGC0LDQutC40LU= 19612 +IGJlc29uZA== 19613 +IGVtcGxveWVk 19614 +IGFycml2ZXM= 19615 +IHZlc3NlbHM= 19616 +IEF4 19617 +IGRpc3BsYXlz 19618 +MTUw 19619 +b2xvZ2ll 19620 +IOyXkA== 19621 +IGNsbw== 19622 +INC00L7Qsg== 19623 +INCe0LQ= 19624 +IHZ1ZWw= 19625 +d2VuZA== 19626 +IHNsaXBw 19627 +dXJw 19628 +IExvdA== 19629 +IGJ1bGxldHM= 19630 +IHJhZ2U= 19631 +IHNraXJ0 19632 +aWVudGVz 19633 +IG5o4buvbmc= 19634 +IE5hdHVyYWw= 19635 +IGhpbmQ= 19636 +IHdvcmtsb2Fk 19637 +bXU= 19638 +7YOc 19639 +IHN1bnNldA== 19640 +0LLQvtC7 19641 +cGl0 19642 +IEFTSA== 19643 +IOu2hOuTpA== 19644 +IGRvd25zdGFpcnM= 19645 +6a0= 19646 +IGNvdW50ZWQ= 19647 +IG5heg== 19648 +15XXpA== 19649 +IFBoaWxpcHBpbmVz 19650 +IDExMA== 19651 +IFBhcmtlcg== 19652 +IGdpdHU= 19653 +IGludGVyZXM= 19654 +IHVtYnJl 19655 +IE5hdHVyZQ== 19656 +IGplcg== 19657 +ZW5vcw== 19658 +IHBhbmVsaXN0cw== 19659 +IGNvYXRpbmc= 19660 +IGNoZXJyeQ== 19661 +IFBlbnQ= 19662 +IE1pc3Q= 19663 +cmVnYXRpb24= 19664 +IHZpbmQ= 19665 +IENvcnBz 19666 +IE1pc3Npb24= 19667 +IG5vYmxl 19668 +IGZvbmN0aW9u 19669 +IHdhcnJpb3I= 19670 +IHByb3Rlc3Rz 19671 +b3VyaQ== 19672 +IGNvbnN0aXR1dGlvbmFs 19673 +xYJhbQ== 19674 +IGVtZXJnZWQ= 19675 +IGR5ZQ== 19676 +IFRyeWluZw== 19677 +aWdt 19678 +w6lxdQ== 19679 +TE8= 19680 +IFZlcm0= 19681 +ZXJ2aW5n 19682 +IFRJTQ== 19683 +IENp 19684 +IGZyZWV6ZXI= 19685 +IGdydXBv 19686 +IFNwb3J0cw== 19687 +INC/0YDQvtCz 19688 +INmE2Kc= 19689 +b3RoZXJhcA== 19690 +aWZmYW55 19691 +Ymlhbg== 19692 +IHJhbmtlZA== 19693 +IHByb3Bvc2Fscw== 19694 +IMSRw6J5 19695 +IGZyZWV6aW5n 19696 +IGluc2VjdHM= 19697 +dmls 19698 +IGNvbXBvc3Q= 19699 +IHNlbWFuYQ== 19700 +IGRpc3Rpbmd1aXNo 19701 +IGZhY2lsaXRhdGU= 19702 +IHBsdXNpZXVycw== 19703 +IHZlcmc= 19704 +IGFsZ3Vucw== 19705 +IFRpa1Rvaw== 19706 +IEV4cHJlc3M= 19707 +0LzQtdC90YI= 19708 +U1U= 19709 +IGludGltYXRl 19710 +IEF1dGhvcg== 19711 +IHdpdG5lc3Nlcw== 19712 +IGthbGF1 19713 +IGFyZ3VlZA== 19714 +IGF2b2lkaW5n 19715 +Y3RpdmU= 19716 +IHB1cnN1aW5n 19717 +IHN5bGw= 19718 +w6F2ZWw= 19719 +IEF0bGFudGE= 19720 +IFV0YWg= 19721 +IFRpbGw= 19722 +IGVyZg== 19723 +IDIwMjI= 19724 +w6R0ZXI= 19725 +IGZ1bmVyYWw= 19726 +IEZsYXNo 19727 +IEF0bGFudGlj 19728 +IGdlbGU= 19729 +7KaI 19730 +IG1vcnRnYWdl 19731 +IOuEmA== 19732 +bGljaHQ= 19733 +IGFtYml0aW91cw== 19734 +IEJlaWppbmc= 19735 +IGRpdmluZw== 19736 +IHVuYm94 19737 +aWxsYXM= 19738 +IG90cmFz 19739 +IGV2YWM= 19740 +IG1hcmluZQ== 19741 +INGB0L7Qt9C0 19742 +IENyZWF0ZQ== 19743 +IGdq 19744 +IGZyZXF1ZW5jaWVz 19745 +aW5ndG9u 19746 +IFJvbWFucw== 19747 +IGFpbWluZw== 19748 +IEJ1ZmY= 19749 +IGVtcGVyb3I= 19750 +IE1vaQ== 19751 +IHByb21pc2luZw== 19752 +IGFsZ3VtYQ== 19753 +IHBhc2E= 19754 +IGRpc29yZGVycw== 19755 +U0k= 19756 +IHN1Y2NlZWRlZA== 19757 +IGN1ZXJwbw== 19758 +IHNvZGl1bQ== 19759 +IHN0dWI= 19760 +aGVpcm8= 19761 +IGRlbGF5ZWQ= 19762 +ZXRlcmE= 19763 +dHc= 19764 +IHN5bmM= 19765 +aGQ= 19766 +IHRvdXJpc3Rz 19767 +IHN5c3Q= 19768 +IG3DqXQ= 19769 +IHF1YWxpZnk= 19770 +IE90aGVycw== 19771 +bGxlcnM= 19772 +0LDRgtC10LvRjNC90L4= 19773 +INCe0L3QsA== 19774 +IHBlcmNlaXZl 19775 +IOqygA== 19776 +IOqwgOyepQ== 19777 +INC40YHQug== 19778 +IE1hdHRlcg== 19779 +IEJsdWV0b290aA== 19780 +IHBlYXJs 19781 +IGFyaXNl 19782 +IG1vbnVtZW50 19783 +INC40LzQtdC90L3Qvg== 19784 +YWdp 19785 +2YTZig== 19786 +IHJobw== 19787 +IHNtYXJ0ZXI= 19788 +IGNvbmo= 19789 +0L7QutCw 19790 +IGtlZW4= 19791 +IFRyZWF0 19792 +0LrQu9GO0Yc= 19793 +IHBhY2tldA== 19794 +ZWxzaXVz 19795 +IEFsYWI= 19796 +0LjQvdC4 19797 +IHBzaQ== 19798 +IGVuam95YWJsZQ== 19799 +IEVsbGVu 19800 +INCy0Lw= 19801 +IGVsaW1pbmF0ZWQ= 19802 +IFJvdw== 19803 +IHpvbWJpZQ== 19804 +IEt1 19805 +IHBocmFzZXM= 19806 +IGdyZW4= 19807 +dXRlcg== 19808 +IGRpcmVrdA== 19809 +15Y= 19810 +ZW5lbg== 19811 +dXNh 19812 +INGB0LvQvtCy 19813 +xLA= 19814 +IEdo 19815 +IGNvcnJpZA== 19816 +IHF1ZWVy 19817 +IExpbmRh 19818 +IG9uYQ== 19819 +IG9ibGlnYXRpb24= 19820 +ZGFy 19821 +INi1 19822 +ZW1tZW50 19823 +YWNpZXM= 19824 +IHNjcmV3ZWQ= 19825 +IG5haw== 19826 +IGF5dWQ= 19827 +w6Fy 19828 +bGV6 19829 +IGRyb3du 19830 +IE1lZGljaW5l 19831 +IGxhYnM= 19832 +IGp1c3F1 19833 +IEdvbm5h 19834 +IHRlcnJvcmlzdA== 19835 +cXVlc3Q= 19836 +IGZhcnRoZXI= 19837 +IHJlcGxpZWQ= 19838 +IFNX 19839 +IE1pc3Npc3NpcHBp 19840 +aXNobmE= 19841 +IGhvbGRlcg== 19842 +IHJlaWdu 19843 +IGFjY2VwdGFuY2U= 19844 +IHVs 19845 +tow= 19846 +IEhvdGVs 19847 +IENvb3Blcg== 19848 +dGFu 19849 +IEdyYWI= 19850 +IHZhcG9y 19851 +IGFjdGVk 19852 +IEthbmc= 19853 +ZmFu 19854 +IOydtOyDgQ== 19855 +dXRldA== 19856 +IHdvcmR0 19857 +IGZhcm1z 19858 +ZGF0 19859 +IGNvdXBsZXM= 19860 +IGJlYWRz 19861 +aWVudG9z 19862 +VGhlbg== 19863 +b3NpdHk= 19864 +IFN0YW5mb3Jk 19865 +Li0= 19866 +V2FpdA== 19867 +IGRhdGFz 19868 +b2lyZQ== 19869 +IGhhc2h0YWc= 19870 +aW1tZQ== 19871 +IGVuY291bnRlcmVk 19872 +IHNob3V0aW5n 19873 +IHJlc2lzdGFudA== 19874 +IFNldW5n 19875 +IHRyYWdpYw== 19876 +IERyYXc= 19877 +LCw= 19878 +IHNob3djYXNl 19879 +IEFG 19880 +IFN0cmk= 19881 +IGJhY2tlZA== 19882 +INGD0LM= 19883 +INCx0YPQtNGD0YI= 19884 +IENvbGU= 19885 +ZXVycw== 19886 +KD8p 19887 +IGVzY2FwZWQ= 19888 +QVNU 19889 +IEFzc2VtYmx5 19890 +IHN0aWNrZXI= 19891 +IG1pZXV4 19892 +IGVudGVydGFpbmluZw== 19893 +IERPTg== 19894 +IEFtZW5k 19895 +IEthcmw= 19896 +IGluaGli 19897 +c3N0 19898 +aWVn 19899 +fn5+ 19900 +IGhvb2tlZA== 19901 +IGxpdGVyYWw= 19902 +IHN1bm55 19903 +c3RlcHM= 19904 +IOuwnOs= 19905 +IE1hcmluZQ== 19906 +IHN1ZQ== 19907 +IHByaXNvbmVycw== 19908 +IEVi 19909 +NTg= 19910 +IGRydW1z 19911 +IGd1aWx0 19912 +YWxn 19913 +IGhhcHBpZXI= 19914 +IENN 19915 +IOyVhOuLiOyVvA== 19916 +INCf0LXRgA== 19917 +0YPQu9GP 19918 +IGtleXdvcmQ= 19919 +IFBhcmNl 19920 +IEZvcmVpZ24= 19921 +IEFtYW5kYQ== 19922 +IOuqqQ== 19923 +cGxlc3M= 19924 +iKw= 19925 +w7Ntbw== 19926 +IHF1YWxxdWVy 19927 +7J2065286rOg 19928 +IGNvbnNwaXJhY3k= 19929 +IHN0cmF3YmVycnk= 19930 +IGhhdHRlbg== 19931 +RXM= 19932 +IHNwb3M= 19933 +IHZpbGxhZ2Vz 19934 +IGxldg== 19935 +INGB0YDQtdC0 19936 +IHdha2luZw== 19937 +IGNhbGN1bGF0aW9ucw== 19938 +INmF2Lk= 19939 +IHBvdXJpbmc= 19940 +IGxlYmlo 19941 +IHBvbGlzaA== 19942 +IFRvdXQ= 19943 +IGZ1bmt0aW9u 19944 +0LzQvg== 19945 +IFRp 19946 +IHdhc3Rpbmc= 19947 +aXN0aWNhbGx5 19948 +IG1hbmlwdWxhdGU= 19949 +IHNpbXBsaWZ5 19950 +IHRlYW1tYXRlcw== 19951 +INCx0L4= 19952 +IGNvbnRhbQ== 19953 +IFF1aXRl 19954 +IGt1cno= 19955 +IENhbmQ= 19956 +dHlwZQ== 19957 +b3V0aGVhc3Q= 19958 +IGZpbmFuY2lhbGx5 19959 +0L7Qu9C9 19960 +ZWxzb24= 19961 +IGZvcmVoZWFk 19962 +dWFnZQ== 19963 +bmF1ZGlibGU= 19964 +IEJlaGluZA== 19965 +IG5lZ290aWF0aW9ucw== 19966 +IOuniOydjA== 19967 +IGFsdGVybmF0aXZlcw== 19968 +cmFuaw== 19969 +aG9sZGVy 19970 +IGhlYWxlZA== 19971 +0YLQvtGH 19972 +IFNwZWM= 19973 +IGV4aGliaXQ= 19974 +IHNoYWxsb3c= 19975 +IGdvYg== 19976 +IOuc 19977 +IGZydXN0cmF0aW9u 19978 +w61v 19979 +IG1lbHRpbmc= 19980 +IFN0b3Jt 19981 +IHBhdGVudA== 19982 +IEJhcmNlbA== 19983 +IHBlZGVzdA== 19984 +2YjZhQ== 19985 +IHRhaQ== 19986 +IE1vZGU= 19987 +IHdpbA== 19988 +IOuqqOultA== 19989 +IMOpZ2FsZW1lbnQ= 19990 +INeQ15c= 19991 +YXlhbg== 19992 +IGFtYXplZA== 19993 +7KeA64qU 19994 +IGhhY2llbmRv 19995 +IOydtOyVvA== 19996 +zrvOsQ== 19997 +4LiC 19998 +0LXRgtCw 19999 +IGV4YW1z 20000 +IHRyYXZlbGxpbmc= 20001 +UHJlc3M= 20002 +0LjRgNGD 20003 +IGJhc2VsaW5l 20004 +IGJ1c2Vz 20005 +IHJlaW5mb3I= 20006 +dmVuYW50 20007 +IFRydXRo 20008 +nb0= 20009 +b2Jl 20010 +IHllbGw= 20011 +IHNhdXNhZ2U= 20012 +VEY= 20013 +IEV2aWw= 20014 +IG1laW5lcg== 20015 +15nXpw== 20016 +IGhvcGVmdWw= 20017 +IHLDs3duaWXFvA== 20018 +IFBlcsOy 20019 +dHdv 20020 +bmRlcg== 20021 +INC80LjRgA== 20022 +IGNvbnNjaWVuY2U= 20023 +IFdhcnJlbg== 20024 +aWNreQ== 20025 +IGFpbWVk 20026 +IGfDtnJh 20027 +WFQ= 20028 +IHB5cmFt 20029 +UmVk 20030 +YXR1 20031 +IEVzdGE= 20032 +IGVhcm5pbmdz 20033 +IGhhdHM= 20034 +IFN0YWR0 20035 +aWNrZXQ= 20036 +cG9pbnRz 20037 +aW5hbmRlcg== 20038 +IG1vdG9yY3ljbGU= 20039 +IOuPjA== 20040 +IO2VtOyVvA== 20041 +a29t 20042 +IERpbmc= 20043 +5pI= 20044 +IHJlY3Vycw== 20045 +IGVzdGltYXRlcw== 20046 +IGRlcm5p 20047 +IHZlcnNjaA== 20048 +IE1JQw== 20049 +0LjQstCw0YLRjA== 20050 +INC/0YDQvtGI 20051 +IGRvc3Q= 20052 +INCy0YHRgtGA 20053 +IHdpZWw= 20054 +IHNpYmxpbmdz 20055 +INC00LXQsg== 20056 +IGVhcmxpZXN0 20057 +IGZhdGlndWU= 20058 +IG5oaQ== 20059 +IGd1c3Rh 20060 +IGJvbm5l 20061 +ZnJvbQ== 20062 +IEplbm55 20063 +IHN1cHBvc2VkbHk= 20064 +aW50YWdl 20065 +IGNvdW50aWVz 20066 +IHVucmU= 20067 +IHBsYW50aW5n 20068 +IEdyYWM= 20069 +IEdlbmVzaXM= 20070 +IEFscGhh 20071 +eXN6 20072 +IHRpbGU= 20073 +IOqyveyasA== 20074 +INeZ16k= 20075 +cXVlbA== 20076 +IGRpc3RyaWJ1dGU= 20077 +ZGVm 20078 +w6lyYWw= 20079 +IGNsdXRjaA== 20080 +YWRlbHBo 20081 +IFBsYXlTdGF0aW9u 20082 +hLg= 20083 +IHNq 20084 +YnJlYWtpbmc= 20085 +IOuQmOs= 20086 +IEN1YmE= 20087 +IFJ1c3NpYW5z 20088 +IE1BUks= 20089 +IHBlcnNl 20090 +IHJlc3RyaWN0ZWQ= 20091 +aWdlcw== 20092 +IFRyYXZlbA== 20093 +IGVsZWN0cm9uaWNz 20094 +IHF1YXJ0ZXJz 20095 +IEtlaXRo 20096 +c2l6ZWQ= 20097 +IGRlYWRsaW5l 20098 +YXJlbnRo 20099 +IHbDrWRlb3M= 20100 +IHByb3RvY29scw== 20101 +YW1tZW50 20102 +IFRyYWluaW5n 20103 +IMOi 20104 +IHNlcXVlbA== 20105 +0L3QsNC6 20106 +IGtlaW5lbg== 20107 +IG1hdHRyZXNz 20108 +bHVkaW5n 20109 +IGNsYXNzaWZpZWQ= 20110 +IHJlYWN0b3I= 20111 +IEtvbnQ= 20112 +IHBhc3Nhcg== 20113 +IGhvbm91cg== 20114 +b3JpZw== 20115 +SU5B 20116 +IE5hdGhhbg== 20117 +0LLQsA== 20118 +INGB0LrQsNC30LDRgtGM 20119 +dMSxcg== 20120 +IGV4Y2x1c2l2ZWx5 20121 +IHNoYWRlcw== 20122 +INC/0YDQvtGG 20123 +IG9jY2FzaW9ucw== 20124 +aWph 20125 +Zmln 20126 +IHR1cw== 20127 +IHJlbWVt 20128 +IENocmlzdG9waGVy 20129 +IHNsaW1l 20130 +IGFsZ3VuYQ== 20131 +IEZvcnR1bmF0ZWx5 20132 +IGxvcnM= 20133 +dm9sbA== 20134 +YXZlcg== 20135 +IG91dGxldA== 20136 +IExpbmtlZElu 20137 +IEV4ZWN1dGl2ZQ== 20138 +IG9yZ2Fucw== 20139 +IEJlZ2lu 20140 +IO2ZlA== 20141 +IHRyYW5zcGxhbnQ= 20142 +cmFnZW4= 20143 +Vk8= 20144 +IEbDtnI= 20145 +INio2KfZhA== 20146 +IEFuZHJl 20147 +aXNpbmU= 20148 +IGxhc3Rz 20149 +IGhpc3TDs3JpYQ== 20150 +IGx1eg== 20151 +IGNvbGxhcg== 20152 +IGtpZG5h 20153 +IG9wdGljYWw= 20154 +aW92 20155 +IHRvYg== 20156 +IGV4dGVyaW9y 20157 +IG1ldHJpYw== 20158 +aWV1cg== 20159 +IHRyb2xs 20160 +INGA0L7Qtw== 20161 +IHTDtA== 20162 +IOyYiOyB 20163 +IEdlc2V0eg== 20164 +INC10LQ= 20165 +IGRlbm9taW5hdG9y 20166 +7LM= 20167 +IGxldHQ= 20168 +IGdyw7bDnw== 20169 +IEx1dGhlcg== 20170 +IHJlc3Rl 20171 +IHJlc2VtYg== 20172 +IHBlcm1ldA== 20173 +a3Np 20174 +IGZpc2hlcg== 20175 +IFZvbg== 20176 +7ZS8 20177 +IM+Dz4TOvw== 20178 +IGxvY2tz 20179 +IHNob290cw== 20180 +IGthbXU= 20181 +IEtlcg== 20182 +IE9icw== 20183 +IGJpbGk= 20184 +IOuwsQ== 20185 +IHRvcnR1cmU= 20186 +YXNzeQ== 20187 +INC40LM= 20188 +IGxhc3Rpbmc= 20189 +IHRpZW5lcw== 20190 +IHJlY2VpdmVz 20191 +IE9zY2Fy 20192 +IHJlbWVtYmVyaW5n 20193 +IHByb2JsZW1hcw== 20194 +IGlh 20195 +IG1lbW9yYWJsZQ== 20196 +IGpvdXJz 20197 +IGZhw6dvbg== 20198 +YW1pYw== 20199 +IOu0pA== 20200 +YXRpcXVl 20201 +IOutlOqwgA== 20202 +IHppcA== 20203 +aGFsdA== 20204 +IPCfmA== 20205 +IGZyaWVz 20206 +IGZpbmRlbg== 20207 +Z3Jh 20208 +0YDRg9C0 20209 +aW1wb3J0 20210 +IOuLrOs= 20211 +IGlraQ== 20212 +IGNvbXBsYWluaW5n 20213 +IGZhemVuZG8= 20214 +IGdvb2dsZQ== 20215 +IHRhYnM= 20216 +IOuTpOyWtOw= 20217 +dWdv 20218 +aWVydG8= 20219 +YXVmZW4= 20220 +IOuovOyggA== 20221 +IHNrdWxsZQ== 20222 +IHN1aXY= 20223 +IHNweQ== 20224 +IEthaQ== 20225 +IG1hcnRpYWw= 20226 +IG9uZGVy 20227 +YXRpbGl0eQ== 20228 +IGlyZ2VuZHdpZQ== 20229 +IGNsYXA= 20230 +aW50ZWxs 20231 +IGluc3RhbGxpbmc= 20232 +IHVuaXF1 20233 +IENlbnRyZQ== 20234 +YXN0cw== 20235 +dWFy 20236 +IHJldmlz 20237 +IHRocmVhdGVuaW5n 20238 +cmFpcw== 20239 +IGN1aWQ= 20240 +c2th 20241 +IHJlc29sdmVk 20242 +IHJpZGVz 20243 +IGZhaWx1cmVz 20244 +IHNlbWI= 20245 +IG1hbGVz 20246 +VUZG 20247 +IHRyw6pz 20248 +YXBwZWQ= 20249 +IG5ld3NwYXBlcnM= 20250 +cmlldA== 20251 +IGFwcGxhdWRz 20252 +0JM= 20253 +IE5D 20254 +IGhldGVy 20255 +IGhhemFyZA== 20256 +IHJ5 20257 +IHN0cmljdGx5 20258 +IDU0 20259 +IOuTpOyWtOqwgA== 20260 +IHNwb250 20261 +IHRhdHPDpGNobGljaA== 20262 +IOunkOyU 20263 +bGF1Yg== 20264 +IGFic29yYmVk 20265 +YWNhxJ/EsXo= 20266 +IG9udQ== 20267 +INCQ0L0= 20268 +IGV4cGxpY2l0bHk= 20269 +IOyerA== 20270 +IEZ1dHVyZQ== 20271 +YWNodGVu 20272 +w6Bv 20273 +eW9u 20274 +IHNlcmlh 20275 +IEhlcnJlbg== 20276 +Y2Vq 20277 +IEFsYmVydA== 20278 +7J2064qU 20279 +ZWN0b3I= 20280 +IHBhY2tpbmc= 20281 +IHZpcnR1ZQ== 20282 +IHZlbmly 20283 +REQ= 20284 +IHlheg== 20285 +IGxvZ3M= 20286 +IFBob3Rvc2hvcA== 20287 +IHNpZA== 20288 +bGluZ3M= 20289 +IHJlbW90ZWx5 20290 +IERpZmZlcmVudA== 20291 +IG9wZXJhdGVk 20292 +bGlnaHRz 20293 +IGRpc2NyaW1pbg== 20294 +aXN0YW5jZQ== 20295 +IEdSRQ== 20296 +IHBsYWM= 20297 +IHNoaXJ0cw== 20298 +IGp1c3RpZnk= 20299 +IHRyYWJhbGhv 20300 +dXRpbA== 20301 +dm9j 20302 +IHF1YXJ0 20303 +IM6k 20304 +U0M= 20305 +IFNS 20306 +IC0i 20307 +IGhlc2l0YXRl 20308 +IHBhaw== 20309 +Z3Vh 20310 +Sm8= 20311 +IHNvdXZlbnQ= 20312 +IEFuZ2VsYQ== 20313 +ZXNzZWU= 20314 +YWRlbHBoaWE= 20315 +YXJrcw== 20316 +IHdlZWQ= 20317 +IGthbm5zdA== 20318 +IOq3uOufrOuLiOq5jA== 20319 +IHBsdXTDtHQ= 20320 +IENvbW1hbmRlcg== 20321 +IHN1bW1hcml6ZQ== 20322 +4K+A 20323 +IDk4 20324 +IGRldmVsb3BtZW50cw== 20325 +IENvc3Q= 20326 +IHRoZW9yZXRpY2Fs 20327 +IG9yZQ== 20328 +IG1ldGFsbA== 20329 +zr/Phc69 20330 +ZmFocg== 20331 +0JrQkA== 20332 +IGNodWNr 20333 +IGFkYXB0ZWQ= 20334 +IE9rbGFo 20335 +IE5ldGhlcmxhbmRz 20336 +IHBvZXQ= 20337 +c3Rv 20338 +a2F0 20339 +IHdlYXJz 20340 +568= 20341 +IOyWtOuUlA== 20342 +IEVzdG8= 20343 +IGxhdWdoZWQ= 20344 +IGRvbm5lcg== 20345 +IOuNsA== 20346 +IOybkOs= 20347 +b2N1cg== 20348 +IEtpY2s= 20349 +IERldHJvaXQ= 20350 +IGJpY3ljbGU= 20351 +IGxhY2tpbmc= 20352 +cGhhYmV0 20353 +IEtlbmQ= 20354 +QXNz 20355 +IHJldmVhbHM= 20356 +IM6g 20357 +IE5vYWg= 20358 +pqzripQ= 20359 +IHNlbGxz 20360 +IEFsYWJhbWE= 20361 +IHRlcnJpZmlj 20362 +IEVsZW1lbnQ= 20363 +IO2G 20364 +IHR1cmJv 20365 +IEhvbQ== 20366 +IHRoZW9yZW0= 20367 +IGFkdmVudHVyZXM= 20368 +IHB1cmNoYXNpbmc= 20369 +IFTDoQ== 20370 +INC80LDRgg== 20371 +IHZlbW9z 20372 +IGR1dGllcw== 20373 +IHdlbmln 20374 +IGJvb3Ro 20375 +IGVudHJhcg== 20376 +VkE= 20377 +IGdlYXJz 20378 +IEphZQ== 20379 +w6hu 20380 +IGNhbGNpdW0= 20381 +IFJvYmVydHM= 20382 +INC/0YDQvtCx0LvQtdC8 20383 +IHJpYmJvbg== 20384 +INC90LDQt9GL0LI= 20385 +IGxhdg== 20386 +IGludGVydmVudGlvbnM= 20387 +IFVsdHJh 20388 +IG5hbWVseQ== 20389 +IGFkZXF1YXRl 20390 +IHJlY2Fw 20391 +IGRvY2s= 20392 +ZnRpbmc= 20393 +IHZvaQ== 20394 +IGNvbnN1bHRhdGlvbg== 20395 +INGB0LXQvA== 20396 +IHBvZGVt 20397 +IHBvc3Nlc3Npb24= 20398 +IGNsdWVz 20399 +IFJ1c3NlbGw= 20400 +IHJlbmV3YWJsZQ== 20401 +INGD0Lc= 20402 +aW5mb3JtYXRpb24= 20403 +aWdnZXJz 20404 +V2l0aA== 20405 +d25v 20406 +IGVsYWJvcmF0ZQ== 20407 +Y3RvcmFs 20408 +IERvdw== 20409 +IHJhbWVu 20410 +4buV 20411 +IGVyc3Rl 20412 +IFplbA== 20413 +IHF1YXNp 20414 +INC90LDQug== 20415 +IFN0YXJz 20416 +IHRyaWJhbA== 20417 +IHNlYXRlZA== 20418 +IHdvbA== 20419 +IGNob2w= 20420 +w6Rtw6Q= 20421 +IG91dGJyZWFr 20422 +IGNyZXM= 20423 +IHVuc2VyZXI= 20424 +IO2RnA== 20425 +IHVuZGVyd2F0ZXI= 20426 +IGFzc3VyZQ== 20427 +T09E 20428 +IG5hcHJhd2TEmQ== 20429 +IGVzdGFibGlzaG1lbnQ= 20430 +IGluY29u 20431 +IGRpZmVyZW50ZQ== 20432 +IGV4Y3Vz 20433 +IERpbQ== 20434 +0L7RhQ== 20435 +IExpbmc= 20436 +cm9sb2c= 20437 +IG91dGRvb3Jz 20438 +bmFq 20439 +IGVwaWRlbWlj 20440 +IHVudGVycw== 20441 +IDMwMDA= 20442 +IEdhYnJpZWw= 20443 +IOyXhuuKlA== 20444 +IGVuY2w= 20445 +IE9kZXI= 20446 +IEZvb3Q= 20447 +cGFz 20448 +IFp1aw== 20449 +IHdvcmtmbG93 20450 +IHVucA== 20451 +IGFsbGlhbmNl 20452 +ZW5zY2hhZnQ= 20453 +IHlvZ3VydA== 20454 +0LjQvdC1 20455 +IGVydQ== 20456 +IGZpeg== 20457 +IGHFnw== 20458 +IGFwcmVuZA== 20459 +IGN1YWxxdWllcg== 20460 +IGNhcnJvdHM= 20461 +xLFuxLFu 20462 +YWZvb2Q= 20463 +IGZsb29ycw== 20464 +IGtleXdvcmRz 20465 +IHNwb3R0ZWQ= 20466 +IGRyYW5r 20467 +IHBhcmFz 20468 +IMO6bHRpbW8= 20469 +IGhhYmxhcg== 20470 +IHByb3NlY3V0 20471 +7JeQ64+E 20472 +IMOpcA== 20473 +IHN0aWNrZXJz 20474 +IHB1c2hlcw== 20475 +a2g= 20476 +IHJlc3RhcnQ= 20477 +IFRodW5kZXI= 20478 +4budaQ== 20479 +IG11aXRh 20480 +IGZveA== 20481 +YXJkZcWf 20482 +IFphY2g= 20483 +IE1pbmVjcmFmdA== 20484 +57g= 20485 +ID09PT0= 20486 +IGfDtnJl 20487 +IHN0YW5jZQ== 20488 +aWd1bmc= 20489 +2Y7ZkQ== 20490 +a8Ok 20491 +IHRlYWNoaW5ncw== 20492 +6YY= 20493 +IGRlY2F5 20494 +IHJpYw== 20495 +b21lbmE= 20496 +INCy0YHQtdC8 20497 +Y2h0ZW4= 20498 +IFZlcnQ= 20499 +IO2VnOq1rQ== 20500 +rLTr 20501 +IGNvYw== 20502 +Oik= 20503 +a2VpdGVu 20504 +IEJB 20505 +ZXRoZWxlc3M= 20506 +IGhlYWRxdWFydGVycw== 20507 +IHNwaWtl 20508 +IEJhc2U= 20509 +IDEwMQ== 20510 +IGNvb3JkaW5hdGVz 20511 +IHRhcmQ= 20512 +IGJvaWxlZA== 20513 +IE1vbnN0ZXI= 20514 +IG5vdGVib29r 20515 +IOq0gA== 20516 +IFdha2U= 20517 +IFNldHRpbmc= 20518 +7J207Jc= 20519 +IFN5ZG5leQ== 20520 +IEZpbm4= 20521 +IGxvYmJ5 20522 +IHNlbmlvcnM= 20523 +0L3QuNGF 20524 +YXZhbg== 20525 +IEpF 20526 +IHRyYWZm 20527 +dGhpbms= 20528 +IHNsYXA= 20529 +IENhc3RsZQ== 20530 +qW5n 20531 +IGFsZ3Vub3M= 20532 +IFBlcnNvbmFsbHk= 20533 +IE1hbGU= 20534 +7Yuw 20535 +IEdlbmVyYWxseQ== 20536 +IFBlbA== 20537 +IGRpYXM= 20538 +IGV2b2x2aW5n 20539 +aXRvbA== 20540 +0LLQvtGA 20541 +IHBsZWlu 20542 +IGZsaWdodHM= 20543 +IGVsZXZlbg== 20544 +b3dlag== 20545 +4buRbmc= 20546 +IGFrdQ== 20547 +IGdsYW5jZQ== 20548 +IGNvbm5lY3Rpdml0eQ== 20549 +IGJhbGQ= 20550 +0YvRhw== 20551 +IGludGVzdA== 20552 +w6Fn 20553 +IEdSw5w= 20554 +aWJsaWNhbA== 20555 +IFBhcGE= 20556 +IHBpdHk= 20557 +IGZhaW50 20558 +IHd1cmRlbg== 20559 +IGxlZ2FsbHk= 20560 +IHByZXk= 20561 +IFNjaWVuY2Vz 20562 +INC/0YDQvtGB 20563 +IHRyYWluZXI= 20564 +IHByb2Jsw6htZQ== 20565 +IGtpbG8= 20566 +0LrQvtCz0L4= 20567 +IGJyaWRnZXM= 20568 +ODk= 20569 +IGxhc3RlZA== 20570 +IGVsZWdhbnQ= 20571 +Ym93cw== 20572 +IHBhbGFi 20573 +IGRpcmVjdG9yeQ== 20574 +IGJ1bGI= 20575 +cGVvcGxl 20576 +SVg= 20577 +IGdlYg== 20578 +IDY2 20579 +IFRlbm5lc3NlZQ== 20580 +YWhsZW4= 20581 +aWV2YWw= 20582 +IGNhdXQ= 20583 +IERhbWVu 20584 +cGxv 20585 +aWFuZQ== 20586 +0LDQu9C1 20587 +YXR0YW4= 20588 +INin2YTYsw== 20589 +IHJpc2t5 20590 +IHNsZWV2ZQ== 20591 +IGluY2lkZW50cw== 20592 +IOuwlQ== 20593 +Q28= 20594 +IGFwcGxpY2FibGU= 20595 +IGltcGVyaWFs 20596 +IFBoaWxpcA== 20597 +IFllYQ== 20598 +0LXRgNC+ 20599 +INC/0L7QutCw0Lc= 20600 +w7xuZQ== 20601 +7JiA 20602 +SHVi 20603 +dG9y 20604 +IHNpZ3U= 20605 +Y2VuZA== 20606 +IHBvbGl0aWNhbGx5 20607 +IOyCtA== 20608 +IHBhcnM= 20609 +IG91dg== 20610 +IHByaW1laXJh 20611 +IFNoYWg= 20612 +IHNhdHVy 20613 +IGNvbWJ1c3Q= 20614 +IHByb21vdGVk 20615 +7KO86w== 20616 +IHRlbXBsYXRlcw== 20617 +IOuLrA== 20618 +IGhhdWw= 20619 +INGC0LXRgA== 20620 +IHNsaWRpbmc= 20621 +Y2VkZW50ZWQ= 20622 +Y2hpbGRyZW4= 20623 +TVI= 20624 +IFdlaQ== 20625 +IGLDtnI= 20626 +IHByw7N4aW1v 20627 +YXLDrWE= 20628 +IHNhbXBsaW5n 20629 +0LXQu9C10L0= 20630 +ZXNp 20631 +IERhbmllbGxl 20632 +IE9rbGFob21h 20633 +6IU= 20634 +0LXRgdC/ 20635 +IERWRA== 20636 +INCy0YvQvw== 20637 +cm91cw== 20638 +Y29ucw== 20639 +IGVuaGFuY2Vk 20640 +IHBhc3Rvcg== 20641 +IFN1ZGRlbmx5 20642 +ZmFy 20643 +UEVS 20644 +IE5n 20645 +MTAwMA== 20646 +IGNoZXc= 20647 +IHJ1bW9ycw== 20648 +IEFuYQ== 20649 +IGFubsOpZXM= 20650 +INGD0YHRgg== 20651 +IFBoaWxhZGVscGhpYQ== 20652 +0LXQttC00YM= 20653 +IGVmZmVjdGl2ZW5lc3M= 20654 +w6l0w6k= 20655 +IGRpbmc= 20656 +IHJlbGlnaW9ucw== 20657 +IGFnZWQ= 20658 +emllxIc= 20659 +IFJpYw== 20660 +IEthcA== 20661 +IFBhZ2U= 20662 +IHPDvA== 20663 +IG7DpG1saWNo 20664 +IG1hbmtpbmQ= 20665 +IHJlc3Rpbmc= 20666 +IGluZmx1ZW5jZXM= 20667 +IFNjaHVs 20668 +INC90LXQsg== 20669 +IG1hbmE= 20670 +IGNvbnN1bWVk 20671 +IFBvbQ== 20672 +IGNvbnNlZ3Vpcg== 20673 +IFRoYW5rc2dpdmluZw== 20674 +IEhpbmR1 20675 +bGFpcw== 20676 +IHRocml2ZQ== 20677 +IGNvbnRvdXI= 20678 +0LDRhtC40Y8= 20679 +IGZhbGFuZG8= 20680 +IErDoQ== 20681 +emFu 20682 +0LjRgtGD 20683 +aXBoZXI= 20684 +amFtaW4= 20685 +IEhhbGxv 20686 +IDE2MA== 20687 +INC+0YHQvtCx 20688 +IG1ldGU= 20689 +IOyVjOs= 20690 +IEJhcmNlbG9uYQ== 20691 +bGV0dGVy 20692 +INCd0LXRgg== 20693 +5Zk= 20694 +IGFkZW3DoXM= 20695 +IGNvb3JkaW5hdGlvbg== 20696 +dW50cw== 20697 +IHNsb3A= 20698 +INC/0YDQuNC0 20699 +7KeA66eJ 20700 +IHF1ZXN0aW9uaW5n 20701 +IGRpZXNlbA== 20702 +IGRlag== 20703 +IGFmZmlybQ== 20704 +jZTrnbzqs6DsmpQ= 20705 +aWVubmU= 20706 +IGNyYW5r 20707 +IHByZWRpY3Rpb25z 20708 +IHBoeXNp 20709 +Y2hzZWw= 20710 +IGNvbWJpbmF0aW9ucw== 20711 +IGV4Y2VsbGVuY2U= 20712 +4bud 20713 +d2lkdGg= 20714 +d2VlZA== 20715 +hOulvA== 20716 +hOuniA== 20717 +IGFsdG8= 20718 +IGRhaXJ5 20719 +IE5vcm1hbA== 20720 +cHBlbg== 20721 +IG9iZW4= 20722 +IGRldmFzdGF0aW5n 20723 +IHBveg== 20724 +IEh1cw== 20725 +bWF6 20726 +IHdhcm5lZA== 20727 +IGRlbms= 20728 +IEF1c3M= 20729 +IHRyYWRlcw== 20730 +aGVsbA== 20731 +IHByaW1lcm8= 20732 +IG1pYQ== 20733 +0LLQsNGA 20734 +2KjZig== 20735 +IGtpY2tz 20736 +IGHEnw== 20737 +IE3DvA== 20738 +IGx1Yw== 20739 +0LXQvdC40LXQvA== 20740 +IFN0YW5kYXJk 20741 +cmljZQ== 20742 +IEN1Yg== 20743 +IGdvdQ== 20744 +IEpvw6Nv 20745 +0YPRgdC6 20746 +IGVucXU= 20747 +o4w= 20748 +Z2V3 20749 +IO2BsA== 20750 +b3dhbmlh 20751 +aWFuaQ== 20752 +IGZha3Q= 20753 +0Y/QvdC4 20754 +IGJlZg== 20755 +IHRodW1ibmE= 20756 +IGNldXg= 20757 +YXBwbGU= 20758 +TkVO 20759 +IGdhZA== 20760 +YXBvbg== 20761 +IEZhbnRhc3RpYw== 20762 +IGNvbmNlbnRyYXRlZA== 20763 +Z2lybA== 20764 +bGVuZQ== 20765 +INCU0LvRjw== 20766 +IMOpdGE= 20767 +YWFu 20768 +IG91dHRh 20769 +IG5hcmM= 20770 +IEJvZHk= 20771 +YnJ1c2g= 20772 +IGxlZ2lzbGF0aXZl 20773 +IE1lZ2Fu 20774 +IG1pc3Rha2Vu 20775 +IE1pc3NvdXJp 20776 +IGxhYmVsZWQ= 20777 +0LvRj9C10YLRgdGP 20778 +IHJlYWxpc2Vk 20779 +eW9yc3Vu 20780 +IFNhZmV0eQ== 20781 +IGFjY2VsZXJhdGU= 20782 +IHNhbmN0aW9ucw== 20783 +IHBlZQ== 20784 +IGp1ZWdv 20785 +IHBlcHBlcnM= 20786 +IHdhbA== 20787 +6riJ 20788 +ZWxsb3c= 20789 +INC20LXQvQ== 20790 +IGNpbmNv 20791 +INGB0LjRgdGC 20792 +Y292ZXJ5 20793 +IGdyYW0= 20794 +IMOpcG8= 20795 +IEJNVw== 20796 +aXZvbA== 20797 +IENoZW0= 20798 +dXNlbWVudA== 20799 +IFN1cHBvc2U= 20800 +IOqwgOyngOqzoA== 20801 +IG1pbGxlbm4= 20802 +IFR1bg== 20803 +IG1lZGFs 20804 +IGhhY2lh 20805 +IHN0aW11bHVz 20806 +IGJyaWdodG5lc3M= 20807 +YWllbnQ= 20808 +IEhhbmRz 20809 +aW5ldA== 20810 +IGNvYWxpdGlvbg== 20811 +IHJpc2Vz 20812 +cmluYQ== 20813 +IHNjb290 20814 +IGRlZmVuZGluZw== 20815 +IGludmVycw== 20816 +IGhpbGxz 20817 +IGZ1bGZpbGxlZA== 20818 +bGxpZQ== 20819 +IGFkb2xlcw== 20820 +IENoYXNl 20821 +IEpK 20822 +IG5ldWVu 20823 +IFRydQ== 20824 +IGluaGVyaXQ= 20825 +IHNpeHR5 20826 +IEV4cA== 20827 +IENsYXk= 20828 +0L7RgdC+0LE= 20829 +YXJuYQ== 20830 +IEltcGVyaWFs 20831 +INGN0YLQsA== 20832 +IHNvY2lhbGx5 20833 +YXR5 20834 +b2R5bmFt 20835 +IHJpYnM= 20836 +b21pYw== 20837 +IFRvbA== 20838 +0L7Qu9C2 20839 +IDE5OTg= 20840 +IGZyYW0= 20841 +IHJhbmtz 20842 +INCx0YPQtNGD 20843 +IENvbG9u 20844 +SHo= 20845 +IGFjY29tbW9kYXRl 20846 +IGV4cGxvZGU= 20847 +7YSw6w== 20848 +SEFFTA== 20849 +IEhhcnQ= 20850 +INC20LjQt9C90Lg= 20851 +5qE= 20852 +IGRlbGljYXRl 20853 +oNeX 20854 +IHRvZnU= 20855 +IGFjaGlldmVtZW50cw== 20856 +IFNvcg== 20857 +IGFncmVlbWVudHM= 20858 +IDU3 20859 +IHRhbXA= 20860 +IGZyYW7Dp2Fpcw== 20861 +IGhlcmJz 20862 +Y29ybg== 20863 +IGtvbms= 20864 +QU5B 20865 +IFFp 20866 +IHByw7Nw 20867 +IHRpZ2Vy 20868 +IOuRmA== 20869 +xINt 20870 +IGFwcHJlbnQ= 20871 +YWhhbg== 20872 +IHJ1bGluZw== 20873 +IHRzcA== 20874 +IHR3aXR0ZXI= 20875 +IHRlZW5hZ2Vy 20876 +YnVz 20877 +IO2S 20878 +IEFtZW5kbWVudA== 20879 +IHRhcHBpbmc= 20880 +IEFQSXM= 20881 +IG1hdGNoZWQ= 20882 +66m0 20883 +V0E= 20884 +IEJlYXV0eQ== 20885 +IGluZXZpdGFibGU= 20886 +IGdhc2Vz 20887 +INm+ 20888 +aGlnaA== 20889 +IE9wdA== 20890 +IHByZWRvbWlu 20891 +z4HPjA== 20892 +IHR1YmVz 20893 +IOyVoA== 20894 +IEFh 20895 +b21ldG93bg== 20896 +IElN 20897 +IGRlc2Fy 20898 +w6RyZW4= 20899 +INC80LDRgQ== 20900 +IE3DtmdsaWNo 20901 +IHJlbnRhbA== 20902 +IO2VqOq7mA== 20903 +IERpYW5h 20904 +IGF1dGlzbQ== 20905 +IFB1ZXJ0bw== 20906 +xLFsZA== 20907 +IGZhbGFu 20908 +IGRyZWFtaW5n 20909 +IGd1dGU= 20910 +INC60LDQvA== 20911 +IHdyZWNr 20912 +IHN0b3J5dGVsbGluZw== 20913 +IExlZ2VuZA== 20914 +IFVrcmFpbg== 20915 +INC/0YDQvtC40YE= 20916 +IFNL 20917 +IO2WiQ== 20918 +IMWbd2k= 20919 +IEJlbGlldmU= 20920 +IG1vc3RyYXI= 20921 +IFRvZGQ= 20922 +IE5pZ2Vy 20923 +aWN0aW5n 20924 +aGFyZA== 20925 +Oi8v 20926 +aXJhYmxl 20927 +aWdhdGlvbg== 20928 +IE1lbWJlcnM= 20929 +IOygnO2SiA== 20930 +IGRpc2NvdXI= 20931 +n70= 20932 +cmlrYQ== 20933 +IERO 20934 +IEZpZg== 20935 +IENhcGl0YWw= 20936 +0YDQvtC8 20937 +IFNhbnM= 20938 +eXVu 20939 +IHBpbG90cw== 20940 +IHRyYXQ= 20941 +IG55dA== 20942 +IOuvvA== 20943 +IGV4cG9uZW50aWFs 20944 +IGVtZXJnZQ== 20945 +IHRyYWplY3Rvcnk= 20946 +INC/0L7Rh9C10LzRgw== 20947 +IHNlYWxlZA== 20948 +YXR0aQ== 20949 +IHdpZGVz 20950 +INC+0LPRgA== 20951 +aWFuY2Vz 20952 +IHdpdG5lc3NlZA== 20953 +T3I= 20954 +b3Np 20955 +IEpvZWw= 20956 +b25hbA== 20957 +IEludGU= 20958 +Y2VkZXM= 20959 +IEdvdHRh 20960 +YW5pdW0= 20961 +IGZlbWFsZXM= 20962 +IExlYmVucw== 20963 +IG1vaXN0dXI= 20964 +IFNpbXBsZQ== 20965 +IERvY2g= 20966 +YXLDoQ== 20967 +IGdlc2VoZW4= 20968 +VVNU 20969 +xqFp 20970 +IGNsYXNzaWZpY2F0aW9u 20971 +IGRpYWdvbmFs 20972 +IHBlcm1ldHQ= 20973 +Y29tcA== 20974 +INin2YTYrQ== 20975 +IE1hbGF5cw== 20976 +IGdlaMO2cnQ= 20977 +IHBvcHBlZA== 20978 +IGNvbnRhY3RlZA== 20979 +INeb15w= 20980 +IDE0MA== 20981 +IGFkYXB0YXRpb24= 20982 +IG1hbnVz 20983 +IHR1cmtleQ== 20984 +IHByZWFjaA== 20985 +YnJpZ2h0 20986 +IGRvd25z 20987 +IHVucHJlY2VkZW50ZWQ= 20988 +IG1pZ2h0eQ== 20989 +IGNhdGVy 20990 +aXR0aQ== 20991 +Z3M= 20992 +IERlcHV0eQ== 20993 +d3JpdGU= 20994 +IEJsZXNz 20995 +w6Fj 20996 +IHN1bW1pdA== 20997 +IOuPvOyalA== 20998 +IHRob3VnaHRmdWw= 20999 +IHNocmVk 21000 +c2luZ2luZw== 21001 +INC70YPRh9GI0LU= 21002 +IHllbg== 21003 +IHZpYnJhbnQ= 21004 +IFdhbHRlcg== 21005 +IGhvc3Rz 21006 +IGFtYnVs 21007 +IGludmFzaW9u 21008 +b2dhbg== 21009 +IHJlYXNvbmluZw== 21010 +IHN1Y2M= 21011 +0LvQtdC60YI= 21012 +IGZhbGE= 21013 +IGtpbmdz 21014 +IGdvaW4= 21015 +IGNhbGli 21016 +IEdSw5xORU4= 21017 +b3Rlcg== 21018 +IGVpbno= 21019 +IGluc3VsaW4= 21020 +iqg= 21021 +IHNjYWxpbmc= 21022 +IENvcm4= 21023 +aHlk 21024 +IG1hdHRl 21025 +UEw= 21026 +IGFsaWVucw== 21027 +IFNlZw== 21028 +ZXN0aQ== 21029 +YXN0aWNz 21030 +IHdhcm1lcg== 21031 +IGluZ2Vu 21032 +IE1M 21033 +IHJvZGU= 21034 +IEV5ZQ== 21035 +YmVpdHM= 21036 +IEJhcm4= 21037 +wrss 21038 +IENodWNr 21039 +IHByb2ZpdGFibGU= 21040 +dWd1ZXNl 21041 +IEFyYWJpYQ== 21042 +IGNvY28= 21043 +IHB1ZWRv 21044 +IGluZmxhbW1hdGlvbg== 21045 +Y2xpcA== 21046 +IHRhYmxlc3Bvb25z 21047 +IOygkQ== 21048 +IFN3ZWQ= 21049 +IGFuYXQ= 21050 +7Iig 21051 +IGFycmli 21052 +IGRhbmNlcg== 21053 +IENhcnRlcg== 21054 +IG1hZ25pZmlj 21055 +c3RvcmU= 21056 +IGZhZGU= 21057 +IGFjY29tcGFueQ== 21058 +IHdhaHI= 21059 +IHllYXN0 21060 +IG1pbmVyYWw= 21061 +IGxlZ2lzbGF0dXJl 21062 +aXJvcw== 21063 +IGNyb3dkZWQ= 21064 +0YDQsNGI 21065 +b2NhZG8= 21066 +7Ja07JW8 21067 +IO2bhA== 21068 +IEJhcnJ5 21069 +bWFzdGVy 21070 +IG5pY2tuYW1l 21071 +ICIuLi4= 21072 +IFJz 21073 +IE1vb3Jl 21074 +IHZlbnVl 21075 +INCx0YM= 21076 +bGlob29k 21077 +IEFnZW5jeQ== 21078 +0LvQvtCy 21079 +IGthaA== 21080 +IOyGjOumrA== 21081 +IG1hcnNo 21082 +IGluY29ycG9yYXRlZA== 21083 +YW50d29ydA== 21084 +IGtpbWNoaQ== 21085 +IHdvbw== 21086 +IGRpc3RyYWN0ZWQ= 21087 +ZXJpZXM= 21088 +IGluZm9ybWFjacOzbg== 21089 +IENob29zZQ== 21090 +IEphZGk= 21091 +IGFuYWxvZ3k= 21092 +c2F5 21093 +dWZmbGU= 21094 +Ym9r 21095 +IGFjaWRz 21096 +IGFjcXVpc2l0aW9u 21097 +IHZhcmlhbnRz 21098 +IHBhc3NpZXJ0 21099 +7J2064KY 21100 +cnVjdGl2ZQ== 21101 +YnJpZw== 21102 +IOOAjA== 21103 +ZXBoZXI= 21104 +IHBI 21105 +dXRsaWNo 21106 +IHJlbGll 21107 +dWl0ZQ== 21108 +IHJlY2VwdGlvbg== 21109 +IGNvaA== 21110 +IFByZXA= 21111 +IGFudGljaXBhdGU= 21112 +a2Vl 21113 +IGRlc2lnbmF0ZWQ= 21114 +0Y/RgtC4 21115 +IEtvcg== 21116 +IEFuaW0= 21117 +w7xobA== 21118 +IFdoaXQ= 21119 +IHVuY292ZXI= 21120 +IE1heWE= 21121 +INGC0L7Qs9C00LA= 21122 +sJU= 21123 +dXRlbmFudA== 21124 +IOyWvOs= 21125 +IGZvcmVzdHM= 21126 +IG1lbWU= 21127 +IGRpc3Rpbmd1aXNoZWQ= 21128 +IE1hcng= 21129 +IExpb24= 21130 +IHNlcnZhbnRz 21131 +IERpYW0= 21132 +IFBvbGljeQ== 21133 +jbw= 21134 +IHRyaWdnZXJlZA== 21135 +YWJpbGly 21136 +IOydkQ== 21137 +IG5lZ290aWF0ZQ== 21138 +IGZleg== 21139 +IGVydw== 21140 +IHZhcmllcw== 21141 +IGplbWFuZA== 21142 +IGRpc2NoYXJnZQ== 21143 +0YHRj9GH 21144 +IFBBUg== 21145 +IEFmZmFpcnM= 21146 +IHZvdGVy 21147 +IGF0ZW4= 21148 +IGNyb2lz 21149 +b2JpbA== 21150 +IE9vcHM= 21151 +IEFyYw== 21152 +IEhlYXRoZXI= 21153 +YW5rYQ== 21154 +IHNpbXBsZXM= 21155 +zr/OvQ== 21156 +Ij4= 21157 +IGNob3Jkcw== 21158 +IFNhbmRlcnM= 21159 +IOu2hOs= 21160 +QmVu 21161 +IGRhcsO8YmVy 21162 +aWxpYW5z 21163 +IG9yZGVyaW5n 21164 +IE1hbmg= 21165 +IGtpbG9ncmFt 21166 +IGthcsWf 21167 +IGdyYXNw 21168 +IGdob3N0cw== 21169 +YWxlbg== 21170 +IEplZGk= 21171 +INCx0LvQuA== 21172 +IGRvd25sb2FkZWQ= 21173 +IGNvbmR1Y3Rpbmc= 21174 +IEhhaw== 21175 +IHJlc2VhcmNoZXI= 21176 +aWxhbg== 21177 +Z29vZA== 21178 +IEhhbm5haA== 21179 +IGTDvMWfw7xu 21180 +IE1lc3NpYWg= 21181 +dWl0eQ== 21182 +aW9uYQ== 21183 +IHByb2JhYmxl 21184 +IFlF 21185 +IGluZGVwZW5kZW50bHk= 21186 +IGJ1ZmZlcg== 21187 +YnVybg== 21188 +b3VyZA== 21189 +IE1jSw== 21190 +IGxpbmd1 21191 +dWplbXk= 21192 +0LXRgNGC 21193 +IGludHVpdGl2ZQ== 21194 +IGNyYWNrcw== 21195 +YXBwcm9wcmk= 21196 +bnR5 21197 +IGdlZW4= 21198 +IGxlbmQ= 21199 +IGNlcnRpZmljYXRpb24= 21200 +SURT 21201 +dW50ZXI= 21202 +cGVlcw== 21203 +IHRydW1w 21204 +IGJhbmtydXB0 21205 +IGZlYXM= 21206 +6Jc= 21207 +IGR1xbw= 21208 +IHZpcnVzZXM= 21209 +IDU4 21210 +Z29k 21211 +INC20LXQuw== 21212 +IHN0YWxr 21213 +SW5k 21214 +YWNoaQ== 21215 +IENG 21216 +IENvbmQ= 21217 +IHNhbmN0 21218 +IGNvbnRlbg== 21219 +IGZyZWVk 21220 +IFJU 21221 +IG1lbnRvcnM= 21222 +7KGx 21223 +IHBvcnRhYmxl 21224 +IFBhdWxv 21225 +cmFuZQ== 21226 +SEFIQQ== 21227 +IFNlY3Rpb24= 21228 +54Y= 21229 +aHl1bg== 21230 +IM6tz4c= 21231 +IFB1Yg== 21232 +IEluZGVwZW5k 21233 +IGNvbXBvdW5kcw== 21234 +INGB0Ys= 21235 +IG1lc3NhZ2luZw== 21236 +IGRlZGljYXRpb24= 21237 +IG5vdGljaW5n 21238 +IGRldm90ZWQ= 21239 +0Y7RgtGB0Y8= 21240 +IHNuYWtlcw== 21241 +IGJhdHRsZWZpZWxk 21242 +cGVycw== 21243 +IGRlbGE= 21244 +OTI= 21245 +IGhhaQ== 21246 +aWxsw6Q= 21247 +w6lyZXI= 21248 +ZXZlcnk= 21249 +IHJlc3BvbnNpdmU= 21250 +15nXlQ== 21251 +b3Bm 21252 +6Yk= 21253 +irg= 21254 +QmVjYXVzZQ== 21255 +IHRvdXJpc20= 21256 +IOq3uOqyjA== 21257 +15XXpg== 21258 +IGNhbnM= 21259 +c3TDvHQ= 21260 +IGRvbm5l 21261 +IERpb3M= 21262 +IFViZXI= 21263 +YWN0b3J5 21264 +IG9yaWVudGVk 21265 +IEhlcm0= 21266 +IHBhdHJvbg== 21267 +dXJm 21268 +YmVp 21269 +IHByb2dyYW1h 21270 +IE9oaA== 21271 +Z2VuZXI= 21272 +IGZpc3Q= 21273 +IFdlbmR5 21274 +IGFuZGE= 21275 +IGd1ZXNzZWQ= 21276 +IGZyZWFr 21277 +IEtpbmdz 21278 +Y2hvb2w= 21279 +IG9mZmxpbmU= 21280 +IEluZGlhbmE= 21281 +IEFsbGlhbmNl 21282 +IDUz 21283 +IHBhcnRpY3Vs 21284 +IEZvY3Vz 21285 +IGluaGFiaXQ= 21286 +IOqwmeydgOuNsA== 21287 +IE1jRw== 21288 +b3dza2k= 21289 +IOydtOqxtA== 21290 +IHBhxYRzdA== 21291 +0L7QvdC4 21292 +aXR0YQ== 21293 +IGNvbmZpcm1hdGlvbg== 21294 +IEJyb29rbHlu 21295 +IG5vb2RsZQ== 21296 +ZnVuZA== 21297 +aXR1ZA== 21298 +IGdyYW5kcGFyZW50cw== 21299 +IGJhcmJlY3Vl 21300 +zrXOuc+C 21301 +IOE= 21302 +IGJhbGxvdA== 21303 +IFZldGVy 21304 +IHBpcGVz 21305 +aWdpb3Vz 21306 +IEdyYXBo 21307 +ZXN0ZWQ= 21308 +IOu4jOs= 21309 +IEtF 21310 +IGVpbnM= 21311 +IGhhdHJlZA== 21312 +IGRhbmc= 21313 +ZWVlZQ== 21314 +IGFyY2hhZQ== 21315 +IEplc3Nl 21316 +IGRldGVjdGVk 21317 +IHNlbmk= 21318 +YnVyZ2g= 21319 +IGRpc3BsYWNlbWVudA== 21320 +IGRvcA== 21321 +IGNvbmRpdGlvbmluZw== 21322 +INC90LXRgdC60L7Qu9GM0LrQvg== 21323 +IGRpc3R1cmJpbmc= 21324 +UEg= 21325 +IHRoaW5uZXI= 21326 +IHdvdW5kZWQ= 21327 +IEN1YW5kbw== 21328 +IGN1c2hpb24= 21329 +IHdoaXRlcw== 21330 +IHByZWZlcmVuY2Vz 21331 +IOykgOu5hA== 21332 +IGthxbw= 21333 +IEdhdGU= 21334 +IFBhdGg= 21335 +ZGxlcw== 21336 +4LiE4Lij 21337 +aW1vcmU= 21338 +IOuztOyXrA== 21339 +IGRpc2NpcGxpbmVz 21340 +4buP 21341 +IG1lc21h 21342 +IOyDiOs= 21343 +IOyLrA== 21344 +IGdpbmc= 21345 +IHVtYnJlbGxh 21346 +SUdIVA== 21347 +IHBlbnNpb24= 21348 +IGNvbWJpbmluZw== 21349 +U1M= 21350 +IHJlY3RhbmdsZQ== 21351 +4buHdA== 21352 +IHByb3hpbQ== 21353 +IENvdw== 21354 +uIw= 21355 +IGludGVudGlvbmFs 21356 +IGRlY2lk 21357 +INGB0LrQsNC2 21358 +IFVtYQ== 21359 +aWFzbQ== 21360 +YnV6 21361 +IGRlYnJpcw== 21362 +IGNhc3M= 21363 +IFByb3A= 21364 +aXNrYQ== 21365 +66Cl 21366 +ZXN0ZXJvbA== 21367 +dXNzaWFu 21368 +7J20656R 21369 +IHVubGltaXRlZA== 21370 +IGFkbWlyZQ== 21371 +IHRpZ2h0bHk= 21372 +IGdlbm9tZQ== 21373 +IEp1bmlvcg== 21374 +dmVuaXI= 21375 +Z3Vz 21376 +IGPEgw== 21377 +IFZsYWQ= 21378 +IO2C 21379 +IHJlbGF0aXY= 21380 +aW5jaQ== 21381 +IGF1bnF1ZQ== 21382 +IEJveXM= 21383 +0YbQuNC+0L0= 21384 +IFN3aXNz 21385 +IHBoeXNpY2lhbnM= 21386 +IO2PiQ== 21387 +IFBFVA== 21388 +IHdvdW5kcw== 21389 +YWJvdXQ= 21390 +w6Bp 21391 +b256 21392 +dXJpdGllcw== 21393 +INGD0LLQuNC0 21394 +IG1lbnRhbGl0eQ== 21395 +IHZhcmlhbmNl 21396 +IHNlZ3VuZGE= 21397 +IHZvbGNhbm8= 21398 +YWxpZQ== 21399 +4KWH 21400 +IHRpbGVz 21401 +IFRlcnJ5 21402 +INin2YTZhNmH 21403 +IGNhbm9u 21404 +IHNjYXR0ZXJlZA== 21405 +cHRvbg== 21406 +IGRlZmluaXRpb25z 21407 +IGFsZ2VicmE= 21408 +b3Rlbg== 21409 +YWJsbw== 21410 +aWp1YW5h 21411 +IHdyYXBwaW5n 21412 +IHNlc2FtZQ== 21413 +INC90LDRh9C40L3QsA== 21414 +IEFsZg== 21415 +INCg0L7RgdGB 21416 +b3Jubw== 21417 +IGFua2xl 21418 +IHNwZWNpYWx0eQ== 21419 +IGF0dGVtcHRpbmc= 21420 +aWxpYXRpb24= 21421 +IDE5MjA= 21422 +IHBoZW5vbWVuYQ== 21423 +IFByb2R1Y3Q= 21424 +IEJ1Y2s= 21425 +IEF3dw== 21426 +c2Vlbg== 21427 +IHZvaWQ= 21428 +IEZyYW5rbGlu 21429 +IGFkdm9jYWN5 21430 +IFNlcA== 21431 +IGNvb2xlc3Q= 21432 +INGB0YDQsNC30YM= 21433 +IFF1YW5k 21434 +IDkwMA== 21435 +IFRyYWQ= 21436 +ZGllcw== 21437 +IGhhc2g= 21438 +IHBvdHM= 21439 +IHNhZGx5 21440 +IHZpYWJsZQ== 21441 +IFRpZ2Vy 21442 +IE9ORQ== 21443 +IG5ldXJvbnM= 21444 +b3dhbmll 21445 +xJc= 21446 +IFNoYXI= 21447 +IExhbmRlcw== 21448 +IGNvbmZlcmVuY2Vz 21449 +IGNyZWRlbnRpYWw= 21450 +IGxpbWU= 21451 +aW5lZQ== 21452 +eGl0 21453 +cGF5 21454 +IGluY29ucw== 21455 +ID4+Og== 21456 +IO2emOs= 21457 +IGxlc3Nlcg== 21458 +IHNwaWxs 21459 +IHByZW1pc2U= 21460 +IDM2NQ== 21461 +IEhvc3Q= 21462 +IHRvbWFy 21463 +15DXnA== 21464 +67KI 21465 +IFdoYXRz 21466 +IGxpZ2h0d2VpZ2h0 21467 +IE1hcA== 21468 +Zmlh 21469 +ZWxsc2NoYWZ0 21470 +IHZlbmRvcnM= 21471 +dWVzdG8= 21472 +IE1pc3Rlcg== 21473 +INCf0YDQuA== 21474 +aG1h 21475 +IGludGVudGlvbmFsbHk= 21476 +IFRhbmc= 21477 +IGlkZW50aWZpY2F0aW9u 21478 +IGV0Y2V0ZXJh 21479 +IE5lZQ== 21480 +INGC0YDQuA== 21481 +6re4 21482 +IGNyeXB0b2N1cg== 21483 +IGluaGFsZQ== 21484 +IGFkZGljdA== 21485 +IG1hdQ== 21486 +INGC0LDQutCw0Y8= 21487 +IOuyhA== 21488 +IGNvbXByYXI= 21489 +aWVkemllxIc= 21490 +INC+0YLQvdC+ 21491 +IGJlZ2lubmVy 21492 +INC80YPQtg== 21493 +IG9ic2M= 21494 +IGxpbWl0aW5n 21495 +YXNjdWxhcg== 21496 +IGluc3BlY3Rpb24= 21497 +YWNp 21498 +IHJlam8= 21499 +TXVz 21500 +IHphdGVu 21501 +IHN6Y3o= 21502 +IE1hZHJpZA== 21503 +IHZhcmlldGllcw== 21504 +IGVzdMOg 21505 +IFNoYWtlcw== 21506 +IGtpdHM= 21507 +IGFkbWluaXN0ZXI= 21508 +IGxhdmE= 21509 +IGfDpQ== 21510 +16rXmQ== 21511 +IFdheW5l 21512 +IGluc3RhZ3JhbQ== 21513 +IHJhdGVk 21514 +cGFwZXI= 21515 +IGJpbGQ= 21516 +IHByZXRlbmRpbmc= 21517 +IG9ic2VydmluZw== 21518 +INGB0LDQvNC+0Lw= 21519 +IHRyb3I= 21520 +IG9yZ2FuaXNtcw== 21521 +IGZhbHRh 21522 +IGhvbWV0b3du 21523 +57E= 21524 +IO2L 21525 +IGNoZWc= 21526 +IOyh 21527 +IGNvbW1h 21528 +aXPDqQ== 21529 +IGxpa2VsaWhvb2Q= 21530 +YXZvcmVk 21531 +IGdlbGRp 21532 +0L3QuNC60L7Qsg== 21533 +IG1lZGlv 21534 +IGpha2ll 21535 +IEp1cA== 21536 +IGdyZWVuaG91c2U= 21537 +IHNwaXQ= 21538 +0LrQvtC1 21539 +INC60LDQtg== 21540 +IEdyYW0= 21541 +IENvbmZlcmVuY2U= 21542 +IGRlZmljaXQ= 21543 +c8Sxbg== 21544 +aW5zZQ== 21545 +dcSf 21546 +IHJpY2h0 21547 +IGNvaW5jaWRlbmNl 21548 +IGV1cm9w 21549 +IGJ1dHRlcmZseQ== 21550 +cHJlYWQ= 21551 +IOyWvA== 21552 +IHdhdmVs 21553 +IEluZmlu 21554 +IFBsYW5ldA== 21555 +IHNlbGZpZQ== 21556 +aWVudHJhcw== 21557 +IGFycm9n 21558 +b3Nlcg== 21559 +aWRhbA== 21560 +oNeX16DXlQ== 21561 +w7x0w7xu 21562 +IGZyZXNobWFu 21563 +IE1hY2hpbmU= 21564 +z4PPhA== 21565 +IERpYQ== 21566 +7J2064uk 21567 +bmVh 21568 +IGxpc3Rpbmc= 21569 +IGNvbmZpZ3VyZQ== 21570 +dXRvcg== 21571 +VXA= 21572 +dHNjaGFmdA== 21573 +cmnDqHJl 21574 +IHVwd2FyZHM= 21575 +INGF0L7Rh9GD 21576 +IHN3ZWVw 21577 +QnI= 21578 +IGV4cHJlc3Npbmc= 21579 +IHVuaGFwcHk= 21580 +IG1hbmRhdG9yeQ== 21581 +Z2VuZGVy 21582 +IEHDrQ== 21583 +IGluZGljYXRvcnM= 21584 +IG9pbHM= 21585 +bm90ZQ== 21586 +IHNlZ3Vy 21587 +0L7QttC10YI= 21588 +eW5hc3R5 21589 +IGRpc3RhbmNlcw== 21590 +IG1lcmdl 21591 +QkVSVA== 21592 +IHN1cnJlbmRlcg== 21593 +IGJ1YXQ= 21594 +IEF3YXJkcw== 21595 +IHNlw7Fvcg== 21596 +b2RveA== 21597 +IGZsYXZvdXI= 21598 +IGFiZG9t 21599 +IGNvbmZpZ3Vy 21600 +ODY= 21601 +IERJWQ== 21602 +IHJpZ2lk 21603 +sJg= 21604 +IGNvcnBvcmF0aW9u 21605 +IGdyb29t 21606 +amF3 21607 +IE5lYXI= 21608 +0LjQu9C+ 21609 +IG9wZXJh 21610 +IElubm92 21611 +0LjRgNCw 21612 +k7E= 21613 +IHNwZWNpZmllZA== 21614 +IGNvc20= 21615 +IEZyZWVkb20= 21616 +IGNsb3du 21617 +IE5lbQ== 21618 +INCy0L7Quw== 21619 +0ZHQvQ== 21620 +IGNoYXJnZXI= 21621 +4LmB4Lil 21622 +IGluZmx1ZW50aWFs 21623 +w6RzaWRlbnQ= 21624 +6aQ= 21625 +IOyEoOs= 21626 +IHZvbHVtZXM= 21627 +5pA= 21628 +IG91dHJhcw== 21629 +IFR3aXRjaA== 21630 +IGZvdW5kaW5n 21631 +IGF3aGlsZQ== 21632 +IGNvaWw= 21633 +6rCZ 21634 +IGPhuqM= 21635 +IFRocm93 21636 +IEhlbmNl 21637 +b21tdA== 21638 +IEJlbmphbWlu 21639 +0LPQu9GP0LQ= 21640 +VGltZQ== 21641 +b2JpYw== 21642 +IG1vdXI= 21643 +IGRyZWFk 21644 +IEzDoA== 21645 +IENoaWxl 21646 +IHByZXZhbA== 21647 +IHZhaW4= 21648 +IGFydMSxaw== 21649 +IHByZXNlcnZlZA== 21650 +INC+0YLQtA== 21651 +IHdhcmVob3VzZQ== 21652 +IGJlc3Rl 21653 +IFNldmVyYWw= 21654 +IFNpdHVhdGlvbg== 21655 +IGNhcmRib2FyZA== 21656 +VG9k 21657 +ZXJuYQ== 21658 +IGdhcmFudA== 21659 +IGdlc3R1cmU= 21660 +IGhlbg== 21661 +IHNwZWxsaW5n 21662 +b3NleHVhbA== 21663 +IGFubmU= 21664 +IG1pY2U= 21665 +IE1laW5l 21666 +Y2FyZA== 21667 +IHJlYmVsbA== 21668 +IGNlcnRv 21669 +IOycoOs= 21670 +IHZlcnNjaGllZA== 21671 +IEJvcw== 21672 +IGludmVudGlvbg== 21673 +IHRyemU= 21674 +IG1hbmnDqHJl 21675 +IENoYWQ= 21676 +IHNwcmU= 21677 +IG9yZ2FuaXNhdGlvbnM= 21678 +IHBvb3JseQ== 21679 +IGFudGVyaW9y 21680 +IHN0YWly 21681 +0LrRgA== 21682 +IGF0b21pYw== 21683 +IHN5bXBhdGg= 21684 +IGNvbnRpbnVhbGx5 21685 +IGtsZWluZQ== 21686 +w6h0ZQ== 21687 +0LjRiQ== 21688 +zr/Pgg== 21689 +cGV1dA== 21690 +IHJlcG9zaXQ= 21691 +IGVudHJh 21692 +RW0= 21693 +IGZpbmFuY2luZw== 21694 +INC80L3QvtCz 21695 +IHRoZXNpcw== 21696 +IENvbXB1dGVy 21697 +ZWF1 21698 +IFRyZWU= 21699 +IGJyaWRl 21700 +b25zaWV1cg== 21701 +c2hpcmU= 21702 +d2lj 21703 +REU= 21704 +IOyImOs= 21705 +IGFjb20= 21706 +IFBP 21707 +ZXJzY2g= 21708 +INC/0L7QvNC+0Yk= 21709 +IEFybWVu 21710 +IOyjvQ== 21711 +IHpvcg== 21712 +IHByaW50cw== 21713 +IERhc3M= 21714 +IGR1cmFibGU= 21715 +IFRyYW5zcG9ydA== 21716 +7J6Q6rCA 21717 +INC70LXQsw== 21718 +IGTDqXQ= 21719 +w7RsZQ== 21720 +YW1vdXM= 21721 +WU4= 21722 +IGNsaWZm 21723 +IGdyYW1tYXI= 21724 +INCf0L7RjdGC0L7QvNGD 21725 +IGzDoG0= 21726 +ZXNjaA== 21727 +IG1pc2VyYWJsZQ== 21728 +IHZvbHRz 21729 +IENhZA== 21730 +dWthbg== 21731 +0YLQuNCy 21732 +cnVzdA== 21733 +IOyYrOudvA== 21734 +IHZlcms= 21735 +IGNoaWNrZW5z 21736 +IFlvbw== 21737 +IG91dGZpdHM= 21738 +Y29kZQ== 21739 +IGhpZXJhcmNoeQ== 21740 +bmV0ZXM= 21741 +IGNvdW50ZXJwYXJ0 21742 +IHTDtGk= 21743 +IHRlZA== 21744 +IEJhcnQ= 21745 +IOudvA== 21746 +IEdlbmF1 21747 +IGluY29taW5n 21748 +IEFCQw== 21749 +cmlxdWU= 21750 +INC+0YLQvw== 21751 +cXVhbA== 21752 +IGluY2VudGl2ZQ== 21753 +IGlocmVu 21754 +16DXmQ== 21755 +bG9l 21756 +IDE5MzA= 21757 +IGJhcmc= 21758 +IGRpY3Rpb24= 21759 +IMO2bmNl 21760 +SU5T 21761 +IHJlaA== 21762 +aXNpYWo= 21763 +bW91dGg= 21764 +IHNjb3Jpbmc= 21765 +bMSxaw== 21766 +IOyVhOyjvA== 21767 +T1JJQQ== 21768 +IEVzdGFkb3M= 21769 +IGNvbXBhbmlvbg== 21770 +IGFzc2VtYmxl 21771 +IHB1bmlzaGVk 21772 +IGl0YWw= 21773 +IHByZXZlbnRz 21774 +aXN0ZXM= 21775 +IEtlbnR1Y2t5 21776 +IGxvY2F0ZQ== 21777 +IGZhc3Rpbmc= 21778 +g4A= 21779 +IFNlYg== 21780 +IENyb3du 21781 +b3BpYQ== 21782 +IHdoaXA= 21783 +dXN6 21784 +0LrQsNC80Lg= 21785 +IGRhdGFiYXNlcw== 21786 +IHByb3NlYw== 21787 +IDE5OTc= 21788 +IOyCtOynnQ== 21789 +IFNvbGFy 21790 +IFB1ZXM= 21791 +IFplbg== 21792 +b2xsbw== 21793 +IEd1cnU= 21794 +IHNxdWVleg== 21795 +INCX0LA= 21796 +IMSN 21797 +Y2VwdGlvbnM= 21798 +Y2Nh 21799 +aXphYmxl 21800 +bWFuZA== 21801 +IGJyZWFrdGhyb3VnaA== 21802 +IHRhYmxlc3Bvb24= 21803 +IFNFQw== 21804 +aWto 21805 +IFPDo28= 21806 +INC/0LvQvg== 21807 +YW1lbg== 21808 +IHByYWM= 21809 +IGRhcmxpbmc= 21810 +IHRhbGxlcg== 21811 +IHJlbmRlcmluZw== 21812 +IOyasOumrOqwgA== 21813 +IM+EzrfPgg== 21814 +IG3Dow== 21815 +IGVzb3M= 21816 +dWVyZG8= 21817 +INGB0YfQuNGC 21818 +YWxsZXI= 21819 +7JeI7Ja07JqU 21820 +IG1pbGxvbmVz 21821 +bGVyaW4= 21822 +IHBlZ2Fy 21823 +b25uZQ== 21824 +IGVucm9sbG1lbnQ= 21825 +IGxpZWd0 21826 +IGJvYQ== 21827 +d2nEmQ== 21828 +YnNw 21829 +IGN5Y2xpbmc= 21830 +IEJlcm5pZQ== 21831 +IDE5ODk= 21832 +INC00LDQu9GM 21833 +IERha290YQ== 21834 +INGB0LLRj9C3 21835 +IENQ 21836 +IHN0YXJl 21837 +7YKk 21838 +IHByb3NwZXJpdHk= 21839 +IGFycmFuZ2VtZW50cw== 21840 +IGFycml2aW5n 21841 +bcOk 21842 +IGtheWFr 21843 +aXB0 21844 +IHBhcmRvbg== 21845 +IHJlbGF0 21846 +IHZlcnN0ZQ== 21847 +IEZpZw== 21848 +IGZvaWw= 21849 +IFRhbGtpbmc= 21850 +cGVhcmU= 21851 +IG5vaQ== 21852 +INC/0YDQuNGI 21853 +IGhvY2tleQ== 21854 +IGFkbw== 21855 +IE9VVA== 21856 +Njc= 21857 +IGhvcm1vbmVz 21858 +IEF2ZW51ZQ== 21859 +IFN1cGVybWFu 21860 +IHByZXNjcmlwdGlvbg== 21861 +dWJlcm5ldGVz 21862 +Q0w= 21863 +b3RpdmU= 21864 +TklT 21865 +aWVuZW4= 21866 +IHNhZG5lc3M= 21867 +IFZpdA== 21868 +VHk= 21869 +IHN0YXJ0ZXI= 21870 +IGJlZGU= 21871 +IGZvdW5kYXRpb25z 21872 +IHNvcmU= 21873 +0YnQtdGB0YLQsg== 21874 +7Jqw6w== 21875 +INGH0YPQsg== 21876 +bGluaw== 21877 +IG1hbmV1 21878 +d29ya2luZw== 21879 +w6Bu 21880 +IEF0dGFjaw== 21881 +IENhcnQ= 21882 +dmVpcw== 21883 +IFJlc3A= 21884 +ZW5zaW5n 21885 +IOyii+yVhOyalA== 21886 +IGVzY3VjaA== 21887 +IFJOQQ== 21888 +grQ= 21889 +IGFkb3A= 21890 +IGJlbmRpbmc= 21891 +2LnYrw== 21892 +IG1hbmFnZXM= 21893 +dXNw 21894 +IHRhcnQ= 21895 +IHJvdXRlcg== 21896 +Qm8= 21897 +IGVzdGFibGlzaGluZw== 21898 +IGJhbGFuY2luZw== 21899 +IGF0aGxldGlj 21900 +IFNsbw== 21901 +IGZpbGxz 21902 +INC90LDQsQ== 21903 +INC00LDQuw== 21904 +IHBvc3Nv 21905 +IFZpZWxlbg== 21906 +IGNyaXRpY3M= 21907 +IGxhd3N1aXQ= 21908 +IElzYWFj 21909 +INGE0LjQu9GM0Lw= 21910 +IHRyYXM= 21911 +IHByYXc= 21912 +IENyYXp5 21913 +IG5ldQ== 21914 +IGt1bGw= 21915 +IHR1bW9y 21916 +IEFQUA== 21917 +Z2F0ZQ== 21918 +IEFSRQ== 21919 +OTg= 21920 +IFN0ZWFt 21921 +IGZ1Y2tlZA== 21922 +bGFnZQ== 21923 +IOKZrA== 21924 +IE1E 21925 +Znk= 21926 +IHNoZWxscw== 21927 +IFNlZW1z 21928 +aXplcnM= 21929 +IHJhbmdlcw== 21930 +IEFudG9uaW8= 21931 +QVRJT04= 21932 +IEJhYmE= 21933 +IOyDiQ== 21934 +a3Vu 21935 +IHByYXllZA== 21936 +0YDRjw== 21937 +INC/0YDQvtGC0LjQsg== 21938 +IHNlYXM= 21939 +YnVyeQ== 21940 +INeU16k= 21941 +IHRyYWl0 21942 +IERlcGVuZGluZw== 21943 +IGRyZQ== 21944 +IGvDtm5udA== 21945 +0YbRgw== 21946 +IGxpcHN0aWNr 21947 +ZWV6 21948 +INC/0YDQuNC80LXRgA== 21949 +IGFzc2lnbm1lbnRz 21950 +Qm9i 21951 +IG1ldGFscw== 21952 +IHNwZWNpYWxseQ== 21953 +IOyYiOs= 21954 +IMWh 21955 +IHZpc3Rh 21956 +IM6s 21957 +IHR3aW5z 21958 +IG5vdGFibGU= 21959 +IFNhdQ== 21960 +IGTDqXZlbG9w 21961 +IMOnZWs= 21962 +IHBvbHlub20= 21963 +YXZhbQ== 21964 +IHRhbWLDqQ== 21965 +0L7QvdC+0Lw= 21966 +IHBsYXNtYQ== 21967 +IGVmZWN0 21968 +IGzDpG5n 21969 +IGNhc2k= 21970 +0YHQsA== 21971 +xLFtxLE= 21972 +k6TsnYA= 21973 +IGxhYm91cg== 21974 +b3NzZW4= 21975 +IFB1bg== 21976 +cmlm 21977 +IGRvc2Vz 21978 +IG9wZXJhdGVz 21979 +0LjQu9C70Lg= 21980 +IGphYXI= 21981 +c3Rhdw== 21982 +IOyCrOuekQ== 21983 +IGF0bQ== 21984 +IHByb3RlY3Rz 21985 +IGltcGVk 21986 +SE8= 21987 +IGNpbWE= 21988 +IHRvY2g= 21989 +YWJpcw== 21990 +IHNlbmRv 21991 +bGF1cw== 21992 +IGN1cmw= 21993 +IE51bQ== 21994 +IHNwb25zb3Jz 21995 +IGTDqWJ1dA== 21996 +IEFsZXhh 21997 +IELDvHI= 21998 +IEFtZXI= 21999 +IGNvcGU= 22000 +INC40LfQsg== 22001 +amFs 22002 +IDE5OTU= 22003 +YXBhdA== 22004 +cmVzc2U= 22005 +IFByaXpl 22006 +IENsYWlyZQ== 22007 +IEJyYW5kb24= 22008 +IHdzenlzdGtv 22009 +IHZhbHVlZA== 22010 +4LiZ4Liw 22011 +IHNlY3Q= 22012 +IHNlY3JldGx5 22013 +IGRpYW1vbmRz 22014 +IEV2YW4= 22015 +IFJQRw== 22016 +iOuPhA== 22017 +IFVuaXZlcnNhbA== 22018 +IGRvdWJ0cw== 22019 +IFBpbg== 22020 +d2nEhXo= 22021 +mqk= 22022 +IGFsYm8= 22023 +IGJyYXVjaHQ= 22024 +QVVM 22025 +IE1vYmlsZQ== 22026 +Z3JhZGVz 22027 +IHNjaGVt 22028 +d2h5 22029 +IE5pY2h0 22030 +cGk= 22031 +Z2xl 22032 +IGNob3J1cw== 22033 +IGdseQ== 22034 +IHJlaW5mb3JjZQ== 22035 +IG11ZmY= 22036 +IFNoZW4= 22037 +IEhvbGE= 22038 +0YPQsw== 22039 +dmlkZW1tZW50 22040 +dmlhbA== 22041 +YWNpb3Vz 22042 +bGFpbWVk 22043 +IFJpY28= 22044 +IHZlZ2c= 22045 +IGlsbHVzdHJhdGlvbg== 22046 +IEJ1dHRlcg== 22047 +b3dhZA== 22048 +IGV1eA== 22049 +IGVuZmFudHM= 22050 +IExlYWRlcg== 22051 +IFZpbGxhZ2U= 22052 +ZXRpY2FsbHk= 22053 +2YbZig== 22054 +IHN0ZXc= 22055 +IHN1cnByaXNlcw== 22056 +IGN1ZQ== 22057 +IEdyYW5kbWE= 22058 +IENlbHNpdXM= 22059 +IFJpY2h0 22060 +ZW5j 22061 +IHBldGl0aW9u 22062 +IGhlcmI= 22063 +IHdpY2tlZA== 22064 +IHNjaGxl 22065 +b2NhbHk= 22066 +IHRyYW5zZg== 22067 +IHRva2Vucw== 22068 +IEdyYXk= 22069 +IEJCQw== 22070 +SUs= 22071 +IDE1MDA= 22072 +em4= 22073 +IE5ldg== 22074 +IGtveQ== 22075 +IHphcg== 22076 +IGJ1bGxzaGl0 22077 +IENvbG9tYmlh 22078 +dWxhdGl2ZQ== 22079 +IHdpZGVzcHJlYWQ= 22080 +eWVjdA== 22081 +a2l0 22082 +IGVtcHJlc2E= 22083 +IG5vdXI= 22084 +IGJ1cm5z 22085 +YXRpbg== 22086 +YWlyZWQ= 22087 +IHJldm9sdXRpb25hcnk= 22088 +INCz0L7QtNGD 22089 +IExvZ2Fu 22090 +IDE5OTY= 22091 +IEdyYWhhbQ== 22092 +cmVi 22093 +IE5IUw== 22094 +IGNvc3R1bWVz 22095 +IG5hd2V0 22096 +IGxvdmVycw== 22097 +IEx1Y3k= 22098 +IEluZGlnZW5vdXM= 22099 +7ZWY6riw 22100 +IGltbXVuaXR5 22101 +pbTr 22102 +dWl0bw== 22103 +IGV4Y2Vzc2l2ZQ== 22104 +IGRvbmF0aW9ucw== 22105 +INeU16g= 22106 +IOyyqw== 22107 +IGRyeWluZw== 22108 +bWVsb24= 22109 +IHN1cnZleXM= 22110 +IOustOyKqA== 22111 +YWFh 22112 +IHByb2Jl 22113 +YW5jaWFs 22114 +IGxvdWRlcg== 22115 +IGhvdGVscw== 22116 +w7zEnw== 22117 +YWduZXI= 22118 +IG9yaWdpbnM= 22119 +IOuniOyngOuniQ== 22120 +ICoq 22121 +IHN0cmFuZ2Vycw== 22122 +IEhhdXM= 22123 +Y29tZWQ= 22124 +IGFudGhyb3A= 22125 +IHVzbw== 22126 +IOyVhOyngQ== 22127 +IFl1YW4= 22128 +IO2VhOyalA== 22129 +cGxlcg== 22130 +cmVzc2l2ZQ== 22131 +IHNwcmF3 22132 +IFN0ZXc= 22133 +IDE5OTQ= 22134 +IGVsZGVycw== 22135 +IG1laW5lbg== 22136 +IGp1bnQ= 22137 +IGFjb3VzdA== 22138 +IFdvaG4= 22139 +IGJhbmFuYXM= 22140 +IHByb2plY3Rpb24= 22141 +IFN0aWNr 22142 +bGVndA== 22143 +c3BlZWQ= 22144 +IGPFqW5n 22145 +IFdvcnQ= 22146 +IEJhbHRpbW9yZQ== 22147 +INGG0LXQuw== 22148 +IGR1bm5v 22149 +Pyw= 22150 +IExvY2Fs 22151 +b3N0bw== 22152 +0K0= 22153 +0L7QtNCw 22154 +IFBvcnR1Z3Vlc2U= 22155 +IHRoZWlycw== 22156 +IGTDqW0= 22157 +IGRyYXVm 22158 +IEJ1ZGRoaXN0 22159 +ZXJ0YQ== 22160 +R2U= 22161 +IGNhcnJvdA== 22162 +IFdvbmRlcmZ1bA== 22163 +IHNvYWs= 22164 +IGNoYWlybWFu 22165 +Z2dp 22166 +SUNB 22167 +ZnJpZWQ= 22168 +IGZsaWNr 22169 +IFRocm91Z2hvdXQ= 22170 +IOyasOs= 22171 +IGNvdWdo 22172 +IGZsdWZmeQ== 22173 +c2Nob29s 22174 +IHJpcHBlZA== 22175 +LS0tLS0tLS0= 22176 +IFp1a3VuZnQ= 22177 +INC90LXQsQ== 22178 +IHN0bw== 22179 +IEJP 22180 +cGVudA== 22181 +IExhd3JlbmNl 22182 +z4nPgg== 22183 +c3RpY2tz 22184 +IEVpbnM= 22185 +INGA0Ys= 22186 +IFN0cm9uZw== 22187 +IGNhcmFtZWw= 22188 +IHNwaXRl 22189 +YXphcg== 22190 +IGNyaXRpY2FsbHk= 22191 +IG9icmE= 22192 +b3dpdHo= 22193 +IFpvbmU= 22194 +INGA0LXQug== 22195 +IHN1Zw== 22196 +YXJkZWQ= 22197 +IGfDrA== 22198 +ZmZlbnRsaWNo 22199 +YW5jaGU= 22200 +2J8= 22201 +YXN0aWNhbGx5 22202 +7J286w== 22203 +0LvQsNCy 22204 +IHNpbXBsZXN0 22205 +IEZyaWVuZA== 22206 +IHF1ZWxsbw== 22207 +IGFtYml0aW9u 22208 +IGFiYmlhbW8= 22209 +INGE0L7RgNC8 22210 +IEVzc2E= 22211 +IGVkdWNhdG9ycw== 22212 +IHN0YXRpc3RpY2Fs 22213 +IGNoYW5nZXI= 22214 +IGF0YXU= 22215 +w6l0YWlz 22216 +IFNoYWtlc3BlYXJl 22217 +65CY 22218 +IHRyaWdnZXJz 22219 +IHJlYWxpeg== 22220 +IGNlbHVp 22221 +d2hlZWw= 22222 +IGxveWFsdHk= 22223 +IHNjcmVhbXM= 22224 +a2Vocg== 22225 +IE1lZ2E= 22226 +ZWFzdA== 22227 +IHRvcHM= 22228 +IFRvdGFsbHk= 22229 +b3VudGFpbg== 22230 +bG9yZA== 22231 +IHZpb2xhdGlvbg== 22232 +IEdB 22233 +IG5pY2Vy 22234 +IEZyZXNo 22235 +IE1lbGlzc2E= 22236 +ZnVuY3Rpb24= 22237 +IHJhcGU= 22238 +IGV4Y2VwdGlvbnM= 22239 +IHNpbGljb24= 22240 +IGxpYmVydHk= 22241 +IGhvdXNlaG9sZHM= 22242 +IENB 22243 +INCe0LE= 22244 +IGxpYg== 22245 +now= 22246 +Y2lmaWM= 22247 +IHRyb3BpY2Fs 22248 +IGludmVzdGlnYXRpbmc= 22249 +SEQ= 22250 +IGFkYXB0ZXI= 22251 +IFBpdHQ= 22252 +YW5jaWE= 22253 +IFNoZWxs 22254 +ZnJpZW5kbHk= 22255 +IGNvbmNsdXNpb25z 22256 +IHR1cnRsZQ== 22257 +IGRlY29tcA== 22258 +IGFuaW1hdGlvbnM= 22259 +INGB0LXQug== 22260 +aW5zaQ== 22261 +IHJldGVudGlvbg== 22262 +a2ll 22263 +IGluamVjdGlvbg== 22264 +IE1hZGlzb24= 22265 +7LCw 22266 +IHZpZW50 22267 +IHZhcmllZA== 22268 +IHZpb2xpbg== 22269 +IEJpbA== 22270 +IGx1Y2tpbHk= 22271 +IGh0dA== 22272 +bMOk 22273 +IHJhbmNo 22274 +IHPDs2xv 22275 +7JWF 22276 +IERlcmVr 22277 +IFNjcmlwdHVyZQ== 22278 +0L7RgNCw 22279 +IGNsYXNzcm9vbXM= 22280 +YXZpbA== 22281 +Zm9ybWVk 22282 +IGJlZm9yZWhhbmQ= 22283 +IEdlbQ== 22284 +cHJlY2g= 22285 +IGxpbg== 22286 +IGdyZWVucw== 22287 +0YbQtdCy 22288 +IE1lcmNlZGVz 22289 +IGRyb3VnaHQ= 22290 +Z2FzcHM= 22291 +IGFib3J0aW9u 22292 +IHRlcnJpYmx5 22293 +IHNwb3PDs2I= 22294 +IHNlY3VyZWQ= 22295 +IGF0csOhcw== 22296 +IHdhdmVsZW5ndGg= 22297 +IGdyYWlucw== 22298 +ZWN0aXZl 22299 +IHNwYWNlY3JhZnQ= 22300 +IHRvdXJz 22301 +IHByb2Zlcw== 22302 +IHN1cmdlb24= 22303 +IFBpZQ== 22304 +IGlkZWFsbHk= 22305 +YXJuZXI= 22306 +VVA= 22307 +b3BhcmQ= 22308 +c2Nl 22309 +IGltbWVuc2U= 22310 +IE9ydA== 22311 +cm9sbGVy 22312 +IERhbGxhcw== 22313 +IE5pY2hvbGFz 22314 +IHN1bGY= 22315 +IFRveW90YQ== 22316 +IHF1YW50aXRpZXM= 22317 +Y2VhbnM= 22318 +IGN1aQ== 22319 +YW7Dp2E= 22320 +IENBTg== 22321 +aXR6ZXJsYW5k 22322 +IHpvdQ== 22323 +IEN5YmVy 22324 +bGVnZW4= 22325 +IEluaXQ= 22326 +ZWR1 22327 +IGFwZXJ0 22328 +IGFkamFj 22329 +b3V2 22330 +cnM= 22331 +IGNhYmJhZ2U= 22332 +IHdoZWVsY2hhaXI= 22333 +aW55bA== 22334 +IER5bmFt 22335 +IOyVhOuLiOudvA== 22336 +IGxpbmc= 22337 +aGw= 22338 +INC80L7Qs9GD 22339 +IGNyaXNw 22340 +IG1pag== 22341 +IGR1Zw== 22342 +bmlu 22343 +IGJsb3Nz 22344 +IGJlbG9uZ2luZw== 22345 +IGxvdWRseQ== 22346 +IG1pbmVyYWxz 22347 +IGNvbmNsdWRlZA== 22348 +IHNlYXJjaGVk 22349 +OTY= 22350 +IE1lZXQ= 22351 +IFNFTw== 22352 +INCh0Lo= 22353 +IEhvYg== 22354 +b3R0YQ== 22355 +IHByb3BhZ2FuZGE= 22356 +IGNpbm5hbW9u 22357 +IGh1bnRlcg== 22358 +IGdlbWVpbnM= 22359 +IHNjdWxwdHVyZQ== 22360 +dWxzaW9u 22361 +IHbDpGw= 22362 +IG1hZ2F6aW5lcw== 22363 +IGNvbnRyb3ZlcnN5 22364 +IHNlcXVlbmNlcw== 22365 +IO2ajA== 22366 +IGRlbGV0ZWQ= 22367 +kOuPhA== 22368 +IHZhcnlpbmc= 22369 +IG1vdW50aW5n 22370 +IGFmZmFpcg== 22371 +IHBhdGh3YXlz 22372 +5qY= 22373 +IGRpZ28= 22374 +INC00L7Qug== 22375 +QWxleA== 22376 +IHRvYmFjY28= 22377 +IENW 22378 +IGJvdGhlcmVk 22379 +IGFtYmllbnQ= 22380 +aW5reQ== 22381 +IFNM 22382 +IGhhdGVz 22383 +IGplxbxlbGk= 22384 +IGNvbmdyZWc= 22385 +IGVsYXM= 22386 +IGRldXRz 22387 +IFN0dWRpb3M= 22388 +Y2jEmQ== 22389 +IGRvY3VtZW50ZWQ= 22390 +IENydXo= 22391 +IExlbg== 22392 +IERvdWdsYXM= 22393 +IFBvcnR1Z2Fs 22394 +ZW50aQ== 22395 +IHNwb3VzZQ== 22396 +IGFuYWx5cw== 22397 +YXZpYQ== 22398 +IGVkaXRlZA== 22399 +IGzhuqFp 22400 +YnVpbHQ= 22401 +IHZpbGxl 22402 +YWRvcmE= 22403 +IGJyYWNlbGV0 22404 +IHN1c2hp 22405 +IHBt 22406 +IHRyYWlscw== 22407 +IGx1Zw== 22408 +IMO2dmVy 22409 +IHNvcnJvdw== 22410 +IGNvbG9ueQ== 22411 +YWRveA== 22412 +IHNlcmll 22413 +YW55YWs= 22414 +INi3 22415 +IEd1bGY= 22416 +IFBW 22417 +IFNhbXVlbA== 22418 +IEtpdA== 22419 +IFJhbA== 22420 +b250aW4= 22421 +ZXhwbA== 22422 +IGVudHJpZXM= 22423 +IGFjdGl2aXN0cw== 22424 +UHM= 22425 +IHNhbnQ= 22426 +INGC0L7Rhw== 22427 +IEJydW5v 22428 +a2VsZXk= 22429 +IHR1dHRv 22430 +6ZQ= 22431 +IHZpbnRhZ2U= 22432 +IHRlcnJpZmllZA== 22433 +INC/0L7RhQ== 22434 +dXNpdmU= 22435 +b3dlcnM= 22436 +0LDQudGC 22437 +64+Z 22438 +IHR3aXN0ZWQ= 22439 +IFRob3VnaHQ= 22440 +IHRhaA== 22441 +IHNocmluaw== 22442 +IHNoZWVy 22443 +bGl0 22444 +IGRhbGFt 22445 +IGRpYg== 22446 +IHZhcmQ= 22447 +b3dhbmU= 22448 +IGRvYnI= 22449 +IFJlbmE= 22450 +INGB0LLQvtGO 22451 +IHBhw61zZXM= 22452 +IEVyYQ== 22453 +IEJVVA== 22454 +c2lnaHM= 22455 +IOq3uOqxsA== 22456 +IGdyb8OfZW4= 22457 +IOu5qOumrA== 22458 +IG5lcnZlcw== 22459 +IGNvbnN0aXQ= 22460 +IHByZW9jdXA= 22461 +IEdheQ== 22462 +IFh1 22463 +a2VlcGVy 22464 +aGV1cmU= 22465 +Li4p 22466 +IENhbG0= 22467 +IFVuaWRvcw== 22468 +IOydtOqygw== 22469 +IEFxdWk= 22470 +IOygnOydvA== 22471 +ZMSxcg== 22472 +7KaY 22473 +eW91cg== 22474 +INGN0YLQuNC8 22475 +MjAyMA== 22476 +IHJ1bmQ= 22477 +IEhP 22478 +IENhdGhlcmluZQ== 22479 +aWVsaQ== 22480 +IGZ1c2lvbg== 22481 +IGlkZW9sb2d5 22482 +IGZvcmFt 22483 +c2hhcGVk 22484 +IO2bhOs= 22485 +IHd0 22486 +IHJldHI= 22487 +IHByw6lj 22488 +IOqwkQ== 22489 +IG9wZW5seQ== 22490 +dml0eQ== 22491 +6rWs7JqU 22492 +IG9ic3RhY2xl 22493 +IGJvbw== 22494 +IHNlaW5lcg== 22495 +aWNvcm4= 22496 +IGVpZ2VubGlqaw== 22497 +IGhlYWRlcg== 22498 +YXJlbW9z 22499 +IHNvZnRlcg== 22500 +INCf0L7QtA== 22501 +IHByZWp1ZA== 22502 +IGRlZmluZXM= 22503 +aWVydGU= 22504 +IGJsZW5kaW5n 22505 +IGJlbGlldmVycw== 22506 +IFdvY2hlbg== 22507 +INC90LjQutCw0Lo= 22508 +INCa0L7Qs9C00LA= 22509 +IFR5cGljYWxseQ== 22510 +IO2BrA== 22511 +Y2lvcw== 22512 +IG1pc3NpbGVz 22513 +IHNwb25nZQ== 22514 +IEtpdGNoZW4= 22515 +IHRyZW4= 22516 +bmluZ2Vu 22517 +IHNjcmFw 22518 +IHNlcmFpdA== 22519 +tOyg 22520 +57k= 22521 +IOuwmOs= 22522 +IHJlc3RvcmVk 22523 +IHByenlrxYJhZA== 22524 +IEt1YmVybmV0ZXM= 22525 +IHNhaXQ= 22526 +IHV3 22527 +IGVuYWJsaW5n 22528 +IHRyYXZlcnM= 22529 +YW1wcw== 22530 +IE9NRw== 22531 +ZW5zb3I= 22532 +IHpvc3Rh 22533 +IHByb25vdW5jZWQ= 22534 +QW5n 22535 +bm9ybWFs 22536 +IGVjb25vbWllcw== 22537 +dGlu 22538 +IENoYW1waW9u 22539 +aXplbg== 22540 +IGFyYmVpdGVu 22541 +IEdvc3BlbA== 22542 +IFp1 22543 +bmdh 22544 +IGxpdGVyYWN5 22545 +IE1hbnM= 22546 +IGNpcmN1bGF0aW9u 22547 +IGFkYXA= 22548 +IFRvdGFs 22549 +IG1lcmVrYQ== 22550 +IG9sYWNhaw== 22551 +0YHRgtCw0YLQuA== 22552 +SmFjaw== 22553 +IG11bmQ= 22554 +IHRoaWVm 22555 +Ymllcw== 22556 +IOqygQ== 22557 +YXF1ZQ== 22558 +INqp24w= 22559 +IFNjYXI= 22560 +5bI= 22561 +IGFib2w= 22562 +IGRldm90ZQ== 22563 +IDAx 22564 +IHNpdHRlbg== 22565 +IFZpc3VhbA== 22566 +d2Vlaw== 22567 +c29tZQ== 22568 +aW5ndA== 22569 +IGpvdXJuYWxpc20= 22570 +IEhpcg== 22571 +IEJhY2hlbG9y 22572 +aW5lcnk= 22573 +w5xORA== 22574 +IGNvbG9yaW5n 22575 +IENyaXN0 22576 +IGNlbGVicml0aWVz 22577 +INGH0LjRgQ== 22578 +IENyaXQ= 22579 +IGRpZmZlcmVudGlhdGU= 22580 +INCc0L3QtQ== 22581 +ZWxpbQ== 22582 +IHNlYWZvb2Q= 22583 +IGFsZ3VtYXM= 22584 +b3RoZXJhcHk= 22585 +IGdsYXVi 22586 +IGFyYml0cmFyeQ== 22587 +Z2Vucw== 22588 +INCx0YPQtNC10Lw= 22589 +IHRhdg== 22590 +IGNyZWFteQ== 22591 +IENvdW50cnk= 22592 +YcOx 22593 +0LzQtdGC 22594 +IGhpbnRlcg== 22595 +IG1pc20= 22596 +IGlsbHVzdHJhdGU= 22597 +w5xORE5JUw== 22598 +IGRlY3JlYXNpbmc= 22599 +IHdlbmlnZXI= 22600 +QUtJ 22601 +aXhvbg== 22602 +INC90LXQuQ== 22603 +IGZhdHRv 22604 +IG5lcmQ= 22605 +56A= 22606 +IGJpdHRl 22607 +UGVy 22608 +IHRhbmU= 22609 +IGfDtno= 22610 +IGZvcnRl 22611 +IEV5 22612 +INC90LDQstC10YA= 22613 +IFdvcmRQcmVzcw== 22614 +IE1pcw== 22615 +xa8= 22616 +esOkaA== 22617 +IGludMOpcmVzcw== 22618 +b3NhdXJz 22619 +IEZhbGxz 22620 +IG5lc3Nh 22621 +OTc= 22622 +IG11c2V1bXM= 22623 +IGNvcnJlc3BvbmRz 22624 +IHNpbmdz 22625 +Zm91cg== 22626 +IGVkZXI= 22627 +IENvbW11bmlzdA== 22628 +b2E= 22629 +bmVr 22630 +IFdITw== 22631 +IGNvcnBv 22632 +IG1lc3Npbmc= 22633 +z4TOsc65 22634 +IGJydXNoZXM= 22635 +IGJpc2M= 22636 +IEFyYmVpdHM= 22637 +IFRheA== 22638 +IHNlbGU= 22639 +IGZsYWdz 22640 +b3VwZQ== 22641 +IGFudGljaXBhdGVk 22642 +IE5hZA== 22643 +IHBvdXJlZA== 22644 +IG1s 22645 +IGxsYW1h 22646 +IHZpc3VhbGl6ZQ== 22647 +IGxpc3RlbmVycw== 22648 +2YTZgw== 22649 +YWx0ZW4= 22650 +TWljaGFlbA== 22651 +IGNvc8Os 22652 +1aHV 22653 +b3B1cw== 22654 +IO2VtOyjvA== 22655 +IGhpa2U= 22656 +IEF0dG9ybmV5 22657 +IEhpbGxhcnk= 22658 +dWRlZA== 22659 +IO2VmOyngOunjA== 22660 +IGRvdmU= 22661 +IHN0b3Jtcw== 22662 +0LDQutGB 22663 +IGRvY3RyaW5l 22664 +IGhleA== 22665 +aWtz 22666 +bm/Fm8SH 22667 +IHNjcmlwdHM= 22668 +IM60zrXOvQ== 22669 +INGN0YLQuNGF 22670 +INCG 22671 +YWJlcg== 22672 +IFZhcw== 22673 +IGNlbnRpbWV0ZXJz 22674 +157XlA== 22675 +0L3QuNCx 22676 +IHJpZGVycw== 22677 +IFRyaWI= 22678 +IHRha8W8ZQ== 22679 +IG5vdW4= 22680 +IGljb25z 22681 +IHNvbGVseQ== 22682 +bWluZGVk 22683 +IGRpc3Bvbg== 22684 +IFN3aXR6ZXJsYW5k 22685 +IGNsdXN0ZXJz 22686 +IHF1ZWRh 22687 +YWlsaW5n 22688 +IG1hbmdh 22689 +IDY4 22690 +hIg= 22691 +IHRldA== 22692 +Z2lucw== 22693 +aGF1cw== 22694 +IE9Q 22695 +b3RlZA== 22696 +IG5vdXZlYXU= 22697 +QUxMWQ== 22698 +2YjYrw== 22699 +w7Ju 22700 +IG1vcnRhbGl0eQ== 22701 +IEdpdEh1Yg== 22702 +ZHJvcA== 22703 +IGRpc2d1 22704 +IHJlY29t 22705 +IGxvY2Fscw== 22706 +IGhvbWVtYWRl 22707 +YW1iYQ== 22708 +IHByb251bmNpYXRpb24= 22709 +IGFscGhhYmV0 22710 +0LDQvdGM 22711 +b3dhbnk= 22712 +aXJhcw== 22713 +aWRlbmN5 22714 +T01F 22715 +INGA0LDRgdGB 22716 +YXJhaw== 22717 +dmlhbWVudGU= 22718 +IG5vbnByb2ZpdA== 22719 +IFlvdVR1YmVy 22720 +IHBhcmVudGg= 22721 +IEJvbw== 22722 +dmF0 22723 +IFN0aXI= 22724 +IHByZWNpcA== 22725 +IGFudHM= 22726 +IGFsbHk= 22727 +IE1hb3Jp 22728 +IOuMgO2VnA== 22729 +b2dlbmU= 22730 +IExhYm91cg== 22731 +YXJldHRl 22732 +IHJlY3ljbGluZw== 22733 +ZW5zYQ== 22734 +IHB1cnN1aXQ= 22735 +IHNhaw== 22736 +INCX0LTQtdGB0Yw= 22737 +IHRvbGVyYW5jZQ== 22738 +IHNhYXQ= 22739 +IGNsaWNrZWQ= 22740 +4pml 22741 +IGZhY2Vib29r 22742 +IEludG8= 22743 +IGluY2VudGl2ZXM= 22744 +6riw64qU 22745 +IERlbm5pcw== 22746 +IFdpaw== 22747 +Z2VzY2g= 22748 +4LmA4Lib 22749 +IM+AzrE= 22750 +IFdob28= 22751 +IHJvdW5kZWQ= 22752 +IGRvcGU= 22753 +IGNhcHR1cmluZw== 22754 +IFdhcnJp 22755 +IGNpdmlsaWFu 22756 +IGNoYXJtaW5n 22757 +IGVzYXM= 22758 +IHN1c3RhaW5lZA== 22759 +IGxlYW5pbmc= 22760 +IGFidW5kYW5jZQ== 22761 +w61saWE= 22762 +0LDQu9GM0L3Ri9C5 22763 +IHBo4bqjaQ== 22764 +YWNqYQ== 22765 +IOqwmeyVhA== 22766 +YWN0aXY= 22767 +4Liy4Lii 22768 +IDk3 22769 +INC80L7QuQ== 22770 +Y3Jv 22771 +IEphY2tpZQ== 22772 +aXR0ZWVz 22773 +YnJhY2h0 22774 +dWxlbnQ= 22775 +IOygnOs= 22776 +IHBsdWdpbg== 22777 +dmFudGFnZQ== 22778 +cGFydHk= 22779 +IHN1YXM= 22780 +IGFudGU= 22781 +0YPQuw== 22782 +0J3QkA== 22783 +IM+Dz4U= 22784 +IG1ldGg= 22785 +IGVudGh1c2lhc20= 22786 +0Y/RgtGB0Y8= 22787 +7ZmU6w== 22788 +IHN5bnRoZXRpYw== 22789 +IHNlYXNvbmluZw== 22790 +IExvc3Q= 22791 +b25vbXk= 22792 +IFNwYXJr 22793 +IGJ1cmU= 22794 +IGFzc3VyZWQ= 22795 +IGltYWdpbg== 22796 +IGNhcnJv 22797 +U2hh 22798 +xIV0 22799 +0L3Rg9GC0Yw= 22800 +w6F0aWNh 22801 +VFk= 22802 +IGtlcm4= 22803 +IEJyYXppbGlhbg== 22804 +w7A= 22805 +IHN1c3BlbmRlZA== 22806 +IENhcmli 22807 +IGJpemlt 22808 +IE9saXZlcg== 22809 +VG9t 22810 +INC/0LvQsNC9 22811 +IG5vcGU= 22812 +b21ldGhpbmc= 22813 +IGJlaWRlbg== 22814 +0YbQtdC9 22815 +IGZsdWN0 22816 +IM68zr/PhQ== 22817 +IGZhdGhlcnM= 22818 +IEJsYWtl 22819 +IHVwd2FyZA== 22820 +IERhc2g= 22821 +IExpbA== 22822 +IOyImOuPhA== 22823 +IHJldmVsYXRpb24= 22824 +IGVsZXZhdGVk 22825 +IEppYW5n 22826 +TEVE 22827 +IFRob21wc29u 22828 +INC80L7Qs9GD0YI= 22829 +0YHRgtGA0YM= 22830 +aWZpZXJz 22831 +IGNvbWViYWNr 22832 +IGJ1eWVycw== 22833 +6rKw 22834 +IFNhbGVz 22835 +0LjRh9C1 22836 +Y2lvbmVz 22837 +IHdoaXN0bGU= 22838 +IGR1bGw= 22839 +TEVY 22840 +IO2VmOqyoOyKteuLiOuLpA== 22841 +IGNyaW1pbmFscw== 22842 +IGRlc2NlbnQ= 22843 +aXBwbGU= 22844 +bWFzxLE= 22845 +IGZvb2xpc2g= 22846 +INC00YPQvNCw0Y4= 22847 +dGFy 22848 +IG1hbmdv 22849 +IGNob3Jlb2dyYXBoeQ== 22850 +TWF0dA== 22851 +IHRlcnJpdG9y 22852 +IGFjYWJh 22853 +IEVpbnN0ZWlu 22854 +IElCTQ== 22855 +IE1ldGFs 22856 +IENyeXN0YWw= 22857 +IHJhaA== 22858 +IGZvdWw= 22859 +IElzbGFuZHM= 22860 +IGludGFjdA== 22861 +IFJhaWw= 22862 +Ljo= 22863 +IGFjw6E= 22864 +INC/0YDQvtC/ 22865 +0LXRgNC1 22866 +IFdyaXRl 22867 +aGVoZQ== 22868 +IEZP 22869 +IM+Dz4TOtw== 22870 +IGRvaW4= 22871 +aGVsZA== 22872 +IGFwcHJvcHJpYXRlbHk= 22873 +IGRlbGliZXJhdGVseQ== 22874 +IGFyY2hpdmU= 22875 +IGdpdmVhd2F5 22876 +IGZpbmFsZQ== 22877 +0LvQsNGB 22878 +0LXQvdC+ 22879 +xqFu 22880 +b2dv 22881 +IEF1ZGllbmNl 22882 +44Wg 22883 +IHN1YnVy 22884 +IGhlYWRhY2hl 22885 +0LDQvdC90Y8= 22886 +IFdpdGNo 22887 +IFN3ZWRpc2g= 22888 +IEJJ 22889 +IGVyYXNl 22890 +IGtoaQ== 22891 +IGNvbW1lbnRhcnk= 22892 +IFN1bHRhbg== 22893 +7YOd 22894 +IExlYmFu 22895 +IOuztOyL 22896 +IFBhbQ== 22897 +cGVrdA== 22898 +bW9udGg= 22899 +IGdyb3VuZGVk 22900 +6r4= 22901 +IMWfZWtpbGRl 22902 +MjUw 22903 +IFNDSA== 22904 +aW9zbw== 22905 +IGluYXVn 22906 +aGVpbWVy 22907 +IHJlZmxlY3Rpbmc= 22908 +IFJ1dGg= 22909 +IE9pbA== 22910 +IHRyb3V2ZXI= 22911 +dWVw 22912 +Li5d 22913 +IOyeiOs= 22914 +IG9saGE= 22915 +IHJlYXNvbmFibHk= 22916 +IGdsaXRjaA== 22917 +VUI= 22918 +IEdyYW4= 22919 +IGFkYWxhaA== 22920 +IGxlbnQ= 22921 +2LHYpw== 22922 +IHRyYWN0aW9u 22923 +IGFkanVzdGluZw== 22924 +tKQ= 22925 +0L3QuNCx0YPQtNGM 22926 +INC00L7Qvw== 22927 +IHN0cmV0Y2hlZA== 22928 +IG9ydA== 22929 +IGNvc2luZQ== 22930 +dmlvbA== 22931 +IOyF 22932 +Y2ly 22933 +IGJhc3RhcmQ= 22934 +INGF0L7QtA== 22935 +IHF1aWVy 22936 +IHByZXNzdXJlcw== 22937 +IEFuaA== 22938 +IGVsbGVz 22939 +INC00YDRg9C3 22940 +INC80L7QttC10YLQtQ== 22941 +IGNo4bs= 22942 +IE3DqQ== 22943 +w7Zr 22944 +4bqndQ== 22945 +7KCI 22946 +emlu 22947 +IGNhdXRpb24= 22948 +aWJhbg== 22949 +IGp1ZGdpbmc= 22950 +0YPRjtGC 22951 +IGJhag== 22952 +INCh0LXQudGH0LDRgQ== 22953 +IFBvb3I= 22954 +IE5hemk= 22955 +IHVwYmVhdA== 22956 +eWFuZw== 22957 +IHdlZWtlbmRz 22958 +IEVzc2VudGlhbGx5 22959 +IG9sdXlvcg== 22960 +IHNwYXRpYWw= 22961 +YWNrZXI= 22962 +IHNlbGxlcg== 22963 +INeQ15XXqg== 22964 +kdec 22965 +IHZpdmlk 22966 +IEJvbmQ= 22967 +6raM 22968 +aXNrdA== 22969 +IGdvYXQ= 22970 +ZHJpdmVy 22971 +IG11Zw== 22972 +aWN0aW9uYWw= 22973 +IGFsbHQ= 22974 +IEluaXRp 22975 +IFJhbmQ= 22976 +IGZpbmlzaGVz 22977 +IOqwiA== 22978 +IHZpdGFt 22979 +IHRlZW5hZ2Vycw== 22980 +IE1vcnJpcw== 22981 +7KSE 22982 +IE9yaQ== 22983 +aXlh 22984 +IG15w7Zz 22985 +U3RlcA== 22986 +IEtyZQ== 22987 +IGRpbm9zYXVy 22988 +IOuqhw== 22989 +YWZmZQ== 22990 +IOuQqeuLiOuLpA== 22991 +IHplZw== 22992 +IE1hbmhhdHRhbg== 22993 +IHN1amV0 22994 +dWVsbGU= 22995 +c3RvZmY= 22996 +IGTDvHI= 22997 +IHN1Ym1hcg== 22998 +ZXNlcw== 22999 +IGFxdWVsZQ== 23000 +IG5vdQ== 23001 +IEZhaXRo 23002 +dHo= 23003 +INGC0L7QvNGD 23004 +YWNldXQ= 23005 +bGllcnM= 23006 +IGJhbmR3aWR0aA== 23007 +xrDhu50= 23008 +IHJlc3BlY3RpdmU= 23009 +IEF2ZQ== 23010 +IHNwcmVhZHNoZQ== 23011 +IFNlbnQ= 23012 +aWNhbWVudGU= 23013 +IGluZnJh 23014 +IGxlYXJuZXJz 23015 +IOCuiQ== 23016 +YWlhaA== 23017 +cmVuYWw= 23018 +IG11c3RhcmQ= 23019 +IGhhYnQ= 23020 +54M= 23021 +IFF1w6k= 23022 +IGFuYWx5emluZw== 23023 +IHNvbGlj 23024 +INeU15XXkA== 23025 +IGNhdXNh 23026 +IHdlbGNvbWVk 23027 +IFN1Y2Nlc3M= 23028 +IGZhY2lsZQ== 23029 +INCf0L7RgtC+0LzRgw== 23030 +c2NoZWlu 23031 +IGZldGNo 23032 +IHN0cmF0 23033 +INGB0YLQvtC40YI= 23034 +7JeQ7ISc64qU 23035 +INGB0L/QvtGB0L7QsQ== 23036 +bWFt 23037 +IHNlcsOtYQ== 23038 +bmFtZW50cw== 23039 +d3JpdGVy 23040 +IGNvbnN1bHRpbmc= 23041 +7ZiA 23042 +IEJlcmtlbGV5 23043 +ZXU= 23044 +YXNpdmU= 23045 +VVU= 23046 +IEFuYWx5dA== 23047 +IHN1Ym1pc3Npb24= 23048 +IG1hZ25pZmljZW50 23049 +ZW56YQ== 23050 +IGVjb24= 23051 +IHByb2ZpbGVz 23052 +IGluY2Fy 23053 +QWI= 23054 +IE51bg== 23055 +IGhpYw== 23056 +c2NyZWFtaW5n 23057 +IHJlc2lsaWVudA== 23058 +Z3J1bmQ= 23059 +IGNvbmN1cg== 23060 +IGJlcmVpdHM= 23061 +TEQ= 23062 +IG51cnQ= 23063 +7Ik= 23064 +IGZlYXN0 23065 +IGVuY3VlbnQ= 23066 +IE1pY2hlbA== 23067 +IHN1cHJlbQ== 23068 +Il0= 23069 +IGZlZWRz 23070 +IEtvbGxlZ2Vu 23071 +aXNzZXI= 23072 +IEZlbmc= 23073 +IFdlbg== 23074 +bXVu 23075 +IHRlbsOtYQ== 23076 +IFdyZXN0 23077 +IOyYpOuKmOydgA== 23078 +IHN0ZWFk 23079 +IHJlc3RvcmF0aW9u 23080 +IGRvbmF0ZWQ= 23081 +IGRlbHM= 23082 +IGNlbnN1cw== 23083 +IGRlc3BlcmF0ZWx5 23084 +d29ydGh5 23085 +SEU= 23086 +IFNwYQ== 23087 +IEJyeWFu 23088 +IGhq 23089 +IFJhdw== 23090 +7JWE6w== 23091 +IENhbWVyYQ== 23092 +IHppZW4= 23093 +IHN0eWw= 23094 +IFRX 23095 +IENoZWVzZQ== 23096 +Ym9ybmU= 23097 +IG9ibA== 23098 +IEFscmVhZHk= 23099 +IHVuc3RhYmxl 23100 +IGZsYW1lcw== 23101 +cG9zdA== 23102 +SGE= 23103 +cm9tYWdu 23104 +IOyXhOuniA== 23105 +ZGVzdA== 23106 +IGtvbGVq 23107 +IHRlbXBvcmFyaWx5 23108 +IGRldGVybWluaW5n 23109 +IEdsYXNz 23110 +0YDQvtC9 23111 +b2xhbg== 23112 +IGRvbWluYXRlZA== 23113 +X19fXw== 23114 +INmH2LDYpw== 23115 +IERhbmE= 23116 +IGRpbmhlaXJv 23117 +YXF1 23118 +66+8 23119 +IMOgcw== 23120 +IEpvZXk= 23121 +IEdyaWZm 23122 +IGF0dGFpbg== 23123 +IHRyYW5zaXRpb25z 23124 +IExpdGVyYWxseQ== 23125 +0LXQvdC0 23126 +IEhhdmVu 23127 +IGdyYWJiaW5n 23128 +IGNyeXN0YWxz 23129 +IEZvdXJ0aA== 23130 +IGNhbmRsZXM= 23131 +INGB0LvRg9GH0LA= 23132 +cmljbw== 23133 +IDUwMDA= 23134 +ZXR0bw== 23135 +IHVuZG8= 23136 +IGt0bw== 23137 +IGRpdmVydA== 23138 +IGNoaXI= 23139 +IHBlcnNlYw== 23140 +IGhpa2luZw== 23141 +IGFubm91bmNlbWVudHM= 23142 +0LfRiw== 23143 +IGF1Yw== 23144 +IHN5c3RlbWlj 23145 +IFJN 23146 +z4POsQ== 23147 +INCU0LY= 23148 +IHlhcg== 23149 +IFdhcmQ= 23150 +IHBpc3NlZA== 23151 +IGNhcm4= 23152 +IGF1dG9ub21vdXM= 23153 +44WO44WO 23154 +c292ZXI= 23155 +IHJlZmxleA== 23156 +IGdhcmRlbnM= 23157 +IGRhdGVk 23158 +7LE= 23159 +YW1pxJk= 23160 +IGNvbnRpbnVpdHk= 23161 +IGNpdGl6ZW5zaGlw 23162 +IHNjaHdlcg== 23163 +IHphaw== 23164 +dGFibGU= 23165 +INGB0Yc= 23166 +IM+DzrU= 23167 +IGdlbmVyYXRlcw== 23168 +6rWs64KY 23169 +w7Zo 23170 +w7Nt 23171 +YWxhbQ== 23172 +IEpVRFk= 23173 +IEJ1Zw== 23174 +IGRyb25lcw== 23175 +IMOhZ3Vh 23176 +YWNha3M= 23177 +5po= 23178 +INCa0L7QvQ== 23179 +15bXlA== 23180 +IHN0cml2ZQ== 23181 +IEFsdGVybg== 23182 +IG5lYXJlc3Q= 23183 +IHByb3llY3Q= 23184 +dGVyYQ== 23185 +IEFTSExFWQ== 23186 +IHdvcm0= 23187 +IHJlcGxheQ== 23188 +IHRhcmE= 23189 +IEluZGlhbnM= 23190 +aWNhaWQ= 23191 +IOyInA== 23192 +IGFwcGVhbGluZw== 23193 +IFdlcw== 23194 +IG1lbnRpb25z 23195 +INC00LXQu9C1 23196 +IGt3 23197 +IGZyYWdpbGU= 23198 +aXN6 23199 +a8Ozdw== 23200 +aGFuZw== 23201 +Y29sb3I= 23202 +IHByZXNpZGVudGU= 23203 +ODc= 23204 +0LXRhA== 23205 +INC00L7QsdCw0LI= 23206 +IE5lbHNvbg== 23207 +w6FmaWM= 23208 +IE1JQ0hBRUw= 23209 +IG1lY2hhbmlj 23210 +IG1ldHJlcw== 23211 +IG9jenl3acWbY2ll 23212 +IENpbmQ= 23213 +IG9nc8Ol 23214 +IGxhbmRzY2E= 23215 +QUNF 23216 +IGhlYWRsaW5lcw== 23217 +IGNhdGFseXN0 23218 +IENhdGNo 23219 +aW5rbGVz 23220 +IHBpbGxz 23221 +b3Jkbw== 23222 +IGltbWlncmFudA== 23223 +IGV4YW1pbmF0aW9u 23224 +IGFjY2lkZW50cw== 23225 +esSFZA== 23226 +IHF1aWVyZQ== 23227 +IG5lbGxh 23228 +IDY3 23229 +IHBhc3Nh 23230 +IHN1cGVyZmlj 23231 +aXN0b3I= 23232 +IG5vdg== 23233 +64u1 23234 +IG1hbmRhdGU= 23235 +aXNvbnM= 23236 +IFZpcnR1YWw= 23237 +IHNlbGJlcg== 23238 +IGNvdW5zZWxpbmc= 23239 +IE5CQQ== 23240 +IHNlcHQ= 23241 +IGJlbGlldmVy 23242 +IG1hcnZlbA== 23243 +IEludGVncg== 23244 +INC80ZY= 23245 +IG9ycGg= 23246 +IGJhY2t3YXJk 23247 +IEdlbmVyYXRpb24= 23248 +IFBpY3Q= 23249 +INGC0L7Rgg== 23250 +IHRhcGk= 23251 +cHJvY2hlbg== 23252 +IGhhbGx3YXk= 23253 +aHRl 23254 +INuB25I= 23255 +IFp1bQ== 23256 +YWNobWVudA== 23257 +aXF1ZXI= 23258 +Zm9sZw== 23259 +IEVkZGll 23260 +IEtpbA== 23261 +IHdlbGxuZXNz 23262 +c3RvY2s= 23263 +IGthw6c= 23264 +IHRlcnJvcmlzbQ== 23265 +IHBvaW50ZXI= 23266 +T2Y= 23267 +aGVyaWM= 23268 +IFVsdGltYXRlbHk= 23269 +IG1lc2Vz 23270 +IFRyYWRl 23271 +IHBpbnQ= 23272 +IHR1aXRpb24= 23273 +IGRpc2FncmU= 23274 +IOqyjOyehA== 23275 +IG1hbnVzY3JpcHQ= 23276 +IHJvb21t 23277 +IG91dHB1dHM= 23278 +0LXRhtC4 23279 +IHJpZXM= 23280 +IHNhbHVk 23281 +b3R6ZGVt 23282 +IG1hc3Nlcw== 23283 +IGJ5xYJh 23284 +IGNsZWFyaW5n 23285 +IGRpc2NvdXJzZQ== 23286 +YXRzb24= 23287 +IGZvbGRlZA== 23288 +IEphcg== 23289 +2YTZiQ== 23290 +OTAw 23291 +INGD0YHQvw== 23292 +IHByb3BoZWN5 23293 +IGludGVyZmVyZQ== 23294 +0LjRhdC+0LQ= 23295 +4LmM 23296 +IHRocmk= 23297 +INee16k= 23298 +IGxhesSxbQ== 23299 +IDE5OTI= 23300 +IGZ1dHVybw== 23301 +IGxvY2tpbmc= 23302 +IGVtYmFyZ28= 23303 +IE5laXRoZXI= 23304 +aXZhbWVudGU= 23305 +IG3DpXN0ZQ== 23306 +IG1paw== 23307 +IGNvbGxlY3Rvcg== 23308 +0LXQutC+0YLQvtGA 23309 +IEdhbmQ= 23310 +IHNlbnRpcg== 23311 +IE1pZ2h0 23312 +IGdhbnplbg== 23313 +VUM= 23314 +IHJlbGF0aW5n 23315 +U0Q= 23316 +IG1vc3F1aXRv 23317 +R1I= 23318 +IGhvbGxvdw== 23319 +4piF 23320 +IFdhbGtlcg== 23321 +IGFmZmlsaWF0ZQ== 23322 +IGR1cGxpY2F0ZQ== 23323 +0L3QtdC8 23324 +IGdyYXBl 23325 +IE9yZ2FuaXphdGlvbg== 23326 +IHN5bnQ= 23327 +Sm9l 23328 +IGdlZw== 23329 +IHJldmVhbGluZw== 23330 +IEV0aGFu 23331 +b3V0ZXI= 23332 +IHlheQ== 23333 +0LvQsNGA 23334 +IHJlcG9ydGVkbHk= 23335 +IGlocmVy 23336 +IHJlY29nbmlzZQ== 23337 +IGJ1bXBlcg== 23338 +IFJhbmR5 23339 +IFZlbnVz 23340 +dGxlcw== 23341 +IGFwcGV0aXRl 23342 +IGdsdWNvc2U= 23343 +IGNob2R6aQ== 23344 +IEZ1cnRoZXJtb3Jl 23345 +dGly 23346 +IGNvbnRh 23347 +IGludHVpdGlvbg== 23348 +IGFsdGl0dWRl 23349 +IGNodW5rcw== 23350 +IEpvc2h1YQ== 23351 +xLHEn8SxbQ== 23352 +cnlsaWM= 23353 +bGVhbnM= 23354 +IO2UvOs= 23355 +TEw= 23356 +UXVl 23357 +IGdvcg== 23358 +INC30L3QsNGH0LjRgg== 23359 +IHBvZW1z 23360 +IGV4Y2Vs 23361 +IGV4cGxvcmVk 23362 +IHBvcHVs 23363 +IGluY2x1c28= 23364 +c3TDpA== 23365 +IEdhdmlu 23366 +YWxsaW5n 23367 +IM+Ezr/OvQ== 23368 +6ak= 23369 +YXJiZWl0 23370 +IEdhcw== 23371 +IGdsb3Jpb3Vz 23372 +cmllYmVu 23373 +IHNwYW0= 23374 +IGluZG9vcg== 23375 +IHRocnVzdA== 23376 +IEFsZA== 23377 +IFByaW9y 23378 +IG9uYm9hcmQ= 23379 +b2Nh 23380 +QVNI 23381 +o6A= 23382 +IENocmlzdGluZQ== 23383 +IGRyYXdlcg== 23384 +IG5vb24= 23385 +IOyemOs= 23386 +IHBlcm1hbmVudGx5 23387 +INC90LDQv9GA0LjQvNC10YA= 23388 +IHBvZGNhc3Rz 23389 +ZXJhcGV1dA== 23390 +cHJpdA== 23391 +IHN0YWlubGVzcw== 23392 +INqp25I= 23393 +IGZhbWlsaWE= 23394 +INGA0LDQt9GA 23395 +dW50bw== 23396 +INGB0YLQvtC7 23397 +IGjDpA== 23398 +IEhhaQ== 23399 +IFBC 23400 +aXpvbg== 23401 +IGtvbm50ZQ== 23402 +IGLDvHnDvGs= 23403 +IHV0aWxpemFy 23404 +2oY= 23405 +IGFxdWVzdGE= 23406 +IG1peGVy 23407 +dWRlbnQ= 23408 +0LvQtdC60YE= 23409 +xYJ1 23410 +INGB0LjRgdGC0LXQvA== 23411 +INC90L7RgNC8 23412 +IGZhdGFs 23413 +IGNvbnNpZGVyYXRpb25z 23414 +IHZhbGlkYXRpb24= 23415 +IG9saQ== 23416 +IGthcmRlxZ8= 23417 +IEdMT1JJQQ== 23418 +IHBhbGw= 23419 +0LXRgdGC0LU= 23420 +IHJlY3Rhbmc= 23421 +IG1lZGlldmFs 23422 +YWxsYWhp 23423 +YXN0aQ== 23424 +IFN5cmlhbg== 23425 +IHNoZWFy 23426 +IGRlYnVn 23427 +IE1haQ== 23428 +IGtub2NraW5n 23429 +IExleA== 23430 +YXJkYW4= 23431 +cm92 23432 +IG1lbW9yaWFs 23433 +b29reQ== 23434 +IHN0dWZmZWQ= 23435 +IHBhc3PDqQ== 23436 +IHdpZw== 23437 +gqA= 23438 +IHByw7N4aW1h 23439 +IDE5OTE= 23440 +INC80LXQttC00YM= 23441 +IG51ZXN0cm9z 23442 +IEJlYXN0 23443 +IHNtbw== 23444 +YXRjaGVk 23445 +b2xvZ2lh 23446 +INC80L7QtA== 23447 +IGdlZQ== 23448 +IGNvbmNlcHR1YWw= 23449 +IMO0 23450 +IGRlY3JlYXNlcw== 23451 +IHF1ZXJpZXM= 23452 +0L7Qu9GM0Yg= 23453 +IEFwYXJ0 23454 +IGV4ZW1wbA== 23455 +IGZsZWQ= 23456 +IE9GRg== 23457 +Z2dhaw== 23458 +IGJlYWQ= 23459 +aGly 23460 +bGllcw== 23461 +IENsZWFybHk= 23462 +xLFsYXI= 23463 +IGNoZXNz 23464 +IHdoaWNoZXZlcg== 23465 +IDk2 23466 +4bqx 23467 +IHJlc3BlY3Rz 23468 +INC80L7RgA== 23469 +IG9yZ2FuaXNt 23470 +IGdyYW5kcGE= 23471 +IFZpZQ== 23472 +IGZsb29kaW5n 23473 +IHVwZ3JhZGVk 23474 +0ZHRgA== 23475 +IGNoZWVrcw== 23476 +IGNvbnF1ZXI= 23477 +IHN0dWJib3Ju 23478 +IHB1enpsZXM= 23479 +IGF1Y3Rpb24= 23480 +IHJlbHlpbmc= 23481 +IFBST0Y= 23482 +IEVzcGVy 23483 +INCc0KM= 23484 +IGh5cGU= 23485 +IHBvc3NpYmls 23486 +IGltcHJpc29u 23487 +IEVybg== 23488 +7JeI7Iq164uI64uk 23489 +IGVudmll 23490 +IHJlc3VycmVjdGlvbg== 23491 +IHNwZXI= 23492 +IFZlbmV6dWVsYQ== 23493 +c29t 23494 +IOyeoOq5 23495 +IG5vdXZlbGxl 23496 +IGNsb3Nlcw== 23497 +IDE5NDA= 23498 +IHF1YQ== 23499 +IEphcmVk 23500 +IFBpcg== 23501 +IGluZGU= 23502 +IHNjcnVi 23503 +dWt1 23504 +IHJlcXVpcmluZw== 23505 +INCy0LDQvNC4 23506 +IGNvbnNpZGVyYWJsZQ== 23507 +aWxpYQ== 23508 +IGlubmU= 23509 +IG1laW5lbQ== 23510 +IGhhcmRzaGlw 23511 +IHRyYXBz 23512 +cm9j 23513 +IOyEpOs= 23514 +IHJlc2VhcmNoaW5n 23515 +IE1hcmdhcmV0 23516 +IHBlbm55 23517 +IGLEsXJhaw== 23518 +0ZHQuw== 23519 +IHdvb2w= 23520 +IHJoZXQ= 23521 +IGZsYXR0ZW4= 23522 +54c= 23523 +4LmA4Lij 23524 +IHBpZWQ= 23525 +IENoYXA= 23526 +IHVuZGVybQ== 23527 +IGZyZXQ= 23528 +IGNyYXNoZWQ= 23529 +IEZyYXVlbg== 23530 +2LDZhw== 23531 +aXZhbg== 23532 +IGxpdGVyYXJ5 23533 +bGF0ZWdv 23534 +IHNww6R0ZXI= 23535 +IHNpbWlsYXJpdGllcw== 23536 +4oY= 23537 +IENvcm9u 23538 +IENyZWVr 23539 +IGJvc3Nlcw== 23540 +IGFjY29tcGFuaWVk 23541 +IGRlYmF0ZXM= 23542 +IGFzc2VtYmxlZA== 23543 +IMOB 23544 +IFZhaQ== 23545 +IHRyYWN0 23546 +IHNpbXBsZW1lbnQ= 23547 +IEFyaW4= 23548 +IHZ1bG5lcmFiaWxpdHk= 23549 +IGhvcm1vbmU= 23550 +SUVM 23551 +T09L 23552 +IHJlbGF5 23553 +IEFuZHJlYQ== 23554 +cmls 23555 +IG5lY2Vzc2l0eQ== 23556 +YWNldXRpY2Fs 23557 +0Y7RiQ== 23558 +b3VzaW5n 23559 +bmFobWVu 23560 +IGZvb3RwcmludA== 23561 +bWFw 23562 +IFRpZXI= 23563 +YW5ueWE= 23564 +aW50ZW5k 23565 +5aI= 23566 +IGRlY29yYXRl 23567 +IHpvbWJpZXM= 23568 +IEh5ZA== 23569 +IFN1eg== 23570 +IGNhbXB1c2Vz 23571 +IEVtYg== 23572 +IHRocm90dGxl 23573 +IGFkbWlu 23574 +IG9wb3J0dW4= 23575 +IG1pcnJvcnM= 23576 +IGlkZW50aXRpZXM= 23577 +IENsaW4= 23578 +IOu5hOs= 23579 +4bmj 23580 +IE90dA== 23581 +IGJsdWVz 23582 +IGltcHJlc3Npb25z 23583 +LSw= 23584 +IHZhZ3Vl 23585 +YWZl 23586 +IGluZmVyaW9y 23587 +ZXJhbGQ= 23588 +IG1lZGljaW5lcw== 23589 +IHByZWd1bnRh 23590 +b3NlbHk= 23591 +IHTDqWzDqQ== 23592 +IE1vbnRo 23593 +IExlYWRlcnM= 23594 +IEVneXB0aWFu 23595 +IHJhdGlvbg== 23596 +a2Vycw== 23597 +aGVpdHM= 23598 +IHJlY2h0 23599 +UGxheQ== 23600 +IGVn 23601 +IHBvbGxz 23602 +IFdPT0RS 23603 +IHNsb3Rz 23604 +amFt 23605 +Qm90aA== 23606 +IFJhdA== 23607 +0YDQsNC2 23608 +IEJyaWdodA== 23609 +4buRaQ== 23610 +dXJpb3Vz 23611 +IHNpbmdlcnM= 23612 +IGxvZ2lu 23613 +IHTDqm0= 23614 +bGF0aW9u 23615 +IE11bQ== 23616 +xrDhu51uZw== 23617 +IEVkaXRvcg== 23618 +IGlubm92YXRpb25z 23619 +aGF2ZQ== 23620 +IFNlaw== 23621 +IHdlYWtlcg== 23622 +IEdvYg== 23623 +QWZ0ZXI= 23624 +tOyngA== 23625 +IOusuOygnA== 23626 +IGRpc2FkdmFudGFnZQ== 23627 +IGdhemU= 23628 +IE1hY2s= 23629 +z4HOrw== 23630 +IEtpc3M= 23631 +IEhvbG8= 23632 +IEJpcnRo 23633 +aXpp 23634 +YmFi 23635 +7Iuc6rOg 23636 +0LTQtdGA0LY= 23637 +IHNxdWF0 23638 +0LrRg9GB 23639 +dW5p 23640 +IENvbW1l 23641 +IFdPT0RSVUZG 23642 +IENoYW1waW9uc2hpcA== 23643 +IHdlbGNoZQ== 23644 +IFlvdXRo 23645 +emVt 23646 +IG9kcG93 23647 +IHBlcnNpc3RlbnQ= 23648 +cnV0 23649 +7JSp 23650 +7Zal 23651 +bGFpcg== 23652 +aWt1 23653 +IHZlbmRvcg== 23654 +IGNow7puZw== 23655 +IGZpbmFuY2k= 23656 +IG92ZXJseQ== 23657 +w6J1 23658 +IGdsdXRlbg== 23659 +IDE4MDA= 23660 +IGRpdmlzaW9ucw== 23661 +IGNpdWRhZA== 23662 +IG9iZWQ= 23663 +IHdhcnVt 23664 +IGVoZXI= 23665 +IGVsaW0= 23666 +INCS0L4= 23667 +IHBldXZlbnQ= 23668 +IFdhbm5h 23669 +IGF0dGVuZGFuY2U= 23670 +IGFzc2Vzc21lbnRz 23671 +IEJvZw== 23672 +IGltYWdlcnk= 23673 +IGNvbGxlY3RpdmVseQ== 23674 +IGluZm9ybWFs 23675 +IFNjaHdl 23676 +IGRldXRsaWNo 23677 +IENoZWw= 23678 +IFBF 23679 +b3dlZA== 23680 +IGJhbm5lcg== 23681 +IHNoZWx2ZXM= 23682 +IFJldHVybg== 23683 +TEFVR0hT 23684 +IGNvbmdyYXR1bGF0ZQ== 23685 +IE5vcndheQ== 23686 +IGR3ZWxs 23687 +IENhcmliYmVhbg== 23688 +IG5vcm1z 23689 +IEFuaW1hbA== 23690 +IFZhbGVudGluZQ== 23691 +IGV4dGVuZGluZw== 23692 +IFZvdQ== 23693 +b3Jy 23694 +IENoZW5n 23695 +wqE= 23696 +INC00L7RgNC+0LM= 23697 +IHZlZw== 23698 +IGjDpQ== 23699 +IFhpbg== 23700 +IOy5tOs= 23701 +ZW1ldA== 23702 +IGh5cG90aA== 23703 +IGludGVyZXNzYW50ZQ== 23704 +cmljZXM= 23705 +SVo= 23706 +IFVTRA== 23707 +IHJ1bm5lcg== 23708 +IEJhZw== 23709 +IOq9 23710 +IGNvbWXDp2Fy 23711 +IHBpZ3M= 23712 +IHdlYWtuZXNzZXM= 23713 +UGg= 23714 +IFZpb2w= 23715 +IGRyYWdnaW5n 23716 +IEFxdcOt 23717 +IENTUw== 23718 +IG1pbGxpbWV0ZXJz 23719 +IGVzdMOhcw== 23720 +IGFjdXRl 23721 +IGRlamFy 23722 +acSf 23723 +b2JyYQ== 23724 +TG92ZQ== 23725 +IHNpbGs= 23726 +KioqKg== 23727 +IGpvaW5z 23728 +IHByb2w= 23729 +IOqwkOyCrO2VqeuLiOuLpA== 23730 +2K3Yrw== 23731 +YWdoZXR0aQ== 23732 +w6RubmVy 23733 +IHN0cmFuZw== 23734 +IGRvdWJsZWQ= 23735 +IGRlc2NyaXB0aW9ucw== 23736 +IHN0ZWxsZW4= 23737 +IHBhcnRp 23738 +soTr 23739 +IMO2xJ8= 23740 +aWdoaW5n 23741 +IGFuZ3VsYXI= 23742 +IG5hdHV1cg== 23743 +IFNoZWw= 23744 +xrDGoQ== 23745 +IHJheXM= 23746 +IHNlcGVy 23747 +c3RhcnQ= 23748 +dmlzZWQ= 23749 +IHJ1c2hlZA== 23750 +IGludGVybmF0aW9uYWxseQ== 23751 +IG5pdmVs 23752 +IGJveGluZw== 23753 +ZmFsbGVu 23754 +4buRYw== 23755 +IHNlaW5lbg== 23756 +cGxpY2l0eQ== 23757 +IGNhcmJvaA== 23758 +IFRyYXZpcw== 23759 +dXNv 23760 +IFBoYXNl 23761 +IGFjdGl2YXRpb24= 23762 +IG9waW8= 23763 +t6g= 23764 +IGRlY3JlYXNlZA== 23765 +Q2Fy 23766 +IGJ1bmRsZQ== 23767 +IGV4cGVuZA== 23768 +b3JtYWw= 23769 +IGFkamFjZW50 23770 +IG1lZQ== 23771 +INC+0YDQsw== 23772 +IHRyYW5zY3JpcHQ= 23773 +IExhbmd1YWdl 23774 +R1M= 23775 +IHNldWw= 23776 +w6BuaA== 23777 +IG55YQ== 23778 +bmluZ3M= 23779 +IOyLnOs= 23780 +IOuUsOudvA== 23781 +IEFncg== 23782 +w61k 23783 +IGFieQ== 23784 +IE5lbw== 23785 +xLF5b3J1eg== 23786 +IFRoaW5raW5n 23787 +YWltZQ== 23788 +IHZpdGU= 23789 +IHRyYXbDqXM= 23790 +INeR16I= 23791 +INC80LXQtA== 23792 +T3Vy 23793 +aG9vdA== 23794 +IGxpbmVy 23795 +IFBpenph 23796 +IGh5Zw== 23797 +ZmxpZXM= 23798 +IENvbnRpbnVl 23799 +IGRlbnRhbA== 23800 +IFRpYg== 23801 +IHJlZ3VsYXRl 23802 +bGllw58= 23803 +QUxL 23804 +IFRhZQ== 23805 +6ri4 23806 +IEJyZXhpdA== 23807 +IEd1dA== 23808 +IG9jY3VwYXRpb24= 23809 +IHpyb2Jp 23810 +w6Jt 23811 +IHdoaXNr 23812 +IGthbnNrZQ== 23813 +b21vbg== 23814 +cm9iZQ== 23815 +IHdhcmZhcmU= 23816 +IHRo4buD 23817 +IGpha2k= 23818 +IHN0cm9rZXM= 23819 +IHBlYXM= 23820 +IERhbWl0 23821 +SEFO 23822 +IGludGVyZmVyZW5jZQ== 23823 +INC80LjQvdGD0YI= 23824 +TkVS 23825 +b3V0aW5n 23826 +IHRleHR1cmVz 23827 +n4k= 23828 +b3dp 23829 +IO2VmQ== 23830 +IGRlbnM= 23831 +IHByb3RhZ29uaXN0 23832 +w6Rubg== 23833 +IGdvZGRlc3M= 23834 +IHdvbGx0ZQ== 23835 +aWpv 23836 +IFdvY2hl 23837 +IFZQTg== 23838 +c3Rvcnk= 23839 +IGtpbmRlcmc= 23840 +IGZ1bm5lbA== 23841 +IGRpc3RyZXNz 23842 +0L3QvtGB0YLRjNGO 23843 +IG5vaXN5 23844 +INC/0YDQvtC00L7Qu9C2 23845 +IGRhcmFu 23846 +IGVuenltZQ== 23847 +0LvQvtC2 23848 +IG11dGU= 23849 +IGR3YXI= 23850 +INin2LM= 23851 +IGtvbXBs 23852 +IG1lcml0 23853 +IGZvc3Nl 23854 +IERyaW5r 23855 +IGZvcmE= 23856 +IHdvaGw= 23857 +IGJyZWV6ZQ== 23858 +IHNhbml0 23859 +IGRyaW4= 23860 +IOydtOqxsOuKlA== 23861 +IDYy 23862 +IOywqOs= 23863 +YWJ5dGVz 23864 +IGRlZWRz 23865 +INC5 23866 +acOobWU= 23867 +aWdnbGluZw== 23868 +ICIn 23869 +INGH0LDRgdGC0Yw= 23870 +IEFuc3dlcg== 23871 +IGV2YW5nZWw= 23872 +IDEwODA= 23873 +IFZpc2l0 23874 +aWNpZW50 23875 +IHJlbGlhYmlsaXR5 23876 +0Y7RgdGM 23877 +IEVhcmxpZXI= 23878 +IGZpZA== 23879 +IHNsZWV2ZXM= 23880 +aXlvcnN1bg== 23881 +IGJpYg== 23882 +IEFjY291bnQ= 23883 +0Y/Qu9C4 23884 +Y2lwbGluYXJ5 23885 +emFz 23886 +INCx0LXRgA== 23887 +IG5lY2tsYWNl 23888 +IGJsZW5kZXI= 23889 +IFBoaWxsaXBz 23890 +ZXRp 23891 +IEp1cGl0ZXI= 23892 +IHByb3ZvYw== 23893 +IFllYXJz 23894 +ZW50cmU= 23895 +YWNpbw== 23896 +IGvDvA== 23897 +IGFudGVubmE= 23898 +IG5vdmVscw== 23899 +IGZhcnQ= 23900 +IFN1Z2Fy 23901 +IEp1ZHk= 23902 +IGNvbGxhcHNlZA== 23903 +57A= 23904 +cml0aXM= 23905 +IOyDge2ZqQ== 23906 +0JfQqw== 23907 +IFZlcmY= 23908 +cmFuZWFu 23909 +ZXJldW0= 23910 +IFRhcmdldA== 23911 +IDg4 23912 +INCY0Lc= 23913 +aWRlbw== 23914 +IHJlZ3Jlc3Npb24= 23915 +7Lac 23916 +IG3Ds3dp 23917 +IHN0dWRpb3M= 23918 +aWVucw== 23919 +aXBo 23920 +IGZyeWluZw== 23921 +IGZhc2NpbmF0ZWQ= 23922 +IFdhaA== 23923 +YnVja3M= 23924 +bWF5YQ== 23925 +IFNhdHVybg== 23926 +IE1vbW15 23927 +IHJhdGluZ3M= 23928 +IGF1dHVtbg== 23929 +xrDGoW5n 23930 +IGxvc2Vy 23931 +IGNlbnRybw== 23932 +w6lyaWV1cg== 23933 +IEZvbGQ= 23934 +IHN1cGVydmlzb3I= 23935 +IE5vYmVs 23936 +IHVuZGVyZXN0 23937 +b2JpYQ== 23938 +INCy0YHRjw== 23939 +IHZlcnc= 23940 +IGZ1ZWxz 23941 +IGFydGlmYWN0cw== 23942 +IOu2mQ== 23943 +IEF1dG9t 23944 +25Q= 23945 +15XXoQ== 23946 +IGlobmVu 23947 +IDU5 23948 +b3VuZGluZw== 23949 +0LXRgNGL 23950 +aW5hcnM= 23951 +Y2hhbnQ= 23952 +IGFkZGljdGVk 23953 +IGV4cGxvc2l2ZQ== 23954 +IGRpc3BlcnM= 23955 +4paI 23956 +YXhpcw== 23957 +QVJZ 23958 +IGx1bQ== 23959 +INGD0YHQuw== 23960 +INiM 23961 +IHJ1cGVlcw== 23962 +IFBlYXJs 23963 +Y2FtcA== 23964 +dHY= 23965 +b3lh 23966 +IGNvbmNsdWRlcw== 23967 +IGNvbGxpc2lvbg== 23968 +IGJ1eWVy 23969 +IHBsYXlncm91bmQ= 23970 +IHNwcmluZ3M= 23971 +IGZlbWluaW5l 23972 +IFJhcw== 23973 +IGluY2FyY2Vy 23974 +7ZeY 23975 +IGRpYWxlY3Q= 23976 +IGNsb3N1cmU= 23977 +IGNoYXR0aW5n 23978 +IGJhYmU= 23979 +IHNwb3RsaWdodA== 23980 +IG5vdGF0aW9u 23981 +U3Rhcg== 23982 +acOjbw== 23983 +IHTDqnRl 23984 +IHRpZGU= 23985 +IGp1bnRv 23986 +IHNlbmF0b3I= 23987 +0KU= 23988 +IGV4Y3VzZXM= 23989 +IGJsaW5r 23990 +IGFkbWlzc2lvbg== 23991 +IExpbHk= 23992 +0YvQvNC4 23993 +IGFtaWdv 23994 +IGx1c3Q= 23995 +64us 23996 +IGFtaW5v 23997 +IGNvbnN1bHRhbnQ= 23998 +IEVsZWN0cmlj 23999 +IOuFuOuemA== 24000 +dWphaA== 24001 +IHNob290ZXI= 24002 +aWNodGVu 24003 +IFVrcmFpbmlhbg== 24004 +IGFpbXM= 24005 +IEVudGVydGFpbg== 24006 +IG1pcmFjbGVz 24007 +IHplaWdlbg== 24008 +IGxhbQ== 24009 +IHJlc3M= 24010 +IEppbGw= 24011 +eWxhbg== 24012 +IHJvb2s= 24013 +IGhheWE= 24014 +IHBhc3Nwb3J0 24015 +YWRhdGE= 24016 +IGp1aWN5 24017 +Y29uZg== 24018 +0LvQtdC5 24019 +IFN6 24020 +IGludGVyY2VwdA== 24021 +IFRlYW1z 24022 +IG1ha2Vu 24023 +aXJyZWw= 24024 +IExJS0U= 24025 +4bqteQ== 24026 +6rWw 24027 +IHNob3J0YWdl 24028 +IHBhcmFkaWdt 24029 +IHBhcGVs 24030 +IGFzdGVybw== 24031 +IHNvbGxlbg== 24032 +IE1pY2tleQ== 24033 +IE9ybGVhbnM= 24034 +IGNob2xlc3Rlcm9s 24035 +IGdvb3Nl 24036 +0YbQuNGO 24037 +IEZM 24038 +INCz0L7Qu9C+0LI= 24039 +IHRyaWJ1dGU= 24040 +IEdhbQ== 24041 +IMOpdmlkZW1tZW50 24042 +0Y/RhQ== 24043 +IGluYXBwcm9wcmk= 24044 +dWhhbg== 24045 +IG9yZ2FuaXphdGlvbmFs 24046 +YWlsZWQ= 24047 +IGVuZHVyZQ== 24048 +IDc2 24049 +IHNob3RndW4= 24050 +IGxpdnJl 24051 +IHN1aXRlZA== 24052 +IHdhcm10aA== 24053 +IFNJTQ== 24054 +IGVudmlzaW9u 24055 +IGRlZ3JhZA== 24056 +w65uZQ== 24057 +TGF1Z2hpbmc= 24058 +IFdob2V2ZXI= 24059 +IEJ1ZGRoaXNt 24060 +IHNwcmlua2xl 24061 +Y2XEn2l6 24062 +IHJ1aW5z 24063 +IHN0YXJjaA== 24064 +IEhlcno= 24065 +IGluanVzdGljZQ== 24066 +IGh1bWlkaXR5 24067 +0L7QttCw0LvRg9C5 24068 +IE9iamVjdA== 24069 +IElnbg== 24070 +IEV4YW0= 24071 +aWdlcnM= 24072 +IHRob3U= 24073 +IFNveQ== 24074 +aXZhcw== 24075 +IHBvbGVz 24076 +bWF0aA== 24077 +INCy0L3QuNC8 24078 +SU5HSU5H 24079 +ZWRyYWw= 24080 +IGV4cGxvcg== 24081 +IHJvYXN0ZWQ= 24082 +IGNyYXds 24083 +IGNvZmY= 24084 +IGFub20= 24085 +IHdpag== 24086 +IGltcHJvdmVz 24087 +IHRyZWF0eQ== 24088 +IGRpc2NvdmVyaW5n 24089 +IHN0YXR1dGU= 24090 +IG1lcmNhZG8= 24091 +INGB0LjQuw== 24092 +IGludGVs 24093 +IENoYW5jZWxsb3I= 24094 +IE1lZGljYWlk 24095 +dWdp 24096 +IHZlcmJhbA== 24097 +IGTDtm4= 24098 +IHNjcmlwdHVyZQ== 24099 +IGl0ZXJhdGlvbg== 24100 +ZWtz 24101 +IE94Zm9yZA== 24102 +IHfDpGg= 24103 +IFZhZA== 24104 +IEFL 24105 +IOyVhOydtOs= 24106 +IGlldHM= 24107 +IG5lZWRsZXM= 24108 +2YPZhQ== 24109 +IHBhc2Fkbw== 24110 +IGFsYnVtcw== 24111 +IHllYQ== 24112 +ZXR6ZW4= 24113 +hOuPhA== 24114 +IGRldGVybWluZXM= 24115 +IHRoZWU= 24116 +IFBsYXlpbmc= 24117 +w6RydA== 24118 +INem 24119 +Y2xlZA== 24120 +IGRvd253YXJk 24121 +YWxvbmU= 24122 +IHNvbHU= 24123 +IHBhcnRpdGlvbg== 24124 +IHd6 24125 +ZGQ= 24126 +IHBlc3NvYWw= 24127 +IGZhY3Rvcmllcw== 24128 +IGJsZWlidA== 24129 +4Lih4Liy 24130 +YWxzYQ== 24131 +IE5GTA== 24132 +IGZ1ZXJh 24133 +IHJlc2VydmVk 24134 +IEVhcm4= 24135 +IGhlbHQ= 24136 +IHNob3J0Y3V0 24137 +IGNvbnZpbmNpbmc= 24138 +c3BhY2U= 24139 +IGVuZm9yY2U= 24140 +IGNvcmVz 24141 +IGVmdGVy 24142 +IHJlY2Vzc2lvbg== 24143 +eGljbw== 24144 +IHByb3Bvc2l0aW9u 24145 +YXJpYW5z 24146 +cm9wb2w= 24147 +IOuqsOs= 24148 +IM6c 24149 +IOyalOymmA== 24150 +IGFjdGl2aXN0 24151 +IGNvbnZpY3Rpb24= 24152 +IHphYg== 24153 +IGNhbmNlbGVk 24154 +0YLQvtGH0L3Qvg== 24155 +IM6u 24156 +bml0ZQ== 24157 +IGZ1bmRyYQ== 24158 +YnV6emVy 24159 +0LXQu9C+ 24160 +aWNhdGlvbnM= 24161 +IHpvbmE= 24162 +IHRlZW5z 24163 +IG1ldGhvZG9sb2d5 24164 +IOykkeyalA== 24165 +dGhhbg== 24166 +IFVs 24167 +IEdyZXk= 24168 +IGhvZw== 24169 +SU5L 24170 +IFN1bmc= 24171 +IENsYXVk 24172 +IENOTg== 24173 +IGRlbGl2ZXJz 24174 +YWxpbg== 24175 +IEFkb2Jl 24176 +b3RoZQ== 24177 +IERlc3dlZ2Vu 24178 +4Liz 24179 +IHdlcmRl 24180 +IGdyZWFzZQ== 24181 +IHVwZ3JhZGVz 24182 +IEZpbmxhbmQ= 24183 +YWNjZXB0 24184 +IGludGVycm9n 24185 +YmVl 24186 +IHByZWRl 24187 +IE5lcA== 24188 +IENhbWJyaWRnZQ== 24189 +IGdyYXBocw== 24190 +IGhhdW50ZWQ= 24191 +0YHQtdC8 24192 +5qc= 24193 +U29tZQ== 24194 +IE1hbGw= 24195 +IHJlaGVhcnNhbA== 24196 +IFVyYmFu 24197 +IExhZw== 24198 +IG5pbQ== 24199 +6rCV 24200 +IHBvc2l0aW9uZWQ= 24201 +IGF2b2lkZWQ= 24202 +RU1B 24203 +IGxsZWdhcg== 24204 +IHLDoXBpZG8= 24205 +IGdvdXZlcm4= 24206 +IGhpbmc= 24207 +IGRlYWxlcg== 24208 +IHJlZm9ybXM= 24209 +IGZhdHR5 24210 +0LrQvtC7 24211 +IEFjZQ== 24212 +IG5lcA== 24213 +IOyyrQ== 24214 +IGNvbXB1dGF0aW9u 24215 +IFN0cmVhbQ== 24216 +Ym91cm5l 24217 +dHVy 24218 +UG9y 24219 +IHNsZWVweQ== 24220 +IGJhbmdldA== 24221 +IHdlaWdocw== 24222 +IGJsZWliZW4= 24223 +IEdyZW4= 24224 +IHVuaW9ucw== 24225 +IOq1kA== 24226 +IGFwcmVuZGVy 24227 +dWl0YXI= 24228 +IEplc3Q= 24229 +dW1pbmc= 24230 +IFBsYXllcg== 24231 +IEV4dHJlbQ== 24232 +IGludGVnZXI= 24233 +0LDRh9C1 24234 +IGNvbmNlcnRz 24235 +15XXmw== 24236 +IHRyb2NoxJk= 24237 +IFJlcGU= 24238 +4LmC 24239 +xbxlbg== 24240 +IHNvdW5kaW5n 24241 +IGFub255bW91cw== 24242 +IGV4Y2E= 24243 +IElyYW5pYW4= 24244 +IGVuZXJnZXRpYw== 24245 +IHdpdmVz 24246 +INGG0LLQtdGC 24247 +IGFpcw== 24248 +IHN1ZGFo 24249 +IHVuZGVyd2Vhcg== 24250 +IGNydW5jaHk= 24251 +IFBhaW4= 24252 +IGdlcsOnZWs= 24253 +cmVkaWN0 24254 +IG1pc21h 24255 +0ZbRgg== 24256 +IHN1cnZpdmluZw== 24257 +zq3Pgg== 24258 +IHBhcnRpY2lwYW50 24259 +IEhlc3Nlbg== 24260 +w6FyaWFz 24261 +IHN1YndheQ== 24262 +aXN0w6Q= 24263 +IGNvcmFs 24264 +IG1hcmlqdWFuYQ== 24265 +IE1lbW9yaWFs 24266 +0YjQuNC5 24267 +cml6 24268 +IHNhdGVsbGl0ZXM= 24269 +IGxlYXNl 24270 +IENhbWVyb24= 24271 +dW1waA== 24272 +IGNsYXNzbWF0ZXM= 24273 +w6Row6Ru 24274 +0YHRgtCy0LU= 24275 +IGh1ZQ== 24276 +k6TsnYQ= 24277 +IHByb3BvcnRpb25hbA== 24278 +IG5vc3M= 24279 +IGxhcHM= 24280 +csOl 24281 +IGJpdGNvaW4= 24282 +0JfQq9Ca0JA= 24283 +IOy2qQ== 24284 +INmE2YQ= 24285 +IE1vcnQ= 24286 +IEVzcA== 24287 +YXJub3M= 24288 +INGB0LrQsNC30LDQuw== 24289 +IMOkbmQ= 24290 +15nXmded 24291 +IEdlYg== 24292 +Z2VoZW4= 24293 +SW5hdWRpYmxl 24294 +Ym9yb3VnaA== 24295 +0YTRhA== 24296 +IGZlbGxvd3NoaXA= 24297 +IFBhcGVy 24298 +IGN1cnZlZA== 24299 +IEdFT1I= 24300 +IGNhbGN1bGF0b3I= 24301 +IENhdGFs 24302 +IHbDoG8= 24303 +IGJ5cGFzcw== 24304 +0LvQtdGC 24305 +4LM= 24306 +dHJhbnM= 24307 +cmVuY2llcw== 24308 +7KGM 24309 +aWdlbnQ= 24310 +IHRhc3RlZA== 24311 +IG9jZWFucw== 24312 +dWZ0 24313 +ZXJ2aWNl 24314 +INCc0KPQl9Cr0JrQkA== 24315 +IENsYXNzaWM= 24316 +IHJlc3BlY3RpdmVseQ== 24317 +fik= 24318 +w650cmU= 24319 +IE5hc2g= 24320 +IHppdA== 24321 +IOybgw== 24322 +IOuGkg== 24323 +cXVvdGU= 24324 +IFVucw== 24325 +IHRhYw== 24326 +IHByb3Zlcw== 24327 +IFBvcnRsYW5k 24328 +Ymx5 24329 +IGVyZQ== 24330 +7LaU 24331 +IMOpcG9jYQ== 24332 +INGC0YvRgdGP0Yc= 24333 +NzY= 24334 +IGhhZGU= 24335 +IEZybw== 24336 +IHBvbMOtdGljYQ== 24337 +dGFn 24338 +IO2VrQ== 24339 +IHNjaMO2 24340 +YXJldHQ= 24341 +IHByb3Zpc2lvbnM= 24342 +IG1vdG9ycw== 24343 +IGltYWdpbmc= 24344 +IGRvaw== 24345 +dWxvdXNseQ== 24346 +IG1laWxsZQ== 24347 +65A= 24348 +IElTTw== 24349 +IFNURU0= 24350 +IEJvd2w= 24351 +IHRvd2Vycw== 24352 +IEVl 24353 +IFBlcmZvcm1hbmNl 24354 +IGxvaW4= 24355 +Y3Vzc2lvbg== 24356 +IGNvYXN0YWw= 24357 +aWFsZQ== 24358 +Y29tcGFzcw== 24359 +IHNwZWxscw== 24360 +IGRpc2FwcG9pbnRpbmc= 24361 +IOuyiOynuA== 24362 +RUVS 24363 +IHZlcnNhdGlsZQ== 24364 +YXN1cnk= 24365 +IGVuZmlu 24366 +IGRvd25zaWRl 24367 +IGd1aWRpbmc= 24368 +INin2YTZgg== 24369 +IG5pbmV0eQ== 24370 +Y2hhcmdlZA== 24371 +IEZhbnM= 24372 +IHBoaWxvc29waGljYWw= 24373 +IGdhcm4= 24374 +IG3DpW5nYQ== 24375 +IHdpbGxpbmduZXNz 24376 +IHBvcnRpb25z 24377 +YWJlbg== 24378 +IO8= 24379 +wr8= 24380 +cmF1bA== 24381 +IHNwcmludA== 24382 +aWZlbg== 24383 +xLF5bGE= 24384 +INC60YPQvw== 24385 +IGVuc3VpdGU= 24386 +IENhcGl0b2w= 24387 +IDYz 24388 +INCz0L7QstC+0YDQuNGC 24389 +IGFwcG9pbnRtZW50cw== 24390 +b21pYXN0 24391 +IGNhcmVn 24392 +IHB1Ymxpc2hlcg== 24393 +IGhlcmF1cw== 24394 +IM61zq8= 24395 +IFZT 24396 +IHNhY3JpZmljZXM= 24397 +dGhpcmQ= 24398 +IGh1bWFuaXRhcmlhbg== 24399 +IOuCtOw= 24400 +aW1vbg== 24401 +IGluZXF1 24402 +IHpvYg== 24403 +IGNvbWZvcnRhYmx5 24404 +IERpbmdl 24405 +IGNhbmNlbGxlZA== 24406 +IFBTQUtJ 24407 +IFJvYmluc29u 24408 +IGZpbnM= 24409 +KT8= 24410 +IEhpc3Rvcg== 24411 +INGH0LXQu9C+0LLQtdC60LA= 24412 +IHRic3A= 24413 +dGV4dA== 24414 +a2lt 24415 +IHVwZGF0aW5n 24416 +IGdlbGQ= 24417 +ZmVsZA== 24418 +j7w= 24419 +IG3DpA== 24420 +IGNhZsOp 24421 +1oA= 24422 +IFNyaQ== 24423 +IFJlZ2lvbg== 24424 +IEhhaGFoYQ== 24425 +IGZpbmFuY2Vz 24426 +INin2YTYtA== 24427 +IGJ1bms= 24428 +cnVr 24429 +aGFmdA== 24430 +IGxhdGVyYWw= 24431 +IGV4dGVuc2lvbnM= 24432 +IOyVhOydtA== 24433 +IGRlZmluaXRl 24434 +IFpoYW8= 24435 +IEx1aXM= 24436 +c3R5 24437 +IGNhc29z 24438 +IEtsaW0= 24439 +IDE5OTM= 24440 +IHJlYWxpemF0aW9u 24441 +IGhpc3Rvcmlhbg== 24442 +IGNyYWNrZWQ= 24443 +64K0 24444 +IHN5c3TDqG1l 24445 +IENJQQ== 24446 +INGC0LLQvg== 24447 +b3NwaGVyaWM= 24448 +IGZsZWU= 24449 +IHLhuqV0 24450 +IFJlZ2FyZGxlc3M= 24451 +IHJlbHVjdA== 24452 +IHRpbWVseQ== 24453 +IEp1bGlhbg== 24454 +R00= 24455 +6ZI= 24456 +YWR1cmE= 24457 +IGRyZXNzZXM= 24458 +IOuUlA== 24459 +IG5vbWluYXRlZA== 24460 +IGFkdm9jYXRlcw== 24461 +eW1waA== 24462 +IHJlY29yZGluZ3M= 24463 +IGRldmlhdGlvbg== 24464 +IHByaW9yaXRpemU= 24465 +IHNwaXJhbA== 24466 +IFlPVVI= 24467 +IHRyYW5zcG9zZQ== 24468 +YW1wb28= 24469 +IOybkOuemA== 24470 +IFZpc2lvbg== 24471 +IHBvbGl0ZQ== 24472 +IGhhbWI= 24473 +IFBhdGllbnQ= 24474 +7YGs6w== 24475 +IHNpYQ== 24476 +IOqzsw== 24477 +IMW+ZQ== 24478 +IHN1cGVybWFya2V0 24479 +67k= 24480 +IFNpZXJyYQ== 24481 +IGdyaWxsZWQ= 24482 +IFVwb24= 24483 +IGFic2VudA== 24484 +IG1lYw== 24485 +IEFwb2xsbw== 24486 +IHB1bms= 24487 +IFBhxYRzdA== 24488 +INGB0LLQvtC5 24489 +IOqxsOq4sA== 24490 +R2lybA== 24491 +IHNraW5ueQ== 24492 +IFByZW1pZXI= 24493 +IHRlcnJpdG9yaWVz 24494 +IGxpYWJpbGl0eQ== 24495 +IGplcms= 24496 +cmF0aWM= 24497 +IGRhbmNlcnM= 24498 +INGD0YDQvtCy 24499 +IOq0gOs= 24500 +b25seQ== 24501 +IFN0dQ== 24502 +IHNrZWxldG9u 24503 +IOutkOs= 24504 +INC30LDQutC+0L0= 24505 +xLFrdA== 24506 +IE1JS0U= 24507 +IGzDtg== 24508 +bWll 24509 +IHJlaXRlcg== 24510 +IEtvbGxlZw== 24511 +IEFkYW1z 24512 +bGljaGVy 24513 +IMOnb2N1aw== 24514 +0Y/Qsw== 24515 +IGJsdXNo 24516 +IHN1bnNoaW5l 24517 +IGV6 24518 +IERldmls 24519 +IOq4uA== 24520 +YWRk 24521 +IGxpY2Vuc2Vk 24522 +IHZpbnls 24523 +IEN6ZWNo 24524 +aW1hZw== 24525 +IGNyYWNraW5n 24526 +IOy6 24527 +IHVkYWg= 24528 +IHNvbW1lcw== 24529 +IOyWvOq1 24530 +d2HEhw== 24531 +IGZyZXM= 24532 +IFdhbG1hcnQ= 24533 +INCi0LXQv9C10YDRjA== 24534 +YXRpc2Y= 24535 +Q0k= 24536 +bGFuZw== 24537 +IGRpZmZ1c2lvbg== 24538 +IHNvbW9z 24539 +IE1ha2Vz 24540 +IFJpY2t5 24541 +IG11Y2hh 24542 +7ZWo 24543 +IGhvcnNlcG93ZXI= 24544 +YXNpYQ== 24545 +IGZpYmVycw== 24546 +IGVybQ== 24547 +0YHQutC40LU= 24548 +IGplc3Rl 24549 +IGZpcmVmaWdodA== 24550 +IGN1aXNpbmU= 24551 +IGJlc29uZGVycw== 24552 +ZGln 24553 +IOyihQ== 24554 +INGD0LY= 24555 +IHRyYWNpbmc= 24556 +IGNlcnRhaW5z 24557 +IEFwcGx5 24558 +0YvQstCw0YLRjA== 24559 +54w= 24560 +IGJydQ== 24561 +IFlFUw== 24562 +IEJhaQ== 24563 +IERpdA== 24564 +IEJpcw== 24565 +IHVubGU= 24566 +0YHRgtCw0YLQvtGH0L3Qvg== 24567 +IEF3YWs= 24568 +Li4i 24569 +IDEyNQ== 24570 +IHJvb3RlZA== 24571 +IGNhdXRpb3Vz 24572 +Y29uc3Q= 24573 +IG9yY2hlc3RyYQ== 24574 +INCy0L3Rg9GC 24575 +IHF1ZWxxdQ== 24576 +INC+0YLQstC10YI= 24577 +IE1ldGhvZA== 24578 +7Lmc 24579 +IM68zrHPgg== 24580 +bMO8 24581 +IOyVhOq5jA== 24582 +IG5hbWluZw== 24583 +Q2hhcg== 24584 +IFNpY2hlcg== 24585 +IHByaXZpbGVnZWQ= 24586 +IEZseQ== 24587 +4bqtdA== 24588 +IGFkdmFuY2Vz 24589 +IFplbGRh 24590 +IGFuZHJh 24591 +IGdyaW5kaW5n 24592 +IEVkaXRpb24= 24593 +cGY= 24594 +IHdhcnJpb3Jz 24595 +IGhlZGdl 24596 +IHVuc2VyZW4= 24597 +INGB0Y7QtNCw 24598 +ZWxpbmVzcw== 24599 +IHBlcnNvbmFsaXRpZXM= 24600 +IGbDtg== 24601 +J00= 24602 +INGC0L7Rh9C90L4= 24603 +IHNoaXBwZWQ= 24604 +IG1ldGVvcg== 24605 +IHN1cnJvdW5kaW5ncw== 24606 +IEZpbGw= 24607 +dWVzdGE= 24608 +IFBlcnNvbmFs 24609 +IEFsbGU= 24610 +T1JU 24611 +IFNjaGU= 24612 +Vkk= 24613 +IGNvbXBhcmFibGU= 24614 +ZGFtbg== 24615 +IGRpdGNo 24616 +WUFO 24617 +aXNtdXM= 24618 +IHBpY2t1cA== 24619 +IGRhaw== 24620 +IEVQ 24621 +YmVzdA== 24622 +IFN1ZQ== 24623 +w6RsbHQ= 24624 +IHBvcGNvcm4= 24625 +IGZvbGRpbmc= 24626 +aG9tZQ== 24627 +0LjQstCw0LXRgg== 24628 +IGFubm90 24629 +Y2h1Y2s= 24630 +IGZpZXJjZQ== 24631 +IGRhbWFnaW5n 24632 +IGZsb3A= 24633 +IHBhc2Fy 24634 +IHJlZWY= 24635 +INGB0LLQvtC10Lk= 24636 +IHpvbw== 24637 +b3ZlcnM= 24638 +amV0cw== 24639 +IHByw6hz 24640 +IFNpbGljb24= 24641 +dGVvaw== 24642 +IFNldGg= 24643 +YXRhbWVudGU= 24644 +IHRyYW5zbWl0dGVk 24645 +IHJlcGxpY2F0ZQ== 24646 +IHNsaW0= 24647 +IENyZWFt 24648 +IHNpZGV3YWxr 24649 +7IiY6w== 24650 +INC20LjQt9C90Yw= 24651 +IE1vbmljYQ== 24652 +IGNvcGllZA== 24653 +IFRlcnJh 24654 +aXN0ZW50 24655 +INC+0L3Qvg== 24656 +IHdoYWxl 24657 +IFdJVEg= 24658 +0LvRg9GI 24659 +IEVlbg== 24660 +INGB0LLQvtC4 24661 +IG9yZGlu 24662 +IHBsdXJhbA== 24663 +IHNwb2tlcw== 24664 +IGRpc3B1dGU= 24665 +IHNlbnNpYmxl 24666 +IHByZWFjaGluZw== 24667 +IGt0w7Nyenk= 24668 +cHRlZA== 24669 +YXZpZXI= 24670 +IHBpc3RvbA== 24671 +IFRhcGk= 24672 +IMWC 24673 +ZmZmZg== 24674 +IGFjcnlsaWM= 24675 +IGlnbm9yYW5jZQ== 24676 +IFppZWw= 24677 +cmFucw== 24678 +IHdlbGRpbmc= 24679 +bWlk 24680 +INC30LDQvdC40Lw= 24681 +IGxhbmVz 24682 +IG1pbmVz 24683 +IG1vbXM= 24684 +15XXlw== 24685 +IENoYW1iZXI= 24686 +dGllcg== 24687 +IG1vZGVzdA== 24688 +IOyXrOq4sOyEnA== 24689 +IHVuYXM= 24690 +IHdyZW5jaA== 24691 +aGFuZGVk 24692 +IHNhdHVyYXRlZA== 24693 +IEZhbmc= 24694 +IENvbW1pc3Npb25lcg== 24695 +4KSw 24696 +INeW 24697 +IExvdWlzaWFuYQ== 24698 +IE1hc2s= 24699 +IGN1YmVz 24700 +7JSo 24701 +IHZpZMOpb3M= 24702 +IG7DpWdvbg== 24703 +IHJpZGVy 24704 +IOy2nA== 24705 +IHPDs24= 24706 +IExhdGlubw== 24707 +YmFuaw== 24708 +7ZW07KO8 24709 +IEJyZW5k 24710 +IHNleHVhbGl0eQ== 24711 +Li4uLA== 24712 +IGZvcmdldHRpbmc= 24713 +INuM 24714 +IEF2ZW5nZXJz 24715 +IEJvbmpvdXI= 24716 +Y2Vzc29y 24717 +0LrRgNCw0Zc= 24718 +Y2VuY2U= 24719 +IGdlb2dyYXBo 24720 +Y3Vsbw== 24721 +0L7RgdGC0Yw= 24722 +IHN3ZWF0aW5n 24723 +7YOA 24724 +IHN5bW1ldHJ5 24725 +dHPDpQ== 24726 +IGphbg== 24727 +IEZlcnI= 24728 +IGFtYmFzc2Fkb3I= 24729 +emnEmWs= 24730 +IG11c3Vu 24731 +INGD0YI= 24732 +IExH 24733 +aXNzZW50 24734 +Y29tbXVu 24735 +IGNvdXJz 24736 +IGRldmVsb3Bz 24737 +IGJyb256ZQ== 24738 +IHN1YnN0YW5jZXM= 24739 +ZHJpdmVu 24740 +7KO87IS47JqU 24741 +IGFvcw== 24742 +IFBST0ZFU1M= 24743 +aGFsZg== 24744 +IHNvcnRlZA== 24745 +IEJvbWI= 24746 +0LvQsNCz 24747 +IE1hbGF5c2lh 24748 +IENocmlzdGluYQ== 24749 +IHRlYW1tYXRl 24750 +RlQ= 24751 +IGvEsQ== 24752 +aGVhcnRlZA== 24753 +Kys= 24754 +b2dlbmlj 24755 +IGJlbGxz 24756 +IE91YWlz 24757 +IHNwZWNpYWxpc3Rz 24758 +0LHRiw== 24759 +ZGVwdGg= 24760 +bGFzc2Vz 24761 +Z2llcw== 24762 +IENvZmZlZQ== 24763 +IG1hcmtpbmc= 24764 +IGZvbGw= 24765 +dWxp 24766 +IGFkaGVzaXZl 24767 +IEJvdA== 24768 +IFB1bmt0 24769 +ZXll 24770 +IEJ1Yg== 24771 +ZWxvbmc= 24772 +INC/0YDQuNC6 24773 +IGRvbm9y 24774 +ODQ= 24775 +IGVuZm9y 24776 +IGNhdGNoZXM= 24777 +IGJyaWNrcw== 24778 +IGtuaXR0aW5n 24779 +IEtub3dpbmc= 24780 +b2tz 24781 +SFk= 24782 +cmlkZQ== 24783 +IEZhbnRhc3k= 24784 +aW1hbg== 24785 +IHBzZQ== 24786 +IOyYqA== 24787 +INCy0LQ= 24788 +IHJlc3RyYQ== 24789 +IGV2YWx1YXRlZA== 24790 +0YDQtdCy 24791 +IGZvcnR1bmF0ZWx5 24792 +IGNoZWdhcg== 24793 +2LHYqA== 24794 +IGRvbWFpbnM= 24795 +aWJp 24796 +YXJyeQ== 24797 +IHNodXR0ZXI= 24798 +IGZpY291 24799 +TWlrZQ== 24800 +IGluY2x1 24801 +IGRvbm9ycw== 24802 +IGFwbA== 24803 +IExvd2Vy 24804 +IGltcG9ydGVk 24805 +IGFjYWRlbXk= 24806 +IGZpbmFscw== 24807 +IGRpc2FwcGVhcnM= 24808 +2YrYpw== 24809 +IGFkbWluaXN0cmF0b3I= 24810 +anM= 24811 +IGN1dHRlcg== 24812 +IHJhbmdpbmc= 24813 +w7ZycGVy 24814 +IGNvbnN0cmFpbnQ= 24815 +IFRhYmxl 24816 +IFNoYW4= 24817 +dmlj 24818 +IEZpeA== 24819 +IFN3aWZ0 24820 +b3VuY2Vz 24821 +IFdhcnVt 24822 +IGxldHR1Y2U= 24823 +YXBwZWxsZQ== 24824 +IHNoYXZl 24825 +IGLDoXM= 24826 +IDc3 24827 +IE9vbw== 24828 +YW8= 24829 +IE1jTQ== 24830 +IERyZXc= 24831 +IGx1bXA= 24832 +IGxhc2hlcw== 24833 +c2NoZWlubGljaA== 24834 +UmVw 24835 +aW5pcw== 24836 +IENldHRl 24837 +IGNvbXBvc2l0ZQ== 24838 +ZW1ldGVyeQ== 24839 +IHNvcnRl 24840 +IEZpbmFuY2lhbA== 24841 +0L7QvdC1 24842 +cm9uZXM= 24843 +IFZveQ== 24844 +IHTDqWM= 24845 +oLk= 24846 +IE5pbmph 24847 +IENvcmlu 24848 +0LXQvdC90Y8= 24849 +7J207JeI 24850 +IG5pY2g= 24851 +IGRldGVjdGl2ZQ== 24852 +4oCmIg== 24853 +z4POtQ== 24854 +nbzrj4Q= 24855 +IOuzgA== 24856 +IOu4lOs= 24857 +IHByb3Bl 24858 +IFdyaWdodA== 24859 +INeU16o= 24860 +IFNoaQ== 24861 +IGludmVzdGlnYXRpb25z 24862 +IFBvd2VyUG9pbnQ= 24863 +IENodQ== 24864 +IOyYpO0= 24865 +IOyZhOyghA== 24866 +IEZyYWdlbg== 24867 +dW5uaW5n 24868 +IHBvdXJyYWl0 24869 +IHRleHRib29r 24870 +0LzRiw== 24871 +IGZhaHJlbg== 24872 +INGC0L7RgA== 24873 +IGxha2Vz 24874 +w7xuZGU= 24875 +SW50 24876 +IE1ldHJv 24877 +IG1hbnNpb24= 24878 +INCw0LE= 24879 +IFpob3U= 24880 +IGNvcnJpZG9y 24881 +IGVzY29s 24882 +IGluZGljYXRpbmc= 24883 +aWHFgmE= 24884 +IG1vbW15 24885 +IGFyY2hpdmVz 24886 +IGZvdW5kZXJz 24887 +ZW5naW5l 24888 +IERpZXU= 24889 +IHNpY2tuZXNz 24890 +IOuztOuLiOq5jA== 24891 +IGFyYg== 24892 +IG5lZA== 24893 +IENob3A= 24894 +IGNvdmlk 24895 +IHNsYW0= 24896 +IHB1YmxpY2F0aW9ucw== 24897 +REM= 24898 +IHNwZW5kcw== 24899 +5r4= 24900 +IHJlZnVnZWU= 24901 +IGRpbGU= 24902 +INeQ15Y= 24903 +aWZpY2Fy 24904 +IFNhY2g= 24905 +R3U= 24906 +IHJlbG9hZA== 24907 +Pz8/Pw== 24908 +IGplxZtsaQ== 24909 +INGB0L7RgdGC0L4= 24910 +IHNpbXBsaWNpdHk= 24911 +IGJ1bGx5aW5n 24912 +INC80L7Quw== 24913 +IHJlYWxpZGFk 24914 +IHVuY2xlYXI= 24915 +YXBwYQ== 24916 +bGV2YW50 24917 +IElTSVM= 24918 +IFdhdHNvbg== 24919 +IGRlaW4= 24920 +IE1pY3Jv 24921 +7ZWc6w== 24922 +w7xn 24923 +IGRldmFt 24924 +IHR3ZWV0ZWQ= 24925 +IHVuZGVyc3RhbmRhYmxl 24926 +YXRhbg== 24927 +IHZlcnNh 24928 +IHByZWNh 24929 +IHbhu4E= 24930 +IENvcHk= 24931 +IE9yYWNsZQ== 24932 +IG1pbmRmdWxuZXNz 24933 +IGRpc2NyZXQ= 24934 +ZXJuZW4= 24935 +IFBsZQ== 24936 +SGF2ZQ== 24937 +IGlzb2xhdGU= 24938 +IGRldQ== 24939 +IHNldmVudHk= 24940 +IEhpbGxz 24941 +IGFyY2FkZQ== 24942 +INGB0L/QtdGG0Lg= 24943 +IHNpZ3VpZW50ZQ== 24944 +IELDnE5ETklT 24945 +bGlnYQ== 24946 +INCy0YHRgtGA0LXRhw== 24947 +w7Rt 24948 +IHR3ZWV0cw== 24949 +IHNjaGF1ZW4= 24950 +IGNyaXRpcXVl 24951 +IPCfjrU= 24952 +IHN0YXR0 24953 +INGB0LDQvNC+0LU= 24954 +w6JuY2lh 24955 +IHN1cGVybmF0dXJhbA== 24956 +IHBsdWdnZWQ= 24957 +Rmw= 24958 +eW7EsQ== 24959 +IFRhbWJpw6lu 24960 +IGVuY291cmFnZW1lbnQ= 24961 +IFNlcnZlcg== 24962 +64Kc 24963 +dXBh 24964 +IGFzdG9u 24965 +IGhlYXJz 24966 +0YDQsNGF 24967 +IHNjaGU= 24968 +IHJhdHM= 24969 +IHJlY3VwZXI= 24970 +IHVudGVu 24971 +IEZpZ2h0aW5n 24972 +IGFjYWRlbWljcw== 24973 +IFPDvA== 24974 +0YHQutC40YU= 24975 +IHBhaXJlZA== 24976 +gOydhA== 24977 +IMOhcmVh 24978 +IHN3ZWV0bmVzcw== 24979 +IGRlZmVy 24980 +IG11aXRhcw== 24981 +IEF1ZGlv 24982 +IGxvY2tlcg== 24983 +2YrYrw== 24984 +INGB0YLQsNCy 24985 +IGJ1ZW5h 24986 +QU5T 24987 +IGRldGVjdG9y 24988 +YXZv 24989 +YmVr 24990 +IM6xzr0= 24991 +7Y64 24992 +IGRyYWdnZWQ= 24993 +INC00L7Qu9C20LXQvQ== 24994 +w5Y= 24995 +2LHYqQ== 24996 +7J207KeA 24997 +IGNlbGxl 24998 +Y2tpbmc= 24999 +INin2YTYrA== 25000 +IENhbnZhcw== 25001 +IGVzcGHDsQ== 25002 +IGdsaW1w 25003 +IHNwcmVhZHM= 25004 +b25nbw== 25005 +IE1hc29u 25006 +IEluZw== 25007 +IOqwgOuKpQ== 25008 +z4TOuc66 25009 +IHNlY3VsYXI= 25010 +IGJhdGVy 25011 +IGlucXVpcnk= 25012 +IGVuZXJnaWVz 25013 +IG1hbnVmYWN0dXJlZA== 25014 +IHZlZ2V0YXJpYW4= 25015 +IHBpbmVhcHBsZQ== 25016 +0Y/RgtCw 25017 +IHByYWN0aXRpb25lcnM= 25018 +MjAwMA== 25019 +IO2VtOyalA== 25020 +IOyXrOufrOu2hOuTpA== 25021 +IOu2iOs= 25022 +IEplZmZlcnNvbg== 25023 +IEpvYW4= 25024 +IHRyYW0= 25025 +Y2htYWw= 25026 +IEhhaXQ= 25027 +4bmH 25028 +IHVucmVhbA== 25029 +IHN5bWJvbGlj 25030 +IHN0ZWFsdGg= 25031 +IHNwbGFzaA== 25032 +IEVudGVydGFpbm1lbnQ= 25033 +IG1ldGFsbGlj 25034 +PyIu 25035 +YXJvdW5k 25036 +IGRlc3BhaXI= 25037 +IE5ldmFkYQ== 25038 +IEZpbmFuY2U= 25039 +IGtyaWU= 25040 +IEx1eA== 25041 +IFNtYXNo 25042 +a2VlcGluZw== 25043 +INC30LDQsw== 25044 +IG5hcmNpc3M= 25045 +IGR6aXNpYWo= 25046 +IHRvbGVyYXRl 25047 +b2FyZA== 25048 +IGxpbmtpbmc= 25049 +IEVjb25vbWlj 25050 +IOy8 25051 +IG1vcnBo 25052 +IE5haw== 25053 +IEJha2Vy 25054 +YXRvbg== 25055 +cmluZ3M= 25056 +IFBlbmc= 25057 +IEFpcnBvcnQ= 25058 +7ZWY64uk 25059 +p4E= 25060 +cHJpbnRz 25061 +IGhhZGk= 25062 +IGVtcGly 25063 +IExpdmVz 25064 +YW5uZXJz 25065 +INC90LjQvA== 25066 +IFBST0ZFU1NPUg== 25067 +IHBvc2l0aXZlbHk= 25068 +YW50b20= 25069 +IGJhZGdl 25070 +a2VsdA== 25071 +IGludGVyZmVy 25072 +IGZ1bGZpbGxpbmc= 25073 +IHZpc3VhbGl6YXRpb24= 25074 +IFByaWNl 25075 +77+977+9 25076 +IHNjZW5lcnk= 25077 +IHByb25l 25078 +IHdpemFyZA== 25079 +IGJhbnlhaw== 25080 +dmVyYg== 25081 +c2t5 25082 +IHdpc2hlZA== 25083 +IHJhaWx3YXk= 25084 +IMO8emVy 25085 +IGFsZ3VpZW4= 25086 +IEFX 25087 +INC60L7Qu9C40YfQtQ== 25088 +IHJlYWN0aW5n 25089 +IEJ1Y2g= 25090 +4Li2 25091 +IGFudGg= 25092 +IHNpaA== 25093 +IGh1c3Q= 25094 +IFNjcmVlbg== 25095 +aWxhbnQ= 25096 +YWhv 25097 +IGZyYWdyYW5jZQ== 25098 +IGVsZXZhdGlvbg== 25099 +IE1lZGl0ZXI= 25100 +IOu/ 25101 +IMOpcXU= 25102 +IHdyYXBz 25103 +IGluZXJ0 25104 +IHJlY3JlYXRl 25105 +0LvQsNGC 25106 +IGJvbGVo 25107 +IGhhcmFzc21lbnQ= 25108 +dW5reQ== 25109 +IGdsaW1wc2U= 25110 +cmVnaWVydW5n 25111 +IGZ1dHVy 25112 +IHJlcG9zaXRvcnk= 25113 +IGVuZ3Jh 25114 +IHRyYWZmaWNraW5n 25115 +YXNzaXM= 25116 +IFRyZWs= 25117 +IOuyjA== 25118 +IOuniOs= 25119 +IEthYg== 25120 +YW5pdQ== 25121 +Z2l2ZQ== 25122 +IGRpbm9zYXVycw== 25123 +IGZlYXRoZXI= 25124 +IGF0dGl0dWRlcw== 25125 +IHBsdW0= 25126 +IFJT 25127 +IEFuZmFuZw== 25128 +aWxsZXJ5 25129 +IOyKpA== 25130 +TVk= 25131 +IHRyemViYQ== 25132 +IHNraWVz 25133 +IEFq 25134 +dXJhYmxl 25135 +Q1U= 25136 +IFNoYW5l 25137 +IGRlcGFydHVyZQ== 25138 +IFRPTg== 25139 +aWV0ZW4= 25140 +cmF0cw== 25141 +aXN1 25142 +IGJvcmQ= 25143 +IGludGVyZXN0aW5nbHk= 25144 +b3VnaGluZw== 25145 +IHJ1c2hpbmc= 25146 +IHZvbGF0aWxpdHk= 25147 +IHB5dA== 25148 +IGZvcm1hdHM= 25149 +INC30LDRgg== 25150 +IOq8rQ== 25151 +IHdoYXRub3Q= 25152 +IGNvbXBvcnQ= 25153 +c3c= 25154 +b3JlYW4= 25155 +IFJlbGF4 25156 +IGNsYW4= 25157 +IEFI 25158 +IHBldw== 25159 +IGRpY3Rpb25hcnk= 25160 +VGFrZQ== 25161 +c2hpcnRz 25162 +IEh1Z2g= 25163 +INi52YTZig== 25164 +IFBpYw== 25165 +IGVucm9sbGVk 25166 +IGplZG5haw== 25167 +IG9mZmVyaW5ncw== 25168 +IGNvcmF6 25169 +TGlmZQ== 25170 +ICEhIQ== 25171 +IGNsZXI= 25172 +IFZpZGVvcw== 25173 +IFJvZHJpZw== 25174 +IElkZW50 25175 +IFBvcw== 25176 +IFN0YWdl 25177 +IFJhY2U= 25178 +IGVuYWN0 25179 +IEd5 25180 +IEhpc3Bhbg== 25181 +IGRlZmVuY2U= 25182 +IENhbXBiZWxs 25183 +bWF0aWM= 25184 +IHJlbGV2 25185 +IHBlYWNo 25186 +hLjsmpQ= 25187 +IHBhcmFkaXNl 25188 +IGNlcmVtb24= 25189 +IGFubm95ZWQ= 25190 +bGF4 25191 +IGV4cGxvaXQ= 25192 +IGNsYXVzZQ== 25193 +ZWtlcg== 25194 +IEJsb29t 25195 +bmFudA== 25196 +YXRldXJz 25197 +IGhlaWdodHM= 25198 +RXZlbg== 25199 +0YHQvtC9 25200 +IG91dHJhZ2U= 25201 +IFZpZXRuYW1lc2U= 25202 +VFI= 25203 +IGVlcg== 25204 +IGNhbm5vbg== 25205 +IENvbWI= 25206 +kOunjA== 25207 +IOqyg+uPhA== 25208 +IGFjY29tcGxpc2htZW50cw== 25209 +IEFuYWx5dGljcw== 25210 +IHNoYXBpbmc= 25211 +cmVpYmVu 25212 +IGJhY2hlbG9y 25213 +IGZpbmdlcnQ= 25214 +YWNrZWQ= 25215 +IHB5cmFtaWQ= 25216 +IFN0ZXdhcnQ= 25217 +w6FzdA== 25218 +IHN1cnZpdm9y 25219 +IGR1Y3Q= 25220 +IGRlYWxlcnM= 25221 +2LnZhQ== 25222 +0LvQuNC9 25223 +IGVkZQ== 25224 +15XXog== 25225 +INmD2KfZhg== 25226 +IM+Ezrk= 25227 +IGNob29zZXM= 25228 +IE93bg== 25229 +0LPQvtGC0L7Qsg== 25230 +aGlyZQ== 25231 +0LDQu9GM0L3Ri9C1 25232 +INCb0Y4= 25233 +INC+0YHRgtCw0LI= 25234 +dGVjaA== 25235 +IGRyb2l0 25236 +IHN1YmplY3RpdmU= 25237 +ZW5lcw== 25238 +IGRpdmlz 25239 +YXZleg== 25240 +IG1hbmV1dmVy 25241 +4LmE4LiU 25242 +YWRlY2U= 25243 +IEVucw== 25244 +YWNpYWw= 25245 +IFByb3RlY3Rpb24= 25246 +lrQ= 25247 +IGZvcm1hbGx5 25248 +IHd5ZA== 25249 +aW5ndcOpbQ== 25250 +IHppZW0= 25251 +IHJlY3J1aXRpbmc= 25252 +15nXmg== 25253 +bmVt 25254 +IGZvcmJpZGRlbg== 25255 +IEJhcHQ= 25256 +15DXoNeZ 25257 +IHN1YnNldA== 25258 +IE1hZ2F6 25259 +bmVtZW50 25260 +IGFxdWVsYQ== 25261 +cmFnb24= 25262 +IGNvbW1pdHRlZXM= 25263 +IMOpdGFpZW50 25264 +dWRp 25265 +IERhd24= 25266 +IGJvcmU= 25267 +IGNvbXBvc2Vy 25268 +IHdpxJljZWo= 25269 +YW5nYQ== 25270 +IGRpc2xpa2U= 25271 +IERheXM= 25272 +IHBhcmFs 25273 +IG1pZW50cmFz 25274 +IGhlYXZlbnM= 25275 +aGVpZA== 25276 +IHRyYWRlcnM= 25277 +b25jZQ== 25278 +IG1hc2NhcmE= 25279 +IM+Az4HOvw== 25280 +IHdoaXNwZXI= 25281 +IE11c2s= 25282 +IEZhbWlsaWU= 25283 +QWxsYWg= 25284 +IE9saXZpYQ== 25285 +IFByb3M= 25286 +IG9saWth 25287 +aWxpbQ== 25288 +IHLDqXBvbmQ= 25289 +IFBldGVycw== 25290 +IGJpdGVz 25291 +IHZpYw== 25292 +IE5Z 25293 +ZW1wdGlvbg== 25294 +IDQ1MA== 25295 +IHZpc3VhbHM= 25296 +IGxpZXU= 25297 +w7xja2Vu 25298 +IFN0ZWVs 25299 +IEdQ 25300 +d2FpdA== 25301 +IG5vdGljZWFibGU= 25302 +dWNoYQ== 25303 +IHJlaGFiaWw= 25304 +IHJlamVjdGlvbg== 25305 +INGB0LvQtdC00YPRjtGJ 25306 +IHNsaWRlcg== 25307 +IHJlZ2FyZGVk 25308 +IGdyYXZpdA== 25309 +IFJlc2VydmU= 25310 +Y291bnQ= 25311 +IGJyZWVkaW5n 25312 +IGxvbmdl 25313 +YWxlYg== 25314 +IGtuaWdodA== 25315 +INCy0L7QuQ== 25316 +IHByw6lzZW50 25317 +gpjsmpQ= 25318 +IFNwZWNpZmljYWxseQ== 25319 +IHBvc2Vz 25320 +IHZldXJl 25321 +b2theQ== 25322 +ZW1hcw== 25323 +IG1hasSF 25324 +IHdlYmluYXJz 25325 +IGNhbm5hYmlz 25326 +IGRhbWFscw== 25327 +IE5vcnRod2VzdA== 25328 +IHBhZGE= 25329 +IGNyb3dkcw== 25330 +IGZ1dHVyZXM= 25331 +IMOkbg== 25332 +IGNpdmlsaWFucw== 25333 +IFNhY2hlbg== 25334 +5o0= 25335 +IHRyYWNlcw== 25336 +IOuoueqzoA== 25337 +UVU= 25338 +IElG 25339 +YW7EsW4= 25340 +7IK0 25341 +IGJpYmxpY2Fs 25342 +IFZlZA== 25343 +IHN0b3Jpbmc= 25344 +0YDQsNCy0LvRjw== 25345 +IG5hc3Q= 25346 +IGTDtg== 25347 +0YDQvtC/ 25348 +ZWxpYQ== 25349 +IHNpZGV3YXlz 25350 +IFVuZGVyc3RhbmQ= 25351 +IFF1cg== 25352 +IHBlcnBlbmQ= 25353 +IE1pbGxpb25lbg== 25354 +IHdhdGVybWVsb24= 25355 +IERpdmluZQ== 25356 +dWx0dXI= 25357 +YWJvcmQ= 25358 +IHN1Y2Nlc3Nlcw== 25359 +IGhvbWJyZQ== 25360 +IGNhcnA= 25361 +IHN1c2NlcHQ= 25362 +dW5na2lu 25363 +IGtpag== 25364 +dWx1cw== 25365 +2KfYrA== 25366 +IG5vdGNo 25367 +IHBvbHlub21pYWw= 25368 +5ak= 25369 +IMO6bmljbw== 25370 +IHRlbGVzY29wZQ== 25371 +IHBvbGl0aXF1ZQ== 25372 +a2llbQ== 25373 +IM6tzr3OsQ== 25374 +IGFnZ3JlZ2F0ZQ== 25375 +IEdlb2Zm 25376 +IHRyaWw= 25377 +IEdSQQ== 25378 +IHN1YnNjcmliZXI= 25379 +aW1ldA== 25380 +INC00L7Qu9C70LDRgA== 25381 +b3Bpbmc= 25382 +IHRoZXJhcGV1dA== 25383 +IENhbmNlcg== 25384 +IHBhcmFkZQ== 25385 +IGlycmln 25386 +4pmq4pmq 25387 +IGNsZWFyZXI= 25388 +IGJvZw== 25389 +IE1hdXI= 25390 +4Liy4LiH 25391 +IFNoYW5naGFp 25392 +YWNodGU= 25393 +IEtvbA== 25394 +ZWx1amFo 25395 +IGhhdg== 25396 +IENyaW1l 25397 +c2Vr 25398 +IOuhnA== 25399 +aWVubmE= 25400 +IEdvcg== 25401 +6Js= 25402 +INC/0L7RgtGA 25403 +INC60LDQttC10YLRgdGP 25404 +IExpZnQ= 25405 +IFNvcnQ= 25406 +IFBzYWw= 25407 +IHBpbmc= 25408 +k50= 25409 +cGhpcw== 25410 +IEZVQ0s= 25411 +IFN5bg== 25412 +IGJhbWJvbw== 25413 +rOyYgQ== 25414 +Y3V0cw== 25415 +IG1tbQ== 25416 +IGZ1bmt0aW9uaWVydA== 25417 +IF8= 25418 +w61jaW8= 25419 +U3RvcA== 25420 +IGltYWdpbmFyeQ== 25421 +IG5vdGFtbWVudA== 25422 +IEluaXRpYXRpdmU= 25423 +IEt1cnQ= 25424 +IGxvb3Nlbg== 25425 +IGJ1c2Nhcg== 25426 +IHplbGY= 25427 +IHByb3Bz 25428 +IG1vZXRlbg== 25429 +IG1pbGxp 25430 +IGhhbGxz 25431 +IE1hdGNo 25432 +IGJyYWNrZXRz 25433 +IENvdQ== 25434 +INCc0LDRgA== 25435 +SVNB 25436 +IGNpZ2FyZXR0ZQ== 25437 +IGNvbXBldGl0aW9ucw== 25438 +IE1JTg== 25439 +IGJlaMO2 25440 +dm9vcg== 25441 +IHVzdA== 25442 +IFpp 25443 +IE9jYw== 25444 +dWxhdGVz 25445 +IGJhbGxvb25z 25446 +IHByb250bw== 25447 +IE1peQ== 25448 +IEZpbGU= 25449 +INC60LvQsNGB0YE= 25450 +0L3Rg9C7 25451 +IGNlcmVhbA== 25452 +IGluY3JlbWVudA== 25453 +IHJlZmluZWQ= 25454 +cHJpc2luZw== 25455 +IFJG 25456 +IHJlc3BlY3RmdWw= 25457 +IGxvb3Q= 25458 +YXNrZXQ= 25459 +IGRlaXhh 25460 +aW5nbGU= 25461 +IGZ1bmNpb25h 25462 +IFJldmVs 25463 +IHNvYmVy 25464 +IHBlcmZvcm1z 25465 +IEdlbnRsZQ== 25466 +IHJlY2lwaWVudA== 25467 +IEhhdXNl 25468 +IOuD 25469 +RnJvbQ== 25470 +IG1pbmlzdGVycw== 25471 +IHBhcmFkb3g= 25472 +IHRhc3Rpbmc= 25473 +INeU15c= 25474 +IHJldXNl 25475 +IExhbmU= 25476 +INGB0L7QstC10YDRiA== 25477 +IHJlbWVtYmVycw== 25478 +IGZlbWluaXN0 25479 +IGNvbW1pdG1lbnRz 25480 +IHByb2plY3RlZA== 25481 +IGdheg== 25482 +aXlvcnV6 25483 +IG9ibGlnYXRpb25z 25484 +Um8= 25485 +emFy 25486 +IGNodw== 25487 +IEpBTQ== 25488 +IGLEmWTEhQ== 25489 +YXNwYmVycnk= 25490 +INC80LXRgdGC0L4= 25491 +67KV 25492 +IHJlZ3VsYXRlZA== 25493 +IHdpY2h0 25494 +IFRyZXZvcg== 25495 +IHNlY29uZGx5 25496 +IElocmU= 25497 +ZWxzaA== 25498 +IHJlcG9ydGVycw== 25499 +0YLQvtGA0LA= 25500 +b3lv 25501 +R0k= 25502 +IGludGVyY29ubmVjdA== 25503 +T1NI 25504 +IGJyYXNz 25505 +IGlnbm9yaW5n 25506 +aW5mZWN0 25507 +IHByb2pla3Q= 25508 +b3JldA== 25509 +z4TOsc69 25510 +INGC0LjQvw== 25511 +IG11dHRh 25512 +IHVuYm94aW5n 25513 +hLA= 25514 +IGFkdmlzZWQ= 25515 +IERlbnZlcg== 25516 +IHNldmVyZWx5 25517 +IE1obQ== 25518 +IGZsaXBwZWQ= 25519 +IHBpZW4= 25520 +IGtvbW11bg== 25521 +IEZSRQ== 25522 +IOCuh+CusA== 25523 +YWludGVk 25524 +IGtuaXZlcw== 25525 +IGhhYmw= 25526 +IGdld29yZGVu 25527 +YXJldHRlcw== 25528 +Q1M= 25529 +INC80LDQu9C10L3RjA== 25530 +IGdhbGF4 25531 +IG5pbmV0ZQ== 25532 +6rGw64KY 25533 +IHNpcw== 25534 +IGFkdmlzb3J5 25535 +IGRyaWxsaW5n 25536 +IFdvdWxkbg== 25537 +w7xuZg== 25538 +Z2VzdGVsbHQ= 25539 +IEhlbGVu 25540 +INee15A= 25541 +YXBvbGlz 25542 +IHJ6ZWN6eQ== 25543 +IHRlcnJh 25544 +IGhlcA== 25545 +IGFsZ8O6bg== 25546 +aWtr 25547 +IGFzdHJvbm9t 25548 +IFN0YXJidWNrcw== 25549 +a8SF 25550 +IHBhdHJvbA== 25551 +IOy9lA== 25552 +IGdvbg== 25553 +IOOAkA== 25554 +IHNvbnN0 25555 +IGVuY291bnRlcnM= 25556 +IHJldHJvdQ== 25557 +IHNoYXJrcw== 25558 +IGRvcg== 25559 +IFJldmVy 25560 +IGV2YXBvcg== 25561 +IHJlc2Vydm9pcg== 25562 +IGFsbGVnZWQ= 25563 +dWxlcg== 25564 +IHZlcm0= 25565 +IGNvbW1lcmNl 25566 +IGZpdHRlZA== 25567 +Z2Vt 25568 +IHRhY3RpY2Fs 25569 +IGxpdGg= 25570 +aGFk 25571 +IGNhcmJvaHlk 25572 +IGxlbmd0aHM= 25573 +zrnOvw== 25574 +IGRlbW9ncmFwaGlj 25575 +Um9i 25576 +IFNraW4= 25577 +Y2NvbGk= 25578 +IHNpbXBsaWZpZWQ= 25579 +IHJlYWRpbHk= 25580 +IEN1bQ== 25581 +YWRlc2g= 25582 +IETDpQ== 25583 +dXNzdA== 25584 +aWduZQ== 25585 +ZXRvbg== 25586 +IG1lbm9y 25587 +cWk= 25588 +T09N 25589 +4Lit4LiZ 25590 +IHBzeWNoaWF0 25591 +IGVpZ2h0eQ== 25592 +INC80LjQu9C70Lg= 25593 +IFRvYg== 25594 +ZWRv 25595 +IMSR4bq/bg== 25596 +IGNpcmN1aXRz 25597 +IExBVUdI 25598 +aWNpc20= 25599 +ZW1vcg== 25600 +IHJlZ2VuZXI= 25601 +ZWdyZWU= 25602 +IGJ1cmVhdWM= 25603 +IEFsYmVy 25604 +IFdvcg== 25605 +IHJlc2lu 25606 +IGJ5xYJ5 25607 +IElH 25608 +4K+NLA== 25609 +IDc4 25610 +IHdlZWRz 25611 +IE15dGg= 25612 +OTM= 25613 +5r8= 25614 +IOuCmOyZlA== 25615 +w6l2 25616 +4b0= 25617 +w7ZyZW4= 25618 +w6dhcg== 25619 +IFBBVUw= 25620 +IGRpc2FkdmFudA== 25621 +IHBvc2l0aW9uaW5n 25622 +IGNvY2t0YWls 25623 +IGFncmVlcw== 25624 +bm4= 25625 +IFNhbGx5 25626 +TXM= 25627 +IGluaGVyZW50 25628 +IG1vbmV0YXJ5 25629 +IG5hdHVy 25630 +IE5o 25631 +IEltcG9ydA== 25632 +IGxlYmVu 25633 +IHdp 25634 +dXNzeQ== 25635 +IG9iZXM= 25636 +IHdhbmRlcmluZw== 25637 +IOyLoOs= 25638 +xIVkYQ== 25639 +ZXRjaHVw 25640 +IGRpc3Bvc2Fs 25641 +IEpB 25642 +IENlcg== 25643 +emlsbGE= 25644 +IHZpcmdpbg== 25645 +IFNsaWRl 25646 +YW5kZWw= 25647 +IHJpZ2h0ZW91c25lc3M= 25648 +IM6j 25649 +IGlkZWlh 25650 +0LjRgNC+0LLQsNGC0Yw= 25651 +16jXkA== 25652 +Q29tbWVudA== 25653 +IHByZWxpbQ== 25654 +IFZhbGU= 25655 +IOyngOuCnA== 25656 +IFZhbmM= 25657 +T01BTg== 25658 +INC/0ZbQtA== 25659 +IHl1bQ== 25660 +c3RyZQ== 25661 +Y2Vt 25662 +IHBvY3o= 25663 +IGZyYWdtZW50 25664 +INGB0LvRg9GH0LDQtQ== 25665 +IHVuZGVyZ28= 25666 +IEhhbms= 25667 +Y2Vrcw== 25668 +IEZQUw== 25669 +IG9jdXI= 25670 +IGRldGVyaW9y 25671 +IGVtcHJlc2Fz 25672 +UGF1bA== 25673 +ICkpKQ== 25674 +INCy0YDQtdC80LXQvdC4 25675 +IHNjb2xk 25676 +15nXog== 25677 +IHN1c3BlY3RlZA== 25678 +IGFjY2Vzc2luZw== 25679 +IHN1YnN0aXQ= 25680 +IGhpc3RvcmlhbnM= 25681 +INC00LXQu9C+ 25682 +IHNvY2llZA== 25683 +cm9uZQ== 25684 +IHJlZGVu 25685 +IGV4dGVuZHM= 25686 +ZXBoZXJk 25687 +IGJhbGNvbg== 25688 +IFNvbG8= 25689 +IHBvbGl0aWNpYW4= 25690 +0L7Qu9GM0L3Qvg== 25691 +IGlyZ2VuZHc= 25692 +IHRyYXVtYXRpYw== 25693 +IHJhcHBlcg== 25694 +IFJPQkVSVA== 25695 +UmVhbGx5 25696 +IGxpbmV1cA== 25697 +QVNF 25698 +IGNvbnRyYWN0b3I= 25699 +IENvcnBvcmF0aW9u 25700 +Z29y 25701 +IFRvZG8= 25702 +0YHRgtGA0L7QuQ== 25703 +RkJF 25704 +IG5ld3NsZXR0ZXI= 25705 +IGtvxYQ= 25706 +YWx0aWVz 25707 +INC/0YDQuNGH 25708 +IEhlYXZ5 25709 +IHN3b3Jkcw== 25710 +IG1hbmlwdWxhdGlvbg== 25711 +IGZ1bms= 25712 +IHbDpXI= 25713 +IFRhbGliYW4= 25714 +IOuwpQ== 25715 +IGFjbmU= 25716 +w7xyw7w= 25717 +IGRlc3dlZ2Vu 25718 +IER1c3Q= 25719 +IHNpbGlj 25720 +IGhvb2tz 25721 +IGJsaWo= 25722 +IHBldGl0cw== 25723 +IGZpbG1l 25724 +IEJlcmVpY2g= 25725 +IFNhaWQ= 25726 +IGltcG9zZWQ= 25727 +IGRpYXJ5 25728 +INCz0L7RgA== 25729 +IEdhdGVz 25730 +IGFsdGE= 25731 +IGNoY2lh 25732 +cGxlYXNhbnQ= 25733 +IOuwnQ== 25734 +IG1vxbxlbXk= 25735 +IEF1c3RyaWE= 25736 +IGJyb2tlcg== 25737 +IHN1Y2tlZA== 25738 +IGNvbXBhcnRtZW50 25739 +IGNsb25l 25740 +INeU16I= 25741 +IERhbmtl 25742 +IG5vY2htYWw= 25743 +0LXQt9C0 25744 +IGFkcmVuYWw= 25745 +IGtsZWluZW4= 25746 +IHN1YnNlcXVlbnRseQ== 25747 +IGRlY2VudHJhbA== 25748 +IGdlbmV0aWNz 25749 +IOq0kQ== 25750 +IG1vbml0b3Jz 25751 +IEFwcGxpYw== 25752 +IFJlcG9ydGVy 25753 +d2VydA== 25754 +IHdpZW0= 25755 +IE1vdmVtZW50 25756 +IGludGVydmlld2luZw== 25757 +IGhhaXJz 25758 +IHB1w7I= 25759 +IENoZWxzZWE= 25760 +IGNvaGVy 25761 +IGNvdA== 25762 +IHphcw== 25763 +IHBhdGNoZXM= 25764 +IGxhaA== 25765 +0YPQvdC6 25766 +IFJlYWdhbg== 25767 +IE1hcmNv 25768 +Y2l0eQ== 25769 +IGRlZmVuZGVy 25770 +IGRlY29yYXRpb24= 25771 +aWpp 25772 +IGxpdHRlcg== 25773 +0Kg= 25774 +IGplZ28= 25775 +UkVX 25776 +IFBpaw== 25777 +IEhlZQ== 25778 +IEl2 25779 +INC40LTQtQ== 25780 +IFRoZWF0ZXI= 25781 +INGH0LDRgdGC0L4= 25782 +IHN3ZWF0ZXI= 25783 +IGhpZ2hsaWdodGluZw== 25784 +IGFpbnNp 25785 +IGRpcGxvbWF0aWM= 25786 +IE5ldmVydGhlbGVzcw== 25787 +5bM= 25788 +QVNPTg== 25789 +IHDDumJsaWNv 25790 +IGZlcm0= 25791 +cmVhdGVk 25792 +Y29k 25793 +IOusvOs= 25794 +IG1pc3Rlcg== 25795 +IFZhbmNvdXZlcg== 25796 +IHJlY29nbml6ZXM= 25797 +ZWNk 25798 +IGNvbXBsaWNhdGlvbnM= 25799 +ZW5jaWFs 25800 +IOqwgOyngA== 25801 +IFVsdGltYXRl 25802 +IHZhaWc= 25803 +IE1lcnJ5 25804 +15XXkg== 25805 +IE1hcmN1cw== 25806 +b3dlZ28= 25807 +IG1lbnRl 25808 +U20= 25809 +IGFqYQ== 25810 +IFRhbw== 25811 +IGp1ZGljaWFs 25812 +IGVudHJlcHJlbmV1cnNoaXA= 25813 +INC90LXQvNC90L7Qs9C+ 25814 +IHBpcw== 25815 +IGVyZw== 25816 +IGNocmlzdA== 25817 +IEN1cnQ= 25818 +INGA0LDRgdC/ 25819 +zrvOtQ== 25820 +ZW5zY2g= 25821 +w61yZQ== 25822 +IGZvY2Fs 25823 +IERpYW1vbmQ= 25824 +YXbDrWE= 25825 +IGhhbm5v 25826 +IFNxdWFk 25827 +IGFzc29jaWF0aW9ucw== 25828 +IENyZWF0aXZl 25829 +IG1lc3Nlbmdlcg== 25830 +IGJlZ2dpbmc= 25831 +IGRlY2ltYWw= 25832 +IGTEscWf 25833 +IG1ldGFkYXRh 25834 +c2Vscw== 25835 +IMSwxZ8= 25836 +4buvYQ== 25837 +IGRpZmZpY2lsZQ== 25838 +ZMSx 25839 +IHNsYXVnaHRlcg== 25840 +IFZlcmc= 25841 +INeS150= 25842 +IFRlYQ== 25843 +YXNzZXM= 25844 +T2s= 25845 +IHN5bnRoZXM= 25846 +b3RpYXRpb24= 25847 +IHBhaW50ZXI= 25848 +IGVsYm93cw== 25849 +IGFyY2hpdGVjdHVyYWw= 25850 +INGA0LDQtA== 25851 +IGdsb3I= 25852 +aW1hZ2U= 25853 +YW1wYQ== 25854 +Y3VsaWFy 25855 +oKg= 25856 +IHRldmU= 25857 +IFN0ZWxsZQ== 25858 +IEJhbQ== 25859 +IOy0iA== 25860 +YXNpcw== 25861 +aXBlZGlh 25862 +IEdJ 25863 +IEFjdGl2ZQ== 25864 +YXpp 25865 +IEx1Y2t5 25866 +7ZWp 25867 +INC/0YDQuNGF0L7QtA== 25868 +IHJ1bndheQ== 25869 +IGF1dGhlbnRpY2F0aW9u 25870 +IHBvc2libGU= 25871 +IHN1cHBsZW1lbnRz 25872 +IHN1cmdpY2Fs 25873 +R2Vu 25874 +IGZlYXNpYmxl 25875 +RE8= 25876 +IG91dGxvb2s= 25877 +IGludGVydmFscw== 25878 +IGFuZWNk 25879 +w6BuZw== 25880 +IHN0cmFwcw== 25881 +IFNodQ== 25882 +dWRk 25883 +aXNzZW5zY2hhZnQ= 25884 +IHBvcnRl 25885 +IGNvbW1pdHRpbmc= 25886 +IGFsbGV5 25887 +IGNvdmVuYW50 25888 +IFBlZHJv 25889 +bGVzc25lc3M= 25890 +IFNvbGlk 25891 +IE1vbGx5 25892 +INC90LXQutC+0YLQvtGA 25893 +IGNvb3BlcmF0ZQ== 25894 +b2xsZW4= 25895 +IHR1bmE= 25896 +IGtpbmRlcmdhcnRlbg== 25897 +IFNpeg== 25898 +IGR1xbxv 25899 +IE1CQQ== 25900 +IEdFT1JHRQ== 25901 +IEZpc2hlcg== 25902 +IENhZXNhcg== 25903 +INC60YDQsNGB0LjQsg== 25904 +IERlbGhp 25905 +enlt 25906 +IGV4cGxpY2Fy 25907 +6rCA7KeA 25908 +dW5z 25909 +Z3Jvdw== 25910 +INC/0YDQuNGB 25911 +IDg2 25912 +IHN0YXRpbmc= 25913 +IG1hc3Nh 25914 +Y2h0ZXI= 25915 +IOy7rOufrA== 25916 +IGRlcHV0eQ== 25917 +U00= 25918 +bm9j 25919 +IGdlb2dyYXBoeQ== 25920 +IEVudGVycHJpc2U= 25921 +IENhbnQ= 25922 +w7Z6 25923 +IHVucGFjaw== 25924 +IO2ZlOs= 25925 +IHNlYXJjaGVz 25926 +IHByZXNpZGVuY3k= 25927 +IHRyaXZpYWw= 25928 +IHBpZ2U= 25929 +b3VidA== 25930 +7LyA7J20 25931 +IGJ1ZGdldHM= 25932 +IHVi 25933 +IHBuZQ== 25934 +IFlhbGU= 25935 +IMWfw7Z5bGU= 25936 +cmVndWxhcg== 25937 +IGltcGVyZmVjdA== 25938 +QVJB 25939 +IGZhbcOtbGlh 25940 +dXJt 25941 +IEFkdmVudHVyZQ== 25942 +Y2lz 25943 +ZW1hcms= 25944 +IG5lZ28= 25945 +IGluYXBwcm9wcmlhdGU= 25946 +INC/0YDQuNC3 25947 +INGA0L7Quw== 25948 +IGRyZWFtZWQ= 25949 +QnJ5 25950 +IHNodXR0bGU= 25951 +IHBpbGxhcnM= 25952 +IGJpaw== 25953 +aW51bQ== 25954 +INGD0YE= 25955 +IE5lYnI= 25956 +IHBlcnBlbmRpY3VsYXI= 25957 +IGJvb2tlZA== 25958 +YmVyeQ== 25959 +IHZpa3Q= 25960 +YmVhcg== 25961 +ZXN1cw== 25962 +INCy0L7Qt9C80L7QttC90L4= 25963 +qLk= 25964 +IHByZXN1bWFibHk= 25965 +IE1lbXBoaXM= 25966 +IGFtYnVsYW5jZQ== 25967 +15XXnteo 25968 +IHRodW1ibmFpbA== 25969 +IG1vZGlmaWNhdGlvbg== 25970 +IGludGVycHJldGVk 25971 +IHByb21v 25972 +IM66zqw= 25973 +IM61z4A= 25974 +IGFjb3VzdGlj 25975 +IERC 25976 +IG5vbmV0aGVsZXNz 25977 +b3VsZQ== 25978 +IHBlcXU= 25979 +IGtub2I= 25980 +IOuPjOyVhA== 25981 +IHB1cmNoYXNlcw== 25982 +IMOHw7xua8O8 25983 +IGRpdmlkaW5n 25984 +cGVyZm9ybQ== 25985 +cmFjdGlvbg== 25986 +aGVhbHRoeQ== 25987 +IFRpdGxl 25988 +IHVr 25989 +IGNlcmNh 25990 +IGFyZ3VhYmx5 25991 +IGZhbGU= 25992 +67O1 25993 +IGdhbWVycw== 25994 +IHV0aWxpemluZw== 25995 +IG9mZmVuZGVk 25996 +IHRhdmE= 25997 +YWzEsQ== 25998 +IG1lZGlhbg== 25999 +IGluZmVjdGlvdXM= 26000 +IEFubmll 26001 +IHNtYXJ0cGhvbmVz 26002 +IHBhcm9sZQ== 26003 +IEVwaWM= 26004 +enph 26005 +IHVuaWZpZWQ= 26006 +IOq3uOuVjA== 26007 +IGN1cnRhaW4= 26008 +IMSD 26009 +IHNleHVhbGx5 26010 +IHVuc2VyZW0= 26011 +IENvbnZlbnRpb24= 26012 +IGFsbGVnZWRseQ== 26013 +WWE= 26014 +IEhvbw== 26015 +ZW5tZW50 26016 +7ZuE 26017 +IGdpZ2FudGlj 26018 +IG5vdGluZw== 26019 +IHJlYm8= 26020 +IEphbWE= 26021 +IEFseg== 26022 +IGJvcnJvd2Vk 26023 +7Lmo 26024 +IHBlcmlwaGVy 26025 +0L7RgtCw 26026 +IEdC 26027 +IEdlYXI= 26028 +IGVjb25vbWljYWxseQ== 26029 +IHRlbGVmb24= 26030 +IHF1ZXJlbW9z 26031 +INC00LDQu9GM0YjQtQ== 26032 +IHJhcw== 26033 +IFRlYWNo 26034 +aWNpb3M= 26035 +YXRvcw== 26036 +IHBsZWRnZQ== 26037 +YmF1 26038 +IEhpbXNlbGY= 26039 +TGluaw== 26040 +IGVzcGVybw== 26041 +IGNocm9tb3M= 26042 +IFBFUg== 26043 +IGVybGU= 26044 +IHBvZGl1bQ== 26045 +w6dvcw== 26046 +IG5pZXU= 26047 +IGZlbg== 26048 +IEdPRA== 26049 +IENob2NvbGF0ZQ== 26050 +d2Vyaw== 26051 +IHThu6s= 26052 +IHN1cHByZXNz 26053 +zrvOtw== 26054 +IDI0MA== 26055 +IHNpdMOk 26056 +IGhvbmVzdHk= 26057 +IEJpbw== 26058 +IEJhcmQ= 26059 +INC+0LHRidC10Lw= 26060 +INC80YPQtw== 26061 +IG1hcmJsZQ== 26062 +INGG0LXQvdGC 26063 +IHByb2N1cmU= 26064 +IHJvdG9y 26065 +YmVybg== 26066 +IHR1aA== 26067 +IGhlYWRzZXQ= 26068 +YXRlbQ== 26069 +IHdhcnJhbnR5 26070 +4K60 26071 +IGZpbGluZw== 26072 +zrnOrA== 26073 +IGNvbXByZW5kcmU= 26074 +IGltcHVsc2U= 26075 +IHNhbHY= 26076 +d3JpdHRlbg== 26077 +IGluc3RpdHV0ZQ== 26078 +S2lt 26079 +IExHQlRR 26080 +ZmljaWVudGU= 26081 +SGlz 26082 +IM6xz4XPhM+M 26083 +IHRlZW5hZ2U= 26084 +b3J1cw== 26085 +INGA0LDQt9Cx 26086 +U2Vl 26087 +IENvbnNlcnY= 26088 +4buBbg== 26089 +ZnVsbmVzcw== 26090 +IHN0cmF3YmVycmllcw== 26091 +IEFidQ== 26092 +0LjQvtC9 26093 +IG9sbGE= 26094 +Tk9JU0U= 26095 +IEVtcGxveQ== 26096 +IHdpcGVk 26097 +dXJnZXI= 26098 +IG1vZGlmaWNhdGlvbnM= 26099 +IO2VmOyngA== 26100 +IGZvb3RzdGVwcw== 26101 +IGhvbm9ycw== 26102 +IGFkdWw= 26103 +IGZsaXBwaW5n 26104 +IEhV 26105 +Wlk= 26106 +IGludGVncmF0aW5n 26107 +2KjYsQ== 26108 +dWxsYQ== 26109 +IG5hdHV1cmxpams= 26110 +IO2XiA== 26111 +IEV0aGVyZXVt 26112 +2YrZhA== 26113 +d2Vk 26114 +IHBlYWtz 26115 +IEtlcw== 26116 +IGJsb29t 26117 +IGNyYXNoaW5n 26118 +IDkxMQ== 26119 +INC+0YLQu9C40Yc= 26120 +IGNvbnRyb2xsZXJz 26121 +IERvZA== 26122 +INCy0LzQtdGB0YLQtQ== 26123 +IHNvcnRpcg== 26124 +IFN0cmFpZ2h0 26125 +IEdyYWNpYXM= 26126 +IGdyb292ZQ== 26127 +IHRvZ2c= 26128 +IOyLtuydgA== 26129 +w6lybw== 26130 +IG91dHdhcmQ= 26131 +IFdB 26132 +IFJvY2t5 26133 +IHNjYW0= 26134 +IGhheWF0 26135 +aWdudHk= 26136 +4oQ= 26137 +cGxpbmdz 26138 +IGFudGliaW90aWNz 26139 +IG5ldmVydGhlbGVzcw== 26140 +amFuZw== 26141 +Y29tbWVyY2U= 26142 +IHNwb2lsZXI= 26143 +IGdsb3Zl 26144 +IGNoYXR0ZXI= 26145 +IEJZ 26146 +fj8= 26147 +IO2YuA== 26148 +IGRlbW9s 26149 +d2VjaHNlbA== 26150 +aW1pcg== 26151 +IHJhaWQ= 26152 +0LXRgNGF 26153 +7J6Q6riw 26154 +ZW5m 26155 +IGNvbW1lbnRlZA== 26156 +IG9wdGltaXplZA== 26157 +IGNvbnZpY3RlZA== 26158 +IGJhdHM= 26159 +IFNC 26160 +IEF1cg== 26161 +IFRvbmc= 26162 +IGltcGxpY2l0 26163 +IEphbmV0 26164 +IHJlYWc= 26165 +IEFkdmFuY2Vk 26166 +IGltcG9zZQ== 26167 +16nXlA== 26168 +IHNjaGVtZXM= 26169 +b3VnaGVy 26170 +YWJvbGlj 26171 +IOqxsOyjoA== 26172 +IHNsb3dpbmc= 26173 +IHd0ZWR5 26174 +IGRlc3RydWN0aXZl 26175 +INC+0L/RgNC10LQ= 26176 +IGxhbmRtYXJr 26177 +IOuPiA== 26178 +IFdhbGtpbmc= 26179 +4bq5 26180 +IHRpamQ= 26181 +IEtO 26182 +IFF1YW50 26183 +7Jik6w== 26184 +INC60YDRgw== 26185 +IHBlcmRlcg== 26186 +IG5vdmU= 26187 +w6RuZGU= 26188 +Ymlh 26189 +IGN1c3RvZHk= 26190 +IGJpb2Q= 26191 +IGRpcmVjdGluZw== 26192 +Li4u4oCL 26193 +IHJlbG9j 26194 +IGRlbWFuZGU= 26195 +IG/En2x1bQ== 26196 +INC+0LTQvdCw 26197 +IE1pbGs= 26198 +IEtyYQ== 26199 +IEhvbmRh 26200 +IHB1ZQ== 26201 +IGVsZWt0 26202 +IGJlZ2lubmVycw== 26203 +IHNwZWFy 26204 +w61uaA== 26205 +IEx1ZnQ= 26206 +IG5pZw== 26207 +IFNjaG9vbHM= 26208 +IGZvcnVtcw== 26209 +IFFpbg== 26210 +cHBv 26211 +IHphZw== 26212 +INCu 26213 +IHRvb3RocA== 26214 +IFN0eWxl 26215 +7LSI 26216 +IHB1bmN0 26217 +IHJlcHM= 26218 +IEFseQ== 26219 +IGFtZW5kbWVudHM= 26220 +IMO2eg== 26221 +IGRpZ2l0cw== 26222 +dXJhaQ== 26223 +IGNoYW90aWM= 26224 +IE1hc3RlcnM= 26225 +ZW9u 26226 +IENhc2g= 26227 +IEN1eg== 26228 +IGJlZGV1dGV0 26229 +IHNjYW5uaW5n 26230 +INC20LQ= 26231 +0L3QtdGC 26232 +IGNlcnRhaW50eQ== 26233 +amVr 26234 +IGRpam8= 26235 +IENsaW1hdGU= 26236 +IHJpbnNl 26237 +IGtyaWo= 26238 +dmVsYW5k 26239 +IHNvdW5kdHJhY2s= 26240 +IFNhZmU= 26241 +IE5vdmE= 26242 +OTQ= 26243 +IGF0aGU= 26244 +IFZlcmI= 26245 +b2xlcg== 26246 +7J207KOg 26247 +IHZpbg== 26248 +IHJlc3BpcmF0b3J5 26249 +IFN0dWR5 26250 +IENBTQ== 26251 +IGF2b2NhZG8= 26252 +IFpoZW4= 26253 +IGxhdGVuY3k= 26254 +IGZlYXRoZXJz 26255 +IGNvbnRhcg== 26256 +INCy0LXRiQ== 26257 +IGZhcms= 26258 +IGJsZW5kZWQ= 26259 +IGV4cGxvZGVk 26260 +IFhY 26261 +IEJlbmlt 26262 +IGFsZ3XDqW0= 26263 +aXN0b2lyZQ== 26264 +IGNvbmZpZGVudGlhbA== 26265 +IG1hc3Q= 26266 +IOy/ 26267 +Z2Vo 26268 +IGRpc3Jlc3BlY3Q= 26269 +IFN5c3RlbXM= 26270 +xrBh 26271 +RWQ= 26272 +IHd5cw== 26273 +IGV4b3RpYw== 26274 +IGdsb3dpbmc= 26275 +w7luZw== 26276 +b3VuZ2U= 26277 +6IQ= 26278 +0LDQvdC40Lc= 26279 +IHBhbGF2 26280 +IFN3b3Jk 26281 +IGdpbQ== 26282 +IENyb3c= 26283 +IHBvdGVudA== 26284 +YmlzaA== 26285 +IGFidXNlZA== 26286 +IEplZA== 26287 +IGdhbWJsaW5n 26288 +IFNwZWN0 26289 +IGludmVzdGlnYXRvcnM= 26290 +IHJhdHQ= 26291 +IGRvYg== 26292 +IERFUw== 26293 +aG9n 26294 +INC+0YLQutGA0Ys= 26295 +7YyF 26296 +INC00LXQvdGM0LPQuA== 26297 +IO2YuQ== 26298 +IOuouOumrA== 26299 +IHNhdHVyYXRpb24= 26300 +IGluaGVyaXRlZA== 26301 +IElubm92YXRpb24= 26302 +7JeI642Y 26303 +IHRhbmdpYmxl 26304 +IGRlcHJp 26305 +aGVk 26306 +INC/0L7QvNC+0LM= 26307 +IHNsaWNlZA== 26308 +4KWN 26309 +IHRo4bq/ 26310 +xaU= 26311 +Njg= 26312 +IGNvcm9uYQ== 26313 +IGdpZnRlZA== 26314 +IHNvaXI= 26315 +IGh1bWlsaXR5 26316 +IOydtOqxuA== 26317 +IGZsYXdz 26318 +INC/0YDQsNC60YLQuA== 26319 +IGthbGQ= 26320 +d2HFvA== 26321 +eXc= 26322 +aXJ0ZWVu 26323 +IGNyb2NoZXRz 26324 +pqzqsIA= 26325 +IOyghOyXkA== 26326 +IGRlc2U= 26327 +INC80LDQsw== 26328 +IGR6aWHFgg== 26329 +IGzDqWc= 26330 +Y2hhbmdpbmc= 26331 +IGxsZXY= 26332 +xYRzaw== 26333 +IDE5ODQ= 26334 +b3Jucw== 26335 +IFdlbHNo 26336 +IHBoYXJtYWNldXRpY2Fs 26337 +IHB1bXBpbmc= 26338 +IFNoYXc= 26339 +cHVuaw== 26340 +IHZhdWx0 26341 +IGtpbmV0aWM= 26342 +IGh1cnJpY2FuZQ== 26343 +IEluY2x1ZGluZw== 26344 +4bupYw== 26345 +IEdyYW5kcGE= 26346 +YW5zaGlw 26347 +INCy0YvRhdC+0LQ= 26348 +0L3QvtC2 26349 +nKA= 26350 +dXR0YQ== 26351 +IOqygeuLiOuLpA== 26352 +IGJheg== 26353 +INC/0L7RiA== 26354 +IHBlY3VsaWFy 26355 +ennEhw== 26356 +IEVsbGll 26357 +IGxlYXJucw== 26358 +IEtyaXNobmE= 26359 +IGNvbnNlY3V0 26360 +IGVtcGF0aA== 26361 +IERpbg== 26362 +IHRyYWRlZA== 26363 +IEJvcmlz 26364 +dWdnYWdl 26365 +b2xsYQ== 26366 +INC90LDQt9Cy 26367 +IGV0ZXJuaXR5 26368 +INCy0L8= 26369 +w6htZXM= 26370 +IGdyYXBw 26371 +YsOp 26372 +INC/0YDQtdC00YHRgtCw0LI= 26373 +IEZD 26374 +jeuLiOuLpA== 26375 +ZXZlbg== 26376 +IE5lYnJhc2th 26377 +b3J0dW5l 26378 +IGthcmVuYQ== 26379 +IEFnZW50 26380 +IHN0aW5n 26381 +IFBJ 26382 +IG11bmljaXBhbA== 26383 +cG93ZXJlZA== 26384 +IGNvbnNlZ3Vl 26385 +IE1hbmNoZXN0ZXI= 26386 +IHJhaW55 26387 +IGJsaQ== 26388 +IGtvc3Q= 26389 +IGhhbHRlbg== 26390 +IEFoaGg= 26391 +aW5zdWxh 26392 +ZXJ0aW5n 26393 +INin2YTZgQ== 26394 +IHJlbGFjaW9u 26395 +IGtvbWVu 26396 +IGRvbWU= 26397 +IHByaWVzdHM= 26398 +IEludHJvZHU= 26399 +cm9waGU= 26400 +c2hvcmU= 26401 +dmVsdA== 26402 +Y2xpcHNl 26403 +INGA0YPRgQ== 26404 +15nXoQ== 26405 +IHNhYmVtb3M= 26406 +IEhvbGxhbmQ= 26407 +b2dp 26408 +YW5raQ== 26409 +IE1hdHM= 26410 +IHNtb2tlZA== 26411 +dWxsaWU= 26412 +IGV1cm9wZQ== 26413 +INC00LXQudGB0YLQstC40YLQtdC70YzQvdC+ 26414 +IGJhcmR6aWVq 26415 +IHRyYW5zZm9ybWluZw== 26416 +IEV6 26417 +b3BhdGg= 26418 +IOyWuOuLiA== 26419 +INGB0YLQsNC9 26420 +4bqxbmc= 26421 +4Lix4LmJ 26422 +IE91Y2g= 26423 +IGNsZWFyYW5jZQ== 26424 +dXN0YWlu 26425 +IHNvbGlkYXJpdHk= 26426 +IHByb3Zpbmc= 26427 +INCY0L0= 26428 +INGB0Yo= 26429 +IHByb2xvbmc= 26430 +0LDQtNC90L4= 26431 +IHNvcw== 26432 +IERlYWw= 26433 +IDE3MA== 26434 +bW9ucw== 26435 +INC30LXQvA== 26436 +IGxvZ2dlZA== 26437 +IGxpZmVsb25n 26438 +IHNlbnNvcnk= 26439 +IGJlaG9sZA== 26440 +IEZBUg== 26441 +w6h0ZW1lbnQ= 26442 +IEZlZGVyYXRpb24= 26443 +IGRvZGdl 26444 +IFNoaXI= 26445 +IGRyYWdvbnM= 26446 +IEFyY3RpYw== 26447 +xIXFvA== 26448 +xY0= 26449 +wro= 26450 +IGRlbmtl 26451 +IHBvZHLDrWE= 26452 +Y29sZQ== 26453 +0YPQu9GM0YLQsNGC 26454 +IHN5c3RlbWF0aWM= 26455 +0LDQvNCw 26456 +Y2hvcw== 26457 +IGNsaW5pY3M= 26458 +IEJT 26459 +IHRhbGVz 26460 +dXNpb25z 26461 +IO2IrA== 26462 +IHByZXNlcnZhdGlvbg== 26463 +IGxvcmU= 26464 +IFByb3Rlc3Q= 26465 +4bub 26466 +IGFja25vd2xlZGdlZA== 26467 +IElzYWlhaA== 26468 +IOuVjOuKlA== 26469 +INeY 26470 +IGNvbXBldGl0b3I= 26471 +IGFkdmFuY2luZw== 26472 +emlw 26473 +IHRlbnRo 26474 +IExhdXJl 26475 +IGhpbnRz 26476 +IGV4ZXJjaXNpbmc= 26477 +npzr 26478 +IEludGVsbGlnZW5jZQ== 26479 +dWF0ZWQ= 26480 +T1VU 26481 +b3BlZA== 26482 +IGF1dG9ub215 26483 +IGJyYW5kaW5n 26484 +IE1lZGl0ZXJyYW5lYW4= 26485 +0ZbQug== 26486 +IHNjcmV3ZHJpdmVy 26487 +IHN1cHJl 26488 +IHN0YXA= 26489 +IGp1cmlzZGljdGlvbg== 26490 +IFNldHRpbmdz 26491 +IGZvcmVmcm9udA== 26492 +IEZlbWFsZQ== 26493 +Y29tZm9ydA== 26494 +IG11bHRpcGxpY2F0aW9u 26495 +IE11cnJheQ== 26496 +IGJvYg== 26497 +IFRhcw== 26498 +IHRhaHU= 26499 +IG9udW4= 26500 +ZXR0ZXI= 26501 +IHByb3BoZXRz 26502 +bGFn 26503 +IHJldmVudWVz 26504 +IHByw6E= 26505 +IHVwbG9hZGluZw== 26506 +IG1hY2hpbmVyeQ== 26507 +YXNjYWw= 26508 +IEVzdMOh 26509 +IEdvdGg= 26510 +IEJhbGQ= 26511 +IFNhdw== 26512 +IHN0cmlwZXM= 26513 +7KCR 26514 +IHBvd2lu 26515 +IGhvc3RpbGU= 26516 +IGRhcnVt 26517 +IHByZXZlbnRlZA== 26518 +0L7QttCw0LvRg9C50YHRgtCw 26519 +IGFsZ3VuYXM= 26520 +IGhvcGVsZXNz 26521 +IHpuYWo= 26522 +IHJlYWRpbmdz 26523 +IGNyYXZpbmc= 26524 +dGF0 26525 +IFBpZw== 26526 +IGxpYXI= 26527 +IG11bHRpcGxheWVy 26528 +IGRhbGU= 26529 +IENvdXJzZQ== 26530 +7YG8 26531 +IEtpdGE= 26532 +IGN1c3RvbXM= 26533 +IHJlc3BvbmRz 26534 +ZW5kcmE= 26535 +IG1ldHJv 26536 +0YHQvtC7 26537 +IG1pdGlnYXRl 26538 +IG9wcHJlc3Npb24= 26539 +cXVpbmhv 26540 +IGFtbW8= 26541 +IGVuZmVy 26542 +IHBvbnk= 26543 +IG91bmNlcw== 26544 +sJQ= 26545 +IOyImOqwgA== 26546 +IGRpY2hv 26547 +IERlYg== 26548 +IHdvbmRlcnM= 26549 +IFJvb3Nl 26550 +IHByaXplcw== 26551 +IEFMRVg= 26552 +IHRoYW5rZnVsbHk= 26553 +IHRpc3N1ZXM= 26554 +INGA0LDQstC90L4= 26555 +IEx1bmE= 26556 +aW50ZWxsaWdpYmxl 26557 +IOyZuA== 26558 +6rCR 26559 +IEhlYXQ= 26560 +INGB0LjQtA== 26561 +IFF1aQ== 26562 +IGlvbnM= 26563 +IGFjY29tbW9kYXRpb24= 26564 +IEthcnQ= 26565 +aWVuc3Q= 26566 +IHRhcmRl 26567 +IHNvYWtlZA== 26568 +IENhc2V5 26569 +IOy0nQ== 26570 +INGA0YPQsQ== 26571 +IGRpZmZlcmVudGk= 26572 +IGxlZnRvdmVy 26573 +IGV4Y2hhbmdlcw== 26574 +c2Vjb25k 26575 +IGZpcnN0bHk= 26576 +IGJ1aWxkZXI= 26577 +cmllbg== 26578 +IGR3 26579 +IGJvdW5jaW5n 26580 +Pzwv 26581 +IOuMgO2VtOyEnA== 26582 +INGB0LU= 26583 +IE1pbGVz 26584 +aWVuaWU= 26585 +INC/0L7QtNC/0LjRgQ== 26586 +IOustA== 26587 +IGFyaXNlcw== 26588 +IHN1YmNvbnNjaW91cw== 26589 +IFNhbmR5 26590 +IGxvdHRlcnk= 26591 +4oCR 26592 +YW1pbGlhcg== 26593 +IGNvb3JkaW5hdG9y 26594 +6Iw= 26595 +IGV4dHJhb3JkaW4= 26596 +IFJvbmFsZA== 26597 +IE1PTg== 26598 +Z3JlZW4= 26599 +IG1hbnVmYWN0dXJl 26600 +IFJlY29yZA== 26601 +IE1hcmtldGluZw== 26602 +0LjRhg== 26603 +IGNyZWRlbnRpYWxz 26604 +IHVwcmlnaHQ= 26605 +IEhlcml0YWdl 26606 +IGfDtnJk 26607 +ZXhwZW5zaXZl 26608 +4bqtbg== 26609 +IOyxhA== 26610 +IG91dGxpbmVk 26611 +IE9vb2g= 26612 +b3JpZW50ZWQ= 26613 +IHdpcmVk 26614 +IG91dGxldHM= 26615 +IGh1Z2VseQ== 26616 +IO2WiOuKlOuNsA== 26617 +0LDRgNGC 26618 +IGxvZ2lzdGljcw== 26619 +IHNlYXNvbmFs 26620 +IGRlYmU= 26621 +IHRoZW9y 26622 +IHBpcmF0ZQ== 26623 +YXBweQ== 26624 +IGtub3Rz 26625 +IGZlbW1l 26626 +IFNvZnR3YXJl 26627 +Z2VuZGU= 26628 +0YLQsNC60Lg= 26629 +IHRlbXBsZXM= 26630 +IGxpbWl0YXRpb24= 26631 +IGFtcGxpdHVkZQ== 26632 +IGhhY2Vu 26633 +IGF1ZGk= 26634 +IOuWqA== 26635 +IFdhaGw= 26636 +IG5paA== 26637 +IGFtcGxpZmllcg== 26638 +YXJpdXM= 26639 +aXphZG8= 26640 +YWNoYQ== 26641 +IGt1bGxhbg== 26642 +IFR3aW4= 26643 +IEZvcmNlcw== 26644 +IGFicmly 26645 +IEVQQQ== 26646 +IEFoYQ== 26647 +IOq3uOuemOuPhA== 26648 +IGJpb20= 26649 +INCi0LDQvA== 26650 +IHNhaWxpbmc= 26651 +IEpva2Vy 26652 +Rmlyc3Q= 26653 +fl0= 26654 +b3JzY2g= 26655 +IHbDpnJl 26656 +IGJlZXRqZQ== 26657 +IFNwYcOf 26658 +cG9saXQ= 26659 +IHR1cmJ1bA== 26660 +IOyggO2drOqwgA== 26661 +IGNpYw== 26662 +IERyYWtl 26663 +IEJSSQ== 26664 +aXphw6fDo28= 26665 +IOyeiOuLpA== 26666 +IEx5bm4= 26667 +IHRyYW5zZ2VuZGVy 26668 +IHJlc2lnbg== 26669 +IGNoYXJ0ZXI= 26670 +IEpI 26671 +IEhvbG1lcw== 26672 +IExpcA== 26673 +ZGFz 26674 +IHBlZGlhdHJpYw== 26675 +IG1lbW9yaXpl 26676 +IGV2YWx1YXRpbmc= 26677 +IPCfkA== 26678 +Y2Fr 26679 +IGNvbmp1bmN0aW9u 26680 +IHJlc2VydmVz 26681 +IHNoYW1wb28= 26682 +IGp1ZGdlZA== 26683 +IHdpZHo= 26684 +VklO 26685 +IGFib2FyZA== 26686 +YXJpcw== 26687 +IFJvaA== 26688 +IGNvb2xlZA== 26689 +0YHRgtC1 26690 +Y2Vw 26691 +cm9zdA== 26692 +aG90cw== 26693 +IE1lbGJvdXJuZQ== 26694 +0L7Rh9GM 26695 +IHZlbnRpbA== 26696 +0LjQvdC+0LI= 26697 +IG1vdGlvbnM= 26698 +7JeI64qU642w 26699 +0LzQtdGA0LjQug== 26700 +IENoYXQ= 26701 +IGdvdXZlcm5lbWVudA== 26702 +IEtpdm9s 26703 +IEtpdm9sb3dpdHo= 26704 +IG7Ds2k= 26705 +INC60YPQtNCw 26706 +IGh5ZHJhdWw= 26707 +IEJlcmc= 26708 +eWx1bQ== 26709 +IFByw6RzaWRlbnQ= 26710 +cm9weQ== 26711 +IHNlbWlj 26712 +0Y/QtdGC 26713 +IENhcGU= 26714 +IGNhbmU= 26715 +IGJyaW5nZW4= 26716 +IHdpcmluZw== 26717 +dW55YQ== 26718 +IHJlcGF5 26719 +qqk= 26720 +IHdvbnQ= 26721 +w6FudA== 26722 +IGdvdmVy 26723 +IExpYmVydHk= 26724 +IGVsZWN0cm9tYWdu 26725 +IFNpbmdo 26726 +INCz0YDRg9C/ 26727 +0LPQvtCy 26728 +iOustOs= 26729 +IFJ1bGU= 26730 +IHVuZGVyd2F5 26731 +IEZyZWRlcg== 26732 +IHR1cmJpbmU= 26733 +aXNoaQ== 26734 +IGbDrXM= 26735 +IEN1bHR1cmU= 26736 +YWNyZQ== 26737 +IHdhbmRlcg== 26738 +IGd1ZXJyYQ== 26739 +IHPDtnk= 26740 +IEp1cg== 26741 +YXdheXM= 26742 +IHNjaHdpZXI= 26743 +Z3VhcmQ= 26744 +IEFiZA== 26745 +dWN0aW9u 26746 +IGFya2FkYcWfbGFy 26747 +IEhhbWI= 26748 +Py4= 26749 +c2l6ZQ== 26750 +IE9ydGg= 26751 +IHN3YXk= 26752 +IM6U 26753 +IGFic29ycHRpb24= 26754 +aW5lZXM= 26755 +IHBhdHJvbnM= 26756 +IGJlYWNoZXM= 26757 +R0c= 26758 +IGNvbnRhbWlu 26759 +aW50ZW5kZW50 26760 +INC90YDQsNCy 26761 +INC00LXRgNC2 26762 +IHF1aWx0 26763 +IGV2b2x1dGlvbmFyeQ== 26764 +7J206528 26765 +YXppb25p 26766 +IGVya2w= 26767 +IEJ1dGxlcg== 26768 +IGRvbw== 26769 +IG5lZ290aWF0aW9u 26770 +ZW5kdW0= 26771 +IHRlcm1pbm9sb2d5 26772 +IGt1bA== 26773 +IFVudGVybmVobWVu 26774 +w6lyaWM= 26775 +eGk= 26776 +YmFk 26777 +INC00L7Qu9C20L3Riw== 26778 +IE1pdGNoZWxs 26779 +dGhyZWU= 26780 +IHN1YnN0cmF0ZQ== 26781 +IEluaGFsZQ== 26782 +IEFncmlj 26783 +dW5nZQ== 26784 +INC30YA= 26785 +IGFkdmVyc2U= 26786 +IOyggOuPhA== 26787 +IHBpbGxhcg== 26788 +IE1pbnV0ZW4= 26789 +IE1hdGU= 26790 +IFBsYXR6 26791 +IGhlbHBsZXNz 26792 +IGFsYXI= 26793 +IGZyZW5jaA== 26794 +IGFsbG9jYXRpb24= 26795 +IHN0ZW1z 26796 +IG1hcmF0aG9u 26797 +IEhBUkY= 26798 +aXphY2nDs24= 26799 +SmVzcw== 26800 +INC30L3QsNGH 26801 +IGRlY2xhcmF0aW9u 26802 +RUVSSU5H 26803 +c3RlcmRhbQ== 26804 +YXNzaXVt 26805 +IHNlaXo= 26806 +IHByZXNpZGVudHM= 26807 +dGFrZQ== 26808 +IHdpbGRlcm5lc3M= 26809 +IGNvc21pYw== 26810 +IOuqqOuRkA== 26811 +c3Rybw== 26812 +IHBvd2llZHo= 26813 +IE1hZ2F6aW5l 26814 +IFZJ 26815 +INC00LXRgA== 26816 +IHfDvHJkZW4= 26817 +IHRhYmxldHM= 26818 +IHBpZXJ3cw== 26819 +IG1vcnRhbA== 26820 +IHN1cHBsaWVk 26821 +IE7Ds3M= 26822 +IFByb3Blcg== 26823 +INC60LDQttC00YvQuQ== 26824 +b2zDs2c= 26825 +67Cp 26826 +IG1pc2Nvbg== 26827 +IHByb3hpbWl0eQ== 26828 +IEFsbGVz 26829 +INCz0LvQsNC3 26830 +IGxhbWU= 26831 +IHZpYmVz 26832 +IGRlZW1lZA== 26833 +IHVyaW5l 26834 +IHJlbWluZGluZw== 26835 +IGNpcmN1bXN0YW5jZQ== 26836 +65Ok7J20 26837 +IGxhcHRvcHM= 26838 +wrI= 26839 +7ZW07JW8 26840 +IE9tZWdh 26841 +Tlk= 26842 +IHB1bXBz 26843 +IHJhaWxz 26844 +IHN1cnBhc3M= 26845 +IEJyb3M= 26846 +IG5hdGlvbmFsbHk= 26847 +IGdld2VzZW4= 26848 +s7Tri6Q= 26849 +b3NoaW5n 26850 +6rCI 26851 +IGNyaWFu 26852 +IOyCrOuejOydtA== 26853 +Y2F1c3Q= 26854 +0YbQuNC/ 26855 +IE9iZXI= 26856 +IERBWQ== 26857 +IENhbm9u 26858 +enVuZw== 26859 +IOqwlg== 26860 +INCw0LLRgtC+0Lw= 26861 +IGRpdm9yY2Vk 26862 +15nXpA== 26863 +z4HOtQ== 26864 +Y2VsYW5k 26865 +Y2llcg== 26866 +0YDQtdC3 26867 +VG9kYXk= 26868 +IG9yYml0YWw= 26869 +IHN0cmV0 26870 +IHNhdHU= 26871 +IO2BrOs= 26872 +em9z 26873 +IFNjbw== 26874 +zrzOrQ== 26875 +IEd1YXJkaWFu 26876 +aW50ZXJlc3Q= 26877 +IFZFUg== 26878 +w7xuZGVu 26879 +INGF0L7RgtC10Ls= 26880 +dGl0 26881 +Qnk= 26882 +IGFubGF0 26883 +U2hvdw== 26884 +IG9pbHk= 26885 +IGxlZ2VuZHM= 26886 +IHNwZWN1bGF0aW9u 26887 +IFdpc2g= 26888 +IG1vbms= 26889 +R0FO 26890 +IGjhu40= 26891 +IGRhbmdlcnM= 26892 +IEJlbmU= 26893 +aXF1ZW1lbnQ= 26894 +IOuCmOyZgA== 26895 +INCw0LQ= 26896 +IGRpc2NyZXRl 26897 +w4c= 26898 +IGNvbmRpdGlvbmFs 26899 +IEdpbGw= 26900 +dWF0ZXM= 26901 +INGB0L7QstGB0LXQvA== 26902 +IHNjcmVlbnNob3Q= 26903 +Y2Fkbw== 26904 +IOuqqOuToA== 26905 +IGZpbmdlcnRpcHM= 26906 +IE1BQw== 26907 +IGR1ZGVz 26908 +Y29zdA== 26909 +IGJ1bXBz 26910 +b25kbw== 26911 +IGRhdG9z 26912 +IGJlZXBz 26913 +IFByb24= 26914 +IEtoYWw= 26915 +emVnbw== 26916 +IEFiYnk= 26917 +VWg= 26918 +WW8= 26919 +IFRlbA== 26920 +IM68zq0= 26921 +S0k= 26922 +IHN0cmVzc2Vz 26923 +IHNwcmVhZHNoZWV0 26924 +IE5PVw== 26925 +REI= 26926 +IGxpYmVyYXRpb24= 26927 +IHByZWRpY3RhYmxl 26928 +IFF1ZXN0aW9ucw== 26929 +IHNwYWNpbmc= 26930 +IGluaGFiaXRhbnRz 26931 +IHp3acSFeg== 26932 +IFNBUA== 26933 +IGx1Z2dhZ2U= 26934 +IGhpcHA= 26935 +6JY= 26936 +IHRhbmdlbnQ= 26937 +IHbDpQ== 26938 +0LDQu9GM0L3QvtC5 26939 +c2VoZW4= 26940 +IHByb2Nlc3NvcnM= 26941 +IGZpbmRldA== 26942 +IGNhcnRyaWRnZQ== 26943 +IGFkbWluaXN0cmF0b3Jz 26944 +IOyWtOya 26945 +IHN1cHJlbWU= 26946 +IEFudGk= 26947 +IO2UhOuhnA== 26948 +IGluZm9ybWF0aXZl 26949 +IGtvbXQ= 26950 +15nXmA== 26951 +QXNzaXN0YW50 26952 +IGxpc3Rh 26953 +w7ZsbA== 26954 +IGRpc3RpbmN0aXZl 26955 +IEh1ZA== 26956 +IHNhbG9u 26957 +bcOqbWU= 26958 +IE1vdGlvbg== 26959 +IHNldWxlbWVudA== 26960 +IE1lbnNjaA== 26961 +IHB1bXBlZA== 26962 +w7xoZXI= 26963 +aWJv 26964 +IHdhxbw= 26965 +IHF1YW50aXRhdGl2ZQ== 26966 +2b4= 26967 +IOuqqOyKtQ== 26968 +IHBvdWNo 26969 +IFRoZWF0cmU= 26970 +YWhp 26971 +IHNwaW5hY2g= 26972 +IHJlYWxpdGllcw== 26973 +IGxleQ== 26974 +IE1hcnRoYQ== 26975 +IHJlY2hlcg== 26976 +ZWNoZXM= 26977 +IHBlcmlvZGlj 26978 +b2NpZGU= 26979 +IEluY3JlZA== 26980 +IHRo4bqleQ== 26981 +b3Rvbg== 26982 +IEVzbw== 26983 +IGfDqW7DqXJhbA== 26984 +aWxpZ2h0 26985 +IGltYWdpbmluZw== 26986 +aGVh 26987 +ZXRpY2Fs 26988 +4but 26989 +IERlbW9rcmF0 26990 +IGVuam8= 26991 +IGFkanVzdGFibGU= 26992 +IHJhaW5z 26993 +aWV3YcW8 26994 +IGp1c3RlbWVudA== 26995 +IGp1c3RpZmllZA== 26996 +IFNoYWtl 26997 +dml2 26998 +7IKs66W8 26999 +IG1ldHQ= 27000 +IEVudmlyb25tZW50YWw= 27001 +IHNvbGFtZW50ZQ== 27002 +IGludGVyc2VjdA== 27003 +IDE5ODg= 27004 +IHNpbXVsYXRl 27005 +SkE= 27006 +INC30LDRgQ== 27007 +IGNvbnRpbmc= 27008 +IFRlaw== 27009 +IHRvcmNo 27010 +INC00YDRg9Cz0L7QuQ== 27011 +IGluc2NyZQ== 27012 +IG1vZGVsbw== 27013 +IEdlZw== 27014 +IERlbW9jcmF0 27015 +0LrQsg== 27016 +IEJ1ZGR5 27017 +IHJlZHVuZA== 27018 +IGNyYWZ0cw== 27019 +IEhpag== 27020 +IGp1ZQ== 27021 +IEtpcms= 27022 +IGthYg== 27023 +4buj 27024 +IGFlc3RoZXQ= 27025 +IEpPTg== 27026 +IHN1cGVyY29t 27027 +INGB0LjRgtGD 27028 +IM+Mz4TOuQ== 27029 +2YXZhg== 27030 +IEVWRVI= 27031 +7JWY7Ja0 27032 +b2l0 27033 +IENsZXZlbGFuZA== 27034 +IHNpeHRlZW4= 27035 +IHdhdGVyZmFsbA== 27036 +77g= 27037 +aW5mbA== 27038 +IGNvdW5zZWxvcg== 27039 +IFB1bms= 27040 +IHNwcmVjaGVu 27041 +ZXhj 27042 +IFNraWxscw== 27043 +cm96 27044 +YWRhbWVudGU= 27045 +IHBhbmNha2Vz 27046 +6riw66Gc 27047 +IHBsYW5r 27048 +IHNvdmVyZWlnbnR5 27049 +IGZ1aQ== 27050 +INC90LXQvtCx 27051 +IFdpaQ== 27052 +IFNjaG9s 27053 +4oCO 27054 +IFNwZWFr 27055 +Y2lsaWF0aW9u 27056 +IHRoaWdo 27057 +IOqxsOydmA== 27058 +IGpvdA== 27059 +IOy0rOyYgQ== 27060 +INmF24zaug== 27061 +IENDUA== 27062 +INC/0L7RgdGC 27063 +IG9ic2VydmVy 27064 +w6Fi 27065 +IHN0aWdtYQ== 27066 +IHByb3ByaWV0 27067 +IGNpZGFkZQ== 27068 +IGJhxZ9rYQ== 27069 +2LnYqQ== 27070 +a3Jl 27071 +IHBvd2llZHppZcSH 27072 +IGNlYXNl 27073 +IHNraW5z 27074 +IHZlZ2dpZXM= 27075 +IG9wcG9zaW5n 27076 +b3BvbHk= 27077 +IEp1Zw== 27078 +IFlvb24= 27079 +IFVuaXQ= 27080 +IDE5ODY= 27081 +IGtvbnM= 27082 +IGRpYWdub3N0aWM= 27083 +IGVtcG93ZXJlZA== 27084 +IHRobw== 27085 +IGNlbg== 27086 +w6lyYXRpb24= 27087 +INGX 27088 +IHBoeXNpYw== 27089 +IFByYWN0aWNl 27090 +IFNvdXRoZWFzdA== 27091 +IEVzcGE= 27092 +IEdlb3I= 27093 +cm9wb3J0aW9u 27094 +IHNwZWNz 27095 +IGFkYXB0aXZl 27096 +IFVuaXR5 27097 +IFdvcmtz 27098 +dWdlbg== 27099 +IE1vbnRhbmE= 27100 +VGhhbmtz 27101 +IHdoaXBwZWQ= 27102 +IGR1bmdlb24= 27103 +IHZpdGFtaW5z 27104 +U1A= 27105 +IHNjYW5kYWw= 27106 +IGRpbmVybw== 27107 +b3Zh 27108 +IGVtYnJv 27109 +IEVhZ2xl 27110 +IHRoZW9sb2d5 27111 +IFZhbmVzc2E= 27112 +IEFJRFM= 27113 +65Cc 27114 +IGZyZWVs 27115 +IEFsemhlaW1lcg== 27116 +IMWa 27117 +SGVy 27118 +IHRvcm5hZG8= 27119 +YWdlbnM= 27120 +IOyeiOyWtOyEnA== 27121 +IFRyYW5zZm9ybQ== 27122 +IHByb2Nlc3Nv 27123 +IG1pbGxpc2U= 27124 +IHByb2Zlc3Npb25hbGx5 27125 +IG1lbWI= 27126 +b2NhdGlvbg== 27127 +IHN0eWxpbmc= 27128 +INC+0LHRj9C3 27129 +IE9wZXJhdGlvbg== 27130 +IHd5Z2w= 27131 +IFJhbg== 27132 +IEtpbg== 27133 +4buxYw== 27134 +IEJBUg== 27135 +IHBhcGVyd29yaw== 27136 +IHR1bGU= 27137 +IHF1ZXJpYQ== 27138 +IGNvbXBseQ== 27139 +IEhhaXI= 27140 +15nXmw== 27141 +INC/0YDQvtGB0YI= 27142 +IG11dGF0aW9u 27143 +IHJlcHLDqXM= 27144 +IG9jdG9wdXM= 27145 +IGltcG9ydGFudGVz 27146 +IGRlc2VydmVk 27147 +ZXRy 27148 +IGRpc2FzdGVycw== 27149 +bMSxbmRh 27150 +aXF1w6k= 27151 +IERlc2hhbGI= 27152 +c29v 27153 +b3NzaXA= 27154 +IHJlbGlldmVk 27155 +IENvbGxpbnM= 27156 +IHdhdGVycHJvb2Y= 27157 +IFl1aw== 27158 +IGNvcHlpbmc= 27159 +IGLDvHTDvG4= 27160 +IEhldXRl 27161 +IEVudHJl 27162 +IHJlc2lkdWFs 27163 +IGNvbG9uaWVz 27164 +IMOpbm9ybQ== 27165 +IEVyaW4= 27166 +IHN0YW4= 27167 +IHRyZW1lbmRvdXNseQ== 27168 +IGNhcHR1cmVz 27169 +IFNhaQ== 27170 +w6JjZQ== 27171 +IG1pYcWC 27172 +IDg3 27173 +IGxvZ2dpbmc= 27174 +IGluc2VydGVk 27175 +IGluaGVyZW50bHk= 27176 +7J2R 27177 +bGF2ZQ== 27178 +0L3QuNGH 27179 +IGZlbW1lcw== 27180 +IGTDqXA= 27181 +dWtz 27182 +YWNpYQ== 27183 +IFdhZGU= 27184 +IGppag== 27185 +IFZpbmNlbnQ= 27186 +IEljZWxhbmQ= 27187 +aGVt 27188 +IGFwb2xvZ3k= 27189 +IFBlZw== 27190 +IGdsdWVk 27191 +IGNvbXBhbmlvbnM= 27192 +IExpdmVy 27193 +IGNyaXRpY2l6ZWQ= 27194 +bGVhZGluZw== 27195 +IHPDpGdh 27196 +IHNxdWlk 27197 +IG5hcnJhdGl2ZXM= 27198 +IHRha2E= 27199 +bmV6 27200 +d2VpdA== 27201 +IHRyaXBvZA== 27202 +IGV4cGxpYw== 27203 +IHNwaW5hbA== 27204 +IGFwcHJveGltYXRpb24= 27205 +IHBhZ2Fy 27206 +IENhbHZpbg== 27207 +INCy0LXQtNGM 27208 +IGxhYw== 27209 +IHByb2FjdGl2ZQ== 27210 +IFRyYWlu 27211 +b3Jm 27212 +IHN0ZW4= 27213 +IGdyYXBlcw== 27214 +IG1ldXM= 27215 +IGF1dG9tYXQ= 27216 +IGJpYXNlZA== 27217 +IGNoYcOubmU= 27218 +Y29hbA== 27219 +IHJlbmNvbnQ= 27220 +IEt1bQ== 27221 +IGZlc3RpdmFscw== 27222 +IHN0YXJ0dXBz 27223 +IGFrYQ== 27224 +IGN5bGluZA== 27225 +c25h 27226 +Q1JJ 27227 +IHJlc3VsdGFkbw== 27228 +IG1pbGVzdG9uZQ== 27229 +IM+F 27230 +IHRlbGVwb3J0 27231 +enljaA== 27232 +NjI= 27233 +IEZlYXI= 27234 +IG51Y2xldXM= 27235 +IHNoaW5lcw== 27236 +aG92 27237 +IFBhcnRuZXJz 27238 +IEthcw== 27239 +IG5hZGll 27240 +IGFsZXJ0cw== 27241 +IEJJTEw= 27242 +c3Ryb25n 27243 +IE5hdGU= 27244 +IERlbm1hcms= 27245 +IENhdg== 27246 +T1NU 27247 +aMOkbHQ= 27248 +IOyVhOuLjA== 27249 +YW55b24= 27250 +IGVuY291cmFnZXM= 27251 +INC/0L7RgdGC0LDQsg== 27252 +IEh1YW5n 27253 +U1RB 27254 +IHBhaW50cw== 27255 +IHNjaGVkdWxlcw== 27256 +IGNoZWF0ZWQ= 27257 +IGFwcHJveA== 27258 +IO+3 27259 +IMK7Lg== 27260 +IHNtaWxlcw== 27261 +aXN1cmU= 27262 +IG5lcmVk 27263 +YXJkZW4= 27264 +IGN1cnQ= 27265 +IOuM 27266 +IFJvdGg= 27267 +IHB1aXNxdWU= 27268 +IEdFVA== 27269 +IFZlZ2V0 27270 +IHByb2R1eg== 27271 +IEJlbGdpdW0= 27272 +IENhbXB1cw== 27273 +16jXmded 27274 +aWN1dA== 27275 +INGB0L3QuNC8 27276 +IHLDqXVzcw== 27277 +IHNsaXBwZXJ5 27278 +IEV3 27279 +xbM= 27280 +IExlZ2VuZHM= 27281 +IFRpZmZhbnk= 27282 +0LDQu9C40Lc= 27283 +INC/0LXRgNC10LI= 27284 +INC+0LPRgNC+0Lw= 27285 +IGNyb3M= 27286 +IENF 27287 +QnU= 27288 +IGVuc3VyZXM= 27289 +IGdyYW5kY2hpbGRyZW4= 27290 +IGFjdWVyZG8= 27291 +IHByaXNvbmVy 27292 +IHRoaXJzdHk= 27293 +YmFuZQ== 27294 +IOu5oA== 27295 +IMO6bHRpbWE= 27296 +IExhdW5jaA== 27297 +bml0eQ== 27298 +IGNvbWJ1c3Rpb24= 27299 +IHVuaWNvcm4= 27300 +IGZhbWlsbGU= 27301 +IGxvd2VyaW5n 27302 +IFlpbmc= 27303 +YnVpbGRpbmc= 27304 +IGR1bw== 27305 +IE3DqXhpY28= 27306 +YXN0aWFu 27307 +IOuoueydhA== 27308 +IFJhbHBo 27309 +IHJld3JpdGU= 27310 +IGdsYW0= 27311 +aWZpcXVl 27312 +RXI= 27313 +IFJ1bm5pbmc= 27314 +0L7QvdC+0LI= 27315 +IG1lYW5pbmdz 27316 +IGNoZXd5 27317 +IExlc2xpZQ== 27318 +IGZpbmVzdA== 27319 +IGhhaGFoYQ== 27320 +IFNURVA= 27321 +IGxvbmVsaW5lc3M= 27322 +cmlhbnM= 27323 +IHF1ZXN0aW9uZWQ= 27324 +IGVzcXVl 27325 +IHNpbmtpbmc= 27326 +IHBlc28= 27327 +IFdyb25n 27328 +YXNtaW5l 27329 +IGRlZmluaXRpdmU= 27330 +IGJ1eXM= 27331 +IGNydWM= 27332 +Y29vbA== 27333 +IOugiA== 27334 +IHDDsw== 27335 +IHV0aWxpemVk 27336 +IHdvcnRod2hpbGU= 27337 +IER5bGFu 27338 +RVNF 27339 +IHZlcnRleA== 27340 +dMSx 27341 +IEZpcg== 27342 +IHphdw== 27343 +IEdlZA== 27344 +INCd0LDQvw== 27345 +ZHo= 27346 +IGN1cnNvcg== 27347 +IHN3aXBl 27348 +IGluZXZpdGFibHk= 27349 +IHBvc3RlcnM= 27350 +IGluY2xpbmVk 27351 +IGdyZWV0aW5n 27352 +IGRpc2FwcG9pbnRtZW50 27353 +IHJlbGHDp8Ojbw== 27354 +VFQ= 27355 +IHJhYmI= 27356 +IE1haW5l 27357 +IGFuYWx5emVk 27358 +RkU= 27359 +INCf0L7Quw== 27360 +IFNhbmRyYQ== 27361 +IHBsYWd1ZQ== 27362 +QVJF 27363 +IHbDpHI= 27364 +IFZpdg== 27365 +dW1lZA== 27366 +aGFuZG8= 27367 +aG91ZXR0ZQ== 27368 +IEJhaWxleQ== 27369 +eXNvbg== 27370 +IHNlbXVh 27371 +IGhhcmRjb3Jl 27372 +4oKs 27373 +0ZbQvA== 27374 +w6lyYQ== 27375 +T1RI 27376 +IGZvcmVpZ25lcnM= 27377 +IFBhbGVzdGluaWFu 27378 +IHByb3ByaW8= 27379 +0LDQvdC40Lk= 27380 +IG15dGhz 27381 +V0g= 27382 +IG5pbnRo 27383 +IENyZWF0b3I= 27384 +0LvQvtC8 27385 +IEZsaXA= 27386 +IGVtYW4= 27387 +IGtpxZ8= 27388 +emllaA== 27389 +IEVhcm5lc3Q= 27390 +c3lzdGVt 27391 +luyXkA== 27392 +IGFybWllcw== 27393 +IE91dHNpZGU= 27394 +IGhhcnVz 27395 +0L7QtNCw0YA= 27396 +IHZpc2l0b3I= 27397 +IHN0cmVuZ3RoZW5pbmc= 27398 +IDky 27399 +dmlv 27400 +IOumrA== 27401 +IGdyZWVkeQ== 27402 +IHBvcXVpdG8= 27403 +dWRlcg== 27404 +IEtvcGY= 27405 +IOuLpOydjOyXkA== 27406 +IHNlaXM= 27407 +w6F0aWNv 27408 +IHRydXN0aW5n 27409 +w61w 27410 +IEVtbQ== 27411 +bGVlbg== 27412 +INin2YTZhg== 27413 +IHJlY3J1aXRtZW50 27414 +IEZpbGlw 27415 +INmD2YQ= 27416 +Q2xpbnQ= 27417 +INCy0LXRgQ== 27418 +YXVmdA== 27419 +IGRvbWluYXRl 27420 +IHJlc3Rv 27421 +IGtyYQ== 27422 +w6Fp 27423 +IENhaXQ= 27424 +cm93cw== 27425 +IGNvdW50cnlzaWRl 27426 +IDE5NDU= 27427 +0LDRhtC40Y4= 27428 +INC00Lg= 27429 +IGtlcm5lbA== 27430 +bG92 27431 +IGNhbGN1bGF0aW5n 27432 +2K/Ypw== 27433 +IFdhbHQ= 27434 +IGVtcG93ZXJpbmc= 27435 +IGNoYXNzaXM= 27436 +bGluZWFy 27437 +0LPRgw== 27438 +IG5vdmE= 27439 +IHV5 27440 +IDY5 27441 +IGVuY29tcGFzcw== 27442 +dHJs 27443 +IGNvbXB1dGF0aW9uYWw= 27444 +IHdvcm1z 27445 +IG5oaeG7gXU= 27446 +IGFzdHJvbmF1dHM= 27447 +IHZlcw== 27448 +IHN5dHU= 27449 +IGRlbWFuZGVk 27450 +IGNz 27451 +IE1vbA== 27452 +IGA= 27453 +IGNoYW50 27454 +IHRoZXJlYnk= 27455 +IHBlbmlz 27456 +IGVtb2M= 27457 +d3lu 27458 +0YPQttC1 27459 +IHRyZWFk 27460 +w7NsZQ== 27461 +IGRlZXBlc3Q= 27462 +IG1hY2hl 27463 +IFZlbnQ= 27464 +IEFtc3RlcmRhbQ== 27465 +IHJlYmVs 27466 +IDYx 27467 +INCy0LrRg9GB 27468 +dWZmcw== 27469 +IGRvxJ9ydQ== 27470 +IE5hcG9sZQ== 27471 +zq7Pgw== 27472 +IHdvcmtvdXRz 27473 +IEdsYWQ= 27474 +0L3QtdGB 27475 +IHRlbnNpb25z 27476 +IFNoaWZ0 27477 +IEd1ZXI= 27478 +7YyQ 27479 +IOy5nOq1rA== 27480 +0JY= 27481 +IGltcGxhbnQ= 27482 +w6p1 27483 +6riA 27484 +IGF1dGhvcml6ZWQ= 27485 +Q0VS 27486 +IFJW 27487 +IGhpbA== 27488 +bGV2 27489 +Y2ltZW50bw== 27490 +IFVGTw== 27491 +7IOI 27492 +d29y 27493 +IGRhbmNlcw== 27494 +IFBpeGVs 27495 +IHRyb3R6ZGVt 27496 +IG9idGVu 27497 +IEFsZnJlZA== 27498 +IGNvc3RseQ== 27499 +IFN0YW5sZXk= 27500 +IHRlcnJvcmlzdHM= 27501 +IFdpZA== 27502 +heuLiOuLpA== 27503 +IGxlaWNodA== 27504 +7J207Iqk 27505 +IGRvYnJ6ZQ== 27506 +IGhlc2l0 27507 +IGVyesOkaA== 27508 +IGVpbmlnZQ== 27509 +IGhlYnQ= 27510 +0YHQtQ== 27511 +IHVucHJlZGljdA== 27512 +Q8OzbW8= 27513 +cmVtb3M= 27514 +IFRoYW5rZnVsbHk= 27515 +IHB1cnNl 27516 +Y2hz 27517 +YW5jZXI= 27518 +dWxvcw== 27519 +c3R1ZA== 27520 +IG5ldXJvbG9n 27521 +IEFuY2llbnQ= 27522 +T3V0 27523 +YXdzemU= 27524 +IG9wcG9zZQ== 27525 +IGFudGlib2RpZXM= 27526 +IFNvbWVob3c= 27527 +cm9wb2xpdGFu 27528 +a3Rvcg== 27529 +INGB0YLQvtGA0L7QvdGL 27530 +IHJvY2tldHM= 27531 +IGRpc2FibGU= 27532 +IGNhdGFzdHJvcGg= 27533 +tOye 27534 +IGN5bg== 27535 +INC00YDRg9C30YzRjw== 27536 +IGluc3RydWN0b3Jz 27537 +ZW1hYWw= 27538 +IGV0d2E= 27539 +IHl1YW4= 27540 +IEdyb3VuZA== 27541 +IHByZW1pZXJl 27542 +0YfQuNCy 27543 +IHNhaW50 27544 +eWJh 27545 +IGtvaw== 27546 +IGNvbnRyYWN0b3Jz 27547 +IOqwgQ== 27548 +INeQ15w= 27549 +IGhlYWRsaW5l 27550 +IGNvbXBsZXRhbWVudGU= 27551 +IGluZXhwZW5zaXZl 27552 +IHZpdQ== 27553 +IEdyYW5kZQ== 27554 +IGJsZWVk 27555 +66y8 27556 +IDcz 27557 +IHRvZGF2w61h 27558 +IFJ1c2g= 27559 +IEVsZGVy 27560 +6rCA64qU 27561 +IFJvdQ== 27562 +INC20LXQvdGJ 27563 +IE1pcmE= 27564 +IGRlaW5l 27565 +IGthcm1h 27566 +IHVtbQ== 27567 +IGVudHNjaGU= 27568 +IEhvbG9jYXVzdA== 27569 +IGRpc2NvdmVyaWVz 27570 +YW1lbnRz 27571 +IHJhaXNvbg== 27572 +IGJ1cmdlcnM= 27573 +QmFjaw== 27574 +IGdkeQ== 27575 +IEFH 27576 +IERhdw== 27577 +7JWg 27578 +aGVhZGVk 27579 +IENsYXI= 27580 +SW5zdA== 27581 +IExpZXV0ZW5hbnQ= 27582 +IEFmRA== 27583 +IENlcw== 27584 +IHBlcnNvbmFsaXplZA== 27585 +IGludGVyZmFjZXM= 27586 +4LiI4Liw 27587 +INGA0LXQtg== 27588 +IHN1aWM= 27589 +IHN0YXJ2aW5n 27590 +IG94aWRl 27591 +IGRlY29yYXRlZA== 27592 +IERV 27593 +IOyYiOyBmA== 27594 +IHF1bw== 27595 +IGRpc3RvcnRpb24= 27596 +IOuoueyWtOs= 27597 +IHN0YWtlcw== 27598 +IHN5bnRheA== 27599 +IGJp4bq/dA== 27600 +dGh5 27601 +aWNpZQ== 27602 +IGJyYXNpbGU= 27603 +aXNpcw== 27604 +UkM= 27605 +IHNob29r 27606 +IGRlcHRocw== 27607 +IENvc3Rh 27608 +IHZvY2Fscw== 27609 +IGNvYXN0ZXI= 27610 +IGZhbG91 27611 +ZXR0bGU= 27612 +IGtlbm5lbg== 27613 +IGRlcml2ZQ== 27614 +IGFpZHM= 27615 +INCd0LjQug== 27616 +IGVudHdpYw== 27617 +IHZlcnRpY2FsbHk= 27618 +IM0= 27619 +IFNVVg== 27620 +IGZpcmV3b3Jrcw== 27621 +IHNwZWNpZmljcw== 27622 +IGluc2lzdGVk 27623 +IGRlc2hhbGI= 27624 +IEdvbno= 27625 +bG92ZQ== 27626 +IE1pbGl0YXJ5 27627 +IFBpZXJyZQ== 27628 +IOKI 27629 +IFdob3Nl 27630 +IHBlcmZ1bWU= 27631 +IM+AzrU= 27632 +IGxvd2VyZWQ= 27633 +IGNyb3NzZXM= 27634 +IHRyYW5zbGF0ZXM= 27635 +IGFycmliYQ== 27636 +w61kbw== 27637 +IExldg== 27638 +IENpYW8= 27639 +IHNjaG9sYXJzaGlwcw== 27640 +IGdlc3R1cmVz 27641 +INGA0LXQt9GD0LvRjNGC0LDRgg== 27642 +IHF1ZXN0w6Nv 27643 +IENvbG9uZWw= 27644 +IEJvdHQ= 27645 +2LHZgQ== 27646 +TklORw== 27647 +IFdhdGNoaW5n 27648 +IFB1cnBsZQ== 27649 +0YHRgtGA0LDQvQ== 27650 +IGV4ZWN1dGl2ZXM= 27651 +IEtyaXM= 27652 +b3JuZXlz 27653 +0LXQvdC90YvQuQ== 27654 +IGNvYXRlZA== 27655 +xKk= 27656 +IHBhcmtlZA== 27657 +INGB0LLQtdGC 27658 +ISEhISE= 27659 +IEZsb3lk 27660 +xLFzxLE= 27661 +emnEhw== 27662 +IG1vdGl2YXRl 27663 +IEVsb24= 27664 +bGVhbg== 27665 +hpM= 27666 +IGlw 27667 +IG5pxbw= 27668 +IEV4cGVyaWVuY2U= 27669 +IFRpbmE= 27670 +IEtvbGxlZ2U= 27671 +IEFtYmFzc2Fkb3I= 27672 +aW55YQ== 27673 +IHRoZWZ0 27674 +IGhldXJlcw== 27675 +IE15c3Q= 27676 +IG1haXNvbg== 27677 +bGVi 27678 +IGJvd2xz 27679 +IELDvHJnZXI= 27680 +IFJvb3NldmVsdA== 27681 +UlA= 27682 +6rCA7JqU 27683 +IERlbGljaW91cw== 27684 +ZXJkaW5ncw== 27685 +IEFzc29jaWF0ZQ== 27686 +b3Vzc2U= 27687 +IENvcnQ= 27688 +IFJlcGVhdA== 27689 +IEdsb3J5 27690 +IGNvbnRhZw== 27691 +4LmA4Lil 27692 +IFBhcmFk 27693 +IEtlcnJ5 27694 +IOq/ 27695 +IFdhdmU= 27696 +IGdhdGV3YXk= 27697 +IeOAjQ== 27698 +IHRyYW5zY2VuZA== 27699 +IGRhbWFnZXM= 27700 +IHRhaWxz 27701 +IGdyYXZpdGF0aW9uYWw= 27702 +IFNoaWVsZA== 27703 +IHByaW1pdGl2ZQ== 27704 +IGNhcnJpZXJz 27705 +IEh1YXdlaQ== 27706 +2YLYrw== 27707 +IGZlbGl6 27708 +IE1pYQ== 27709 +INC/0YDRj9C80L4= 27710 +INC/0YDQvtC40YHRhdC+0LTQuNGC 27711 +IE11cnBoeQ== 27712 +IEFjdGl2 27713 +IGRpc2NvbWZvcnQ= 27714 +15HXlA== 27715 +IEtlbGw= 27716 +IENlbnR1cnk= 27717 +IHNwYWdoZXR0aQ== 27718 +IER1cmNo 27719 +IGNpZXJ0bw== 27720 +IEVtcHJlc3M= 27721 +IGd1dHM= 27722 +bmVn 27723 +INC00L7RgdGC0LDRgtC+0YfQvdC+ 27724 +IHZvbHVudGFyeQ== 27725 +IHNxdWlycmVs 27726 +IE1heg== 27727 +tOyLrA== 27728 +INCy0Lg= 27729 +INGC0LDQutC40YU= 27730 +IFNoYXJvbg== 27731 +IGVudGh1c2lhc3RpYw== 27732 +aXJlbWVudA== 27733 +IO2emOuTpA== 27734 +IHBvdHJ6ZQ== 27735 +IGluaXRpYXRlZA== 27736 +IMWbcm9k 27737 +IOydtOumhA== 27738 +IHJlbWFrZQ== 27739 +IGN1bG1pbg== 27740 +IGNvbmZ1c2U= 27741 +bWl5b3I= 27742 +dXJhcg== 27743 +Q1RPUg== 27744 +IGJ1bm55 27745 +ZWxw 27746 +IHZhbXBpcmU= 27747 +IGlsbHVtaW4= 27748 +IEhlbmQ= 27749 +INC60LDRh9C1 27750 +IFNhbHY= 27751 +INC60LDQvdCw0Ls= 27752 +IHBvcnRh 27753 +IGFzc2hvbGU= 27754 +IHN1cHBvcnRlcg== 27755 +IHNrZXB0aWNhbA== 27756 +IGtuZWFk 27757 +IOyYrA== 27758 +ZXph 27759 +IHF1w6o= 27760 +IERI 27761 +IHJvZHo= 27762 +b3duZXJz 27763 +IHBsb3Rz 27764 +IGRlbGF5cw== 27765 +IGJlbG9uZ2Vk 27766 +IGFoaA== 27767 +IGNhcnZlZA== 27768 +IHJpc2Vu 27769 +IG9yZGVu 27770 +cGhvbnk= 27771 +aXNzeQ== 27772 +ISEhISEhISE= 27773 +IG9sZHXEn3VudQ== 27774 +IHJvc2Vz 27775 +IGludHJpbnM= 27776 +IEFuZ3N0 27777 +IGZpbmFsZW1lbnQ= 27778 +7Ked 27779 +U09VTkQ= 27780 +IGluZHVs 27781 +sIw= 27782 +INeV15Q= 27783 +Y2h5 27784 +0LDQutGB0LjQvA== 27785 +IG5nZ2Fr 27786 +IGxpeg== 27787 +IGVsZWN0b3JhbA== 27788 +IFNoYXdu 27789 +cmljaWE= 27790 +IGFyc2Vu 27791 +IFBlcA== 27792 +IDIwMzA= 27793 +IHRyb3BoeQ== 27794 +IHNtb290aGVy 27795 +IGVycmU= 27796 +IGNyYXNoZXM= 27797 +IHNjaG5l 27798 +IGFzaQ== 27799 +IE1hw58= 27800 +0YPQu9C4 27801 +0YfQtdGB0LrQuA== 27802 +aWV2ZXM= 27803 +UkVBTQ== 27804 +IHN0aXJyaW5n 27805 +dXN0YQ== 27806 +IGludmVy 27807 +c2lnaHQ= 27808 +b3JkdQ== 27809 +b29y 27810 +IMSDbg== 27811 +IHBlcm1pdHRlZA== 27812 +0YDRjA== 27813 +IGNoYWxr 27814 +IHRhdHRvb3M= 27815 +IFJlbGF0aW9ucw== 27816 +IEhveQ== 27817 +a3NhbQ== 27818 +IGRlbnRpc3Q= 27819 +IOuvuOq1rQ== 27820 +IHNvZmE= 27821 +INGU 27822 +IGZvcm1l 27823 +2YLYqQ== 27824 +IOuyoA== 27825 +IGVtYnJhY2Vk 27826 +bWls 27827 +IHN1bmdsYXNzZXM= 27828 +IOqwlA== 27829 +IHNlYW1sZXNz 27830 +IGJlZXA= 27831 +w6RjaHN0 27832 +IHN3ZWV0cw== 27833 +IHNlbWFpbmU= 27834 +IGlycmVsZXZhbnQ= 27835 +IGRlc2Vudm9s 27836 +z4HPiQ== 27837 +INC/0YDQvtC40LfQstC+0LQ= 27838 +YW5ncw== 27839 +IGFyb21h 27840 +IHBvb2xz 27841 +IGdp4bud 27842 +IFVn 27843 +IGNsaW1iZWQ= 27844 +IHRyZW5kaW5n 27845 +IHNlcGVydGk= 27846 +IEJhcnI= 27847 +IHDFgg== 27848 +IE9yaWdpbmFsbHk= 27849 +INqv 27850 +dXR0bw== 27851 +irjr 27852 +INC60L7RgtC+0YDRi9GF 27853 +INC30LDRhQ== 27854 +IGVpZ2VuZW4= 27855 +IG11cmRlcmVy 27856 +ZXJuYW1l 27857 +xZ4= 27858 +IGFubm91bmNpbmc= 27859 +IFBsYXRmb3Jt 27860 +IGV4cGxhbmF0aW9ucw== 27861 +IHByZXNlbnRl 27862 +IE5hc8SxbA== 27863 +IG9ycGhhbg== 27864 +IEZvcnRuaXRl 27865 +cm9zcGVjdA== 27866 +ZXJlZGl0aA== 27867 +IOyXhuyWtA== 27868 +IE5JSA== 27869 +d2FnZW4= 27870 +IHJlbWVk 27871 +p4Dr 27872 +bW9udA== 27873 +IEplZmZyZXk= 27874 +cHJvbQ== 27875 +IGbDvG5m 27876 +INC90LDQt9Cw0LQ= 27877 +IGN1Y3VtYmVy 27878 +IFN1bW1pdA== 27879 +p6Q= 27880 +0J3QkNCv 27881 +IEpldA== 27882 +IGNhbWJpbw== 27883 +0YPQudGC0LU= 27884 +IGN1Ymlj 27885 +IGRpc3Byb3BvcnRpb24= 27886 +ZXJleg== 27887 +IG1hZG5lc3M= 27888 +IHRpbnQ= 27889 +IGZ1ZXJvbg== 27890 +IGt5 27891 +IGJpcGFydA== 27892 +U2Ft 27893 +IOu9 27894 +IHJpdg== 27895 +IFRhbms= 27896 +IOuGkw== 27897 +IHJlbmRlcmVk 27898 +xZtsxJk= 27899 +Y29uZHM= 27900 +IGRpc3J1cHRpb24= 27901 +IGluY29udmVu 27902 +IHF1aXNlcg== 27903 +IGRlbmlhbA== 27904 +IGdhbGF4aWVz 27905 +IHNvdmVyZWlnbg== 27906 +IHBvbHNr 27907 +z4HPjg== 27908 +IG1leA== 27909 +IGNhcmFjdGVy 27910 +IExlZ28= 27911 +YW5kZW4= 27912 +Lici 27913 +IO2UjOs= 27914 +IGNvbXByZXNzb3I= 27915 +IE1vdmll 27916 +IGFwcGxpY2FudHM= 27917 +emllaGVu 27918 +IHZlZ2V0YXRpb24= 27919 +IGJlbGxl 27920 +IEdPT0Q= 27921 +IEJhdQ== 27922 +IHJlc2VudA== 27923 +c2V4 27924 +YW1lbnRvcw== 27925 +INeU15bXlA== 27926 +IG92ZXJsb2Fk 27927 +IHNpbGljb25l 27928 +0LXRgdGC0L3Qvg== 27929 +IGRlbmtlbg== 27930 +IGRlZmluaXQ= 27931 +IFdhc24= 27932 +IGFsdGVyZWQ= 27933 +IFNvbw== 27934 +IFdpbmc= 27935 +aW5kcmU= 27936 +IE5QQw== 27937 +z4HOrQ== 27938 +IFR3ZW50eQ== 27939 +IExpZWJl 27940 +IGhvbWVsZXNzbmVzcw== 27941 +b3VsZGVy 27942 +INCY0YLQsNC6 27943 +0YHQutCw0Y8= 27944 +IGN1YXRybw== 27945 +IEhhcnZleQ== 27946 +IHBoaWxhbg== 27947 +IEJlZXQ= 27948 +IHBvbGljaW5n 27949 +IEFsZXhhbmQ= 27950 +INC80L7Qu9C+0LQ= 27951 +IG3DvHM= 27952 +IGhpem8= 27953 +67O064uk 27954 +INC/0L7Qt9Cy0L7Quw== 27955 +INC/0YvRgg== 27956 +0L7Rh9C10LzRgw== 27957 +IO2DnA== 27958 +IGNyeXB0b2N1cnJlbmN5 27959 +IGxvcm8= 27960 +IHN1bW1hdGlvbg== 27961 +IGJha2FsxLFt 27962 +IG5ldXJvcw== 27963 +2KU= 27964 +INC80L7QttC10Lw= 27965 +IMO8c3Q= 27966 +IHByZWxpbWluYXJ5 27967 +IGhvcm5z 27968 +IFRJ 27969 +2YPZhA== 27970 +WU8= 27971 +IGhpbmdl 27972 +IHJlcGFpcnM= 27973 +IGJvbmRpbmc= 27974 +IGJpemU= 27975 +INGI0YI= 27976 +IG1vdGl2ZQ== 27977 +IE5pZ2VyaWE= 27978 +MTIw 27979 +YmxvY2s= 27980 +IGF2aWF0aW9u 27981 +IEtvbW11bg== 27982 +INC+0LrQsNC3 27983 +IHRlbmhh 27984 +IGVkdWNhdGluZw== 27985 +IHN0YWF0 27986 +INGB0LrQvtC70YzQutC+ 27987 +IGZyaWdodGVuZWQ= 27988 +IHNlZWtz 27989 +0YDRg9GI 27990 +cXVlbnQ= 27991 +IE5vdQ== 27992 +IHByYXQ= 27993 +IFNob3Q= 27994 +V29yaw== 27995 +a2FyYW5n 27996 +IExpZ2h0bmluZw== 27997 +bm9sZHM= 27998 +cm9sbGVk 27999 +Z2xhc3M= 28000 +IGNyZWRpYmlsaXR5 28001 +SVRZ 28002 +IGF0bW9zcGhlcmlj 28003 +IGhhdmlh 28004 +w6RuZGVybg== 28005 +Y2hlZXJz 28006 +VGhlc2U= 28007 +IENlbGw= 28008 +IG1hZ25lcw== 28009 +IEJyYXZv 28010 +c2Vhc29u 28011 +IMWfZXlsZXI= 28012 +8J+O 28013 +d2hpdGU= 28014 +IE1C 28015 +IHN0YWNrZWQ= 28016 +IDc0 28017 +INC00LDQstCw0Lk= 28018 +IHBhdmU= 28019 +INC+0YU= 28020 +IGRhdGFzZXQ= 28021 +IHJldG91cg== 28022 +IG1hdHVyaXR5 28023 +IHF1YXNl 28024 +IDkz 28025 +IFN5bQ== 28026 +IGJyaWVmaW5n 28027 +IGN1bHR1cmFsbHk= 28028 +IOy3qA== 28029 +aW5oYXM= 28030 +IG1hZGFt 28031 +IGFqdWRhcg== 28032 +IFRpYmV0 28033 +IGxlYWtz 28034 +Y2lsZQ== 28035 +IHRoZWF0ZXJz 28036 +7Jio 28037 +NzI= 28038 +IFdhc2g= 28039 +IFF1YWxpdHk= 28040 +IEl2YW4= 28041 +IEJlbnQ= 28042 +aWdhdG9y 28043 +IEdlc2NoaWNodGU= 28044 +IHJlYWN0aXZl 28045 +IDE5MDA= 28046 +IGNvbnRyYWRpY3Q= 28047 +IHppZW1saWNo 28048 +IGNvaG9ydA== 28049 +4bun 28050 +IHBlc3RpYw== 28051 +IG9yYXo= 28052 +IHRlbGxlbWVudA== 28053 +6b4= 28054 +IE5vd2FkYXlz 28055 +Y3Jldw== 28056 +U3RldmU= 28057 +IGZpY3Rpb25hbA== 28058 +IGlsaw== 28059 +IGdhc29saW5l 28060 +emFt 28061 +IHBhbmNha2U= 28062 +w6huY2lh 28063 +IG11aXRvcw== 28064 +IGJ1cnk= 28065 +IGtvcA== 28066 +IElR 28067 +IHJlc2VydmF0aW9u 28068 +IFVwZGF0ZQ== 28069 +IGplag== 28070 +IEV5ZXM= 28071 +IHZpdmU= 28072 +IGNoY2U= 28073 +IEluaQ== 28074 +cmVzcG9ucw== 28075 +IHJlZmxlY3RpdmU= 28076 +IFdhbg== 28077 +0ZbQtw== 28078 +IGVuY2E= 28079 +IGVtYm9k 28080 +IEJ1cmdlcg== 28081 +IGFjYWRlbWlh 28082 +IENpcmM= 28083 +INC/0YDQtdC6 28084 +IGFubGFt 28085 +IHBoaWxhbnRocm9w 28086 +IEJhxZ8= 28087 +IEF1ZGk= 28088 +IHZvc3Q= 28089 +IHJlcGVy 28090 +UGV0ZXI= 28091 +IGNvbnNvbGVz 28092 +IHNjcnV0 28093 +IFR1cm5lcg== 28094 +INCx0YvQsg== 28095 +SUlJ 28096 +IEZsaWdodA== 28097 +4LiW 28098 +IFJhdmVu 28099 +IGNvcnJvcw== 28100 +ZmVybg== 28101 +IHByb3Zh 28102 +IFNldg== 28103 +IHJlY2lwcm8= 28104 +IDE5ODU= 28105 +IG51ZXZh 28106 +IGRhYg== 28107 +44CB44CM 28108 +IG1leg== 28109 +IFN0YXJr 28110 +cHBpbmdz 28111 +0L7RgdGC0Lg= 28112 +7Kad 28113 +IGZyYW1pbmc= 28114 +INCg0LDQtw== 28115 +IHBvc3Rw 28116 +IFNoYW5ub24= 28117 +INC60YPRgA== 28118 +IGpha2J5 28119 +aWVubmVudA== 28120 +IE1hcHM= 28121 +IFJldmVsYXRpb24= 28122 +INGB0YLQsNC7 28123 +7Jq0642w 28124 +IGRldmFudA== 28125 +IEdpdmluZw== 28126 +IFdBUw== 28127 +INC60L7Qs9C+ 28128 +IHJlbWE= 28129 +IFJD 28130 +bsOt 28131 +IHNsaXBwZWQ= 28132 +IFJhbXM= 28133 +IHdlZXQ= 28134 +IG1hc2N1bGluZQ== 28135 +IEVj 28136 +IHJlb3A= 28137 +IFBsYW50 28138 +IE1BWQ== 28139 +IHNwaWtlcw== 28140 +IG5venpsZQ== 28141 +IFdpa2lwZWRpYQ== 28142 +IENvaA== 28143 +SVNTQQ== 28144 +Y2hsb3NzZW4= 28145 +7KeA66W8 28146 +IOuvuOs= 28147 +IE5lZGVy 28148 +Sm9zaA== 28149 +INCg0L7RgdGB0LjQuA== 28150 +IDE5ODc= 28151 +IFRoZW9yeQ== 28152 +ZWtr 28153 +IHV0YW4= 28154 +INC00L7QvNCw 28155 +Y2h1 28156 +INGB0LE= 28157 +IGFwcm92ZQ== 28158 +VkVO 28159 +dWVwcmludA== 28160 +IDg0 28161 +Q29y 28162 +IHJpY2hlcg== 28163 +IHNhbmR3aWNoZXM= 28164 +YXRzdQ== 28165 +0YjQuNGF 28166 +IGxhdHQ= 28167 +fn5+fg== 28168 +ZnJpZW5kcw== 28169 +IGRlcm5pw6hyZQ== 28170 +IHN0ZXJlbw== 28171 +INGN0LrRgdC/ 28172 +IHByb3RlY3Rpb25z 28173 +IGhhdXQ= 28174 +RXZlcnlvbmU= 28175 +IGVudGVycHJpc2Vz 28176 +IE1vc3RseQ== 28177 +IFNwb3RpZnk= 28178 +IFNleA== 28179 +IHVuZw== 28180 +jOulvA== 28181 +IGFjdGl2aXNt 28182 +Y3RpY2E= 28183 +b3JpZ2luYWw= 28184 +INC/0YDQvtCz0YDQsNC8 28185 +IGJyb2Njb2xp 28186 +4KY= 28187 +0L7Qs9GA0LDRhA== 28188 +IHNla2FyYW5n 28189 +IGNyYWZ0aW5n 28190 +INCx0LDQvQ== 28191 +IFJheg== 28192 +IG5haXZl 28193 +IHNjcm9sbGluZw== 28194 +IG51bWVyaWNhbA== 28195 +IHNjaGVkdWxpbmc= 28196 +IGFwYXJ0bWVudHM= 28197 +540= 28198 +IHN0cmV0Y2hlcw== 28199 +YWNleQ== 28200 +IEhFUg== 28201 +IHppbmM= 28202 +IGRhcm4= 28203 +IGPDqWw= 28204 +IHdhcmRyb2Jl 28205 +IHJlZGlyZWN0 28206 +IGp1bQ== 28207 +IFN0cmFuZ2U= 28208 +IG7DoG8= 28209 +IGV4cGVyaW1lbnRpbmc= 28210 +w6lyw6k= 28211 +IHZvdWxleg== 28212 +IGdlYmU= 28213 +IEthbm4= 28214 +IMSR4buZ 28215 +IE1heGlt 28216 +IEvDtm4= 28217 +IEdsYXM= 28218 +IHBvbGlzaGVk 28219 +IG51bWE= 28220 +SWNo 28221 +IHJpdHVhbHM= 28222 +IFNJ 28223 +0LjRgtC10LvQuA== 28224 +IGluZmlsdA== 28225 +IHNjYXJm 28226 +b3BoeQ== 28227 +IHlpbmU= 28228 +IGNpdmlj 28229 +IE1lbmc= 28230 +w6RuZ2U= 28231 +1aU= 28232 +aGlzdG9pcmU= 28233 +IE9rZQ== 28234 +IOyYhg== 28235 +IHNvbGx0ZW4= 28236 +IDgy 28237 +IHByZXNjcmliZWQ= 28238 +IER1YmFp 28239 +IEVsdGVybg== 28240 +IG5hdGlvbndpZGU= 28241 +IHNrYXRpbmc= 28242 +aWFyeQ== 28243 +IHJld2FyZGVk 28244 +IG1vcmFsaXR5 28245 +IE1hZ2dpZQ== 28246 +IE9oaGg= 28247 +IEZhaHJlbg== 28248 +b2x2ZWQ= 28249 +IGRldXhpw6htZQ== 28250 +dGVjaG4= 28251 +cm9sZQ== 28252 +IGxlaWRlcg== 28253 +IEpBWQ== 28254 +INC40L3RhNC+0YDQvA== 28255 +IGNhZmZl 28256 +cmVpY2hlbg== 28257 +IGthcnQ= 28258 +IEN1dGU= 28259 +ZmZlY3RpdmU= 28260 +IGJ1bGx5 28261 +YWdhcg== 28262 +IGNvbW1vZGl0eQ== 28263 +IG9icmln 28264 +T1VS 28265 +IHVucGxlYXNhbnQ= 28266 +bm94 28267 +SnVs 28268 +b2xpdGg= 28269 +0YLQvtGP0Yk= 28270 +IEJlbGxh 28271 +IGRvbGxz 28272 +IEhvZmY= 28273 +IGFkdmlzb3Jz 28274 +IHRyYW5zZmVycw== 28275 +IEdva3U= 28276 +IDEyMDA= 28277 +aW5ob3M= 28278 +UGFs 28279 +IOuYkQ== 28280 +IHJlcHQ= 28281 +IGFjY29tcGxpc2htZW50 28282 +IHdlYXZl 28283 +IG92ZXJzaWdodA== 28284 +IHVuaGVhbHRoeQ== 28285 +IGZpbHQ= 28286 +IHB1ZGRpbmc= 28287 +IE1pZ3VlbA== 28288 +IGNodWNrbGVz 28289 +dmVyc2lvbg== 28290 +IGNvbmZlc3Npb24= 28291 +dmFsdWU= 28292 +IHRyaXVtcGg= 28293 +IHNhaXI= 28294 +IOuFuA== 28295 +IGFydGU= 28296 +IE1hdGVyaWFs 28297 +dXRp 28298 +IGxpcXVvcg== 28299 +IEJheWVybg== 28300 +IE1haWw= 28301 +IO2WpQ== 28302 +0YHQutC+0Lw= 28303 +IGNoZWFwZXN0 28304 +INGH0LDRgdGC0Lg= 28305 +IEpvYnM= 28306 +IENhbnlvbg== 28307 +aGFybWE= 28308 +YWxleQ== 28309 +YW5kcm8= 28310 +IGFwcGVhcmFuY2Vz 28311 +cHJvZg== 28312 +INC+0Lc= 28313 +bGFnZW4= 28314 +IC8v 28315 +INC70LjRiNGM 28316 +IHJlY292ZXJpbmc= 28317 +0LTQtg== 28318 +cHN5 28319 +IHN3aWZ0 28320 +IFNwaW4= 28321 +IHNlaW5lbQ== 28322 +IGRvbHBo 28323 +ZsO8aHI= 28324 +w6J0 28325 +IGFsdGlqZA== 28326 +IE1hcnR5 28327 +IEhvY2g= 28328 +IHByZWRhdG9ycw== 28329 +IHZvcmhlcg== 28330 +INCU0LDQstCw0Lk= 28331 +IGZyYWdtZW50cw== 28332 +IHBhc3RyeQ== 28333 +IGNvbW1lbg== 28334 +IFNhbmE= 28335 +IOqxtOuNsA== 28336 +dXNzZW4= 28337 +IHRlbGE= 28338 +IE5pbmE= 28339 +bGVr 28340 +IGNyaWVz 28341 +IHRoaWdocw== 28342 +IEZsZXg= 28343 +IEJ1eno= 28344 +44Q= 28345 +VXM= 28346 +IHBhc28= 28347 +IGRlY2xpbmVk 28348 +IE55 28349 +YmFsYW5jZQ== 28350 +IG1hc2E= 28351 +IGpvcw== 28352 +INCh0L/QsNGB0LjQsdC+ 28353 +YWNodQ== 28354 +bG91ZA== 28355 +IHBlbmE= 28356 +IFdhbGQ= 28357 +IGVsaW1pbmF0aW9u 28358 +INCy0LXRgdGM 28359 +b3JhZ2U= 28360 +IG1pc3VuZGVyc3RhbmRpbmc= 28361 +IGVuZG9yc2U= 28362 +IG9nw7NsZQ== 28363 +IGdyZWVk 28364 +IGtsZWlu 28365 +15zXlA== 28366 +UkVZ 28367 +IEVhdGluZw== 28368 +IHNlbWluYXI= 28369 +IEJpcnRoZGF5 28370 +IHF1ZWxsZQ== 28371 +IE11bHRp 28372 +IHRpcmFy 28373 +IHBlcmNo 28374 +IGxhdm9y 28375 +IEppYQ== 28376 +IG11dGF0aW9ucw== 28377 +IGNpZ2FyZXR0ZXM= 28378 +2YjYrA== 28379 +IGNvdXNpbnM= 28380 +IGNhcHN1bGU= 28381 +IGhvcnJpZmlj 28382 +IHN0dXI= 28383 +IHplaWd0 28384 +bnV0cw== 28385 +IG1lYW53aGlsZQ== 28386 +IENvbGlu 28387 +IGdvYmllcm5v 28388 +IGd3 28389 +IHVoaA== 28390 +IEpFUg== 28391 +c3BlY2lmaWM= 28392 +IGFsbGVnYXRpb25z 28393 +IOupiw== 28394 +IEVsbGE= 28395 +b29rZWQ= 28396 +IEZpdA== 28397 +YWZmbGU= 28398 +IEFwcsOocw== 28399 +IER1Y2s= 28400 +IGNlbGx1bGFy 28401 +Y8Ozdw== 28402 +INGH0YPQstGB0YLQsg== 28403 +Z2Vub21tZW4= 28404 +7Iqk7Yq4 28405 +IGxhaW4= 28406 +aXNvbA== 28407 +IGhvbGRlcnM= 28408 +IGJvb3N0ZXI= 28409 +IFNhc2hh 28410 +0YvQstCw0LXRgg== 28411 +gbw= 28412 +IHNlcGFyYXRpbmc= 28413 +IHJlaW5mb3JjZW1lbnQ= 28414 +INC+0LTQvdC+0Lk= 28415 +7JeG 28416 +SURF 28417 +IE9wdGlvbg== 28418 +cGhvbg== 28419 +IHBsYWlz 28420 +IENhbWI= 28421 +IO2ZmA== 28422 +IHVuY29tbW9u 28423 +Ijo= 28424 +bWl5b3J1bQ== 28425 +bW9p 28426 +YWNqZQ== 28427 +0LDQttGD 28428 +1bY= 28429 +IGdlbXM= 28430 +w7xsZXI= 28431 +b29scw== 28432 +IGVuenltZXM= 28433 +IGtpZG5hcHBlZA== 28434 +IGtldGNodXA= 28435 +dGFsaw== 28436 +IHphY2g= 28437 +IHdhc2hlcg== 28438 +44CC44CC 28439 +IEFyY2hpdGVjdA== 28440 +dmVudWU= 28441 +IFBsYW5uaW5n 28442 +IFNhdmlvcg== 28443 +INCz0YDRg9C/0L8= 28444 +7Yq8 28445 +YXJ5YQ== 28446 +IHByb2Nlc28= 28447 +IGxpbWJz 28448 +IHJlYWxpemVz 28449 +aWFuZGVy 28450 +RlM= 28451 +YWpp 28452 +IHVuaXRl 28453 +IOydmOs= 28454 +IHBvc3PDrXZlbA== 28455 +cmFpdHM= 28456 +IEFncmU= 28457 +24zaqQ== 28458 +7ISc64+E 28459 +INCy0LXQuw== 28460 +INC80LXRgdGP 28461 +YW5vcg== 28462 +UGF0 28463 +IGRlcm5pZXI= 28464 +z4PPhM61 28465 +INC60LDQutCw0Y8= 28466 +IGzDpHNzdA== 28467 +IE1laA== 28468 +IG5naA== 28469 +IGFtYXRldXI= 28470 +RmU= 28471 +IOq2gQ== 28472 +IHNpdHVhY2nDs24= 28473 +IHNlZGFu 28474 +IGNsZWFuc2luZw== 28475 +bGFzdGluZw== 28476 +IGNvbW11bmlzdA== 28477 +QU5F 28478 +IGlycmVndWxhcg== 28479 +IHNvdXQ= 28480 +IENhcm5leQ== 28481 +IGFsbGVtYWFs 28482 +IG11Y2jDrXM= 28483 +IGxpYnJv 28484 +0K3RgtC+ 28485 +INCw0L8= 28486 +IGNvbnRpbnVhdGlvbg== 28487 +IExvcg== 28488 +PyIs 28489 +cXVpbg== 28490 +IGNoYXJhY3Rlcml6ZWQ= 28491 +YWplcw== 28492 +IHNpZ2h0cw== 28493 +INGP0LfRiw== 28494 +IFVoaA== 28495 +YmlydGg= 28496 +ZG9uZw== 28497 +IGhhYmxhbmRv 28498 +IHN5bXB0b20= 28499 +IGNhcGFjaXRvcg== 28500 +IHRyYW5zcG9ydGVk 28501 +IGlnbm9yYW50 28502 +INC90LjQutC+0LPQtNCw 28503 +IGRyaXA= 28504 +IEV2YQ== 28505 +IGFkamVjdA== 28506 +IG1hc3NpdmVseQ== 28507 +IEV0aGk= 28508 +IENpcmNsZQ== 28509 +IHJhaW5mYWxs 28510 +IE1vdXNl 28511 +IHJlZnVuZA== 28512 +IFp3 28513 +YXNzZW1i 28514 +IDIyMA== 28515 +IE9yZA== 28516 +IHZlaW5z 28517 +IEdpYW50 28518 +IG3Do2U= 28519 +IHZhcA== 28520 +IG1pc3Nlcw== 28521 +zr/Phc+C 28522 +TW8= 28523 +IEVudHdpY2s= 28524 +SU5U 28525 +2YbYqg== 28526 +IHRoZW9yZXRpY2FsbHk= 28527 +IHRlYXJpbmc= 28528 +IHRyb3VibGVk 28529 +cHJlbQ== 28530 +IHJlcGV0aXRpdmU= 28531 +IOKW 28532 +IGhlYXZlbmx5 28533 +IEFtYmVy 28534 +INC/0L7Qu9C+0LY= 28535 +IO2VtOyk 28536 +IHZvd2Vs 28537 +YW5raW5n 28538 +IFdpcnRzY2hhZnQ= 28539 +IGlycg== 28540 +IGNvenk= 28541 +IHVuZmFtaWxpYXI= 28542 +IFBvcnM= 28543 +IOunnuyVhA== 28544 +IFRpbW90aHk= 28545 +0YHQvtC70Y7Rgg== 28546 +cGV4 28547 +IFZJUw== 28548 +KSg= 28549 +IHN1cGVyc3Q= 28550 +IGltcHJvdg== 28551 +IEJlbmc= 28552 +IGRpc2Nvbm5lY3RlZA== 28553 +IGFwdA== 28554 +0YDQtdC9 28555 +IEV4dHJh 28556 +INCx0LXQuw== 28557 +c2hvcA== 28558 +ZGluZ3M= 28559 +IENvbm5lY3RpY3V0 28560 +7LCs 28561 +IEdD 28562 +YmVo 28563 +SmVyZW15 28564 +IEJhdHQ= 28565 +YXRoYQ== 28566 +IFp1c2FtbWVu 28567 +c2NyZWFtcw== 28568 +IGdyYXM= 28569 +YWZmdA== 28570 +IEluaXRpYWxseQ== 28571 +IEJyZXR0 28572 +IHNwZWNpZmljYXRpb25z 28573 +IHNlYXdlZWQ= 28574 +IG9hdGg= 28575 +IGZvdW50YWlu 28576 +INC60L7RgtC+0YDQvtC5 28577 +IFN0ZWlu 28578 +IENvcmludGg= 28579 +IGNvbmp1Zw== 28580 +IGNvbXBlbnNhdGU= 28581 +IOuKkOuCjOydtA== 28582 +IG9uemU= 28583 +IHNraW5jYXJl 28584 +QnJpYW4= 28585 +IHNlcnZpcg== 28586 +fX0= 28587 +IFZpaw== 28588 +IHVuaW50 28589 +IHN1cHBsaWVycw== 28590 +IGJhbGNvbnk= 28591 +IGVuZXJnaWE= 28592 +b21ldHJpYw== 28593 +0LfRjw== 28594 +IHNpZ2g= 28595 +IFRPTQ== 28596 +IFB1cmU= 28597 +eXR0 28598 +0YvRgQ== 28599 +IFJhaW5ib3c= 28600 +IFBpdHRz 28601 +15nXng== 28602 +IHN0YXR1ZXM= 28603 +aGVhZHM= 28604 +IGNvdXBsZWQ= 28605 +IGhlcmQ= 28606 +IGV4Y2x1ZGVk 28607 +IGdpbHQ= 28608 +INGO 28609 +IHN3b2pl 28610 +IFN2ZXI= 28611 +NjM= 28612 +aXNzYW50 28613 +IGTDvHJmZW4= 28614 +oIjr 28615 +IGtpc3Npbmc= 28616 +b29m 28617 +IGN1cnNlZA== 28618 +IHNob3dlcnM= 28619 +IHN3aW5naW5n 28620 +IHJlcHJvZHVjZQ== 28621 +IHPDpHR0 28622 +ZWxjb21l 28623 +IGZ1bmRhbWVudGFscw== 28624 +IGFsbW9uZA== 28625 +IHDDqQ== 28626 +IHdlbGxiZWluZw== 28627 +IGh1bnRlcnM= 28628 +U2Vj 28629 +k5zrprQ= 28630 +IGVtaXNzaW9u 28631 +IHBzeWNob2xvZ2lzdA== 28632 +IGJldHJheWVk 28633 +IFJleW5vbGRz 28634 +TEVT 28635 +IHBvbGxpbmc= 28636 +IG5lZ2F0aXZlbHk= 28637 +IGNvbWJpbmVz 28638 +15zXkA== 28639 +0LDRgNCw 28640 +zrvOu86s 28641 +IFR1cm5z 28642 +T1RU 28643 +INeU15k= 28644 +YWlzb24= 28645 +IGFpcmxpbmU= 28646 +IHJlc3RyaWN0aW9u 28647 +d2Fs 28648 +IGF1cmFpdA== 28649 +IExlYmFub24= 28650 +IE1PUg== 28651 +IG1vbmtleXM= 28652 +w6luZXI= 28653 +0ZbRlw== 28654 +IG1vdGhlcmY= 28655 +INmH2LDZhw== 28656 +IGZldQ== 28657 +w7xocmVu 28658 +IGh5Z2llbmU= 28659 +ZW50ZWVu 28660 +RGVz 28661 +IGRpc3NpcA== 28662 +RXN0 28663 +IHNhaW50cw== 28664 +IHBvdGFzc2l1bQ== 28665 +IHJlY2tvbg== 28666 +Q2xpbnR1cw== 28667 +IG1hbmlmZXN0YXRpb24= 28668 +IEFwcHJv 28669 +IEluc3BlY3Q= 28670 +IHZlbnRpbGF0aW9u 28671 +IGhlbG0= 28672 +IGthcmE= 28673 +4Liy4LiZ 28674 +IGZhdm9yYWJsZQ== 28675 +IOyViuyVmA== 28676 +IEhpc3Bhbmlj 28677 +4Lic 28678 +INeU15s= 28679 +IHZhbGlkYXRl 28680 +IFJlc2lkZW50 28681 +IGNvbWVueg== 28682 +YmVpdGVy 28683 +ZXJlcg== 28684 +IGRhZG8= 28685 +YXRjaGluZw== 28686 +bWV0cm9z 28687 +IEhpbg== 28688 +IER1bQ== 28689 +IGhhesSxcg== 28690 +IE5hdGFsaWU= 28691 +IGVuY3J5cHRpb24= 28692 +0L7Rh9C60LA= 28693 +bW1h 28694 +aG91c2Vz 28695 +IGFuYWx5dGljYWw= 28696 +IERhbmc= 28697 +Zmlyc3Q= 28698 +IEVuYw== 28699 +Y2FuZG8= 28700 +IGx1ZHpp 28701 +d2FydA== 28702 +IHN0YXRpc3RpYw== 28703 +IOyCsA== 28704 +IGNvbW1lbnRpbmc= 28705 +IGNvb3JkaW5hdGVk 28706 +IEh5cGVy 28707 +5Zo= 28708 +IEJlcnQ= 28709 +IEhpcA== 28710 +a2Vt 28711 +w7xuw7w= 28712 +IHphbA== 28713 +IO2VmOuKlOuNsA== 28714 +IFJvYm90 28715 +cmF3bg== 28716 +IHJoZXRvcmlj 28717 +dWxsYWg= 28718 +IERpZXQ= 28719 +IHRha2ljaA== 28720 +IHBvc3Nlc3NlZA== 28721 +k5zripQ= 28722 +IHdha2Vz 28723 +IFJhZg== 28724 +TWFydA== 28725 +IGVjYw== 28726 +IEZN 28727 +IGRpZmlj 28728 +IEFsbGV6 28729 +IGN1cmVk 28730 +IFF1YWQ= 28731 +IGJlbGU= 28732 +IGpvdXJuYWxz 28733 +IHRhZA== 28734 +IHNvY2lhbGVz 28735 +IHdoYXRz 28736 +IEJhc3M= 28737 +IGplc3RlbQ== 28738 +IFNhZGx5 28739 +IFNvdXJjZQ== 28740 +IMO8w6c= 28741 +YWx0dW5n 28742 +aWVydGVu 28743 +IGp1bGxpZQ== 28744 +aWZh 28745 +INCa0L7RgA== 28746 +IERvb3I= 28747 +INCd0LDQtA== 28748 +INC30LTQvtGA0L7Qsg== 28749 +IHJ1bW9y 28750 +IHBpZXM= 28751 +INC/0LXRgNC1 28752 +INC+0YLQsg== 28753 +0LXQvdC90YvQtQ== 28754 +SG9zdA== 28755 +IFNvcGhpZQ== 28756 +YW50ZW4= 28757 +QW55 28758 +IEF1Zmc= 28759 +IEhEUg== 28760 +IFJvY2tldA== 28761 +cmVzc28= 28762 +IHZlcmRl 28763 +IHByw6lzaWRlbnQ= 28764 +IGluZG9vcnM= 28765 +IHN0YWdnZXI= 28766 +IHN0YXRv 28767 +IERpYWw= 28768 +IGJ1enppbmc= 28769 +ZW1lcg== 28770 +INCS0YHRkQ== 28771 +INC00LXRgNC10LI= 28772 +IHBvdXY= 28773 +IHN0cmFuZHM= 28774 +IOqyg+ydtA== 28775 +IFBhcmw= 28776 +0L7QutC+0Lk= 28777 +IHNpcA== 28778 +ICgq 28779 +w6RuZ3Q= 28780 +IGRlYmVy 28781 +IEFpbg== 28782 +IGRyYXN0aWNhbGx5 28783 +IFNsb3dseQ== 28784 +IEJyaWc= 28785 +IFRvcmFo 28786 +IGFjaGU= 28787 +ID8/Pw== 28788 +IERvYg== 28789 +a2FubnQ= 28790 +TWFyeQ== 28791 +IHN0YW0= 28792 +IERlbW9u 28793 +cGxh 28794 +IEZyZXVuZA== 28795 +IEJlbm4= 28796 +IGhpZ2hz 28797 +INqp2LE= 28798 +IFByZXBhcmU= 28799 +IHByb3h5 28800 +IGNhbXBv 28801 +IEF1Z2Vu 28802 +o6jr 28803 +IENobG9l 28804 +aWN1bGFybHk= 28805 +eW91bmc= 28806 +qZTr 28807 +IHNjcmF0Y2hpbmc= 28808 +IGdsYWM= 28809 +IGdlbWVpbnNhbQ== 28810 +YW5hbA== 28811 +YWNha3PEsW4= 28812 +IEZvcnVt 28813 +ZW5uaWFs 28814 +IFJlc291cmNlcw== 28815 +IG1laXN0ZW4= 28816 +IEZlbGw= 28817 +IHVuYW5pbQ== 28818 +IFRC 28819 +IFNlbGJzdA== 28820 +5oY= 28821 +IGludGltaWRhdGluZw== 28822 +IEdlZsO8aGw= 28823 +IOy9lOuhnA== 28824 +aWRvcg== 28825 +aWNpb25lcw== 28826 +YXJzYQ== 28827 +XS4u 28828 +YXpv 28829 +IGtlbmRp 28830 +IFRhZ2U= 28831 +dGVybWlu 28832 +IFByb3plbnQ= 28833 +TWF5YmU= 28834 +bMOp 28835 +IHF1ZXN0aQ== 28836 +IG1lbWVz 28837 +IGNvcnJl 28838 +IFZJUA== 28839 +IEdhbGxlcnk= 28840 +IHVyZ2VuY3k= 28841 +IG5vY2hl 28842 +IGtpbmRseQ== 28843 +IE1lcmVkaXRo 28844 +IHbhuq15 28845 +INin2YTYqA== 28846 +IEVzdGFkbw== 28847 +enVn 28848 +b3F1ZQ== 28849 +IG9iZXNpdHk= 28850 +T2Zm 28851 +IEV1cm9wZWFucw== 28852 +w7Zk 28853 +7Lm06w== 28854 +IGhvb3A= 28855 +IGVuam95cw== 28856 +IENoaXA= 28857 +cGF0aWVudA== 28858 +IG1pY3Jvc2NvcGU= 28859 +IGxlZ2l0aW0= 28860 +INGP0LLQu9GP0LXRgtGB0Y8= 28861 +z4POuQ== 28862 +YXJnZW50 28863 +IHNoYW0= 28864 +IGxpY2Vuc2luZw== 28865 +b2xpYQ== 28866 +U29ycnk= 28867 +cmFtYQ== 28868 +IGFjY2VsZXJhdGVk 28869 +IHd5bQ== 28870 +IGZhaXJuZXNz 28871 +IFJlYWRpbmc= 28872 +IHNsYWNr 28873 +IERvaw== 28874 +emnEmWt1asSZ 28875 +IHJ1YmJpbmc= 28876 +0LDRgtGD 28877 +IGFsbG9jYXRlZA== 28878 +anVuZw== 28879 +IHBhaW5z 28880 +IHdpbmRpbmc= 28881 +IGdlbGl5b3I= 28882 +IENV 28883 +bW90 28884 +Y29jaw== 28885 +IFBvc2l0aW9u 28886 +YnJvcw== 28887 +IGxpdmVzdHJlYW0= 28888 +IEJyYWlu 28889 +7LCp 28890 +IHByemVr 28891 +IEVp 28892 +IENvY28= 28893 +0LHQsA== 28894 +IHNob3ZlbA== 28895 +ZWE= 28896 +IGNob2NvbA== 28897 +IHJlYmVsbGlvbg== 28898 +IHNob3dj 28899 +IEhhbG8= 28900 +IGRpdmlkZW5k 28901 +bWlzc2lvbg== 28902 +IHVzYW5kbw== 28903 +IFsi 28904 +IGZhbGVp 28905 +QmxhY2s= 28906 +IFN1cmVseQ== 28907 +IMW7 28908 +IHBoaWxvc29waGVy 28909 +IG92ZXJoZQ== 28910 +IEJvcm4= 28911 +IG9iamV0aXZv 28912 +IDEyOA== 28913 +c2NoZWlk 28914 +IE5hemlz 28915 +IHNvbGNoZQ== 28916 +bGlmdA== 28917 +Y2VkZQ== 28918 +YWRvcnM= 28919 +IG1hcnNobQ== 28920 +IExPUkQ= 28921 +lOydtO2BrA== 28922 +IG93bmluZw== 28923 +Q29udA== 28924 +IGxhbmRzY2FwZXM= 28925 +IGxlbmRpbmc= 28926 +IEF1dGhvcml0eQ== 28927 +0L7QstC+0Lk= 28928 +b3F1 28929 +IFNlcw== 28930 +IEZlcnJhcmk= 28931 +IHJlc3BvbnNhYmls 28932 +IHbDoXJpb3M= 28933 +IGRlbGlj 28934 +IGVtYmFyaw== 28935 +IGVtYnJvaWRlcg== 28936 +IGZyYW1ld29ya3M= 28937 +IHNpbW1lcg== 28938 +IG5hY2lvbmFs 28939 +IHJlbWFpbmRlcg== 28940 +IFZpZWxsZWljaHQ= 28941 +IHF1aWVyZXM= 28942 +7JeU 28943 +IHRlc3Rvc3Rlcg== 28944 +aWhlbg== 28945 +IE96 28946 +w6hsZQ== 28947 +IHBvcnRyYXllZA== 28948 +zrrOtQ== 28949 +IFBvbGl0aWs= 28950 +IGFwZXJ0dXJl 28951 +IGJsYW5k 28952 +aW5kdXN0 28953 +INC+0LHRgNCw0YI= 28954 +IFRob3Vz 28955 +QmF5 28956 +IGRhbmRv 28957 +IHNoZXI= 28958 +IGFkbWlzc2lvbnM= 28959 +IENyZXc= 28960 +INGW0L0= 28961 +U0lOR0lORw== 28962 +IG91bmNl 28963 +IGl5 28964 +IGJhc2ls 28965 +IG92ZXJ0aW1l 28966 +IHRocmVhdGVu 28967 +IHBhcnRuZXJlZA== 28968 +IENhbm4= 28969 +YXZhbmE= 28970 +INC30L3QsNC10YLQtQ== 28971 +INC+0YLRgQ== 28972 +IFR1ZG8= 28973 +7L2U 28974 +IOuGgOs= 28975 +ZmVs 28976 +IHJlYXJy 28977 +IGlud2FyZA== 28978 +IFJvZ2Vycw== 28979 +4LmD4Lir 28980 +IHR3ZWFr 28981 +IGRyeWVy 28982 +Y2Vzc2lvbg== 28983 +IHJpZ29yb3Vz 28984 +IERhYXI= 28985 +b21pY3M= 28986 +IGZhdHM= 28987 +dmFk 28988 +IHppcHBlcg== 28989 +YWNjZXB0YWJsZQ== 28990 +IGRlbW9uc3RyYXRpbmc= 28991 +IFl1bQ== 28992 +IGJlYXU= 28993 +IHJvc3Rlcg== 28994 +IHByZWRvbWluYW50bHk= 28995 +0LXRgNGD 28996 +bmluZ2Fy 28997 +IHRyaWFuZ2xlcw== 28998 +IHRleHRpbmc= 28999 +IGJlcnJpZXM= 29000 +IOyCrOynhA== 29001 +YWRkZXI= 29002 +IGZhaXRlcw== 29003 +IEltYWdl 29004 +bGVyZQ== 29005 +IGJvdW5kcw== 29006 +IExhdXI= 29007 +IOyVhOustOs= 29008 +IG1pbw== 29009 +IHVzYQ== 29010 +INiw 29011 +IHRvZW4= 29012 +IEphbmc= 29013 +xb5l 29014 +Y2hvZA== 29015 +YW5hbg== 29016 +INC+0LHRgNCw0LfQvtC8 29017 +IHBlcnNldmVy 29018 +IFN3ZQ== 29019 +IGF1Z21lbnQ= 29020 +dWdnbGluZw== 29021 +acOocmVtZW50 29022 +aXN0bGVz 29023 +YWNqxJk= 29024 +OTE= 29025 +IG1haA== 29026 +IEtJUg== 29027 +RGll 29028 +IGRvd25oaWxs 29029 +IDE5Njg= 29030 +0L7RgNC+0YjQvg== 29031 +b2dyYXBoaWNz 29032 +IHTDpHNzw6Q= 29033 +6rKg7KOg 29034 +INC70LjRhw== 29035 +QVVESU8= 29036 +INC/0LvQvtGF 29037 +IHByb3Bvc2luZw== 29038 +IHRlbXB0ZWQ= 29039 +IGNvbnZlcnRpbmc= 29040 +IExlaHI= 29041 +IHBlcnNvbmU= 29042 +IEZlZWxpbmc= 29043 +7Ja07KO8 29044 +b21icmVz 29045 +INec15k= 29046 +IGd1cnU= 29047 +IGRlbWVudA== 29048 +0L3QuNC3 29049 +0LjRgtC10LvQtdC5 29050 +IGNvbXBhw7E= 29051 +IHJlZG8= 29052 +IGNvbmR1Y3Rvcg== 29053 +bWlh 29054 +IGlkb2xz 29055 +IE11bA== 29056 +IGluZXg= 29057 +IHTDpG3DpA== 29058 +IGltcGFjdGluZw== 29059 +IGRheWxpZ2h0 29060 +Z2ls 29061 +IGhlbGZlbg== 29062 +IGVudHNwcmVjaA== 29063 +IHdpxJlrcw== 29064 +IHNjcmlwdHVyZXM= 29065 +IGRpc21pc3NlZA== 29066 +IFBvZGNhc3Q= 29067 +2YXYsQ== 29068 +IGFubnVhbGx5 29069 +IHVzYWJsZQ== 29070 +IGxpYnJl 29071 +0L7Qt9C8 29072 +IHJ1YmJpc2g= 29073 +IGNvbnRpbnVhcg== 29074 +IGh1bWlsaQ== 29075 +IHNwZWVjaGVz 29076 +0YDQsNGH 29077 +YmFyZA== 29078 +NzE= 29079 +Pjw= 29080 +b2xvZ8OtYQ== 29081 +d2VhbHRo 29082 +IG1lZGl0YXRl 29083 +k6TsnZg= 29084 +IENyYWZ0 29085 +cml2 29086 +IEFnYWluc3Q= 29087 +IGNlcmFtaWM= 29088 +ZXNww6hyZQ== 29089 +IGNvbXBldGVudA== 29090 +IEhvcGtpbnM= 29091 +IGtpbG9z 29092 +IGdyYXZlbA== 29093 +IHBpc3Rvbg== 29094 +IGZyaWVuZHNoaXBz 29095 +IGVzY3Jl 29096 +IHZveg== 29097 +IEdlc2VsbHNjaGFmdA== 29098 +IHVudGVyc3TDvHQ= 29099 +IG11ag== 29100 +IHdhcm5pbmdz 29101 +cG9z 29102 +IFByb2Zlc3Npb25hbA== 29103 +d3N6eQ== 29104 +b2RsZQ== 29105 +YmFuZHM= 29106 +IHRlYW13b3Jr 29107 +c3RlbGx1bmc= 29108 +IGR4 29109 +IGF0dG9ybmV5cw== 29110 +IHdlaXRlcmU= 29111 +44WL44WL44WL 29112 +IE9yaWdpbmFs 29113 +15nXlw== 29114 +IGJyb2FkY2FzdGluZw== 29115 +INC/0LXRgNCy0YvQuQ== 29116 +dWNoaQ== 29117 +IGhldXJl 29118 +IGdyYWJz 29119 +IFdPUg== 29120 +IFBsYWlk 29121 +TWlu 29122 +IHBheg== 29123 +IFB1aXM= 29124 +dW11 29125 +aXRhdGVz 29126 +IGNvYXRz 29127 +IGJ1ZW4= 29128 +IGhlaXI= 29129 +IHBuZXVt 29130 +16nXqA== 29131 +ZW5zZXI= 29132 +IEpVREdF 29133 +IGJsb25kZQ== 29134 +4bmb 29135 +IGdhaw== 29136 +IHPEsWs= 29137 +IHF1b3RlZA== 29138 +IGVxdWlwbw== 29139 +IHdpc2hpbmc= 29140 +w61jaWE= 29141 +IHZlcmJz 29142 +IENhbmFkaWFucw== 29143 +IGdvdmVybmluZw== 29144 +IEV2YW5z 29145 +RXVybw== 29146 +IGdlbnJlcw== 29147 +IHVudGVyc2NoaWVk 29148 +IEJlY2t5 29149 +s7zqsozsmpQ= 29150 +IGVpbmdl 29151 +IFJhaXNl 29152 +b2xhbmQ= 29153 +IFN0cmF0ZWc= 29154 +IGVyZXM= 29155 +IFZldGVyYW5z 29156 +IGJyZWFrb3V0 29157 +IHNhbnTDqQ== 29158 +IGFkZWw= 29159 +IGludmVzdGlnYXRlZA== 29160 +IHBldXI= 29161 +IGFnaWxl 29162 +IHJhaWxyb2Fk 29163 +YW5za2E= 29164 +INC10Lk= 29165 +IGV4cG9z 29166 +YXRvcmllcw== 29167 +IENvbnRlbnQ= 29168 +IHRydXRocw== 29169 +IFRyYWls 29170 +IGd1YQ== 29171 +IHBvcmVz 29172 +IHdyaXRpbmdz 29173 +IFVocg== 29174 +IFRoYXRz 29175 +IGljaW5n 29176 +T0M= 29177 +IFByb2R1Y3Rpb24= 29178 +IGNhcm5l 29179 +SVNT 29180 +IG5pbmd1w6lt 29181 +bm9u 29182 +IHZpY2lvdXM= 29183 +15XXlA== 29184 +IHJlY29ubmVjdA== 29185 +IGNlbnRyZXM= 29186 +IEtlbQ== 29187 +IGNyZWFzZQ== 29188 +IOydtOuvuA== 29189 +0LDQudGC0LXRgdGM 29190 +INCx0L7RgA== 29191 +IEhhecSxcg== 29192 +INGB0YPQtA== 29193 +IMO6bmljYQ== 29194 +b3dhxYI= 29195 +IGFkaGVy 29196 +aHVh 29197 +Wlo= 29198 +IHByZWNpc28= 29199 +IGN1cnJlbnRz 29200 +IHNlYXNvbmVk 29201 +IElvVA== 29202 +IEJpc2hvcA== 29203 +c3RlZA== 29204 +IEJlcm5hcmQ= 29205 +7KSY 29206 +IEdsZW5u 29207 +IGt0w7NyeW0= 29208 +4Li34LmI 29209 +IGFzdHJvbG9n 29210 +IEtvdA== 29211 +IHBhcmZvaXM= 29212 +IGZvcndhcmRz 29213 +IFdpxJk= 29214 +IM6Y 29215 +IG5hbm8= 29216 +c3Vi 29217 +IEJyaWxs 29218 +IGdyaXQ= 29219 +IGNpdGVk 29220 +Z2Fkbw== 29221 +IG1lbHRz 29222 +IGZvcmPDqQ== 29223 +4paI4paI 29224 +IGJham8= 29225 +IGRpc2NyZXRpb24= 29226 +sLA= 29227 +YXRpdml0eQ== 29228 +IHNpdHVhdGVk 29229 +0YnQtdC1 29230 +INC/0YDQuNC90YbQuNC/ 29231 +YW1heg== 29232 +IGFxdWFyaXVt 29233 +IGRpc3NvbHZl 29234 +IEdvZHM= 29235 +U3VwZXI= 29236 +IGFtaWQ= 29237 +ems= 29238 +YW1wZg== 29239 +IGhlbGE= 29240 +JyE= 29241 +IGRldmVsb3BtZW50YWw= 29242 +IERpc2U= 29243 +INGA0LDQsdC+0YLQsNC10YI= 29244 +IHNuYXBzaG90 29245 +1bg= 29246 +IFl1ZQ== 29247 +IEh1bGs= 29248 +IERvb20= 29249 +IEZlbGl4 29250 +IHLDqWY= 29251 +TWFsZQ== 29252 +cGhhbnRz 29253 +RU5T 29254 +IE1lY2hhbg== 29255 +IEdvbGY= 29256 +IGdlbmVyb3NpdHk= 29257 +w6R0emU= 29258 +IHVubG9ja2Vk 29259 +7YOB 29260 +b2NhbHlwc2U= 29261 +QWxyaWdodA== 29262 +IOqwnOs= 29263 +INeQ15HXnA== 29264 +IEtlZXBpbmc= 29265 +IGNvbGxhYm9yYXRpbmc= 29266 +Y2hpZWY= 29267 +IEZlcm5hbmRv 29268 +IGNoZWZz 29269 +IO2UvOu2gA== 29270 +IHNraXBwZWQ= 29271 +IHBlcnNvbm4= 29272 +IGF4ZQ== 29273 +Y2hleg== 29274 +IGV4dHJhY3Rpb24= 29275 +IEFW 29276 +IEdpYmJz 29277 +IO2c 29278 +IHPEsQ== 29279 +SUFN 29280 +Vmlldw== 29281 +IEdSQU5U 29282 +IOuquA== 29283 +IHZlcmlmaWNhdGlvbg== 29284 +IGRlcGljdGVk 29285 +IE1veg== 29286 +b3V4 29287 +IHR1bA== 29288 +IHNjYW5uZXI= 29289 +IGNvbWVkaWFu 29290 +IFZvbGtz 29291 +IEpFRkY= 29292 +p4Q= 29293 +IGRpc3RyYWN0aW9u 29294 +csOh 29295 +IElOVEVS 29296 +IHNpbmNlcg== 29297 +INee16o= 29298 +INep16A= 29299 +IGNvbnN0cnVjdGl2ZQ== 29300 +YXJm 29301 +IOuIhOs= 29302 +IGVjbw== 29303 +cmFtb3M= 29304 +IHJlbmV3ZWQ= 29305 +aW5lbWVudA== 29306 +IFVi 29307 +IFBlcHBlcg== 29308 +7KeA6rCA 29309 +IERhcndpbg== 29310 +IG1lcmNoYW5k 29311 +IHbDoXJpYXM= 29312 +w6hjZQ== 29313 +Tkc= 29314 +IOychO2VtOyEnA== 29315 +INCw0LrRgtC40LI= 29316 +IFVudGVycw== 29317 +2LnZhA== 29318 +IGludHJpYw== 29319 +b21tYQ== 29320 +aWV2aW5n 29321 +IENhcm9saW5l 29322 +IFBSRVM= 29323 +IHBlcmZvcm1lcg== 29324 +IGF1dG91cg== 29325 +IHV0dGVybHk= 29326 +IHN5bnRoZXNpcw== 29327 +IGxlc2JpYW4= 29328 +IHJldHJpZXZl 29329 +IG1hbmVpcmE= 29330 +IGltcGFpcg== 29331 +IG1lbnRvcmluZw== 29332 +IFNvdWxz 29333 +IEdvUHJv 29334 +0YDQsNGC0Yw= 29335 +IGNvc2U= 29336 +IFNTRA== 29337 +SVJF 29338 +IHVwZnJvbnQ= 29339 +IEF1bg== 29340 +IGdhbWVy 29341 +IGxpdHQ= 29342 +IGFnZ3Jlc3Npb24= 29343 +IExpa2V3aXNl 29344 +IEJldHR5 29345 +IERhcnQ= 29346 +IERMQw== 29347 +aXNobWVudA== 29348 +7J6l7J2E 29349 +Y3JlYW0= 29350 +IEJhYnlsb24= 29351 +IG51Zw== 29352 +YnJhcg== 29353 +IGF5bsSx 29354 +YW1pbHk= 29355 +YmlrZQ== 29356 +YWhhaGFoYQ== 29357 +bG95ZA== 29358 +IG1pcmE= 29359 +IHBlcm1l 29360 +IEdhbWluZw== 29361 +IGZpcm13YXJl 29362 +TWE= 29363 +IGFzc2lzdGVk 29364 +YXRpY3M= 29365 +IOyVnuycvOuhnA== 29366 +IE1lbnRhbA== 29367 +bmllanM= 29368 +IEl6 29369 +b3fEhQ== 29370 +IHRvdWdoZXI= 29371 +IGRlZWQ= 29372 +IHN0eWxpc2g= 29373 +IFRvb2xz 29374 +IEhhbXA= 29375 +IHN1bnNjcmVlbg== 29376 +IGFydGljdWxhdGU= 29377 +aXll 29378 +0LjRhA== 29379 +IFNwcmVhZA== 29380 +IEhBVkU= 29381 +IHN3aXJs 29382 +IHNwb25zb3Jpbmc= 29383 +aW92YXNjdWxhcg== 29384 +bWVzaQ== 29385 +IHJlbGF4YXRpb24= 29386 +INGB0LLQvtC40YU= 29387 +IG1hcmdpbnM= 29388 +IHNhxJ8= 29389 +IFByaWRl 29390 +IM+Ezr/Phc+C 29391 +0LjRhtC4 29392 +ZW5jaQ== 29393 +RG9lcw== 29394 +IGNvcnBzZQ== 29395 +IGVuZHVyYW5jZQ== 29396 +IO2emA== 29397 +7Lm0 29398 +IGhhaXJjdXQ= 29399 +IGludGVycnVwdGVk 29400 +IHdpbmR5 29401 +IENhbGVi 29402 +z4HPhw== 29403 +IFBvdXJxdW9p 29404 +IGhvbGlzdGlj 29405 +dWNsZWFy 29406 +IFdob2xl 29407 +QWN0 29408 +IGdhbGxvbg== 29409 +Y2FkZQ== 29410 +IFJlZ2lvbmFs 29411 +cm9hZHM= 29412 +IFNjaG5l 29413 +w6FuZw== 29414 +INC40LfQvNC10L0= 29415 +IG1lbnVz 29416 +IHNwbGl0dGluZw== 29417 +IHByaWNlZA== 29418 +IM6T 29419 +IHVzZXJuYW1l 29420 +INCe0Yc= 29421 +IGNvbXByZXNzZWQ= 29422 +eWlu 29423 +IGd1YXJkaWFu 29424 +IGdvb2Y= 29425 +IGNoZWNrbGlzdA== 29426 +IGludGVyY2hhbmdl 29427 +IGV4cGVkaXRpb24= 29428 +IGV4dGVybg== 29429 +IGluZnJhcmVk 29430 +ZW5nbw== 29431 +IGRlbnlpbmc= 29432 +IHBhY2tldHM= 29433 +b25lbnQ= 29434 +QkI= 29435 +IEluY3Jl 29436 +IHNpbmk= 29437 +w59lcg== 29438 +w6hn 29439 +bWFhbA== 29440 +Z2VuZXJhdGlvbg== 29441 +IG1pbm9yaXRpZXM= 29442 +IGxsZXZhcg== 29443 +IG5vbWluYXRpb24= 29444 +IGNvbnNpZA== 29445 +INec16I= 29446 +bXXFnw== 29447 +IEVzYw== 29448 +IG51bWVyYXRvcg== 29449 +IGthaWs= 29450 +IGt0w7NyeWNo 29451 +aWVzZW4= 29452 +IHbDqg== 29453 +IFVTUw== 29454 +IFByaXZhdGU= 29455 +INC+0LTQvdC+ 29456 +IGFsw6lt 29457 +w610dWxv 29458 +IGxpbWI= 29459 +IGZvcmdpdmVu 29460 +IGRpc2Nsb3N1cmU= 29461 +z4TOrw== 29462 +IG5pbmfDum4= 29463 +IHRoZXJhcGV1dGlj 29464 +IG5lZ290aWF0aW5n 29465 +IE5pa2U= 29466 +ZW5zZWZ1bA== 29467 +IGluY2Fw 29468 +IGZsYWdzaGlw 29469 +dG93bg== 29470 +4og= 29471 +IM+Azr/Ouw== 29472 +IHdvbHZlcw== 29473 +IHZpb2xhdGlvbnM= 29474 +IEFybm9sZA== 29475 +IGludGVydmVuZQ== 29476 +IGhlYXRlcg== 29477 +IHJlY3Vyc29z 29478 +IG1haWQ= 29479 +6rK8 29480 +INC00LDQstCw0LnRgtC1 29481 +IENlbGVicg== 29482 +IGNhcGU= 29483 +IFN0eQ== 29484 +YWluZW4= 29485 +c2l0ZQ== 29486 +Ymlq 29487 +INC/0L7Qu9GM0Lc= 29488 +IGZyYW1lZA== 29489 +IHB1Ymxpc2hlcnM= 29490 +INGH0YPRgtGM 29491 +IHRlbXB0YXRpb24= 29492 +IGNlcnRlemE= 29493 +IGV4ZW1wdA== 29494 +7Iq5 29495 +c2VsbGluZw== 29496 +IFRhc2s= 29497 +aG9vbg== 29498 +IENvYw== 29499 +IFBhcmtz 29500 +IHJlcGV0aXRpb24= 29501 +INGC0YPQtNCw 29502 +IGVuc2w= 29503 +IGRlxJ9pxZ8= 29504 +IE9ybGFuZG8= 29505 +IE1haW50ZW4= 29506 +b2N1bWVudA== 29507 +IEhD 29508 +IHNjb290ZXI= 29509 +INC90LDQv9C40YE= 29510 +IHRpZ2h0ZXI= 29511 +IHRlYXNl 29512 +IHJlbW92ZXM= 29513 +IGtpamtlbg== 29514 +INGB0YPRidC10YHRgtCy 29515 +IHRow6k= 29516 +INCy0YvQs9C70Y/QtA== 29517 +IHJlbGlldmU= 29518 +IG1pdMOk 29519 +IHN0YXRpb25hcnk= 29520 +w7ZmZg== 29521 +cGFibGU= 29522 +IGFydGVy 29523 +IGTDqWY= 29524 +cmF0aXZl 29525 +IGNvbmVjdA== 29526 +IHNhZGRsZQ== 29527 +IERpYW5l 29528 +IGNvbW1lbW9y 29529 +ZmVuZGlt 29530 +U8Ot 29531 +IO2BtOs= 29532 +IG1hbmdl 29533 +YXR0ZQ== 29534 +IGFycm9nYW50 29535 +IHJvYm90aWM= 29536 +IGdpw6A= 29537 +IG5laWdoYm91cmhvb2Q= 29538 +aXNzb24= 29539 +INC00LLQuNC2 29540 +IFJJ 29541 +IE5vcm1hbg== 29542 +YnJhbmQ= 29543 +YW1hdGlvbg== 29544 +IHJhem9y 29545 +IG11cmRlcnM= 29546 +INGC0YM= 29547 +IHdzenlzdGtpbQ== 29548 +IHV0aWxpdGllcw== 29549 +IG1pY3Jvc2NvcA== 29550 +6r8= 29551 +IGRhcXVp 29552 +b2xsYXI= 29553 +INCU0LDQstCw0LnRgtC1 29554 +IGFubsOpZQ== 29555 +IGtpbG9tZXRyZXM= 29556 +IGhvbW9zZXh1YWw= 29557 +IGFyY2hpdGVjdHM= 29558 +IG5peWU= 29559 +TEVS 29560 +IG1pY3JvcGhvbmVz 29561 +IFN0dW5kZW4= 29562 +IGNvbnNlY3V0aXZl 29563 +aWVuZGE= 29564 +dsOkbmQ= 29565 +REVS 29566 +IGxpZnRz 29567 +IE1lYXQ= 29568 +IHNhdmV6 29569 +7ZaI642Y 29570 +TWVu 29571 +IGRpc21hbnQ= 29572 +6rGw66W8 29573 +IGluc3VsYXRpb24= 29574 +IHNjYWxs 29575 +IHNwb29reQ== 29576 +IHBhcmM= 29577 +IGJhbGxldA== 29578 +IFdoYXRzQXBw 29579 +IGZyYW5j 29580 +IGRlbGliZXJhdGU= 29581 +IO2FjA== 29582 +IG1hcnM= 29583 +IFp1cg== 29584 +UHI= 29585 +ZGlzY2lwbGluYXJ5 29586 +IG9ic2Vzc2lvbg== 29587 +0LzQtQ== 29588 +IG1hcmNoaW5n 29589 +IEVtZXJnZW5jeQ== 29590 +aWd1b3Vz 29591 +IHN6eQ== 29592 +IExhbmRz 29593 +IGJvYXJkaW5n 29594 +INC/0L7Rh9GC0Lg= 29595 +IGVudnk= 29596 +IGNvbXBhc3Npb25hdGU= 29597 +IG1lcmNp 29598 +IGRlc2lyYWJsZQ== 29599 +ZGFsZQ== 29600 +IGNhbsSxbQ== 29601 +IEFudGFy 29602 +dGVtcHM= 29603 +IGNvbmZpZ3VyZWQ= 29604 +IENvbXBhcmVk 29605 +bmVo 29606 +aWNhdGluZw== 29607 +IG5pY2tlbA== 29608 +2YjZgg== 29609 +2YPZiNmG 29610 +b3Blcw== 29611 +IGZvcm11bGFz 29612 +INCV0YHRgtGM 29613 +IHBvYmw= 29614 +IFBK 29615 +IEx1ZA== 29616 +IEJyaWQ= 29617 +IEhvZw== 29618 +IEJyaXM= 29619 +SmVu 29620 +IHNoYWRpbmc= 29621 +IFlhcw== 29622 +IGRpc3R1cmJlZA== 29623 +IHJlY29tbWVuZGluZw== 29624 +IGPDqQ== 29625 +IEhPVw== 29626 +7JeI7Ja0 29627 +IHJldmVyc2Vk 29628 +IEludGVyZXN0aW5nbHk= 29629 +aW94aWQ= 29630 +IOyYpOy8gOydtA== 29631 +4bq/dQ== 29632 +eHg= 29633 +IG91YWlz 29634 +IFlvdVR1YmVycw== 29635 +IFJvc2E= 29636 +IEhhdXB0 29637 +amFkaQ== 29638 +IHZsb2dz 29639 +IGN1bHR1cmE= 29640 +IExlYWRlcnNoaXA= 29641 +IEhlcA== 29642 +IGlsbHVt 29643 +tOuPmQ== 29644 +IGN1c3RvbWl6ZWQ= 29645 +IG1hcmNh 29646 +IHF1YXRybw== 29647 +INC90LDQsw== 29648 +IFNwYWNlWA== 29649 +IEVpZ2Vu 29650 +YXN0aW5n 29651 +IG9sZHXEn3U= 29652 +IGZvcnRz 29653 +cmltZW50 29654 +aWVuY2lh 29655 +IHRlbmly 29656 +cm9mZmVu 29657 +IDE5Nzk= 29658 +IGNpZQ== 29659 +IOuQmOqzoA== 29660 +IGVzY3Jp 29661 +z4zPgg== 29662 +7Y+s 29663 +dXp6eQ== 29664 +Q29uZw== 29665 +7J247J20 29666 +R3JlYXQ= 29667 +c2ls 29668 +w6ljaA== 29669 +IG11bHRpYw== 29670 +IERpc2s= 29671 +spU= 29672 +IGZhemxh 29673 +IGxldmFudA== 29674 +IGFiYWpv 29675 +dXJyeQ== 29676 +c3RydQ== 29677 +IOuoueuKlA== 29678 +IGFjY2Vzc29yeQ== 29679 +INC00LLQuNCz 29680 +IFJpZA== 29681 +MjAxOQ== 29682 +IGRvd25zdHJlYW0= 29683 +IGtheg== 29684 +dXRhbg== 29685 +IGNoYXJjb2Fs 29686 +IGFmZWN0 29687 +d3U= 29688 +IGNvbnRleHRz 29689 +IGZlYXJlZA== 29690 +IOyEpA== 29691 +IGhpc3Rvcmllcw== 29692 +IGZhcw== 29693 +ZW5zaWJsZQ== 29694 +IGNvY29h 29695 +aWxsYXI= 29696 +Z2VvbnM= 29697 +IHNwaXJpdHVhbGl0eQ== 29698 +IFBldw== 29699 +IHBoYXJtYWN5 29700 +IHBhc3Npb25z 29701 +IGJvcw== 29702 +IGFsbMOh 29703 +IHRocml2aW5n 29704 +IFJlYWN0 29705 +IG9jY3VweQ== 29706 +IHdpdGhkcmF3YWw= 29707 +IGFsbG93YW5jZQ== 29708 +IEZyYWt0aW9u 29709 +IGJ1ZGRpZXM= 29710 +IGlkbGU= 29711 +IGRpc3NvbHZlZA== 29712 +IHByZXZhbGVudA== 29713 +IG1pbGl0YXI= 29714 +IHNlbnNpbmc= 29715 +IHBvamF3 29716 +IGFuY29yYQ== 29717 +IGFidW5kYW50 29718 +IGhhaXJzdA== 29719 +IHR3ZWU= 29720 +IG7DpGNoc3Rl 29721 +IE3DtmdsaWNoa2VpdA== 29722 +IGhvbw== 29723 +dWZmaWNpZW50 29724 +IGZhbnRhc3Q= 29725 +IGVkaWJsZQ== 29726 +IOuWqOyWtOw= 29727 +7JuD 29728 +IHZlaW4= 29729 +dWNjaQ== 29730 +IGRldm90aW9u 29731 +IGNvbmNlYWxlcg== 29732 +aW5jb21l 29733 +IHJlY3ljbGVk 29734 +IOyKpO2DgA== 29735 +IHBvbnRvcw== 29736 +IGRlc3N1cw== 29737 +IHbDqXJpdA== 29738 +IHJlZmxlY3Rpb25z 29739 +IEFB 29740 +IHRha2Vhd2F5 29741 +YmFyZQ== 29742 +IENvbnRhY3Q= 29743 +ZWls 29744 +IEhlYXI= 29745 +IG1pcmFj 29746 +IEdlcmlsaW0= 29747 +INGB0LDQvNGL0Lk= 29748 +IHZpdm8= 29749 +IGtpbG9ncmFtcw== 29750 +IENyaW0= 29751 +w7t0 29752 +Nzg= 29753 +IHNpbmNlcmVseQ== 29754 +cmF6 29755 +IOuztQ== 29756 +IGFycml2 29757 +IGNvbmNlcHRpb24= 29758 +IFBlcnNpYW4= 29759 +IHNqw6Rs 29760 +IHN0YXJyaW5n 29761 +IOyVhOustA== 29762 +IEZvcmV2ZXI= 29763 +0LXRgdGC0Yw= 29764 +IHZlaWw= 29765 +IHN1YnRpdA== 29766 +b2RrYQ== 29767 +INC+0YLQvdC+0Yg= 29768 +IGNvb2tz 29769 +0LXQvdGP 29770 +S2F5 29771 +IG5pw7Fvcw== 29772 +IFBob25l 29773 +IHN0aXRjaGluZw== 29774 +IGZpbmdlcnByaW50 29775 +zrvOrA== 29776 +IGRlZGljYXRl 29777 +IExvYg== 29778 +IGJsYWNrcw== 29779 +IEJsZQ== 29780 +Ym91dA== 29781 +IMSRYW5n 29782 +IGVrcw== 29783 +IHNxdWFzaA== 29784 +IEvDvA== 29785 +b2Rp 29786 +IG7GsOG7m2M= 29787 +IHZveWFnZQ== 29788 +IHBsYXlmdWw= 29789 +INil2YTZiQ== 29790 +YW5pYw== 29791 +IGNvbmRlbW4= 29792 +IELDtnlsZQ== 29793 +IFBvbGl6ZQ== 29794 +IGF5dWRh 29795 +IHBhbQ== 29796 +4LmE4Lib 29797 +IEthdGh5 29798 +0LXQtNC40L0= 29799 +0L3QvtCy0LA= 29800 +IGJyaWc= 29801 +ZWdlcg== 29802 +IGVhZ2xl 29803 +IHZpc2lvbnM= 29804 +IO2VreyDgQ== 29805 +IHNoaXR0eQ== 29806 +IGhvdHQ= 29807 +IEJyaXR0 29808 +dXRvcnM= 29809 +RU5URQ== 29810 +IHBob24= 29811 +IEJpbmc= 29812 +INC/0L7QtNC00LXRgNC2 29813 +c3ByaW5n 29814 +ZXR0ZW4= 29815 +IHBpbGdy 29816 +IGVkaXlvcg== 29817 +0LXQvdGC0Ys= 29818 +YWdnaW8= 29819 +IGp1bA== 29820 +IGNvbXByZW5k 29821 +dGVpbA== 29822 +INiy 29823 +IHBlcmZvcm1lcnM= 29824 +IGluZmFtb3Vz 29825 +IE1L 29826 +56o= 29827 +b3RsZQ== 29828 +ZWZm 29829 +IEhhc2g= 29830 +IGNvd2FyZA== 29831 +IEJSQQ== 29832 +IERE 29833 +IGNvbWlkYQ== 29834 +IHBsYXRh 29835 +IGZsYXA= 29836 +IE1laHI= 29837 +cmlidXRpb24= 29838 +IFllbWVu 29839 +IG15c3Rlcmllcw== 29840 +IMSweWk= 29841 +IHN0ZWxs 29842 +IGV5ZWxpbmVy 29843 +IGRlbGVz 29844 +IG5haWxlZA== 29845 +IGlsbG5lc3Nlcw== 29846 +IHN0YWNrcw== 29847 +IHRyYWJhamFy 29848 +Zmxvd2Vy 29849 +Y2l1 29850 +IGNydWRl 29851 +IHN1YnN0YW50aWFsbHk= 29852 +IGhvbWVt 29853 +IG5lcGhldw== 29854 +IHN0YW1wcw== 29855 +IGNhcmJz 29856 +0YzRgtC1 29857 +bW9vdGg= 29858 +IHR1bm5lbHM= 29859 +YWNpZQ== 29860 +IFNlw7E= 29861 +IEhlcmE= 29862 +IOyVhOuLiOyXkOyalA== 29863 +IFd5b21pbmc= 29864 +IEhETUk= 29865 +IExpcw== 29866 +dWNpw7Nu 29867 +IHN0ZWVy 29868 +0L7Rjg== 29869 +0LjRgtCw 29870 +TlQ= 29871 +IOyWvOq1tA== 29872 +IHBhbG1z 29873 +IG5lb24= 29874 +0L7QstCw0L3QuNGP 29875 +IGZpbHRlcmluZw== 29876 +IGpvdWVy 29877 +IEjDtg== 29878 +INC90LXRgQ== 29879 +6rKg7Ja07JqU 29880 +IDgx 29881 +IHN0b3J5bGluZQ== 29882 +IHByemVw 29883 +IHRoYW5raW5n 29884 +IEJvZWluZw== 29885 +IHNvZnRseQ== 29886 +amVt 29887 +0LDQu9GM0L3Ri9GF 29888 +IGZsYXNobGlnaHQ= 29889 +INC/0YM= 29890 +IFdPTUFO 29891 +4bqvYw== 29892 +w61jaA== 29893 +IGx1eHVyaW91cw== 29894 +IHfDvG4= 29895 +IGltcGFjdGZ1bA== 29896 +IGNvbnNvbg== 29897 +cmV1 29898 +aXJyaW5n 29899 +aWZ0ZXI= 29900 +IGNvbnN0aXR1ZW50cw== 29901 +IDk0 29902 +IFRvdQ== 29903 +Z29t 29904 +IOyDneqwgeydhA== 29905 +IHN0ZXJlb3R5cGVz 29906 +IG1vxbxsaQ== 29907 +gqg= 29908 +IHBlbmNpbHM= 29909 +INGB0LvQvtC2 29910 +IGlocmVt 29911 +IEJlc2No 29912 +IEtvaA== 29913 +IEVudHNjaGVpZA== 29914 +IGxlaw== 29915 +IGbDtnJz 29916 +IHRvdGFsbWVudGU= 29917 +IGxpdmVseQ== 29918 +IGVudHJvcHk= 29919 +IGRpc2Nlcm4= 29920 +INCX0L3QsA== 29921 +IGRvdg== 29922 +IG15dGhvbG9neQ== 29923 +YXBhbmVzZQ== 29924 +IGFwcHJveGltYXRl 29925 +0LDRgtC40LI= 29926 +aWZpYWJsZQ== 29927 +IFNlbw== 29928 +tOyLrO2eiA== 29929 +IOyYtw== 29930 +IHRlbXBvcmFs 29931 +IGlU 29932 +IGVzdGF0 29933 +0LrQuNC8 29934 +IHNwcmluaw== 29935 +IGdydW5k 29936 +IGluZmFudHJ5 29937 +IHNjaGFmZmVu 29938 +IGFuaw== 29939 +cmlhZ2Vz 29940 +IFllb24= 29941 +IE1vcm9j 29942 +IGludmFzaXZl 29943 +gZQ= 29944 +IHBhcmVudGluZw== 29945 +IFJpcw== 29946 +aWJpbGU= 29947 +IG1vZHM= 29948 +INC/0YDQvtCy0LXRgA== 29949 +IFRoaW5n 29950 +IFdoZXJldmVy 29951 +IGFja25vd2xlZGdpbmc= 29952 +IHBhd24= 29953 +dW1tZXI= 29954 +b3Ji 29955 +Njk= 29956 +IHJldHJvdXZl 29957 +IHJlbGllcw== 29958 +IEhpZ2h3YXk= 29959 +IGF3ZQ== 29960 +aXRhaXJl 29961 +IGFwcGxpY2FudA== 29962 +IGFpc2xl 29963 +d29ybQ== 29964 +IHBheWxvYWQ= 29965 +IGNhcnJl 29966 +IEJhY2g= 29967 +IOy5nOq1rOs= 29968 +0L3QuNC1 29969 +IGl0w61z 29970 +b25uYWlzZQ== 29971 +c29s 29972 +YWxnaWE= 29973 +IHJvY2tpbmc= 29974 +IGJlc3Rlbg== 29975 +cml0ZXM= 29976 +Xl4= 29977 +0LjQvdC+0Lk= 29978 +IGJhaXhv 29979 +IOq4sOyWtQ== 29980 +0L7RgtGA0Lg= 29981 +c2lt 29982 +IGluY2Fybg== 29983 +64uk7J2M 29984 +IGxpY2s= 29985 +c2lkZWQ= 29986 +IDcx 29987 +Zm9yZGVy 29988 +IHJlc29uYW5jZQ== 29989 +IHRlZ2Vu 29990 +IG1ldGFwaA== 29991 +b3dzZXI= 29992 +INeQ16DXl9eg15U= 29993 +P+OAjQ== 29994 +IHNwaWVsZW4= 29995 +IHZvbGxleQ== 29996 +lOydtO2BrOyXhQ== 29997 +bG9va2Vk 29998 +IHNlbnRlbmNlZA== 29999 +IG11bHRpcGx5aW5n 30000 +IGlkZWFscw== 30001 +IHdhaHJzY2hlaW5saWNo 30002 +IGRlcG9zaXRz 30003 +YmlsaXI= 30004 +IGVmZmV0 30005 +aWxsb24= 30006 +iOunjA== 30007 +IHRlc3RpbW9u 30008 +IHphd3N6ZQ== 30009 +INC/0YDQvtGG0LXRgdGB 30010 +IExhdg== 30011 +IHRyYXZhaWxsZXI= 30012 +IGxhaXNzZQ== 30013 +IE1vdW50YWlucw== 30014 +INGA0L7QsQ== 30015 +IGV4YW1pbmVk 30016 +aXR1cw== 30017 +V2Fz 30018 +0LvRiw== 30019 +IGF0dHJpYnV0ZWQ= 30020 +IOyKuQ== 30021 +IEJhcm9u 30022 +IGdlcA== 30023 +IGF0dGVudA== 30024 +IENvbGxlY3Rpb24= 30025 +IHRoZWF0 30026 +IENhaQ== 30027 +IHdlbGxz 30028 +IGh1bWFubw== 30029 +IEhhc3Q= 30030 +INGF0L7RgtGP 30031 +Y3phcw== 30032 +IHBlcm1pdHM= 30033 +IGxlZ2c= 30034 +IGVwbw== 30035 +IEZlbg== 30036 +IHRoaQ== 30037 +IEZvaQ== 30038 +IMOpbGVjdA== 30039 +IDgz 30040 +IG92ZXJ0aA== 30041 +IHRlbmFudA== 30042 +TmV4dA== 30043 +IHByYWlzZWQ= 30044 +c2VjdXJpdHk= 30045 +IEltcGFjdA== 30046 +IHZvdWNo 30047 +IG5lZ8Oz 30048 +IHVudmU= 30049 +IGNyaXRpY2l6ZQ== 30050 +IEtlbnlh 30051 +IHRhY3RpYw== 30052 +IGxvZ3I= 30053 +IHBvaXM= 30054 +IHBhcGE= 30055 +c3BlYWtz 30056 +8J+R 30057 +aXNwZXJz 30058 +IHN1cnBsdXM= 30059 +IGNvbGRlcg== 30060 +cGxldHM= 30061 +IFZpZW5uYQ== 30062 +IExlYWQ= 30063 +IGFlcmlhbA== 30064 +IFRhaA== 30065 +0LXQvdGC0L7Qsg== 30066 +IEdyZWVrcw== 30067 +Q2Ft 30068 +IG3DoXhpbQ== 30069 +IGt1aW4= 30070 +Y2hpbw== 30071 +IGRlbW9uc3RyYXRlcw== 30072 +YW5vcw== 30073 +IENlcnQ= 30074 +INGN0L0= 30075 +IGJsb2dz 30076 +IOyEnOyauA== 30077 +IGJlYW1z 30078 +0LjQutC+0LI= 30079 +IHByb21wdGVk 30080 +IGZyaWdodGVuaW5n 30081 +IFBvcnNjaGU= 30082 +bGFyxLFuxLE= 30083 +IGNoaWxsaW5n 30084 +aXNwaGVyZQ== 30085 +IGZsYXNoaW5n 30086 +IEthcmQ= 30087 +YnJlYWQ= 30088 +IGV4aA== 30089 +IHR5Y2tlcg== 30090 +IGVjb2xvZ2ljYWw= 30091 +IE1hZQ== 30092 +INee15DXldeT 30093 +IOuCmOuPhA== 30094 +0LvQvtC9 30095 +eXNz 30096 +IHBlcmd1bnQ= 30097 +IHByaXg= 30098 +aXp6YXJk 30099 +IGNhbmNlcnM= 30100 +IDkx 30101 +c3VzcA== 30102 +IEl0ZW0= 30103 +xZ9h 30104 +IHBlc3Q= 30105 +IHRha8SF 30106 +IGx5bXBo 30107 +IFBhdHJp 30108 +ZmlsbA== 30109 +IHJlY29ubmE= 30110 +IG9wdGltaXNt 30111 +IG1pbWlj 30112 +IOyynA== 30113 +IE1hZGFtZQ== 30114 +b2N5 30115 +bGluaW5n 30116 +ZXJtZQ== 30117 +IGZvbGRlcnM= 30118 +IGN6xYI= 30119 +dWNoYXI= 30120 +IGN1cnNv 30121 +IGJyZWFjaA== 30122 +0L3QuNGC0Yw= 30123 +IHBhbWnEmQ== 30124 +IGVsaWc= 30125 +IGF1dG9w 30126 +Rmxvdw== 30127 +IHByb2dyYW1tZWQ= 30128 +IFByb2Nlc3M= 30129 +IGZpZ3Vy 30130 +IFNG 30131 +IEVsZXM= 30132 +IHByb2dyYW1tZXM= 30133 +IGRpenp5 30134 +7Iuc6rCE 30135 +INC70LjQsdC+ 30136 +IHNuaWZm 30137 +IFNlYmFzdGlhbg== 30138 +IEh5ZQ== 30139 +IDQwMDA= 30140 +IHBlcm1pdGU= 30141 +INC30LDRiQ== 30142 +IGd1aXQ= 30143 +IERhaXM= 30144 +IGFjY29yZGFuY2U= 30145 +IG1vZHVsYXI= 30146 +b2dlbmVvdXM= 30147 +IHBvdXF1aW5obw== 30148 +IGFydGlsbGVyeQ== 30149 +IGx1YnJpYw== 30150 +IHZvbGNhbg== 30151 +IE5I 30152 +8J+k 30153 +IGRlYW4= 30154 +Umg= 30155 +IG1pbmlzdHJl 30156 +IEludg== 30157 +IEJ1bGdhcg== 30158 +IERhdGVu 30159 +6I4= 30160 +SW0= 30161 +IG9yaWdpbmF0ZWQ= 30162 +IE5peG9u 30163 +aW50ZWdy 30164 +IGxhY2tz 30165 +IE5hY2h0 30166 +7Ja064KY 30167 +Y2FtZXJh 30168 +IHJhZGlzaA== 30169 +a2l5ZQ== 30170 +IGFuZ2Vz 30171 +IHByw6lm 30172 +anVr 30173 +IEJlZQ== 30174 +IEJV 30175 +INCy0L7RgdC/ 30176 +IEJU 30177 +w6ptZXM= 30178 +IFN0w7xjaw== 30179 +IEluaw== 30180 +IFNlcmdlYW50 30181 +IE11bHRpcA== 30182 +IGhpw6diaXI= 30183 +INCh0LDQvA== 30184 +IETDqQ== 30185 +b2xwaA== 30186 +7Ja4 30187 +IGltcGF0 30188 +IOyViuqzoA== 30189 +INGC0LDQutC+0LPQvg== 30190 +INC90LDQstC10YDQvdC+0LU= 30191 +IHVucHJlZGljdGFibGU= 30192 +IG1lbmQ= 30193 +IOyXhuyWtOyalA== 30194 +IGpha2llxZs= 30195 +IGFubmk= 30196 +IGRvbm7DqQ== 30197 +IEtpcnN0eQ== 30198 +IHJlY3Rhbmd1bGFy 30199 +IGVtcGV6YXI= 30200 +IEV4Y2hhbmdl 30201 +6rCU 30202 +IMOpY29ub20= 30203 +ZWxpbg== 30204 +cmVpYnQ= 30205 +INeU16Q= 30206 +IGNlbWV0ZXJ5 30207 +IGVzcGHDsW9s 30208 +b2xpbg== 30209 +0LvRjtC0 30210 +IGdyw6JjZQ== 30211 +YWxsZW4= 30212 +IFBoaWxvcw== 30213 +IEVyc3Q= 30214 +IOyDiA== 30215 +IFZpZA== 30216 +R2l2ZQ== 30217 +T0g= 30218 +zrzOvw== 30219 +IFBhcmU= 30220 +IG1ldGFib2xpc20= 30221 +IG1hcGxl 30222 +IGF4bGU= 30223 +IER5 30224 +IGtvbW1l 30225 +z47OvQ== 30226 +IGdyZWF0bmVzcw== 30227 +IHZlcmlmaWVk 30228 +IHNww6k= 30229 +IEZhaHJlbmhlaXQ= 30230 +IEJyZW4= 30231 +IENvbmZlZGVy 30232 +IGhpc3RvaXJl 30233 +IGVsaW1pbmF0aW5n 30234 +IEFkZGluZw== 30235 +IEFiaQ== 30236 +IGhvc3BpdGFsaXR5 30237 +dGlt 30238 +IGJvbml0bw== 30239 +IHBhcnRlcw== 30240 +INC00YDRg9Cz0LjRhQ== 30241 +IFNoYXk= 30242 +IFNlZA== 30243 +IHJlZ3JldHM= 30244 +0Y/QvNC4 30245 +IHRlbmFudHM= 30246 +IFBUUw== 30247 +IGRldmk= 30248 +IExhdGU= 30249 +dWV6 30250 +IHPDtnls 30251 +IOyerOuwjA== 30252 +IHRvZ2dsZQ== 30253 +IG1hc2tpbmc= 30254 +0LDQu9GM0L3QvtCz0L4= 30255 +IHBlcnPDtm4= 30256 +IGFtZXJpY2Fu 30257 +Zmlr 30258 +IFJHQg== 30259 +ZW5zb24= 30260 +IEtB 30261 +d3d3dw== 30262 +INGA0LXQsw== 30263 +bWV0aWNz 30264 +IGVkdWNhdG9y 30265 +cGFyaw== 30266 +0LXQu9GM0LfRjw== 30267 +YXJ1cw== 30268 +0YDQtdGC 30269 +IGZlaXRv 30270 +IGNob2ly 30271 +IGxhcmdv 30272 +IGVlbnM= 30273 +IHdhdHRz 30274 +IFNpbmdsZQ== 30275 +IHN1c2NlcHRpYmxl 30276 +aWNlcg== 30277 +INCy0LrQu9GO0Yc= 30278 +IHB1cw== 30279 +7ZmY 30280 +RW5n 30281 +IGZhbnRhcw== 30282 +IHNwZWNpZmljYXRpb24= 30283 +IGNvbmZyb250ZWQ= 30284 +IENvbHVtYnVz 30285 +0LjQstC10YI= 30286 +YXLEsW0= 30287 +IGNhZmZlaW5l 30288 +bXVuaXRpb24= 30289 +IG1pZ3JhbnRz 30290 +bGlkZQ== 30291 +aXRhdGlvbnM= 30292 +IEdlbWU= 30293 +4bqr 30294 +IHBsYW5uZXI= 30295 +IHN0aW11bGF0ZQ== 30296 +IGFwcm94aW0= 30297 +Y2V1 30298 +IE5vbQ== 30299 +IHZvZw== 30300 +INGA0LDRgdGC 30301 +IGVuc2XDsQ== 30302 +IHNlbGxlcnM= 30303 +IGd1dGVu 30304 +emQ= 30305 +Q2Fs 30306 +IGRlc2NyaXB0 30307 +IHJlY29uY2lsaWF0aW9u 30308 +emluaG8= 30309 +4bmHYQ== 30310 +YWN5ag== 30311 +IENPTA== 30312 +c2F3 30313 +IO2ZleyduA== 30314 +IHZhcml0 30315 +IHBhcnRuZXJpbmc= 30316 +IGRldGVudGlvbg== 30317 +IGJvbWJpbmc= 30318 +Y2xhcHBpbmc= 30319 +aWVuY2llcw== 30320 +b25kdQ== 30321 +QU1F 30322 +IOqwmeyKteuLiOuLpA== 30323 +Y8OtYQ== 30324 +INC/0L7RgdGC0L4= 30325 +IEFTTVI= 30326 +IGhvbWVwYWdl 30327 +IHNpw6g= 30328 +YW50aGE= 30329 +IFBvbGw= 30330 +IGlnZW4= 30331 +Y3ljaA== 30332 +IOqwkeyekOq4sA== 30333 +IGNvbnNpZGVyYWJseQ== 30334 +IEFyaXN0 30335 +IHdpdGhzdGFuZA== 30336 +IHF1YWxpdGF0aXZl 30337 +IEtyYWZ0 30338 +INGN0LvQtdC60YI= 30339 +IEJlYWQ= 30340 +0LXQutGC0LjQsg== 30341 +IGNydXNoaW5n 30342 +7LOQ 30343 +IG5hdnk= 30344 +2Yjaug== 30345 +c2hv 30346 +IG9haw== 30347 +aXBwZXJz 30348 +IHNvaWxz 30349 +IHBpZ21lbnQ= 30350 +IGV2aXRhcg== 30351 +IGZ1c2U= 30352 +IERhbGU= 30353 +OiI= 30354 +IGNvbXBsw6h0ZW1lbnQ= 30355 +IGtlbA== 30356 +4LmG 30357 +IHF1YXRyZQ== 30358 +IFVN 30359 +IOunkOs= 30360 +w61y 30361 +IGxlaXN1cmU= 30362 +IEhvdXNpbmc= 30363 +IGZvbGRz 30364 +ZXN0aW9u 30365 +QVJT 30366 +IG1hc2g= 30367 +dXJwb3Nl 30368 +IGFjY3VtdWxhdGVk 30369 +IFN0dWZm 30370 +IHRhcGVz 30371 +INGB0LjQu9GM0L3Qvg== 30372 +IExPVkU= 30373 +IDE5ODI= 30374 +IHNjYXJz 30375 +IGNhcGl0YWxpc3Q= 30376 +IE5lZA== 30377 +IHNvZnRlbg== 30378 +IG5vdGFibHk= 30379 +IGZvcmPDqW1lbnQ= 30380 +IFJhdW0= 30381 +INC90LXQvtCx0YXQvtC0 30382 +IHRyYWRlbWFyaw== 30383 +IGZlcnRpZw== 30384 +ID8h 30385 +IHJlaW5mb3JjZWQ= 30386 +IHJlY2hhcmdl 30387 +IFB1dHRpbmc= 30388 +IHZpbGxhaW5z 30389 +IGhhbmRpYw== 30390 +IGFkdmVydGlzZW1lbnQ= 30391 +2KrZig== 30392 +INGB0YPQvA== 30393 +IFJpbGV5 30394 +15XXkdc= 30395 +T3M= 30396 +2KfYsg== 30397 +Qm95 30398 +IHNxdWlzaA== 30399 +b2NrZXQ= 30400 +IHRlc3RpZnk= 30401 +INec157X 30402 +INC80LDRgdGB 30403 +bWFudWVs 30404 +IEFya2Fuc2Fz 30405 +aWZmZQ== 30406 +IGFuYWx5c3Rz 30407 +IERlYWY= 30408 +IGrDsw== 30409 +IGdyb2Nlcmllcw== 30410 +IFdoZWVs 30411 +INGA0LjRgQ== 30412 +IGPDsm4= 30413 +IENvYg== 30414 +IHByaXNvbnM= 30415 +w6h2ZQ== 30416 +IENhYmluZXQ= 30417 +IHBvc2Vk 30418 +IGd1ZXJyZQ== 30419 +IExsb3lk 30420 +IGNsZXJr 30421 +IGNyaXNlcw== 30422 +IFNobw== 30423 +IE9yZQ== 30424 +IEZvb3RiYWxs 30425 +IEFkdmlz 30426 +IFpoZW5n 30427 +6I0= 30428 +IEFNWQ== 30429 +IHVuZm9y 30430 +IG1vbmFzdGVy 30431 +IGNvbXBpbGU= 30432 +IGltbW9ydGFs 30433 +YXRhYmxl 30434 +IHBhcmFubw== 30435 +IHRpdmVy 30436 +IFN0ZXBo 30437 +IEZ1w58= 30438 +IGRpc2NvbnRpbg== 30439 +IHJpcGU= 30440 +IGhhY2tpbmc= 30441 +IHNpZW5kbw== 30442 +IHNlZ3Vybw== 30443 +YWx0cmVz 30444 +IGFuZGVyZXM= 30445 +IOumrOs= 30446 +IGV4cG9ydHM= 30447 +IHRhYmlp 30448 +IOq4sOuLpOs= 30449 +IGJvdGhlcmluZw== 30450 +IHBpY2tsZQ== 30451 +IEJSSUFO 30452 +IGFsdGFy 30453 +INC/0YDQuNCx 30454 +IHRyYW5zZmVycmluZw== 30455 +IFZvcnM= 30456 +INmH2Yg= 30457 +IFph 30458 +IEZyYW5jZXM= 30459 +IGJyb3dzZQ== 30460 +ZW1pdA== 30461 +IGNoZXdpbmc= 30462 +IEZyZWRkeQ== 30463 +IGVkaXRvcnM= 30464 +w6RsbGU= 30465 +IO2MgA== 30466 +IFNxdWU= 30467 +IEN1bHR1cmFs 30468 +YXdr 30469 +IFNhY2hl 30470 +IENhcmJvbg== 30471 +4bqvdA== 30472 +Rkw= 30473 +IE5HTw== 30474 +cGXFgg== 30475 +IFNvdQ== 30476 +IGh2b3I= 30477 +dW5pbnRlbGxpZ2libGU= 30478 +IOuylQ== 30479 +IMKw 30480 +aWlu 30481 +INei150= 30482 +IGRlcnJpw6hyZQ== 30483 +IGN6eW0= 30484 +IEFwb3N0 30485 +IHJlZ2FyZGVy 30486 +IGFncmFkZQ== 30487 +IENhbmR5 30488 +IG1hcmU= 30489 +IGludHJvZHVjZXM= 30490 +YmlyZHM= 30491 +IHVuaXF1ZWx5 30492 +IG11aw== 30493 +IGNvb2tlcg== 30494 +IGNyZXdz 30495 +IGplaXRv 30496 +RVJU 30497 +toTr 30498 +bmlzc2U= 30499 +IGVm 30500 +IGNhcnRl 30501 +IFlhaw== 30502 +IFBBVA== 30503 +0LjQvdC+ 30504 +Ym9ra2k= 30505 +IG1hdGVz 30506 +IGRpc3RpbnQ= 30507 +IOy9lOuhnOuCmA== 30508 +IHnEsWw= 30509 +IM66zqzOvQ== 30510 +IGNvbmZpZ3VyYXRpb25z 30511 +ZW5nYQ== 30512 +cmVjaHQ= 30513 +SGFwcHk= 30514 +aW52ZXN0 30515 +IHJlY29uc3RydWN0 30516 +INGN0YLQvtC80YM= 30517 +IG1vc3F1ZQ== 30518 +cmF1bQ== 30519 +IHZveWV6 30520 +IE5CQw== 30521 +IOyekOyLoA== 30522 +IHN0dXJkeQ== 30523 +INC60LDQvw== 30524 +IGFuc2No 30525 +YWxpZA== 30526 +IG1hc2lo 30527 +IFJFUA== 30528 +IOy9lOs= 30529 +IGRlZHVjdA== 30530 +IHNhbGly 30531 +d3VyZg== 30532 +aWxvdA== 30533 +IE11dHRlcg== 30534 +b2xkcw== 30535 +IEZFTUE= 30536 +IEJpYg== 30537 +IG5laWdoYm9yaW5n 30538 +IGJsaXNz 30539 +IO2YvA== 30540 +0LvQuNGB0Yw= 30541 +INGC0YDQtdCx 30542 +IGdyZW5hZGU= 30543 +IGVnYWw= 30544 +IGZpbmVseQ== 30545 +IHBldGFscw== 30546 +IGtlZXI= 30547 +IGNoeWJh 30548 +IHNraXBwaW5n 30549 +IHRoaXJ0ZWVu 30550 +IGdyYXZ5 30551 +IFNBVA== 30552 +NjE= 30553 +INC90L7Qsw== 30554 +IG1pbnM= 30555 +SVRF 30556 +IHNvemlhbA== 30557 +7ZWY66m07ISc 30558 +cnVrdHVy 30559 +INCy0L7Qt9C80L7Qtg== 30560 +INC+0L/Rj9GC0Yw= 30561 +IGFydGg= 30562 +IEN1YmFu 30563 +IHRyZWFzdXJlcw== 30564 +IGZlcnRpbGl6ZXI= 30565 +IGF3YWtlbmluZw== 30566 +IOuwseyLoA== 30567 +IHJhbGw= 30568 +IGRlcGljdA== 30569 +IFBhYmxv 30570 +IG5pbmV0ZWVu 30571 +IHdhdHQ= 30572 +IGVudGlyZXR5 30573 +S1M= 30574 +IFdvb2Rz 30575 +U2No 30576 +INqp2Yg= 30577 +IERyeQ== 30578 +dXZl 30579 +IHJlY29uc3RydWN0aW9u 30580 +IGFuYXRvbXk= 30581 +iOulvA== 30582 +IGJhYmE= 30583 +IGxpc3RlbmVy 30584 +IHNoYXJwZW4= 30585 +IFBlcnU= 30586 +INCy0YvQtw== 30587 +IHJlY3JlYXRpb24= 30588 +IGluaXRpYXRl 30589 +IGNhbG9y 30590 +IE5hag== 30591 +Z2Vl 30592 +IEZlZWxz 30593 +IFNuYXBjaGF0 30594 +IFRldA== 30595 +IE5lc3Q= 30596 +IERhZg== 30597 +IEZpbmlzaA== 30598 +INGC0LDQutC40Lw= 30599 +w7pj 30600 +aXplbnM= 30601 +IHNwaW5z 30602 +IGVtYnJ5 30603 +IHBhc3NhZ2Vz 30604 +IGNpZW50 30605 +IGp1c3RpZmljYXRpb24= 30606 +IG9sbWF6 30607 +IGZsb29kZWQ= 30608 +IGVtb2pp 30609 +IGVtYnJhY2luZw== 30610 +IGRpc2NhcmQ= 30611 +IEJhc2lj 30612 +YWdvZw== 30613 +IOychO2VtA== 30614 +IGFzeWx1bQ== 30615 +ZXJpbg== 30616 +IGZpbQ== 30617 +IG5pbmph 30618 +IGF1dG9tYXRl 30619 +IGFsbGVyZ2lj 30620 +w7/Dv8O/w78= 30621 +YW1hbQ== 30622 +INC80LDRgA== 30623 +IE9p 30624 +w6R1cw== 30625 +IGluZHVjdA== 30626 +IEJFTg== 30627 +IHrFgg== 30628 +IGthxbxkeQ== 30629 +IEFNUA== 30630 +bsSb 30631 +U3VyZQ== 30632 +IHF1aWw= 30633 +IGVzcGVj 30634 +cm9r 30635 +QlNDUkk= 30636 +IGxpZWJl 30637 +cHVz 30638 +YWNoc2Vu 30639 +IGNyaWNrZXQ= 30640 +64qQ 30641 +IEZyYW1l 30642 +ZWtrw7xy 30643 +YXJi 30644 +IHDFmQ== 30645 +0LjRgdGB 30646 +IHplZ2dlbg== 30647 +IGRvdWJsZXM= 30648 +IERyZQ== 30649 +dGVzdA== 30650 +aW5zcA== 30651 +Ym95cw== 30652 +IG3Do28= 30653 +IFZlcnNl 30654 +IG11c2N1bGFy 30655 +IE1BTEU= 30656 +IGR1bHU= 30657 +IG9jY2FzaW9uYWw= 30658 +TG8= 30659 +Y29ub21pYw== 30660 +IHZhaw== 30661 +IHJlbWVkeQ== 30662 +IOKZquKZquKZqg== 30663 +dmVt 30664 +IMO2bmVt 30665 +IGthcsWfxLE= 30666 +IFNoYXJw 30667 +aHVy 30668 +IOuwqeuylQ== 30669 +IGdyYW5kc29u 30670 +IGFrdGl2 30671 +IFRocm9uZXM= 30672 +IOyViOyXkA== 30673 +IHRvdHM= 30674 +IHN1YmQ= 30675 +IFBhdWxh 30676 +IGdyYXZlcw== 30677 +IEJyZW50 30678 +INC90LjQutGC0L4= 30679 +IHPDtno= 30680 +IGNyZWM= 30681 +IFZsYWRpbWly 30682 +INC/0L7QuQ== 30683 +ICIt 30684 +IHBzeQ== 30685 +YXRyaQ== 30686 +aWRhbg== 30687 +IGHDum4= 30688 +IHN0YW5kYXJkaXplZA== 30689 +7LmY6w== 30690 +INC60YDQvtCy 30691 +IFpodQ== 30692 +c29tZXRoaW5n 30693 +IDc1MA== 30694 +IG11amVyZXM= 30695 +IGFpdA== 30696 +YWd1 30697 +IGNvcnJlY3RlZA== 30698 +aWtrYQ== 30699 +ZWxlZA== 30700 +IENhcmVlcg== 30701 +b3d5bQ== 30702 +IHJvb21tYXRl 30703 +IGRlc2NlbmRhbnRz 30704 +IE5hcG9sZW9u 30705 +INCU0L4= 30706 +7ZaI7Ja07JqU 30707 +IGJ1bnVu 30708 +IE1pY2hh 30709 +IGRlc2NvYg== 30710 +UEk= 30711 +IHBhbGFicmE= 30712 +IHRyYWNrZWQ= 30713 +IGRlcGVuZGVuY2U= 30714 +IEJhcmFjaw== 30715 +IGZlcnRpbGl0eQ== 30716 +IFNvdXRod2VzdA== 30717 +IGluY29tcGxldGU= 30718 +IGNvbXVuaWM= 30719 +IGNvbXByaXM= 30720 +IFJlc3RhdXI= 30721 +IGFjcm9u 30722 +zrrOsQ== 30723 +IGFwcHJlbnRpY2Vz 30724 +IG11c3N0 30725 +IEFicg== 30726 +IHBlbnRydQ== 30727 +IENvbnNvcnQ= 30728 +IEF2ZWM= 30729 +IGR1bXBsaW5ncw== 30730 +TFI= 30731 +IHdzenlzdGtpZQ== 30732 +IHN3YW1w 30733 +0L3QtdCy 30734 +dWdnbGU= 30735 +IHdhdGVyY29sb3I= 30736 +IHByb3Rvbg== 30737 +IEVzcGHDsWE= 30738 +b2NraW5n 30739 +0L7QstCw0Ls= 30740 +IHRha2lt 30741 +VmVyeQ== 30742 +IGRlbWVudGlh 30743 +IMWfZXlp 30744 +SmFj 30745 +IE1hY0Jvb2s= 30746 +IExpdg== 30747 +ZmZpY2llbnRz 30748 +IEh1bnQ= 30749 +IG92ZXJsYXk= 30750 +IFNreXBl 30751 +cHVua3Q= 30752 +IGNvbmZpbmVk 30753 +IEFkcmlhbg== 30754 +2LHZgw== 30755 +IEplZXA= 30756 +IGVucXVhbnRv 30757 +IGFuZXN0 30758 +0L7RgtCy0LXRgg== 30759 +INC80LXQvdGM 30760 +IGlycmlnYXRpb24= 30761 +4buRbg== 30762 +IGVpZ2h0ZWVu 30763 +IFBvbg== 30764 +IHJlc2N1ZWQ= 30765 +IDE5ODM= 30766 +csO8 30767 +amFl 30768 +IEplb25n 30769 +IGFtYXppbmdseQ== 30770 +IEZEUA== 30771 +IGJhY2tzdGFnZQ== 30772 +Y3Vl 30773 +IM+Dz4TOt869 30774 +INin2YTYtQ== 30775 +IGxpdmVzdG9jaw== 30776 +IFdhcm5lcg== 30777 +IG1ham9ycw== 30778 +IGNvb3BlcmF0aXZl 30779 +IEJyYWR5 30780 +cmFpbmVk 30781 +cmllYg== 30782 +INeR157X 30783 +INC00L7QstC+0LvRjNC90L4= 30784 +IEZF 30785 +IGxlYWtlZA== 30786 +IE1lcmN1cnk= 30787 +IHBlcnN1YWRl 30788 +IHRyYW5zZm9ybWVy 30789 +IE5vcndlZw== 30790 +IOyXrOufrA== 30791 +IHpyb2JpxIc= 30792 +IGNhcmRpb3Zhc2N1bGFy 30793 +IENyYXNo 30794 +IGdvc3NpcA== 30795 +0LDRgdGC0Yw= 30796 +IOyqvQ== 30797 +IHN3ZXB0 30798 +IEhvcm4= 30799 +IEF0w6k= 30800 +IGJ1a2Fu 30801 +IEthdw== 30802 +S1k= 30803 +IFN0b3JpZXM= 30804 +R2FyeQ== 30805 +IGdhcmRlbmluZw== 30806 +IFF1aWNrbHk= 30807 +IEZhbGNvbg== 30808 +IG92YXQ= 30809 +Y8Sx 30810 +IENvbXBsZXQ= 30811 +IERhdGU= 30812 +INC/0YDQuNC8 30813 +IGzDpHVmdA== 30814 +IEF1ZHJleQ== 30815 +IFdlbnQ= 30816 +IHBlbMOtY3Vs 30817 +IGNhcnJpYWdl 30818 +IHVuYWNjZXB0YWJsZQ== 30819 +bnltaQ== 30820 +INGB0LvRi9GI 30821 +IHRlcnJl 30822 +dWVsbGVtZW50 30823 +RUVFRQ== 30824 +IHBoYXJtYWM= 30825 +aMO1ZXM= 30826 +IHppY2g= 30827 +IG1pZ3JhdGU= 30828 +IEZyeQ== 30829 +w7FhbmE= 30830 +IE11aXRv 30831 +RU9WRVI= 30832 +IGZvcnRyZXNz 30833 +IENvbXBhbg== 30834 +IEpTT04= 30835 +b3JkbnVuZw== 30836 +IHdhcnRv 30837 +IHVuZ2Vm 30838 +7IWU7ISc 30839 +INGA0L7Qug== 30840 +IHBhZGRsZQ== 30841 +SmFyZWQ= 30842 +IHN1Ym1pdHRpbmc= 30843 +IGxhdGNo 30844 +IGZ1Zw== 30845 +INC60L7RgQ== 30846 +IEVm 30847 +IGxhdW5jaGVz 30848 +IGZ0 30849 +b3RlY2hu 30850 +IHRyYXZlbGxlZA== 30851 +2KfZgQ== 30852 +IHByb2No 30853 +IGRlZGlt 30854 +ODM= 30855 +IHJlYm91bmQ= 30856 +IExV 30857 +cGF0aA== 30858 +INGB0L/RgNCw0LI= 30859 +IMO2bA== 30860 +IO2CpA== 30861 +IHByaXZhdA== 30862 +IHRyYWN0b3I= 30863 +IEF0dGVudGlvbg== 30864 +U2Vy 30865 +IGNvc2Vz 30866 +w6FyaWE= 30867 +cGFs 30868 +IOydgA== 30869 +IHN1Y2Nlc3Nvcg== 30870 +IGNvbm5lY3RvcnM= 30871 +INGD0YHRgtCw0L3QvtCy 30872 +IGdlbm9jaWRl 30873 +IHN1ZmZpY2llbnRseQ== 30874 +IEFpeMOy 30875 +IHN0YWJpbGl6ZQ== 30876 +IGNvbmdlc3Q= 30877 +IGNhcnZpbmc= 30878 +IHpvc3Q= 30879 +INCx0YvRgdGC0YDQvg== 30880 +IHNob3J0ZXN0 30881 +IGxpdmVs 30882 +IDg5 30883 +IGVyaw== 30884 +IHBvcnRyYWl0cw== 30885 +4KWA 30886 +6Jg= 30887 +Ym9hdA== 30888 +bGxhaA== 30889 +QU5D 30890 +IGVtcGlyaWNhbA== 30891 +IEVjaG8= 30892 +IE5lZGVybGFuZA== 30893 +TmV0 30894 +IGN1aWRhZG8= 30895 +IFJvbWE= 30896 +IGNhbGY= 30897 +IGdpYW50cw== 30898 +IEV4cGxvcmVy 30899 +IENvbGxlY3Q= 30900 +YWxpdGlvbg== 30901 +IERlc3Rpbnk= 30902 +IGF1c2dl 30903 +IEVkdQ== 30904 +IENsbw== 30905 +IGVhcnJpbmdz 30906 +IFRyYWNr 30907 +IFJPUw== 30908 +IEJlbGxl 30909 +IHB1ZWRh 30910 +IGRheXRpbWU= 30911 +IHN1cHBsaWVy 30912 +IFNW 30913 +IEV4aGFsZQ== 30914 +IGdhbGVyYQ== 30915 +Y291cnNl 30916 +IGNlbnRpbWV0ZXI= 30917 +IEJhc3Q= 30918 +bXVk 30919 +IHNhbmdhdA== 30920 +IFBoeXNpY2Fs 30921 +IHByaXZhdGVseQ== 30922 +IHRyYXRh 30923 +bHlubg== 30924 +aWxsaQ== 30925 +IOuplOydtO2BrOyXhQ== 30926 +IGNyeXN0YWxs 30927 +IHBvZHM= 30928 +4bqjbg== 30929 +aW5hdG9y 30930 +IFJlY29yZHM= 30931 +xJ9pbWl6 30932 +aXNzZW1lbnQ= 30933 +aGFyZQ== 30934 +aGFkb3c= 30935 +IERL 30936 +IOyVjOqzoA== 30937 +IHd5bg== 30938 +IHJlcXVlc3Rpbmc= 30939 +IERvbm5h 30940 +IOyXtOyLrO2eiA== 30941 +aW5lYQ== 30942 +IGV4ZXJ0 30943 +IER1bmNhbg== 30944 +INCy0LXRhw== 30945 +IEhhaA== 30946 +4KSC 30947 +IExpZg== 30948 +IEZpbmRpbmc= 30949 +IE5vdg== 30950 +INC30L3QsNC6 30951 +INC+0YQ= 30952 +IFF1w6g= 30953 +IHF1YXJ0ZXJiYWNr 30954 +INGE0LDQug== 30955 +IGJpcGFydGlzYW4= 30956 +xJ9pbg== 30957 +IG7DqWNlc3M= 30958 +IHJlZmVyZW5kdW0= 30959 +IGNvbXBpbGVy 30960 +IHByb2JhYmls 30961 +0LXQtNC4 30962 +IHRyYWRlcg== 30963 +IFJ1bQ== 30964 +Z2VtZQ== 30965 +IGRpbw== 30966 +IGLEmWR6aWVteQ== 30967 +IM+Azqw= 30968 +6r64 30969 +15XXmA== 30970 +IOCklQ== 30971 +INCx0LvQsNCz 30972 +IHNjYWxw 30973 +IFBhdXNl 30974 +IGNhcHRpb24= 30975 +IGVuZGFuZ2Vy 30976 +IGVubGFy 30977 +IHJvdHRlbg== 30978 +IHdhaA== 30979 +IGR6aQ== 30980 +IEluc3RhbGw= 30981 +QXk= 30982 +IGNyZWFy 30983 +0LXQvdGC0LA= 30984 +IHdlaWdoaW5n 30985 +IGJ1dHRlcmZsaWVz 30986 +IEdhc3Q= 30987 +aG9ybg== 30988 +d2Fyeg== 30989 +SUNFT1ZFUg== 30990 +INC90LDQudGC0Lg= 30991 +IGNvZWZmaWNpZW50cw== 30992 +IFNwZW5jZXI= 30993 +IEhpZ2hlcg== 30994 +IGNvd29yaw== 30995 +INC60L7RgtC+0YDQvtC1 30996 +IG1vbml0 30997 +IGR5c2Z1bmN0aW9u 30998 +INGB0YLQsNC90L7Qsg== 30999 +IHRvdXJuYW1lbnRz 31000 +IG95c3Rlcg== 31001 +Qk4= 31002 +IHRydWQ= 31003 +c2xvdw== 31004 +IFBlbm55 31005 +IE9keXM= 31006 +w6Zy 31007 +IGZvdQ== 31008 +IGVuam95bWVudA== 31009 +0LDRgtGL 31010 +IHd5Z2zEhWRh 31011 +0LDQu9GM0L3QsNGP 31012 +IFByb3RlY3Q= 31013 +IG1veQ== 31014 +IGNsYXc= 31015 +IHN1c3BpY2lvbg== 31016 +IHNhY3JpZmljZWQ= 31017 +IGdvc3Rv 31018 +Qmln 31019 +IGFnZ3Jlc3NpdmVseQ== 31020 +IHZvcm5l 31021 +IGJsYW1lZA== 31022 +IFNlaHI= 31023 +16TXqA== 31024 +Y2l0bw== 31025 +IHNlYWxz 31026 +IG11amVy 31027 +IFdlaXJk 31028 +IGZvcmVucw== 31029 +IGNvbnRyaWJ1dGVz 31030 +ZXN0cmE= 31031 +IHBvZw== 31032 +TE9M 31033 +IGhhY2VybG8= 31034 +0L7RgtGM 31035 +ZmljdGlvbg== 31036 +Nzk= 31037 +zrvOvw== 31038 +INGC0L7QsQ== 31039 +IEdT 31040 +IENsYXJh 31041 +aXRleg== 31042 +IGFkdm9jYXRpbmc= 31043 +IO2UhOs= 31044 +c3VuZw== 31045 +IHZlcnRpY2Vz 31046 +IG5hdmlnYXRpbmc= 31047 +IGV1cm9ww6k= 31048 +IHNsb3dlZA== 31049 +IGZvcmVncm91bmQ= 31050 +IEluZHVzdHJpYWw= 31051 +IGFkb3Jl 31052 +7Iut 31053 +IGNyw6llcg== 31054 +Y2huaXR0 31055 +IHVuYXdhcmU= 31056 +IGN1cmx5 31057 +ZW50YXI= 31058 +IGxlcg== 31059 +IHByb2hpYml0ZWQ= 31060 +IEhlcm9lcw== 31061 +IFJlZWQ= 31062 +dWNh 31063 +IHNtb2s= 31064 +IGt1bm5h 31065 +emVpdGln 31066 +aW1tZW4= 31067 +IEx1bg== 31068 +INCw0LHRgdC+0LvRjtGC 31069 +IGRlZ2xp 31070 +IHZpbGxhZ2Vycw== 31071 +IHByZXNldA== 31072 +emVwdA== 31073 +dWRz 31074 +IGVtaXQ= 31075 +IOuJ 31076 +64qU7KeA 31077 +0L3QsNC60L4= 31078 +IG9zw7Ni 31079 +IDE5Njk= 31080 +INCQ0YA= 31081 +IG1hbmNobWFs 31082 +IEJyb2Nr 31083 +IG1hbnRyYQ== 31084 +IFdJTA== 31085 +YmFjaA== 31086 +aW7DpA== 31087 +ZWxhcw== 31088 +a2Vsbg== 31089 +IGRpc2NpcGxl 31090 +IHF1YWxj 31091 +IGRlaHlk 31092 +7J20652864qU 31093 +QWY= 31094 +7ISx7J20 31095 +Unlhbg== 31096 +IHB1cHBldA== 31097 +INC00YDRg9Cz0LjQtQ== 31098 +IHJ1ZA== 31099 +IHBlbmRpbmc= 31100 +UGx1cw== 31101 +IOyViuydhA== 31102 +IGLhu4s= 31103 +IFNlZ2E= 31104 +w6dl 31105 +IHByb2dyYW1tZXI= 31106 +Ymxp 31107 +IHVubA== 31108 +IGVuc2xhdmVk 31109 +IHNvY2nDqXTDqQ== 31110 +xIFo 31111 +IGluaGVyaXRhbmNl 31112 +IEJhbmds 31113 +ZXJtYWlk 31114 +IHByYWN0aXRpb25lcg== 31115 +IFN0YWxpbg== 31116 +IFVzZXI= 31117 +Y2libGU= 31118 +IGNhcmRpYWM= 31119 +IEtvcmVhbnM= 31120 +IGR1bXBlZA== 31121 +INeU15nXlA== 31122 +w6Fpcw== 31123 +IGh5ZHJhdWxpYw== 31124 +b3VidGVkbHk= 31125 +IFBpdA== 31126 +IHBpY25pYw== 31127 +IGJlaMO2dmVy 31128 +INGB0LzQvtCz 31129 +IGJyYWtpbmc= 31130 +dXRhcg== 31131 +IOyEuOs= 31132 +dWJs 31133 +IMO8eg== 31134 +IG1hamVzdHk= 31135 +IGJlcnM= 31136 +dXRhYmxl 31137 +IGhvdHRlcg== 31138 +24zZhg== 31139 +IGJpYXNlcw== 31140 +IHN1YmplY3RlZA== 31141 +IG5hdWdodHk= 31142 +IGNpcmN1cw== 31143 +IEltbWVkaQ== 31144 +IFN0ZWZhbg== 31145 +IFRyaXBsZQ== 31146 +ZW5r 31147 +IHdpdA== 31148 +IHJlY3ljbGU= 31149 +ZW1pZQ== 31150 +ZGF0ZWQ= 31151 +IHVubG9hZA== 31152 +IHBvcHVsYQ== 31153 +Y2hpbg== 31154 +IHlpZWxkcw== 31155 +IGVuZ2xpc2g= 31156 +IEJvbm5pZQ== 31157 +IHNwaWRlcnM= 31158 +w4E= 31159 +IGVyb3Npb24= 31160 +IE5JQ0s= 31161 +0LjRj9GF 31162 +IGltcGFydA== 31163 +INC60L3QuA== 31164 +IHJlc29sdXRpb25z 31165 +IGxpdGhpdW0= 31166 +IGNvbnZlcmdlbmNl 31167 +IFRhcmE= 31168 +INC00LLQtQ== 31169 +dGhz 31170 +IENpbmR5 31171 +IERJRQ== 31172 +IGFzc3VyYW5jZQ== 31173 +INC+0L/QuNGB 31174 +IGJ1Y2tldHM= 31175 +IGN1ZXM= 31176 +IFF1aWV0 31177 +IHNpbWlsYXJpdHk= 31178 +IGZvdW5kYXRpb25hbA== 31179 +IE1pbmlzdA== 31180 +IHBpYW4= 31181 +IGNlbnRy 31182 +IG51bWI= 31183 +IG1vbmtz 31184 +dWpvdXJk 31185 +ZW56aWU= 31186 +IHNrYXRlYm9hcmQ= 31187 +IGRsYXRlZ28= 31188 +INGB0L7Rgg== 31189 +IEFF 31190 +IG1hc3RlcnBpZWNl 31191 +IFNvbG9tb24= 31192 +IFJlZGRpdA== 31193 +IHJpb3Q= 31194 +YWJs 31195 +IEpheno= 31196 +IGVsZWN0cm9tYWduZXRpYw== 31197 +IGluc2VjdXJl 31198 +IENvbXBldA== 31199 +Z2VyaWVz 31200 +0L7QsdC+0LQ= 31201 +oNeV 31202 +8J+S 31203 +IHNlbmF0b3Jz 31204 +IEJyaXNiYW5l 31205 +IEFsYg== 31206 +dXR0ZXJpbmc= 31207 +IEFsbG93 31208 +emVybw== 31209 +IHBhaQ== 31210 +INCQ0LvQtdC60YE= 31211 +IERpc3BsYXk= 31212 +IEJsYWRl 31213 +IEFwcHM= 31214 +IHDDpA== 31215 +INC00LXRgdGP 31216 +IHF1ZWxsYQ== 31217 +IEdhbw== 31218 +0LXQvdC90YvRhQ== 31219 +IHNwb2lsZXJz 31220 +IGdhbGxvbnM= 31221 +INmE2Yo= 31222 +IFppb24= 31223 +b25pZQ== 31224 +cmFndA== 31225 +IENoYW5k 31226 +IOuzkQ== 31227 +IGJsdW50 31228 +IHVzdQ== 31229 +IEthZA== 31230 +cmFrdA== 31231 +IGNpbmVtYXRpYw== 31232 +IGFtbXVuaXRpb24= 31233 +cmVuZQ== 31234 +IGZvdXJ0ZWVu 31235 +IENhcm4= 31236 +Y3JpdA== 31237 +IHRlbnVyZQ== 31238 +dnU= 31239 +IHByaW5jaXBhbG1lbnRl 31240 +IGFsbGVlbg== 31241 +IGtvbXBsZXR0 31242 +IGTDvG55 31243 +SmFtZXM= 31244 +IHJlY2VwdG9y 31245 +IG9uZXNlbGY= 31246 +Z3VydQ== 31247 +IG1lcmNoYW50 31248 +bGluZXNz 31249 +IG92ZXJsb29rZWQ= 31250 +IGhhcm1vbmlj 31251 +aWVzbw== 31252 +15XXng== 31253 +Y29sbQ== 31254 +INC/0YDQvtC10LrRgg== 31255 +IEFkYQ== 31256 +2KfYsw== 31257 +VGlt 31258 +IHJlY3VycmluZw== 31259 +IHByb2NlZWRz 31260 +IFBhcnRpY3VsYXJseQ== 31261 +IERvd25sb2Fk 31262 +ZXRyaWNhbA== 31263 +IG1hdHJpY2Vz 31264 +IHByb3llY3Rv 31265 +YW5jaWVz 31266 +IFVobQ== 31267 +IGNhdmVz 31268 +IOyWtOugpA== 31269 +IExlYWY= 31270 +INC+0LHRi9GH 31271 +IOydtOycoA== 31272 +RXVyb3Bl 31273 +IHTEhQ== 31274 +IHB1bHM= 31275 +IHRha2llZ28= 31276 +0J3QtQ== 31277 +R1U= 31278 +IGZvcnM= 31279 +z4HOsw== 31280 +IGZvdG9z 31281 +ICkp 31282 +IOuppOs= 31283 +IGFxdWlsbw== 31284 +IEt1cmQ= 31285 +77iP 31286 +cHRpYw== 31287 +IERvcnQ= 31288 +IG1pc2VyeQ== 31289 +YXVzbw== 31290 +Y2h1Y2tsaW5n 31291 +IFJpZGdl 31292 +IO2WiOyKteuLiOuLpA== 31293 +ICoqKg== 31294 +IEhtbW0= 31295 +IGdlb2dyYXBoaWM= 31296 +IGFueXM= 31297 +IHRhbHZleg== 31298 +IHNrZWxldA== 31299 +IHNpZ25hdHVyZXM= 31300 +IGxpdGVycw== 31301 +kOuptA== 31302 +INGB0LLQvtC10LPQvg== 31303 +IHNraWluZw== 31304 +INCc0L7RgQ== 31305 +IGFkb3B0aW5n 31306 +IGhhZnQ= 31307 +IHN5bW1ldHJpYw== 31308 +IExpcXU= 31309 +IHRoeXJvaWQ= 31310 +IG1pc2lu 31311 +bHVkZQ== 31312 +IGh1bGw= 31313 +IFhE 31314 +IEd1c3Q= 31315 +emVpY2g= 31316 +IHZpYnJhdGlvbnM= 31317 +IGVzZW1w 31318 +INCy0YHRjg== 31319 +IFF1ZW0= 31320 +IMO8YnJpZw== 31321 +IFNrZQ== 31322 +IEx5bmNo 31323 +cm9vbXM= 31324 +YXJ0ZXQ= 31325 +ZmVzdA== 31326 +IGZyw7xoZXI= 31327 +IGx1cmU= 31328 +IOyVjOyVhA== 31329 +IFdJTg== 31330 +IFJZQU4= 31331 +INC60L7RgtC+0YDRg9GO 31332 +IEthc2g= 31333 +INeU154= 31334 +IHNhZmVn 31335 +IEhhbGxlbHVqYWg= 31336 +INC00LLRg9GF 31337 +IHN0YXBsZQ== 31338 +IHNlZGltZW50 31339 +IEFjdHM= 31340 +IGJsYW1pbmc= 31341 +IG1haW5sYW5k 31342 +IHNwb3J0aW5n 31343 +IGRlY29yYXRpb25z 31344 +IGV4ZWN1dGluZw== 31345 +IHBhcmFu 31346 +IERvbGxhcg== 31347 +IHByb2plY3Rpb25z 31348 +IGNvbW1pc3Npb25lZA== 31349 +IGJvdXI= 31350 +w7Zt 31351 +IHN0ZWFtZWQ= 31352 +IOutmA== 31353 +IHBldHJvbA== 31354 +IGNlbHVsYXI= 31355 +IEh1bmdhcnk= 31356 +IHJlbnRlZA== 31357 +INCy0LDRgNC4 31358 +YmJpZQ== 31359 +IHPDqWN1cg== 31360 +w7xsbA== 31361 +IHN3aW5ncw== 31362 +YmV0d2Vlbg== 31363 +INC40YI= 31364 +ZXN0cm8= 31365 +IG5pZW1hbmQ= 31366 +IOyCvA== 31367 +IFBhcmRvbg== 31368 +ZXNzZXM= 31369 +IE1JRA== 31370 +IGNlbnRyYWxpemVk 31371 +IEFsaWVu 31372 +Y3Vsb3M= 31373 +IGNyaXNl 31374 +IGNsYXNzZQ== 31375 +YmVpdGV0 31376 +acSfaQ== 31377 +IHdoYWxlcw== 31378 +IHBlcmltZXRlcg== 31379 +IHR5aW5n 31380 +IHN0cm9ueQ== 31381 +IGxpa2V3aXNl 31382 +IFB1bmNo 31383 +RGE= 31384 +IEJhcHRpc3Q= 31385 +IHNvcnRpbmc= 31386 +IGl2 31387 +IO2VqQ== 31388 +IHJlaGFi 31389 +IGV0YQ== 31390 +cml2ZXI= 31391 +IHNhaQ== 31392 +b2R1cw== 31393 +IGVzc2F5ZXI= 31394 +IHR1cnRsZXM= 31395 +IEhhenJhdA== 31396 +IGZhYnJpY3M= 31397 +IGNhdml0eQ== 31398 +IHBvbmlld2HFvA== 31399 +IHNjaGxlY2h0 31400 +IHNhbHNh 31401 +xZ9la2vDvHI= 31402 +IHNlYXRpbmc= 31403 +IGVjb25vbWlzdHM= 31404 +IG1hbmc= 31405 +IHNlZ3VpbnRl 31406 +IHJhbmc= 31407 +IHJhdGlvcw== 31408 +IGNvbnN0ZWxs 31409 +IGxvbmd0ZW1wcw== 31410 +dWF0aW5n 31411 +IHNwb2lsZWQ= 31412 +IHJlY2lwaWVudHM= 31413 +IHNuaXBlcg== 31414 +7Iq164uI6rmM 31415 +IHdw 31416 +IExJTktF 31417 +IGZsYXJl 31418 +IEFkcmk= 31419 +w7Fhcw== 31420 +IGJhY2ts 31421 +bcOkw58= 31422 +IEJlbmQ= 31423 +IHdvcmtsb2Fkcw== 31424 +INGB0YPQvw== 31425 +IDE5NzU= 31426 +0LjQvNGB0Y8= 31427 +0LDQvdC1 31428 +INC80L7QvQ== 31429 +IGFzcGlyYXRpb25z 31430 +IEFlcg== 31431 +INCz0L7QstC+0YDQuNGC0Yw= 31432 +IFFpYW4= 31433 +IGNvbXByb21pc2Vk 31434 +IHlvbGs= 31435 +0LvQsNGB0YI= 31436 +IGhlbWVu 31437 +cm92ZQ== 31438 +ZGVucw== 31439 +INC60L7QvNC80LXQvdGC 31440 +IC0tLQ== 31441 +IGZsdW9yZXM= 31442 +0L3QvtGB 31443 +IExpdmVycG9vbA== 31444 +INGB0L7QsdC+0Lk= 31445 +IFp3ZQ== 31446 +IGx1bWlu 31447 +IE9H 31448 +4bg= 31449 +aG9sbQ== 31450 +cHJvZml0cw== 31451 +U04= 31452 +IHByb3BvcnRpb25z 31453 +IG1pY2E= 31454 +IEJvaA== 31455 +IEF0bGFz 31456 +IHVuc3VyZQ== 31457 +IHRvdXJpbmc= 31458 +IG5pZWQ= 31459 +IHTEmQ== 31460 +IGltcGVyYXRpdmU= 31461 +IGRlbWVr 31462 +IFNoZXJpZmY= 31463 +cmFuY2U= 31464 +IGhvbWVsYW5k 31465 +IEhhaWw= 31466 +IEdhbno= 31467 +eW1t 31468 +TW9u 31469 +dmlkYQ== 31470 +IGRlc2Fycm9sbA== 31471 +IGludHJpZ3Vpbmc= 31472 +IEh1Z28= 31473 +6aw= 31474 +0LDRhg== 31475 +IFdpxJlj 31476 +YXR0ZWQ= 31477 +IOyVhOuLiOqzoA== 31478 +IFZhcmk= 31479 +w6Fk 31480 +IHN1cnJlYWw= 31481 +IGRpc3Bhcml0aWVz 31482 +IG3Dsw== 31483 +dWxsZW4= 31484 +IOyeiOuLpOqzoA== 31485 +INC/0L7QttCw0LvRg9C50YHRgtCw 31486 +IG1haW5z 31487 +IGVqZWN0 31488 +IG1ldGhhbmU= 31489 +IG1hcmdpbmFsaXplZA== 31490 +IGNoaWxsaQ== 31491 +csOocw== 31492 +IHllbQ== 31493 +IENodW4= 31494 +IGRlYnRz 31495 +IGRvd25sb2FkaW5n 31496 +IEF0aGVucw== 31497 +aXNpZXJ1bmc= 31498 +cnlu 31499 +IHRla24= 31500 +IFF1aW5kaQ== 31501 +IHRhcmFm 31502 +IGjDqQ== 31503 +IGNvbnNjaW91c2x5 31504 +IGZpeGVz 31505 +dWNrbGU= 31506 +bWF5xLFu 31507 +IGZyZWk= 31508 +IHNwYQ== 31509 +IOynhO2WiQ== 31510 +INin2YTYsA== 31511 +INGD0Lo= 31512 +bGV0dA== 31513 +IG9sbXXFnw== 31514 +IGNoZWVzeQ== 31515 +4Liy4LiB 31516 +bmFpcmU= 31517 +IHdpZGVu 31518 +IGxpZW4= 31519 +IGVzY2FwaW5n 31520 +aWdncw== 31521 +IEJsaWNr 31522 +Y8SF 31523 +IOyEnOs= 31524 +INeU16E= 31525 +INCy0L/QtdGA 31526 +b3Bob25l 31527 +aWVsbA== 31528 +IFNVQlNDUkk= 31529 +IGxpb25z 31530 +IOq3uOqygw== 31531 +IGluc3BpcmVz 31532 +IGd1YXJhbnRlZXM= 31533 +IGNvbWXDp2E= 31534 +IEdyb3dpbmc= 31535 +IG5lZ2xpZw== 31536 +IEZyYW5rZg== 31537 +IGdlZ2ViZW4= 31538 +IMSR4bqndQ== 31539 +IGVuZGxpY2g= 31540 +IOyNqA== 31541 +IFRU 31542 +IExpdGg= 31543 +z4DOsQ== 31544 +YXN0ZXJu 31545 +IEF6ZXI= 31546 +IGx1bmFy 31547 +aGlj 31548 +INC90LDRgNC+0LQ= 31549 +IG5lbmh1bQ== 31550 +IFNhbHZhZG9y 31551 +IFByb2dyZXNz 31552 +IHByaXZpbGVnZXM= 31553 +IOuPmeyViA== 31554 +IGFudGFnb24= 31555 +IEltcGY= 31556 +IGRlc2N1Yg== 31557 +IExlaQ== 31558 +IOyDiOuhnA== 31559 +0YfQtQ== 31560 +IGTDs2xhcmVz 31561 +IE1lZ2hhbg== 31562 +IFdpcmU= 31563 +dG9v 31564 +YXlpbmc= 31565 +dXNj 31566 +IHR1ZA== 31567 +IGFwcGVhbHM= 31568 +ZWR1Yw== 31569 +IHBhbmU= 31570 +IGpp 31571 +IGRlY2tz 31572 +IEFsdGVy 31573 +7ISk 31574 +IHByb2R1Y3Rpb25z 31575 +IFdJTExJQU0= 31576 +IGltcGxpZWQ= 31577 +IGZ1bGZpbGxtZW50 31578 +IEFhaA== 31579 +IHNhamE= 31580 +eHVz 31581 +IM6azrHOuQ== 31582 +w6Bz 31583 +dWNjaA== 31584 +0L7QutC+ 31585 +IERpc2NvcmQ= 31586 +IFNZ 31587 +anNr 31588 +IFdhbGxhY2U= 31589 +dW5jdGlvbg== 31590 +RGFuaWVs 31591 +IGvDtnQ= 31592 +aWphaA== 31593 +IG1hcmNoZQ== 31594 +IGRpc2dy 31595 +IG11bmdraW4= 31596 +IGFsbWE= 31597 +s7U= 31598 +IGV4dGVuc2l2ZWx5 31599 +IEZsb3Jlbg== 31600 +IEFsbGlzb24= 31601 +2YrZhQ== 31602 +IGp1dmVu 31603 +IFJlbmFpc3NhbmNl 31604 +IGZ1bmRyYWlzaW5n 31605 +IENoYW9z 31606 +IHBhcmFseQ== 31607 +IG5hcnJhdG9y 31608 +IGVjb3N5c3RlbXM= 31609 +QXNo 31610 +IG1pdGlnYXRpb24= 31611 +IEF1am91cmQ= 31612 +IElkZWU= 31613 +ISw= 31614 +IMK9 31615 +IGxhbmRsb3Jk 31616 +IGRlZmVjdHM= 31617 +IGFjcmU= 31618 +dWxzaXZl 31619 +IGFsZ2Fl 31620 +cGVr 31621 +IGVtYmE= 31622 +IFJvYw== 31623 +a3NvbQ== 31624 +w6RjaGU= 31625 +IGxldWs= 31626 +IGxldmVyYWdpbmc= 31627 +IOq3uOugh+yngA== 31628 +IFBhbG0= 31629 +IMOkdmVu 31630 +IGxpcw== 31631 +IEluc3A= 31632 +IFJpdGE= 31633 +IEFiYg== 31634 +aXRobQ== 31635 +IHN1cGVydmlzaW9u 31636 +IHJldmlzaXQ= 31637 +IHBpxJk= 31638 +IGV1aA== 31639 +IGZhZGVz 31640 +IG1vdHRv 31641 +0LXQt9C2 31642 +IFNoaW0= 31643 +IHJlbGV2YW5jZQ== 31644 +IG9v 31645 +IG9zdGF0 31646 +bmljYQ== 31647 +IGNob2l4 31648 +IEZhY3VsdHk= 31649 +IOykkeyXkA== 31650 +IEFib3Zl 31651 +INC90LXQsdC+0LvRjNGI 31652 +IHNlcXVlbmNpbmc= 31653 +IG51dHJpZW50 31654 +IGNvbnF1ZXJlZA== 31655 +IGRpZ2VzdGl2ZQ== 31656 +IGJhY2tkcm9w 31657 +IExvcmk= 31658 +YWlsYWJsZQ== 31659 +R2FtZQ== 31660 +IG5lZ2xlY3RlZA== 31661 +b21vcnBo 31662 +aWxsYWg= 31663 +IGtuZQ== 31664 +IHNpaXTDpA== 31665 +IHdvcmtzcGFjZQ== 31666 +IFZlbmljZQ== 31667 +IEtuZQ== 31668 +0YnQvg== 31669 +hYA= 31670 +IEhhc3M= 31671 +IHZpdGE= 31672 +nbzrqbQ= 31673 +IGxheXM= 31674 +w6puY2lhcw== 31675 +w6lyaWNh 31676 +IExs 31677 +IENvY2E= 31678 +IFdIWQ== 31679 +IHJvdXRpbmc= 31680 +IHBlcm1pc3Npb25z 31681 +IGRpbmdz 31682 +cHJlbmQ= 31683 +cHJvZ3JhbQ== 31684 +IGNyb2NvZA== 31685 +YnJhbA== 31686 +QUFBQUFBQUE= 31687 +YWdpdA== 31688 +IE7DpA== 31689 +IGdla29tbWVu 31690 +YXR0ZW4= 31691 +IHJlZmVyZW5jZWQ= 31692 +IHBhaXJpbmc= 31693 +IFBhcnRuZXI= 31694 +IENvcm9uYXZpcnVz 31695 +0ZbRgQ== 31696 +INeU15M= 31697 +IGVzcGVjw61maWM= 31698 +YXJzaQ== 31699 +cXVlbGxl 31700 +IHNwb250YW5lb3Vz 31701 +IOqyg+ydhA== 31702 +INCf0L7RgdC70LU= 31703 +INin2YTYrw== 31704 +IFNob3V0 31705 +INC90LDQuw== 31706 +IGRpc2d1aXNl 31707 +IEpvcmQ= 31708 +IHdlZQ== 31709 +IG1pZWpzYw== 31710 +IHNlcnVt 31711 +IHBsYWlzaXI= 31712 +IGNyZWRpYmxl 31713 +IGLDpQ== 31714 +IEFK 31715 +bWFyZXM= 31716 +IHJvZHM= 31717 +IGVyYW4= 31718 +IHDDpMOk 31719 +IFVB 31720 +IFVua25vd24= 31721 +INmE2YU= 31722 +IFJhYmJp 31723 +IGxhYXQ= 31724 +IGhhaXJzdHlsZQ== 31725 +INi6 31726 +IGNhY2g= 31727 +IFdyaXRpbmc= 31728 +0L7Rh9C60Lg= 31729 +YWJhZA== 31730 +IHN0cmFpZ2h0ZW4= 31731 +LS0i 31732 +d2lmZQ== 31733 +IGhvdHRlc3Q= 31734 +IHB1bnlh 31735 +IEZhc2hpb24= 31736 +Z3JpZmY= 31737 +IFFS 31738 +b3RjaA== 31739 +INCc0L7QttC10YI= 31740 +Q2xvdWQ= 31741 +IFN0cmlrZQ== 31742 +IEhlaW4= 31743 +IGxlaQ== 31744 +IEZsb3c= 31745 +d2Vncw== 31746 +IGhhYnI= 31747 +bmFobWU= 31748 +zIE= 31749 +IHBsZWFzaW5n 31750 +b3BwaW5n 31751 +IOq1rOuPhQ== 31752 +IGRyYW4= 31753 +IGJhbmdz 31754 +IDc5 31755 +IHNrZXQ= 31756 +IGNhdmFs 31757 +IE1hY3Jvbg== 31758 +IHdlaWdodGVk 31759 +IG11dGVk 31760 +IG51ZXN0cmFz 31761 +RUVQ 31762 +IG1hdGhlbWF0aWM= 31763 +IE1SSQ== 31764 +YWd1cw== 31765 +IHRoZXJhcGllcw== 31766 +zrjOtQ== 31767 +IHVucGw= 31768 +IGNvbW1lbmNlcg== 31769 +ZnVsbA== 31770 +IHRvd2Vscw== 31771 +IHBydWU= 31772 +IGxpY2Vuc2Vz 31773 +15vXldec 31774 +INCf0L7Rh9C10LzRgw== 31775 +IHBvaW50bGVzcw== 31776 +Qnll 31777 +IGVsaWdpYmlsaXR5 31778 +IHNjcmFwZQ== 31779 +IGFidXNpdmU= 31780 +IE1hbnQ= 31781 +IGpldW5lcw== 31782 +dGFs 31783 +IFByaW5jaXA= 31784 +IE9ydGhvZG94 31785 +IG1lbG9k 31786 +INC80LDRgtC10YDQuA== 31787 +IHByb3NlY3V0b3I= 31788 +IG9waW9pZA== 31789 +INGD0LLQtdGA 31790 +IEJlZW4= 31791 +IOygkeyihQ== 31792 +IGR5bmFzdHk= 31793 +IGFqdWRh 31794 +IGVudHJlZw== 31795 +IHdlaWdoZWQ= 31796 +IGV1cmU= 31797 +IEJlbQ== 31798 +IGFibm9ybWFs 31799 +ODI= 31800 +IEpS 31801 +IEFrdA== 31802 +IEJyaQ== 31803 +w7p0 31804 +IHN0YWdu 31805 +ISo= 31806 +IHdlZ2Vu 31807 +IGxlYWtpbmc= 31808 +IFdvcmRz 31809 +IE1hdQ== 31810 +IHZ1ZQ== 31811 +IExpYW0= 31812 +0LDQvdC40LXQvA== 31813 +IGNsaW5pY2lhbnM= 31814 +IFB1bXA= 31815 +IGbDtnJzdA== 31816 +Py4uLg== 31817 +IGF1dG9tb3RpdmU= 31818 +IE93ZW4= 31819 +enVzYWdlbg== 31820 +IEh1bmRyZWQ= 31821 +IGRlY2VudHJhbGl6ZWQ= 31822 +IGJ1bGJz 31823 +INec15s= 31824 +IHByb3ZpbmNlcw== 31825 +IE1pbGFu 31826 +ODE= 31827 +a2Fz 31828 +IOuTow== 31829 +IGZvcsOnYQ== 31830 +IHJpZ2h0bHk= 31831 +csSF 31832 +IHZlbnVlcw== 31833 +IHdhaQ== 31834 +IHByZWRpY3Rpbmc= 31835 +IFdpRmk= 31836 +IOq2geq4iA== 31837 +2LHZiA== 31838 +INeU15Y= 31839 +Y2VudHVyeQ== 31840 +IGdyYWR1YWw= 31841 +IFByb2JsZW1l 31842 +IOyXhQ== 31843 +IGNvcGluZw== 31844 +IEJydXM= 31845 +IHBlYW51dHM= 31846 +aXJ0c2NoYWZ0 31847 +INC30LDQuw== 31848 +IFRyb3k= 31849 +IHNwZXJt 31850 +IE1pdGFy 31851 +IFTDvHJraXll 31852 +Z3JhbmQ= 31853 +pq0= 31854 +INee16E= 31855 +IHBhbnM= 31856 +IEtub3dsZWRnZQ== 31857 +YmVybHk= 31858 +INCV0LPQvg== 31859 +IGRhbmNlZA== 31860 +IEZyb3N0 31861 +IEJ1cmc= 31862 +IGJpdGluZw== 31863 +7KCV7J2E 31864 +bWVhbA== 31865 +IGhlcm9pYw== 31866 +IG1vdGhlcmJvYXJk 31867 +IExpY2h0 31868 +bGxhbg== 31869 +0LDQudC9 31870 +INGA0Y/QtA== 31871 +IOC5gOC4 31872 +b25lbg== 31873 +aXJpZQ== 31874 +QXJ0 31875 +cmFuZw== 31876 +zr3Otw== 31877 +IG5ld2Jvcm4= 31878 +IGFtaXM= 31879 +INin2YjYsQ== 31880 +IHNvcGhvbQ== 31881 +IENhcmVmdWw= 31882 +IHByb3NwZWN0cw== 31883 +ZW5zZW4= 31884 +IHRocmlsbA== 31885 +IFZp4buHdA== 31886 +QWRhbQ== 31887 +cml0aW9u 31888 +ZW50cmlj 31889 +dWRlbg== 31890 +IGNlcnRpZmljYXRlcw== 31891 +IGFzaGVz 31892 +cGxheWluZw== 31893 +IHNhZGVjZQ== 31894 +IG9zdA== 31895 +IGFpcnBsYW5lcw== 31896 +0YDQvtC6 31897 +b25lcg== 31898 +IG1hZ25lc2l1bQ== 31899 +IGdvZGRhbW4= 31900 +IDE5NzI= 31901 +IFNjaHVsZQ== 31902 +IHRlbWF0 31903 +IHBhcnRvdXQ= 31904 +4K+C 31905 +IGludmU= 31906 +IFNjaWVudGlzdHM= 31907 +IEh1ZHNvbg== 31908 +d2lubmluZw== 31909 +Y2Vrc2lu 31910 +IGNvbmdyZXNzaW9uYWw= 31911 +b3J1 31912 +IHJvcGVz 31913 +0LLQtdC0 31914 +IG1hZHJl 31915 +IGZlcnJ5 31916 +IENvaGVu 31917 +IFByZWQ= 31918 +IHZhZ3k= 31919 +INCx0LXRgdC/ 31920 +IG11bHRpbQ== 31921 +IGRyYWluYWdl 31922 +IHNpbXVsYXRvcg== 31923 +Z2lnZ2xlcw== 31924 +IFN0YWRpdW0= 31925 +0L7QsdGJ 31926 +IG5vdGljZXM= 31927 +IGNyYXdsaW5n 31928 +IGdyb3VwZQ== 31929 +IGt0b8Wb 31930 +IFlvZ2E= 31931 +IG1lZGlkYQ== 31932 +INGF0LLQsNGC 31933 +IExpdGU= 31934 +IHJhdg== 31935 +b3JhbWE= 31936 +IGRpc2NvcmQ= 31937 +IERJUkU= 31938 +IHRlaA== 31939 +IE51cnM= 31940 +IHBpdGNoZWQ= 31941 +IGJhcmtpbmc= 31942 +IENva2U= 31943 +d2lhZA== 31944 +IHBvcHVsYXRlZA== 31945 +cGVsbGVk 31946 +INCx0L7Qsw== 31947 +IHBld25v 31948 +IEN1YmU= 31949 +IHJlY3J1aXRlZA== 31950 +IENhcmE= 31951 +xLHEn8SxbsSx 31952 +aW1hdGVk 31953 +INGI0LrQvtC7 31954 +aWNpb25hbA== 31955 +INC/0YDQvtGE 31956 +IGNvbnRhbWluYXRpb24= 31957 +IMO6bHRpbW9z 31958 +IGZlYXJmdWw= 31959 +IGVsZXBoYW50cw== 31960 +dXNp 31961 +IGlUdW5lcw== 31962 +IFN3YW1p 31963 +6rw= 31964 +IOyEpOuqhQ== 31965 +IFJpY2hhcmRz 31966 +IG1hZ25ldHM= 31967 +IFJpY2h0dW5n 31968 +IExlZ2lvbg== 31969 +IGtpdHR5 31970 +IGtpc3NlZA== 31971 +IHdhdGVyaW5n 31972 +IGNvbm8= 31973 +IFBhbGVzdGluZQ== 31974 +aWRpcg== 31975 +IG1hemU= 31976 +IGZsdWlkcw== 31977 +IFByb2R1Y2Vy 31978 +IEtyc25h 31979 +bGFm 31980 +INeQ15U= 31981 +IG1pZXN6 31982 +IFhpbmc= 31983 +b2ludGVk 31984 +c2Vpbg== 31985 +IEZ1aw== 31986 +IERlcHJlc3Npb24= 31987 +IER1dHk= 31988 +IFBhbnRoZXI= 31989 +IHN1bmQ= 31990 +IHJlZmVyZQ== 31991 +IGV4Y2x1c2lvbg== 31992 +IG5hdmFs 31993 +IFdpbnN0b24= 31994 +IHNsb2dhbg== 31995 +IGh5cG90aGV0aWNhbA== 31996 +IGVsZXZhdGU= 31997 +66C5 31998 +IGNhYmXDp2E= 31999 +IEdlc3VuZA== 32000 +bWV0ZXI= 32001 +IOyVhOuLiOuptA== 32002 +IGNsb3VkeQ== 32003 +4oCmPw== 32004 +IFNjaHJpdHQ= 32005 +IEpT 32006 +7I0= 32007 +IFNwcmluZ3M= 32008 +IEJhdHRlcg== 32009 +t7A= 32010 +IHRhaWxvcg== 32011 +IFBUU0Q= 32012 +IEdlbnQ= 32013 +IGJhxJ8= 32014 +IHNwYXR1bGE= 32015 +IGNyYXk= 32016 +IExlZ2lzbA== 32017 +IHPDug== 32018 +IGxldmU= 32019 +4Liy4Lih 32020 +IGVyYWQ= 32021 +IGRvbmc= 32022 +IGRlcm0= 32023 +IEJhbmtz 32024 +aWNobw== 32025 +IEZyYW56 32026 +cmF2ZWw= 32027 +0L7Qu9C+ 32028 +IGZsdXRl 32029 +IEVr 32030 +IGpveWZ1bA== 32031 +IGNoYXNlZA== 32032 +IExhcmdl 32033 +T3Zlcg== 32034 +IGVudHJlcHJlbmV1cmlhbA== 32035 +IGNvbnNpZGVycw== 32036 +0YPQtdC8 32037 +b3Bh 32038 +IGRvcm1pcg== 32039 +IEVsZW1lbnRhcnk= 32040 +IHByenlwYWQ= 32041 +0YPRgdC60LA= 32042 +INC+0YfQtdGA 32043 +dWdlbmU= 32044 +IHRlbmlkbw== 32045 +IGx1Z2FyZXM= 32046 +66U= 32047 +INGH0LDRgdGC 32048 +IHNhbw== 32049 +IGJyYWlk 32050 +IFZlcmU= 32051 +IFJlaWNo 32052 +IFBvc3M= 32053 +IGluYW4= 32054 +d2FuZA== 32055 +cmVm 32056 +IG1vbnRyZXI= 32057 +IDE5ODE= 32058 +YXPEsW5kYQ== 32059 +IGNocm9tZQ== 32060 +IFRyaW5pdHk= 32061 +IGV4cGxvaXRhdGlvbg== 32062 +IFNlbnNl 32063 +IENNUw== 32064 +IE5vYmxl 32065 +IOyEoO2DnQ== 32066 +IHN3ZWxsaW5n 32067 +ZWxlY3Ryb25pYw== 32068 +XT8= 32069 +IGJydXNoaW5n 32070 +IGxpcXVpZGl0eQ== 32071 +IEhvb2s= 32072 +IENvbm5vcg== 32073 +IEFsdW0= 32074 +IGd1Y2tlbg== 32075 +c3VpdGU= 32076 +IHdpZWxl 32077 +IGJhcnJlbHM= 32078 +IFJlZ2Vs 32079 +IE1lbnQ= 32080 +IFRyaXA= 32081 +IEJydXNo 32082 +IEVyaWs= 32083 +dXJhdGU= 32084 +yZly 32085 +IEN5cg== 32086 +b3VibGU= 32087 +IEJlY2Nh 32088 +IHBhc3N3b3Jkcw== 32089 +xbE= 32090 +Ym9yZw== 32091 +IHZlbmRv 32092 +IENsYXVz 32093 +IEZheg== 32094 +aW5kZXN0 32095 +IGRlY2Vhc2Vk 32096 +IGNvbXBhcmlzb25z 32097 +IExDRA== 32098 +IFBvcms= 32099 +IGV2ZW50dWFs 32100 +IHBhdHJlb24= 32101 +IGluYWJpbGl0eQ== 32102 +IGV4dGluY3Rpb24= 32103 +IOyii+yVhO2VmOuKlA== 32104 +INGB0L7RgQ== 32105 +YWp1 32106 +INeR15DX 32107 +IHNvZm9ydA== 32108 +IGRlc3RpbmVk 32109 +IFJpbg== 32110 +IG1vdXRocw== 32111 +IE5hdMO8cmxpY2g= 32112 +IHByZXNlcnZpbmc= 32113 +IGxpbXA= 32114 +b2N1c2Vk 32115 +0LjQvdCz 32116 +IGV4cG9zaW5n 32117 +IM6+ 32118 +640= 32119 +bGF1Z2g= 32120 +IGhpc3M= 32121 +IGluZGll 32122 +IGRldGFs 32123 +0YDQsNCy0YHRgtCy 32124 +IHRyw6pu 32125 +IG9nbmk= 32126 +IHNpbXBsZW1lbnRl 32127 +IDE5Nzg= 32128 +IGdvbw== 32129 +IDE5Njc= 32130 +IGdlbnVn 32131 +aMO2 32132 +IGhpc3TDsw== 32133 +IGxvYnN0ZXI= 32134 +Y2VuZG8= 32135 +IHRlaWw= 32136 +IGFsbGV2aQ== 32137 +MDAwMA== 32138 +T0xE 32139 +IHBlc29z 32140 +IGJvbnVzZXM= 32141 +IGFtaQ== 32142 +IHJldml2YWw= 32143 +IEhvcnNl 32144 +IHNhY2s= 32145 +VGFsaw== 32146 +IG11bGhlcg== 32147 +INC/0L7RgdGC0L7Rj9C9 32148 +IEhvb2Q= 32149 +SHVo 32150 +IOu2gQ== 32151 +IGh5dW5n 32152 +IE1lZXRpbmc= 32153 +IGltcG9ydGE= 32154 +IOywvuyVhA== 32155 +IFZlcm4= 32156 +IHN0cmlwcGVk 32157 +IHJlZnVzZXM= 32158 +IHF1YWxpZmljYXRpb25z 32159 +b3Bs 32160 +gOuPhA== 32161 +aXjDrQ== 32162 +IGRpYWI= 32163 +aXRpbWU= 32164 +Zmxvd3M= 32165 +IGluYWM= 32166 +IEdvbmc= 32167 +IG1lYW5pbmdsZXNz 32168 +IGNvdXJhZ2VvdXM= 32169 +IG1pY3JvYmk= 32170 +YXp5 32171 +aGlzdA== 32172 +IHZvbHVudGVlcmluZw== 32173 +VklF 32174 +IHZpb2xhdGVk 32175 +IHN5bXBhdGh5 32176 +IEVkaXQ= 32177 +ZWxlY3RyaWM= 32178 +cHJvZHVjdA== 32179 +IHBhbmRlbWlh 32180 +IGdlb21ldHJpYw== 32181 +IENvbnZlcnM= 32182 +Z3Jl 32183 +IGdsdXQ= 32184 +aXN0ZWQ= 32185 +INin2YTZgw== 32186 +IENoYWlu 32187 +IFByZXNlbnQ= 32188 +IFlpbg== 32189 +INGB0L7Qsw== 32190 +IFZsb2c= 32191 +IOyWtOuouA== 32192 +IGRvbm4= 32193 +IGhpdGNo 32194 +dWNraW5n 32195 +d2FsZA== 32196 +cmlzaw== 32197 +IGhhcmk= 32198 +IEtlbnM= 32199 +IElkb2w= 32200 +INCy0L3QuNC80LDQvdC40LU= 32201 +IHRvZGQ= 32202 +IHNtYXNoZWQ= 32203 +IGludmFyaQ== 32204 +INC60L7QvdGC0YA= 32205 +IGF1dGlzdGlj 32206 +7J6l64uY 32207 +UmVz 32208 +0LTRiw== 32209 +Y2hhdQ== 32210 +IHNlbHY= 32211 +IGjDpHR0ZW4= 32212 +4KS/ 32213 +IGV4cGVjdHM= 32214 +z4HOtw== 32215 +IGHDp8Sxaw== 32216 +IEhUVFA= 32217 +bGXFnw== 32218 +IHN3ZWVwaW5n 32219 +IEJldGE= 32220 +IGNvdW50ZXJwYXJ0cw== 32221 +YWJpbGU= 32222 +IFNpbXM= 32223 +Q3M= 32224 +IHJlcGFy 32225 +c3F1 32226 +IHByb3ZpbmNpYWw= 32227 +IHNoYXJlaG9sZGVycw== 32228 +IHJ1bnRlcg== 32229 +IGdlZGFjaHQ= 32230 +IFRlZW4= 32231 +IGdyYW5kcw== 32232 +YWdsZXM= 32233 +IHJvY2t5 32234 +dmVucw== 32235 +IHJpdmFscw== 32236 +dW5hbA== 32237 +IHJlYWN0cw== 32238 +66k= 32239 +IG1lcmN1cnk= 32240 +IEx1aWdp 32241 +INC+0LM= 32242 +IEpVU1Q= 32243 +IGxvZA== 32244 +IGNvcnRleA== 32245 +d2ln 32246 +IGxha2g= 32247 +7KSR7JeQ 32248 +IFZpYw== 32249 +IE11bmQ= 32250 +IG1hcHBlZA== 32251 +IERlbGw= 32252 +IERydWNr 32253 +IGxpZmVz 32254 +0LDQu9GM0L3QvtC1 32255 +aXZpZHVhbA== 32256 +YWTEsW0= 32257 +IGF0cmF2 32258 +IEZsdWc= 32259 +IEtsZWlu 32260 +6rGw7JW8 32261 +4Lir4LiZ 32262 +IGFwcGxp 32263 +4K6+Pw== 32264 +w7x5b3J1bQ== 32265 +INC40L3RgtC10YDQtdGB0L3Qvg== 32266 +IGRpc2luZmVjdA== 32267 +Pi0= 32268 +IGNoYW1wYWduZQ== 32269 +IGtsYQ== 32270 +b3BlcnM= 32271 +VHJhbnM= 32272 +IERlc2VydA== 32273 +IGN1bHRpdmF0ZQ== 32274 +IEZ1Y2tpbmc= 32275 +aWRlbGl0eQ== 32276 +INGC0LDQvQ== 32277 +IGluY3Vi 32278 +IHRlbXU= 32279 +IGxlYXJuZXI= 32280 +Zm91bmRlcg== 32281 +IFN5bA== 32282 +IGZhdG8= 32283 +emllcg== 32284 +IOyXhuydtA== 32285 +IOyIqA== 32286 +IHBzeWNobw== 32287 +INGC0LXQu9C10YQ= 32288 +IHJlZ2FyZGU= 32289 +IHJlcHJlc2VudGF0aW9ucw== 32290 +IGxpdGlnYXRpb24= 32291 +IHNwYW5u 32292 +dWx0cw== 32293 +Ymlvcg== 32294 +IFN1cnZleQ== 32295 +IExFRHM= 32296 +IHRyw6Q= 32297 +IGzDqm4= 32298 +IGFudGlveGlk 32299 +0LXRgNC+0Lw= 32300 +IGluZHVjdGlvbg== 32301 +IGZvb2xlZA== 32302 +w6R0emxpY2g= 32303 +INCz0L7QstC+0YDRj9GC 32304 +IEZhY3Q= 32305 +dW1iYWk= 32306 +IHdpZ2dsZQ== 32307 +Tk9VTg== 32308 +IGTDqXZlbG9wcA== 32309 +IENsYXJv 32310 +IOy4 32311 +66w= 32312 +IGFjY3VtdWxhdGU= 32313 +IG1haW50YWlucw== 32314 +64Q= 32315 +IEZpZ2h0ZXI= 32316 +7Yag 32317 +IG1hdGlu 32318 +IGNvdXBvbg== 32319 +IHN0dW50 32320 +IGRlYnV0ZWQ= 32321 +IHByYWc= 32322 +0LjQstCw0LXQvA== 32323 +NzM= 32324 +IGV4cHJlcw== 32325 +IOyYpOu5oA== 32326 +INC/0LXRgNGB0L7QvQ== 32327 +IGNhbGN1bHVz 32328 +IGFicnVwdA== 32329 +IEluc3BlY3Rvcg== 32330 +b3VydA== 32331 +xbpuaWVq 32332 +aW50ZW5zZQ== 32333 +QmE= 32334 +IGxvdW5nZQ== 32335 +IGFzdGhtYQ== 32336 +IEhpw6c= 32337 +qrs= 32338 +IGVkaXRvcmlhbA== 32339 +IHNlaXpl 32340 +IGvEsXI= 32341 +IG1vdXZl 32342 +IHRpZXJyYQ== 32343 +IHRlc3Rvc3Rlcm9uZQ== 32344 +IHJo 32345 +IEtpbmdzdG9u 32346 +RUxMRQ== 32347 +IFJlcHJlc2VudGF0aXZl 32348 +IDE5NzQ= 32349 +IGliYQ== 32350 +VHM= 32351 +IHNvcnRh 32352 +ICg/KQ== 32353 +INiq2Yg= 32354 +IOuCtOugpA== 32355 +IGJla29tbXQ= 32356 +IHNwaXJpdHVhbGx5 32357 +IGRpc3RvcnRlZA== 32358 +TWFk 32359 +IHJlaW0= 32360 +w6FuaA== 32361 +IE90dG9tYW4= 32362 +IFJlbGln 32363 +IEVscw== 32364 +IHJldGFpbmVk 32365 +IExhdWdocw== 32366 +IFNBUw== 32367 +INC60L7Qu9C40YfQtdGB0YLQstC+ 32368 +15XXqteo 32369 +IGlubm92YXRl 32370 +IGtvcms= 32371 +INGA0LDRgdGB0LrQsNC30YvQsg== 32372 +b25kZXJl 32373 +aXZp 32374 +YXll 32375 +b3VudHk= 32376 +INC/0L7Qu9GD0YfQsNC10YLRgdGP 32377 +IGJ1bnM= 32378 +IHnDvHpkZW4= 32379 +IHN1cmdlcmllcw== 32380 +2KPZhg== 32381 +IGJhbmtydXB0Y3k= 32382 +d2VsdA== 32383 +IHNpYW1v 32384 +IGRhcmtlc3Q= 32385 +IEhhbm4= 32386 +Z2dh 32387 +IGZvcm1hcw== 32388 +IERq 32389 +bmFtZWQ= 32390 +IHNoaWVsZHM= 32391 +dWVsbGVy 32392 +IEZldw== 32393 +IGxhY2U= 32394 +IGZ1cmlvdXM= 32395 +IFlV 32396 +IHNvY2lldGFs 32397 +IGp1ZGdlbWVudA== 32398 +IERvcw== 32399 +IGphYg== 32400 +bGF3cw== 32401 +IHJlaW52ZW50 32402 +IEthdGhlcmluZQ== 32403 +IENob2k= 32404 +YWRvd3M= 32405 +IHJhbnM= 32406 +b2Rlbg== 32407 +IE1pZHdlc3Q= 32408 +bsSxbg== 32409 +IGRlcG9ydA== 32410 +IERpcA== 32411 +IGF0ZW5jacOzbg== 32412 +IENvdXJ0bmV5 32413 +aXZpZGFk 32414 +INqp24E= 32415 +IGVmZmljYWN5 32416 +IEJyb29rcw== 32417 +IHJlZmVycmFs 32418 +INC60L7QvdGG 32419 +IG1hbGljaW91cw== 32420 +IGtpcg== 32421 +IEdvZGRlc3M= 32422 +IGZ1bmt5 32423 +IGludGVyaW0= 32424 +IEvDtnJwZXI= 32425 +IOyWvOun 32426 +a3Vy 32427 +INC60LvQuA== 32428 +IHRydWNz 32429 +Z2VzZXR6 32430 +IHp1Zw== 32431 +IEdsw7xjaw== 32432 +IE1pbnV0ZQ== 32433 +IHByZXN0aWdpb3Vz 32434 +IG5pZXo= 32435 +IGNvbmNlbnRyYXRpb25z 32436 +0LvQsNGB0YLQuA== 32437 +IFNpcw== 32438 +IFZpdGFtaW4= 32439 +a292 32440 +IFBCUw== 32441 +INC90LXQtQ== 32442 +IHJldGFpbGVycw== 32443 +IGNvbnZlbnRpb25z 32444 +IFNhbWFudGhh 32445 +IHByb3VkbHk= 32446 +Sm9yZGFu 32447 +IEpBU09O 32448 +YXRr 32449 +IHRyaXN0ZQ== 32450 +IHN0w6Ry 32451 +IHJlaXRlcmF0ZQ== 32452 +IHBvc3Rlcmlvcg== 32453 +IDE5NzM= 32454 +IFBpbmU= 32455 +IEp1bGlldA== 32456 +IHBlZGly 32457 +a2ls 32458 +IG92ZXJsYXBwaW5n 32459 +IGV4Y2x1ZGU= 32460 +IGVjb27Ds20= 32461 +IGFjY2VwdHM= 32462 +IFN0ZXI= 32463 +IOyatOuPmQ== 32464 +ZXN0YWI= 32465 +IHR1Zw== 32466 +YXJn 32467 +IGxpdnJv 32468 +2KfYtQ== 32469 +IHNlYW1z 32470 +IGJ1cmF5YQ== 32471 +IGVsbG8= 32472 +IFRN 32473 +IFBhdw== 32474 +IEluZGV4 32475 +RXhj 32476 +IGluc3BpcmF0aW9uYWw= 32477 +IGR1bms= 32478 +YWt0ZXI= 32479 +IGNvbmRpdGlvbmVy 32480 +IFNhbHV0 32481 +xYJlYw== 32482 +IOyJvQ== 32483 +INGD0LfQvdCw 32484 +IFJvbWVv 32485 +ZnJ1aXQ= 32486 +IFlP 32487 +IGNo4buJ 32488 +0LHRgw== 32489 +Ym9ucw== 32490 +IHJlcHJvZHVjdGl2ZQ== 32491 +IG9yYWRh 32492 +IO2aqA== 32493 +IHRlbnRhcg== 32494 +IG1hw7FhbmE= 32495 +IHNvbHZlbnQ= 32496 +SmVzc2ljYQ== 32497 +IExlZ2Fs 32498 +IHR1YQ== 32499 +IHNpYw== 32500 +IEVR 32501 +YXVrZWU= 32502 +7Iuc64uk 32503 +IMWedQ== 32504 +IGFkaGVyZQ== 32505 +IFR1bA== 32506 +IOCuhg== 32507 +IHRleHRib29rcw== 32508 +IEZpZnRo 32509 +IGV4cGVyaQ== 32510 +IGNoaWM= 32511 +IGhlYXA= 32512 +aW5lbHk= 32513 +YXRyYQ== 32514 +VHdv 32515 +IGhlbGVtYWFs 32516 +IGZyZW4= 32517 +IGJpc2hlcg== 32518 +2KfYtA== 32519 +IOyEoOyDnQ== 32520 +IFRhZ2Vz 32521 +IHPhu7E= 32522 +IGJ1bGxpZWQ= 32523 +2KQ= 32524 +IGJlbmVmaXRlZA== 32525 +IFByZXZpb3VzbHk= 32526 +INGN0YTRhA== 32527 +2Y0= 32528 +IHNlbmF0ZQ== 32529 +IE1vcm0= 32530 +aWprZQ== 32531 +IEZsdQ== 32532 +IGluY29ycG9yYXRpbmc= 32533 +amFjaw== 32534 +INC/0LjRgg== 32535 +IGltcGx5 32536 +IGhhY2tz 32537 +IFJJQ0g= 32538 +INC60LLQsNGA 32539 +INC/0YDQtdC60YDQsNGB 32540 +IGRlcGVuZGVuY3k= 32541 +IOyaqQ== 32542 +IOyxhQ== 32543 +IHfDpGhyZW5k 32544 +IHN1bGxh 32545 +IFBpdHRzYnVyZ2g= 32546 +IGVzZW1waW8= 32547 +vOuhnA== 32548 +cHJvdA== 32549 +IFJvc2Vu 32550 +IEluZGVwZW5kZW5jZQ== 32551 +IHBhcnNsZXk= 32552 +aWVnZW4= 32553 +IGhhdw== 32554 +IGFxdWVsbA== 32555 +IENBUA== 32556 +INGA0LDQsdC+0YLQsNGC0Yw= 32557 +IENsaWZm 32558 +aW9uYXI= 32559 +IHNlY3VyaW5n 32560 +zr3OtQ== 32561 +IHV0aWxpcw== 32562 +IGNvdWxl 32563 +IFBpbmc= 32564 +IHRyZWs= 32565 +IGZhaw== 32566 +IGVub3JtZQ== 32567 +IOyLqw== 32568 +IGRvdWJsaW5n 32569 +INC90YDQsNCy0LjRgtGB0Y8= 32570 +IGhlZA== 32571 +aG92ZW4= 32572 +IFN0YW5kaW5n 32573 +IG3DrW4= 32574 +IEppbWlu 32575 +IG1vbmFyY2g= 32576 +IGNva2U= 32577 +IG1y 32578 +IGNsaWM= 32579 +w40= 32580 +IGltcGVhY2htZW50 32581 +IGR1cmFiaWxpdHk= 32582 +IHZhcmlvcw== 32583 +IGNvbW1lcmNpYWxz 32584 +IGdyZWV0aW5ncw== 32585 +IFJp 32586 +IEFwcHJlY2k= 32587 +7J6I64qU 32588 +IHLDqXN1bHQ= 32589 +w6lydA== 32590 +IHNhbHV0ZQ== 32591 +IHBvZGVyaWE= 32592 +IHN1bnJpc2U= 32593 +dmVjaw== 32594 +IHJlbHVjdGFudA== 32595 +IGNvbW1pc3Npb25lcg== 32596 +w6J0ZQ== 32597 +IEtlbm55 32598 +IFNpcmk= 32599 +IOuKmA== 32600 +IEVF 32601 +IHVuY2g= 32602 +0LrQvtC9 32603 +INin2YTYpQ== 32604 +IGJlbHRz 32605 +IGhhc3M= 32606 +INC80L7Rjw== 32607 +IGRpc3BsYWNlZA== 32608 +IGFicmE= 32609 +zq3Ouw== 32610 +IHNjcmF0Y2hlcw== 32611 +IGNvbWV0 32612 +IGF1dGhvcml6YXRpb24= 32613 +IExMQw== 32614 +IHByb2R1aw== 32615 +IHJlaGFiaWxpdGF0aW9u 32616 +5Z4= 32617 +0ZbRhw== 32618 +dWRpbmc= 32619 +b2xpdA== 32620 +IDEwNQ== 32621 +IGV4cGFuZHM= 32622 +IGFsdHJp 32623 +IEtvbW1lbnQ= 32624 +IGFuZg== 32625 +UGw= 32626 +IE1hbmE= 32627 +ZmVk 32628 +IGJyaQ== 32629 +IG9yYQ== 32630 +R3M= 32631 +IEd1cg== 32632 +dWNrbGFuZA== 32633 +IGp1bmN0aW9u 32634 +IGlyb25pYw== 32635 +IEZlZWQ= 32636 +IHByYWt0 32637 +IEhhbW1lcg== 32638 +jOuPhA== 32639 +IFRyYWN5 32640 +IEFzaWRl 32641 +0L3QtdCz0L4= 32642 +INC40YHQv9C+0LvRjNC30L7QstCw0YLRjA== 32643 +IHphag== 32644 +IGVxdWl0YWJsZQ== 32645 +IGN1cmI= 32646 +IGRlcml2YXRpdmVz 32647 +IHB1cHBpZXM= 32648 +IEtlbm5ldGg= 32649 +IENvbXBs 32650 +aWdyYW0= 32651 +IEdhcmNpYQ== 32652 +KSI= 32653 +IEhhcmJvcg== 32654 +ZXN0aWFs 32655 +IGVycw== 32656 +5rk= 32657 +IHVud2FudGVk 32658 +IGJlbGFuZw== 32659 +0LDQs9C+ 32660 +ZW1i 32661 +ZG9z 32662 +IOyZnOs= 32663 +IEJ1ZGdldA== 32664 +IGJhdHRsaW5n 32665 +2K3Yqg== 32666 +a29r 32667 +0L3QsNGH0LDQu9Cw 32668 +IHBsYWc= 32669 +IGNhbnRpZGFk 32670 +IGdydXBvcw== 32671 +IHBsdWdpbnM= 32672 +bGVyaW5p 32673 +INC40LzQtdC10YI= 32674 +IHNvenVzYWdlbg== 32675 +b2xpY3M= 32676 +IHB1ZWJsbw== 32677 +IHJlbWluaXM= 32678 +csOkbg== 32679 +IE1vcnJpc29u 32680 +IGxpbmhh 32681 +IGJyZWF0aHM= 32682 +IFRhc3Rl 32683 +IGVuZnJlbnQ= 32684 +IERvY2tlcg== 32685 +INC00LXQvQ== 32686 +IGV0aG5pY2l0eQ== 32687 +IHdvYg== 32688 +IHN1ZmZlcnM= 32689 +IHRyYW5zaXRpb25pbmc= 32690 +IFJhbmdl 32691 +xJlkenk= 32692 +INC60LDRgg== 32693 +IHN5bmVy 32694 +IGRvbnV0 32695 +IHByb2JhYmlsaXRpZXM= 32696 +IE9tYXI= 32697 +V2hpY2g= 32698 +dWlzaA== 32699 +aXNpbg== 32700 +IGRlbW9z 32701 +IOyggOq4sA== 32702 +IOuYkeqwmQ== 32703 +INC10LTQuNC9 32704 +IGNlcnZl 32705 +IGpva2E= 32706 +SUFO 32707 +IGtpbG9tZXRlcg== 32708 +IGhvcml6b250YWxseQ== 32709 +IEJoYWc= 32710 +IC0+ 32711 +IE1vbml0b3I= 32712 +IGtub3dsZWRnZWFibGU= 32713 +IGZhdg== 32714 +IHBpbm5lZA== 32715 +IGVCYXk= 32716 +aWNrZXI= 32717 +IOyeoOq5kOunjA== 32718 +IFhpYW9taQ== 32719 +IGNhcGl0 32720 +IG5w 32721 +IDE5NjU= 32722 +aG9l 32723 +IG5vaw== 32724 +IFNhZ2U= 32725 +INC90LXQu9GM0LfRjw== 32726 +IFRvdw== 32727 +Z2Ft 32728 +IGRpY2Vu 32729 +IFNVQlNDUklCRQ== 32730 +IHJlYm9vdA== 32731 +IHBhag== 32732 +IOuztOyXrOs= 32733 +IHRoaWNrZW4= 32734 +IFJlYWxpdHk= 32735 +aWTDpG4= 32736 +TmE= 32737 +IOqyg+ydgA== 32738 +ISEp 32739 +IHJvdXRpbmVz 32740 +INC+0LTQvdC+0LPQvg== 32741 +IGV4dGluZw== 32742 +IOymnQ== 32743 +IHN1bGZ1cg== 32744 +IGNhcnZl 32745 +IGFzdGVyb2lk 32746 +IFdhcnJpb3I= 32747 +IHBob3RvZ3JhcGhlcnM= 32748 +IHBlbGw= 32749 +IGNyb3Nzb3Zlcg== 32750 +IGhhY2Vtb3M= 32751 +IE5lag== 32752 +IHNldHRsaW5n 32753 +IGlybQ== 32754 +IEJvb2tz 32755 +aWVudMO0dA== 32756 +IGVzcGFjaW8= 32757 +IFNjaG9sYXJz 32758 +IGRvb21lZA== 32759 +IElSUw== 32760 +d29obA== 32761 +IHNlZ3Vl 32762 +IOuIhOqwgA== 32763 +IHByYXRpYw== 32764 +QlQ= 32765 +IENvbnNpZGVyaW5n 32766 +IEJ1ZmZhbG8= 32767 +IHRyYWluaW5ncw== 32768 +IGdlYnJ1 32769 +IEdsZWljaA== 32770 +IHBpcmF0ZXM= 32771 +IGVudmVsb3A= 32772 +IHJlb3Blbg== 32773 +aW1hdA== 32774 +IHRlZQ== 32775 +IHN1ZWQ= 32776 +ZmVo 32777 +INeU16c= 32778 +IGRpZXRz 32779 +IGp1bnRvcw== 32780 +YXN0bw== 32781 +IG1pc3VuZGVyc3Rvb2Q= 32782 +IHJ1aW0= 32783 +IGNsYXNzaWZ5 32784 +INC/0YDQvtC00YPQug== 32785 +IGluc2U= 32786 +IGlsbHVzdHJhdGVk 32787 +IGNvcnJvc2lvbg== 32788 +IGFjY3JlZA== 32789 +IEF1bnRpZQ== 32790 +INC/0YDQuNCy0LXRgg== 32791 +IExJVkU= 32792 +IHJlaw== 32793 +IHJlY2VpcHQ= 32794 +IEJhcmJpZQ== 32795 +IFNuYWtl 32796 +dHVybg== 32797 +SmVmZg== 32798 +lYQ= 32799 +Vk9JQ0VPVkVS 32800 +Y29sbA== 32801 +IHJ1bm5lcnM= 32802 +7KCc6w== 32803 +b3Nvcw== 32804 +bW9vbg== 32805 +IGtleW5vdGU= 32806 +IEluc3RpdA== 32807 +U1BFQUs= 32808 +IHBsdWdz 32809 +IGN1cnY= 32810 +IFl1cmk= 32811 +IFRoZXJlcw== 32812 +IFBz 32813 +IM68z4DOvw== 32814 +IGNvbnZlcnRlcg== 32815 +IHJlZmluZQ== 32816 +IGJhZGFzcw== 32817 +IM6/zrk= 32818 +IHJlZ2Vu 32819 +YXp6aQ== 32820 +2YrZgQ== 32821 +IHNlaXplZA== 32822 +IGnDp2Vy 32823 +aWxlZQ== 32824 +IHVwc3RyZWFt 32825 +IGJ1ZHM= 32826 +IHBpbQ== 32827 +IO2VmOujqA== 32828 +IGFsbHVkZWQ= 32829 +IHRoZW1lZA== 32830 +IGNvbnNpc3Rpbmc= 32831 +IGJvbnM= 32832 +dW51eg== 32833 +INC/0YDQvtCy0L7QtA== 32834 +IExvdmVseQ== 32835 +4KWL 32836 +IHBhcmFjaA== 32837 +IFN0YWF0cw== 32838 +IHNlbGVjdGl2ZQ== 32839 +IGZhc2U= 32840 +IEdlb3JnZXQ= 32841 +IGNvY2FpbmU= 32842 +IHJlcHJvZHVjdGlvbg== 32843 +IExhcmE= 32844 +IExE 32845 +IGdo 32846 +Sm9u 32847 +IGzDpQ== 32848 +IOuRkOs= 32849 +IHR5cGVk 32850 +IEJhbmE= 32851 +65Oc6w== 32852 +IHNhdm9yeQ== 32853 +IFpvbWI= 32854 +c3RhbmRlbg== 32855 +IHBlZGVzdHJpYW4= 32856 +IGRpZmbDqXJlbnRz 32857 +IOyLuA== 32858 +IGNvbXBsYWluZWQ= 32859 +INCa0YLQvg== 32860 +INec16Q= 32861 +YWxpxZtteQ== 32862 +IG1vcnRhcg== 32863 +IHZlcmRpY3Q= 32864 +IHN1ZmljaWVudGU= 32865 +IE1pbGxpb24= 32866 +bWl0dGVs 32867 +aW5hbHM= 32868 +INin2YTYrg== 32869 +0LDRjtGB0Yw= 32870 +IG1pxJlkenk= 32871 +IE9sZQ== 32872 +IGludmVydA== 32873 +Y3p5xIc= 32874 +0L7Qt9C80L7QttC90L4= 32875 +c3RhcnRlcg== 32876 +IGF1ZGl0b3I= 32877 +IFNjb3V0 32878 +Y2hpZW4= 32879 +IFN2ZXJpZ2U= 32880 +dWZmbGVk 32881 +IHplaG4= 32882 +IEF1Y2tsYW5k 32883 +IGFyZ2VudA== 32884 +IDE5NzY= 32885 +IEhvZQ== 32886 +IGJvdGhlcnM= 32887 +IHNvY2lhbGlzdA== 32888 +IHBsaWVycw== 32889 +IGVtZXJnZW4= 32890 +IFhQ 32891 +0LXRgNC+0LI= 32892 +TW9yZQ== 32893 +IExldmk= 32894 +IEFuZGVycw== 32895 +aWJpbGlkYWQ= 32896 +IFBhcmVudHM= 32897 +IGluZHVjZWQ= 32898 +7Ja07KQ= 32899 +IGJhbGFuY2Vz 32900 +INCy0YvRiA== 32901 +IHN1Ym1hcmluZQ== 32902 +U3RhcnQ= 32903 +IGRyaWVz 32904 +IHZvbHZlcg== 32905 +IHRpY2tpbmc= 32906 +Y290dA== 32907 +IGZhag== 32908 +cHLDqXM= 32909 +IFNhYmI= 32910 +INC30LDRhw== 32911 +INC/0L7QutGD0L8= 32912 +IGJhcHRpemVk 32913 +IEJyaWxsaWFudA== 32914 +INCR0L7Qsw== 32915 +IG1vdHM= 32916 +Yml0cw== 32917 +IGxhdHRpY2U= 32918 +IGNvcmlhbmRlcg== 32919 +IHJlc2lkZW5jeQ== 32920 +eW5j 32921 +IHBpZXJ3c3p5 32922 +IEtub2Nr 32923 +IFphcA== 32924 +INCV0LI= 32925 +6rKs 32926 +IHVuZXZlbg== 32927 +IEphcw== 32928 +b2Rvcg== 32929 +NzQ= 32930 +IFNpdGU= 32931 +IGFjb250ZWNldQ== 32932 +eW1wdA== 32933 +IHRyaWxvZ3k= 32934 +IGxhbnRlcm4= 32935 +IFp1Y2tlcg== 32936 +dmFyaQ== 32937 +d2VsbGluZw== 32938 +IFBvdGF0bw== 32939 +Z29tZXJ5 32940 +IHJlYWN0ZWQ= 32941 +IENocm9u 32942 +IGplZGU= 32943 +YmVlbGQ= 32944 +IHR3ZW50 32945 +IGxhY3Q= 32946 +IHLDqXNl 32947 +IHJlbGVudA== 32948 +IGZ1cm5hY2U= 32949 +IHdpZGdldA== 32950 +IGVhcnRocXVha2Vz 32951 +IEFkanVzdA== 32952 +aWxpdA== 32953 +INij2Yg= 32954 +IGhlYXJpbmdz 32955 +IGRlZmVuZGFudA== 32956 +aXJzaW5peg== 32957 +IGJhc2s= 32958 +Y2ph 32959 +nKg= 32960 +IHJpZmxlcw== 32961 +IGluc3RhbA== 32962 +IEZvcmdpdmU= 32963 +cGljYWw= 32964 +INCe0YfQtdC90Yw= 32965 +IHBldGl0ZXM= 32966 +IGhw 32967 +IHJlbm93bmVk 32968 +IElubg== 32969 +IOyjvOyEuOyalA== 32970 +IGVtcGhhc2l6ZWQ= 32971 +IOyeiOyjoA== 32972 +IOqyg+ycvOuhnA== 32973 +xZM= 32974 +Z2lsaQ== 32975 +RGF2ZQ== 32976 +IGV4aGF1c3Rpbmc= 32977 +xYJ1Zw== 32978 +IHNjaGVtYQ== 32979 +zrzOrA== 32980 +Y3ljbA== 32981 +IGF1dGFudA== 32982 +IHBhcmNlbA== 32983 +IG1hdGVyaWE= 32984 +IEJlcnJ5 32985 +INGB0LDQvNC4 32986 +IGV4dHJhY3RlZA== 32987 +IFNheWluZw== 32988 +aXNtYXRpYw== 32989 +INC/0L7Qv9GA0L7QsQ== 32990 +IG5ldXJvbg== 32991 +Z3JhcGg= 32992 +nOuptA== 32993 +IGVuY2xvc3VyZQ== 32994 +IEpvaGFubg== 32995 +IGFmdGVybWF0aA== 32996 +0YLQvtCx 32997 +IHXFvHk= 32998 +IHNhbXA= 32999 +MzYw 33000 +IE1laQ== 33001 +IHRhY28= 33002 +IHJlY2VwdG9ycw== 33003 +IHB1bmNoZXM= 33004 +IEhvamU= 33005 +INmH2YbYpw== 33006 +PSIj 33007 +IEFuZ3VsYXI= 33008 +IG11c2lxdWU= 33009 +IHJvbA== 33010 +IMOx 33011 +c3RlcnJlaWNo 33012 +IGNsYW0= 33013 +IFRyZWFzdXJ5 33014 +Y2hlbWljYWw= 33015 +IGFwYXI= 33016 +IGFwcGVuZA== 33017 +IGZvcmJpZA== 33018 +IEhhbWJ1cmc= 33019 +0LDQutC+0LI= 33020 +IOq4iA== 33021 +aWxkYQ== 33022 +IHByZXBhcmF0aW9ucw== 33023 +IG1vZ8SF 33024 +IGNhbWlubw== 33025 +RXJpYw== 33026 +IEJsaW5k 33027 +IERpc2NvdmVyeQ== 33028 +7Lig 33029 +IGludGVycHJldGVy 33030 +IGJyZWQ= 33031 +IFBzYWxt 33032 +IGRlZmVuZGVk 33033 +7Ims 33034 +IEVyZmFocg== 33035 +IFBlYWNo 33036 +IG1vb25z 33037 +IE9zdA== 33038 +IHNww6ljaWFs 33039 +IGFycml2ZXI= 33040 +IFdpcw== 33041 +dWNp 33042 +IHJvYm90aWNz 33043 +SVZF 33044 +IHNpZWdl 33045 +YXJsYQ== 33046 +IHNlcGFyYXRlcw== 33047 +IFRD 33048 +7Y+w 33049 +cXVpc2l0ZQ== 33050 +IHBhcmVudGhlc2Vz 33051 +0LjQutC1 33052 +IHRyb3Vz 33053 +INGB0LjQu9GM 33054 +IGJlZXJz 33055 +INC/0LvQsNGC 33056 +IHNvbGE= 33057 +IGTDqHM= 33058 +bWluZ2hhbQ== 33059 +aWt0ZQ== 33060 +IG9vcHM= 33061 +IHR3aXRjaA== 33062 +z4g= 33063 +IFNob3VsZG4= 33064 +dXZyZQ== 33065 +IGxlZXI= 33066 +Y3JpcHRpb25z 33067 +IGV5ZXNoYWRvdw== 33068 +IEd1bw== 33069 +IFBvd2VsbA== 33070 +IHN1cHVlc3Rv 33071 +IGFuYQ== 33072 +cmFscw== 33073 +IE1vbnRyZWFs 33074 +IHN1cmZpbmc= 33075 +INCf0LXRgNCy 33076 +157XlQ== 33077 +IG1pbGxpc2Vjb25kcw== 33078 +IHN1YnVyYnM= 33079 +IHBsYW5ldGE= 33080 +0YPRiNC60LA= 33081 +aHJsaWNo 33082 +IEhZ 33083 +INiz25I= 33084 +IE1N 33085 +IEVmZg== 33086 +IEhT 33087 +YW5zb24= 33088 +IOyngeygkQ== 33089 +IHN1bw== 33090 +IGRlcGxveWluZw== 33091 +IGt1bnQ= 33092 +dGVyaW5n 33093 +IGVyZWN0 33094 +7J6l7J20 33095 +IOydjOyLnQ== 33096 +IHNwZWNpbWVu 33097 +IS4uLg== 33098 +IGxpZ25l 33099 +IGtvbnN0 33100 +YWRlcXU= 33101 +IOyDge2DnA== 33102 +IGFjY2Vzc2Vk 33103 +IFBvbGU= 33104 +a2lsbA== 33105 +IOuyhOs= 33106 +IGF1dGhlbnRpY2l0eQ== 33107 +IGFwcGVsbGU= 33108 +dWxsZQ== 33109 +IHJldmlzaW9u 33110 +IGdvYXRz 33111 +0LPQu9C4 33112 +IHBhdQ== 33113 +IFJhbmdlcg== 33114 +IEltYWc= 33115 +YXV0aG9y 33116 +IGV2ZQ== 33117 +IE1lc3Nlbmdlcg== 33118 +IG5heQ== 33119 +IHdob2xlcw== 33120 +w6R0dGU= 33121 +IG9ud2FyZHM= 33122 +IERlcG9pcw== 33123 +IO2RnO2YhA== 33124 +IFNBUlM= 33125 +IHdzenlzdGtpY2g= 33126 +IGRlc3RydQ== 33127 +dW1iaW5n 33128 +IGNvbXBhdGliaWxpdHk= 33129 +IG1pc2luZm9ybWF0aW9u 33130 +b2RvcmU= 33131 +IEZhdm9y 33132 +ZWtv 33133 +j4w= 33134 +d2F1a2Vl 33135 +IFRlYWNoaW5n 33136 +IEtP 33137 +IGJldHRpbmc= 33138 +IHF1ZXN0cw== 33139 +IHZpdnJl 33140 +INC80YPQt9GL 33141 +IHNhZ2E= 33142 +IHN3ZWxs 33143 +IGdlaGU= 33144 +INC+0YDQs9Cw0L3QuNC3 33145 +IGdpZGU= 33146 +IEdyb3Nz 33147 +IGRhbGVq 33148 +IGNsYXdz 33149 +4buZYw== 33150 +IHByZWp1ZGljZQ== 33151 +IGluc2lnbg== 33152 +aWhvb2Q= 33153 +IHBsZWQ= 33154 +IGTDs25kZQ== 33155 +IFBvbGl0aWNhbA== 33156 +IHByZW1pc2Vz 33157 +dW5kZXJ0 33158 +2LnYqg== 33159 +b25uZW4= 33160 +IGVzcGHDp28= 33161 +IGbDqQ== 33162 +IEhhcnJpc29u 33163 +IENlbnN1cw== 33164 +IGNhcmRpbw== 33165 +IGRpeQ== 33166 +IG1pbGlldQ== 33167 +IGpvdXJuw6ll 33168 +IFJlbGVhc2U= 33169 +TklF 33170 +IE11aw== 33171 +aWTDqWU= 33172 +4buNaQ== 33173 +IGnDp2luZGU= 33174 +npk= 33175 +IHJlc29uYXRl 33176 +IG1vbGVz 33177 +IEZseWluZw== 33178 +IEdsb3JpYQ== 33179 +IFBhc3Rvcg== 33180 +IEFyZW5h 33181 +Tk9O 33182 +0L7Qu9C+0LI= 33183 +IGFsbMOt 33184 +b21hdA== 33185 +7Ja064+E 33186 +IGNhcmFjdGVyw61zdA== 33187 +IGRlY2xpbmluZw== 33188 +0ZbRjw== 33189 +YW5jbw== 33190 +IEluZm9ybQ== 33191 +IGJhcmdhaW4= 33192 +IGJ1c2hlcw== 33193 +IE5hdHVyYWxseQ== 33194 +IHJlY2h0cw== 33195 +IFRlbnNvcg== 33196 +IFBhdHJpY2lh 33197 +IHByaW5jaXBpbw== 33198 +IE11bWJhaQ== 33199 +IHdvbWI= 33200 +IG5vc3RyYQ== 33201 +IGRpbGVtbWE= 33202 +IGlyZ2VuZHdhbm4= 33203 +IDE5NjQ= 33204 +IGVuZXJnw61h 33205 +INC90LDRgA== 33206 +IHNlZ3JlZ2F0aW9u 33207 +IEF0aGxldA== 33208 +IMK7LA== 33209 +IHllbmk= 33210 +IFNlaXQ= 33211 +IHZlbm9t 33212 +IGRha2lrYQ== 33213 +IOuPjOs= 33214 +IMOJbA== 33215 +IGZ1cw== 33216 +IE1vZw== 33217 +pr3ri4jri6Q= 33218 +IHJlbWFy 33219 +IFRlZGR5 33220 +IGJyZWFzdHM= 33221 +aWNhbnM= 33222 +a2Fw 33223 +IGjGoW4= 33224 +IEpQ 33225 +IHJlc3VycmVjdA== 33226 +IOyduOs= 33227 +aGVyaWNhbA== 33228 +IGZvdG9ncmFm 33229 +IEpvc8Op 33230 +IGxpdmVsaWhvb2Q= 33231 +IGJpYmxp 33232 +dGVyaQ== 33233 +IHZvcnN0ZWxsZW4= 33234 +IEFBQQ== 33235 +IGFzc2Vzc2luZw== 33236 +WUE= 33237 +IHNwbGVuZA== 33238 +IGV4Y2F2 33239 +IGJhcHRpc20= 33240 +eWxs 33241 +d293 33242 +TWFj 33243 +IHBsYXN0aWNz 33244 +dGVva2Jva2tp 33245 +IGludMOpcmVzc2FudA== 33246 +IGNvbW1hbmRlZA== 33247 +IGZhbW91c2x5 33248 +INCY0LvQuA== 33249 +IE1hbnVlbA== 33250 +IHNvdXRod2VzdA== 33251 +IGRlZm9ybWF0aW9u 33252 +w61jdWxv 33253 +INC90LDRhdC+0LTQuNGC0YHRjw== 33254 +IFBhdHRlcg== 33255 +ZGVncmVl 33256 +IGN6xJlzdG8= 33257 +Ii0= 33258 +IOyFiw== 33259 +IG1hbmdlcg== 33260 +IFRydXN0ZWU= 33261 +gOumrA== 33262 +IHB1bnRvcw== 33263 +aXZhYmxl 33264 +IHZvbGF0aWxl 33265 +IOuKkA== 33266 +IGluc3RhYmlsaXR5 33267 +IGNpZWw= 33268 +Y2nEhQ== 33269 +IHB1cml0eQ== 33270 +0L3QvtGB0YI= 33271 +U2ls 33272 +ZWRhcg== 33273 +Tk9VTkNFUg== 33274 +IHNwZWxsZWQ= 33275 +R0VS 33276 +IHNhbmN0dWFyeQ== 33277 +IGFjY2VsZXJhdGluZw== 33278 +IHNjb3V0 33279 +INC/0YDQtdCy 33280 +ZmFocmVu 33281 +IOuCmOyYqA== 33282 +IHBvY3rEhXQ= 33283 +IE1ldQ== 33284 +a2Fhcg== 33285 +s7Tqs6A= 33286 +YWtyYQ== 33287 +RG93bg== 33288 +IMOEcg== 33289 +IEVsaXRl 33290 +IGFsbG9ucw== 33291 +IG1heW9ubmFpc2U= 33292 +IFN1c3RhaW4= 33293 +cHJpc2luZ2x5 33294 +IHN1cGVydmlz 33295 +IOq3uOugh+yjoA== 33296 +IHVuZW1wbG95ZWQ= 33297 +IGZyZXNobHk= 33298 +INee16I= 33299 +IERo 33300 +IHRhY2tsaW5n 33301 +IG9ncg== 33302 +IOy0iOs= 33303 +IGxvZnQ= 33304 +YXJhaA== 33305 +IEFpcmw= 33306 +IERpcg== 33307 +INCc0L7QttC90L4= 33308 +IGJvb2tpbmc= 33309 +IENSQQ== 33310 +IGh0dHBz 33311 +IGNob2tl 33312 +IGdvd24= 33313 +IG5vaXRl 33314 +IHphYw== 33315 +aXN0b2w= 33316 +IHNlY3Jl 33317 +IHJlc2VtYmxlcw== 33318 +IGN1YWQ= 33319 +7IKs6rCA 33320 +c2hvdw== 33321 +IGJsYW5j 33322 +IGFndQ== 33323 +IFByaW50 33324 +YXN0ZWQ= 33325 +IFdlYXRoZXI= 33326 +aXBs 33327 +IG9ic2N1cmU= 33328 +IGNvbnRl 33329 +b3VnaHM= 33330 +KTs= 33331 +IERhbWU= 33332 +IGNsYXJpZmljYXRpb24= 33333 +IGludGltYWN5 33334 +IHVwaG9sZA== 33335 +IE1pcnJvcg== 33336 +IHdhZ29u 33337 +eGlkZQ== 33338 +IGNsb2c= 33339 +YXBwZXI= 33340 +IEltbWVkaWF0ZWx5 33341 +w7pkZQ== 33342 +IHRvdWNoZG93bg== 33343 +IHJvb2Z0 33344 +0LDRiNCw 33345 +IMOnxLFrdA== 33346 +IGxhaXNzZXI= 33347 +IFVucmVhbA== 33348 +ZW5zaXRpdmU= 33349 +IDEyMw== 33350 +IHBsYXN0ZXI= 33351 +IGR1Y2tz 33352 +IGV0bWU= 33353 +IGJpc2hvcA== 33354 +YnJldmk= 33355 +IGJpYw== 33356 +IHJ1bnRpbWU= 33357 +IGFtYml0aW9ucw== 33358 +0LzQsNGC 33359 +IFdlaW4= 33360 +IE1hcmk= 33361 +IO2KuOs= 33362 +IHJlc29sdmVy 33363 +IG5nw6B5 33364 +IFJpc2U= 33365 +IENydXM= 33366 +IG1lcmNoYW5kaXNl 33367 +IGVsaQ== 33368 +IHN0YXRld2lkZQ== 33369 +IG93bA== 33370 +IHR3aXN0aW5n 33371 +IGNvbnRhbWluYXRlZA== 33372 +IENvbW1lcmNl 33373 +aHl0aG0= 33374 +IMOI 33375 +IOyLpOs= 33376 +IG11c3N0ZQ== 33377 +dWly 33378 +IHN1bXM= 33379 +IFNvbWV3aGVyZQ== 33380 +IGthbWk= 33381 +IGFpcmVk 33382 +IEFORFJFVw== 33383 +IOq6 33384 +IHZpZW5kbw== 33385 +IGFudGlib2R5 33386 +IGFic29sdW1lbnQ= 33387 +IHByb3Rlc3RlcnM= 33388 +IFF1w6liZWM= 33389 +c3RhZHQ= 33390 +U2hhdW4= 33391 +IGNoYW1iZXJz 33392 +IFdlYXI= 33393 +IEVmZmVjdHM= 33394 +IGhhemFyZHM= 33395 +IG5laQ== 33396 +IGNvcmF6w7Nu 33397 +IOG8 33398 +IFNH 33399 +lKk= 33400 +IOyXreyLnA== 33401 +IGNvbWZ5 33402 +IENvZHk= 33403 +IHBlbnNhbmRv 33404 +IGdhbnNrYQ== 33405 +IEFjcm9zcw== 33406 +w7ZsbGln 33407 +YWJ5dGU= 33408 +IHdlZGdl 33409 +IGthbGlhbg== 33410 +IHNpZ3Vl 33411 +ZW5kZXM= 33412 +IEdyb8Of 33413 +IHV0aWxpc2Vy 33414 +IGZsb3du 33415 +0LDQvdC40Y4= 33416 +IGxldmFy 33417 +cmVzdHJpYWw= 33418 +IGlsbHVzdHJhdGlvbnM= 33419 +IGFzbMSxbmRh 33420 +QkxFRVA= 33421 +INC00L7RgdGC 33422 +IHR1cnJldA== 33423 +IHN1aXRjYXNl 33424 +emnEmWtp 33425 +IHNrZXRjaGVz 33426 +IGFjcmVk 33427 +IFJlaQ== 33428 +IHRzdW4= 33429 +IFNhZw== 33430 +IHRoaXJkcw== 33431 +IEtJUkJZ 33432 +cmFp 33433 +IGh1bWFub3M= 33434 +IHJlY29tbWVuZHM= 33435 +IGV4dHJhb3JkaW5hcmlseQ== 33436 +IGNvbW1lbmNlbWVudA== 33437 +S04= 33438 +b3Bleg== 33439 +INeR16k= 33440 +IGxldGhhbA== 33441 +IEVzdGFtb3M= 33442 +IGluc3BlY3Rvcg== 33443 +IFNlb2s= 33444 +ZXVu 33445 +IG9mZnNob3Jl 33446 +IGdldHRpbg== 33447 +eWVhcnM= 33448 +IFNpbGVuY2U= 33449 +IE5hdHVy 33450 +dXB1bg== 33451 +IHRyenk= 33452 +IG5vZ2V0 33453 +IGhhbWJ1cmdlcg== 33454 +IFByYWlzZQ== 33455 +w6luZA== 33456 +IDE5NzE= 33457 +eWxpZQ== 33458 +a3JpdA== 33459 +IOyDneqwgeydtA== 33460 +IG1vbWVudG9z 33461 +IGVzdMOp 33462 +IGRpc3NlbWlu 33463 +IGdpZ3M= 33464 +IGRlc2Fm 33465 +IGF2aXM= 33466 +IFpvbw== 33467 +IOyViuydgA== 33468 +aMOkbmc= 33469 +aGFrZQ== 33470 +IEJpc20= 33471 +IHJldGhpbms= 33472 +IE1hbGNvbG0= 33473 +IGlkZW50aWZpZXM= 33474 +bG93ZXI= 33475 +aXhlbA== 33476 +IHR2w6U= 33477 +a2Vk 33478 +aWVyeg== 33479 +IMO2ZmZlbnRsaWNo 33480 +IHByb2NsYWlt 33481 +c29vbg== 33482 +bG9s 33483 +IGxvaQ== 33484 +IGJpdHRlbg== 33485 +cm9sbG8= 33486 +IHNlcm1vbg== 33487 +IGVzcXU= 33488 +IGphY2tldHM= 33489 +IGdyw6FmaWM= 33490 +INC/0L7QutCw0LfRi9Cy 33491 +IGNhYmV6YQ== 33492 +Y2hvZHpp 33493 +IHBlbHZpcw== 33494 +IG5vc3RhbGdpYQ== 33495 +IGJyZXc= 33496 +IHNob3J0Y3V0cw== 33497 +IEFkZW3DoXM= 33498 +IHN1cGVyZmljaWFs 33499 +IGJvY2E= 33500 +aW1lbnRvcw== 33501 +IHNwcm91dHM= 33502 +IEpvbmFz 33503 +IEZsb3JlbmNl 33504 +c3RhdGlj 33505 +ZGF1Z2h0ZXI= 33506 +Kik= 33507 +xYJieQ== 33508 +ZmFzaGlvbg== 33509 +IEdpbmdlcg== 33510 +IOunpOs= 33511 +IGh1c3RsZQ== 33512 +dXRvcw== 33513 +INGC0Y/Qtg== 33514 +IEzDtnM= 33515 +16nXmded 33516 +YW55Y2g= 33517 +dHViZXI= 33518 +IHRpZHk= 33519 +IGZyb250YWw= 33520 +IHdoaXNrZXk= 33521 +IGh1bWlk 33522 +IM6f 33523 +IHJpZGdl 33524 +IG1hcmlu 33525 +IGJpZW50w7R0 33526 +IENhcnJpZQ== 33527 +Y2h3 33528 +IHRhaHVu 33529 +IEVyZ2Vi 33530 +RlI= 33531 +IOygleu2gA== 33532 +IFNvbGRpZXI= 33533 +IGVubGlnaHRlbm1lbnQ= 33534 +IGV4YW1pbmluZw== 33535 +IE5vdHJl 33536 +IGVyYW0= 33537 +IFN1bm55 33538 +IGxheWVyZWQ= 33539 +IERhenU= 33540 +cmFkZXM= 33541 +INC90LDRiNC10Lk= 33542 +IHRpbWJlcg== 33543 +IG1hbm5lcnM= 33544 +IEJpcm1pbmdoYW0= 33545 +IG1pbmlhdHVyZQ== 33546 +b21ldGVycw== 33547 +IGZpbGxlcg== 33548 +IFJpcA== 33549 +IEtvbWI= 33550 +b3duZXI= 33551 +7L8= 33552 +aWRpYW4= 33553 +IGRlbcOhcw== 33554 +INmI2Ko= 33555 +IHByZWNhdXRpb25z 33556 +IGdvdmVybm8= 33557 +emVsZg== 33558 +IENvbXBsZXRl 33559 +IFBoYW50b20= 33560 +INC90LXQtw== 33561 +INC60LDRgNGC 33562 +IEFudHdvcnQ= 33563 +IFBmaXplcg== 33564 +IEZyYW5jbw== 33565 +IHfFgg== 33566 +IGZyaWc= 33567 +ZXNwZXI= 33568 +IGthbGU= 33569 +IGZpbG1tYWtlcg== 33570 +IGt1cnQ= 33571 +IGludmFsaWQ= 33572 +YXJlbGxh 33573 +xINuZw== 33574 +cmFtZW50bw== 33575 +IG51dHJpdGlvbmFs 33576 +IGRpY3RhdG9ycw== 33577 +IGFmaW4= 33578 +IGZ1enp5 33579 +IEdpbmE= 33580 +w7N0 33581 +IEV4dHJlbWFkdXJh 33582 +IGRlbW9uc3RyYXRpb25z 33583 +IE1vbnRnb21lcnk= 33584 +7ZW07ISk 33585 +IEdhbmRoaQ== 33586 +IHJldW5pb24= 33587 +IGpha2nFmw== 33588 +IFp1Zw== 33589 +T1VHSA== 33590 +bGlmdGluZw== 33591 +IOCy 33592 +4bmb4bmj 33593 +ZWI= 33594 +IFdPVw== 33595 +IFNoaXZh 33596 +b21ldHJ5 33597 +IHdpbGRseQ== 33598 +IHRlbmRlZA== 33599 +IG1lZ2Fw 33600 +7LKY 33601 +IG5hdXNl 33602 +IGdlcmVr 33603 +IE1hcmNlbA== 33604 +IG5lc3Rl 33605 +2K7YsQ== 33606 +IGZlaA== 33607 +c3VzcGVuc2VmdWw= 33608 +IFdyZXN0bGU= 33609 +IFBhbGVzdGluaWFucw== 33610 +IEdPUkQ= 33611 +aXlldA== 33612 +INGA0LDQtNC4 33613 +IHZlcnN1Y2hlbg== 33614 +IHRyYW5zaXN0b3I= 33615 +INCf0YDQvtGB0YLQvg== 33616 +INC/0L7QvdGA0LDQsg== 33617 +IHJoeW1l 33618 +IFZlcm1vbnQ= 33619 +cGxhdHo= 33620 +IMSwxZ90ZQ== 33621 +IEhhZw== 33622 +INCY0Lw= 33623 +INGA0LDRgdGB0LrQsNC3 33624 +IG1ldHJvcw== 33625 +IEluZmluaXR5 33626 +d29sZg== 33627 +aWJhbA== 33628 +ZnRpZw== 33629 +INqG 33630 +IO2YueyLnA== 33631 +IG9nZ2k= 33632 +IGRpc3Bvc2l0 33633 +INC/0YDQuNC7 33634 +INCy0YvQv9C+0Ls= 33635 +IHRow7Rp 33636 +IEtFTk4= 33637 +IGhhbmRpbmc= 33638 +YWN0dXM= 33639 +IHRhY29z 33640 +IGZvcm1lcmx5 33641 +IENvcmludGhpYW5z 33642 +0YbRltGX 33643 +IHBhZHJl 33644 +IGNvbmdyZWdhdGlvbg== 33645 +5pE= 33646 +ZmVydA== 33647 +IHN1Ymly 33648 +YWlzZXI= 33649 +cXVh 33650 +YXJhb2g= 33651 +IEN1cnJ5 33652 +IOyViuuKlA== 33653 +0LXQu9GO 33654 +IGZ1c3M= 33655 +IGJvb3R5 33656 +IGxvd3M= 33657 +IGhvbW1lcw== 33658 +IE1I 33659 +IERpc25leWxhbmQ= 33660 +d2VudA== 33661 +IHJlc2lkdWU= 33662 +IGJlZXBpbmc= 33663 +w6R0dGE= 33664 +IG1vdWxk 33665 +IFByb2pla3Q= 33666 +c3RhbGs= 33667 +IGFydGlmYWN0 33668 +IEFudHJhZw== 33669 +IEFNRA== 33670 +IENyeXB0 33671 +IOuplA== 33672 +IEZlbGlwZQ== 33673 +IENPQg== 33674 +ZWx1 33675 +IHNlbGZpZXM= 33676 +IFNhbnRp 33677 +Y2h1dHo= 33678 +INCj0LrRgNCw0Zc= 33679 +Z2VzYW10 33680 +IGZsb2Nr 33681 +amF6 33682 +cGxhaW4= 33683 +IHdyaW5rbGVz 33684 +IHJlYWlz 33685 +IHBhbGpvbg== 33686 +IGVtcG93ZXJtZW50 33687 +IGF0dGVuZGVlcw== 33688 +cHBh 33689 +IG5lZGVu 33690 +0L7QvdGL 33691 +IHRpbWVmcmFtZQ== 33692 +IENoZXJyeQ== 33693 +IGlkw6ll 33694 +IGdhZw== 33695 +IGRvbmtleQ== 33696 +IMO0bmc= 33697 +IEhhcmU= 33698 +IEthcmE= 33699 +IGFjb21wYW4= 33700 +cGxhY2Vz 33701 +aW1pZW50b3M= 33702 +IEhhbW0= 33703 +0LHQuA== 33704 +dWJlbg== 33705 +aWxpeW9y 33706 +IHRoaXJzdA== 33707 +IGtyeQ== 33708 +IEdlb3JnZXRvd24= 33709 +16DXlA== 33710 +IG9yY2g= 33711 +IGhlYXJ0YmVhdA== 33712 +IHRyYW5zZm9ybWF0aW9ucw== 33713 +ZXN0b25lcw== 33714 +IEtI 33715 +IGNhcnRvb25z 33716 +IGFuY2k= 33717 +IHdvcnRobGVzcw== 33718 +IHRhaWxvcmVk 33719 +cHU= 33720 +QW1lcmljYW5z 33721 +IHBpbGVz 33722 +IE1vbmtleQ== 33723 +IGJhc2lu 33724 +IFRlbXBlcg== 33725 +IFBhaW50 33726 +IHB1bmNoaW5n 33727 +IGJhaWs= 33728 +IE9ha2xhbmQ= 33729 +dnJl 33730 +xZ9hbGxhaA== 33731 +eWRk 33732 +IGNhc3VhbGx5 33733 +b2R1 33734 +IGNvZGVk 33735 +IE5vcndlZ2lhbg== 33736 +IFZpbmNl 33737 +IHByZW1hdHVyZQ== 33738 +IFByb21pc2U= 33739 +0LXQutGB0YI= 33740 +IGRldmFzdGF0ZWQ= 33741 +IFByZW1pdW0= 33742 +IFBhcmFt 33743 +IMOWeWxl 33744 +dW11eg== 33745 +UE8= 33746 +cmF0b3Jz 33747 +IGxhbXBz 33748 +IHRlcnJpdG9yaWFs 33749 +IGJhY2tib25l 33750 +bGlzdGVk 33751 +RFk= 33752 +INin2YTYsQ== 33753 +IHB1cnN1ZWQ= 33754 +IENvbW1vbnM= 33755 +IOqzoQ== 33756 +bG9ja3M= 33757 +ZWRvcg== 33758 +IGNvbmNlaXZlZA== 33759 +Z2VyZQ== 33760 +IGRpc2FwcGVhcmluZw== 33761 +IFN1bGw= 33762 +IOyXsOs= 33763 +IGhvZmZl 33764 +IGRldG94 33765 +7ZSM 33766 +IHJldGly 33767 +IOuBneuC 33768 +IHBlcmd1bnRh 33769 +IEJPWQ== 33770 +IHBlbm4= 33771 +aMOpcw== 33772 +aG9u 33773 +IGNhdGFzdHJvcGhpYw== 33774 +IGF1c3Q= 33775 +IHRvcnNv 33776 +IOyWtOuKkA== 33777 +IOyCrOuejOuTpOydtA== 33778 +IG1hcnZlbG91cw== 33779 +IEhhcmxleQ== 33780 +YWNoaW5l 33781 +IHRp4bq/ 33782 +aXR0bw== 33783 +IEnDrW0= 33784 +eWxvbg== 33785 +IHNodXRkb3du 33786 +Licn 33787 +IGFwb2xvZ2llcw== 33788 +IENvbW11bmljYXRpb24= 33789 +INCz0L7QstC+0YDRjg== 33790 +4oSi 33791 +w612ZWlz 33792 +YWN1bg== 33793 +IHJldGFpbmluZw== 33794 +IGNvbnRyYWRpY3Rpb24= 33795 +IEFEQU0= 33796 +Q09N 33797 +QnJ5YW4= 33798 +IE1vbnNpZXVy 33799 +IGFkYXB0aW5n 33800 +0KjQkA== 33801 +IFNjcg== 33802 +w6RuZGVydA== 33803 +IHBsYXVz 33804 +IG9uc2V0 33805 +IGFzc2lzdGFudHM= 33806 +IHZhbHZlcw== 33807 +IHNjYXR0ZXI= 33808 +IFJ1c3Q= 33809 +YXdpYQ== 33810 +IHJlYWRpbmVzcw== 33811 +IHBhaXM= 33812 +IGJpYmxl 33813 +IGFtYmllbnRl 33814 +INCw0LzQtdGA0LjQug== 33815 +IHVuY29uZA== 33816 +IGthbGs= 33817 +IG1vYw== 33818 +dW5u 33819 +IGFjdHU= 33820 +IGh1bW1pbmc= 33821 +aXNzaW1v 33822 +IFBhdHJvbA== 33823 +Z293 33824 +IFRIRVk= 33825 +IEJvZGVu 33826 +IEJpZQ== 33827 +IHJlZWw= 33828 +INGD0YHQu9C+0LI= 33829 +IGVuZGVhdm9y 33830 +IFBlcmlvZA== 33831 +dXN0b21lZA== 33832 +bWFscw== 33833 +YWxvbg== 33834 +Qm94 33835 +IM+DzrHPgg== 33836 +IG9tZGF0 33837 +IGFsdHJl 33838 +IEhlaA== 33839 +a2Fk 33840 +IHByb3RlY3Rvcg== 33841 +IGRvbWluYW5jZQ== 33842 +b2R5bmFtaWM= 33843 +IGNvbW11bmljYXRlZA== 33844 +a8O2 33845 +IHByZWRlY2Vzc29y 33846 +IEx1aw== 33847 +IEZsb3dlcg== 33848 +cG9xdWU= 33849 +0YLQuNGA0L7Qsg== 33850 +IHJldHJvc3BlY3Q= 33851 +IGRlY2lzaXZl 33852 +IGV4ZW1wZWw= 33853 +e1w= 33854 +IFLDvGNr 33855 +cml0ZQ== 33856 +IFpldXM= 33857 +IGNhbG9yaWU= 33858 +IGF0dHJhY3Rpb25z 33859 +IEhpbnRlcg== 33860 +IHVobQ== 33861 +IO2MkA== 33862 +IHJ1bGVycw== 33863 +IGRpc2NvdXJhZ2Vk 33864 +IGFjb250ZWNlcg== 33865 +IGFjY2VudHM= 33866 +IE9wdGlt 33867 +IEFsZw== 33868 +a2lkcw== 33869 +MjAyMQ== 33870 +IExpbmRzYXk= 33871 +IGZpbG1tYWtlcnM= 33872 +cHJvd2Fk 33873 +IHRlcnVn 33874 +64u0 33875 +IFNvbW1lcg== 33876 +MjAxOA== 33877 +IGJvcnJvd2luZw== 33878 +IFRyYW5zZmVy 33879 +0L3QvtC/ 33880 +YXJpYXM= 33881 +IGhlYWRwaG9uZQ== 33882 +7Lyc 33883 +IHRyYW5zbGF0aW5n 33884 +IGF1Zmdl 33885 +4K6q4K6f 33886 +d2Vpcw== 33887 +YXZhbnQ= 33888 +cGFpZA== 33889 +YmFieQ== 33890 +IHRvdWdoZXN0 33891 +IHJlcGVhdHM= 33892 +IFRlcmVzYQ== 33893 +TG9yZA== 33894 +IGFjYWJhcg== 33895 +IFJpZGU= 33896 +ZGly 33897 +IGxlbmc= 33898 +IGR3YQ== 33899 +IGhlYWRhY2hlcw== 33900 +IG7hu69h 33901 +INC90LDRgdGC0L7Rj9GJ 33902 +IGJvaWxz 33903 +IGxvbmdpbmc= 33904 +cmlhcw== 33905 +w7NyaW8= 33906 +IFBhcmFkaXNl 33907 +IFNlw7Fvcg== 33908 +ZXJkZW0= 33909 +IHJlaW5zdA== 33910 +IHNhbGFyaWVz 33911 +IGluc2VjdXJpdHk= 33912 +xYJvxZtjaQ== 33913 +INCw0LHRgdC+0LvRjtGC0L3Qvg== 33914 +aW5rZW4= 33915 +IEVkZHk= 33916 +dWRvcw== 33917 +IGR1bW15 33918 +0JrQsNC6 33919 +c2l4 33920 +IGluYm94 33921 +4bqp 33922 +UGVvcGxl 33923 +4buTbmc= 33924 +IG9yZ2FuaXplcnM= 33925 +ZmluZA== 33926 +IMO8bA== 33927 +IENPTQ== 33928 +xbxh 33929 +d2VpbGU= 33930 +Q29tbWVudGFyeQ== 33931 +7Yq466W8 33932 +IE1pdHRlbA== 33933 +a3Vz 33934 +4KSo 33935 +aXJhbA== 33936 +IGdhcm1lbnQ= 33937 +zrnOus6s 33938 +IHN0b29s 33939 +cGF5ZXJz 33940 +IHNoaW1tZXI= 33941 +IE9sbGll 33942 +IEplxbxlbGk= 33943 +IDE5Nzc= 33944 +IGpldXg= 33945 +IGV4dGluY3Q= 33946 +IFRyYW5zcG9ydGF0aW9u 33947 +IE1ha2Vy 33948 +IGpvaG4= 33949 +IHJpY2hlc3Q= 33950 +IHRyYXVtYXQ= 33951 +IGxpZWdlbg== 33952 +tOulvA== 33953 +IHVucmVzdA== 33954 +IFN0cmF3 33955 +IGNvbWE= 33956 +IEtyaXN0ZW4= 33957 +INCa0L7QvdC10YfQvdC+ 33958 +IEJyeWNl 33959 +INGP0LrRlg== 33960 +IHBlYXJscw== 33961 +INC/0L7QvdC40LzQsNGO 33962 +IGFkZGl0aW9ucw== 33963 +IGFzeW1wdA== 33964 +INC80LXQvdGM0YjQtQ== 33965 +IHNjYW5z 33966 +Q2hpbGQ= 33967 +IEhpZGU= 33968 +0LrRg9GO 33969 +ZXRhcw== 33970 +IGRhbms= 33971 +IHBsZWFz 33972 +IGVzc2F5cw== 33973 +IGpldHM= 33974 +INCy0LXQtA== 33975 +IHBvc2l0aXZlcw== 33976 +aG9m 33977 +LSk= 33978 +enpv 33979 +IHN0YXJ0ZXJz 33980 +IHNtaWxlZA== 33981 +IDE5NDQ= 33982 +cXVpZXJh 33983 +IHJvaw== 33984 +IHB1ZXN0bw== 33985 +Tmljbw== 33986 +IHNpbXVsYXRpb25z 33987 +IOC2 33988 +IGludHJpZ3VlZA== 33989 +IE92ZXJ3YXRjaA== 33990 +c2lnaA== 33991 +YmFp 33992 +IOunkOqzoA== 33993 +aWTDqQ== 33994 +IGNyYWJz 33995 +4bqtcA== 33996 +IElyYXFp 33997 +7J2066W8 33998 +0YLRjw== 33999 +IFNvcGhpYQ== 34000 +IEROUw== 34001 +IMO2bmVtbGk= 34002 +IEx1bw== 34003 +naQ= 34004 +IENvdW5zZWw= 34005 +bGlnZW4= 34006 +0LDQvdGM0YjQtQ== 34007 +IHRydW1wZXQ= 34008 +IGRhcGF0 34009 +IEpN 34010 +IEVWRVJZ 34011 +IExheWVy 34012 +IGPDtA== 34013 +0L3QsNC7 34014 +IEpvbw== 34015 +IEhhY2s= 34016 +IHN1bnQ= 34017 +IExlb25hcmQ= 34018 +IEZpcmViYXNl 34019 +w6RuZ2Vy 34020 +IGV4cGxvZGluZw== 34021 +dm95 34022 +IOymkA== 34023 +INGB0LXRgNGM 34024 +IHNldmVyaXR5 34025 +IGJlc3RpbW0= 34026 +IHRpcmluZw== 34027 +IHByb2N1cmVtZW50 34028 +IGRpcGxvbWFjeQ== 34029 +IGRlY29yYXRpdmU= 34030 +INmK2Kc= 34031 +IHBlbmV0cmF0aW9u 34032 +1as= 34033 +IG91dHJpZ2h0 34034 +RU5F 34035 +IFVuaQ== 34036 +b2RsZXM= 34037 +IHplcm9z 34038 +IGRlbGlnaHRmdWw= 34039 +am0= 34040 +IGRvcG8= 34041 +IHBvc2l0aXZpdHk= 34042 +IFZJU1RB 34043 +IFJlc291cmNl 34044 +7YOA6w== 34045 +0YjQuNC1 34046 +Q2FybA== 34047 +IHBpcGluZw== 34048 +IGNob3BwaW5n 34049 +IEdhbnpl 34050 +w7xzcw== 34051 +IEFv 34052 +IHNoYXR0ZXJlZA== 34053 +IERldGVjdGl2ZQ== 34054 +IHVuZG91YnRlZGx5 34055 +IGhhbGx1Yw== 34056 +IGVuY2g= 34057 +0YvRh9C90L4= 34058 +0YPQu9GP0YA= 34059 +aXNlc3Rp 34060 +IHBlZGFscw== 34061 +IGR1cnVt 34062 +pO2U 34063 +bGFpbWVy 34064 +IHByb3ByZQ== 34065 +Q3U= 34066 +IHRyYW5zbGF0b3I= 34067 +IGNhxYI= 34068 +IOq3uOqxuA== 34069 +IGNhxYJ5 34070 +VUE= 34071 +IHJldmlzZWQ= 34072 +INC/0L7QtNC+0LE= 34073 +IEFydGljbGU= 34074 +IEhhaXRp 34075 +IMOT 34076 +IEN0cmw= 34077 +IHJvem0= 34078 +bGFpdA== 34079 +IGxldHp0ZQ== 34080 +aXNwZXJpbmc= 34081 +ZGlzcGxheQ== 34082 +IGFsdW1pbml1bQ== 34083 +IHBhbGFicmFz 34084 +IGNvbm9jZXI= 34085 +IHppdHRlbg== 34086 +IGRpcmln 34087 +IGJyYWluc3Rvcm0= 34088 +IHdpZmk= 34089 +IFBhcnRpY2lw 34090 +IHZpZXdwb2ludA== 34091 +IFF1YW4= 34092 +IGhpZXJhcmNo 34093 +V2VsY29tZQ== 34094 +IG9mZmVu 34095 +IFJlY292ZXJ5 34096 +Z2Fubw== 34097 +V291bGQ= 34098 +IHJlcHJv 34099 +IHBlcmNlcHRpb25z 34100 +IGRlbWFzaQ== 34101 +IEJhbmdsYWRlc2g= 34102 +IEluY3JlZGlibGU= 34103 +IGxldHp0 34104 +IGJlaGF2aW5n 34105 +IGFzdG9uaXNoaW5n 34106 +IOKG 34107 +IOuCqOyekA== 34108 +IEdPUkRPTg== 34109 +Q0FS 34110 +PyEi 34111 +IFByZXN0 34112 +IOunnuyVhOyalA== 34113 +IHRhbmQ= 34114 +IGxhc2g= 34115 +54o= 34116 +aWZpY2FudA== 34117 +IGludG9sZXI= 34118 +INCz0LXRgNC+ 34119 +IHRldQ== 34120 +YXNv 34121 +INGB0L7QstC10YI= 34122 +IHRyYXZlbGVycw== 34123 +IFN5bmQ= 34124 +INCy0LXRgNGB 34125 +Rm9uZGE= 34126 +YWTEsQ== 34127 +IHRyYW5zY3JpcHRpb24= 34128 +IHRpdGFuaXVt 34129 +IHR3aXN0cw== 34130 +IGdlYXJib3g= 34131 +ZW5zYXRpb24= 34132 +ZmF0 34133 +Q29sbA== 34134 +IENvbW1vbndlYWx0aA== 34135 +em9u 34136 +IFBvbGl6ZWk= 34137 +IEFQUExBVVNF 34138 +ZnJ5 34139 +IEp1ZGE= 34140 +ZXN0ZWVt 34141 +IHNvY2s= 34142 +IEp1Z2VuZA== 34143 +INC60YHRgtCw0YLQuA== 34144 +IERybw== 34145 +IHByb2NoYWluZQ== 34146 +IGxpa3NvbQ== 34147 +IEVuZXJnaWU= 34148 +IE1hcmluYQ== 34149 +IDIzMA== 34150 +IOqwgOyEnA== 34151 +dW1waW5n 34152 +IGxvbmU= 34153 +IGZvbnRz 34154 +IGJ1c2luZXNzbWFu 34155 +IHBseQ== 34156 +IGRvZQ== 34157 +Z3JpZA== 34158 +IE1pbHdhdWtlZQ== 34159 +IEVkZW4= 34160 +ISIu 34161 +INuM24E= 34162 +b2dlbnM= 34163 +IHRlYXNlcg== 34164 +IHF1acOpbg== 34165 +IGluY2VudGl2 34166 +Z292ZXJu 34167 +IGNoaWxkY2FyZQ== 34168 +IHNuZWFrZXJz 34169 +IGltcHJpc29uZWQ= 34170 +wq4= 34171 +0LjRgtC10YHRjA== 34172 +YW5idWw= 34173 +IHJlZ2Fpbg== 34174 +IHRyYW5xdWls 34175 +UmVkbmVy 34176 +SUZB 34177 +IGlkZW9sb2dpY2Fs 34178 +IG1heW9yw61h 34179 +IGJ1cmVhdQ== 34180 +ZXRlcm0= 34181 +IERJRA== 34182 +7Iq3 34183 +IHdhdmluZw== 34184 +IGJlYg== 34185 +IMOhcg== 34186 +INC60LI= 34187 +IGVudm95 34188 +YW51dA== 34189 +0LjQutGD 34190 +IEVudmlyb25tZW50 34191 +IEFzc2Fzcw== 34192 +IEJyZWFk 34193 +INCi0YPRgg== 34194 +IHN0YWlyY2FzZQ== 34195 +IERpc2Vhc2U= 34196 +IGF1Y3Vu 34197 +IOuLiA== 34198 +IGNvbmZyb250YXRpb24= 34199 +IDE5NDE= 34200 +IGlyb255 34201 +IHdvcnNo 34202 +IGZpY2s= 34203 +IE5hb21p 34204 +IGJhY2tzaWRl 34205 +aWV1eA== 34206 +S2Fw 34207 +IHZlZGVyZQ== 34208 +IGxlbmd0aHk= 34209 +IGJyZWFrZXI= 34210 +IFJvbGxl 34211 +IHByZWRhdG9y 34212 +IG5vc3Nvcw== 34213 +IGFkdmVydGlzZQ== 34214 +0YDQvtC00LU= 34215 +UmVkbmVyd2VjaHNlbA== 34216 +cmV0ZW4= 34217 +IGNvbGxlY3RvcnM= 34218 +xLHEn8SxbcSxeg== 34219 +IHRyaWc= 34220 +IGF4ZXM= 34221 +aW50ZXJz 34222 +IHBlbmFsdGllcw== 34223 +IE9zbWFu 34224 +IEplbm5h 34225 +IGZsYWtlcw== 34226 +IHRyYWluZXJz 34227 +IHN0dW5uZWQ= 34228 +IFNjcm9sbA== 34229 +IFBpcA== 34230 +INC90LDRgdGC 34231 +IG5ow6A= 34232 +IFNtYWNr 34233 +4bqrbg== 34234 +cmF0b3M= 34235 +INGA0LDQsdC+0YLRiw== 34236 +IHVjeg== 34237 +IExlbW9u 34238 +IFNpbmQ= 34239 +IHBzeWNoaWM= 34240 +IEFiZw== 34241 +IG1hbW1hbHM= 34242 +IGltbWVyc2l2ZQ== 34243 +IGJvdHM= 34244 +IHZlcnNjaGllZGVuZQ== 34245 +IGdlcmFs 34246 +IGZvbGxvd2Vy 34247 +IHNlZ3VyaWRhZA== 34248 +IGltbWVyc2Vk 34249 +ZmVpdG8= 34250 +Y3Jvc3M= 34251 +IMO2bGQ= 34252 +7YOE 34253 +INeU15nXkA== 34254 +IEppYW4= 34255 +IGJpbGl5b3I= 34256 +YXJlYQ== 34257 +IGthZg== 34258 +IGdvZHQ= 34259 +IOuwqeyGoQ== 34260 +IGRldHJpbWVudA== 34261 +0ZbQuw== 34262 +IMSRw6J1 34263 +IGNobG9yaWRl 34264 +w7hyZQ== 34265 +bGVp 34266 +IG1vbnRl 34267 +IGRpZmbDqXJlbnRlcw== 34268 +4K+BLg== 34269 +IGNhcmVnaXZlcnM= 34270 +IGluYWRlcXU= 34271 +IGZhcmV3ZWxs 34272 +INGC0LjQv9Cw 34273 +b250ZWM= 34274 +IEVwaA== 34275 +SEhI 34276 +IFRvZG9z 34277 +INCh0KjQkA== 34278 +IHRyb3Y= 34279 +IGxpZ2U= 34280 +IGPDtG5n 34281 +IENpdg== 34282 +IGNhcGF6 34283 +IFZhbGxhaGk= 34284 +IHF1ZXN0ZQ== 34285 +IHJlcGxpY2E= 34286 +2LPYqA== 34287 +em5h 34288 +INGB0LvRg9C2 34289 +IFBU 34290 +d2F2ZQ== 34291 +aWVuaQ== 34292 +IHJlbGllZA== 34293 +ZGV2ZWxvcA== 34294 +IGRlbWU= 34295 +IEFtYW4= 34296 +IFsuLi5d 34297 +IGNvbXBsaW1lbnRz 34298 +dWFpcw== 34299 +IO2MqA== 34300 +IHNtZWxsaW5n 34301 +IGRhZHVyY2g= 34302 +2YjYqg== 34303 +IG9yYW5nZXM= 34304 +INC70LDQuQ== 34305 +IHN0YWJpbGl6YXRpb24= 34306 +IGFwcGxpYW5jZXM= 34307 +IGht 34308 +g5DrqbQ= 34309 +b2R5bmFtaWNz 34310 +IGNpxJk= 34311 +IENvdHQ= 34312 +TU9O 34313 +IE1hbmc= 34314 +IGFsbGVyZGluZ3M= 34315 +zrnOus6u 34316 +c2hvdHM= 34317 +IHRz 34318 +IEfDtnI= 34319 +IENIQVI= 34320 +IDoo 34321 +IHdyYXRo 34322 +IGZpcXVl 34323 +IGbDvGhyZW4= 34324 +IHRlc3RhbWVudA== 34325 +IF5e 34326 +4bmb4bmj4bmHYQ== 34327 +QUxE 34328 +IHRleHRv 34329 +IERvZ3M= 34330 +IHNpYg== 34331 +IHBhdGhldGlj 34332 +b2Nrcw== 34333 +IHJhZGljYWxseQ== 34334 +IE1PUkU= 34335 +IEpBTUVT 34336 +IGluZ2w= 34337 +IFRlY2huaWNhbA== 34338 +IHBvcmNo 34339 +IFVU 34340 +INC+0LHRj9C30LDRgtC10LvRjNC90L4= 34341 +IHJlbmV3YWw= 34342 +IGFlc3RoZXRpY3M= 34343 +aWt1bQ== 34344 +IGJldmVyYWdl 34345 +ZGVybg== 34346 +IHByZWRpY3RpdmU= 34347 +IGNodXk= 34348 +IFJlZ2FyZGluZw== 34349 +IEZvcndhcmQ= 34350 +INmI2YQ= 34351 +IGNvbnRleHR1YWw= 34352 +IGR3YXJm 34353 +IHByZWhl 34354 +IGdvdmVybmVk 34355 +hYQ= 34356 +IHRyYWJhbGhhcg== 34357 +IG5lZ8OzY2lv 34358 +INCx0L7Qu9GM0YjQvtC5 34359 +0LXRh9Cw0YI= 34360 +INC00YPRhQ== 34361 +IGZsb29kcw== 34362 +IGJvd2xpbmc= 34363 +IE9C 34364 +IEjDpHI= 34365 +IGdyYWRpbmc= 34366 +7KO864qU 34367 +IGdhcnM= 34368 +ZGxpbmc= 34369 +IHJhaw== 34370 +64g= 34371 +Y3JlYXQ= 34372 +INGJ0LU= 34373 +IG5laWdoYm91cnM= 34374 +Zm9vZA== 34375 +UXVlcnk= 34376 +IGhlcm9pbg== 34377 +aWNlcHM= 34378 +IEtpbmRh 34379 +TkVU 34380 +IG1hcmk= 34381 +IGltaXRhdGU= 34382 +IGFjaHRlcg== 34383 +IHNldHRsZW1lbnRz 34384 +cmFyZQ== 34385 +Y2Npb25lcw== 34386 +IOuTnA== 34387 +IGZpaw== 34388 +aXR1bmc= 34389 +INC80LDQutGB0LjQvA== 34390 +IGVsZg== 34391 +IGRhbGxh 34392 +IFBvbHNjZQ== 34393 +IFB1bA== 34394 +0KfRgtC+ 34395 +IE1vcmdlbg== 34396 +2K3ZhQ== 34397 +IHN1cHJlbWFjeQ== 34398 +IGt5cw== 34399 +IEh1cnJpY2FuZQ== 34400 +IEdUQQ== 34401 +IEZlaA== 34402 +IGZpbmFsbWVudGU= 34403 +bXVuZA== 34404 +IEtyaWU= 34405 +w6lwb3F1ZQ== 34406 +IFR1Y2tlcg== 34407 +SVRU 34408 +IGx1cg== 34409 +IGRpcHBpbmc= 34410 +w6R2 34411 +IGVlcnN0ZQ== 34412 +IEZsaW50 34413 +YmlsZHVuZw== 34414 +4Li54LmJ 34415 +IHRvaW0= 34416 +IHByYWN5 34417 +IHRyYW5zZm9ybXM= 34418 +IHNwZWVkaW5n 34419 +IHByZXNlbnRlcg== 34420 +IGZlbGxvd3M= 34421 +ZmlsbGVk 34422 +aWV6YQ== 34423 +IGFkdmlzaW5n 34424 +IEludGVydmlldw== 34425 +0LjQs9GA 34426 +d2Vocg== 34427 +IERhbnRl 34428 +cHR1cmU= 34429 +iOusuA== 34430 +r7jr 34431 +kJA= 34432 +IENvdW50ZXI= 34433 +IGNyaXN0 34434 +IOynnA== 34435 +IGpldW5l 34436 +INGB0YLRgNCw0Yg= 34437 +IG1pZcSH 34438 +IHR1dG9y 34439 +IG1hc2FsYQ== 34440 +IHBvd2RlcmVk 34441 +IG5hdQ== 34442 +IEZyZWRlcmljaw== 34443 +IGJpbGxpbmc= 34444 +IEVpc2Vu 34445 +INC00L7QsdGA 34446 +IG1lc3Q= 34447 +5r0= 34448 +IHNuaXBw 34449 +IG1vbm8= 34450 +IEFsbw== 34451 +IE1lcmN5 34452 +w6lyaWVuY2U= 34453 +IGNhc3VhbHRpZXM= 34454 +IEFOTk9VTkNFUg== 34455 +IHRvY2Fy 34456 +IGJhY3RlcmlhbA== 34457 +SG8= 34458 +IHN0cmVhaw== 34459 +IEpFTk4= 34460 +IHBsYXN0 34461 +0YHQu9C10LQ= 34462 +IHJlYXBw 34463 +IHBheWNoZWNr 34464 +IG1pbmVycw== 34465 +aGFidA== 34466 +IEphcA== 34467 +0L3Rg9GC 34468 +IHJlZGVtcHRpb24= 34469 +IHF1aXI= 34470 +aG5saWNo 34471 +IGFjY3VtdWxhdGlvbg== 34472 +IHNob3Zl 34473 +IGFkcmVuYWxpbmU= 34474 +TWFrZQ== 34475 +IEhlcm4= 34476 +b3NzaW5n 34477 +IFZpbA== 34478 +dWJieQ== 34479 +aGVydHo= 34480 +YnJlYWtz 34481 +IHNwdXI= 34482 +IERhaGE= 34483 +VVNUSU4= 34484 +IGNvbnRpbnVlcg== 34485 +IFNhdWw= 34486 +IO2PrQ== 34487 +IOuQmOuptA== 34488 +IOunkOyUgA== 34489 +INC+0LY= 34490 +IHN1c3BlY3Rz 34491 +IGxhcXVlbGxl 34492 +IE11Y2hhcw== 34493 +IHbDtmxsaWc= 34494 +dWxlbg== 34495 +IGltcHJlcw== 34496 +IGxvYmI= 34497 +ZW5lZQ== 34498 +INC90LDQtg== 34499 +VGE= 34500 +IHLDqWFsaXTDqQ== 34501 +IFJleA== 34502 +IGhhcnZlc3Rpbmc= 34503 +IGVzdHI= 34504 +5rY= 34505 +b3NwYWNl 34506 +T1NT 34507 +IGRpc3R1cmJhbmNl 34508 +YXNzaWM= 34509 +IElzYWI= 34510 +IGTDqWNvdXY= 34511 +IEhhbXBzaGlyZQ== 34512 +IG9ybmFtZW50 34513 +IGx1w7Ru 34514 +IFVX 34515 +IGrEhQ== 34516 +IHJlc3BlY3Rv 34517 +IGNvbXVuaWRhZA== 34518 +IGNvbWlnbw== 34519 +YWduYQ== 34520 +IGludHJpbnNpYw== 34521 +IEFsdW1uaQ== 34522 +IHNlc2xlcmk= 34523 +IGVzdGltYXRpb24= 34524 +4oCU4oCU 34525 +IHByb2R1aXQ= 34526 +44CC44CN 34527 +INCy0YA= 34528 +IHdoaXJs 34529 +IGFjY2Vz 34530 +w6d1 34531 +IHZhcmlhYmlsaXR5 34532 +IHZvZGth 34533 +aXRzdQ== 34534 +IGludGVybnNoaXBz 34535 +IGFsbG9jYXRl 34536 +UlI= 34537 +7ZuI 34538 +IGluc3RydWN0aW9uYWw= 34539 +dGFudA== 34540 +IOCuheCupA== 34541 +IGludml0ZXM= 34542 +IGhhaw== 34543 +IHNjYXJlcw== 34544 +IGVjbGlwc2U= 34545 +0L/QvtCy 34546 +0LrQvtC70Yw= 34547 +YXRpdmFz 34548 +IHN0YWJiZWQ= 34549 +IERPTQ== 34550 +cm9vdHM= 34551 +IFBpY3R1cmU= 34552 +7Zi8 34553 +IENIQQ== 34554 +aWVj 34555 +xLHEsQ== 34556 +aGFub2w= 34557 +IG1pc3VuZGVyc3RhbmQ= 34558 +UmF5 34559 +IHJvYWRtYXA= 34560 +b2N1bWVudGVk 34561 +aXppb25l 34562 +IE9saXZl 34563 +cmlmdA== 34564 +INeU16A= 34565 +bGVzdA== 34566 +Ozs= 34567 +IEVB 34568 +0L7QtNGD 34569 +IGhvYmJpZXM= 34570 +IGJ1cmlhbA== 34571 +0KQ= 34572 +bGVnZQ== 34573 +IEhK 34574 +IG9iamVjdGlvbg== 34575 +Y3Rvcnk= 34576 +IGluY3JlbWVudGFs 34577 +IGd5bW4= 34578 +IGVwaWRlbWk= 34579 +0YHRi9C7 34580 +w5E= 34581 +IGFkdmFuY2VtZW50 34582 +IHBhcmNo 34583 +TmV3cw== 34584 +IGF5cg== 34585 +0LvQsNC8 34586 +INec16k= 34587 +IGRpcGxvbWE= 34588 +IHJvYmJlZA== 34589 +T25seQ== 34590 +IGluY3Vy 34591 +IGNoYW50aW5n 34592 +IO2VtOuPhA== 34593 +IHJpY2hlcw== 34594 +IENhcm1lbg== 34595 +IG5vc3Rybw== 34596 +zrvOrQ== 34597 +IFBvd2Rlcg== 34598 +4LmA4Lir 34599 +IOyeiOycvOuptA== 34600 +IGdlcsOnZWt0ZW4= 34601 +IFBpa2FjaHU= 34602 +0LXQvNC+0L0= 34603 +T0xM 34604 +IHBsYW5ldGFyeQ== 34605 +IHNsb3dz 34606 +IGNsb2Nrd2lzZQ== 34607 +YWxpb24= 34608 +IOyM 34609 +IHZlcm4= 34610 +IGhvbW1l 34611 +IGVuZHBvaW50 34612 +IGlubm9jZW5jZQ== 34613 +IGVsZW1lbnRvcw== 34614 +IHNvcGhvbW9yZQ== 34615 +IG5vdGlvbnM= 34616 +IENvdWxkbg== 34617 +cHVy 34618 +IHphdA== 34619 +IG9ic2Vzcw== 34620 +IG1vdGl2bw== 34621 +IEt1Yg== 34622 +IERydWc= 34623 +QW50 34624 +IFBsYXllcnM= 34625 +IEh1bWFucw== 34626 +IG1lbGVl 34627 +IFdpbGRsaWZl 34628 +IFZQ 34629 +IHZvbGNhbmlj 34630 +IGNvbWlu 34631 +IEd1YW5n 34632 +IM+EzrnPgg== 34633 +INC+0YHQvtCx0LXQvdC90L4= 34634 +IFNpemU= 34635 +TGlzdGVu 34636 +IEFhYQ== 34637 +YXBwcm8= 34638 +IGJhcmJhcg== 34639 +IFBhcmtpbnNvbg== 34640 +0L3Rj9GC0Yw= 34641 +IHVuZGVyZXN0aW1hdGU= 34642 +IHN1YnN0aXR1dGlvbg== 34643 +IGNvc21ldGlj 34644 +IHdpbGxlbg== 34645 +IGJlaWRl 34646 +YW5uaQ== 34647 +IGNvbmRpdGlvbmVk 34648 +IERlYmJpZQ== 34649 +IGlzdG8= 34650 +IEVkd2FyZHM= 34651 +7JuM7JqU 34652 +INGC0L7Qsg== 34653 +IGFiYnJldmk= 34654 +IE3DvG4= 34655 +IFByaW5j 34656 +IExpYW5n 34657 +IHN0aW5r 34658 +IHJhZGlvYWN0aXZl 34659 +IGFjb250ZWM= 34660 +IHVuY29u 34661 +IFR1cmJv 34662 +IGtpc3Nlcw== 34663 +0LXRgtGA0L7Qsg== 34664 +IGZyb250aWVy 34665 +IFNweQ== 34666 +IEJlbGFydXM= 34667 +IENCUw== 34668 +4buX 34669 +YW1vdG8= 34670 +7ZWc642w 34671 +INGB0YLRgNC+ 34672 +IEVuZmlu 34673 +IGJyZWFkdGg= 34674 +IENhZmU= 34675 +IERhZsO8cg== 34676 +IEJvdXI= 34677 +YXJhcw== 34678 +IGJsdWVwcmludA== 34679 +YW7EsQ== 34680 +IGNvbnN0YW50cw== 34681 +IGF0dGFja2Vy 34682 +IEZvcm11bGE= 34683 +emHEhw== 34684 +IHNvd2ll 34685 +IGV5ZWJyb3c= 34686 +b2Jvb2s= 34687 +IHNldHplbg== 34688 +b25zaWRlcg== 34689 +YXduaW5n 34690 +IHPDtnlsZXll 34691 +IGludmFkZWQ= 34692 +IHByb25vdW5z 34693 +IGRvYnJ5 34694 +U2k= 34695 +INCl0L7Rgg== 34696 +IHZvbGxleWJhbGw= 34697 +IGxhbWVudA== 34698 +aXNjaGVz 34699 +YXJtZQ== 34700 +YXBp 34701 +IFdpa2k= 34702 +0LvQuNGI 34703 +IGthc2lo 34704 +IHBlc3M= 34705 +INGE0L7Rgg== 34706 +IFN1bA== 34707 +IHBzZXVkbw== 34708 +IG1lbW8= 34709 +IOyXsOyKtQ== 34710 +INC00L7Qu9C70LDRgNC+0LI= 34711 +INC/0LXRgNC10Lw= 34712 +IFJlYWNo 34713 +bWlyYWw= 34714 +YWx0ZWQ= 34715 +IHN0YXR1dA== 34716 +cmVhZGluZw== 34717 +IHPDtnlsZWQ= 34718 +IExpbmRzZXk= 34719 +IEFobWFk 34720 +67aA6w== 34721 +INCh0LXQs9C+0LTQvdGP 34722 +IHByenlnb3Q= 34723 +IGh5c3Rlcg== 34724 +VVJF 34725 +IE5laWdo 34726 +UmVwb3J0ZXI= 34727 +IEJ1bnU= 34728 +IFRyZWF0eQ== 34729 +IFJhbms= 34730 +IEZhbWU= 34731 +aW5pc2hlZA== 34732 +IGdlYXJlZA== 34733 +IGNvbXBvc2U= 34734 +b2RpYQ== 34735 +IExvbg== 34736 +IGplc3RlxZtteQ== 34737 +IERJUkVDVE9S 34738 +IGVsa2Fhcg== 34739 +IFZpZWw= 34740 +15DXqQ== 34741 +eW50aGlh 34742 +IG3DqHJl 34743 +IFRvbWF0bw== 34744 +IGV4YXRhbWVudGU= 34745 +bmnEmQ== 34746 +IEZyZWk= 34747 +IERpZg== 34748 +IG9wZW5pbmdz 34749 +IGdyYXBoaWNhbA== 34750 +INGD0LTQvtCx 34751 +INCy0YHQvw== 34752 +IFdlZWtseQ== 34753 +0LXQstCw 34754 +IGhhbmdz 34755 +IHVuc2FmZQ== 34756 +IGVtYmxlbQ== 34757 +IEtvbGxlZ2lubmVu 34758 +YWxheQ== 34759 +IGtzaQ== 34760 +IGhpZGVz 34761 +IG9sbWF5 34762 +IGVudHN0ZQ== 34763 +IGFydGhyaXRpcw== 34764 +w59lcmRlbQ== 34765 +IGJpbm5lbg== 34766 +IGxpc3RlbnM= 34767 +IEhlc3M= 34768 +IExvdWlzZQ== 34769 +bGRlbg== 34770 +0LXQvdGB 34771 +IFZlcnNpb24= 34772 +IEFncmljdWx0dXJl 34773 +7Iqk66W8 34774 +0LzQsNC9 34775 +64Sk7JqU 34776 +IHdpbmVz 34777 +IElORg== 34778 +cnVs 34779 +IEpL 34780 +xLF5b3JsYXI= 34781 +c2hpZWxk 34782 +cmVhdGg= 34783 +IHRlcnVz 34784 +IEx1bQ== 34785 +IGFudGljaXBhdGlvbg== 34786 +IGFjY3VzdG9tZWQ= 34787 +IE1pbmE= 34788 +IHdpZWxk 34789 +aW/DqA== 34790 +bWVyYQ== 34791 +IGNvdW50ZG93bg== 34792 +IGNsaW5n 34793 +IGNvbW1lbmQ= 34794 +IGZha3Rpc2t0 34795 +IGRlZmVuc2Vz 34796 +IGNvY2twaXQ= 34797 +INC60L7QvNCw0L3QtA== 34798 +IGRpc2h3YXM= 34799 +IFRoYW5vcw== 34800 +IGtpZG5leXM= 34801 +IHNlaGU= 34802 +IG1pY3JvYmVz 34803 +IGN1ZmY= 34804 +INCy0YvRgdC+0Lo= 34805 +IFNwaWN5 34806 +4K614K6w 34807 +Y3VsdXM= 34808 +b3Jj 34809 +aXhlcw== 34810 +IENyZWRpdA== 34811 +IHJhag== 34812 +IGJyaW5ndA== 34813 +IE5pc3M= 34814 +IGdyaW0= 34815 +IFNPTA== 34816 +IHRlbmlt 34817 +IFN1ZGFu 34818 +IFNwYXJ0 34819 +IHByb21vdGVz 34820 +IE5vc3Nh 34821 +INGB0L7RgdGC0L7Rj9C90Lg= 34822 +IOywqQ== 34823 +IHVuY29udA== 34824 +IExpYmVyYWw= 34825 +INCi0L7Qu9GM0LrQvg== 34826 +IFZpZWxl 34827 +IGt0w7NyZWo= 34828 +ICoqKio= 34829 +TWF4 34830 +INCn0YLQvtCx0Ys= 34831 +MzUw 34832 +IO2YvOyekA== 34833 +IOu2hOuTpOydtA== 34834 +IHdhcnA= 34835 +IHRlbmdh 34836 +IHN5bXBhdGhldGlj 34837 +IGJpemk= 34838 +IFphY2s= 34839 +aWVkbw== 34840 +IOuJtOw= 34841 +cGllbA== 34842 +INGC0L7Quw== 34843 +IHNjYWxlZA== 34844 +IFBFVEVS 34845 +IENPTU0= 34846 +IENhbWU= 34847 +IGNhdGFzdHJvcGhl 34848 +IHN3ZWF0eQ== 34849 +aWdyYXRpb24= 34850 +IHN0dWZmaW5n 34851 +IM+Azr/Ou8+N 34852 +IERyaXZlcg== 34853 +enlzdA== 34854 +VGVjaA== 34855 +IGFzc2Vzc2Vk 34856 +IFN1cmZhY2U= 34857 +xLFyxLFt 34858 +c3Vy 34859 +bGVyd2VpbGU= 34860 +INC00L7Qsw== 34861 +IHNodXR0aW5n 34862 +IGZyYWN0aW9ucw== 34863 +INGB0L7Quw== 34864 +ZXZlcnlvbmU= 34865 +IGVybg== 34866 +INCd0L7Qsg== 34867 +IGRlZmVuZGVycw== 34868 +IHZlcnN1Y2h0 34869 +IHBvbGl0eQ== 34870 +INCf0L7QvQ== 34871 +dmVyc3TDpG5k 34872 +IGJyb3dzZXJz 34873 +IHRyYW5zZm9ybWF0aXZl 34874 +IGRpY3RhdGU= 34875 +IExFR08= 34876 +IG5pbmd1bmE= 34877 +6rSR 34878 +IHBpeno= 34879 +IEhhcm9sZA== 34880 +IExvcGV6 34881 +2r7bjA== 34882 +YW7EsXo= 34883 +YXRjaGV0 34884 +2YrYqg== 34885 +IGxlcm5lbg== 34886 +IOq3gOyXrA== 34887 +IGhvdXNlZA== 34888 +IGNsZWFuc2U= 34889 +IFdBVA== 34890 +bGFyYXRpb24= 34891 +IGJ5dGVz 34892 +IHR1Y2tlZA== 34893 +IGZhdWx0cw== 34894 +0LTQvg== 34895 +Rlg= 34896 +IOyWvOuniOuCmA== 34897 +IGRlZm9ybQ== 34898 +IGNvbnRyYWN0aW5n 34899 +IFRJTUU= 34900 +aXJzZQ== 34901 +IG5lYmVu 34902 +IGNlcmM= 34903 +IEFybXN0cm9uZw== 34904 +IHRlc3Rlcg== 34905 +IHBhcmZhaXQ= 34906 +IGplYWxvdXN5 34907 +IHRveGlucw== 34908 +IGRpc2JlbA== 34909 +0YPRgNGL 34910 +aW1wcmVzc2lvbg== 34911 +IHByb3N0YXRl 34912 +IGZpcmV3YWxs 34913 +IGNsYXNzaWNz 34914 +0LXRh9GM 34915 +IHNvY2lhbGlzbQ== 34916 +IGdyYWNpb3Vz 34917 +INGB0L3QvtCy0LA= 34918 +INC00L3Rjw== 34919 +IGJ1cm5lcg== 34920 +IE1pbm9y 34921 +IOyasOumrOs= 34922 +IGplZGVz 34923 +IGNvbnRpbnV1bQ== 34924 +IGhvdHM= 34925 +IG9jY3VycmVuY2U= 34926 +IGFkbWluaXN0ZXJlZA== 34927 +INC30LDQvNC10YI= 34928 +IGhlc2l0YXRpb24= 34929 +IGRyaWxscw== 34930 +ZXJjYQ== 34931 +INCy0YLQvtGA0L7QuQ== 34932 +IHN0ZWFkaWx5 34933 +IGluc2FubGFy 34934 +IGloYW4= 34935 +7ZE= 34936 +IGhlbHBlcg== 34937 +IFNlbmlu 34938 +0L7QstCw0L3QuNC1 34939 +IEVSSUM= 34940 +Ymxh 34941 +IEFjYWRlbWlj 34942 +IGh1bWFuaXRpZXM= 34943 +YmxhY2s= 34944 +dW1weQ== 34945 +b3J0ZXg= 34946 +IOygiOs= 34947 +INil2YY= 34948 +IGRpc2Nsb3Nl 34949 +IEVsaWphaA== 34950 +IM67zq0= 34951 +IFF1ZXI= 34952 +2KjZhA== 34953 +VGVsbA== 34954 +YXJsZQ== 34955 +0ZbRgA== 34956 +IGF1Z21lbnRlZA== 34957 +IOu5hOyKtw== 34958 +IGFuZHJvaWQ= 34959 +4KSk 34960 +YXJtYQ== 34961 +IHN6ZXI= 34962 +Z2VvcmQ= 34963 +IGdlZWs= 34964 +IHlldXg= 34965 +IHBvbmc= 34966 +IHRvcnR1cmVk 34967 +IEJhdGg= 34968 +emln 34969 +YXNvbmFibGU= 34970 +IG5ldHM= 34971 +IGJhcnU= 34972 +IEZsYXQ= 34973 +IFZhdGVy 34974 +IFRlcnJvcg== 34975 +IEF2bw== 34976 +IGNlcmVtb25pZXM= 34977 +cm9l 34978 +2YHYsw== 34979 +T3Bz 34980 +IGh5dmlu 34981 +IGFwcmVzZW50 34982 +b2xvcg== 34983 +INC40LPRgNGL 34984 +b3J0b24= 34985 +IOq3uOuerA== 34986 +IGxvb2tpbg== 34987 +IFRZ 34988 +IE1pbnQ= 34989 +QWRk 34990 +IG1pdGU= 34991 +IFNtb2tl 34992 +IG5vdGE= 34993 +IG1vc3M= 34994 +IEFiZW5k 34995 +IOy7qA== 34996 +IGV4YWdnZXJhdGVk 34997 +ZmlyZXM= 34998 +IHJlZGlzdA== 34999 +ZmZpdGk= 35000 +IG9wZW5uZXNz 35001 +6rCQ7J20 35002 +ZW5kZXU= 35003 +0LXQvdC90L7QuQ== 35004 +V2F0Y2g= 35005 +IGF2YXRhcg== 35006 +IFBleQ== 35007 +dXJ1bg== 35008 +IHNlbnph 35009 +IOyngOyXrQ== 35010 +IE5hdG9taWFzdA== 35011 +IGVtZXJnZW5jZQ== 35012 +cmF5cw== 35013 +IGNyYWZ0ZWQ= 35014 +Z2FyeQ== 35015 +w7xuZw== 35016 +LSI= 35017 +IGhhY2tlZA== 35018 +IHN0cmF5 35019 +ZW5jaWU= 35020 +ZW1v 35021 +IGNvbWVu 35022 +IEvEsXo= 35023 +IEphc21pbmU= 35024 +IEhpbmRp 35025 +bWFuYXM= 35026 +IGluZmluaXRlbHk= 35027 +ZW1vbg== 35028 +7J24642w7JqU 35029 +amFr 35030 +IHJvYXJpbmc= 35031 +w6lyaXF1ZQ== 35032 +c3dlaXNl 35033 +IFJvbGV4 35034 +IFN0dWFydA== 35035 +Ym5i 35036 +IGRpYWdub3Nl 35037 +IGNvaGVyZW50 35038 +IE1K 35039 +IHBpa2U= 35040 +bGF2 35041 +IG9yY2hlc3RyYWw= 35042 +0LDRgdGC0Lg= 35043 +IHRlcm1pbmFy 35044 +IGdhdGhlcmluZ3M= 35045 +IGNvbXBsaWFudA== 35046 +IHVwZ3JhZGluZw== 35047 +IHJlZ3VsYXRvcg== 35048 +IGxhbsOn 35049 +IG1lcmNoYW50cw== 35050 +dGF3YQ== 35051 +IG1vbml0b3JlZA== 35052 +IHJlbmRyZQ== 35053 +IHVudGVyd2Vncw== 35054 +YW5ndWFyZA== 35055 +Z2FyZA== 35056 +IEJlbG93 35057 +ZHVpbm8= 35058 +INCm0LU= 35059 +IGltcGVkYW5jZQ== 35060 +7Jyh 35061 +IGFrdHVlbGw= 35062 +IFZhdGlj 35063 +IHN0ZXdhcmRz 35064 +IGJyaWdodGVzdA== 35065 +IGtlbm4= 35066 +IGthdQ== 35067 +IE1hdHJpeA== 35068 +IEJhcms= 35069 +IPCfkQ== 35070 +IHRhcGVy 35071 +IGNhc2lubw== 35072 +16jXlA== 35073 +eXNpY2Fs 35074 +IGJ1aWxkZXJz 35075 +IGN6xYJvd2ll 35076 +IE5lcGFs 35077 +ICEi 35078 +IHRlcm1l 35079 +IGlubnljaA== 35080 +IG1hdGhz 35081 +IGRyYWZ0ZWQ= 35082 +IEJhbGs= 35083 +IGhlc2l0YW50 35084 +IHZvbHRhcg== 35085 +IHJldml2ZQ== 35086 +INGE0LjQu9GM0LzQsA== 35087 +IGFzc2Fzc2lu 35088 +IFNvbHV0aW9ucw== 35089 +IGR1ZWw= 35090 +IGJlYXJpbmdz 35091 +4LiE4Liw 35092 +IHJvb2tpZQ== 35093 +aWthdA== 35094 +IGJpc2N1aXRz 35095 +IGNvcmRz 35096 +0YPQstCw0YLQuA== 35097 +QVJJTg== 35098 +IHByb2dyZXNzaW5n 35099 +IEdpcg== 35100 +IHBlbmV0cmF0ZQ== 35101 +IFN0b3JhZ2U= 35102 +ZWlnaHQ= 35103 +INGC0YDRgw== 35104 +IGRvbsOtdA== 35105 +IHNpemlu 35106 +IG91dGRhdGVk 35107 +INC90LDRiNC4 35108 +IGFmZmly 35109 +IHNwb29ucw== 35110 +IG9uaQ== 35111 +IGZsYW5r 35112 +IEdvbA== 35113 +aMOj 35114 +IHDDqXJp 35115 +IGhvbm9yYWJsZQ== 35116 +IEJyZWF0aGU= 35117 +c2NlbmVz 35118 +IG9idmlhbWVudGU= 35119 +0LjQutGB 35120 +INep157X 35121 +IHNtb290aGll 35122 +nojr 35123 +IGRpbWU= 35124 +IO2WiOyWtOyalA== 35125 +IGFwcGVs 35126 +IENhdGhvbGljcw== 35127 +IHNpbmdsZXM= 35128 +IGxhdGVu 35129 +IMOnw7xua8O8 35130 +IFZhZGVy 35131 +IHZhcmTEsQ== 35132 +IElzdGFuYnVs 35133 +Z3LDqQ== 35134 +IEVsc2E= 35135 +w6ts 35136 +IGludmVjZQ== 35137 +IGNyYW5l 35138 +IG9iZQ== 35139 +IFNoYXJr 35140 +IHNtYWNr 35141 +IHJlc3RvcmluZw== 35142 +Llw= 35143 +IOu5oOs= 35144 +IGZhZGVk 35145 +dW1iZXJz 35146 +U2luZ2luZw== 35147 +IGRlcHJlc3Npbmc= 35148 +dGhlc3Q= 35149 +IFdhaHI= 35150 +IG11bHRpdHVkZQ== 35151 +0YDQsNCy0YHRgtCy0YPQudGC0LU= 35152 +cmlqaw== 35153 +ZWth 35154 +IGNvbXBsZXRlcw== 35155 +IFdlbGxz 35156 +IHJveQ== 35157 +IFByYXk= 35158 +IEthbGF1 35159 +aXppbg== 35160 +aWHFgmVt 35161 +IGxvY29t 35162 +IE5hc2h2aWxsZQ== 35163 +IFBlbnRhZ29u 35164 +66+4 35165 +IE5FVw== 35166 +xIXEhw== 35167 +w61zcw== 35168 +IG1hcnJ5aW5n 35169 +IGZldWQ= 35170 +7ZmV 35171 +KSE= 35172 +IE9wZXJhdGlvbnM= 35173 +0YPRlA== 35174 +IG1vamU= 35175 +IGluc3RydWN0ZWQ= 35176 +IOuIhOq1rA== 35177 +INeU15I= 35178 +INC/0L7QvNC+0YnRjNGO 35179 +IHNhYmlh 35180 +7JWY7Ja07JqU 35181 +cGxhbmU= 35182 +cHJp 35183 +INC/0L7Qu9C90L7RgdGC0YzRjg== 35184 +IEtpdHR5 35185 +IHByw7Nwcmlv 35186 +ZWRlcmU= 35187 +IGludGVyZXNhbnRl 35188 +INC00LU= 35189 +IGNvbmRlbnNlZA== 35190 +IGF2ZW50 35191 +VE9S 35192 +IGdyZWFzeQ== 35193 +QVJL 35194 +b3J0YQ== 35195 +QUo= 35196 +IGRpc3JlZw== 35197 +IGNvcnJlY3Rpb25z 35198 +IHN0ZXJv 35199 +IGluZmx1ZW56YQ== 35200 +IGRlc3Nlcw== 35201 +IGJhbGxvdHM= 35202 +IG1lZ2V0 35203 +IG1hZmlh 35204 +IGLDtmw= 35205 +bm9zdA== 35206 +INGB0YLQsNGC0Yw= 35207 +IHJlc3BvbmRlcg== 35208 +IGhpbnRlbg== 35209 +Z3Jhdg== 35210 +4Lit4Liw 35211 +eW5jaHJvbg== 35212 +IHZpZW5z 35213 +IHNhbW8= 35214 +IGR0 35215 +cGFubnQ= 35216 +IMWbd2lhdA== 35217 +INC30LDQv9C40YE= 35218 +IG1lcmdlZA== 35219 +IGtlcA== 35220 +IG1pc2xlYWRpbmc= 35221 +IGRpZ2Ftb3M= 35222 +IGFtbW9u 35223 +Y2hldA== 35224 +IOqwgOyguA== 35225 +IHVuaQ== 35226 +IOuQmOuKlOuNsA== 35227 +INC90LDQv9GA0LDQsg== 35228 +INC60L7RgtC+0YDQvtCz0L4= 35229 +IGFuaW1hdGU= 35230 +15XXkNc= 35231 +0LXRgNCy 35232 +IG1pbmNlZA== 35233 +IGthdW0= 35234 +z4DOtQ== 35235 +0LvQtdCz 35236 +ZXhpc3Rpbmc= 35237 +IHBsYXRhZm9ybQ== 35238 +IEtSSVM= 35239 +7Jug 35240 +IEZhbWlsaWVu 35241 +IExpYnlh 35242 +IGJpb2RpdmVyc2l0eQ== 35243 +IGlkaW90cw== 35244 +aXJkaQ== 35245 +IHN6eWI= 35246 +IFJvbGxpbmc= 35247 +w7xjaHQ= 35248 +INGD0LTQuNCy 35249 +0YHRg9C0 35250 +IHJlYWxpemFy 35251 +IGNhbm5lZA== 35252 +INGA0LDQvQ== 35253 +IG1ldGFib2xpYw== 35254 +IEJlZWY= 35255 +IGtpbGth 35256 +0LvRjtGB 35257 +IHJlZ2lzdHJ5 35258 +0LzQvtGC0YDQuNGC0LU= 35259 +IHZpZWzDpA== 35260 +IG9kYw== 35261 +IGNvbmRlbW5lZA== 35262 +ZmFs 35263 +IERpbA== 35264 +d2/Fm2Np 35265 +QXc= 35266 +IHN0YXRpc3RpY2FsbHk= 35267 +IHNvZ2Vu 35268 +IEJFVEg= 35269 +IHNoYXZpbmc= 35270 +b2NhbA== 35271 +IEZ1bm55 35272 +IHBlYWNlZnVsbHk= 35273 +IGFkZGljdGl2ZQ== 35274 +IEluc2VydA== 35275 +bGF1Zg== 35276 +IGV4cGVyaWVuY2lh 35277 +0LjRgtC10LvRjw== 35278 +w61nZW4= 35279 +w6FnaW5h 35280 +IGFiZG9tZW4= 35281 +7ZWc64uk 35282 +aWN1cw== 35283 +aW1hbmE= 35284 +7I2o 35285 +YXJjaGluZw== 35286 +IGtvbmtyZXQ= 35287 +7JWY6w== 35288 +0LXQutCw 35289 +b3VmbA== 35290 +aXZlbA== 35291 +IG51ZGU= 35292 +w6h0cmVz 35293 +IG1vbnNpZXVy 35294 +IGNsYXNo 35295 +IHRoZXJhcGlzdHM= 35296 +IGN1YmVk 35297 +IHJldHJvdXZlcg== 35298 +IHdhdmVmb3Jt 35299 +IHBvdGVt 35300 +IEZvcm1lcg== 35301 +aXNpw7Nu 35302 +INeQ150= 35303 +dW5kb3M= 35304 +IE1laW51bmc= 35305 +2LXZhA== 35306 +IEp1ZGU= 35307 +IG7DpXI= 35308 +IExlb25hcmRv 35309 +IENyaXN0bw== 35310 +IEdPVA== 35311 +0YHRgtGA0YPQug== 35312 +TEFO 35313 +IGfDpW5n 35314 +IGTDqWI= 35315 +IEZyYW5rZnVydA== 35316 +IGNyYXBweQ== 35317 +IGxpbA== 35318 +YW5uw6ll 35319 +INC80LXRgdGC0LU= 35320 +UkVU 35321 +IE5lcg== 35322 +IENPU1RB 35323 +IGplZGVt 35324 +IGN1cnRhaW5z 35325 +IGl0ZXJhdGlvbnM= 35326 +IHVuYXY= 35327 +IHBsYXF1ZQ== 35328 +b3J1bQ== 35329 +IM62 35330 +IG7Dum1lcm9z 35331 +IGRlc2Fw 35332 +sr0= 35333 +IGNvbXBpbGVk 35334 +IHJlZmxl 35335 +IHJhbmtpbmdz 35336 +IHJlcGFpcmVk 35337 +INCd0LDQv9GA 35338 +IGRvd25sb2Fkcw== 35339 +IGFybW91cg== 35340 +INeZ15XXqteo 35341 +IGxvbmdldml0eQ== 35342 +IFRPTkVS 35343 +INC60L7QvNC80LXQvdGC0LDRgA== 35344 +IGN6ZWdv 35345 +IG5vdGlmeQ== 35346 +IGFpcnBvcnRz 35347 +IGVuZHVyaW5n 35348 +bGV0dGU= 35349 +IGFwcGFyYXQ= 35350 +IGhhYmls 35351 +4buHYw== 35352 +bmFk 35353 +SUNP 35354 +IEJyYWg= 35355 +IHNlZ8O6bg== 35356 +IGdvdmVybm9ycw== 35357 +a2FoYQ== 35358 +IFNjaGx1c3M= 35359 +IG9kcG93aWVk 35360 +aXJ0aW5n 35361 +IHJlbXBs 35362 +IEFib3JpZ2luYWw= 35363 +aWRlbnRhbGx5 35364 +IGVuaGFuY2luZw== 35365 +bGljdGluZw== 35366 +IEhhd2FpaWFu 35367 +IHN0cml2aW5n 35368 +IE5pZXQ= 35369 +IHpuYWN6eQ== 35370 +IG9iZWRpZW5jZQ== 35371 +IG7DpWdvdA== 35372 +IGV4cGlyZWQ= 35373 +IDE5MTg= 35374 +cHJlc2VudGVk 35375 +IHByb3dhZA== 35376 +IFRlcnI= 35377 +IFByaW5jZXRvbg== 35378 +IG1vcmdlbg== 35379 +IGF0dHJhY3Rpbmc= 35380 +IFNpZ21h 35381 +aWduZXI= 35382 +IFJlY2h0cw== 35383 +IFBla2k= 35384 +IG1ldGh5 35385 +IGhhbW0= 35386 +IGRpcmVpdG8= 35387 +IGRlbGVnYXRpb24= 35388 +0LjQstCw0Y7Rgg== 35389 +IGdpbg== 35390 +WW91bmc= 35391 +IGRlcGVuZGVuY2llcw== 35392 +IEJyYWRsZXk= 35393 +YnVkcw== 35394 +IGZpcw== 35395 +IHB5dGFuaWU= 35396 +IGludGVyY29ubmVjdGVk 35397 +IGVtYmFpeG8= 35398 +IFNhcw== 35399 +IHJ1aA== 35400 +IFNpY2h0 35401 +U3Vy 35402 +IHN1cGVyYg== 35403 +IFNhYmJhdGg= 35404 +IERhbmdlcg== 35405 +a29s 35406 +IGhvdQ== 35407 +c3VwcA== 35408 +IE5hY2lvbmFs 35409 +IHN1Y2Nlc3Npb24= 35410 +IHbDoQ== 35411 +IE1hw59uYWhtZW4= 35412 +IEplc3NpZQ== 35413 +IElkYWhv 35414 +Zm9yZXN0 35415 +hZg= 35416 +INee15M= 35417 +INij2Yo= 35418 +IHN3ZWV0aGVhcnQ= 35419 +IG5lYXRseQ== 35420 +IEV2YW5nZWw= 35421 +6rOh 35422 +IFN1aXRl 35423 +w7pibGljYQ== 35424 +INGD0LvQuA== 35425 +IEFubm91bmNlcg== 35426 +bGlnaA== 35427 +IHNlbnNhdGlvbnM= 35428 +IHNoZWx0ZXJz 35429 +IGhhcnQ= 35430 +IHNxdWVlemluZw== 35431 +IFJpdmVycw== 35432 +IENvb2tpbmc= 35433 +7LGF 35434 +cGVyc29uYWw= 35435 +IG1hbm9z 35436 +0ZHRgtGB0Y8= 35437 +d2lq 35438 +IGdvZ2c= 35439 +IE1pbGxp 35440 +IEZQ 35441 +w7xuc3Q= 35442 +IExT 35443 +IHNwcmF5aW5n 35444 +IGZhdXg= 35445 +IGF1dG9ncmFwaA== 35446 +b2xvZ2lj 35447 +IHRvcm1lbnQ= 35448 +IGVuY3J5cHRlZA== 35449 +4buF 35450 +IGVzdHJl 35451 +4LE= 35452 +IHN0dW1ibGVk 35453 +IGFpZGVy 35454 +IHNhYmVu 35455 +eHRlcg== 35456 +IENpdGllcw== 35457 +IFTDvHJr 35458 +64ul 35459 +Y2hpbmU= 35460 +IHRvcHBpbmc= 35461 +IHBvaXNvbmVk 35462 +IFJvbWFuaWE= 35463 +15PXmQ== 35464 +gOuhnA== 35465 +INC/0L7RgNGP0LQ= 35466 +IGNoaXJwaW5n 35467 +IOyZhOs= 35468 +15HXog== 35469 +IGN1YW50bw== 35470 +IGRvbmF0aW5n 35471 +IFJlZ2VudA== 35472 +IEJlcnVm 35473 +IGRpc3RyYWN0aW5n 35474 +IHN0YW1pbmE= 35475 +IERhcnJlbg== 35476 +IOy2lQ== 35477 +bGlzdHM= 35478 +ZGFs 35479 +Y2h1c3M= 35480 +IGVjb25vbWlzdA== 35481 +b3JndA== 35482 +IGlzdGl5b3J1bQ== 35483 +IFN1cnByaXNl 35484 +IEhhbw== 35485 +IOy1nOqzoA== 35486 +IEdX 35487 +IElubmVy 35488 +IHF1aWVyZW4= 35489 +IG1pbmRlZA== 35490 +IHN1cGVyY29tcHV0ZXI= 35491 +IGRpYWdyYW1z 35492 +7Yqc6w== 35493 +6rKg7Ja0 35494 +INC+0LHRitGP0YE= 35495 +IGVzdGFiYW4= 35496 +IGRlc3Ryb3lz 35497 +IEJyZWFraW5n 35498 +IGthcsSxxZ8= 35499 +IHJlYnVpbGRpbmc= 35500 +nOuMgA== 35501 +0LvQuNCy0L4= 35502 +IFNhdWNl 35503 +IEZ1c2lvbg== 35504 +15XXntc= 35505 +IFF1aW5u 35506 +IGdhdWNoZQ== 35507 +INmI2KM= 35508 +IMg= 35509 +IHRlY2hubw== 35510 +IGRpc3BhdGNo 35511 +IGHFn2s= 35512 +IGVpbnplbA== 35513 +IEdtYWls 35514 +554= 35515 +IOqwnOyduA== 35516 +INGB0LXQvNGM 35517 +IGpvdXJuZXlz 35518 +IGlodA== 35519 +IGZpYnJl 35520 +IGRyYW1hcw== 35521 +b3VjaGVk 35522 +IHJlbmFtZQ== 35523 +INC+0L/QtdGA 35524 +IHBvbw== 35525 +IERydQ== 35526 +INC40YLQvtCz 35527 +IHphc3Q= 35528 +IGNveg== 35529 +IHp1Y2No 35530 +IG9idGFpbmluZw== 35531 +IGNvbW11dGU= 35532 +IHN1Ym1lcg== 35533 +IFZpc2g= 35534 +IFJhYmI= 35535 +b2dn 35536 +IGh1dA== 35537 +7ZaI7Ja0 35538 +ZXJlbWk= 35539 +IM68zrE= 35540 +IGRpc2t1dA== 35541 +INCx0YPQug== 35542 +IGltcGFpcmVk 35543 +ZGVwZW5k 35544 +INmI2Kc= 35545 +INGA0YPQug== 35546 +INCx0LDRgA== 35547 +IG94aWRhdGlvbg== 35548 +IHNpdHVhw6fDo28= 35549 +yZlu 35550 +dcOnw6Nv 35551 +IHNhZ3Rl 35552 +IFNFUg== 35553 +IENha2U= 35554 +IHR1cm1lcmlj 35555 +IEthaw== 35556 +YnVuZw== 35557 +IEvhuZvhuaPhuYdh 35558 +IHBvaXNvbmluZw== 35559 +IHNsaXBwaW5n 35560 +IFNheXM= 35561 +w7JuZw== 35562 +wqs= 35563 +IENsYXVkaWE= 35564 +IENoYXJhY3Rlcg== 35565 +0L3QuNGG 35566 +Y29hdA== 35567 +IHByb2dyZXNzZWQ= 35568 +IEZlcmd1cw== 35569 +IOyYpOuK 35570 +IG9hdA== 35571 +b3JkYWJsZQ== 35572 +IExleQ== 35573 +IEhlcmF1cw== 35574 +IHJlc3VsdGFkb3M= 35575 +IEtheWxh 35576 +IHJpZmY= 35577 +IGNoZWdvdQ== 35578 +IHhp 35579 +IHNwYWNpb3Vz 35580 +IHJlY29nbmlzZWQ= 35581 +IGVjaA== 35582 +IFRpZQ== 35583 +IGxhdW5jaGVy 35584 +Smlt 35585 +IHN1cHByZXNzaW9u 35586 +IEltcG9zc2libGU= 35587 +IGd1aXRhcnM= 35588 +IEZvdXJpZXI= 35589 +0LjRh9C10YHQutC40Lk= 35590 +IFRoZXJhcA== 35591 +IEthZg== 35592 +Y2VudGVyZWQ= 35593 +INGB0L7QvtGC0LLQtdGC 35594 +IGtsaW0= 35595 +IGNhcmJvaHlkcmF0ZXM= 35596 +aWduYW50 35597 +IEFzdHJvbg== 35598 +IGVtcGxl 35599 +IGRyYXN0aWM= 35600 +INC80LjRgNC1 35601 +0LLQuNC9 35602 +dXc= 35603 +IHByZXR0aWVy 35604 +IGRvbnV0cw== 35605 +IEF0aGVuYQ== 35606 +IGRpc3NlcnQ= 35607 +IHBsYW50ZQ== 35608 +IHVyYW5pdW0= 35609 +7J2M6w== 35610 +YXLDqQ== 35611 +IHJ6ZWN6 35612 +IGRpc3BsYXlpbmc= 35613 +IHNhcmM= 35614 +csOjbw== 35615 +IHRhbXBvY28= 35616 +IHBoaWxvc29waGVycw== 35617 +IFJlY2h0 35618 +IGNvbWVudGFyaW9z 35619 +eXNl 35620 +IOycpA== 35621 +IG1pc2U= 35622 +IEdpbg== 35623 +INC90L7QvA== 35624 +IEZST00= 35625 +bGluZXI= 35626 +YXRpZg== 35627 +IHNwb8WCZWM= 35628 +eGE= 35629 +INGC0YDRg9C0 35630 +IHdhZw== 35631 +6riw7JeQ 35632 +IE1H 35633 +IG9mZnNwcmluZw== 35634 +IFVuZGVyc3RhbmRpbmc= 35635 +T1JB 35636 +IHdoaXJyaW5n 35637 +IHN1cnJlbmQ= 35638 +IHBva2Vy 35639 +IG1vbnVtZW50cw== 35640 +IOKZqQ== 35641 +IG9yZ2FuaXNlZA== 35642 +IFNvemlhbA== 35643 +IEZhY3Rvcnk= 35644 +0YXQsA== 35645 +IHJlc2VtYmxl 35646 +0LfQtA== 35647 +IGV4cGxvc2lvbnM= 35648 +IHBheXJvbGw= 35649 +IG9tbg== 35650 +IEpvcmdl 35651 +zrnPgw== 35652 +IGZyYWN0dXJl 35653 +IHBlcnNlY3V0aW9u 35654 +IGRlbWFpcw== 35655 +RUNI 35656 +LCk= 35657 +IGNyaWFy 35658 +IEpPU0g= 35659 +IGRlbW9ncmFwaGljcw== 35660 +IDE2MDA= 35661 +IGN1cnJlbmNpZXM= 35662 +IFRpcHM= 35663 +IFJlZmVy 35664 +IERhbmNpbmc= 35665 +IGluY29uc2lzdGVudA== 35666 +IGRlaA== 35667 +IGltbWVucw== 35668 +IG1laXN0 35669 +IGltcGF0aWVudA== 35670 +IGJlaGF2ZXM= 35671 +IOuCtOyaqQ== 35672 +IGJhY2tzdG9yeQ== 35673 +IGFncmVlaW5n 35674 +IMWB 35675 +aWhpbg== 35676 +IHRlbXBlcmF0dXJh 35677 +IEJhY2tncm91bmQ= 35678 +IG51dHplbg== 35679 +IOuFuQ== 35680 +IE3DpG5uZXI= 35681 +IGNvbGxhYm9yYXRpb25z 35682 +IEtvcw== 35683 +IG5pZ2h0bWFyZXM= 35684 +65Ox 35685 +IFF1ZWVuc2xhbmQ= 35686 +IGFzc29jaWF0ZXM= 35687 +IEtvaw== 35688 +IGZhY3RvcmlhbA== 35689 +IEh5dW5n 35690 +IOq3uOuLpOydjA== 35691 +IGZpbGhv 35692 +IGVsw6l0 35693 +IO2WieuztQ== 35694 +sLE= 35695 +IGdlZnVuZGVu 35696 +IHNlbWljb25kdQ== 35697 +IGNvdW5zZWxvcnM= 35698 +IFVwcGVy 35699 +IEF1Yg== 35700 +aWNrZXJz 35701 +VmVy 35702 +IG5vcnRod2VzdA== 35703 +IE1haW50ZW5hbnQ= 35704 +IExha2Vz 35705 +0LDRj9Cy 35706 +aW50w6k= 35707 +7LC9 35708 +INCz0LDQtw== 35709 +IGdpb3Ju 35710 +IGRpZ2l0YWxseQ== 35711 +IENpcmN1aXQ= 35712 +7LyA 35713 +IGNoZWVyZnVs 35714 +IFBldGVyc29u 35715 +IERhbmlzaA== 35716 +YXRpdm9z 35717 +IGxpa2Vu 35718 +IGhhcmJvcg== 35719 +0LDQu9C40YHRgg== 35720 +eGU= 35721 +IGN1cmxz 35722 +IFJob2Q= 35723 +RW5k 35724 +IEVU 35725 +IGFjcXVhaW50 35726 +IEtlbHZpbg== 35727 +IHRyaWY= 35728 +IEF3YXk= 35729 +7J6Q64qU 35730 +dnM= 35731 +IHDDoWdpbmE= 35732 +IGlubGV0 35733 +IFNhbnRvcw== 35734 +IOyasOyZgA== 35735 +IHlhcMSxeW9yc3Vu 35736 +dGhlbWU= 35737 +IHNvdWZm 35738 +IGluamVjdGVk 35739 +IHDDs8W6bmllag== 35740 +aXZlcnNv 35741 +YW1wZWQ= 35742 +IGRhaGVy 35743 +IGRhZ2dlcg== 35744 +INC70Y7QsdC40Lw= 35745 +IHR1bW15 35746 +IGVubGlnaHRlbmVk 35747 +Y2VudHM= 35748 +IERhaA== 35749 +IGN1ZXN0 35750 +SUxZ 35751 +INeR16g= 35752 +IGJhbmdpbmc= 35753 +IEVtaWw= 35754 +IENsZXI= 35755 +IEJvcmRlcg== 35756 +0LjQttGD 35757 +IHByZXNlbnRlcnM= 35758 +IFNUVUQ= 35759 +Y29pbnM= 35760 +IO2ZjQ== 35761 +IHBlcmtz 35762 +IHBhcmFw 35763 +IGNlcnRhaW5lcw== 35764 +IExvcmU= 35765 +w7ZzdA== 35766 +IE1BUlRJTg== 35767 +IGJpb3M= 35768 +IHdoZXJlYnk= 35769 +dmVydHM= 35770 +IE1pcmFuZGE= 35771 +IHN0aXA= 35772 +YW5kZXo= 35773 +15vXnA== 35774 +dWppbg== 35775 +IOq+ 35776 +IGFsbGVyZ2llcw== 35777 +cGxhdGU= 35778 +IHlhcMSxbA== 35779 +IHVuZGVydGFrZQ== 35780 +IOuCmOqwgA== 35781 +UGFydA== 35782 +IGvEsXrEsW0= 35783 +aGd1cnU= 35784 +IEpvaG5z 35785 +IGV5ZWxhc2hlcw== 35786 +IGRyYWluZWQ= 35787 +IHN0w6Vy 35788 +IEphZGU= 35789 +IGNhbGVuZA== 35790 +ZmlsbQ== 35791 +IG1lc2E= 35792 +IGx1ZHppZQ== 35793 +IGF0dHJhY3Rz 35794 +IGp1aWNlcw== 35795 +INC60LjQuw== 35796 +IG5pZXV3ZQ== 35797 +IG1lbmNpb24= 35798 +IGlnbml0aW9u 35799 +IGJsYWRkZXI= 35800 +YW5kYWFn 35801 +IEV4dGVuc2lvbg== 35802 +7YKo 35803 +ZmVlZA== 35804 +INmI2Yc= 35805 +IHNwdW4= 35806 +IHTDpHQ= 35807 +0L7RgNC+0YI= 35808 +dHlhcmQ= 35809 +cm9uaWNz 35810 +IEh1Z2U= 35811 +0YPQttC0 35812 +c3RyaW5n 35813 +IHVuanVzdA== 35814 +IHByYXdu 35815 +IGZyb3N0aW5n 35816 +IGRpc2FwcGVhcmFuY2U= 35817 +aW9zYQ== 35818 +IGNhcmRp 35819 +IFByaWVzdA== 35820 +IGNpZW50w61maWM= 35821 +INCS0LDRgQ== 35822 +IOu2gO2DgQ== 35823 +IHRoaWV2ZXM= 35824 +IHBoeXNpcXVl 35825 +IEV1Z2VuZQ== 35826 +INCx0LvQuNC3 35827 +IG1vbm9wb2x5 35828 +IGJpb2dyYXBoeQ== 35829 +IGhvxZ8= 35830 +IHTDtg== 35831 +bWFj 35832 +IHNob2Nrcw== 35833 +7IS46w== 35834 +aGl0 35835 +IHNudWc= 35836 +IGluY2w= 35837 +IGRlZGlj 35838 +IHVsdHJhcw== 35839 +INC40LfQstC10YHRgg== 35840 +IHV0aWxpemF0aW9u 35841 +INGB0L7QstC10YDRiNC10L3QvdC+ 35842 +IHNlcnZp 35843 +c3RhZw== 35844 +MTgw 35845 +IHNld2Vy 35846 +IENob2ljZQ== 35847 +IGRpc2NoYXJnZWQ= 35848 +IEpE 35849 +0L7Qu9C10YI= 35850 +INC60LLQsNGA0YLQuA== 35851 +IHRlbGVzY29w 35852 +IEplxZtsaQ== 35853 +IE5hbmE= 35854 +Y2FsZQ== 35855 +INGC0L7QvQ== 35856 +bW1t 35857 +IGdlaGFidA== 35858 +64Kg 35859 +4LiZ4LiZ 35860 +IGV0aGVy 35861 +IHplbg== 35862 +IHJlc2VhcmNoZWQ= 35863 +IEN6eWxp 35864 +d29ya2Vycw== 35865 +IOqyveywsA== 35866 +IHNoZXJpZmY= 35867 +YWxsbw== 35868 +IHRpcG9z 35869 +IHByb3NlY3V0aW9u 35870 +IGZyb2dz 35871 +IGZhbHQ= 35872 +amQ= 35873 +IO2MlA== 35874 +IGZpbHRlcmVk 35875 +IE9mdA== 35876 +IOyN 35877 +IGRpc2Zy 35878 +IE11c3Rhbmc= 35879 +IHdvYWg= 35880 +IFJFQUxMWQ== 35881 +INC80L7Qs9C70Lg= 35882 +IGVudHJhZGE= 35883 +INC40LPRgNCw 35884 +IG1peGVz 35885 +INCw0LLRgtC+0LzQvtCx 35886 +0Jk= 35887 +IHNoaW4= 35888 +IHBhcmFub3JtYWw= 35889 +IHNvbWVwbGFjZQ== 35890 +IGRpc2hvbg== 35891 +ZXRhYW4= 35892 +IGZ1ZXJ0ZQ== 35893 +2bk= 35894 +IGRvb20= 35895 +7Iic 35896 +IGV4aXN0ZW50aWFs 35897 +IGJ1bGQ= 35898 +IFNESw== 35899 +INC/0YDQsNCy0LTQsA== 35900 +IHR1cm5vdmVy 35901 +IOyXrOq4sOyXkA== 35902 +IOCkuQ== 35903 +IG1vZGVsZWQ= 35904 +IGJ1Z8O8bg== 35905 +IGV4cGVyaW1lbnRhdGlvbg== 35906 +IG1vcm5pbmdz 35907 +IG1lZG8= 35908 +U3Rldmll 35909 +IHBsYXlhYmxl 35910 +IGFpcmxpbmVz 35911 +Z21lbnRz 35912 +IOq4sOu2hA== 35913 +IFRvbWI= 35914 +IE1WUA== 35915 +QVVESUVOQ0U= 35916 +IGNoZWNrb3V0 35917 +IHBhc3N0 35918 +IGJlaXNwaWVs 35919 +IExpbmtz 35920 +aGVhdnk= 35921 +IHF1ZXN0aW9uYWJsZQ== 35922 +IOyTsOs= 35923 +IHNpbGw= 35924 +IG1hbmlwdWxhdGVk 35925 +IExvcmVu 35926 +IOycvA== 35927 +IHZlcmdl 35928 +w6Fr 35929 +SUVT 35930 +IHNhYm90 35931 +IEN1c3RvbWVy 35932 +YWxlxbx5 35933 +IG5vbWluZWU= 35934 +IEdhZA== 35935 +IG5vdXZlbGxlcw== 35936 +IFNQRQ== 35937 +aXN0bGluZw== 35938 +IG92YWw= 35939 +0L7QsdGA0LDQtg== 35940 +aWZ0eQ== 35941 +IGJlemVs 35942 +eWV0 35943 +IGZyZWlnaHQ= 35944 +IEhhbsSxbQ== 35945 +csOtYQ== 35946 +IHpvbmluZw== 35947 +IGluZGVt 35948 +IELDvA== 35949 +IGZlbWluaXNt 35950 +IHZvaXg= 35951 +IG9maWNpYWw= 35952 +IGRpeW9ydW0= 35953 +u5A= 35954 +IGFyb3Nl 35955 +IHBhcmFy 35956 +7J247KeA 35957 +IE1hcnRpbmU= 35958 +IExlY3Q= 35959 +IHJlc3Rlcg== 35960 +IGRyb3duaW5n 35961 +dXlh 35962 +Y2lkYQ== 35963 +IEFyaWVs 35964 +IDAy 35965 +INeU15Q= 35966 +IFdlcnQ= 35967 +0KLRiw== 35968 +IHdpZG93 35969 +IHBhcmNobWVudA== 35970 +IGNvdHRhZ2U= 35971 +IFhM 35972 +IFNsYWNr 35973 +IE5FUw== 35974 +IHJvYmU= 35975 +IGdpbW0= 35976 +IGNhbWluaG8= 35977 +IEhhcnBlcg== 35978 +IGNpdHJ1cw== 35979 +IGZpcmVmaWdodGVycw== 35980 +IGRvcGFtaW5l 35981 +ZWxldHM= 35982 +IGRlbW9jcmF0 35983 +7KCc66Gc 35984 +IHBsYXliYWNr 35985 +b2o= 35986 +INC/0YDQvtC6 35987 +IFN1bGxpdmFu 35988 +c2VtYmxl 35989 +IFdvcnRo 35990 +IE11c3RhZmE= 35991 +4Liy4Lij 35992 +IG1ldHM= 35993 +0LvQvtGB0Yw= 35994 +IGluZXJ0aWE= 35995 +IHVuaWZvcm1z 35996 +w6lyaW8= 35997 +15XXqNeU 35998 +w6ludA== 35999 +IOCukg== 36000 +INGB0LDQvNGL0YU= 36001 +IHZvdWxhaXM= 36002 +IFppbW1lcg== 36003 +6rKg6w== 36004 +INC90L7RgQ== 36005 +ZW5jaWFz 36006 +IHJlbGFjacOzbg== 36007 +IOqxuOs= 36008 +IGZhY3Rpb24= 36009 +IGdvc3A= 36010 +0L/QvtC70L7Qtg== 36011 +bmFw 36012 +aGFr 36013 +IHByb2NlZWRpbmdz 36014 +IOyGlA== 36015 +7JWE64uI 36016 +IOyekOq4sA== 36017 +IHdlcmQ= 36018 +IHNvZg== 36019 +IHNjaGxpbQ== 36020 +IGZsYXZvcmVk 36021 +IHF1YWRyYXRpYw== 36022 +IEJvb3Q= 36023 +IHB1YmxpY2l0eQ== 36024 +IENhcm8= 36025 +ID8i 36026 +0L3QuNGG0LA= 36027 +bWFuaWE= 36028 +IFNVUg== 36029 +IEJVUg== 36030 +bGFuY2U= 36031 +w6l0aWNh 36032 +IHpvYmFjenk= 36033 +IHRyaW8= 36034 +c2FtYQ== 36035 +IHRhxZ8= 36036 +IGFzeW1t 36037 +cmVzc2Vy 36038 +INiq2Lk= 36039 +INC/0LXRgQ== 36040 +IGJlZ2lubmluZ3M= 36041 +bGFkxLFt 36042 +INCx0YvRgdGC0YA= 36043 +IG1vbw== 36044 +IEdlbmV2YQ== 36045 +ZXJ1cw== 36046 +Ym9yYWg= 36047 +IHJlZnVzaW5n 36048 +YnVsbA== 36049 +IFdhaXRpbmc= 36050 +IEluZGl2aWR1YWw= 36051 +IGFub255bQ== 36052 +aW1lbnM= 36053 +IG1lZGlkYXM= 36054 +IGZyYWdyYW50 36055 +IGRpcmVjdGVtZW50 36056 +IOyVhOuniA== 36057 +dXJpYQ== 36058 +IHNwaGVyaWNhbA== 36059 +IGFiZ2U= 36060 +IFZpY3Rvcmlhbg== 36061 +IHNwZWN0YWNsZQ== 36062 +IFJvZHJpZ3Vleg== 36063 +IG9jdXA= 36064 +IE7DpHI= 36065 +bWFya3M= 36066 +bmd1bG8= 36067 +IEx1Y2k= 36068 +IHNob3V0ZWQ= 36069 +IHJlZ3VsYXRvcnM= 36070 +xJ9pbmk= 36071 +IGRpc2VudA== 36072 +INGA0YvQvQ== 36073 +64Ko 36074 +IOyCtOs= 36075 +IHByb2Jsw6htZXM= 36076 +IEZpbmdlcg== 36077 +YXNzZW1ibGU= 36078 +IHBlYXI= 36079 +IGRyb2l0ZQ== 36080 +IEV2ZXJ5d2hlcmU= 36081 +dGFt 36082 +0L7RgtC40LI= 36083 +0LLQvtC5 36084 +b3JkaW5hdGU= 36085 +IExhaw== 36086 +IG3hu5tp 36087 +IFRlbGV2aXNpb24= 36088 +IGV4cG9uZW50aWFsbHk= 36089 +YXZhcw== 36090 +IGJsZXY= 36091 +IE1U 36092 +Q29ubmVsbA== 36093 +IOq1reuvvA== 36094 +INGB0LLQvtC40Lw= 36095 +IGFjaGE= 36096 +IER5bmFzdHk= 36097 +Smlu 36098 +IHRvcmU= 36099 +IGZsb3I= 36100 +INC80L3QvtCz0LjQtQ== 36101 +b3dhbg== 36102 +YmFo 36103 +IOyjhA== 36104 +IENlbGE= 36105 +IOy1nOq3vA== 36106 +IHBlcm1ldHRyZQ== 36107 +IGFicmFz 36108 +IHZlcnN0ZWhlbg== 36109 +IGVzY29ydA== 36110 +IFRoZW0= 36111 +w6Rya2U= 36112 +cG9ydGVy 36113 +IGthaGthaGE= 36114 +IGhlY3Q= 36115 +IGRhdQ== 36116 +d2Fo 36117 +b2x2ZQ== 36118 +IEFnZXM= 36119 +c2NoYWZ0 36120 +IFN0ZWxs 36121 +bmVsbGU= 36122 +IEVuc3VpdGU= 36123 +INCS0YHQtdC8 36124 +IGNyw6lk 36125 +IFBQ 36126 +bG9yZHM= 36127 +Z3J1bnRpbmc= 36128 +IGNvbnRyYWN0aW9u 36129 +R290 36130 +IGFjcXVpcmluZw== 36131 +IHNvcHI= 36132 +IHBvaXNvbm91cw== 36133 +Uk5B 36134 +IGFuYXI= 36135 +IEhvZg== 36136 +Jyk= 36137 +IHJlbWFya2FibHk= 36138 +IGludGVybmFjaW9uYWw= 36139 +w7xja2U= 36140 +aW5xdQ== 36141 +IGR1eQ== 36142 +IGJlYXN0cw== 36143 +IExBTg== 36144 +IHByZWNlZGVudA== 36145 +IFJQTQ== 36146 +IHNlbG9u 36147 +IG1vcnRl 36148 +IGNvbWXDp291 36149 +0Y/Qu9Cw 36150 +IGludGVycHJldGluZw== 36151 +IEJ1cmtl 36152 +0YLRgNCw 36153 +IOydtOufrA== 36154 +IHBlc3NpbQ== 36155 +IE5vaw== 36156 +7Yyd 36157 +RmVtYWxl 36158 +IOyLpO0= 36159 +mYA= 36160 +IHN0aW11bGF0aW9u 36161 +IHNsaWNr 36162 +IOqwgOuKlA== 36163 +INC60LDQtw== 36164 +IEhCTw== 36165 +IHBhcGllcg== 36166 +IGvDtm5udGVu 36167 +0YPQsdC70Lg= 36168 +IENvbnN0YW50 36169 +U1BFQUtJTkc= 36170 +IGt0w7NyxIU= 36171 +IGNvc21ldGljcw== 36172 +IFRyZW5k 36173 +IHJvYmJlcnk= 36174 +IHRpdHQ= 36175 +IGdqb3J0 36176 +IGRpZXRhcnk= 36177 +oIw= 36178 +IEtpcmJ5 36179 +INC/0YDQuNC80LXRgNC90L4= 36180 +IHF1YWxpZmljYXRpb24= 36181 +IOyViQ== 36182 +IGNhYmluZXRz 36183 +IGh0dHA= 36184 +IEVyaWNh 36185 +IGRpc2FkdmFudGFnZXM= 36186 +IGNoYXR0ZXJpbmc= 36187 +eXo= 36188 +ZmVpdA== 36189 +IGd1aWxk 36190 +IEVURg== 36191 +IERyYWdvbnM= 36192 +IEhFUkU= 36193 +dmVudGg= 36194 +2YTYp9mF 36195 +IG1hcmNow6k= 36196 +RGFt 36197 +IHBob3Rvbg== 36198 +IGVzdGFibGU= 36199 +TWFn 36200 +IG9saGFy 36201 +IGNvdXBsaW5n 36202 +IEhpbGZl 36203 +IFdpemFyZA== 36204 +INC80LDQu9C+ 36205 +aGVscA== 36206 +IGzDrW5lYQ== 36207 +IOyr 36208 +IHN0YW5kYWxvbmU= 36209 +IG1vcmFsZQ== 36210 +IHp3ZWl0ZQ== 36211 +w6RocnQ= 36212 +IGRvdHRlZA== 36213 +IGRyaXBwaW5n 36214 +IEZsYWc= 36215 +cm9ja2V0 36216 +cmF0ZWd5 36217 +aXJpbQ== 36218 +IO2VmOuptOyEnA== 36219 +IHNvZ2VuYW4= 36220 +IFVubw== 36221 +IFNjaHV0eg== 36222 +IGVzdGlsbw== 36223 +IFN1YnM= 36224 +IERhaXN5 36225 +0J3QtdGC 36226 +Jy4uLg== 36227 +IHBsYXRpbnVt 36228 +IGJpcmw= 36229 +IFNvdmk= 36230 +IHZpb2xhdGU= 36231 +0YPQtdGC0YHRjw== 36232 +cmlsbA== 36233 +IHRyYXo= 36234 +IHNuaXA= 36235 +IGN1bXBs 36236 +4Lit4LiB 36237 +IGN1aw== 36238 +IFBhcmxhbWVudA== 36239 +IGh5cGVydA== 36240 +IHB1bHA= 36241 +IHRvbmd1ZXM= 36242 +YXR0bw== 36243 +IGJ1c2Nh 36244 +aWhu 36245 +RVJP 36246 +INmK2Lk= 36247 +IHZhcmlhcw== 36248 +IE1hcmlhbg== 36249 +IGJvdW5kZWQ= 36250 +IHBpdGNoaW5n 36251 +IGRlZmljaWVuY3k= 36252 +IEJsZXNzZWQ= 36253 +IEV4ZXJj 36254 +dWNocw== 36255 +IG5oxrBuZw== 36256 +IHJhcGVk 36257 +aGFsZXM= 36258 +IG1hbGE= 36259 +cGlj 36260 +IDQwMQ== 36261 +xZtuaWVq 36262 +YXJpbmE= 36263 +65Ok7J2E 36264 +b3R0aQ== 36265 +INC00L7Qu9Cz0L4= 36266 +IHRyYWNrZXI= 36267 +IFNoZWxieQ== 36268 +IHZhbmlzaGVk 36269 +IGJha2VyeQ== 36270 +S2FwxLE= 36271 +SmVzdXM= 36272 +IEtS 36273 +Sk8= 36274 +hbg= 36275 +IGRpc2Nz 36276 +7ISv 36277 +7KeA6w== 36278 +15nXpg== 36279 +ZW1hcnk= 36280 +S2VuZHJh 36281 +IHnDvGs= 36282 +w7xja3Q= 36283 +IHZheg== 36284 +IGt1cA== 36285 +YWt0dQ== 36286 +INGB0L/QsNGB0LjQsdC+ 36287 +IGFpaw== 36288 +IG51cnNlcnk= 36289 +IGVuZGFuZ2VyZWQ= 36290 +w6ptZW1lbnQ= 36291 +ZW1hdGljcw== 36292 +IHJlc3BvbmRlcnM= 36293 +IFJlcHJlc2VudGF0aXZlcw== 36294 +IHNjdWxwdHVyZXM= 36295 +aWdrZWl0ZW4= 36296 +IGRlcGw= 36297 +IGludGVycHJldGF0aW9ucw== 36298 +IGRlYWRsaW5lcw== 36299 +IDE5NDI= 36300 +w5c= 36301 +IHN1Z2Fycw== 36302 +ZW11 36303 +bGl2ZWx5 36304 +IHJlY3JlYXRpb25hbA== 36305 +IGRpc3RvcnQ= 36306 +IHVuZGVyc2NvcmU= 36307 +IHVucXVvdGU= 36308 +IHNhZmVzdA== 36309 +IHN3b2xsZW4= 36310 +IGFuYWx5c2Vz 36311 +IGNvbW1lbmPDqQ== 36312 +YW5kaW4= 36313 +INCl0L7RgNC+0YjQvg== 36314 +IGRpYXJy 36315 +emllc3Q= 36316 +IHRvb3RoYnJ1c2g= 36317 +dWF0aW9ucw== 36318 +IGNhZGU= 36319 +IGJhY2tsYXNo 36320 +aGluZA== 36321 +IHJpc3F1ZQ== 36322 +emVzcw== 36323 +IOydtOyVvOq4sA== 36324 +IGVzcGVyYXI= 36325 +IHRyYW5zbGF0aW9ucw== 36326 +aW9uZWQ= 36327 +Z3JvYW5z 36328 +INC/0YPRgg== 36329 +IGdlbmV0aWNhbGx5 36330 +IGhhcHBpZXN0 36331 +IHdlcms= 36332 +YXRvb24= 36333 +IG11c2k= 36334 +IGZ1bsOnw6Nv 36335 +IOyeheuLiOuLpA== 36336 +INGA0LDQuQ== 36337 +IGJldm9y 36338 +QkxBTks= 36339 +IHJlcGVudGFuY2U= 36340 +UHV0 36341 +IHBvdHJ6ZWI= 36342 +IHNhbGE= 36343 +IGNhbXBh 36344 +V0VS 36345 +IGRlY8OtYQ== 36346 +IHPDqWN1cml0w6k= 36347 +IEFwcHJlY2lhdGU= 36348 +0YfQuA== 36349 +IFJhbmRvbQ== 36350 +67OE 36351 +a2Fo 36352 +IG3Dtmo= 36353 +IHPDpGdlcg== 36354 +INeZ15vXldec 36355 +IDE5MA== 36356 +eHR1cmVz 36357 +RXU= 36358 +IGfDpA== 36359 +INeR16o= 36360 +IENyb2F0 36361 +YXBv 36362 +UExF 36363 +IHBlcnNpc3RlbmNl 36364 +IGJsZW5kcw== 36365 +IHRyZWZmZW4= 36366 +IFNhbnRpYWdv 36367 +eWRpYQ== 36368 +YWxkbw== 36369 +IFRlbnNvckZsb3c= 36370 +IER1YWw= 36371 +IGNoaWZm 36372 +7Je0 36373 +IGNvbnRyYWN0ZWQ= 36374 +IHNlZ3JlZw== 36375 +IEZhaXJ5 36376 +IHdpc2VseQ== 36377 +IHZ1bG5lcmFiaWxpdGllcw== 36378 +IGhhbmRoZWxk 36379 +IGdhZGdldHM= 36380 +IGJvxZ8= 36381 +IFBvcHVsYXI= 36382 +IGN1cnZhdHVyZQ== 36383 +66y4 36384 +IE1BUlk= 36385 +7J207Io= 36386 +IGZvcm11bGF0aW9u 36387 +IGNlbGVyeQ== 36388 +IGJsdXJyeQ== 36389 +IFRT 36390 +YWxleg== 36391 +IHdz 36392 +IHByb2dyYW1t 36393 +IFN0YWNr 36394 +IEpJTQ== 36395 +0L7QstCw0LvQuA== 36396 +xLFsbA== 36397 +IHDDqHJl 36398 +IEthbnll 36399 +IERlbGF3YXJl 36400 +IGRhdW50aW5n 36401 +INCx0LXRgQ== 36402 +IFN0dXBpZA== 36403 +Ymln 36404 +ZmZpY2lhbA== 36405 +IHByZWNpcGl0YXRpb24= 36406 +IHBsdW5n 36407 +4bulYw== 36408 +YnVyc2U= 36409 +IGRhcmxl 36410 +IGNyaXBw 36411 +IHBpb25lZXI= 36412 +IGRpc3B1dA== 36413 +IHNlYW4= 36414 +IHJlc2lzdG9y 36415 +IGFsbGVpbg== 36416 +aXBwbGVz 36417 +YXJlbA== 36418 +IGVuZG9ycw== 36419 +enVzdA== 36420 +INGA0LXQsdGP0YLQsA== 36421 +ZWRlZA== 36422 +IOy5tOuplOs= 36423 +IGxsZXZh 36424 +IGtlbm50 36425 +INCx0LDQuw== 36426 +IERvY3VtZW50 36427 +IEtuaWdodHM= 36428 +IGJ1Y2tsZQ== 36429 +IOyJrA== 36430 +IGFsaw== 36431 +IEV2ZXJ5ZGF5 36432 +YXR0ZXJz 36433 +IHRvaWxldHM= 36434 +IGp1Z2Fy 36435 +IOyeiOyngA== 36436 +IGdlbmF1c28= 36437 +IExhbmRlc3JlZ2llcnVuZw== 36438 +aWpl 36439 +IHRyYWlsZXJz 36440 +IFRpZ2Vycw== 36441 +IGdpdHRp 36442 +IGZvcmdpdmluZw== 36443 +IGNvbmN1cnJlbnQ= 36444 +IFZ1 36445 +IO2Kue2eiA== 36446 +IEJST1dO 36447 +b3VuZGVk 36448 +Ijs= 36449 +IHRyZW1i 36450 +IHRpZXQ= 36451 +INGA0LXQttC40Lw= 36452 +IG51dHNoZWxs 36453 +0LXQu9C40Yc= 36454 +IGxvc2Vycw== 36455 +cmljdGluZw== 36456 +IHJlZGVlbQ== 36457 +ZGVmaW5lZA== 36458 +TmljZQ== 36459 +IGJyb2FkYmFuZA== 36460 +S08= 36461 +IHRlYXNpbmc= 36462 +IHBhcnRpc2Fu 36463 +xLFtYQ== 36464 +IOyerOuvuA== 36465 +IEpvdXJuZXk= 36466 +IHNsb3Blcw== 36467 +dW5pbmc= 36468 +Z3J1bnRz 36469 +IHTDpGxs 36470 +IHVuY292ZXJlZA== 36471 +IG15xZtsxJk= 36472 +IEVzdGhlcg== 36473 +IEhlYWx0aHk= 36474 +IOuwkQ== 36475 +csOpZQ== 36476 +IHBvbGFyaXphdGlvbg== 36477 +IGZsYXY= 36478 +IGNhbWJpYXI= 36479 +IHly 36480 +IFJhbmNo 36481 +IHNwbGl0cw== 36482 +IHRyb3V2w6k= 36483 +IHJlY29yZGVy 36484 +IGTDqXBhcnQ= 36485 +2YjYqA== 36486 +IEtyeQ== 36487 +IGludGVyZXNzYW50 36488 +IGVkZXJpbQ== 36489 +xZt3aWFk 36490 +aWxhdGVyYWw= 36491 +d3JpZ2h0 36492 +IHBvdXJyYQ== 36493 +w6p0ZXI= 36494 +IGNhbWVs 36495 +4Z4= 36496 +IHJhcGlkZW1lbnQ= 36497 +IG1lag== 36498 +IHN0aWZmbmVzcw== 36499 +QURBUw== 36500 +IGRpZmZlcnM= 36501 +IGFsb3Q= 36502 +IFNpZw== 36503 +0Y/RgtC10LvRjA== 36504 +IGFic3RyYWN0aW9u 36505 +IGtlaW5lcg== 36506 +Z3J1cHA= 36507 +IFNoZXJsb2Nr 36508 +7ZiU 36509 +IGNpdGU= 36510 +IG92ZXJmbG93 36511 +IHThuqFp 36512 +w7pjYXI= 36513 +YnVsYQ== 36514 +IGNvbmp1bnRv 36515 +IENJ 36516 +IG1vZGVyYXRvcg== 36517 +IGluZGlyZWN0bHk= 36518 +IGFsbGVpbmU= 36519 +4oI= 36520 +0YjQuNCx 36521 +INCx0LDQsQ== 36522 +IGRhbmFjaA== 36523 +IDE5Mzk= 36524 +IHByb21ldA== 36525 +IGRlc3RpbmF0aW9ucw== 36526 +IElsbHVzdA== 36527 +zrnOus+M 36528 +IHNhYmVz 36529 +IGhlaA== 36530 +IEdlc2V0emVudA== 36531 +IE1peg== 36532 +0LXQvdC60L4= 36533 +IE15cw== 36534 +0Kw= 36535 +IEp1ZGFpc20= 36536 +IG11c3RhY2hl 36537 +IHN0aW1tdA== 36538 +IEdhemE= 36539 +IHZvbHRl 36540 +IG51bw== 36541 +IG3Ds24= 36542 +IENvbXB1dA== 36543 +4Li54LmI 36544 +IFJhZGk= 36545 +IGV4Y2VwdGlvbmFsbHk= 36546 +IGFzc3VtZXM= 36547 +aW5mb3Jt 36548 +IHNocmluZQ== 36549 +IGltcGxpY2F0aW9u 36550 +IEZpdHo= 36551 +IS4= 36552 +IGx0 36553 +IGFsbG95 36554 +IGV0aGlj 36555 +IG1vbmFzdGVyeQ== 36556 +7Iuc7KOg 36557 +aWNhw6fDo28= 36558 +IGNvb3JkaW5hdGluZw== 36559 +IE1vdG8= 36560 +IG92ZXJsb29r 36561 +IGNob2lz 36562 +IGFudGliaW90aWM= 36563 +IE1pbm5l 36564 +IEJK 36565 +IEFwYQ== 36566 +b3JpYW4= 36567 +IHNwaWxsZWQ= 36568 +SmFt 36569 +IGh1c2JhbmRz 36570 +IGNyZWF0aW9ucw== 36571 +IGHDsQ== 36572 +w7xzc2Vs 36573 +IOydtOyaqQ== 36574 +IGFuYWx5c2U= 36575 +cm9zZQ== 36576 +IHB1bmNoZWQ= 36577 +IHByZXNxdWU= 36578 +IGFzdHJvbm9teQ== 36579 +IHNjaHdpZXJpZw== 36580 +IEVib2xh 36581 +IGNpcw== 36582 +IGFjZXQ= 36583 +IEZY 36584 +ZW5kcmU= 36585 +IOydjOyVhQ== 36586 +IHdlYnBhZ2U= 36587 +IGZyZWFrZWQ= 36588 +IGxhdHRl 36589 +IOy/oA== 36590 +IOuouOs= 36591 +TmV2ZXI= 36592 +R3Jh 36593 +7ZmU66W8 36594 +ZXllZA== 36595 +IOuwnOudvA== 36596 +IGVzcGVyYQ== 36597 +IGFwYXJlY2U= 36598 +cmHDp8Ojbw== 36599 +IGRpc3J1cHRpdmU= 36600 +IEpvaW50 36601 +dXJvdXM= 36602 +cmVhcw== 36603 +IHF1ZXLDrWE= 36604 +IGRpc3RyaWJ1dGlvbnM= 36605 +IGV4cG9uZW50 36606 +7LmY66W8 36607 +IGRs 36608 +emhvdQ== 36609 +IEhlYXJpbmc= 36610 +IENyYXc= 36611 +IGZsb2F0cw== 36612 +b3VuY2Vk 36613 +TGFi 36614 +V29ybGQ= 36615 +IGJ1cmRlbnM= 36616 +IGF1dGhvcml0YXJpYW4= 36617 +IEJvbHQ= 36618 +INC+0LTQvdGD 36619 +IHBpZ2Vvbg== 36620 +IGRpc3RyYWN0aW9ucw== 36621 +IEhlcmF1c2ZvcmRlcg== 36622 +IHplc3Q= 36623 +ZXNj 36624 +IHNoYWtlcw== 36625 +YXRhcw== 36626 +INmF2LQ= 36627 +aG9sZXM= 36628 +IHRoaW5rZXJz 36629 +YWx0YQ== 36630 +IGFyY2hl 36631 +IFN1aw== 36632 +YW5oYQ== 36633 +IHRlbXB0aW5n 36634 +IHlvdXR1YmVy 36635 +IHbDrA== 36636 +IGR6aWHFgmE= 36637 +IFZhdGljYW4= 36638 +UGFyaw== 36639 +IHN1cGVycw== 36640 +IE5pa2tp 36641 +64qQ6w== 36642 +b3Jhbmc= 36643 +cmFtaWVudA== 36644 +IOqwluqzoA== 36645 +IGRlc3NlcnRz 36646 +IGF2ZXJl 36647 +IEdyZWdvcnk= 36648 +IOuTpOyWtOyY 36649 +IGNvc3Rpbmc= 36650 +IENsaW5pYw== 36651 +IHJlYmVscw== 36652 +IE1vYg== 36653 +IGJ1bmxhcg== 36654 +IFlvdXJz 36655 +ZXJ0aW1l 36656 +IHJldGFsaQ== 36657 +bWFyYQ== 36658 +YXR1cw== 36659 +YWxsZXM= 36660 +INC00YA= 36661 +INC00LjRgQ== 36662 +IGRpc2NvdW50cw== 36663 +IEdVWQ== 36664 +INC60LDQutC+0LU= 36665 +IEV4cGVyaW1lbnQ= 36666 +cmVtZW50 36667 +IFhpYW5n 36668 +IGJhdGU= 36669 +V0U= 36670 +IHNwZWNpYWxpemU= 36671 +IGRlaXR5 36672 +IExva2k= 36673 +bWFn 36674 +IE5pdA== 36675 +V2VzdA== 36676 +IG1hdGVybmFs 36677 +IHF1aXM= 36678 +YnJva2Vu 36679 +IGxhc2Vycw== 36680 +IGhha2s= 36681 +IEFuZ2Vscw== 36682 +IG1hc3Rlcnk= 36683 +YW50aXM= 36684 +VGlmZmFueQ== 36685 +ZWVl 36686 +55E= 36687 +b3JlbQ== 36688 +IGluYWNj 36689 +IGp1cmlzZGljdGlvbnM= 36690 +IEthcmRhc2g= 36691 +SWw= 36692 +IFNpbm4= 36693 +IGF0aGxldGljcw== 36694 +Y8SZ 36695 +IGxvb3NlbHk= 36696 +IGRpZXRh 36697 +QWc= 36698 +ID8/ 36699 +IOuMgO2RnA== 36700 +IHN1cGVydg== 36701 +IG51dHJpdA== 36702 +IGRyaWZ0aW5n 36703 +IOyEoOyDneuLmA== 36704 +INC/0L7QvdGP0Ls= 36705 +IFZpY3Rvcnk= 36706 +2YTYqQ== 36707 +15XXoNeU 36708 +INC/0LjRiA== 36709 +IHNoYXZlZA== 36710 +IG1lc3VyZQ== 36711 +b25kZW4= 36712 +2YPYsQ== 36713 +IGV4aWxl 36714 +IERlc2Rl 36715 +IFBpbnRlcmVzdA== 36716 +IGF0dGFjaG1lbnRz 36717 +IGhvbWJyZXM= 36718 +IGZpbmVz 36719 +IOyEuOyDgQ== 36720 +IHNsZWVwcw== 36721 +IFRhY28= 36722 +IElSQQ== 36723 +cmlvcw== 36724 +IG9sbA== 36725 +ZXRlcw== 36726 +IHVudXQ= 36727 +ZmFzaGlvbmVk 36728 +IHRyZWJhbGw= 36729 +IE5lYXJseQ== 36730 +INGA0LXQsNC70YzQvdC+ 36731 +IGNoaWw= 36732 +xJ9h 36733 +IE1FTA== 36734 +cm9zY29w 36735 +IENH 36736 +IHZlbmdl 36737 +IGRpc2h3YXNoZXI= 36738 +YWxnaWM= 36739 +IG1vZGlmaWVy 36740 +IGVtYmFzc3k= 36741 +dGltZXI= 36742 +ZW1pY3M= 36743 +IGludHJpY2F0ZQ== 36744 +IGV2ZXQ= 36745 +IOuMgOuwlQ== 36746 +IGlzb3Q= 36747 +INC90LDRg9GH 36748 +IFF1aXo= 36749 +cmVzbw== 36750 +zrTPjg== 36751 +IHllbGxlZA== 36752 +IGZlZGVy 36753 +RUxMRVI= 36754 +IGV4Y2VlZGVk 36755 +b25hcw== 36756 +aWNhbm8= 36757 +INC20LjQstC+0YI= 36758 +IE1hbw== 36759 +IEthenV0bw== 36760 +IOOFi+OFi+OFi+OFiw== 36761 +IGZyb250bGluZQ== 36762 +IEh1bmdhcmlhbg== 36763 +IMO8YmVyYWxs 36764 +YXdhdA== 36765 +IGdyaXBz 36766 +acOnw7Vlcw== 36767 +YXJueWE= 36768 +IM2h 36769 +IHNlaWQ= 36770 +IGFuYWs= 36771 +IGFjYWJvdQ== 36772 +7ZWR 36773 +IG5vdG9yaW91cw== 36774 +IEdvZHppbGxh 36775 +IG92ZXJjb21pbmc= 36776 +IFBlbmQ= 36777 +IG9sYWJpbGly 36778 +w7xsbWU= 36779 +IGVyaGFsdGVu 36780 +6re5 36781 +IE1ldGVy 36782 +IHN0YWFu 36783 +T2w= 36784 +IGNoYXRz 36785 +IEJ1ZW5vcw== 36786 +w612ZQ== 36787 +YWx1YWJsZQ== 36788 +IHN0cmF0ZWdpY2FsbHk= 36789 +IGNvbXByaXNlZA== 36790 +INC/0LXRgNGB0L7QvdCw0LY= 36791 +IHdhbm4= 36792 +IENlbg== 36793 +0L3QuNGC0LU= 36794 +n4E= 36795 +INGC0L7QsdC+0Lk= 36796 +aWFk 36797 +IGthcmRlxZ9pbQ== 36798 +IENvbmdyZXNzbWFu 36799 +cmVhbWluZw== 36800 +aG9tbWU= 36801 +IGNvbW11bmF1dA== 36802 +IGFsY29ob2xpYw== 36803 +IHBpY2tsZWQ= 36804 +IGFjb3Jk 36805 +cG9zaXRpb24= 36806 +ZWfDs2w= 36807 +IHRyb3VibGluZw== 36808 +IE1hcmNoZWc= 36809 +IHp1bWluZGVzdA== 36810 +IHNlYW1sZXNzbHk= 36811 +IG9sdW4= 36812 +IFRWcw== 36813 +INC/0YDQsNC60YLQuNGH0LXRgdC60Lg= 36814 +IGJhY2tlbmQ= 36815 +aWRhYmxl 36816 +IGdhZGdldA== 36817 +IGZhw6dv 36818 +IE1hcmNoZWdpYW5p 36819 +IOuwpA== 36820 +IGFjY2lkZW50YWw= 36821 +IExQ 36822 +IGVsZGVzdA== 36823 +IEFkbWlyYWw= 36824 +IG7Eg20= 36825 +bGV2ZXI= 36826 +IHBhc3RlbA== 36827 +IGZvbmRv 36828 +Q29ubmll 36829 +IHRlcmNlcg== 36830 +IHBhY3Q= 36831 +IE1vbnRl 36832 +IG1lYXRz 36833 +IFNNUw== 36834 +IEF1c3RyYWxpYW5z 36835 +57w= 36836 +UmhldHQ= 36837 +IGV4YWN0ZW1lbnQ= 36838 +IOu5vA== 36839 +IE1PRA== 36840 +56E= 36841 +IFJhcHQ= 36842 +IE5vY2g= 36843 +IGFib3J0 36844 +IE5hdmFs 36845 +IEZ1amk= 36846 +SU5URVI= 36847 +INC90L7QstGL0Lk= 36848 +IG1pZWpzY2U= 36849 +IElDVQ== 36850 +IEdyYWR1YXRl 36851 +IEdsZW4= 36852 +YXJkaQ== 36853 +IMiY 36854 +IHNvbGRlcg== 36855 +IHByb2Zlc3Npb25z 36856 +IG9ydGhvZw== 36857 +b21u 36858 +aW50cm9kdQ== 36859 +IERlbmlzZQ== 36860 +7J6Q66W8 36861 +IGNvcnJlc3BvbmRlbmNl 36862 +QU1B 36863 +IGluZmxpY3Q= 36864 +IGZhbmQ= 36865 +IEfDvA== 36866 +INGH0LXRgg== 36867 +IHRyYWNlZA== 36868 +IHBhdGVudHM= 36869 +IGFtYnVzaA== 36870 +IGxvdHRh 36871 +ZmZlcg== 36872 +IFdhZ25lcg== 36873 +IGltcGVyc29u 36874 +IGV4dHLDqm1lbWVudA== 36875 +2YLYqg== 36876 +Y29uZHVjdA== 36877 +QXR0 36878 +IE11ZWxsZXI= 36879 +IEFsaWNpYQ== 36880 +IGN5Yw== 36881 +IGhhY2tlcg== 36882 +IHR5cw== 36883 +IGhhaWw= 36884 +INC30LDRj9Cy 36885 +IHBhc3Nv 36886 +IOy2lOqwgA== 36887 +IM6I 36888 +IHBhY2thZ2Vk 36889 +IEN5bnRoaWE= 36890 +aGVldA== 36891 +IE5pc3Nhbg== 36892 +IFF1ZXN0bw== 36893 +6ag= 36894 +ZGlk 36895 +IM68zrnOsQ== 36896 +IEVsbGlz 36897 +IEFuYWx5c2lz 36898 +Y2Vtb3M= 36899 +IGFzZWc= 36900 +IE15c3Rlcg== 36901 +IENhbw== 36902 +IHR1dg== 36903 +IEluZHVzdHJ5 36904 +7KO86rOg 36905 +b3RhbA== 36906 +IHBlcXVlw7Fv 36907 +YnJhcw== 36908 +IGNvbXByZWhlbmQ= 36909 +IFNpbXBzb24= 36910 +0YHRgtCy0LjQtQ== 36911 +b2NyYWN5 36912 +0LjRh9C10YHQutC4 36913 +IE11c2g= 36914 +IExhdXJpZQ== 36915 +IHRyaWFuZ3VsYXI= 36916 +IFByZXNlbnRz 36917 +IEt1bmRlbg== 36918 +IElzcw== 36919 +IERlY2s= 36920 +4buDbg== 36921 +IERhcmtuZXNz 36922 +IGluZmxhbW1hdG9yeQ== 36923 +ZXJlbWlhaA== 36924 +IHdhcm1lZA== 36925 +dmV5YXJk 36926 +IE1lbW9yeQ== 36927 +ZXR0eQ== 36928 +IHRheHBheWVycw== 36929 +4LiT 36930 +2KE= 36931 +IHByYWN0aXNl 36932 +64us6w== 36933 +IGRyaWxsZWQ= 36934 +bcO8xZ8= 36935 +bG9nbw== 36936 +IEZhY2g= 36937 +pOuhnA== 36938 +IMO8YnJpZ2Vucw== 36939 +IGtvbm50ZW4= 36940 +IG5vcm1hbG1lbnRl 36941 +IGFyZ3Vlcw== 36942 +aWxpbmd1YWw= 36943 +sOulvA== 36944 +ZWdhbA== 36945 +IHRyYXZhaWxs 36946 +b3Z5 36947 +0LDRgtC+ 36948 +IHJ1dGg= 36949 +IExpZ2h0cw== 36950 +IGNvbnNpc3RlZA== 36951 +15HXqNeZ150= 36952 +IHN0ZXJlb3R5cGU= 36953 +IHBheWVy 36954 +IFJlZQ== 36955 +IEFpcmJuYg== 36956 +IGRyb3duZWQ= 36957 +IFpvZQ== 36958 +IGNhbm9weQ== 36959 +IGJhcnI= 36960 +INC90L7Rhw== 36961 +IHBhZ2Fu 36962 +IGphcnM= 36963 +IHLDqg== 36964 +ZXJ2ZXI= 36965 +aWViZW4= 36966 +IGVzcGVjdA== 36967 +IEZp 36968 +IHVud2lsbGluZw== 36969 +IHRlY2huaWNpYW4= 36970 +4bq3dA== 36971 +bWVtYmVy 36972 +IENhbmFs 36973 +2LPZhQ== 36974 +IGxpZWJlcg== 36975 +IGluZmVyZW5jZQ== 36976 +IGhvbm9yaW5n 36977 +IENhbXBhaWdu 36978 +IGxpbmVhZ2U= 36979 +IFN0cmVzcw== 36980 +IHZpY3Rvcmllcw== 36981 +IGRlamE= 36982 +16M= 36983 +w6p0ZXM= 36984 +YmxpY2s= 36985 +INC80LXQvdC10LU= 36986 +b3Rocw== 36987 +IENvdXBsZQ== 36988 +SmFzb24= 36989 +IE5pY29sYXM= 36990 +0LXQutGB 36991 +bGli 36992 +IGhlcnJhbWllbnQ= 36993 +INeQ15XXnteo 36994 +INCy0LjQtNC40Lw= 36995 +bWlsbGltZXRlcg== 36996 +IHNpbGhvdWV0dGU= 36997 +IGRyaXZld2F5 36998 +IGNoZXJpc2g= 36999 +44Wg44Wg 37000 +IHJhbnNvbQ== 37001 +IGludGVyZGlzY2lwbGluYXJ5 37002 +IFBvcnRhbA== 37003 +IHRyYWc= 37004 +dGhvb2Q= 37005 +IHRlZGlvdXM= 37006 +IGdsb3NzeQ== 37007 +IHByw6lwYXI= 37008 +IENheQ== 37009 +IFRvb2s= 37010 +IEJvdHRvbQ== 37011 +IHppZw== 37012 +5as= 37013 +cmVwcmVzZW50ZWQ= 37014 +4LmA4Lil4Lii 37015 +IGRlc2Fycm9sbG8= 37016 +7ISc6w== 37017 +IHZpc2Nvcw== 37018 +IG1pbGxpZ3JhbQ== 37019 +IEd1bmQ= 37020 +IGZlcm1lbnQ= 37021 +ZHJ1bQ== 37022 +IGRyYXdlcnM= 37023 +TGF1Z2g= 37024 +IHBlbG9z 37025 +IHBhdmVtZW50 37026 +IG1lbW9pcg== 37027 +YXZhaXQ= 37028 +IDIwNTA= 37029 +pOulvA== 37030 +IHJhesOzbg== 37031 +IGZsb3VyaXNo 37032 +IHN0ZXJu 37033 +IENodW5n 37034 +IHNlcnBlbnQ= 37035 +IEdlbnRsZW1lbg== 37036 +a29vaw== 37037 +IGx1dA== 37038 +aW1wb3J0ZQ== 37039 +cGFyZW50 37040 +IHdzeg== 37041 +IHNjcmVl 37042 +IE1pdGFyYmVpdGVy 37043 +bXV0 37044 +IOyWmOq4sOulvA== 37045 +IHNlbWJsZQ== 37046 +IE9X 37047 +IGludmVzdGlnYXRvcg== 37048 +IENoZXJ5bA== 37049 +IEdlcmFsZA== 37050 +IHByZXJl 37051 +IGNvbXBhcmVz 37052 +bnl0 37053 +IGRpZmVyZW7Dp2E= 37054 +Py0= 37055 +IHF1w6E= 37056 +16jXmQ== 37057 +U2Vu 37058 +IGhlcHM= 37059 +IGdyYXR1aXQ= 37060 +IGNvbnNvcnQ= 37061 +IFNUT1A= 37062 +IFByb3Rlc3RhbnQ= 37063 +IGVsZWN0cm9kZQ== 37064 +4pc= 37065 +IHNlY3VyZWx5 37066 +0LjRh9C10YHQutC+0Lk= 37067 +IHTDpMOk 37068 +IHJlZ2lzdGVycw== 37069 +IEhlYXZlbmx5 37070 +b2dseQ== 37071 +aXNzw6Q= 37072 +IFBoeXNpY3M= 37073 +IE1lcmtlbA== 37074 +IHLDqXY= 37075 +IGVyYXNlZA== 37076 +IFNhY3JhbWVudG8= 37077 +IGNvZmZpbg== 37078 +IGV4YWNlcg== 37079 +IGxhbno= 37080 +IHBvZXRz 37081 +dWxpZg== 37082 +IOy5mOs= 37083 +IE5lcmQ= 37084 +IE5DVA== 37085 +IEhvdXI= 37086 +bmVobWVy 37087 +npjrj4Q= 37088 +IFByaW5jaQ== 37089 +U3c= 37090 +bWllcw== 37091 +YXJtZWQ= 37092 +IEJlYXRsZXM= 37093 +IHByb3BhZ2F0aW9u 37094 +IGV4Y2hhbmdlZA== 37095 +IGN1bXVsYXRpdmU= 37096 +IOynkeyXkA== 37097 +IGRlZmVhdGluZw== 37098 +YmVscw== 37099 +IHdlcw== 37100 +IE9keXNzZXk= 37101 +YXZpb3I= 37102 +IOychOyXkA== 37103 +IGJyaXQ= 37104 +IGhpam8= 37105 +REFZ 37106 +INin2YTYqtmK 37107 +INCh0LXRgNCz 37108 +0YPQutCw 37109 +ZWRzacSZ 37110 +IGltcG9z 37111 +IGVsbGFz 37112 +IGZpcmVhcm1z 37113 +IE5S 37114 +INeR15A= 37115 +INCf0L7QutCw 37116 +YXdp 37117 +IOyEseqztQ== 37118 +IHB1cGlscw== 37119 +IFRhY2s= 37120 +IGZyYXNl 37121 +IFNoaXA= 37122 +IHN0YWQ= 37123 +IEdyZWF0ZXI= 37124 +dW51bg== 37125 +aW1tdW5n 37126 +Z3Jvd24= 37127 +IE5YVA== 37128 +IEFtZXJpY2Fz 37129 +Zm94 37130 +IG1hbnRlbg== 37131 +INGB0L7Qug== 37132 +IHJpa3Q= 37133 +bGVjdHJpYw== 37134 +ZGVlcA== 37135 +INC30L3QsNC10YjRjA== 37136 +IGJlbnV0 37137 +IEluZnJhc3Q= 37138 +IEVtaXI= 37139 +INC+0YLQv9GA0LDQsg== 37140 +IEtpbWNoaQ== 37141 +IEZpbm5pc2g= 37142 +tOyggQ== 37143 +aW5haXJl 37144 +IG9pa2U= 37145 +IGhvc3RhZ2U= 37146 +IEJ1dHRvbg== 37147 +2YLZig== 37148 +ZWtpbmc= 37149 +IEthemFraA== 37150 +IGNvbWZvcnRpbmc= 37151 +IHNvZw== 37152 +IGdyZWV0ZWQ= 37153 +Z3VpdGFy 37154 +cGF5ZXI= 37155 +IHJlbGF0aW9uYWw= 37156 +IGNvbnN0cnVpcg== 37157 +b3BpYW4= 37158 +IFZvbHVtZQ== 37159 +aWV0aA== 37160 +0YHRgtCy0L7QvA== 37161 +dXJyZWN0aW9u 37162 +bGnFm215 37163 +IGhlbWlzcGhlcmU= 37164 +IEJlYW4= 37165 +SUdO 37166 +IGvDtnTDvA== 37167 +IEZhbGxvdXQ= 37168 +IGJyYWNl 37169 +z4DOrA== 37170 +IEhBUw== 37171 +IGfDqQ== 37172 +IGNoYXJhY3Rlcml6ZQ== 37173 +4bq3Yw== 37174 +IE1pbGt5 37175 +IHR1bW9ycw== 37176 +IG51aXQ= 37177 +IEdheg== 37178 +IOyeiOuLpOuKlA== 37179 +INCz0LDRgA== 37180 +ZXNzbWVudA== 37181 +IEFiZQ== 37182 +IOu9kQ== 37183 +IEVpbnNhdHo= 37184 +SklO 37185 +asOk 37186 +Q3J5 37187 +IFByb21pc2Vk 37188 +INGB0LXRgNC0 37189 +b2t1cw== 37190 +IHNjYWxhYmxl 37191 +INC/0L7RgdC80L7RgtGA0LXRgtGM 37192 +w7xja2xpY2g= 37193 +IHJlYWxpc20= 37194 +IG1heW8= 37195 +IGp1dmVuaWxl 37196 +IGhlYWRsaWdodHM= 37197 +IGfDtnLDvMWf 37198 +IFJlZm9ybQ== 37199 +IGhhbHZlcw== 37200 +Y3puZQ== 37201 +IGJyZWFrdXA= 37202 +xbxlag== 37203 +IHLDpHR0 37204 +RGF5 37205 +IOydvOuzuA== 37206 +IG11ZXJ0ZQ== 37207 +IHR1bmVz 37208 +IFNtaWxl 37209 +cmVjb3Jk 37210 +IHJlY2hlcmNoZQ== 37211 +YXRpc2ZpZWQ= 37212 +IHBvemk= 37213 +IGNlbGVicmF0aW9ucw== 37214 +aXNleHVhbA== 37215 +IFJPQg== 37216 +dGhpcmRz 37217 +IEZvcnR1bmU= 37218 +INGC0L7QuQ== 37219 +IGJyYW5kZWQ= 37220 +bG9v 37221 +IGR1ZA== 37222 +IHJhbmRvbWl6ZWQ= 37223 +IGNvbWJpbg== 37224 +aWVyYW4= 37225 +Y3plbmlh 37226 +IGN1cmF0b3I= 37227 +IGFydGVyeQ== 37228 +INGD0Yg= 37229 +INGH0LjRgg== 37230 +IHN1YnNpZGllcw== 37231 +IGJsb3Nzb20= 37232 +IFR3aWxpZ2h0 37233 +IGh5dsOk 37234 +IFBvbXBl 37235 +IENpc2Nv 37236 +INCf0YDQvg== 37237 +IGJpcmk= 37238 +IGdlcm4= 37239 +IHJlYnVpbHQ= 37240 +IHdjemU= 37241 +IGJlbmVmaWNp 37242 +IGRydW1tZXI= 37243 +IHNvbGlkcw== 37244 +IGRpeW9yc3Vu 37245 +bGF0ZWQ= 37246 +IG11ZGR5 37247 +IGhvbG9n 37248 +IGNsYXBz 37249 +IFJpbmdz 37250 +IE9rZXk= 37251 +IEJyYXZl 37252 +IHZhbHVhdGlvbg== 37253 +IG1pZ3JhbnQ= 37254 +IGludGVybWl0dA== 37255 +IGVpZ2VuZQ== 37256 +aWxpYXJ5 37257 +bWFya3Q= 37258 +a3I= 37259 +IFJpYg== 37260 +4buZaQ== 37261 +IGFjY3VzYXRpb25z 37262 +IGFyYWI= 37263 +d2FzaA== 37264 +IEJhcmR6bw== 37265 +IHVnaA== 37266 +ZXN0ZXJz 37267 +b3BocmVu 37268 +IGFsaW1lbnRvcw== 37269 +IFV6 37270 +1oI= 37271 +IDY1MA== 37272 +INC/0YDQuNC10YU= 37273 +Rkk= 37274 +IHNhbXBhaQ== 37275 +IHBhcmzDqQ== 37276 +aGVzaW9u 37277 +IHPEsXI= 37278 +IGFwcGFyYXR1cw== 37279 +IGNvcnJlbGF0ZWQ= 37280 +IFByaW5jaXBhbA== 37281 +IGNvcnI= 37282 +IE9mZmljaWFs 37283 +0LjRh9C10YHQutC40LU= 37284 +IHRlcm1pbmFscw== 37285 +U2hvdWxk 37286 +IHZhY3Vu 37287 +IHN0ZWxsdA== 37288 +IG1vb2k= 37289 +ZXR6dW5n 37290 +INC60YDQsA== 37291 +IGRhaQ== 37292 +INC/0L7Qtg== 37293 +VGVhbQ== 37294 +IFBQRQ== 37295 +INCe0YE= 37296 +IExlYWg= 37297 +IEl2eQ== 37298 +eXN0 37299 +IHVoaGg= 37300 +IG5pZ2h0dGltZQ== 37301 +IHRyZW5keQ== 37302 +IHNlY3VyaXRpZXM= 37303 +IGNvbnRpbmVudHM= 37304 +IGZpcnN0aGFuZA== 37305 +IFZlcm9u 37306 +IOuCrg== 37307 +IGJyb3dzaW5n 37308 +IENhZGE= 37309 +dHJv 37310 +IHRyYW1w 37311 +cmVpYg== 37312 +IGVyc3RtYWw= 37313 +aXJsZXI= 37314 +IHBzaWM= 37315 +IGdldGly 37316 +IE5Q 37317 +IGR6aWVjaQ== 37318 +0L7QsdGA0LDQtw== 37319 +IG1hZ2ljaWFu 37320 +IHNjcnV0aW55 37321 +IHNsYWI= 37322 +IE9U 37323 +aXN0eQ== 37324 +aXJpZXM= 37325 +b3Jlc3Q= 37326 +IHRhc2tlZA== 37327 +IG1vcmFsbHk= 37328 +7JW87KeA 37329 +dXN0ZXJlZA== 37330 +IGZvb2xz 37331 +IGlycmVzcG9ucw== 37332 +IGVpbmY= 37333 +IHZp4buHYw== 37334 +IHNjb3I= 37335 +IHBpbGxvd3M= 37336 +IEdlZ2Vu 37337 +IHR1dHRl 37338 +IHF1YXJ0ZXJseQ== 37339 +IGRpZG50 37340 +IEd5bQ== 37341 +IEV0aGVy 37342 +INir 37343 +0LvQuNGI0LrQvtC8 37344 +IHNpZ25hbGluZw== 37345 +IE5vZGU= 37346 +IERvbmNz 37347 +IHlhaA== 37348 +IEthbmFs 37349 +IGZhZGluZw== 37350 +ZXRpbg== 37351 +IGluZmx1ZW5jZXJz 37352 +IG1lZGFscw== 37353 +IGVuZ2luZWVyZWQ= 37354 +IGZlcm1lbnRlZA== 37355 +6rKg7KeA66eM 37356 +IEJlZXRob3Zlbg== 37357 +157XqQ== 37358 +aW5lbnRhbA== 37359 +IOyVjOugpA== 37360 +w7x0ZmVu 37361 +YWxueWE= 37362 +IG92ZXJl 37363 +IGRlbmt0 37364 +0LDQutGC0LXRgA== 37365 +IOKY 37366 +IG5lY2VzaXQ= 37367 +IGdlbmVyYXRvcnM= 37368 +Z3Jhc3M= 37369 +INC/0L7QtNGD0Lw= 37370 +bGllw59lbg== 37371 +QmFy 37372 +nOuPmQ== 37373 +INC00LXRgtC10Lk= 37374 +IHN1Y2tpbmc= 37375 +IHN0ZW5jaWw= 37376 +IHByaW1v 37377 +IEJyZWF0aA== 37378 +c3Ryb20= 37379 +IGltbWVuc2VseQ== 37380 +IGFwcHJlaA== 37381 +7KCV7J20 37382 +UG9w 37383 +IGpvbmc= 37384 +IEdpdWw= 37385 +IEFESEQ= 37386 +IGjDtnJlbg== 37387 +IGVsbw== 37388 +aXZlbnQ= 37389 +IHJ1cw== 37390 +IG91dHJhZ2VvdXM= 37391 +IG1hc3RlcmVk 37392 +IOy7pA== 37393 +2YjZgQ== 37394 +aXBlcw== 37395 +IFJ1ZHk= 37396 +SmFjb2I= 37397 +IGJ1bGxpc2g= 37398 +IHRhcHBlZA== 37399 +IGZhdWQ= 37400 +aXpvcGhyZW4= 37401 +INGB0L7RhQ== 37402 +IERhcmxpbmc= 37403 +IDE5NjM= 37404 +IFByZXZlbnRpb24= 37405 +spQ= 37406 +IGFiZG9taW5hbA== 37407 +c3RvbmVz 37408 +IGF2YWllbnQ= 37409 +4buVaQ== 37410 +bWFrZQ== 37411 +IHNhcmU= 37412 +IEluc3RhbnQ= 37413 +0LrQsNC8 37414 +IGtlZXBlcg== 37415 +IGJsYW5rZXRz 37416 +IHN3ZWF0cw== 37417 +IE1pbm5lYXBvbGlz 37418 +IGdlbm9tbWVu 37419 +IGZhc3Rlbg== 37420 +IEJydXNzZWxz 37421 +IGNhZmV0ZXI= 37422 +IGFic29yYmluZw== 37423 +IGhhZ28= 37424 +IEVsbW8= 37425 +IGd1c3Rv 37426 +IFlhcA== 37427 +TcO6c2ljYQ== 37428 +IHRlcnQ= 37429 +IGJhbmRh 37430 +IG1pbHk= 37431 +IHRoZXJlYWZ0ZXI= 37432 +IFN0b2NraG9sbQ== 37433 +IENhcnNvbg== 37434 +IGNhbGlicmF0aW9u 37435 +YXZhxZ8= 37436 +YW5zYQ== 37437 +aWtrZQ== 37438 +IGZvcmVzZWU= 37439 +IHF1YWxjaGU= 37440 +IGRlc3Rl 37441 +5qQ= 37442 +w7xuw7x6 37443 +IGZvcmdl 37444 +RGlz 37445 +ZXN0ZW4= 37446 +IM60zrnOsQ== 37447 +IGVuY2Fwcw== 37448 +IEdlc3By 37449 +IGNoZXJjaGVy 37450 +aWNrZXRz 37451 +0YLQvtGA0Ys= 37452 +Q3I= 37453 +INCi0LDQutC20LU= 37454 +IHJhYmJpdHM= 37455 +IERvdA== 37456 +aGVpdGVu 37457 +IGNhdXNhbA== 37458 +IEZvc3Rlcg== 37459 +YWrEhWM= 37460 +IGJlcmVpdA== 37461 +IGF5dWRhcg== 37462 +c29uZw== 37463 +Y29tYg== 37464 +IGZyaW5nZQ== 37465 +IGN5YmVyc2VjdXJpdHk= 37466 +IOucqA== 37467 +IGtpZXI= 37468 +IGJlc2Now6RmdA== 37469 +INC60L7QvdGG0LU= 37470 +IGZhY2lsaXQ= 37471 +IE5hbWVu 37472 +IGJpbGF0ZXJhbA== 37473 +dHg= 37474 +IFdpc3NlbnNjaGFmdA== 37475 +IG51YW5jZXM= 37476 +IHJpcHBpbmc= 37477 +IGZ5 37478 +IFNpY2hlcmhlaXQ= 37479 +IEdoYW5h 37480 +b2xvbg== 37481 +IHRvcHBlZA== 37482 +IE1vcm9jY28= 37483 +IHJhZGlhbA== 37484 +IExFRQ== 37485 +IEFuZHJlYXM= 37486 +ZWRk 37487 +IOyXtOs= 37488 +IEFpcmxpbmVz 37489 +IHZhbG9yZXM= 37490 +6rec 37491 +SHk= 37492 +INC30LDQtNCw0Yc= 37493 +IEtlbmRhbGw= 37494 +INGF0LDRgA== 37495 +IFZhbXA= 37496 +IHB5dGhvbg== 37497 +IG1hbmFnZWFibGU= 37498 +IEdlbnRl 37499 +b2lzZQ== 37500 +aWNpYXJ5 37501 +IGltcG9zcw== 37502 +IEJ1bm55 37503 +aWVzdGE= 37504 +QW5kcmV3 37505 +IHNlcnQ= 37506 +IENlYw== 37507 +enphcmVsbGE= 37508 +IGF1dG9tb2JpbGU= 37509 +IFRpZXJl 37510 +YWxsb3dz 37511 +IOuwgA== 37512 +IFNjb3Jw 37513 +IEplbGx5 37514 +YWdhcmE= 37515 +IFN0cmV0Y2g= 37516 +IHJlZGVm 37517 +IGV4YWNlcmI= 37518 +IFNIQQ== 37519 +w6lm 37520 +b3JzYQ== 37521 +IGZsYXdlZA== 37522 +IE5vZWw= 37523 +PyE/ 37524 +IHByb2NlbnQ= 37525 +IG1lbnN0cnU= 37526 +INC/0YDQvtGH 37527 +IGluZmFudHM= 37528 +8J+OtQ== 37529 +cGF1c2U= 37530 +IFJhY2luZw== 37531 +IDE5NDg= 37532 +IHN1cGVyaW50ZW5kZW50 37533 +aWRvcmVz 37534 +aWR5 37535 +YnJhaGlt 37536 +IHVubHVja3k= 37537 +IHBlcms= 37538 +YW5jaQ== 37539 +IOunjOuCmA== 37540 +INCc0L7RgdC60LI= 37541 +IGZpbmFucw== 37542 +IGRpZmVyZW5jaWE= 37543 +oIjsnbQ= 37544 +T1JZ 37545 +IFRhYw== 37546 +24zYpw== 37547 +IGRlc2Vt 37548 +INCy0LDQttC90L4= 37549 +IEpV 37550 +IOyeiOyeluyVhOyalA== 37551 +IM6d 37552 +IGluZm9ybWF0aW9ucw== 37553 +IEhFTA== 37554 +aHN0 37555 +INC/0L7Qs9C+0LLQvtGA 37556 +IHZvaXR1cmU= 37557 +IHJldXM= 37558 +w6RuZGln 37559 +INC/0L7RhdC+0LY= 37560 +amluZw== 37561 +IGRydQ== 37562 +YWx0cmE= 37563 +IHByb2R1aXRz 37564 +IGtpdGU= 37565 +IGV5ZWJhbGw= 37566 +IEJlbHQ= 37567 +IFJlc3RhdXJhbnQ= 37568 +IGdhbWI= 37569 +IHBvcnJpZGdl 37570 +aXR0ZXJz 37571 +IGNvbnZlcnRz 37572 +IHlhcmTEsW0= 37573 +IG3DoXhpbW8= 37574 +d2lydHNjaGFmdA== 37575 +IO2VmOuCmOs= 37576 +IOykgA== 37577 +IGljZWJlcmc= 37578 +IHZvcmJlaQ== 37579 +IDI1Ng== 37580 +b2NyYXRpYw== 37581 +IHJlY2tsZXNz 37582 +b25uZXI= 37583 +IG3DunM= 37584 +IGxvZ2ljYWxseQ== 37585 +IFByaXNvbg== 37586 +IE5ldHo= 37587 +IHZhY2FudA== 37588 +IG5pbW10 37589 +IEhBUlI= 37590 +INC30L7Qsg== 37591 +IERlZQ== 37592 +cmluZ2U= 37593 +bmllc3Q= 37594 +IFJ1bGVz 37595 +7Iqk65+9 37596 +Y3Vzc2lvbnM= 37597 +IGZsb3JhbA== 37598 +IGNvbnN0cmFpbmVk 37599 +IGRpZmZlcmVudGlhdGlvbg== 37600 +IFF1ZWJlYw== 37601 +INuB24zaug== 37602 +IHDDumJsaWNh 37603 +aXRlbA== 37604 +IGFjY29tbW9kYXRpb25z 37605 +IEdyw7w= 37606 +7Zw= 37607 +IHBpY2tsZXM= 37608 +0LjRh9C10YHQutC40YU= 37609 +IGNvbW1pc3Npb25z 37610 +IEJhZWs= 37611 +IMOnb2N1xJ8= 37612 +IE1lZGl1bQ== 37613 +IHBlcmlvZGljYWxseQ== 37614 +IHdvbmRlcmZ1bGx5 37615 +IHN0YWZmaW5n 37616 +7JuQ6w== 37617 +cmlyZQ== 37618 +Zmxl 37619 +IE1jTA== 37620 +INGC0LXQvw== 37621 +INC/0LXRgNC10Lo= 37622 +0L3QvtC70L7Qsw== 37623 +IO2BrOqyjA== 37624 +IHByb3NwZXJvdXM= 37625 +IFNwaXJpdHVhbA== 37626 +IENoaWNr 37627 +RElB 37628 +INCf0YDQuNCy0LXRgg== 37629 +IHBlcsOt 37630 +0YzRjtGC 37631 +IGNvbnN1bHRhbnRz 37632 +IEVhcmw= 37633 +IHJ1aW5pbmc= 37634 +0L7RgNC1 37635 +IHBlbnNlcg== 37636 +IHRha2llag== 37637 +IHN0cmVuZ3RoZW5lZA== 37638 +IExpcXVpZA== 37639 +0L7QvdC10YY= 37640 +0LDQstCw0YLRjA== 37641 +IGNhbWVy 37642 +IGRpc2FncmVlbWVudA== 37643 +IGJhdGhpbmc= 37644 +IFlvc2g= 37645 +YWFs 37646 +cHJlY2hlbg== 37647 +UklTQURBUw== 37648 +IHN1cGVyc3Rhcg== 37649 +0LvRj9GC0Yw= 37650 +IG5pYg== 37651 +IFRoZXJt 37652 +IERBTklFTA== 37653 +IHBhdw== 37654 +IGxpcXVpZHM= 37655 +IGNhcGFjaXQ= 37656 +YXJrZW4= 37657 +IHZhZ2luYQ== 37658 +IG1hc2hlZA== 37659 +IGVtZXJnZXM= 37660 +eXNjeQ== 37661 +IHVucmVsYXRlZA== 37662 +IEd1aWxk 37663 +IGludmVydGVk 37664 +aXRpdmVz 37665 +VHJh 37666 +IGJlZ3I= 37667 +IGFsdGU= 37668 +7KeV 37669 +INGA0LDQt9GA0LDQsdC+0YI= 37670 +ZmluZGVy 37671 +INC00LDQu9C10LU= 37672 +INCx0LvQsNCz0L7QtNCw0YA= 37673 +d2Fsa2Vy 37674 +IGNyYXRlcg== 37675 +YXNzYWRvcnM= 37676 +cmVuY2Vz 37677 +aW5za2k= 37678 +IEtJTQ== 37679 +IEVsbGlvdA== 37680 +MjAxNw== 37681 +IFNy 37682 +aW5rYQ== 37683 +YW5vdg== 37684 +IOyemOuquw== 37685 +IHByb3ByaWV0YXJ5 37686 +ZGlzcGxheXN0eWxl 37687 +INGB0LjQvA== 37688 +INC40LfQsQ== 37689 +IFBhbmVs 37690 +IGluc3RpbmN0cw== 37691 +IENvbW11bmljYXRpb25z 37692 +bWlkdA== 37693 +IOunjOuTpOyWtA== 37694 +INGB0LvQvtCy0LA= 37695 +IEdpbGJlcnQ= 37696 +0KLQsNC6 37697 +dm9vcmJlZWxk 37698 +0LXRjtGB0Yw= 37699 +YXJ5bg== 37700 +cXVleg== 37701 +IGRhcnQ= 37702 +0ZbRiA== 37703 +IEh1dA== 37704 +U2Fs 37705 +IHNvdXRoZWFzdA== 37706 +IHBlc3RpY2lkZXM= 37707 +IGhlbGljb3B0ZXJz 37708 +IGVuZHVyZWQ= 37709 +aWFkYQ== 37710 +IGJyZXdpbmc= 37711 +7Jes6w== 37712 +INGB0LLQvtCx0L7QtA== 37713 +IFNhaW50cw== 37714 +IEZyYW7Dp2Fpcw== 37715 +IEVjb25vbWljcw== 37716 +IGRpc2xvYw== 37717 +b3Bob2JpYQ== 37718 +Q2FtZXI= 37719 +IG5lZ290aWF0ZWQ= 37720 +INGB0YLQsNC70Lg= 37721 +7Iqk7YE= 37722 +b2dpZQ== 37723 +IHRzdW5hbWk= 37724 +IHBlZWxlZA== 37725 +IG1vdGl2YXRpb25z 37726 +b3N0YXQ= 37727 +Zmxhbg== 37728 +IERBQw== 37729 +IGthdg== 37730 +J1JF 37731 +IFBlYXJzb24= 37732 +YmJl 37733 +Y3plbmll 37734 +IGF0ZW7Dp8Ojbw== 37735 +7Ya166C5 37736 +INGD0LTQsNGA 37737 +IGludHJvZHVjdG9yeQ== 37738 +IEljaQ== 37739 +64yA6w== 37740 +YWthdA== 37741 +IHRyZW5jaA== 37742 +IHByb2NlZWRlZA== 37743 +IENvaW4= 37744 +IGRlcmVjaG8= 37745 +IFJlZGU= 37746 +0LDQvdC90YvQuQ== 37747 +IGluY2FyY2VyYXRlZA== 37748 +IFJpY2htb25k 37749 +Um9jaw== 37750 +IFBhdg== 37751 +IEthcm1h 37752 +dWdlcw== 37753 +IGNvbnRlw7o= 37754 +67mE 37755 +IOq3uOunjA== 37756 +IEdvbmU= 37757 +IHdzcMOzxYI= 37758 +IFJhaG1lbg== 37759 +dW5rZW4= 37760 +IOykkeyalO2VnA== 37761 +IGli 37762 +IGF0dGFjaGluZw== 37763 +SGF5 37764 +IHN1a2E= 37765 +7I25 37766 +IHBpdm90YWw= 37767 +IFJlc3BlY3Q= 37768 +w61kYQ== 37769 +SUI= 37770 +IFZlcmFudHdvcnQ= 37771 +d2lldA== 37772 +IGZvcmVuc2lj 37773 +0YDQuNGB0YI= 37774 +INC/0YDQuNC90YbQuNC/0LU= 37775 +IG1hcmtpbmdz 37776 +IGtldHRsZQ== 37777 +IE9wZXJh 37778 +IERvY3RvcnM= 37779 +IHNocmVkZGVk 37780 +IHJlY3Vlcg== 37781 +IHZpZ2ls 37782 +IEZhaWw= 37783 +IGVudHJldg== 37784 +INC00YPRiA== 37785 +IG91dGJyZWFrcw== 37786 +IM+Azr8= 37787 +IHJvZ3Vl 37788 +YW5nbGVk 37789 +IHllYXJseQ== 37790 +IENyZWVk 37791 +IHdhbQ== 37792 +IGxvdHVz 37793 +6rO86w== 37794 +44CB44CB 37795 +IFNwaXQ= 37796 +IEl0dQ== 37797 +IHN0cmFpbnM= 37798 +IHN0YW1wZWQ= 37799 +IHBsYWludA== 37800 +IHBvdGlvbg== 37801 +IGNvbnNvbGlkYXRpb24= 37802 +0L7Rh9C60YM= 37803 +IHZsb2dnaW5n 37804 +IHNsYXRl 37805 +IEF1ZnQ= 37806 +IEluY29y 37807 +4burbmc= 37808 +p5A= 37809 +ZW5o 37810 +IGhlacOf 37811 +IGRvbWVzdA== 37812 +IFN0cm9t 37813 +YWtpcw== 37814 +IGZyYWdlbg== 37815 +IGZpbmVy 37816 +IFN1Zw== 37817 +IHVwaGlsbA== 37818 +IMOpw6lu 37819 +4oCmKQ== 37820 +INGB0L7Qvw== 37821 +IENvcmV5 37822 +IHNpZWJpZQ== 37823 +IG11c2U= 37824 +IGNsb3Zlcw== 37825 +IHBvdXM= 37826 +IEZpbmFueg== 37827 +IFJvdXRl 37828 +YW1hdA== 37829 +IG11dHVhbGx5 37830 +INCy0L3Rg9GC0YDQuA== 37831 +IFNlbGVuYQ== 37832 +65Q= 37833 +IEdhdXNzaWFu 37834 +67aA7YSw 37835 +INeR15s= 37836 +IGVqZXJj 37837 +a2Vh 37838 +IEdlcnJ5 37839 +IFNpYw== 37840 +IDE5NjY= 37841 +aWVzZQ== 37842 +IGZvc3NpbHM= 37843 +IGVzdGFk 37844 +IEthbmU= 37845 +Y2nEhw== 37846 +IOycoO2KnOs= 37847 +INC/0LDQvA== 37848 +IENydWlzZQ== 37849 +aW50w6lyaWV1cg== 37850 +IGJla2FubnQ= 37851 +IFBvZGU= 37852 +IGRlbWFuZGVy 37853 +UmVt 37854 +IGludmFkZQ== 37855 +IGRlY29yYXRpbmc= 37856 +cm9waWM= 37857 +IGNvd2JveQ== 37858 +IFBob3Rv 37859 +b3BvbGl0 37860 +IOy7rOufrOs= 37861 +IHJlYXA= 37862 +IGhhbmR3cml0aW5n 37863 +4LmE4Lij 37864 +IOua 37865 +INio2LnYrw== 37866 +IE10 37867 +2YA= 37868 +IHNwYWNlc2hpcA== 37869 +IG5hdGlvbmFsaXNt 37870 +IGNvdW5jaWxz 37871 +IEdyaWZmaW4= 37872 +IEFobWVk 37873 +IGNsaWNo 37874 +IE9M 37875 +d2w= 37876 +IFBpbG90 37877 +IGFjcm9ueW0= 37878 +IGdlbHM= 37879 +IGVsZWN0cm9seQ== 37880 +6JM= 37881 +INC80L3QvtC5 37882 +IGVwaXNvZA== 37883 +IERpZXNlcw== 37884 +IEFUUA== 37885 +IGVkaXlvcnVt 37886 +IGV4cHJlc3Nlcw== 37887 +IGV4aGliaXRz 37888 +Q29tbQ== 37889 +INC60YDRg9C/ 37890 +IG1hdGFy 37891 +IDIwMjU= 37892 +IEFydGVt 37893 +dmFzaXZl 37894 +csOg 37895 +IGJlxZ8= 37896 +IGxpemFyZA== 37897 +IGZpbGxl 37898 +IOyniOusuA== 37899 +INC80L7RiQ== 37900 +IHTDvHI= 37901 +IGN1bHByaXQ= 37902 +IHdvdmVu 37903 +IEFOWQ== 37904 +bmlt 37905 +IHRheQ== 37906 +IHByb21pbg== 37907 +IGFjb21wYQ== 37908 +IGlkw6k= 37909 +IGJvaWxlcg== 37910 +IFRoZW1lbg== 37911 +IGF2ZW51ZQ== 37912 +IE11ZA== 37913 +INC90L7QstGL0LU= 37914 +IHdpdG5lc3Npbmc= 37915 +IGxhbmNl 37916 +IENIQU4= 37917 +IEJldmVy 37918 +2KrZhQ== 37919 +IGNoZW1vdGhlcmFweQ== 37920 +S2luZw== 37921 +IGLEmWTEmQ== 37922 +IGF0dWFs 37923 +IHRpdmU= 37924 +IHRhbGtpbg== 37925 +IHF1ZWRhcg== 37926 +aWXDnw== 37927 +ZWRlbA== 37928 +IOyWtOygnA== 37929 +IGpvZ2Fy 37930 +IMO2cg== 37931 +IHVuZGVydGFraW5n 37932 +IFN0cmVuZ3Ro 37933 +IG1pbGjDtWVz 37934 +IFdpbmU= 37935 +IE1vbHQ= 37936 +IHVuZGVybWluZQ== 37937 +IEFyY2hpdmVz 37938 +dmFuYQ== 37939 +bWVyY2lhbA== 37940 +TUM= 37941 +IGNhc3Rl 37942 +0L/RgA== 37943 +IGxlZ2lzbGF0b3Jz 37944 +dWxhdG9ycw== 37945 +w6puaW8= 37946 +IOuNsOs= 37947 +INGF0L7RgtC40YLQtQ== 37948 +INC90LXQug== 37949 +IHN1cm4= 37950 +IGNvbnNjaQ== 37951 +IFBPVw== 37952 +IGN1bGluYXJ5 37953 +IEtBVA== 37954 +IEZvbGtz 37955 +0YvQstCw0LXQvA== 37956 +INCy0L7Qug== 37957 +c2VydmljZQ== 37958 +cHRz 37959 +INC/0L7QsdC10LQ= 37960 +IHRlbnRz 37961 +IG5vcmQ= 37962 +U1RF 37963 +IHJlcHVibGljYW4= 37964 +IHd5aw== 37965 +IG1pbmlvbnM= 37966 +IG1lbWFuZw== 37967 +amVzdA== 37968 +IGNvbXBhcmF0aXZl 37969 +IHR5bGU= 37970 +Y2FyYm9u 37971 +YmVkaW5ndA== 37972 +a3Nlbg== 37973 +IG5lZ2F0aXZpdHk= 37974 +IHNqw6Rsdg== 37975 +IGTDug== 37976 +IHJlY2FsbGVk 37977 +Y3Jh 37978 +IFRhZGE= 37979 +INGA0YPQutC4 37980 +INC+0L/RgNC10LTQtdC7 37981 +IHByb2NyYXN0 37982 +IGpvZ29z 37983 +IE9v 37984 +IEhlYXJ0cw== 37985 +IMOpY2g= 37986 +IGtzacSFxbw= 37987 +IGNvYXJzZQ== 37988 +IFR1YmU= 37989 +IEdyZWVucw== 37990 +IMOpbg== 37991 +IGR1bWJiZWxs 37992 +INGC0Lg= 37993 +IHF1ZXJlcg== 37994 +2KfYrQ== 37995 +z4POtc65 37996 +INC/0YDQsNCy0LjQu9GM0L3Qvg== 37997 +INC/0LDQvw== 37998 +IGNvbXByYQ== 37999 +IHTDqXI= 38000 +IEFudGVz 38001 +IG9wdGltdW0= 38002 +IGJpc2N1aXQ= 38003 +zrrOuQ== 38004 +YWN6ZWdv 38005 +IOyLnOqwhOydtA== 38006 +IE1hcmluZXM= 38007 +dmVybw== 38008 +IHZhY2NpbmF0aW9ucw== 38009 +IHBldHR5 38010 +cml0ZXJz 38011 +INCw0Ls= 38012 +Y291bnRyeQ== 38013 +IGNvdW50ZXJz 38014 +IGF0dGVuZGFudA== 38015 +IEh1aQ== 38016 +Y2th 38017 +0YHRgtCy0LXQvdC90YvQuQ== 38018 +Z3V5 38019 +IHRyaWNrZWQ= 38020 +IFJFRA== 38021 +IHRocmlsbGluZw== 38022 +z4DOv865 38023 +IHBpZ2d5 38024 +IGFudW5jaQ== 38025 +T1JURVI= 38026 +IFZhbHVl 38027 +IHJvbmQ= 38028 +IEFEQQ== 38029 +IHBvc2Vy 38030 +aG9yZXM= 38031 +IFJvbGFuZA== 38032 +k68= 38033 +IG5vaXI= 38034 +INep15DX 38035 +67Cc 38036 +aWVtYW5k 38037 +INC/0L7RgtC10YA= 38038 +6rOz 38039 +IOqxsQ== 38040 +IGZvcm1hdHRpbmc= 38041 +IExlZA== 38042 +IGtpbGxlcnM= 38043 +IMSR4bqleQ== 38044 +IGhhYXI= 38045 +YWdhaW4= 38046 +ITwv 38047 +IHNvbWV0aGlu 38048 +IGNvdWdoaW5n 38049 +IG5hdmU= 38050 +IHByb3NwZWN0aXZl 38051 +IEhL 38052 +IFJlc2N1ZQ== 38053 +bWF5YmU= 38054 +Z2dlcg== 38055 +INGA0LDQsdC+0YLRgw== 38056 +15XXnNed 38057 +dGFpbHM= 38058 +7ZWY7ZWY 38059 +IGV5ZWxpZA== 38060 +IGN1c3RvbWl6YXRpb24= 38061 +YXZpbGlvbg== 38062 +IHByb2NoYWlu 38063 +IGdsYXpl 38064 +U2lt 38065 +INC+0L/QsNGB 38066 +IG1vc3F1aXRvZXM= 38067 +IGZlbnQ= 38068 +IGNhcGFjaXRpZXM= 38069 +IGFwb3N0bGVz 38070 +IGFsdHVyYQ== 38071 +IOusuw== 38072 +IHNlcm9udA== 38073 +IEFueXRpbWU= 38074 +pbTripQ= 38075 +IGNvc3BsYXk= 38076 +IHNwYWM= 38077 +IHNhbWVu 38078 +dWNj 38079 +acOocmVz 38080 +IHNpYmxpbmc= 38081 +IENvY2s= 38082 +IOuPhQ== 38083 +INC/0YDQtdC00YHRgtCw0LLQu9GP 38084 +IGluc3RhbGxtZW50 38085 +IGRpamU= 38086 +IE1DVQ== 38087 +IEVI 38088 +IE5pbmc= 38089 +IHByZXBhcmVz 38090 +IGh5cG9jcg== 38091 +cHR5 38092 +IGthZMSxbg== 38093 +IEZyb3plbg== 38094 +aGF1bA== 38095 +IEt5bGll 38096 +IHNodWZmbGU= 38097 +IGVsZW1lbnRhbA== 38098 +IGF1w59lcg== 38099 +IEtOT1c= 38100 +IEFMSVNTQQ== 38101 +WkE= 38102 +7LKg 38103 +IHJlY2l0ZQ== 38104 +IHNjcmli 38105 +IDExNQ== 38106 +IHN0YXJyZWQ= 38107 +IGxlcXVlbA== 38108 +IGJyZXdlcg== 38109 +IE9wcG9ydHVu 38110 +IHLDpA== 38111 +IGNob3BzdGlja3M= 38112 +IEthaA== 38113 +IEV0aGlvcGlh 38114 +IGhhbmRtYWRl 38115 +IGVyZm9sZw== 38116 +IER6 38117 +aXR0ZW5z 38118 +0LLQsNC7 38119 +zrfOvQ== 38120 +YnJpbmdlbg== 38121 +IHVucGx1Zw== 38122 +IG9mZnM= 38123 +IGhlcm1hbg== 38124 +bGllZA== 38125 +YXNvbmlj 38126 +IFNlcmJpYQ== 38127 +IEd1YXRlbQ== 38128 +IC4uLiI= 38129 +IGVycmVpY2hlbg== 38130 +IGFtYmlndW91cw== 38131 +IFdoaXRuZXk= 38132 +enVm 38133 +TUFORA== 38134 +oLU= 38135 +IHNxdWVlemVk 38136 +eWFz 38137 +IFNob2Nr 38138 +IHV0aWxpc2U= 38139 +dWtv 38140 +Ym9sdA== 38141 +IG1vdGlm 38142 +IGlubWF0ZXM= 38143 +IGNvcnJ1cHRlZA== 38144 +IGNvbmNyZXQ= 38145 +IENyaXRpY2Fs 38146 +IFNpbmdpbmc= 38147 +INGE0YPQvdC6 38148 +bm92YQ== 38149 +cmViYmU= 38150 +ZHQ= 38151 +VW5pcw== 38152 +IHdlYmNhbQ== 38153 +IGNhbW91Zmw= 38154 +S2Vu 38155 +IGxhd3N1aXRz 38156 +IENvbnN1bWVy 38157 +IHJlY29sbA== 38158 +IGtsZWluZXI= 38159 +IEZJRkE= 38160 +IDE5NjI= 38161 +IG1hbGFk 38162 +IOywvQ== 38163 +IMOldA== 38164 +IGluZmx1ZW5jZXI= 38165 +IEFydGlzdA== 38166 +c3Rp 38167 +4Lin4Lii 38168 +eXPFgg== 38169 +IEJpYW4= 38170 +iOuEpA== 38171 +IGZpcmVwbGFjZQ== 38172 +IEFwcGxpY2F0aW9u 38173 +IG1uaWVq 38174 +IGFjaWRpYw== 38175 +IE1vcm1vbg== 38176 +c3Nh 38177 +IHNuZWFreQ== 38178 +IG9qb3M= 38179 +IHZvdWQ= 38180 +IERhaQ== 38181 +IGdyYXNzcm9vdHM= 38182 +IFVuYmVsaWV2YWJsZQ== 38183 +IEdhYmU= 38184 +IEV4dHJlbWU= 38185 +IGhhc3NsZQ== 38186 +IGNvYg== 38187 +bXVtYmxpbmc= 38188 +UGFzcw== 38189 +jOufrA== 38190 +IHN5c3RlbWF0aWNhbGx5 38191 +IHNldmVudGVlbg== 38192 +z4DOtc65 38193 +4pmh 38194 +INC60L7Rgg== 38195 +IHNlbmRpcmk= 38196 +IGJhdGhyb29tcw== 38197 +IFN0ZXJu 38198 +IEFyZHVpbm8= 38199 +6Lk= 38200 +Y3JpYmluZw== 38201 +IHJlb3BlbmluZw== 38202 +IGNlcnY= 38203 +cGVl 38204 +QVJJ 38205 +IGNhZHJl 38206 +IEFuY2g= 38207 +TGVl 38208 +IE1BWA== 38209 +IG3DpG5u 38210 +IGNob3Jlcw== 38211 +IGFkZXNzbw== 38212 +IE5pZw== 38213 +IGRpc3NlcnRhdGlvbg== 38214 +IFZheQ== 38215 +U1RBTEs= 38216 +0LDQutCw 38217 +YXZhdA== 38218 +IHB1bmt0 38219 +IHBhZGRpbmc= 38220 +IFRlbXBs 38221 +IGVqZQ== 38222 +IO2EsA== 38223 +IGF6dA== 38224 +IOuMgO2GteuguQ== 38225 +IHJlYXJyYW5nZQ== 38226 +w6FjaA== 38227 +IOyCrOuejOuTpA== 38228 +IGZyZWFraW4= 38229 +Y3JpcmU= 38230 +IOy7pOs= 38231 +IEV4cGxhaW4= 38232 +IM+Ez4nOvQ== 38233 +IGJvZGlseQ== 38234 +IExlaXN0 38235 +IHNpZ3Vp 38236 +IGJ1bmtlcg== 38237 +IGF6dWw= 38238 +IEhhdXNo 38239 +U3Vi 38240 +INCQ0L3QtA== 38241 +INC60YDQsNC5 38242 +IGlsbGVnYWxseQ== 38243 +IE11eQ== 38244 +IEZlaQ== 38245 +IEJhbmFuYQ== 38246 +IHNjaG9sYXJseQ== 38247 +IFByenk= 38248 +IE1vc3M= 38249 +IEZpbHRlcg== 38250 +IOyWtOuWoQ== 38251 +IE1heHdlbGw= 38252 +dGVuc2U= 38253 +IGxvbmdpdHVk 38254 +IGxhbmdzYW0= 38255 +INee16c= 38256 +c21pdGg= 38257 +aXphZGE= 38258 +INC90L7RgNC80LDQu9GM0L3Qvg== 38259 +IFZvbGw= 38260 +IEVsZW5h 38261 +INGF0L7RgtGM 38262 +IERhYmVp 38263 +IGNvbnNlcnZhdGl2ZXM= 38264 +IHByw7Nwcmlh 38265 +IERpZXNlcg== 38266 +IEJyZW5kYQ== 38267 +b29raWU= 38268 +IGJhbmM= 38269 +7J207KY= 38270 +7JuD7J2M 38271 +IGtlaA== 38272 +IHdlZGRpbmdz 38273 +IHRodW5kZXJzdG9ybQ== 38274 +IENvb3JkaW4= 38275 +7IiY6rCA 38276 +IHByemVjaQ== 38277 +T1NTVEFMSw== 38278 +bWFhbg== 38279 +IOqxtOs= 38280 +INio2Yc= 38281 +IMW8YWQ= 38282 +IHlhY2h0 38283 +IGfDtnQ= 38284 +IGJsZWFjaA== 38285 +IHNob3J0ZW4= 38286 +INGB0YLQsNC70L4= 38287 +dXNhbg== 38288 +IOyekOyXsA== 38289 +IGRlcnM= 38290 +eGlz 38291 +jZTri4g= 38292 +IHF1YW50aWRhZGU= 38293 +IG9wcHJlc3NlZA== 38294 +INC30LDQutC+0L3Rhw== 38295 +INGH0LXRgtGL 38296 +INCd0LDQv9GA0LjQvNC10YA= 38297 +dWxw 38298 +2YLZiNmE 38299 +0L7Rh9C1 38300 +zqzOuw== 38301 +emVuaXU= 38302 +IGZvcm1hdGlvbnM= 38303 +IHNwYXJrZWQ= 38304 +IEVudHdpY2tsdW5n 38305 +YWxscw== 38306 +IHZpdmly 38307 +IGV4cGlyYXRpb24= 38308 +b3RpbmU= 38309 +INCn0LXRgA== 38310 +IFR1cm5pbmc= 38311 +IHRhcmlmZnM= 38312 +IG5hc3TEmXA= 38313 +IGFiaWRl 38314 +aWtzaQ== 38315 +IGZsYXNoZXM= 38316 +IGRpc3B1dGVz 38317 +IOyytA== 38318 +IG1lcmFr 38319 +IGVub3Jtb3VzbHk= 38320 +emFobA== 38321 +IGbDvGhydA== 38322 +0LLQvtC9 38323 +INC30LDQstC40YE= 38324 +IHBlcnNldmVyYW5jZQ== 38325 +IGRpdmlkZW5kcw== 38326 +IGNvbnRlc3RhbnRz 38327 +IHByb3N6xJk= 38328 +IEZyYW5rZW4= 38329 +IGV4cGxvcmVy 38330 +IGJ1ZmZhbG8= 38331 +4oCV 38332 +IGVjb2xvZ3k= 38333 +IHNjYWxhcg== 38334 +IGNyYW4= 38335 +zrXPhM6xzrk= 38336 +xbx5xIc= 38337 +IOyalOs= 38338 +IGdpYQ== 38339 +IEdvZw== 38340 +IFByaXY= 38341 +IOunkOydhA== 38342 +IFJlYXNvbg== 38343 +cmFrdGlvbg== 38344 +IERlYm9yYWg= 38345 +IGtpdHRlbg== 38346 +IEVkaW4= 38347 +cGllag== 38348 +IOuLtA== 38349 +IG3DoXF1 38350 +IGJpZGRpbmc= 38351 +IGFmZmluaXR5 38352 +IGFpa2E= 38353 +Zm9saw== 38354 +IENvbnNl 38355 +IGRldXRzY2hlbg== 38356 +6IY= 38357 +IGRlYml0 38358 +xLHEn8Sxbg== 38359 +aXNlbA== 38360 +IOykkeq1rQ== 38361 +IOutkOqwgA== 38362 +IHRydXN0d29ydGh5 38363 +IFN0YXJ0ZWQ= 38364 +w7xyZA== 38365 +INC/0L7QvdGP0YLQvdC+ 38366 +IHNjaWVudGlmaWNhbGx5 38367 +UG9kcw== 38368 +Q1JPU1NUQUxL 38369 +IHByZWd1bnRhcw== 38370 +IGNhbG1pbmc= 38371 +IFByZW1pZXJl 38372 +15vXqQ== 38373 +INGF0L7Qu9C+0LQ= 38374 +IGNhcGl0YQ== 38375 +IHRvbWE= 38376 +IG11cm0= 38377 +IGZ1ZXJ6YQ== 38378 +IEhhbmk= 38379 +w7xm 38380 +YXJsb3M= 38381 +IGjDpHVm 38382 +IG9zb2J5 38383 +amVnbw== 38384 +INC/0LjRgQ== 38385 +IGNhbG1seQ== 38386 +aWRldA== 38387 +YnVjaA== 38388 +Z29uZQ== 38389 +IHZpc2Nvc2l0eQ== 38390 +IG1vZGFs 38391 +IGdlc2Ft 38392 +IEh6 38393 +IG11bmljaXBhbGl0aWVz 38394 +IGNpcmN1bGF0aW5n 38395 +b2xpbmE= 38396 +U2hv 38397 +IEJlbmVk 38398 +b2x1 38399 +IHJlc3Rz 38400 +IGzDpW5n 38401 +INCe0LTQvdCw0LrQvg== 38402 +IHByemV3 38403 +IHBlcHA= 38404 +IG1hcnJpYWdlcw== 38405 +IEJJRw== 38406 +YW5kYW4= 38407 +IG1hZ2ljYWxseQ== 38408 +IGJhYnlz 38409 +IOuMkw== 38410 +IGhhY2tlcnM= 38411 +QmFieQ== 38412 +IE1vbnN0 38413 +IGNpZXI= 38414 +IEFyYWJz 38415 +INC80LDQs9Cw0Lc= 38416 +IEluZG9uZXNpYW4= 38417 +IE1hcmt0 38418 +IGRhY2h0ZQ== 38419 +IFNjaMO8bGVy 38420 +IFZORA== 38421 +IHNwaWVsdA== 38422 +IHBlcmx1 38423 +INC/0YDQvtGF0L7QtA== 38424 +IHNhbHRlZA== 38425 +IGltcHJvdmlz 38426 +IEluc3Ry 38427 +dmVsbWVudGU= 38428 +IG5lc3M= 38429 +IGZ1bmd1cw== 38430 +IGNvbGxhYm9yYXRvcnM= 38431 +IFZpcnVz 38432 +ZXN0YXI= 38433 +IHByb2plY3Rvcg== 38434 +INCf0YDQsNCy 38435 +IGFnaWxpdHk= 38436 +15nXoNeV 38437 +ZXJlbA== 38438 +INCy0L7Qt9Cy 38439 +INCx0LDQtw== 38440 +IENhdGh5 38441 +xJ91 38442 +INCz0L7QstC+0YDQuNC7 38443 +YmlsaXR5 38444 +IExhbmM= 38445 +IEtpbWJlcmx5 38446 +IEJyaWVm 38447 +IHV0dmVjaw== 38448 +IGdvZ2dsZXM= 38449 +IHByZXNjaG9vbA== 38450 +QVRIRVI= 38451 +IG1vdGl2ZXM= 38452 +IEJvbmc= 38453 +RVg= 38454 +IGNoaWxseQ== 38455 +IEFkdmlzb3J5 38456 +4oCL4oCL 38457 +INC60L7RgtC+0YDQvtC8 38458 +IHRyYWl0b3I= 38459 +IGRlbWFzaWFkbw== 38460 +INGG0LXQvQ== 38461 +INC80L7QuA== 38462 +IG11bHRpZg== 38463 +7JSs 38464 +IEFsZXhpcw== 38465 +IHppZXQ= 38466 +IFJhbWE= 38467 +YnJhbmNl 38468 +IHNhbmN0aW9u 38469 +aXRvdXM= 38470 +15XXmg== 38471 +IOuztOuC 38472 +0YHRgtCw0L3QvtCy 38473 +INGA0LXRgQ== 38474 +IENodXJjaGlsbA== 38475 +INC/0YDQtdC3 38476 +IElP 38477 +IEdlZQ== 38478 +IEdhdGhlcg== 38479 +YXRvcmk= 38480 +VHlsZXI= 38481 +INC90LXQvNC90L7Qtg== 38482 +IGLDpWRl 38483 +IEtpbGxlcg== 38484 +IHR1YmVy 38485 +IFJhbWFkYW4= 38486 +4b8= 38487 +aWVodA== 38488 +IHN0cmFuZ2VseQ== 38489 +0LvRgw== 38490 +IHJlZGVzaWdu 38491 +IGluY3VtYg== 38492 +IGJlcmFiZXI= 38493 +IFZvbGtzd2FnZW4= 38494 +bWV0YWw= 38495 +ZHp5 38496 +cGNpw7Nu 38497 +IOyViuyVhA== 38498 +IEdvb2RuZXNz 38499 +0LjQstCw0LXRgtGB0Y8= 38500 +YmFobg== 38501 +IEFudGFyY3RpY2E= 38502 +0LXQutGC0L7RgA== 38503 +IGhvbWVvd25lcnM= 38504 +emVpZ3Q= 38505 +IO2YhOyerA== 38506 +7KeA64+E 38507 +IGdlb2dyYXBoaWNhbA== 38508 +dGhpbmtpbmc= 38509 +IGdvc3Rh 38510 +IEltYW0= 38511 +dWxpZmxvd2Vy 38512 +ZGFn 38513 +YW5udA== 38514 +YWtvdg== 38515 +IGRvd253YXJkcw== 38516 +7LK06rCA 38517 +Q1VCRQ== 38518 +INCa0YHRgtCw0YLQuA== 38519 +INC/0L7Qu9C+0LI= 38520 +IHBsYXRlYXU= 38521 +4bil 38522 +IGNobG9yaW5l 38523 +IGFjY2VsZXJhdG9y 38524 +IHNvbHZlcw== 38525 +IEdyYXNz 38526 +cGlhbm8= 38527 +INqp2Kc= 38528 +INio2Ko= 38529 +IFJvY2hlc3Rlcg== 38530 +INmH2Yo= 38531 +IGNvbGxlY3Rz 38532 +jZTrnbw= 38533 +IENoZWVy 38534 +bGluZ2Vu 38535 +INGA0LDQt9Cz 38536 +IGFtw6lyaWM= 38537 +aHRh 38538 +RUNU 38539 +IGFydGlmaWM= 38540 +IFBheVBhbA== 38541 +aGFuYQ== 38542 +U3RlcGhlbg== 38543 +IEdlc3Q= 38544 +cGhhbHQ= 38545 +IHJlcGxpY2F0aW9u 38546 +IFdpbGxpZQ== 38547 +IG5ldXRy 38548 +IGlycmF0aW9uYWw= 38549 +IGRhZG9z 38550 +IEFpZA== 38551 +a2Ft 38552 +YW50ZXI= 38553 +INC00YPQttC1 38554 +IGRldG9u 38555 +IGhhcmU= 38556 +IGJldHM= 38557 +YmFnYWk= 38558 +IHN0YWluZWQ= 38559 +IHBsYXVzaWJsZQ== 38560 +IHBlZWxpbmc= 38561 +IGNyw610 38562 +IGdyb3Rl 38563 +7Law 38564 +pbTqsow= 38565 +YWx0ZXQ= 38566 +UGhvbmU= 38567 +Rmls 38568 +U1FM 38569 +IGdlZmFsbGVu 38570 +IHNhw7pkZQ== 38571 +IFRhbWls 38572 +Y291cw== 38573 +INCz0LvQsNCy0L3QvtC1 38574 +IGF0cmF2w6lz 38575 +dXNzaWE= 38576 +IHp3ZWl0ZW4= 38577 +IEVsdmlz 38578 +IG1vdmVy 38579 +IGxpbWl0ZQ== 38580 +YXJleg== 38581 +pbTqs6A= 38582 +IEtyYW5rZW4= 38583 +w7xyZQ== 38584 +IOyViuyVhOyalA== 38585 +IHRow6BuaA== 38586 +IHByb2ZvdW5kbHk= 38587 +IGJlZHJvb21z 38588 +IHRvb3RocGFzdGU= 38589 +IEFjY2VwdA== 38590 +w6l0aWNv 38591 +IGvDvMOn 38592 +IEFyeQ== 38593 +YWRpbg== 38594 +IGdyYW51bGFy 38595 +ZWN0ZWQ= 38596 +IG1lbmphZGk= 38597 +IGNvbXBldGVuY2U= 38598 +ZG9j 38599 +IHNwYXJrbGluZw== 38600 +IOyii+ydhA== 38601 +IGNvbnN0cnVjdGluZw== 38602 +IGFtdXNlbWVudA== 38603 +IEluc3VyYW5jZQ== 38604 +IEZldWVy 38605 +IHJlbm92YXRpb24= 38606 +c3VjaA== 38607 +cGxhdA== 38608 +IHByb3N0aA== 38609 +IGJleQ== 38610 +IENvbXBsZXRlbHk= 38611 +IHpvZA== 38612 +YWxu 38613 +VmljdA== 38614 +IGNvbmZpcm1z 38615 +w6R0eg== 38616 +4pY= 38617 +aGFtbWVy 38618 +INC30L3QsNC10YI= 38619 +IGFkbWlyZWQ= 38620 +oOulvA== 38621 +IEZydWl0 38622 +ZXJ0ZW4= 38623 +IG5pZWNl 38624 +IFRpbnk= 38625 +IHBsdW1iaW5n 38626 +ZXJtYQ== 38627 +INC70LXQs9C60L4= 38628 +IHdpbmRzaGllbGQ= 38629 +INGB0LzQtdGA 38630 +IGJ6dw== 38631 +IGFib2xpdGlvbg== 38632 +IFNhZGhndXJ1 38633 +IHByZWFjaGVk 38634 +IENyZWF0aW5n 38635 +cGVyZWQ= 38636 +IHZvbG9udA== 38637 +IHF1aW50 38638 +IHByaW50ZXJz 38639 +IG5lZ3Jv 38640 +IGdyb3NzZQ== 38641 +IFRoeQ== 38642 +IEZlbGxvd3M= 38643 +IHN0YW5pZQ== 38644 +IG5ld2NvbQ== 38645 +IEh1ZQ== 38646 +IEZyZXVuZGU= 38647 +IENvbnN0cnVjdGlvbg== 38648 +IGFkdmVyc2l0eQ== 38649 +IG5lZ2F0aXZlcw== 38650 +IGhhemFyZG91cw== 38651 +IGNvbXBlbGxlZA== 38652 +IHdvaw== 38653 +IE95 38654 +0L/QsA== 38655 +qqjr 38656 +IHJlbmRleg== 38657 +IG92ZXJj 38658 +IHdlYXZpbmc= 38659 +INC40LTQtdGC 38660 +IHByb3NlY3V0b3Jz 38661 +IGF1ZGlvYm9vaw== 38662 +IGFuY2VzdG9y 38663 +IHVuZGVyZ29pbmc= 38664 +IHBvdW5kaW5n 38665 +IO2SgA== 38666 +IOy2pA== 38667 +IHR1bGVl 38668 +IOyXtOw= 38669 +IHpvYWxz 38670 +IG5laW4= 38671 +IG9rZQ== 38672 +IEpveWNl 38673 +IG51ZA== 38674 +IGRpbGlnZW5jZQ== 38675 +IExhYnM= 38676 +IHZlbnRz 38677 +IGFuY2VzdHJhbA== 38678 +4Lir4Lih 38679 +INC80YPQttGH 38680 +IG5vbcOpcw== 38681 +d2FsaQ== 38682 +cWluZw== 38683 +IE11bHRpcGxl 38684 +IENvbnN1bHQ= 38685 +IGlzdGVkaQ== 38686 +IERveQ== 38687 +YWthaA== 38688 +IGRpc2NpcGxpbmVk 38689 +IGFsdGVybmF0aW5n 38690 +55I= 38691 +IHZlcm1l 38692 +INC+0Yk= 38693 +IHRvdGE= 38694 +IFByYWc= 38695 +IHN3b3Ju 38696 +IGJlYmVy 38697 +IEF1ZmdhYmU= 38698 +7Jq06w== 38699 +IHl1cA== 38700 +IHJlY2xhaW0= 38701 +b251dA== 38702 +IGF1Y3VuZQ== 38703 +IGFtcGg= 38704 +IMWbd2ll 38705 +IGFh 38706 +aXNjb3Zlcg== 38707 +IEFyZw== 38708 +Y2llxbw= 38709 +IGRlc3Nhcw== 38710 +IFfDpGg= 38711 +4bu5 38712 +INC00LDQstC90L4= 38713 +IHNpbGVudGx5 38714 +YXJj 38715 +IO2bhOuztA== 38716 +IHR3ZWV0aW5n 38717 +IE9uZA== 38718 +pqzrqbQ= 38719 +IGJvd2Vs 38720 +7IWo7Ja07JqU 38721 +T1NF 38722 +IHByb3Bpbw== 38723 +IEt1bnN0 38724 +a3VuZw== 38725 +IGRvbm7DqWVz 38726 +IEhvcml6b24= 38727 +IEZyb2c= 38728 +IGFyaXN0 38729 +w6Js 38730 +INC60L7Qtg== 38731 +IHNlZ3VuZG9z 38732 +IFNob3J0bHk= 38733 +IENyb3dk 38734 +aXJhbg== 38735 +IHfFgmHFm2Np 38736 +IExhYw== 38737 +aWRlbnRl 38738 +IOqwgOyekA== 38739 +IGxlbg== 38740 +IFNVUw== 38741 +IE1vdG9ycw== 38742 +IFRyZW50 38743 +b21pZQ== 38744 +IHRyYW5zbWl0dGVy 38745 +IEFzc2Fk 38746 +IHBzeWNoaWF0cmlj 38747 +INC20LjRgtGM 38748 +IG91dGxpbmVz 38749 +IGVmZmVjdGl2ZW1lbnQ= 38750 +IFJlbGlnaW9u 38751 +cHJlaA== 38752 +INC00L7Qu9C20L3QsA== 38753 +IM2hwrA= 38754 +IENvbnNlcnZhdGlvbg== 38755 +IOG7 38756 +INC30LDQuQ== 38757 +IHJlc2lkZQ== 38758 +IGNvbXBsZXRv 38759 +S0VO 38760 +IOuCmOyYpOuKlA== 38761 +IHN1YnVyYmFu 38762 +IHLDqXBvbmRyZQ== 38763 +INGA0LDQt9C70LjRhw== 38764 +IGdhbGxlcmllcw== 38765 +IHJhcHQ= 38766 +KS4uLg== 38767 +IGNydWVsdHk= 38768 +IFZNd2FyZQ== 38769 +7Yis 38770 +IGhhecSxcg== 38771 +IGdyb3VwaW5n 38772 +IFJpZGVy 38773 +IHN5bGxhYmxl 38774 +IGJlaXNwaWVsc3dlaXNl 38775 +IHNhZmVndWFyZA== 38776 +IHBlbMOtY3VsYQ== 38777 +YXJ0aQ== 38778 +INCh0L4= 38779 +IGNoZWdh 38780 +INC60L7QvNGD 38781 +IHNlaXNt 38782 +IGhhcm1sZXNz 38783 +IFdhcnJpb3Jz 38784 +INC/0YE= 38785 +IHNoYW1lbGVzcw== 38786 +IEJhdW0= 38787 +aW5zdGFsbA== 38788 +IHRvb2xraXQ= 38789 +IHBpcGVsaW5lcw== 38790 +IHB1c3N5 38791 +IGNvbmNlYWw= 38792 +IHByb3Rlc3Rpbmc= 38793 +b2Nob25k 38794 +IGR1YQ== 38795 +IFBvc2U= 38796 +IGhlbGl1bQ== 38797 +IFVY 38798 +aWtsZQ== 38799 +IFN1ZmY= 38800 +IOyEuOqzhA== 38801 +aW5nZXJz 38802 +INGB0LvRg9GH0LDQuQ== 38803 +IGRlc2NlbmRpbmc= 38804 +IG1vbnRhZ2U= 38805 +SGlnaA== 38806 +IOydtOyW 38807 +IElkaQ== 38808 +INeR16E= 38809 +IGV4cHJlc3NpdmU= 38810 +INC/0L7Qu9C10Lc= 38811 +IHBvbmU= 38812 +IGFkb2xlc2NlbnQ= 38813 +0LDQvdC90YvQtQ== 38814 +IGFzc2Fzc2luYXRpb24= 38815 +d2Vpc2Vu 38816 +ZW1hdGljYWxseQ== 38817 +YXV0aA== 38818 +IHVyZw== 38819 +IGdhbmhhcg== 38820 +IGZ1bmRv 38821 +IFJob2Rl 38822 +INC40YHRgtC+0YDQuNC4 38823 +IGNvbXBhcnRpbA== 38824 +IGRpbWluaXNoZWQ= 38825 +IGFwcHJlbnRpY2U= 38826 +INCR0YPQtA== 38827 +IHBob3RvbnM= 38828 +IGPDs2Q= 38829 +b25haw== 38830 +IGFkZWxhbnRl 38831 +IGNodQ== 38832 +b3BpYw== 38833 +IGFpeMOt 38834 +ZWRkYXI= 38835 +IENvbmdyYXRz 38836 +bW9y 38837 +IHJlc2VydmF0aW9ucw== 38838 +IFRvYnk= 38839 +IEtlcm4= 38840 +IHJhemVt 38841 +IGZvcmdlZA== 38842 +IGhvcnJpZnlpbmc= 38843 +2YrYuQ== 38844 +IEpvaW5pbmc= 38845 +IEF1dGg= 38846 +ZGFo 38847 +IGNvbnNpZw== 38848 +IGludGltaWRhdGVk 38849 +IHBlcmlwaGVyYWw= 38850 +IG1lbm8= 38851 +IGRldGVjdGluZw== 38852 +IHRlb3I= 38853 +IHRhZ2dlZA== 38854 +IG5vc3RhbGdpYw== 38855 +IOuvuOyViA== 38856 +IHZlcmRp 38857 +IGxhYmVsaW5n 38858 +0L/QvtC0 38859 +YXN0ZXM= 38860 +IHZpc3Q= 38861 +IGN5dA== 38862 +IGZsaXBz 38863 +0YDQuNC3 38864 +YmFsYW5jZWQ= 38865 +INC+0YjQuNCx 38866 +IGRlc3Rpbg== 38867 +bGFzc2U= 38868 +ZXJlaQ== 38869 +IGthbG8= 38870 +IGFycXU= 38871 +IHBsYW5v 38872 +IG9yZGluYW5jZQ== 38873 +IGNvbXBpbGF0aW9u 38874 +IFZvY8Oqcw== 38875 +IEVjbw== 38876 +IOy2lOyynA== 38877 +IGVuY2ltYQ== 38878 +IEdhcnJldHQ= 38879 +IENvcmQ= 38880 +w7Zsa2Vy 38881 +IEFycm93 38882 +IHByb3RvbnM= 38883 +LOKAiw== 38884 +IOyymOs= 38885 +IHNjYW5k 38886 +IGJlaWdl 38887 +Y29uZw== 38888 +IGJpa2luZw== 38889 +IFRM 38890 +0YPQvdC0 38891 +IOyGlOyngQ== 38892 +IFZpbGxh 38893 +IEpBQ0s= 38894 +IMO2xJ9yZW4= 38895 +IHRlbWFz 38896 +IEt5dW5n 38897 +SmVubg== 38898 +IGN1ZA== 38899 +IGltcG9zaW5n 38900 +IGNvbW1hbmRtZW50cw== 38901 +IE1lYW5z 38902 +IETDpHI= 38903 +IHJlY29tZW5k 38904 +IGRpc3Bvc2l0aW9u 38905 +2KfZhw== 38906 +IHRodQ== 38907 +IHJlZHVjdGlvbnM= 38908 +IGRpdQ== 38909 +INeV15DX 38910 +INC40YHRgdC70LXQtA== 38911 +dGhyZW4= 38912 +IGxhZG9z 38913 +IFJC 38914 +aXhlZA== 38915 +IOyP 38916 +RnI= 38917 +c3RpbGw= 38918 +IG9sbWFz 38919 +Q0hVQ0s= 38920 +IO2GoA== 38921 +IEluZGVwZW5kZW50 38922 +0JLQng== 38923 +IHBpdHM= 38924 +IHVuZGVydGFrZW4= 38925 +IGbDuHI= 38926 +IE5hdw== 38927 +IOyekeyXhQ== 38928 +IHNoZXBoZXJk 38929 +IGxhbmd1ZQ== 38930 +IEphYg== 38931 +IERydW0= 38932 +IEVsZWt0 38933 +4buRdA== 38934 +IOydtOyqvQ== 38935 +IGJlZ2lubmVu 38936 +IEZ1cnk= 38937 +4buDdQ== 38938 +c2VjdGlvbnM= 38939 +IHNwcmF5ZWQ= 38940 +IG3DoXI= 38941 +IFZvbHQ= 38942 +IFNlb25n 38943 +0LjRgtC10Ls= 38944 +ZHVjdGlvbg== 38945 +YXNhbg== 38946 +IGp1ZGdtZW50cw== 38947 +aW1hYW4= 38948 +nteq 38949 +IHNpZW50bw== 38950 +IEFDVA== 38951 +IEJI 38952 +ZGV2 38953 +IOyii+yVhO2VmA== 38954 +IGpvcm4= 38955 +SVNUSU4= 38956 +IHJvYXI= 38957 +IGltbWVyc2lvbg== 38958 +YWZmbGVz 38959 +IHRyYWluZWU= 38960 +IEJpbGxib2FyZA== 38961 +cmVzc2Vz 38962 +IFdhcm0= 38963 +IFJvYmVydG8= 38964 +IHV0aWxpeno= 38965 +IElnb3I= 38966 +IHJhc2g= 38967 +IGFuYWx5dGlj 38968 +aXJhbQ== 38969 +IHN5bW1ldHJpY2Fs 38970 +IGxpZmVzcGFu 38971 +IGVhdGVy 38972 +IEJsb29tYmVyZw== 38973 +YXRlcmlhbA== 38974 +IOuvvw== 38975 +IGlzdGVy 38976 +IGludmFsdWFibGU= 38977 +IGFzc2lzdGluZw== 38978 +IHNoYWNr 38979 +zrzOsc+EzrE= 38980 +amlz 38981 +ZW5peg== 38982 +INC/0YDQtdC00LvQvtC2 38983 +IGRlY2xhcmluZw== 38984 +IFZpa2luZw== 38985 +IEFzc2lt 38986 +IGV4cGVuZGl0dXJl 38987 +IHBvc2luZw== 38988 +IE9udW4= 38989 +IGluaWM= 38990 +0LDRjtGC0Yw= 38991 +cmV2 38992 +IG1pZWRv 38993 +IGZpbHRoeQ== 38994 +IElC 38995 +IERpc2NvdmVy 38996 +aWNodGV0 38997 +bWlsbGlvbg== 38998 +toTrk6TsnbQ= 38999 +IGFtYmlndQ== 39000 +IEZseW5u 39001 +YmFyZHppZWo= 39002 +IGluY29tcA== 39003 +0LDQstC90L4= 39004 +emlh 39005 +IGluZmx1ZW5jaW5n 39006 +IHdvcmxkbHk= 39007 +IFNhbGVzZm9yY2U= 39008 +emV0 39009 +IHBhcnRpY3VsaWVy 39010 +IEtvY2g= 39011 +IDE5NDM= 39012 +IHRvbmVy 39013 +INGN0LrRgdC/0LXRgA== 39014 +IHN1c2NyaQ== 39015 +IHRyaWdnZXJpbmc= 39016 +SUNFUw== 39017 +7Iqk6rCA 39018 +zrTOsQ== 39019 +0YDQsNCx0L7Rgg== 39020 +IGFmdGVyd2FyZA== 39021 +cGluZQ== 39022 +IElM 39023 +YXJldGg= 39024 +INC/0LDQuw== 39025 +IHNha2Vy 39026 +IDE5NDc= 39027 +QUY= 39028 +dXlvcnN1bg== 39029 +IOyKpOs= 39030 +IHF1YW50aWZ5 39031 +IG1lbnRvcnNoaXA= 39032 +IGxsZWdh 39033 +IFRhbWFyYQ== 39034 +IG9wdGltaXppbmc= 39035 +IGZyb250cw== 39036 +b3N0ZXJz 39037 +IGVzcXVlcg== 39038 +IHN1Ym1pc3Npb25z 39039 +IGFubmlo 39040 +IHN1Y3Rpb24= 39041 +bHVlbmNl 39042 +Y2hpZWRlbg== 39043 +SU5HUw== 39044 +INeR15Q= 39045 +INGB0YbQtdC9 39046 +IHdpZWx1 39047 +IG9iamV0bw== 39048 +IGJvb2Jz 39049 +IEdlc2Now6RmdA== 39050 +IGVhcmJ1ZHM= 39051 +INGA0LDQvdGM0YjQtQ== 39052 +IHJvdXRpbmVseQ== 39053 +IGNvbGxhZ2Vu 39054 +0L7QtNGL 39055 +IENpbm5hbW9u 39056 +IGJhaXg= 39057 +2K/ZhQ== 39058 +ZnJhZ2U= 39059 +INC60L3QvtC/ 39060 +IGRlY2VwdGlvbg== 39061 +IHVuZXhwZWN0ZWRseQ== 39062 +IHNtZWxsZWQ= 39063 +IGxvb3M= 39064 +IGhpZ2hsaWdodGVy 39065 +IOq4sOuzuA== 39066 +IEdsYXNnb3c= 39067 +b3dhbmE= 39068 +bW4= 39069 +IEplcmVtaWFo 39070 +IERhdGFi 39071 +aWV0ZQ== 39072 +IGJhdw== 39073 +IHByb3BpYQ== 39074 +IHByb3ByaQ== 39075 +T09PT09PT08= 39076 +aW5rZXI= 39077 +IHBlcnR1cmI= 39078 +IEZha2U= 39079 +7J207JY= 39080 +aW1taW5n 39081 +IHVuZG9jdW1lbnRlZA== 39082 +IHRyYWJhamFuZG8= 39083 +IHJvYW0= 39084 +INC00L7Qu9C20L3Qvg== 39085 +IGFyYmU= 39086 +IGFuaQ== 39087 +YXRhbA== 39088 +IGFyYWRh 39089 +IEFuZGE= 39090 +IOybgA== 39091 +IEJyYW5jaA== 39092 +b2lyZXM= 39093 +IG91dHNpZGVy 39094 +ZG9sbGFy 39095 +aXNzZXM= 39096 +YmVhbnM= 39097 +IEdpZw== 39098 +cmFkb3M= 39099 +IFN1dA== 39100 +IExhbmNl 39101 +ZWRzacSZYmlvcg== 39102 +IGNvbGE= 39103 +b25lbnRz 39104 +IHJlY29uc2lkZXI= 39105 +IG1vbmRv 39106 +IHVuc3VjY2Vzcw== 39107 +IEvDpA== 39108 +IHJlZ2Vs 39109 +IGJpc29n 39110 +ZXR1cw== 39111 +IHVucmF2ZWw= 39112 +IHN3ZWV0aWU= 39113 +IHJlcHLDqXNlbnQ= 39114 +b3VyaW5n 39115 +IGdyb3VuZHdhdGVy 39116 +IEJldw== 39117 +IHNjcmF0Y2hlZA== 39118 +IGNhc3NldHRl 39119 +IGNpZGVy 39120 +cGlz 39121 +INGB0LDQvNCw 39122 +IGdsb2JhbGl6YXRpb24= 39123 +IGRlZ3JhZGF0aW9u 39124 +IGRlZ2VuZXI= 39125 +IFJvc2ll 39126 +aWNrdA== 39127 +IG92ZXJ3ZWlnaHQ= 39128 +IE1FTQ== 39129 +IGd1YXJkaWFucw== 39130 +IGNvbnNlYw== 39131 +SG1t 39132 +INC/0L7RgtGA0LXQsQ== 39133 +IG1ldmE= 39134 +IGdyYWZmaXRp 39135 +IGZsaXJ0 39136 +IEJQ 39137 +IGp1c3Rv 39138 +IFRob3VzYW5kcw== 39139 +n6zsmrQ= 39140 +Lio= 39141 +IFJBVw== 39142 +IGZsdW9y 39143 +aXlp 39144 +YW50YWw= 39145 +amVk 39146 +IFNoZW5n 39147 +IEVsaXNl 39148 +IENoYXJnZQ== 39149 +7J207Yq4 39150 +IGNvbmVz 39151 +bmllcw== 39152 +Z2lh 39153 +INC90LDRh9Cw0LvQsA== 39154 +IERoYXJtYQ== 39155 +IOuLpOyWkQ== 39156 +IGZhdm9ycw== 39157 +IFRydW5n 39158 +aGV0dG8= 39159 +IHBvenc= 39160 +IGxvbmdv 39161 +IGtlbHU= 39162 +IGRpZ2VzdGlvbg== 39163 +IEVpZw== 39164 +IFRIRVJF 39165 +IHRpZXJz 39166 +IHN1bms= 39167 +IG15c3RpY2Fs 39168 +enVi 39169 +IMOJdA== 39170 +IGFudGljaXBhdGluZw== 39171 +IFZpbmU= 39172 +WVk= 39173 +IGNvbmNlbnRyYXRpbmc= 39174 +IEFncmVlbWVudA== 39175 +INC+0LrQvtC70L4= 39176 +IGxpZHQ= 39177 +IFlhbw== 39178 +INGB0LvQuNGI0LrQvtC8 39179 +csOt 39180 +SVNUSU5DVA== 39181 +IE9GRklD 39182 +IHNvYWtpbmc= 39183 +IHNpaWhlbg== 39184 +IHJlZmVyZW5jaW5n 39185 +IFRhbXBh 39186 +YW5leQ== 39187 +IHJlc3B1ZXN0YQ== 39188 +IENvYWxpdGlvbg== 39189 +INGB0L7Qs9C70LDRgQ== 39190 +YW5raW5k 39191 +IOub 39192 +IFl1bW15 39193 +67Cw 39194 +IG9uYw== 39195 +dWnDp8Ojbw== 39196 +IHRoZW8= 39197 +IG11cmFs 39198 +IFRlYWNoZXJz 39199 +IHdhaXRz 39200 +IHJlbnRpbmc= 39201 +IEhhcm1vbg== 39202 +IGXFnw== 39203 +IE11bmljaA== 39204 +7Zmc 39205 +7Ja8 39206 +Y2FyZHM= 39207 +IHJvdWdl 39208 +IG7Dqm4= 39209 +Y2x1Yg== 39210 +IHVuc2Vlbg== 39211 +IGRlcHJlY2k= 39212 +IGNvbXB1dGVk 39213 +IHdpcGluZw== 39214 +IEVsbGk= 39215 +aWRlbnRpZmllZA== 39216 +IGNsdXR0ZXI= 39217 +cm9sZXVt 39218 +IHRlbGVm 39219 +IGxldmVsaW5n 39220 +IFdvb2R5 39221 +IEd1cw== 39222 +IEJlbm5ldHQ= 39223 +IHNpdGlv 39224 +acWC 39225 +IHBvc3Nlc3Npb25z 39226 +IE5hdGFzaGE= 39227 +b2xkb3du 39228 +INGB0L7QvtCx0Yk= 39229 +IExpYw== 39230 +IOunjOuToA== 39231 +IGxvcnNxdWU= 39232 +d2Vo 39233 +INC80LDQvA== 39234 +bGl0ZXI= 39235 +YWRvbW8= 39236 +IGZpbmk= 39237 +z47Pgg== 39238 +INGD0LHQuNC5 39239 +IGluZGlzcA== 39240 +IHRlbGV2aXM= 39241 +IHDDoQ== 39242 +IENyZW8= 39243 +w61sbA== 39244 +IGd1cg== 39245 +IE1BTA== 39246 +INGA0LDQt9C90YvRhQ== 39247 +IHppZWhlbg== 39248 +IGZhc2hpb25lZA== 39249 +IGRlYmF0aW5n 39250 +IFNvdXA= 39251 +IFByb3ZpbmNl 39252 +6re466CH 39253 +IGltcHJvcGVy 39254 +IGltYWdlbg== 39255 +INGB0LTQtdC70LDQuw== 39256 +IGxvZ29z 39257 +IGV2ZW50bw== 39258 +4bqjbw== 39259 +bGFyZGE= 39260 +INC90LDQt9GL0LLQsNC10YLRgdGP 39261 +IHZlcmY= 39262 +IHNjcmVlbnNob3Rz 39263 +15XXk9ei 39264 +IEF1cm9yYQ== 39265 +IEJhbGk= 39266 +dGVyZWQ= 39267 +IGNvbnRhZ2lvdXM= 39268 +IGNvbXBhcnRpcg== 39269 +dmVuaWRvcw== 39270 +cmlrZQ== 39271 +INCy0YvQs9C70Y/QtNC40YI= 39272 +IGZyZWVkb21z 39273 +bmljYXM= 39274 +oKTshJw= 39275 +IHJlZHV6 39276 +IEVjdQ== 39277 +IGFib25u 39278 +IFNFw5E= 39279 +IEJpdGNo 39280 +IHByb2pldG8= 39281 +0LjRh9C90L4= 39282 +ZXR0cmU= 39283 +QU5OQQ== 39284 +dGhhbms= 39285 +IEFP 39286 +YXJuaXNo 39287 +aWXDn2Vu 39288 +IHJpcHBsZQ== 39289 +IHBhbnRyeQ== 39290 +IEdI 39291 +zrPOsQ== 39292 +IOydtOuyiOyXkA== 39293 +IHZhbGlkYXRlZA== 39294 +IGJydXNoZWQ= 39295 +IEVtaW4= 39296 +IERhcnRo 39297 +ZXNpbg== 39298 +LC4= 39299 +IHZhbGxl 39300 +IGplcnNleQ== 39301 +dWxhbg== 39302 +UmVhZA== 39303 +IFJhbmdlcnM= 39304 +IHNvb3RoaW5n 39305 +IGNvbXBsZW1lbnRhcnk= 39306 +IFZlcmtlaHI= 39307 +YWNha3Q= 39308 +IGJhdGh0 39309 +IE5E 39310 +U29u 39311 +IO2ZlOyepQ== 39312 +IEF2aQ== 39313 +IFNBTA== 39314 +YWlzc2U= 39315 +IHNlbWFpbmVz 39316 +IFN1cnY= 39317 +d2llcg== 39318 +INCy0LjQtNC10Ls= 39319 +IHNpZXRl 39320 +lOuPhA== 39321 +IFJhbXNheQ== 39322 +IFF1ZWVuc2Jvcm91Z2g= 39323 +IE1lbmdl 39324 +IEZvb2Rz 39325 +IHRoZW9sb2dpY2Fs 39326 +IFsj 39327 +INCy0L7QvdC4 39328 +IGltbWlu 39329 +aW9zaXR5 39330 +IEFiZ2VvcmQ= 39331 +IEFjaG8= 39332 +IMOU 39333 +IHN0YWlucw== 39334 +IHJlYWxpc3RpY2FsbHk= 39335 +IGZhc2hpb25hYmxl 39336 +IENFT3M= 39337 +IFNraWxs 39338 +INCy0LbQtQ== 39339 +IGRldmVy 39340 +IFBsdWc= 39341 +5qo= 39342 +UG9k 39343 +IGxvYWY= 39344 +IGdlYnJhY2h0 39345 +IGFic29yYnM= 39346 +IEdyYW5ueQ== 39347 +IG1hbHdhcmU= 39348 +YWfEmQ== 39349 +IGNpdmlsaXphdGlvbnM= 39350 +IM+B 39351 +IGjDpGx0 39352 +0KHQog== 39353 +Z3JlYXQ= 39354 +IGxheWVyaW5n 39355 +c2luZ3M= 39356 +INCy0ZbQvQ== 39357 +IHJlY29nbml6YWJsZQ== 39358 +IHdvag== 39359 +IHdldGVu 39360 +zrPOvw== 39361 +U3R1ZGVudA== 39362 +IGTDqWZpbg== 39363 +cGxlYXNl 39364 +ZW5jaA== 39365 +IGF0dGlj 39366 +IE90dGF3YQ== 39367 +IG9wdGVk 39368 +IGNhcHRpdg== 39369 +IG3Fgg== 39370 +IFlB 39371 +IFdhbmQ= 39372 +IGJvdW50eQ== 39373 +IDI3MA== 39374 +IHNwZWN1bGF0ZQ== 39375 +IGVuaGFuY2VtZW50 39376 +IGNvbW1vZGl0aWVz 39377 +IE1pbHRvbg== 39378 +ZWo= 39379 +YWxvbQ== 39380 +RGFz 39381 +IGNvb2xkb3du 39382 +16jXkNec 39383 +INeQ16Q= 39384 +IHdjemXFm25pZWo= 39385 +IGVsb25n 39386 +IGRpb2Rl 39387 +aW5hw6fDo28= 39388 +IElyaXM= 39389 +IEli 39390 +IHN1bW1vbmVk 39391 +IHJlc3Bl 39392 +IFJhY2g= 39393 +IMK7Og== 39394 +IHZ1cg== 39395 +IG1vdmltZW50bw== 39396 +IGZsdWVudA== 39397 +IEV2b2x1dGlvbg== 39398 +IEJ1dHQ= 39399 +aWZpY2FjacOzbg== 39400 +lJTslrQ= 39401 +INGN0L3QtdGA0LM= 39402 +IG1hbmlwdWxhdGluZw== 39403 +IHBvc2l0aXY= 39404 +0LzQvtGB 39405 +IHdpeg== 39406 +IGludG94 39407 +zq3PgQ== 39408 +0LXQvNGB0Y8= 39409 +aXZlc3Nl 39410 +aW1pemk= 39411 +IOyauA== 39412 +IGtub2Nrcw== 39413 +IGNvbmdlc3Rpb24= 39414 +IElkZWFsbHk= 39415 +IEhvbGRpbmc= 39416 +IHBvYnJl 39417 +IEpVTA== 39418 +IOu2hOuTpOydgA== 39419 +IM6xzro= 39420 +IEZlcmd1c29u 39421 +IExhYm9yYXRvcnk= 39422 +cmljaHRlbg== 39423 +cm9waHk= 39424 +cHJvZHVjdGlvbg== 39425 +YXNzdW5n 39426 +SVRB 39427 +IHNpw6hjbGU= 39428 +16jXqg== 39429 +Y2lzaW9u 39430 +INek15Q= 39431 +IElyZW5l 39432 +YW5jYQ== 39433 +IOyCrOqzoA== 39434 +IHBpbnBvaW50 39435 +IGRlc2lnbmF0aW9u 39436 +xZ9hbQ== 39437 +bMSxxZ8= 39438 +YWF0 39439 +IG7DpWdyYQ== 39440 +IG15dGhpY2Fs 39441 +IERlY2xhcmF0aW9u 39442 +IOyeoeyVhA== 39443 +IGJ5dGU= 39444 +LuKZqg== 39445 +RGVs 39446 +IO2NvA== 39447 +IG51dHJpdGlvdXM= 39448 +INGA0YPQsdC70LXQuQ== 39449 +U0FZ 39450 +TWFzdGVy 39451 +INGE0L7RgtC+0LPRgNCw0YQ= 39452 +IOuSpOyXkA== 39453 +IG5laA== 39454 +IGRva3VtZW50 39455 +IGN6YXN1 39456 +IGNvbnRpbnVh 39457 +IFNpbGVudA== 39458 +IHRlbnNvcg== 39459 +IHRhbnRh 39460 +IGlyZ2VuZHdv 39461 +IExFVA== 39462 +IFNoYWt0 39463 +bGFtYQ== 39464 +Y2hsYWc= 39465 +IGRpbmdlbg== 39466 +0YHRgtGA0LA= 39467 +IGVocmxpY2g= 39468 +IE1hY2h0 39469 +cmVscw== 39470 +w6BjaWVz 39471 +dmlkZW8= 39472 +IG5hdHVyYWxl 39473 +IFNURVZF 39474 +dW1t 39475 +QkFDSw== 39476 +IDcyMA== 39477 +IG1vbWVuY2ll 39478 +IFN3YW4= 39479 +IHRlY2huaWNpYW5z 39480 +IGdlZWhy 39481 +IE1lbmQ= 39482 +UmVn 39483 +IHNjYWZm 39484 +IGFpZGU= 39485 +IOuztOuKlA== 39486 +IHByZXNzZXM= 39487 +bGVyZGU= 39488 +XCc= 39489 +IHVsdHJhc291bmQ= 39490 +IGRpc2NsYWltZXI= 39491 +IE1pdHM= 39492 +IEhvbGlkYXk= 39493 +IGV4dGVybmFsbHk= 39494 +IEZhdGU= 39495 +SU5P 39496 +IENhdHM= 39497 +67CV 39498 +dW1v 39499 +Y29udHJvbA== 39500 +IHRoZUNVQkU= 39501 +dGlj 39502 +aWVydW5ncw== 39503 +INC30L3QsNC60L7QvA== 39504 +IGZyZWVzdHlsZQ== 39505 +TUFOREFSSU4= 39506 +IGlzZQ== 39507 +YXVydXM= 39508 +IFN0cmF0ZWd5 39509 +IEJlYW0= 39510 +csOkZ2U= 39511 +IGV4cGxvaXRlZA== 39512 +aWRpcw== 39513 +IGNoaW1l 39514 +IFBlbmluc3VsYQ== 39515 +IG1lcml0cw== 39516 +IGFsdHJv 39517 +IFRPUA== 39518 +IFNlbnM= 39519 +IEthbnQ= 39520 +b3Jhcw== 39521 +IHJveWFsdHk= 39522 +IElERQ== 39523 +cmFjeQ== 39524 +IFRIT00= 39525 +b21vcw== 39526 +IGzDpG5nZXI= 39527 +IG51bWJlcmVk 39528 +VW0= 39529 +IE5peWU= 39530 +zrjOtw== 39531 +enlrYQ== 39532 +bGltZQ== 39533 +IFBlcnNvbmVu 39534 +IHZhbGlkaXR5 39535 +IGNvbnRyYXQ= 39536 +IENvbWlj 39537 +w6dvbnM= 39538 +IEhlaWRp 39539 +IHpn 39540 +IHJlbmFtZWQ= 39541 +IGN1bWlu 39542 +IEpG 39543 +aW5lbA== 39544 +IGVuZm9yY2Vk 39545 +IGNoYW1h 39546 +0LvQuNGH0L3Qvg== 39547 +4bq7 39548 +INC00LXQvdC10LM= 39549 +IHByb2Z1bmQ= 39550 +IHBlbHZpYw== 39551 +IHBhbGF2cmE= 39552 +IGV4dHJhcw== 39553 +IGFua2xlcw== 39554 +7JeQ7ISc64+E 39555 +IFRG 39556 +IGluc2FuZWx5 39557 +INC80Y/RgQ== 39558 +IHLDqXBvbnNl 39559 +IGfDtnN0ZXI= 39560 +IEJCUQ== 39561 +INGD0YfQsNGB0YI= 39562 +IHNoYWtlbg== 39563 +IGFsbW9uZHM= 39564 +ZGlzaA== 39565 +IFBH 39566 +IEJsaXp6YXJk 39567 +0YzQvtCz0L4= 39568 +IOOF 39569 +IGtuYXBw 39570 +VG9v 39571 +IHVuZGU= 39572 +IG1vdW50cw== 39573 +0L7QvNC40L3QsA== 39574 +IG5vcnRoZWFzdA== 39575 +IGNlbnNvcnNoaXA= 39576 +0Y/RgtGM0YHRjw== 39577 +bHI= 39578 +IGxhd21ha2Vycw== 39579 +IHPDpWRhbg== 39580 +IGluc2lkZXI= 39581 +IGNsZWFudXA= 39582 +IE5hZGE= 39583 +w7Nj 39584 +IGhhcnZlc3RlZA== 39585 +IERlc3B1w6lz 39586 +7ZqN 39587 +IHJlZHVuZGFudA== 39588 +RU5B 39589 +IGRlbGVnYXRl 39590 +IGJ1cmc= 39591 +IEFsaXNvbg== 39592 +IGNlbGVzdGlhbA== 39593 +IHNpbm5lcnM= 39594 +IG1hcnR5cg== 39595 +IFBlcm0= 39596 +IHNwZWNpbWVucw== 39597 +IG1pdG9jaG9uZA== 39598 +IG1hcmF2aWw= 39599 +IGNhdmFscnk= 39600 +IGFycmF5cw== 39601 +IGFubmV4 39602 +IGxhYm9yYXRvcmllcw== 39603 +IEJ5eg== 39604 +IGF0YWM= 39605 +INGB0LvQvtC20L3Qvg== 39606 +IHRvcGw= 39607 +IGdlcmk= 39608 +IENvbWJhdA== 39609 +0YHRj9GC 39610 +ZWtlbg== 39611 +INCS0LvQsNC0 39612 +IGFqdXN0 39613 +IG1hcnF1ZQ== 39614 +IGxvb2tvdXQ= 39615 +IExvbA== 39616 +IHJvb2Z0b3A= 39617 +IE9yaW9u 39618 +INCx0L7QuQ== 39619 +IGhlYXJ0YnJlYWtpbmc= 39620 +IGRldHRv 39621 +emg= 39622 +w6R0dGVy 39623 +Y2VyYQ== 39624 +IGhlYXRz 39625 +IGFudGlxdQ== 39626 +IHVuZmluaXNoZWQ= 39627 +IEthenU= 39628 +xLFsxLE= 39629 +IHNsaWdodGVzdA== 39630 +bGVv 39631 +IHbDpXJh 39632 +IHZlcnNjaGllZGVuZW4= 39633 +IGxvdGlvbg== 39634 +0YjQtdCz0L4= 39635 +Y3Rpb25hbA== 39636 +IOydtOyg 39637 +ZHJhZ29u 39638 +IHJlc29uYXRlcw== 39639 +IGlubQ== 39640 +YXZpYw== 39641 +IGZ1bGZpbA== 39642 +IOq4sOuMgA== 39643 +IGp1c3RhbWVudGU= 39644 +INC00L7RgdGC0YPQvw== 39645 +IOq3uOqxtA== 39646 +IHJlY29uY2lsZQ== 39647 +IFNjaMO2bg== 39648 +IEF2b2lk 39649 +6rmA 39650 +J0Q= 39651 +IGNvbmZpbmVtZW50 39652 +IO2R 39653 +IG1vdGl2YXRpbmc= 39654 +IEJyaXR0YW55 39655 +IHNjcmVhbWVk 39656 +b2JqZWN0 39657 +IGRlY3JlZQ== 39658 +IHRyYXZhaWxsZQ== 39659 +aXNzaWJsZQ== 39660 +IGJ1c3RlZA== 39661 +cHJvY2Vzcw== 39662 +IG1hc3NhY3Jl 39663 +IG5naMSp 39664 +aWx5bg== 39665 +INCy0YDQvtC00LU= 39666 +IHBvZXRpYw== 39667 +IG5o4bqldA== 39668 +IGlyb25pY2FsbHk= 39669 +dXN1 39670 +bmlv 39671 +IHN0YWdpbmc= 39672 +b21lZGljYWw= 39673 +bGVhc2Vk 39674 +IOyDiOuhnOyatA== 39675 +IE5a 39676 +YWN0aW5n 39677 +IEJhdHRsZWZpZWxk 39678 +cGxheWZ1bA== 39679 +Vmk= 39680 +IHNlw7FvcmE= 39681 +IHByb21wdHM= 39682 +bGljaGtlaXQ= 39683 +IMOnxLFrYXI= 39684 +amlhbmc= 39685 +IHBpY2t5 39686 +IENhdmU= 39687 +IG1pcmFjdWxvdXM= 39688 +IEh1Z2hlcw== 39689 +MjAxNg== 39690 +IHh1 39691 +IERvcm90aHk= 39692 +IHZpcnR1ZXM= 39693 +IHJldHJhY3Q= 39694 +IHR5cg== 39695 +IGNoYXJpc21hdGlj 39696 +IGJvbGE= 39697 +6bw= 39698 +IOunkOyUgOs= 39699 +IHBhcmVudGFs 39700 +IG1pbGxpb25haXJl 39701 +YXJpYXQ= 39702 +IGludm9rZQ== 39703 +xbxlbmll 39704 +IGV4dHJlbWVz 39705 +IEFrdQ== 39706 +aXZpZGFkZQ== 39707 +IO+3ug== 39708 +IOyLnOyyrQ== 39709 +IEdhcmxpYw== 39710 +UklB 39711 +INC00L7RgQ== 39712 +IFBvbnQ= 39713 +IG1pbGo= 39714 +ZWxsaQ== 39715 +IHJhY2tldA== 39716 +IGNvbXBldGl0 39717 +IFdoaXM= 39718 +IHJlYWx0 39719 +aWdubWVudA== 39720 +ZXN0cmU= 39721 +IHBlcm5haA== 39722 +IE9wZW5pbmc= 39723 +IEZT 39724 +IERlbW9rcmF0ZW4= 39725 +YWNlbWVudHM= 39726 +IHdvcmxkdmlldw== 39727 +IHBsYXlvZmZz 39728 +IENBRA== 39729 +IMOpdGFudA== 39730 +IHllbWVr 39731 +IHNlbnRpbWVudHM= 39732 +b2RlbA== 39733 +YnVzdGVy 39734 +YcWf 39735 +IEtZ 39736 +Y3rEmQ== 39737 +IHNjaMO2bmU= 39738 +YXBl 39739 +IFJhc3BiZXJyeQ== 39740 +IGNyZWRpdGVk 39741 +IEhpZGRlbg== 39742 +IHNhdXNhZ2Vz 39743 +cnVjZQ== 39744 +IEJldg== 39745 +aWxhbnRybw== 39746 +IHBva2Vtb24= 39747 +IOqwgOqyqQ== 39748 +IHByb2NlZWRpbmc= 39749 +IHZlaW8= 39750 +IDE3NQ== 39751 +6Lg= 39752 +bWF4 39753 +IGZyYXRlcg== 39754 +7KCE7JeQ 39755 +IGVnZW50 39756 +IDI1MDA= 39757 +dXNjaA== 39758 +VHViZQ== 39759 +IGFtcGxpZnk= 39760 +IHByYXdk 39761 +IG9kb3I= 39762 +IFNjYW4= 39763 +IHBsb3R0aW5n 39764 +aXRobWV0aWM= 39765 +IHJlc2lnbmVk 39766 +IFNDT1RU 39767 +IHN0ZXJlb3R5 39768 +IGRvYWJsZQ== 39769 +IENvbXBsZXg= 39770 +2YHZig== 39771 +dMSxbQ== 39772 +0YDQuNCz 39773 +bGFyZGFu 39774 +ZXNv 39775 +REVO 39776 +IGhvb2RpZQ== 39777 +IENBVA== 39778 +2KfYtw== 39779 +IGJvbmRlZA== 39780 +IEJ1cm5z 39781 +0L7Qv9Cw0YE= 39782 +IHLEmQ== 39783 +zrXOuc6x 39784 +INC+0YLQtNC10LvRjA== 39785 +IHRpbWVsZXNz 39786 +IFZpag== 39787 +IFBhbmFtYQ== 39788 +IHJlb3JnYW4= 39789 +IFTDpA== 39790 +IFBsdXRv 39791 +T3Jhbmdl 39792 +INC/0L7QudC0 39793 +IEJyaXN0b2w= 39794 +dWNlZA== 39795 +IOuQmOyWtA== 39796 +IHVuYmVkaW5ndA== 39797 +YWRsZQ== 39798 +IHZvbHVudGVlcmVk 39799 +IG1pZWxp 39800 +IEVkaW5idXJnaA== 39801 +aWthbA== 39802 +IGFsdGVu 39803 +IEFyc2Vu 39804 +IG1vdXZlbWVudA== 39805 +IGFudGlxdWU= 39806 +IGJo 39807 +IEhlcnM= 39808 +IHNhdXRl 39809 +IGFzcGlyZQ== 39810 +IHNwaGVyZXM= 39811 +IFdhbQ== 39812 +4bqvbQ== 39813 +IHdpcGVz 39814 +IDI4MA== 39815 +IFZlaA== 39816 +IGNvbG9jYQ== 39817 +0LDRhA== 39818 +INCy0L7Qt9C80L7QttC90L7RgdGC0Yw= 39819 +IHBoeXNpb2xvZ2ljYWw= 39820 +aHdh 39821 +ZXR1 39822 +IHByb2xvbmdlZA== 39823 +IGV4cGVyacOqbmNpYQ== 39824 +INCy0LjQtNC90L4= 39825 +IHF1YXJhbnQ= 39826 +IHB1ZWRhbg== 39827 +6JQ= 39828 +dmluZQ== 39829 +IFVTREE= 39830 +cGhlbQ== 39831 +IGZvcm1pZGFibGU= 39832 +IGZsYXR0ZXI= 39833 +7Ja07KeA 39834 +IGLDqW4= 39835 +4LmB4LiV 39836 +IOusvOuhoA== 39837 +IGZhY3Rpb25z 39838 +IExlYXZpbmc= 39839 +INeQ16rXlA== 39840 +IEV4cGVydA== 39841 +ZGlv 39842 +IFZlcmQ= 39843 +IHNpbnQ= 39844 +2YbYrw== 39845 +bnVtYmVy 39846 +IG93ZWQ= 39847 +IGluZHVjZQ== 39848 +IEZyZWRkaWU= 39849 +YWJv 39850 +IEZpbGlwaW5v 39851 +r7zr 39852 +YmVsaWV2YWJseQ== 39853 +YXRobG9u 39854 +YW1hYW4= 39855 +IGRldmVuaXI= 39856 +IEdvcw== 39857 +IEplbmtpbnM= 39858 +YmFpdA== 39859 +IGJpbnM= 39860 +IE1JQ0g= 39861 +dXlvcnVt 39862 +aWdyYWRl 39863 +aXNzbw== 39864 +IOyXtA== 39865 +IOyVhOu5oA== 39866 +IGRpYXJyaGVh 39867 +IHRvcm5hcg== 39868 +YWRkaW4= 39869 +IHVuZ2Vmw6Rocg== 39870 +IHJlc3Ryb29t 39871 +IHBzeWNoaWF0cmlzdA== 39872 +IEtpY2tzdGFydGVy 39873 +IGdlcmE= 39874 +IGFscmVk 39875 +IFdyYXA= 39876 +z4zPgw== 39877 +IHNpbm5lcg== 39878 +Q0hFRVJJTkc= 39879 +IGtpbG93 39880 +IGRldGVybWluYW50 39881 +IGRlbW9uaWM= 39882 +aWRlbmNlcw== 39883 +Y2hhcw== 39884 +IERlZA== 39885 +IHN0dW1ibGU= 39886 +IFVycw== 39887 +IGRlY2VpdmVk 39888 +IFRFUg== 39889 +IEPDsw== 39890 +ZWxsZWQ= 39891 +IG5vdHdlbmQ= 39892 +IOyngOq4iOq5jOyngA== 39893 +IHBhcnRpZG8= 39894 +IGRlc2NlbmRlZA== 39895 +IHZhcmTEsXI= 39896 +IGVuYWN0ZWQ= 39897 +IGN6xJnFm2Np 39898 +IHRyYWluZWVz 39899 +IGF1ZGlibGU= 39900 +IG1hbGY= 39901 +IHZlbw== 39902 +w6xu 39903 +IEdQQQ== 39904 +IEFwcGU= 39905 +IHJ1dA== 39906 +IENhcmxh 39907 +a2FjaA== 39908 +IHNhdmlvcg== 39909 +aXRjaGVk 39910 +IGNsaW1heA== 39911 +0LDRgtC10LvRjw== 39912 +IE1jQ29ubmVsbA== 39913 +0L7Qu9GP 39914 +ZXJleWU= 39915 +INGB0L7Qt9C9 39916 +IGNhYm8= 39917 +IFNuZQ== 39918 +IEFmZm9yZGFibGU= 39919 +IHNhcsOg 39920 +IGxlZ2l0aW1hY3k= 39921 +IHNjYXJjZQ== 39922 +Li4uPC8= 39923 +IDEwOA== 39924 +IGFjdW0= 39925 +IEZyYW5rbHk= 39926 +IHJhZGlhdG9y 39927 +IGdlbmVyYWxz 39928 +IGRpdmlkZXM= 39929 +IGNoZWVzZWNha2U= 39930 +IHNvcmNlcg== 39931 +IG1pc2NvbmNlcHRpb24= 39932 +IGhhcmRzaGlwcw== 39933 +IE9uZVBsdXM= 39934 +w7x5b3JzdW4= 39935 +IFNvdmlldHM= 39936 +IEl0YWxpYQ== 39937 +aWNraQ== 39938 +IEFmdGVyd2FyZHM= 39939 +IHJpZGljdWxvdXNseQ== 39940 +IGdkemllxZs= 39941 +IE5vdGVz 39942 +2YPYp9mG 39943 +IHJvbWFu 39944 +IG9yZ2FuaXplcg== 39945 +IGNvdXJ0eWFyZA== 39946 +INGH0LXQu9C+0LLQtdGH 39947 +IFdpdG5lc3M= 39948 +INC/0Y/Rgg== 39949 +IENoaWxs 39950 +IFZhbHZl 39951 +IM6szrvOuw== 39952 +IEtQ 39953 +Y2hsdXNz 39954 +IGRlZmxlY3Q= 39955 +IFRvbmk= 39956 +IGNsYWly 39957 +IHN0YWNraW5n 39958 +cmFzemFt 39959 +IFNvbnJh 39960 +IEF0YXJp 39961 +IHBhc8Oz 39962 +IGNoYXJtcw== 39963 +YW5zdA== 39964 +IHRlcmNl 39965 +IExpbGx5 39966 +IHBzeWNob2xvZ2ljYWxseQ== 39967 +IGPFkw== 39968 +dXN0ZQ== 39969 +pbTs 39970 +Q1RW 39971 +IG1pZWw= 39972 +Q2FyZQ== 39973 +IOKAkQ== 39974 +IHNuYXBwZWQ= 39975 +IOqwkOs= 39976 +0L7RgtGL 39977 +IG3DqnM= 39978 +Lj8= 39979 +IHRvbm5lcw== 39980 +15XXk9eU 39981 +4LiE4LiZ 39982 +VHU= 39983 +IGRpc3RyaWJ1dGluZw== 39984 +IGNyYWNrZXJz 39985 +IGNvcmHDp8Ojbw== 39986 +w6Rtw6Ru 39987 +Y2xhbWF0aW9u 39988 +0L7RgNC0 39989 +k5zrprTqsozsmpQ= 39990 +IFVudGVyc2NoaWVk 39991 +RmluZQ== 39992 +Y2tv 39993 +INGA0LXQsdC10L0= 39994 +IHNwaWM= 39995 +IGRvY3RvcmFs 39996 +INGB0LrQvtGA0LXQtQ== 39997 +dW5pdmVycw== 39998 +YWN1bGE= 39999 +IMOWc3RlcnJlaWNo 40000 +IGdyaW5kZXI= 40001 +IGFtYm9z 40002 +IHZhc3RseQ== 40003 +IGNvbmZlc3NlZA== 40004 +IFNoaA== 40005 +YW5kZXJz 40006 +IEd1YW4= 40007 +INC90LXQvtCx0YXQvtC00LjQvNC+ 40008 +IGNoYW1waW9uc2hpcHM= 40009 +IFZ1bA== 40010 +IFBoaQ== 40011 +IE1lYXN1cmU= 40012 +IGluc2dlc2FtdA== 40013 +dmV0dGU= 40014 +IGdlbm9t 40015 +aW5kdW5n 40016 +Z2xp 40017 +RGV0 40018 +IHVubXV0ZQ== 40019 +IHNhdWNlcw== 40020 +IER3 40021 +15HXqg== 40022 +IEJSRQ== 40023 +IG51cnR1cmU= 40024 +IGRldGFpbmVk 40025 +IEJlZXI= 40026 +INC80LjRgNCw 40027 +0LLQtQ== 40028 +IEJpcmRz 40029 +IG1laWxsZXVy 40030 +IHJld2luZA== 40031 +IHBvcmU= 40032 +15nXlg== 40033 +w6lnZXI= 40034 +cXVlbGE= 40035 +IHRyb3VzZXJz 40036 +IHNpaW7DpA== 40037 +IEdhZ2E= 40038 +IEJSQU5E 40039 +bGViZW4= 40040 +IHJhc3BiZXJyeQ== 40041 +aWxpaw== 40042 +IHZlcnPDo28= 40043 +bGFr 40044 +IGxvZ2Fy 40045 +IE1JREk= 40046 +IOychO2VnA== 40047 +INC/0YDQvtC40LfQvtGI 40048 +IHN0ZXJpbA== 40049 +IGhhcm1lZA== 40050 +0LDQstC70LjQsg== 40051 +INGB0YHRi9C7 40052 +IGxhY2tlZA== 40053 +IGNvbnRhY3Rpbmc= 40054 +IOq4sOyekA== 40055 +IGdlZsOkaHI= 40056 +IGNveQ== 40057 +aWtlbA== 40058 +IGJpbmdl 40059 +IG9ydGhvZ29uYWw= 40060 +IGVudGVuZHU= 40061 +IFRoaXJ0eQ== 40062 +IHNtYXJ0ZXN0 40063 +IHJhc2E= 40064 +IFF14buRYw== 40065 +0YvQstCw0Y7Rgg== 40066 +IHNsdXQ= 40067 +0LvRg9GH 40068 +aWd0ZW4= 40069 +INGA0LDQsQ== 40070 +IHRhbWFu 40071 +IHF1YWxpZGFkZQ== 40072 +IGRvbWluYXRpb24= 40073 +IHNpbnVz 40074 +IHByb2dyYW1tZXJz 40075 +IGFsbGVyZ3k= 40076 +IFRvcnJlcw== 40077 +IEF1c3RyaWFu 40078 +bmFudHM= 40079 +TWVs 40080 +INGD0LLQtdC70LjRhw== 40081 +IEFnZw== 40082 +IHNvaw== 40083 +IHBsdWNr 40084 +IGJpbmRz 40085 +IHByb3Bvcg== 40086 +IE1hZg== 40087 +IG9zb2I= 40088 +IFZJQw== 40089 +6aU= 40090 +INC30LDRh9C10Lw= 40091 +IGV4aGliaXRpb25z 40092 +IGV0dGk= 40093 +Y3ph 40094 +INC90LDRiNC40YU= 40095 +IE1pdHRl 40096 +0L7QsdGL0YLQuA== 40097 +IGNsb2Nrcw== 40098 +IHJpY28= 40099 +INC40YHRgtC+0YDQuNGP 40100 +IHNjaGl6b3BocmVu 40101 +IGZsdWZm 40102 +INGB0L7QsdC40YA= 40103 +IGFwb3k= 40104 +IHByaW5jZXM= 40105 +IGJyYWNlcw== 40106 +IEZJUg== 40107 +IFNuYQ== 40108 +IDsp 40109 +dmVuZXM= 40110 +IHZ1ZWx0YQ== 40111 +IG1pZXM= 40112 +IGJyb29t 40113 +IG1lcnJ5 40114 +IGVzcGVjaWFsbWVudGU= 40115 +IEFsYmFu 40116 +INC/0L7RgdGC0L7Rj9C90L3Qvg== 40117 +IExlbmE= 40118 +IEN1bHQ= 40119 +YWxzbw== 40120 +IHF1b3Rpbmc= 40121 +IGdlbmVyZQ== 40122 +IFlhcg== 40123 +IExhZ2U= 40124 +IGRlbW9zdA== 40125 +IGRhZ2U= 40126 +IEVjdWFkb3I= 40127 +IGFudsOkbmQ= 40128 +dcOfZW4= 40129 +IOuwm+yVhA== 40130 +IHBzeWNob2xvZ2lzdHM= 40131 +IExhcnM= 40132 +IHBvc3Nh 40133 +IG91dGdvaW5n 40134 +IG1ldGlj 40135 +IGJhZ2dhZ2U= 40136 +ZXJpYQ== 40137 +IHJpY2h0aWdl 40138 +7Iuc7JeQ 40139 +INGB0L7RhdGA0LDQvQ== 40140 +IHJvb3Rpbmc= 40141 +IGRyb3BsZXRz 40142 +IG5hc2Fs 40143 +IENveA== 40144 +WGk= 40145 +IGRpc3Bvc2FibGU= 40146 +IGJ1dGNoZXI= 40147 +IFphcg== 40148 +IEFybWVuaWFu 40149 +IOu/jOs= 40150 +IEZvb2w= 40151 +IENCRA== 40152 +IHNvc3Q= 40153 +IHBlcmlzaA== 40154 +IFLDqXA= 40155 +IEZyZXVk 40156 +IGZhbmRvbQ== 40157 +IGJsb3F1ZQ== 40158 +IGludmVudG9y 40159 +IGFicmU= 40160 +IMOpbm9ybcOpbWVudA== 40161 +IGltcG9ydHM= 40162 +6Yg= 40163 +IG90dXI= 40164 +IFJ5dQ== 40165 +IOKGkg== 40166 +IHNlY29uZG8= 40167 +IGluY29tcGV0 40168 +IGluY2FyY2VyYXRpb24= 40169 +IGFzY2VuZA== 40170 +YmVuZQ== 40171 +IG9sdXJz 40172 +bm9jaA== 40173 +IGJyZWVkcw== 40174 +0LvQuNC3 40175 +IFZlcmbDvGc= 40176 +IG1haWxpbmc= 40177 +cmVhbGx5 40178 +IGVzZg== 40179 +IHBlbGU= 40180 +IGxlYXNo 40181 +IGRpc2tz 40182 +INC30LDQvNC10Yc= 40183 +7JWE7JWE 40184 +YWJvdXRz 40185 +IE11bGw= 40186 +IERlbnQ= 40187 +ZWRlcmVlbg== 40188 +RHJpdmU= 40189 +IHRpcHBpbmc= 40190 +IG5pZ2dh 40191 +b3JkdW0= 40192 +IHBvcnRlcg== 40193 +IGthcmFva2U= 40194 +IGRvY3VtZW50YXJpZXM= 40195 +IFJJR0hU 40196 +IFB1cmQ= 40197 +INC+0YHRgtCw0L0= 40198 +0LrQu9Cw0LQ= 40199 +w6lyZW5jZQ== 40200 +IOqxuOuhnA== 40201 +INGC0L7Qvw== 40202 +IFdvbmc= 40203 +INC/0YDQuNGA 40204 +IG5vbWluYWw= 40205 +IGF1bGE= 40206 +INGN0LrRgNCw0L0= 40207 +IGNoZXJjaGU= 40208 +IFRocg== 40209 +IGxhdWZlbg== 40210 +IEthdGhsZWVu 40211 +IHJlYWN0b3Jz 40212 +aWhhdA== 40213 +IHNpZGVk 40214 +IFNpbW9uZQ== 40215 +IGd1aWRlbGluZQ== 40216 +aW1wb3J0YW50 40217 +YnVtcHM= 40218 +dG9uZQ== 40219 +IGVudHJlcHJpc2Vz 40220 +IGNvbnN0aXR1dGU= 40221 +b3Njb3Bl 40222 +IE15c3Rlcnk= 40223 +Y3ljbGVz 40224 +IFdhcnNhdw== 40225 +IGJ1cnN0cw== 40226 +IFpob25n 40227 +IFNBUkFI 40228 +IOuKkOq7 40229 +6Y0= 40230 +IGJlYWNvbg== 40231 +QURF 40232 +IOyngOuCmA== 40233 +IGVyc2No 40234 +IGludGVnZXJz 40235 +IENyb3NzaW5n 40236 +c291cmNl 40237 +IHNjaG9vbGluZw== 40238 +IFJPTQ== 40239 +YXRvcml1bQ== 40240 +IOyeiOqyjA== 40241 +IHLDtGxl 40242 +0JXQnQ== 40243 +Q2hhdA== 40244 +IHNocmlua2luZw== 40245 +IHJlaW1idXJzZQ== 40246 +IGx1bWJlcg== 40247 +w7xja3M= 40248 +IHNhbGFo 40249 +TW90aGVy 40250 +IGthbGk= 40251 +IFFhdGFy 40252 +b3Rpb25hbA== 40253 +IG9wYWNpdHk= 40254 +IG5lZQ== 40255 +IENvcnk= 40256 +IOy4oQ== 40257 +IHR1cmJ1bGVudA== 40258 +emVycw== 40259 +INGC0LXRgdGC 40260 +IMOpY3JpdA== 40261 +IOuztO2GtQ== 40262 +IGRpc2dyYWNl 40263 +IOy5tA== 40264 +IGNvdXJ0ZXN5 40265 +aW5nYQ== 40266 +IGh1Z2dpbmc= 40267 +IEFCUw== 40268 +bWl0aA== 40269 +IGluc3VmZmljaWVudA== 40270 +IGNyb29rZWQ= 40271 +IOq3uOuMgOuhnA== 40272 +7Iuk7Q== 40273 +IHNpbXVsYXRlZA== 40274 +IOuEpOqwgA== 40275 +IGLDtg== 40276 +IE90dG8= 40277 +TElORw== 40278 +IGlsbHVzdHJhdGVz 40279 +IERlc3Ryb3k= 40280 +IDE5NjE= 40281 +IFRhZ2Vu 40282 +IG1lbG9u 40283 +IFBhc2NhbA== 40284 +UVVF 40285 +INC/0L7Qu9GD0YfQuNGC0Yw= 40286 +IGluY2lkZW5jZQ== 40287 +IFN0ZXZlbnM= 40288 +IEdpbnM= 40289 +cnVl 40290 +IHVucmVhc29uYWJsZQ== 40291 +IEppZQ== 40292 +eXNpY3M= 40293 +IOuqsOudvA== 40294 +IGZpc2hlcw== 40295 +qbTs 40296 +IHByZWN1cnM= 40297 +IG1vZ8SZ 40298 +dGlnaHQ= 40299 +ZXTDqQ== 40300 +IG11bmRpYWw= 40301 +7JeI64uk 40302 +4oCmIQ== 40303 +QlU= 40304 +IHNvY2lvbG9neQ== 40305 +IGJydXRhbGl0eQ== 40306 +IHBlcnNvbmFqZQ== 40307 +IG7DrXZlbA== 40308 +IGZhemVt 40309 +IGVzc2Vu 40310 +IGR3ZWxsaW5n 40311 +IGNvbW1lcmNpYWxseQ== 40312 +IGVkaXRz 40313 +IGR1ZXM= 40314 +IEdTQQ== 40315 +7J246rCA 40316 +IO2XiO2MnQ== 40317 +IFlhaG9v 40318 +0LXQvdC10YA= 40319 +7Jyo 40320 +0YPRiNC60Lg= 40321 +bGVmdA== 40322 +IGNhcHRpdmU= 40323 +Y2lwaGVy 40324 +INee157X 40325 +INCz0YDQvtC8 40326 +IGlubmF0ZQ== 40327 +IGltcHVs 40328 +IOyXrOyekA== 40329 +IHN3YWxsb3dlZA== 40330 +IFRhYmlp 40331 +7J207Is= 40332 +INGB0L7RgdGC0LDQsg== 40333 +IG95dW4= 40334 +IG9icmlnYWRv 40335 +IEFwaA== 40336 +S2F0aWU= 40337 +IGNlbmE= 40338 +IEFsbMSBaA== 40339 +2YjYsw== 40340 +IHByenlw 40341 +IHBlcHQ= 40342 +IHZvbHVudGFyaWx5 40343 +IE/En2x1bQ== 40344 +IEVsbw== 40345 +b3Vl 40346 +Qmly 40347 +YnVyZ2Vy 40348 +IFNCUw== 40349 +IDYwMDA= 40350 +IHByb21vdGlvbmFs 40351 +IEhlcnJu 40352 +IHN0YW1waW5n 40353 +IHF1YWxpZnlpbmc= 40354 +IGNvc21vcw== 40355 +IGFmYXI= 40356 +YWJ1cw== 40357 +IGRhZHM= 40358 +INGN0LrQvtC90L7QvA== 40359 +aW5jYXJu 40360 +IOyWtOuU 40361 +INC70LXQtg== 40362 +IEJFVA== 40363 +INC90LDQudC0 40364 +b250ZXI= 40365 +IHJldXNhYmxl 40366 +IGtvbW1h 40367 +IEJpag== 40368 +IFRlcmF6 40369 +IE9sw6E= 40370 +IOyVhOy5qA== 40371 +INGA0LDQt9C80LXRgA== 40372 +YXdhbg== 40373 +IGNhcnRh 40374 +aWNlbGVzcw== 40375 +IHNtZQ== 40376 +IFR1dGFq 40377 +IMiYaQ== 40378 +IHByb2JhdGlvbg== 40379 +IGFkZXF1YXRlbHk= 40380 +IFByZXNpZGVudGlhbA== 40381 +aW5kcnVjaw== 40382 +YmxhZGU= 40383 +IHZldWxlbnQ= 40384 +IGNpb8Oo 40385 +IHJldmVyYg== 40386 +IGdlZ2Vuw7xiZXI= 40387 +IEVzcGVybw== 40388 +IGJlZ2U= 40389 +IFNUVURFTlQ= 40390 +c291bmQ= 40391 +IETDvA== 40392 +IG9mZmVuZA== 40393 +ICIuLg== 40394 +a2VubnQ= 40395 +INGB0LvRg9GI 40396 +IHB1cnBvc2VseQ== 40397 +IExpdA== 40398 +IO2bqA== 40399 +dWNoZXI= 40400 +IGhpbmE= 40401 +w71jaA== 40402 +aWdub24= 40403 +VEhF 40404 +IGdsaWRl 40405 +b3VyY2luZw== 40406 +INij2YbYpw== 40407 +IG9sbHV0 40408 +IGFyY2hldHk= 40409 +IHNoYWR5 40410 +IHNvbW0= 40411 +IGVwaWxl 40412 +S2VlcA== 40413 +IG5hamJhcmR6aWVq 40414 +4KSV 40415 +aXR1dGlvbmFs 40416 +INC80LDQuQ== 40417 +IHNpbmZ1bA== 40418 +IEJyb254 40419 +INCz0LvRg9Cx 40420 +IHZhbQ== 40421 +IHByZXNldHM= 40422 +IERhZw== 40423 +IOyZhOyEsQ== 40424 +IGNyZWVr 40425 +aXR1cmVz 40426 +IExvcmRz 40427 +w7Z0dA== 40428 +VU5U 40429 +UmE= 40430 +IGluZXF1YWxpdGllcw== 40431 +IGNvbGxhdGVyYWw= 40432 +IHdyaXN0cw== 40433 +IGdyb3VwZWQ= 40434 +INC+0LHRi9GH0L3Qvg== 40435 +IGFybW9yZWQ= 40436 +IHR1bmc= 40437 +IGNvbnZlcmdl 40438 +IGJvaw== 40439 +IERvZGdl 40440 +0L3Rj9GP 40441 +IGZsZWVpbmc= 40442 +IE1hcnRpbmV6 40443 +IERyZWFtcw== 40444 +a2Vr 40445 +IHNvY2lhbGU= 40446 +IFBsYXph 40447 +2K/YqQ== 40448 +IGtlbGw= 40449 +IFN0ZWxsZW4= 40450 +ZmVsdA== 40451 +INGB0L/QsNGB 40452 +IFB2 40453 +IGNhbmNpw7Nu 40454 +IEhlcnQ= 40455 +IEJhbGFuY2U= 40456 +IHNlbHZlcw== 40457 +IHZhbmRhYWc= 40458 +IHByeQ== 40459 +IG5hamxl 40460 +INCy0LjQtNC40YLQtQ== 40461 +IHZlbHZldA== 40462 +IGdyb290 40463 +IGZvdXQ= 40464 +IFNjaHVsZW4= 40465 +IE1vaGFtbWVk 40466 +IENlbnRlcnM= 40467 +IGhhdmVy 40468 +IGZyZXVlbg== 40469 +pO2KuA== 40470 +0LvQsNC9 40471 +UE9T 40472 +aW5raQ== 40473 +IOuLtQ== 40474 +IHBhcmFseXplZA== 40475 +R0xJU0g= 40476 +IGNhc3Rz 40477 +IFZD 40478 +7J207IWY 40479 +INiq2r4= 40480 +IOykmA== 40481 +INeo15XXpg== 40482 +IHN1Y2Vk 40483 +IHByb2dyZXNzZXM= 40484 +IEXEn2Vy 40485 +sOuPhA== 40486 +IGluc3RhbGxhdGlvbnM= 40487 +cGVkbw== 40488 +0LXRgNCx 40489 +aW50ZXJwcmV0 40490 +IOqzoOuvvA== 40491 +IEF6ZXJiYWk= 40492 +aXZpZGFkZXM= 40493 +IOyjhOyGoQ== 40494 +IGVudGZlcg== 40495 +IGNod2ls 40496 +IEhlcmJlcnQ= 40497 +IEFsZXhhbmRyaWE= 40498 +eXR5 40499 +IHNlY2hz 40500 +IGNhbGliZXI= 40501 +IFdlaXNl 40502 +IEhlY2s= 40503 +IFl1Zw== 40504 +INin2YTYtw== 40505 +IHBlc2Fy 40506 +IGNpZ2Fy 40507 +IG3DqWw= 40508 +IGhhaXJk 40509 +IHByenlwYWRrdQ== 40510 +IGNvbmZpZGVudGx5 40511 +IGFuYXJjaA== 40512 +IEdpYW4= 40513 +IGRvYnJl 40514 +Y2rEmQ== 40515 +YXd5 40516 +IFJlY2U= 40517 +IEdvYmllcm5v 40518 +IGNhcmdh 40519 +dW1zeQ== 40520 +IG5vcnRl 40521 +IGhhbmRsZXI= 40522 +IHJlc3BlY3Rpbmc= 40523 +IGFsbGllZA== 40524 +IFBpZXQ= 40525 +aWNodGxpY2g= 40526 +IG9sZHM= 40527 +IGR1c3R5 40528 +IGdyeQ== 40529 +IC0uLi4= 40530 +R0hU 40531 +IG5lbw== 40532 +0YfQuNC60Lg= 40533 +0LXQttC0 40534 +YWlkZQ== 40535 +INCx0YPQu9C+ 40536 +7Y28 40537 +IHRlbXBvcmFkYQ== 40538 +IGRvdXRl 40539 +4piG 40540 +IOyIoA== 40541 +IEpVU1RJTg== 40542 +YXV0bw== 40543 +IHJhdGlvbmFsZQ== 40544 +cHJvYg== 40545 +IGZpc2h5 40546 +IGRvb3J3YXk= 40547 +IGVtcHRpbmVzcw== 40548 +0LXQvdC90LDRjw== 40549 +IGJyYWc= 40550 +INCT0LTQtQ== 40551 +IHRyYW5zaWVudA== 40552 +IG1pdHRsZXJ3ZWlsZQ== 40553 +IEJyZXQ= 40554 +IGZpag== 40555 +IGRlcG9zaXRlZA== 40556 +TlM= 40557 +IOyVnuyXkA== 40558 +IGtpbXNl 40559 +IGNoYXJpdGllcw== 40560 +IE1pbGxlbm4= 40561 +ZG9ncw== 40562 +IG1veWVu 40563 +IG51ZXZvcw== 40564 +IENvb2tpZQ== 40565 +cGFyYWJsZQ== 40566 +ZG9pbmc= 40567 +IFNhaWw= 40568 +IGljeQ== 40569 +aGFiYQ== 40570 +IHF1ZWVucw== 40571 +IGNob2NvbGF0ZXM= 40572 +IE5heQ== 40573 +INGE0LjQvQ== 40574 +IHZlYw== 40575 +IGhlbG1ldHM= 40576 +VE0= 40577 +IEFybWVk 40578 +IGltcGFpcm1lbnQ= 40579 +IFR1cw== 40580 +IE3Dqm1l 40581 +b21leg== 40582 +IFJlcXU= 40583 +IEludmVzdGln 40584 +7Y6Y 40585 +IGdvbHBl 40586 +IFJhYw== 40587 +aWdyYXBo 40588 +IGt3ZXN0 40589 +IHNhaWxvcnM= 40590 +IHN0YXR1dG9yeQ== 40591 +IG1pbGVzdG9uZXM= 40592 +IE1hc2g= 40593 +IEdlc2V0emVudHd1cmY= 40594 +6Yo= 40595 +IGNvbG91cmVk 40596 +aHVtYQ== 40597 +IHllcmU= 40598 +IHN1YnRpdGxlcw== 40599 +IGVtYm9kaWVk 40600 +IG1pc3NjaGllbg== 40601 +IGlQaA== 40602 +w7x0emVu 40603 +IGRldGFjaGVk 40604 +IGRlc2NyacOnw6Nv 40605 +Y2lhbW8= 40606 +IHJlY29pbA== 40607 +INCt0YLQvtGC 40608 +IGV4cG9ydGVk 40609 +IEFsb25l 40610 +YW50cnk= 40611 +IGVzdGFu 40612 +IFNvZA== 40613 +IGxhdm9ybw== 40614 +16jXkQ== 40615 +IMSR4buL 40616 +IHN3YWc= 40617 +IFBDQg== 40618 +IEthaXNlcg== 40619 +IE1vZGVy 40620 +anVn 40621 +IHRleHRpbGU= 40622 +VHc= 40623 +IG5hYw== 40624 +ZnJlaQ== 40625 +IHJldGFyZA== 40626 +aXNjZXJu 40627 +IHRhbGxlc3Q= 40628 +IEx1Y2E= 40629 +UmFo 40630 +IHByZWFjaGVy 40631 +IGp1dA== 40632 +IFJpY2E= 40633 +aWNpZW5jeQ== 40634 +IMSRaeG7gXU= 40635 +IGthdWZlbg== 40636 +IG5ldHQ= 40637 +IGRpc2N1dA== 40638 +IGRlcHJpdmVk 40639 +oa0= 40640 +IHNwcmljaHQ= 40641 +IGVuY2xvc2Vk 40642 +IFN1YnN0 40643 +IFJhYmJpdA== 40644 +cHJpc2Vk 40645 +IGJpdGNoZXM= 40646 +7J+B 40647 +IHRhcGE= 40648 +IEVzc2Vu 40649 +IEJhbw== 40650 +IGRldmllbnQ= 40651 +IFd1aGFu 40652 +IFRpcHA= 40653 +IGRpc2FzdA== 40654 +0YHRgtCy0YM= 40655 +dWJsaXF1ZQ== 40656 +IHF1YWxpdMOp 40657 +IGluYWRlcXVhdGU= 40658 +IGJhcmdhaW5pbmc= 40659 +IEdvdGNoYQ== 40660 +0LXQstC40Yc= 40661 +aWV2b3Vz 40662 +ZXJ0b24= 40663 +Ymx1ZQ== 40664 +IOybgOyngQ== 40665 +IHNhbmRib3g= 40666 +IFJlaW4= 40667 +IOydtOqyg+uPhA== 40668 +IHNheA== 40669 +em9nZW4= 40670 +dW7DpGNoc3Q= 40671 +IGhlcmtlcw== 40672 +IC0s 40673 +emVuaQ== 40674 +cmlzaW5n 40675 +IHJlc3Bvc3Rh 40676 +IHByb21vdGlvbnM= 40677 +IFVudGVyc3TDvHQ= 40678 +IE1BUw== 40679 +Tm90aGluZw== 40680 +b3RpY3M= 40681 +INCy0YvQuQ== 40682 +IHJvdGF0ZXM= 40683 +a2llbg== 40684 +IGhhYmxh 40685 +IERhbmk= 40686 +dW5pb24= 40687 +IHdhY2s= 40688 +IGFyY2hhZW9sb2dpY2Fs 40689 +IEN1cnRpcw== 40690 +IEhvcml6 40691 +IOqzqOs= 40692 +IHdhaXZlcg== 40693 +Qm9u 40694 +IHJvdGF0ZWQ= 40695 +IHBpdGNoZXI= 40696 +IGluYWQ= 40697 +IGh1Z3M= 40698 +IE5vcnRoZWFzdA== 40699 +15nXqteZ 40700 +IHBsZWE= 40701 +IGN1cGNha2U= 40702 +IExZ 40703 +IGZhbWlsaQ== 40704 +IGdyb28= 40705 +IEJsYWly 40706 +IGxpag== 40707 +IGhhYml0YXRz 40708 +IGNvbW11bmlzbQ== 40709 +b3NpdW0= 40710 +YmFycw== 40711 +IEZyZWVtYW4= 40712 +bmVv 40713 +IGRpZmZ1c2U= 40714 +IGN5bGluZGVycw== 40715 +IERlYmF0 40716 +7ZaI64qU642w 40717 +0LXRiNC1 40718 +IGZpbmdlcnByaW50cw== 40719 +IGFtYXI= 40720 +0LLQuNC0 40721 +IOygleuPhOuhnA== 40722 +IGFmZmlsaWF0ZWQ= 40723 +INGF0L7Rh9C10YI= 40724 +IGV0aXF1 40725 +IGNow61uaA== 40726 +IGNydWlzaW5n 40727 +IFdlaWhu 40728 +IFRpdGFuaWM= 40729 +IE5hc3Q= 40730 +IOuTpOs= 40731 +INCy0LDQuw== 40732 +IGRlbWk= 40733 +IEtyaXN0aW4= 40734 +TUlO 40735 +IHJpZ29y 40736 +IG1vdG8= 40737 +IExBS0U= 40738 +IO2ZnA== 40739 +IOunjOyVvQ== 40740 +IFN0cm8= 40741 +IHByb3RvdHlwZXM= 40742 +IExD 40743 +7J247J2E 40744 +0YDQuNC8 40745 +IHZpb2xhdGluZw== 40746 +IGdpb3Jubw== 40747 +IGNoaWxkaXNo 40748 +INeQ15fXkw== 40749 +IG92ZXJkb3Nl 40750 +YWdvZ3Vl 40751 +0LDQtNGG 40752 +aGV1cw== 40753 +INCz0L7QstC+0YDRjw== 40754 +IGluY3I= 40755 +IGRlYmF0ZWQ= 40756 +2YXZhA== 40757 +IGNoaWNrcw== 40758 +IHF1aW4= 40759 +TEFVR0hJTkc= 40760 +IHRpZ2h0ZW5pbmc= 40761 +IHN1cGVydmlzb3Jz 40762 +IEhhd2s= 40763 +IEJheg== 40764 +INC/0L7QstGC0L7RgA== 40765 +INCx0LvQvtC6 40766 +xIFu 40767 +IGR1bXBpbmc= 40768 +IGZhY3Rv 40769 +YmVyZ2Vy 40770 +IGFyc2VuYWw= 40771 +IEFmcmljYW5z 40772 +oYA= 40773 +IGNhZmV0ZXJpYQ== 40774 +ZmVlZGluZw== 40775 +cXVpbGE= 40776 +IHBhxYRzdHdv 40777 +xLFudA== 40778 +hLE= 40779 +IGVudmlyb25tZW50YWxseQ== 40780 +IGRlc3Byw6lz 40781 +IFdpbGx5 40782 +IFBhxYRzdHdv 40783 +IEdH 40784 +IGNoYWN1bg== 40785 +IGRpcmVjdGlvbmFs 40786 +IGjDtnJ0 40787 +IPCd 40788 +ZW5hcnk= 40789 +IHZvaWNlZA== 40790 +YcSfxLE= 40791 +IHBvcGU= 40792 +IGNvbXJhZGVz 40793 +IEdpYnNvbg== 40794 +IEFDQw== 40795 +dmlr 40796 +IG1vZGVsbGluZw== 40797 +IGFnZ2k= 40798 +IGNvbnZlcnNpb25z 40799 +IGF2ZXJhZ2Vz 40800 +RWxsaWU= 40801 +IGdlc3RlbGx0 40802 +IFVF 40803 +b3NhaWM= 40804 +0JLQvtGC 40805 +U2F5 40806 +INGB0LDQvNC+0LPQvg== 40807 +IG1lc3VyZXM= 40808 +aXNpZXJ0 40809 +Z2FzcA== 40810 +dm9pY2U= 40811 +IGNoZWNrcG9pbnQ= 40812 +IHBlcmNlbnRhZ2Vz 40813 +IGRpc3J1cHRlZA== 40814 +IFR1Yw== 40815 +IEhvbWVy 40816 +IFdBWQ== 40817 +IFR1cmtz 40818 +aGVlbg== 40819 +aW1vdG8= 40820 +IE9D 40821 +w61uYQ== 40822 +emllbA== 40823 +IG11ZGFy 40824 +Z2VzZXR6dA== 40825 +IG1lam9yZXM= 40826 +IENK 40827 +0L3QsNGA0YPQtg== 40828 +IG1vZHVsdXM= 40829 +IG1vZHVsYXRpb24= 40830 +IHJlcGxpZXM= 40831 +IGxhcnZh 40832 +IGdpZGVy 40833 +IE1hbmRhcmlu 40834 +INC/0L7RgdC80L7RgtGA0LjQvA== 40835 +IHNhY3JpZmljaW5n 40836 +IHByZcOnbw== 40837 +IG95c3RlcnM= 40838 +IE15YW4= 40839 +b2xvZ3Vl 40840 +IFdpdA== 40841 +IGTDuw== 40842 +IExldXRlbg== 40843 +IHBhdGVy 40844 +IEtFTk5FVEg= 40845 +0LDQsdCw0YI= 40846 +YXJ0aHk= 40847 +IHNvY2llZGFk 40848 +IG5pw7Fv 40849 +0LXQstC+0Lk= 40850 +IGrEmQ== 40851 +IGFkdmVydGlzZWQ= 40852 +IFBlcHNp 40853 +dXRldXI= 40854 +IG1hc3Nl 40855 +IHNjYXR0ZXJpbmc= 40856 +IHnDtm4= 40857 +IGRlc2FwYXJl 40858 +IEh1YmJsZQ== 40859 +IEjDqQ== 40860 +a3LDpA== 40861 +IERhcmU= 40862 +IG92ZXJyaWRl 40863 +IEVsYWluZQ== 40864 +IER1Ymxpbg== 40865 +ZHVsbGFo 40866 +TWF0 40867 +IEdhcnI= 40868 +Li4uJw== 40869 +IGFkdWx0aG9vZA== 40870 +RVo= 40871 +IGJlbGFuZ3Jpams= 40872 +aWVuemE= 40873 +IHVuaXZlcnNv 40874 +IHN0ZWxsYXI= 40875 +7ZSE6w== 40876 +IOqysOq1rQ== 40877 +IGNvbnN0ZWxsYXRpb24= 40878 +IFNoZWxsZXk= 40879 +IG11bHRpdA== 40880 +IG1hc2NvdA== 40881 +IGhvc3BpdGFsaXplZA== 40882 +IPCdmA== 40883 +0L7RgNGL 40884 +YWRpYQ== 40885 +IE1pa2V5 40886 +IEFtZXJpa2E= 40887 +IGhhaXJ5 40888 +SG9sZA== 40889 +4bqvbg== 40890 +a2llZ28= 40891 +4LmA4LiU 40892 +IHJpdmFscnk= 40893 +IEpvbmFo 40894 +IHN1cmdlb25z 40895 +IHJlbGF0YWJsZQ== 40896 +6JI= 40897 +IHN3aW1z 40898 +IGJpbGxpb25haXJl 40899 +bW9kZXJu 40900 +IGRvY3VtZW50aW5n 40901 +IERhZQ== 40902 +IHN3YXRjaA== 40903 +IHB1aXNzZQ== 40904 +IG1hc3Vr 40905 +IG1hcmM= 40906 +IGtyw7M= 40907 +IFBldGVyc2J1cmc= 40908 +IEFyaXN0b3RsZQ== 40909 +aXhl 40910 +UHJvZHU= 40911 +INC90LjQvNC4 40912 +IGthbmE= 40913 +INCp 40914 +IHZvbWl0 40915 +IFdvcmtlcnM= 40916 +cG9wdWxhcg== 40917 +IEJpZWJlcg== 40918 +0LXRgtC4 40919 +w6l0aXF1ZQ== 40920 +IGVuY2FudA== 40921 +Z3Jhbg== 40922 +Zmly 40923 +IGFudGhlbQ== 40924 +0YHRg9C00LDRgA== 40925 +TGFzdA== 40926 +IGhhZw== 40927 +IHZpY2luaXR5 40928 +cmVuY2hlZA== 40929 +YW5kaW5n 40930 +INCz0L7Qu9C+0YE= 40931 +IENvcm5lcg== 40932 +0JLRiw== 40933 +b3Nhcw== 40934 +aWV2ZXJz 40935 +Y2lvbmFs 40936 +IHZpZ29y 40937 +IHJlam9pY2U= 40938 +IGNpxIU= 40939 +INC60L7Qvw== 40940 +IHF1YWxjb3Nh 40941 +ZGVzc3Vz 40942 +INC10LI= 40943 +IFNjYW5kaW4= 40944 +IFNtb290aA== 40945 +aGFwZQ== 40946 +IOuLrOudvA== 40947 +IFRV 40948 +IGx5cmlj 40949 +IGJlc3M= 40950 +6ZA= 40951 +0YHRgtGA0YPQvNC10L3Rgg== 40952 +IEFjdGluZw== 40953 +IE9yY2hlc3Q= 40954 +w6ljb2xl 40955 +IGRvbG9y 40956 +IO2LsA== 40957 +IHZlcmdlc3Nlbg== 40958 +IGV5ZWxpZHM= 40959 +IFRhbno= 40960 +0LLQtdGA0LY= 40961 +IOyVoOs= 40962 +dcOp 40963 +IHNjw6huZQ== 40964 +IOyasOumrOuKlA== 40965 +IGNyYXRl 40966 +a2ljaw== 40967 +IFRoZW1l 40968 +IDMyMA== 40969 +IGdhcm5pc2g= 40970 +IG1ldHJl 40971 +IGNvbnZleA== 40972 +cGxhbnRz 40973 +ZXNpYW4= 40974 +IOqxsOyngA== 40975 +IG3DqWRp 40976 +IE1lZGFs 40977 +MTMw 40978 +IEFsbWE= 40979 +Q29sYQ== 40980 +INCy0LDRgNC40LDQvdGC 40981 +IGdvcmQ= 40982 +IGF2YW56 40983 +IHdoaXNwZXJpbmc= 40984 +IGludGVzdGluZQ== 40985 +0KDQlQ== 40986 +IExJU0E= 40987 +YW3EsXo= 40988 +U1BE 40989 +IHBlYw== 40990 +IHBhc3RvcnM= 40991 +IG114buRbg== 40992 +b2NyZQ== 40993 +U3Vu 40994 +INGC0LDQutGD0Y4= 40995 +IHJldml0YWw= 40996 +IGluY29tZXM= 40997 +IGRldGFpbGluZw== 40998 +IEJhY29u 40999 +IOuFuOuemOs= 41000 +IHBhcnJvdA== 41001 +IGNvbGxhYm9yYXRlZA== 41002 +aGVzaWE= 41003 +IHNldmE= 41004 +IHBoeXNpY2lzdA== 41005 +IEJBQ0s= 41006 +15zXmQ== 41007 +IGJpcG9sYXI= 41008 +z4HOtc6v 41009 +Y3Jvcw== 41010 +IGtlZA== 41011 +IGVjb25vbWljYWw= 41012 +IGVuZGluZ3M= 41013 +IHRpY2tz 41014 +IOq3vA== 41015 +IE9saXY= 41016 +b25ncw== 41017 +IGNvbnRpbmVudGFs 41018 +IHdlaXRlcmhpbg== 41019 +IGFjdGl2YXRpbmc= 41020 +IHBvbGxlbg== 41021 +IEFuaw== 41022 +YmF5 41023 +INec15c= 41024 +IEVnZ3M= 41025 +IFJBTVNBWQ== 41026 +IEJFUg== 41027 +IO2bqOyUrA== 41028 +IHBhc3NhZG8= 41029 +IGdyb3VuZGJyZWFraW5n 41030 +cHJlc2E= 41031 +IGhpbGZ0 41032 +IFRlY2huaWNhbGx5 41033 +0YbQuNC5 41034 +Tkk= 41035 +IHR1cm5vdXQ= 41036 +IExhcA== 41037 +IEd3ZW4= 41038 +IFZpa3Q= 41039 +IGVzY29sYQ== 41040 +IENpbmVtYQ== 41041 +IGNvbnN1bW8= 41042 +IFB1cmR1ZQ== 41043 +IHNlbWFuYXM= 41044 +IFBSRVNJRA== 41045 +xrBuZw== 41046 +IHNhY2g= 41047 +IHNhdmFnZQ== 41048 +IFJX 41049 +IDU1MA== 41050 +Ym9sZA== 41051 +IFNpbW1vbnM= 41052 +IHNsYW5n 41053 +IE5hcnU= 41054 +IFRoZW8= 41055 +7ZaI64uk 41056 +Lu+/vQ== 41057 +IHNlaXp1cmU= 41058 +IGhpdmU= 41059 +IGNlbGxwaG9uZQ== 41060 +aWlpaQ== 41061 +IE11c2ljYWw= 41062 +IE51Y2xlYXI= 41063 +w6F2ZWlz 41064 +IHByZXN0aWdl 41065 +IGJhbG0= 41066 +IHJlZmlsbA== 41067 +eWFo 41068 +aGFydA== 41069 +IHRhcHM= 41070 +IGRpc3Bvc2U= 41071 +IE1pY2s= 41072 +IHRoZXJtb21ldGVy 41073 +IG9iZWRpZW50 41074 +IGluZm9ybWHDp8O1ZXM= 41075 +IFdpZGU= 41076 +bW9t 41077 +U3Vk 41078 +IHN1c3BlbmQ= 41079 +IE9ic2Vydg== 41080 +INC70LXRgQ== 41081 +IHRyYXRhcg== 41082 +IEthdHJpbmE= 41083 +IHRoZXJlcw== 41084 +IHRleHRlZA== 41085 +IHN0w7Zy 41086 +IHNuYWls 41087 +IEZpb25h 41088 +IHZpY3RvcmlvdXM= 41089 +IGxpYnJhcmlhbg== 41090 +cHJhY3Q= 41091 +IGZpbm8= 41092 +IEFybXM= 41093 +cHB0 41094 +bHVr 41095 +IHR5cmVz 41096 +IHRvYw== 41097 +IEtvbW11bmVu 41098 +IHJldm9sdA== 41099 +IG1vdGl2YXRlcw== 41100 +IGJpc2V4dWFs 41101 +IHd1cw== 41102 +IGhhbmRsYXI= 41103 +IE1VRUxMRVI= 41104 +IGV4cGVjdGFuY3k= 41105 +IGVtYm9keQ== 41106 +IFByaW1hcnk= 41107 +0YDQtdC5 41108 +IHVuc2NyZXc= 41109 +aWFudGx5 41110 +LOKApg== 41111 +IHNuZWw= 41112 +IHByZXZhbGVuY2U= 41113 +IGVydXB0aW9u 41114 +IGRlc2NyaXB0aXZl 41115 +dmFn 41116 +INCx0YPQutCy 41117 +IG3Dqm1lcw== 41118 +IGV0aG4= 41119 +IGhpam9z 41120 +IEFiZHVs 41121 +IFphaGw= 41122 +YmVsdA== 41123 +IGfDtnN0 41124 +IFRoZXJlc2E= 41125 +IFNVTg== 41126 +IEJha2U= 41127 +IG9wdGljcw== 41128 +IGFwb2NhbHlwc2U= 41129 +cHVycG9zZQ== 41130 +IHLDs8W8bnljaA== 41131 +IGNydXM= 41132 +INCX0LXQvA== 41133 +IGhhcmRlbmVk 41134 +IFRE 41135 +IGdyYXZleWFyZA== 41136 +IFNpYmVy 41137 +IFBvcnRlcg== 41138 +IGV4cGxvZGVz 41139 +IFNvZmlh 41140 +INCS0LXQtNGM 41141 +IHdlYWtlbmVk 41142 +VUxM 41143 +IHBpbmt5 41144 +IGNoYXBlbA== 41145 +IEZyZXM= 41146 +INC/0YDQuNCz 41147 +TUVS 41148 +IFNjaG1pZHQ= 41149 +IER1ZA== 41150 +ZXN0ZW5z 41151 +IG51YW5jZQ== 41152 +IG1vZGlmeWluZw== 41153 +IE3DtmdsaWNoa2VpdGVu 41154 +IEFuYXQ= 41155 +IGVjY2VudHJpYw== 41156 +IFNjcmV3 41157 +IExlaA== 41158 +IGhvbW9nZW5lb3Vz 41159 +IFRhbGw= 41160 +IFJpY2FyZG8= 41161 +w5o= 41162 +aWducw== 41163 +INC70LjRiA== 41164 +IGdlZnJhZ3Q= 41165 +UnVu 41166 +Y2FzdGVy 41167 +bm9pc2U= 41168 +IGFzeW5jaHJvbg== 41169 +xJlkemll 41170 +INee15c= 41171 +IHN1cHByZXNzZWQ= 41172 +QXJ0aHVy 41173 +zq7Pgg== 41174 +w6Jy 41175 +ZGlzdA== 41176 +INC60LDQtA== 41177 +IGjDtnI= 41178 +IDEzNQ== 41179 +IE1vemFydA== 41180 +INGB0L7QsdGL0YLQuA== 41181 +IE51cnNpbmc= 41182 +IEhhaGFo 41183 +IERvcA== 41184 +IHBvbGljZW1hbg== 41185 +tOyXkOyEnA== 41186 +IOq0gOugqA== 41187 +aHl1aw== 41188 +IHJ1Z2dlZA== 41189 +IG51Z2dldHM= 41190 +IENvbW1z 41191 +U3R1ZA== 41192 +INGB0LLQvtC1 41193 +IGN6YXNpZQ== 41194 +IHLDqWdpb24= 41195 +IGZpc2hlcm1lbg== 41196 +IExU 41197 +w5M= 41198 +Y2lhxbw= 41199 +aGVp 41200 +IGNydW1icw== 41201 +IEltbWVy 41202 +IEZlbGQ= 41203 +dGhlc2U= 41204 +IGFkdmVydGlzZXJz 41205 +IHJvYW1pbmc= 41206 +IGZ1bm5pZXN0 41207 +IE5ZVQ== 41208 +IGhlaGU= 41209 +IHBva2luZw== 41210 +IOyViOuPvA== 41211 +aXN0aWNhbA== 41212 +IG9wYXF1ZQ== 41213 +dcOn 41214 +d2lyZQ== 41215 +IFdlYmVy 41216 +IEphY3F1ZXM= 41217 +IDIxMA== 41218 +w7xw 41219 +dXl1 41220 +IGVuZmVybWVk 41221 +IGJ1bXBlZA== 41222 +IFNldw== 41223 +IENoYW5lbA== 41224 +IHBlcnPDtm5saWNo 41225 +IGJldHJheWFs 41226 +IGFsbGV2aWF0ZQ== 41227 +IHbDpGjDpG4= 41228 +IGd1ZXNzZXM= 41229 +IENlbGluZQ== 41230 +YXNzaW5n 41231 +c3Ryb2tl 41232 +IOyhsOs= 41233 +INGC0LXRhdC90L7Qu9C+0LM= 41234 +INC+0YHRgtGA 41235 +IHNvaWVudA== 41236 +RGVhcg== 41237 +IGpz 41238 +IGdlc3Byb2NoZW4= 41239 +YXRoaQ== 41240 +xaFl 41241 +U2V0 41242 +b2dlcg== 41243 +IFJpZw== 41244 +INC80LXRhw== 41245 +IHNlcnZpY2lvcw== 41246 +IFJ1dA== 41247 +INCe0Lk= 41248 +IE15YW5tYXI= 41249 +aWZpZQ== 41250 +IHNuYXBwaW5n 41251 +IEthbWVyYQ== 41252 +IGZlc3RpdmU= 41253 +IEZZ 41254 +IENhcm9seW4= 41255 +0ZbQsQ== 41256 +IGxlZ2dpbmdz 41257 +IHlhdA== 41258 +IGVyZ29u 41259 +IGVwaXPDs2Q= 41260 +IGFub21hbHk= 41261 +dWVzdG9z 41262 +SWQ= 41263 +IGV2YWN1YXRpb24= 41264 +IGdpZ2FieXRlcw== 41265 +IGFuZGFyZQ== 41266 +IFJlbnQ= 41267 +bXQ= 41268 +aXN0aW5l 41269 +IGVzdHJhdA== 41270 +ZXR0dQ== 41271 +IHJlY2ViZXI= 41272 +IGRyYW1hdA== 41273 +cmljdWxhcg== 41274 +YWxuxLF6 41275 +IFNlbmk= 41276 +IG95bg== 41277 +IENoZW1pY2Fs 41278 +INGB0YU= 41279 +IHR1cmY= 41280 +IDE5MTc= 41281 +aXNjZXJuaWJsZQ== 41282 +IG1hbnRlbmVy 41283 +IGV4Y2Vy 41284 +IHNwZWN0cmFs 41285 +IG5ldXJvc2NpZW5jZQ== 41286 +IG1pY3JvZg== 41287 +IGZvcmVpZ25lcg== 41288 +IExhbmth 41289 +INGC0LLQvtGA 41290 +IHRvc3NlZA== 41291 +IHBvYmxhY2nDs24= 41292 +IG1hdGVpeA== 41293 +IHNpZWxsw6Q= 41294 +IG90dA== 41295 +IGNvbXB1bHM= 41296 +YWt1a2Fu 41297 +IG1hbmlmZXN0ZWQ= 41298 +IOyTuA== 41299 +IHV0bW9zdA== 41300 +IHJldmVyc2Fs 41301 +IHBsYWNlYm8= 41302 +IGJsYXQ= 41303 +IFN0dW5kZQ== 41304 +bWFuc2hpcA== 41305 +IGF0dGU= 41306 +IOyGjOqwnA== 41307 +IGlzdGVt 41308 +IGFubmF0 41309 +IFBsYXlzdGF0aW9u 41310 +IHphZA== 41311 +IHF1aXR0aW5n 41312 +IGZhbWluZQ== 41313 +IFJvdWdo 41314 +IEZsYW1l 41315 +IGhldXQ= 41316 +IG9wb3J0dW5pZGFk 41317 +IGZhaXNhaXQ= 41318 +IERQ 41319 +IGRpY2llbmRv 41320 +IE1lbGFuaWU= 41321 +IENhcm5l 41322 +bWVn 41323 +cGV0dG8= 41324 +SlVO 41325 +INC70Y7QsdC+0Lk= 41326 +IG9zdGU= 41327 +IEpKb25haw== 41328 +IHRoZWF0cmljYWw= 41329 +IGludmluY2k= 41330 +IGNvbW11bmlvbg== 41331 +dm9jYWw= 41332 +RWg= 41333 +IERldGFpbHM= 41334 +IHN0cm9sbA== 41335 +IFJheW1vbmQ= 41336 +IEFtZWxpYQ== 41337 +kaU= 41338 +IHByb2R1a3Q= 41339 +IG51ZXZhcw== 41340 +IG11c3Ru 41341 +bWF5xLE= 41342 +Y29sb3JlZA== 41343 +ZGVj 41344 +IGhqw6Rs 41345 +IHNlbnRpbWVudGFs 41346 +IHJlYWxtcw== 41347 +IGtyaXQ= 41348 +IHNleHQ= 41349 +IFBzeWNob2xvZ3k= 41350 +aGls 41351 +INC60L7RgNCw0LE= 41352 +IOuCtOydvA== 41353 +IFVuZGVyc3Rvb2Q= 41354 +IEd1dGVu 41355 +IGdhbmdz 41356 +IGV2ZW5pbmdz 41357 +RW50 41358 +IExlZ2FjeQ== 41359 +IENvbmdv 41360 +IGR1cmNoYXVz 41361 +IGJ1b3k= 41362 +ZXJlbGxh 41363 +V0FO 41364 +UHJl 41365 +INGA0LXQtA== 41366 +IENyaXNpcw== 41367 +IOydvOydtA== 41368 +IG1hbnVzY3JpcHRz 41369 +0LXRgtGA 41370 +IG5vbnByb2ZpdHM= 41371 +IGRpY3RhdG9y 41372 +IGJhc2tldHM= 41373 +IElzaA== 41374 +IHBlcnRv 41375 +IGRhdGFzZXRz 41376 +IGFtcGxl 41377 +Z2ViYXV0 41378 +IGNvbnRyaWJ1dG9y 41379 +IGNpYW8= 41380 +IGNvbmZpcm1pbmc= 41381 +IFVDTEE= 41382 +4pms 41383 +INGB0L0= 41384 +IG92ZXJ0dXJu 41385 +IHVucmVhbGlzdGlj 41386 +IFBpZWNl 41387 +b2NhdGU= 41388 +IGbDpGxsdA== 41389 +cG94 41390 +IOuztOyLnOuptA== 41391 +IOuplOs= 41392 +IENyZWF0aW9u 41393 +0Y7QtNCw 41394 +INeU15A= 41395 +IHdoYWNr 41396 +b2xpdGhpYw== 41397 +Y2VseQ== 41398 +INGB0L7QstGA0LXQvA== 41399 +IHNlcXVlbnRpYWw= 41400 +IHByb2Zlc2lvbmFs 41401 +IGNvb2xz 41402 +IHJlcGVudGU= 41403 +IGFpcmU= 41404 +ZW5uZXM= 41405 +cml0b3M= 41406 +INCS0LjQtA== 41407 +IGvDtnI= 41408 +IEJpdHRl 41409 +dWxhcnM= 41410 +IGluY29ycmVjdGx5 41411 +IHNoYXJwbHk= 41412 +IGJvbWJhcmQ= 41413 +64uY7J20 41414 +IGNocm9tb3NvbWU= 41415 +IGFkdmVydGlzZW1lbnRz 41416 +aHVu 41417 +INGJ0L7QsQ== 41418 +INCU0LDQttC1 41419 +IGJhdGh0dWI= 41420 +IFNubw== 41421 +2ZDZkQ== 41422 +IGJ1ZmZldA== 41423 +IEdyaWQ= 41424 +IEJyZXc= 41425 +aXNldA== 41426 +IEltcG9ydGFudA== 41427 +w7xtw7x6 41428 +IHZldG8= 41429 +IFdlcms= 41430 +IFNoYW0= 41431 +a3Jh 41432 +aWxlZW4= 41433 +aGVhcmQ= 41434 +IGRyYWluaW5n 41435 +IGtsYXNz 41436 +IGJha2F5xLFt 41437 +Y3R1cmU= 41438 +YW1vdXI= 41439 +IHNwb25zb3JzaGlw 41440 +IGRpc3RpbGw= 41441 +IHBhdGlv 41442 +IGtvbWI= 41443 +IG92ZXJ3aGVsbWluZ2x5 41444 +IEphbWFpY2E= 41445 +dWl0ZW4= 41446 +TGl0dGxl 41447 +IExPVA== 41448 +dGHEhw== 41449 +IGNvbW1hbmRlcnM= 41450 +IFdhdHRz 41451 +IE9wdGlvbnM= 41452 +7J2066m0 41453 +QUNU 41454 +IGluZGlzcGVucw== 41455 +IEZvcnNjaA== 41456 +b3RvbQ== 41457 +IM6tz4fOtc65 41458 +IHByYWlzaW5n 41459 +IOyYgeyDgeydhA== 41460 +IGFtYW4= 41461 +IGh5cG5vdA== 41462 +dGhtcw== 41463 +IG5hc3plag== 41464 +IG1vdXJuaW5n 41465 +IFNBWQ== 41466 +Y3lq 41467 +INCz0L7RgdGD0LTQsNGA 41468 +IGNhdQ== 41469 +bWVl 41470 +IHRhZGk= 41471 +TWVk 41472 +IGNhbGlkYWQ= 41473 +IHN0cmlwZQ== 41474 +IM61zr0= 41475 +IEthdHk= 41476 +IEVzY2FwZQ== 41477 +IG3DvHNzdGU= 41478 +INin2YTYpw== 41479 +0LrRgg== 41480 +IGpvYmJhcg== 41481 +IEplanU= 41482 +b3Jhcg== 41483 +IFNlcsOh 41484 +IE1lc3Np 41485 +w6F6 41486 +IFRyYW4= 41487 +IHBpZXJjaW5n 41488 +IGFyaXRobWV0aWM= 41489 +IHN0YWdnZXJpbmc= 41490 +IHBsdWdnaW5n 41491 +IEtBUg== 41492 +dmw= 41493 +tOyY 41494 +IFJlZ2llcnVuZw== 41495 +IE9jenl3acWbY2ll 41496 +IEVkZ2Fy 41497 +IGNvbmR1Y3Rpdml0eQ== 41498 +eWVsbGluZw== 41499 +dmFpcw== 41500 +YWRpYW4= 41501 +IGJ1bGt5 41502 +INGB0YDQsNCy 41503 +INC/0YDQvtC8 41504 +IHBhdmVk 41505 +IGJlbmRz 41506 +IFNraWxsc2hhcmU= 41507 +IE1tbW0= 41508 +IEhvcnJvcg== 41509 +IHR1bWI= 41510 +IGdvb2Z5 41511 +IE1lb3c= 41512 +15nXnNeV 41513 +IFdhc3M= 41514 +IFNjYWxl 41515 +IFJhaw== 41516 +IHByb2plY3Rpbmc= 41517 +IGxpbmd1aXN0aWM= 41518 +IFdvcmxkcw== 41519 +ZW5zZW1ibGU= 41520 +IHBlZ2E= 41521 +c3RvcHBhYmxl 41522 +IGltYmFsYW5jZQ== 41523 +IMO4 41524 +IHRocmlsbGVy 41525 +0LrQvtC70YzQutGD 41526 +IGxlZnRvdmVycw== 41527 +IGNhdmVhdA== 41528 +IFNUUg== 41529 +dW5kYWk= 41530 +IHdhdGVyeQ== 41531 +IE1hcmlu 41532 +IGVnZ3BsYW50 41533 +IEpC 41534 +2YXZg9mG 41535 +dmlkaWE= 41536 +IEZJTg== 41537 +aWNhYmxl 41538 +IHBvZG9i 41539 +IGNvaGVzaXZl 41540 +IFZlcmbDvGd1bmc= 41541 +IFBsYXRv 41542 +0LDRgNC40Yk= 41543 +IGtvdA== 41544 +INCf0L7QvA== 41545 +INC00L7QutGD0Lw= 41546 +IGltcGxhbnRz 41547 +aXNzZXo= 41548 +QnJl 41549 +IGdhc3Bz 41550 +IFRFRA== 41551 +cmF0bw== 41552 +Skk= 41553 +IGF2ZW51ZXM= 41554 +IENob25n 41555 +bGFkxLE= 41556 +2LHYtg== 41557 +IGluaWNp 41558 +IFN1YmFydQ== 41559 +4LiL 41560 +IGFjaHQ= 41561 +IEFyY2hpdGVjdHVyZQ== 41562 +INCy0LXRidC4 41563 +IERldk9wcw== 41564 +IHRvcHBpbmdz 41565 +IG9ic29s 41566 +YWluYQ== 41567 +IEJhbmdrb2s= 41568 +ZXN0cnVjdA== 41569 +IGtvYg== 41570 +IOuTrw== 41571 +INGA0LDQt9C90YvQtQ== 41572 +IHJlZQ== 41573 +IGJpanZvb3JiZWVsZA== 41574 +IERlbW9jcmFjeQ== 41575 +4LmA4Lij4Liy 41576 +INC60L7QvdGC 41577 +IHNlw6c= 41578 +IHJhaGF0 41579 +IHBhcmxpYW1lbnRhcnk= 41580 +IEJhc2g= 41581 +emlhxYI= 41582 +SVRDSA== 41583 +IEJ1YmJsZQ== 41584 +a3TDsw== 41585 +V2hvYQ== 41586 +IGZsYXRz 41587 +em5l 41588 +IHNlcnZpY2lv 41589 +IERldw== 41590 +1bjWgg== 41591 +IHVudGVyc3TDvHR6ZW4= 41592 +IFdpbmRz 41593 +IOyWmOuKlA== 41594 +IGV2YWx1YXRpb25z 41595 +IHJlY2E= 41596 +IGVsdmVz 41597 +Y2hlZXI= 41598 +IGphbA== 41599 +IHJlc3RlZA== 41600 +IHF1aWVuZXM= 41601 +IEJyb29rZQ== 41602 +IOuniOydjOyXkA== 41603 +IGludGVu 41604 +IG9hdHM= 41605 +IHJlZmVyZWU= 41606 +IHBuZXVtb25pYQ== 41607 +IGRlbHZl 41608 +cGVhY2U= 41609 +ZW55 41610 +IG1vc3RyYQ== 41611 +IENhbm5vbg== 41612 +z4HOv8+N 41613 +INCQ0Ls= 41614 +IG1vbnVtZW50YWw= 41615 +zr/Pjc68zrU= 41616 +aW1tZXJz 41617 +YXZpYW4= 41618 +INC00LXQu9Cw0LXRgg== 41619 +IHBpdGNoZXM= 41620 +IEdyb3Zl 41621 +IHNlbWluYXJz 41622 +IHLDqWN1cA== 41623 +IFZvb3I= 41624 +IGRldmVu 41625 +IGRC 41626 +IGJvb3N0aW5n 41627 +ZWdhbg== 41628 +IHdlbHQ= 41629 +IEd1YXRlbWFsYQ== 41630 +IG1pbGVhZ2U= 41631 +IGJlaGFuZA== 41632 +IFdhYXI= 41633 +IFN1cmY= 41634 +IGNhdWxpZmxvd2Vy 41635 +IFR5cg== 41636 +IG1pdGVpbmFuZGVy 41637 +IGRhcmluZw== 41638 +IFNpdHRpbmc= 41639 +ZGxlZA== 41640 +IHJlc2VudG1lbnQ= 41641 +bcOkw59pZw== 41642 +IGZpbG1tYWtpbmc= 41643 +d2FydHM= 41644 +dGhvdWdodA== 41645 +b2xvZ2lxdWU= 41646 +IENPUg== 41647 +IGFjY291bnRlZA== 41648 +IGFwZXI= 41649 +IElOVA== 41650 +b2xhcmU= 41651 +IGFjb21wYcOx 41652 +IMahaQ== 41653 +IG1lcm1haWQ= 41654 +IEJlbnRsZXk= 41655 +YXRvcmU= 41656 +IHByZW4= 41657 +IGV0aGFub2w= 41658 +IGFzdHJvbm9tZXJz 41659 +c2VhdA== 41660 +a2VlcGVycw== 41661 +IGV4ZW1wdGlvbg== 41662 +IGFtbw== 41663 +IOuCmOyEnA== 41664 +IGluaGFs 41665 +IGJvd3M= 41666 +0YHQutGD0Y4= 41667 +MzAwMA== 41668 +IGZlcm1lbnRhdGlvbg== 41669 +IHNpbmtz 41670 +IGNvbWVyY2lhbA== 41671 +IHN0dW1w 41672 +IGNlbGU= 41673 +IFNpc3RlcnM= 41674 +IFJlZ2lzdGVy 41675 +IHNvb3J0 41676 +IG5hdG9taWFzdA== 41677 +IOq3uOumvA== 41678 +IMWeZXk= 41679 +IGh5cGVk 41680 +IFJhZmFlbA== 41681 +IEVpcw== 41682 +IEJhc2ls 41683 +IEFzc2Fzc2lu 41684 +IEFkZQ== 41685 +csOlbg== 41686 +IG9ubGFy 41687 +IG1vdmltaWVudG8= 41688 +IGFkZGl0aW9uYWxseQ== 41689 +IHNsaXQ= 41690 +IENocnk= 41691 +IEludGVydmlld2Vy 41692 +15zXpw== 41693 +IGRpc2w= 41694 +IGxpZ2dlcg== 41695 +0YPQutC4 41696 +YmVyaXNo 41697 +INGA0Y/QtNC+0Lw= 41698 +QVJPTg== 41699 +XSws 41700 +IGx1bWnDqHJl 41701 +IG9sdmlk 41702 +IGZyZXVl 41703 +IFRpbmc= 41704 +IEvDtg== 41705 +IGdlbw== 41706 +IGR5ZWQ= 41707 +0YjQtdC5 41708 +IMW8eWNpZQ== 41709 +IGll 41710 +IHRheHBheWVy 41711 +IHBlxYI= 41712 +IGTDqWNpZMOp 41713 +IGPFk3Vy 41714 +IGVudHdpY2tlbHQ= 41715 +IEhR 41716 +S0s= 41717 +b2Rhcg== 41718 +IGhvbmU= 41719 +IGNvbmZpYW5jZQ== 41720 +IGlzc3Vpbmc= 41721 +IGRpYWdub3N0 41722 +IOyehA== 41723 +INC60YDRg9GC 41724 +INC60LDRgQ== 41725 +IMO+ 41726 +IHJlc3RyaWN0aXZl 41727 +IENhc3Rybw== 41728 +IHXEnw== 41729 +IGVtcHJl 41730 +IE1vbw== 41731 +IEZpZ3VyZQ== 41732 +cGhvbmV0aWM= 41733 +UHJvZg== 41734 +INC/0YDQtQ== 41735 +IHRpbHRlZA== 41736 +IE5lZ2F0aXZl 41737 +IExpbWl0ZWQ= 41738 +bWVubw== 41739 +bGFtYXRpb24= 41740 +IHRydXN0ZWVz 41741 +IGludGVuc2VseQ== 41742 +IGHDp8SxbA== 41743 +IFVzZWQ= 41744 +IHp1bA== 41745 +IGFwcHJlY2lhdGl2ZQ== 41746 +IHRpbmM= 41747 +IGNvbnF1ZXN0 41748 +INi52YbYrw== 41749 +IHN1aWNpZGFs 41750 +IG11bGhlcmVz 41751 +IGRldGFjaA== 41752 +IGthbWVyYQ== 41753 +IEFpclBvZHM= 41754 +SU5ESVNUSU5DVA== 41755 +0LPQu9C40Lk= 41756 +IOuDhA== 41757 +IHdyZXN0bGU= 41758 +IGZpcmVhcm0= 41759 +IGxpcmU= 41760 +cHJh 41761 +IGpld2Vscw== 41762 +IENvcm5lbGw= 41763 +IO2VoOqyjOyalA== 41764 +IHN1Y2tlcg== 41765 +IG5vbWJyZXV4 41766 +IEZlcm0= 41767 +7JuQ7J20 41768 +IFBpcw== 41769 +INC40LfRg9GH 41770 +IG1pdGVu 41771 +IGNldg== 41772 +IFVSTHM= 41773 +IENBUw== 41774 +ZmluZGVu 41775 +IGJyYXZlcnk= 41776 +INGB0LvQvtCy0L4= 41777 +IG5lbmh1bWE= 41778 +IGVuY3VlbnRyYQ== 41779 +IFNoaXJsZXk= 41780 +IHBlcmNlcHQ= 41781 +ZnJhbWVz 41782 +IFJvdmVy 41783 +IEFsYmVydGE= 41784 +b2Nj 41785 +IOudvOqzoA== 41786 +IHPDunBlcg== 41787 +IHByZXN1bWU= 41788 +IGdsYW5k 41789 +IHBhY2luZw== 41790 +IG5ldXJvdA== 41791 +IHNubw== 41792 +IHBsb3R0ZWQ= 41793 +IHBhxYRzdHdh 41794 +IE93bmVy 41795 +IERlZmVuY2U= 41796 +cmlkZ2Vz 41797 +IHdhbGxwYXBlcg== 41798 +b25pYW4= 41799 +QnJv 41800 +IEFyaWFuYQ== 41801 +a3J5 41802 +IG5hcnJhdGlvbg== 41803 +IGNyaWFuw6dh 41804 +IEFscmlnaHR5 41805 +IOydvQ== 41806 +IOyTsOqzoA== 41807 +IGxpYmVyYXRlZA== 41808 +IGV4Y2VlZHM= 41809 +IGRvbWluYXRpbmc= 41810 +IGJha8Sxbg== 41811 +bGs= 41812 +IHNsYXBwZWQ= 41813 +0JfQtA== 41814 +dW1lbnRhbA== 41815 +Z2V0dGFibGU= 41816 +IFJveg== 41817 +IEd1bA== 41818 +b3V2ZXJ0 41819 +IHNtYXNoaW5n 41820 +YXp1amU= 41821 +U2ly 41822 +IGdyYXRlZA== 41823 +QVRU 41824 +IGFydGljdWxhdGVk 41825 +IHN0b3Jh 41826 +IGV4dHJhdGVy 41827 +4buJ 41828 +z4PPiQ== 41829 +d2ly 41830 +IE1ldGU= 41831 +SW1w 41832 +IGhvb3I= 41833 +cGhhc2U= 41834 +INGH0YPQtA== 41835 +INCx0YDQsNGC 41836 +IGlkYWc= 41837 +IGNpbnE= 41838 +IGFwYXJlY2Vy 41839 +IElDRQ== 41840 +IHF1aWV0ZXI= 41841 +IGZhbHNjaA== 41842 +YWRpYw== 41843 +INC/0LvRjtGB 41844 +IE1lbnU= 41845 +dXhl 41846 +IFTDtGk= 41847 +IE1JTA== 41848 +IEhhag== 41849 +dmVyYnM= 41850 +IHR1YmluZw== 41851 +IG1hY2hzdA== 41852 +IGRhbGw= 41853 +VGVy 41854 +IGdlbGVu 41855 +IGN1Y3VtYmVycw== 41856 +IHdpZGdldHM= 41857 +IGRldnJhaXQ= 41858 +IG1pa2U= 41859 +IGludHJh 41860 +7ZWt 41861 +IMOF 41862 +IEh1bmQ= 41863 +cXVhcnRlcg== 41864 +IGV3 41865 +IGtlbHVhcg== 41866 +IG1hdHM= 41867 +IFRyaWNr 41868 +IEluZmluaXRl 41869 +nqg= 41870 +IHBlYWM= 41871 +IFByb3Rl 41872 +4KWI 41873 +IDE3MDA= 41874 +IFJhaXM= 41875 +4LmK 41876 +w6RobHQ= 41877 +aWZpY2E= 41878 +YWltZXI= 41879 +YcSH 41880 +IGFrbA== 41881 +IFZvbHZv 41882 +IFR5c29u 41883 +IFJvbmc= 41884 +aXJzaW4= 41885 +IOKZpQ== 41886 +IHBhcm9keQ== 41887 +bmF0aW9uYWw= 41888 +cG9k 41889 +YXlk 41890 +YW1ibGVk 41891 +IGdvdmVybm1lbnRhbA== 41892 +IGNvbmZvcnQ= 41893 +aWNpZGVz 41894 +IG5hc3pl 41895 +IFNoZXBoZXJk 41896 +IEtvbnRha3Q= 41897 +IGRpc3Byb3BvcnRpb25hdGVseQ== 41898 +INC60LvRjtGH 41899 +IHTDrXR1bG8= 41900 +IHNpbmE= 41901 +IGNvbXBvc2l0aW9ucw== 41902 +IFBG 41903 +IHZlcmts 41904 +IHN1aXZyZQ== 41905 +IGFzdGE= 41906 +IHN0YWtlaG9sZGVy 41907 +IHNhbW1h 41908 +IEJMQUNL 41909 +IG5vZGln 41910 +IGxldmE= 41911 +IGp1ZWdvcw== 41912 +IGVybnN0 41913 +IGJvdHRvbXM= 41914 +IFNpZ25hbA== 41915 +IHBvbGx1dA== 41916 +IGR1cmE= 41917 +TXVzaWs= 41918 +INC60L7QvNC90LA= 41919 +INCy0YHQtdC5 41920 +YWx0ZXI= 41921 +IFN0ZWY= 41922 +IEJpZ1F1ZXJ5 41923 +IFZlcmFudHdvcnR1bmc= 41924 +IOuLueyXsA== 41925 +IHF1aXp6 41926 +IExldHRlcg== 41927 +IEludmVzdG1lbnQ= 41928 +0YjRgg== 41929 +kOuNsA== 41930 +IGVuY29kaW5n 41931 +IHTDpG5rZXI= 41932 +IEt3 41933 +YW5uaWU= 41934 +MTEw 41935 +IHp3eQ== 41936 +IOynpw== 41937 +IGRhdw== 41938 +ZXN0w6Q= 41939 +IGRlY2VpdmU= 41940 +IEzDpG5kZXI= 41941 +aXNrbw== 41942 +IHBvZHN0YXc= 41943 +IFBoYXJhb2g= 41944 +7LOk 41945 +w7psdA== 41946 +IHR5w7Y= 41947 +IG11c2lteQ== 41948 +IHBj 41949 +IE5U 41950 +IENvc3Rjbw== 41951 +IM+Dzr/PhQ== 41952 +IHVuaW4= 41953 +cm91bmRz 41954 +IHJlbWluZGVycw== 41955 +IHB1aXNxdQ== 41956 +IGtyaWpnZW4= 41957 +IHdvcmtmbG93cw== 41958 +bmV0ZW4= 41959 +IOuQmOyngA== 41960 +IHNsZWVr 41961 +IGNvd29ya2Vycw== 41962 +YW1pZW50b3M= 41963 +IHdpdGNoZXM= 41964 +YmFhcg== 41965 +ZXRpZXM= 41966 +IHVubmF0dXJhbA== 41967 +IFNpY2s= 41968 +IEVmZW5kaQ== 41969 +amNpZQ== 41970 +IGNoYW1hZG8= 41971 +7JiA7Iq164uI64uk 41972 +IHByemVkc2nEmWJpb3I= 41973 +IGJvb2tzdG9yZQ== 41974 +IOyeoOq5kA== 41975 +IFNlcGFy 41976 +YW5naQ== 41977 +RXZldA== 41978 +IGVtZXJnZW5jaWVz 41979 +IFhNTA== 41980 +0L3QtA== 41981 +pbTrqbQ= 41982 +IOq/iA== 41983 +IOuTpOqzoA== 41984 +IHN1dA== 41985 +IFdpeg== 41986 +IGR5bmFtaWNhbGx5 41987 +b3BlcmF0aW9u 41988 +ZG90 41989 +IGluZWZmaWNpZW50 41990 +Y2xlYXJz 41991 +IG11bmRhbmU= 41992 +IFZlcm9uaWNh 41993 +2LHYqg== 41994 +cG9zZQ== 41995 +cGFp 41996 +IG55bG9u 41997 +IGF1bWVudGFy 41998 +IGFsbHRzw6U= 41999 +dmFr 42000 +IGNhcGFjaWRhZA== 42001 +IFdyZXN0bGluZw== 42002 +IGZlcnRpbGU= 42003 +IG3DqWc= 42004 +IE5hbm8= 42005 +0LDRgtC10LvQuA== 42006 +IOyWtOyp 42007 +IHRvY2E= 42008 +IEVn 42009 +4oE= 42010 +IOyz 42011 +bHVlbnQ= 42012 +IHNvbGVt 42013 +IGNpbmVtYXQ= 42014 +IFF1ZWw= 42015 +IG9yYml0cw== 42016 +IEhhcm0= 42017 +cmljYW5lcw== 42018 +IGJsdXJyZWQ= 42019 +INin2YTYsNmK 42020 +IGppbg== 42021 +IGdyZW5hZGVz 42022 +IGF0cm9j 42023 +IHdoZXJlaW4= 42024 +IHJlcGxlbg== 42025 +IENvbWljcw== 42026 +ZWRhYW4= 42027 +IGRlbmlt 42028 +IGVtYmFycmFzc21lbnQ= 42029 +IEdvbWV6 42030 +IEJ1c2Fu 42031 +aXZpdGllcw== 42032 +IHNhbGl2YQ== 42033 +IG1lcms= 42034 +IGlsZ2lsaQ== 42035 +INC60YDRg9Cz 42036 +IG9jY3VwYXRpb25hbA== 42037 +IFNhaGli 42038 +U3Rh 42039 +IGFkdmlzZXI= 42040 +IFRydWx5 42041 +IFlFQUg= 42042 +IOyeiOuKlOuNsOyalA== 42043 +emV3 42044 +YmFyZW4= 42045 +IHN0b2w= 42046 +IGJlbG9uZ2luZ3M= 42047 +IFJlc2VhcmNoZXJz 42048 +IGVmZW5kaW0= 42049 +z4XPhw== 42050 +xYLEhWN6 42051 +IFVuZw== 42052 +IEp1Yg== 42053 +IGNlcmVicmFs 42054 +4buHdQ== 42055 +INem16g= 42056 +INC/0L7QtNCw0YA= 42057 +IG1hcmNoZWQ= 42058 +IGF3YWtlbg== 42059 +IGFrbw== 42060 +IGFjZXB0 42061 +IGluaXRpYXRpb24= 42062 +bG90 42063 +IHfFgmFz 42064 +IE1vbmdvbA== 42065 +dXRyYWw= 42066 +IHRlbnRhbmc= 42067 +IGludmVyc2lvbg== 42068 +IOydtO2bhA== 42069 +IGxvaw== 42070 +xYJieW0= 42071 +UlM= 42072 +IHN0b3M= 42073 +IGludGVyYWN0cw== 42074 +IENhbGVuZGFy 42075 +IHZhbmlzaA== 42076 +IHBoeXNpb2xvZ3k= 42077 +IGxpbmVhcmx5 42078 +IEpZ 42079 +xJ9hbg== 42080 +ZnVuZGVk 42081 +aXppZXJ0 42082 +IHptaWFu 42083 +IEdyaWxs 42084 +IHVuYmVsaWV2YWJseQ== 42085 +b3RlY2hub2xvZ3k= 42086 +IENhcnM= 42087 +INmG24E= 42088 +IEZvbGdl 42089 +IEJldmVybHk= 42090 +w6Rpc2NoZW4= 42091 +IGF1bWVudG8= 42092 +7JuM7ISc 42093 +IG1haWxib3g= 42094 +IHN0ZWVkcw== 42095 +IFBlYWs= 42096 +IHd5a29y 42097 +IHByYXdkYQ== 42098 +0LjRgtGL 42099 +IGRpc2NvdXJz 42100 +IGFjY3VzZQ== 42101 +Y2Vzc28= 42102 +dWlyZQ== 42103 +INC/0L7Qv9Cw0LQ= 42104 +IHRoYQ== 42105 +IG1lYXN1cmFibGU= 42106 +YmVlcGluZw== 42107 +IElubmVu 42108 +INC/0Y/RgtGM 42109 +IGNvbXBldGVk 42110 +IEl0YWxpYW5z 42111 +IGVuY29udHJh 42112 +IG5pZXc= 42113 +IGZpbHRyYXRpb24= 42114 +INC/0YDQvtGE0LXRgdGB 42115 +IHBhamFtYXM= 42116 +IGNpbGFudHJv 42117 +IFNvYw== 42118 +THVj 42119 +IOq5gOs= 42120 +IE9kZA== 42121 +IGh5ZHJhdGlvbg== 42122 +0LzQvtCy 42123 +IHBseXdvb2Q= 42124 +IENvbXBldGl0aW9u 42125 +0LjQt9C90LXRgQ== 42126 +ZmxpZ2h0 42127 +IEJlaXQ= 42128 +Ym91cmc= 42129 +IGNvaWxz 42130 +IGPDom1lcmE= 42131 +IGFtZW5kZWQ= 42132 +xIFt 42133 +QW5nZWw= 42134 +IFN0YWN5 42135 +Zmxv 42136 +IG5vcm1hbGU= 42137 +IGNvbnNvbmFudA== 42138 +IGFjY29tcGFueWluZw== 42139 +0LrRlg== 42140 +IGlycml0YXRlZA== 42141 +IGbDpXR0 42142 +IGNyb2NvZGlsZQ== 42143 +kJjripQ= 42144 +IGFsYmVpdA== 42145 +IFBoaWxvc29waHk= 42146 +xYY= 42147 +eXRpYw== 42148 +IHLDqGc= 42149 +IGZyYW7Dp2E= 42150 +IGF0dGVudGl2ZQ== 42151 +SGFt 42152 +IGFscmVkZWRvcg== 42153 +c2Vp 42154 +INGB0LLQuNC0 42155 +IGdpbWJhbA== 42156 +IGNoaW5h 42157 +IPCfjrY= 42158 +INCS0LDQvA== 42159 +IHN0aW11bGF0aW5n 42160 +IE9yYQ== 42161 +eXRlcw== 42162 +IGhlZnQ= 42163 +IGhhdGVycw== 42164 +IGNvbXBsZXhlcw== 42165 +IDAz 42166 +csOzZA== 42167 +Y2xlYXI= 42168 +IGJlc3RlaHQ= 42169 +d255 42170 +bW9pbA== 42171 +IHNsb3BweQ== 42172 +IGluc2lnbmlmaWNhbnQ= 42173 +IGR1YmJlZA== 42174 +IOuWoA== 42175 +IGNvbnNpZ28= 42176 +0LvRg9GI0LDQuQ== 42177 +U24= 42178 +INeU16Y= 42179 +IM6M 42180 +IG5hZHppZQ== 42181 +IGZyZXNobWVu 42182 +dGFh 42183 +IHV3YWfEmQ== 42184 +IEZhdm9yaXRl 42185 +IENyaW1pbmFs 42186 +IGV2aWRlbg== 42187 +IHN5bWI= 42188 +TGVz 42189 +IEJlYXU= 42190 +dW5lZA== 42191 +cGxlbWVudA== 42192 +QWM= 42193 +IGRlcm1hdA== 42194 +IE5vbGFu 42195 +0YvQvw== 42196 +IHNpdHQ= 42197 +IGV2ZXJsYXN0aW5n 42198 +IGVzdGF2YW0= 42199 +INC80LjQug== 42200 +IGtow6Fj 42201 +IGludml0 42202 +IHRyZWJsZQ== 42203 +IGppZw== 42204 +bWFuaQ== 42205 +IHR1dm8= 42206 +IFJVUw== 42207 +IEVyZGU= 42208 +IER6acSZa3VqxJk= 42209 +IGJsdWViZXJyaWVz 42210 +a2VsbA== 42211 +YWNpb25z 42212 +0LLQuA== 42213 +TEVU 42214 +IHNwcm91dA== 42215 +IHNwb3I= 42216 +IGLDqm4= 42217 +IE1vbmE= 42218 +IENvbnRhaW4= 42219 +IEtleXM= 42220 +0L7Qt9GP 42221 +IGZ1bmNpw7Nu 42222 +IHJhcHBlbGxl 42223 +IGV2b2x2ZXM= 42224 +IHNjcmFwaW5n 42225 +IGNvbWVudMOhcmlvcw== 42226 +IHByYXRpcXVl 42227 +IGF1eGlsaWFyeQ== 42228 +IFNwb25nZQ== 42229 +0YHQutC40Lw= 42230 +dXZv 42231 +INGB0LDQvNC+ 42232 +IHNhbms= 42233 +IGhpZ2h3YXlz 42234 +IGludmVudGlvbnM= 42235 +INC40L3QvtCz0LTQsA== 42236 +IGNyZWF0aXZlbHk= 42237 +IGJlbmNobWFya3M= 42238 +b25jw6k= 42239 +YWxhbA== 42240 +IHNvdHRv 42241 +IGNhbHZlcw== 42242 +IE1vdg== 42243 +IGxhdmVuZGVy 42244 +IGV5ZWJhbGxz 42245 +IGF3YWl0aW5n 42246 +IFBhdHk= 42247 +2YTZhw== 42248 +IGVtYnJvaWRlcnk= 42249 +IGR1aA== 42250 +IGNhbWFy 42251 +IEJPQg== 42252 +IHNwYWNlZA== 42253 +IGfFgm9z 42254 +0LDQtdC80YHRjw== 42255 +IGVzY2FwZXM= 42256 +IFJvZ3Vl 42257 +emN6 42258 +6J4= 42259 +rOulvA== 42260 +IE1vxbxl 42261 +INC10YHRgtC1 42262 +IEJ1cmFkYQ== 42263 +d2Q= 42264 +dXV1dQ== 42265 +IHNhc2g= 42266 +IEx1Yg== 42267 +IG5vdGVib29rcw== 42268 +IG1hZQ== 42269 +IGNvbmZsaWN0aW5n 42270 +IHN1bW1lcnRpbWU= 42271 +YWNhcw== 42272 +IGJhdWVu 42273 +Ymxvd2luZw== 42274 +4bqhbw== 42275 +IOyWuOygnA== 42276 +IFNlbmhvcg== 42277 +IGlQaG9uZXM= 42278 +IFF1YXJ0ZXI= 42279 +IOygnOuMgOuhnA== 42280 +dcOf 42281 +IOuniOustOs= 42282 +IHNldHRsZXJz 42283 +IGNyZXN0 42284 +IHRyYW5zYw== 42285 +IHJpb3Rz 42286 +IGNsb25lcw== 42287 +IE9wcmFo 42288 +zq/Otg== 42289 +IHBhbHM= 42290 +Li4uLi4uLg== 42291 +INGA0L7RgdGB 42292 +IExhc2Vy 42293 +IHphY3p5 42294 +IHNldmk= 42295 +IHJlZ2VuZXJhdGlvbg== 42296 +7Je8 42297 +d291bGQ= 42298 +IMO8emVyaW5l 42299 +IFN0cmHDn2U= 42300 +IHZlbmdlYW5jZQ== 42301 +IHJlcg== 42302 +IFNhZmFyaQ== 42303 +IEhFWQ== 42304 +IHNhY2Fy 42305 +IGltYWdlbQ== 42306 +IEJ1bmRlc3Q= 42307 +bWVzYW4= 42308 +IFBhc3Rl 42309 +IHNpeno= 42310 +INC/0L7RgdGC0YPQvw== 42311 +15TXlQ== 42312 +dHJhZA== 42313 +IGZyYW7Dp2Fpc2U= 42314 +IEJvdQ== 42315 +IGJhcnJl 42316 +IFpoaQ== 42317 +IEdlZXo= 42318 +aWhhZA== 42319 +IHJlY29ub2M= 42320 +IHBlbGln 42321 +IGluZGljZXM= 42322 +IOuwlOuA 42323 +IGNvbmR1Y3Rpb24= 42324 +IOyVhQ== 42325 +IHpla2Vy 42326 +IGZ1bQ== 42327 +IFfDvHI= 42328 +YnJlYWtlcg== 42329 +IHNwcml0ZQ== 42330 +Q3Jvd2Q= 42331 +IG9wZW5lcg== 42332 +IG9sdg== 42333 +IGJ1ZW5hcw== 42334 +IFNpbGs= 42335 +IEhJTQ== 42336 +a29w 42337 +Y29tcGw= 42338 +IHBvc3Nvbm8= 42339 +s4A= 42340 +IG9zY2lsbGF0b3I= 42341 +IFNpdGg= 42342 +0LDQttC4 42343 +IHJhZnQ= 42344 +aGFsbA== 42345 +IHNjaG5lbGxlcg== 42346 +IGltcG9ydGluZw== 42347 +IGFzc2VtYmxpbmc= 42348 +IHViaXF1 42349 +IGFjdGl2YXRlcw== 42350 +YWNjaQ== 42351 +k5zrpbw= 42352 +IGNvbXBvc2Vycw== 42353 +IEFDTA== 42354 +Q29uZg== 42355 +IOy9mA== 42356 +INC90LXQutC+0YLQvtGA0YvQtQ== 42357 +IGNhbmRpZXM= 42358 +IE11c3M= 42359 +4LmD4LiK 42360 +IGR1ZGE= 42361 +0L3QuNC60L7QvA== 42362 +bWVkZW4= 42363 +IOyWtOuVjA== 42364 +IFllc2h1YQ== 42365 +emFn 42366 +aG9kb3U= 42367 +IGFsb3Vk 42368 +IFBhbG1lcg== 42369 +aW1pemU= 42370 +IG1hcml0aW1l 42371 +IGNvbW11bmFs 42372 +IGJhZGdlcw== 42373 +IHJ1Z2J5 42374 +IG1hcnNobWFsbG93 42375 +IGZpZXJ5 42376 +IGFjY291bnRhbnQ= 42377 +IGFibGE= 42378 +IE1vbnJvZQ== 42379 +IEZvbnQ= 42380 +IEJvb3N0 42381 +IEJhcm5lcw== 42382 +YW5zd2Vy 42383 +IEJ1cm5pbmc= 42384 +IGFuZ2Vm 42385 +IFdlc2xleQ== 42386 +bGxz 42387 +7LU= 42388 +16nXnA== 42389 +aWxpxZtteQ== 42390 +15DXnw== 42391 +YW11cmE= 42392 +IEZ1ag== 42393 +IHBhbmk= 42394 +IFRyb3A= 42395 +YXJiZWl0ZW4= 42396 +IHJ1ZQ== 42397 +IFJhcmU= 42398 +w6RuZ2Vu 42399 +INGB0LzQvtGC0YDQtdGC0Yw= 42400 +INCa0LDRgA== 42401 +IE1UVg== 42402 +Ym9hcmRpbmc= 42403 +XVs= 42404 +IOugiOs= 42405 +c3RhbmJ1bA== 42406 +cGllbHQ= 42407 +IEhhcmR5 42408 +IEVuZ2FnZW1lbnQ= 42409 +IERpZW5zdA== 42410 +IHfDpHJlbg== 42411 +IGZ1ZWdv 42412 +IGVzdHJ1Y3Q= 42413 +IGNhbGFt 42414 +IFJlc3BvbnNl 42415 +IE1vaGFtbWFk 42416 +IHJlc2lzdGluZw== 42417 +IGR1cmFudA== 42418 +IE9MRUQ= 42419 +IHZlcno= 42420 +bcOkbg== 42421 +INmG25I= 42422 +IHBhcmFub2lk 42423 +IEF3YXJl 42424 +IEVuZ2luZWVycw== 42425 +IHByb2NlZHVyYWw= 42426 +IHBlcnNvbm5hZ2U= 42427 +IGZhcmtsxLE= 42428 +Zmxvd2luZw== 42429 +INC80LXRgdGC0LA= 42430 +IEJhcmU= 42431 +aXN0ZW0= 42432 +IHBvY3rEhXRrdQ== 42433 +IHBlcnNvbmFqZXM= 42434 +IOyWtOugtQ== 42435 +rYk= 42436 +INCl0L7RgtGP 42437 +IHVuc2V0dA== 42438 +IEFic29s 42439 +IOG6pXk= 42440 +IE1BWU9S 42441 +0L/QvtC70L3QtQ== 42442 +IGluZm9ybWluZw== 42443 +IGFtcHM= 42444 +0J/RgA== 42445 +IOutlA== 42446 +YWVkYQ== 42447 +INeU15HX 42448 +4bqlbg== 42449 +a2VsaWpr 42450 +IGF0aGVpc3Q= 42451 +IHRyb3V0 42452 +IG5ldWVz 42453 +IE5va2lh 42454 +bWFjaGVu 42455 +IHdob2xlc2FsZQ== 42456 +xLFyZA== 42457 +SW5z 42458 +INGN0L8= 42459 +IHByaWNr 42460 +IEtpbmRlcm4= 42461 +4LiX4Liz 42462 +IGNsYXNzeQ== 42463 +IMOubnQ= 42464 +IFNob3BpZnk= 42465 +INGB0L7RgA== 42466 +INC30LDQutGA0Ys= 42467 +enVr 42468 +IHVuaXZlcnNhbGx5 42469 +IHRlYXNwb29ucw== 42470 +IHJlY291bnQ= 42471 +IG7DpWdvbnRpbmc= 42472 +IFh1ZQ== 42473 +aXNpw6htZQ== 42474 +IHdlYWtlc3Q= 42475 +IHRlxZ9la2vDvHI= 42476 +IG1hdGhlbWF0aWNhbGx5 42477 +IEhvcw== 42478 +IO2VnOuLpA== 42479 +IHBhcnRhZ2Vy 42480 +IERhcnI= 42481 +6ro= 42482 +IM61zro= 42483 +IGdlcm1z 42484 +IGdlbGly 42485 +IGR1bA== 42486 +LC0= 42487 +IOyWuOs= 42488 +INee16Y= 42489 +INGP0YA= 42490 +IHF1b3RpZA== 42491 +IHByenlzeg== 42492 +IGhhcmRuZXNz 42493 +IGFxdWF0aWM= 42494 +IEp1bmdsZQ== 42495 +IFBDUg== 42496 +IEVsaW90 42497 +IG9zdHI= 42498 +IG1hcGE= 42499 +ZXNzw6Q= 42500 +IEdJUg== 42501 +IERyaXZpbmc= 42502 +IFNhbWk= 42503 +IE1lZGllbg== 42504 +IENvbXBhbmllcw== 42505 +IFBoYXJt 42506 +c2VpdHM= 42507 +IFJpbQ== 42508 +IM6/z4DOvw== 42509 +IHdlaXRlcmVu 42510 +IHBpenphcw== 42511 +IEx5ZGlh 42512 +IEhlaWdodHM= 42513 +IHNpbmNlcml0eQ== 42514 +IG5vc3Nhcw== 42515 +IGTFgg== 42516 +IGFsYXJtaW5n 42517 +IENhdWM= 42518 +INGB0LzRi9GB 42519 +ZmFjaW5n 42520 +YmFncw== 42521 +V1c= 42522 +INi02Yo= 42523 +IGNvdXJ0cm9vbQ== 42524 +IFBoaWxsaXA= 42525 +IOqyg+yymOufvA== 42526 +IFNwaWVsZXI= 42527 +IGthbnQ= 42528 +IGFkbWl0dGluZw== 42529 +IGNvbnRhaW5tZW50 42530 +IHJlbW92YWJsZQ== 42531 +IGp1bXBlcg== 42532 +Zm9jdXNlZA== 42533 +INC40YLQvtCz0LU= 42534 +INCi0LXQvA== 42535 +IHZhc2U= 42536 +IFVTQw== 42537 +IE1vbmF0ZQ== 42538 +IEphY29icw== 42539 +IEhPTA== 42540 +aWtlZA== 42541 +ZXJ3ZWlzZQ== 42542 +IGdvb2RpZXM= 42543 +IGhvbWFnZQ== 42544 +15vXqdeZ15U= 42545 +IHF1YWlz 42546 +IGluaWNpYWw= 42547 +IGd1YXJkaW5n 42548 +IGRheno= 42549 +IGNvbWJvcw== 42550 +INGD0L/RgNCw0LI= 42551 +IFRhbGVudA== 42552 +IMOzcg== 42553 +IGludGVybWl0dGVudA== 42554 +IE1jQ2FydGh5 42555 +IHNwYW5z 42556 +IHR5cmU= 42557 +IHF1eQ== 42558 +anV0 42559 +IFplbnQ= 42560 +IGdhdA== 42561 +IHNjYWZmb2xk 42562 +IG5lY2VzYXJpbw== 42563 +IFphaGxlbg== 42564 +IFNBTkQ= 42565 +IFBV 42566 +RXZlcnl0aGluZw== 42567 +LS0tLS0tLS0tLS0tLS0tLQ== 42568 +INCy0LfRj9GC0Yw= 42569 +IHNwYXJrcw== 42570 +IHBlbmR1bHVt 42571 +157Xnw== 42572 +IOyDieq5 42573 +IG11bHRpcGxpZXI= 42574 +INC70LDQtNC90L4= 42575 +dXJhdA== 42576 +IHVwc2V0dGluZw== 42577 +YmFr 42578 +IOy1nOuMgA== 42579 +IGFuw6Fs 42580 +IEpPRQ== 42581 +IGtvc3Rlbg== 42582 +IFBhdHR5 42583 +IEd1aW4= 42584 +Y2tlZA== 42585 +IEVneXB0aWFucw== 42586 +IENpdGl6ZW5z 42587 +16jXmw== 42588 +INCV0YnQtQ== 42589 +INC50L7Qs9C+ 42590 +IHNub3dmbA== 42591 +IGxla2tlcg== 42592 +IGFjb3N0 42593 +IEJhYmU= 42594 +IGdhbWJsZQ== 42595 +IGFkamVjdGl2ZQ== 42596 +0LrQuNC80Lg= 42597 +b3lz 42598 +IG1vbnRyZQ== 42599 +IEh5dW5kYWk= 42600 +IG1vaXN0dXJpemluZw== 42601 +IG1venphcmVsbGE= 42602 +T09P 42603 +IGZhY3VsdA== 42604 +IGRvZXQ= 42605 +IGZlYXJsZXNz 42606 +IGVzcHJlc3Nv 42607 +IGFsbG9yYQ== 42608 +IENpbmM= 42609 +IGNvbnRlw7pkbw== 42610 +IFBlbG9zaQ== 42611 +IG1pbmRlcg== 42612 +cm9vdA== 42613 +IO2VoOs= 42614 +INC/0LDQtA== 42615 +IENhbGxpbmc= 42616 +IENvbmZpZw== 42617 +IENvbnNvbGU= 42618 +aW5za3k= 42619 +w6luZXJnaWU= 42620 +IHNvbGl0YXJ5 42621 +0L7QtNC1 42622 +IGd1YXJkZWQ= 42623 +MTYw 42624 +INC/0YHQuNGF 42625 +IFNoYXA= 42626 +IHRpdHJl 42627 +b2xvZ25l 42628 +INC/0LDRgNGD 42629 +IFBSRQ== 42630 +IGxu 42631 +IE1pdGds 42632 +IENhcnJ5 42633 +IHNwaW5k 42634 +IENhbnRvbg== 42635 +IGtpbmdkb21z 42636 +cmVtbw== 42637 +IHJhZ2luZw== 42638 +IGluY2FwYWJsZQ== 42639 +IFdS 42640 +INGB0L7QsdGB0YLQstC10L0= 42641 +INC60LDQutC40YU= 42642 +IFNIRQ== 42643 +64u57Z6I 42644 +IHNjYXJjaXR5 42645 +IHBlcmRl 42646 +IGV4aXRz 42647 +IFNpbmdlcg== 42648 +IHN1cHBlcg== 42649 +IG11bmljaXBhbGl0eQ== 42650 +IERpdmVyc2l0eQ== 42651 +IHRpcm8= 42652 +aWVscw== 42653 +IGzDrWRlcg== 42654 +IGJsdWZm 42655 +IGF0cmE= 42656 +bHlz 42657 +IG1haGQ= 42658 +IGPDs2RpZ28= 42659 +IEhhcmxlbQ== 42660 +cnVsZQ== 42661 +aWNpdHk= 42662 +IHNpbXBsaXN0aWM= 42663 +IEtvbnN0 42664 +RUxMSQ== 42665 +IGbDtnJzdGE= 42666 +IGNvbnN0aXR1dGVz 42667 +INGB0YLQvtGA0L7QvdGD 42668 +IHVyZ2Vk 42669 +IFBhbmRh 42670 +7LCo6w== 42671 +cmVjZQ== 42672 +IHBhdHJpb3Q= 42673 +IENydXNo 42674 +IHdpbms= 42675 +0L7QudGC0Lg= 42676 +dXJhbsOnYQ== 42677 +IHNlaXp1cmVz 42678 +IGVsZWN0cm9k 42679 +IERvbmtleQ== 42680 +IElV 42681 +IE1PUw== 42682 +IGFsa2Fs 42683 +7LSJ 42684 +YmVzb25kZXJl 42685 +IHBhcmFsbGVscw== 42686 +IGJpdHRlcm5lc3M= 42687 +w6R0dHJl 42688 +ZXNzaW9uYWw= 42689 +IHNveWJlYW4= 42690 +IGNvbGxhYg== 42691 +IFJlcG9ydGluZw== 42692 +INC60L7QvNC/0LDQvdC40Lg= 42693 +IHdzenlzY3k= 42694 +IENydW5jaA== 42695 +aXNlZW4= 42696 +IGFtYmFzc2Fkb3Jz 42697 +IENoZXY= 42698 +0L7QstGL0LU= 42699 +c2Nh 42700 +INGA0LXRiNC40Ls= 42701 +0L7RgtC+ 42702 +IGdsZWljaHplaXRpZw== 42703 +bWVybg== 42704 +w7xzdA== 42705 +IEhhZQ== 42706 +s7TqsqDsirXri4jri6Q= 42707 +IHNob3Jlcw== 42708 +IGRlcHJlc3M= 42709 +IGFob3I= 42710 +IFN0ZXVlcg== 42711 +YWho 42712 +IHJldmlzZQ== 42713 +INGB0LDQvNGL0LU= 42714 +amF0 42715 +IGhlcmJhbA== 42716 +IGN1w6FudA== 42717 +IGJ1bmE= 42718 +bmllanN6ZQ== 42719 +RmluYWxseQ== 42720 +15XXlg== 42721 +Y2pl 42722 +IOyeiOqxsOuToOyalA== 42723 +IOuCmOuI 42724 +IHByemVzdA== 42725 +bGljYQ== 42726 +IER1Y2g= 42727 +0ZbQudGB0Yw= 42728 +cGFzc2Vu 42729 +IHNhdGlzZmllcw== 42730 +IEFkZGl0aW9uYWw= 42731 +IGPDoW1hcmE= 42732 +0LXRh9C10L3QuNC1 42733 +IHBvbXA= 42734 +IOunkOydtA== 42735 +IE1pbGxz 42736 +0LXQstC40LQ= 42737 +IHJlc3BlY3RhYmxl 42738 +IGZpbGFtZW50 42739 +IHZlbmRlcg== 42740 +IG1hdHRlcmVk 42741 +b3VyZQ== 42742 +7Li1 42743 +S29yZWFu 42744 +IGVzdHVkaW8= 42745 +IGNhY3R1cw== 42746 +IFZpdmU= 42747 +IFJhZw== 42748 +IGNvbXBsaXF1w6k= 42749 +INmI24E= 42750 +IHRhbw== 42751 +pr8= 42752 +U2luY2U= 42753 +IGplb3BhcmQ= 42754 +IFNlbGw= 42755 +IOyYmw== 42756 +IGtldG8= 42757 +IGludGVsaWc= 42758 +IEFuZ2Vi 42759 +IHRpZGVu 42760 +IHNvY2lv 42761 +IHJlbWluaXNjZW50 42762 +IGNhcmVnaXZlcg== 42763 +U3BhY2U= 42764 +IEV4ZXJjaXNl 42765 +IEJlY29tZQ== 42766 +w6p0cw== 42767 +YWtr 42768 +IS4u 42769 +INGB0L/RgNC+0YE= 42770 +IM6xz4DOvw== 42771 +IHNob290aW5ncw== 42772 +IGFwZQ== 42773 +IFNhbW15 42774 +IEt1bmc= 42775 +IGN1w6Fs 42776 +IEx1cA== 42777 +INGB0YLRg9C0 42778 +IHN3ZWV0ZXI= 42779 +IGNvbXVt 42780 +IEFkcw== 42781 +aHl1bmc= 42782 +INCx0YPQtNGD0Yk= 42783 +IHdhZmZsZQ== 42784 +IE9yYg== 42785 +IGxhdXQ= 42786 +IGZvcmVjYXN0aW5n 42787 +5ao= 42788 +IHJhcHBpbmc= 42789 +IHByZWZlcnM= 42790 +IGJlbno= 42791 +IG5paw== 42792 +IEJhaG4= 42793 +IHNhbmRpbmc= 42794 +IGltbWluZW50 42795 +INC/0YDQvtCx0LvQtdC80Ys= 42796 +IGRvaXZlbnQ= 42797 +0L7Qu9Cw 42798 +IMW8eWNpYQ== 42799 +aWh1 42800 +IGV4aXN0ZW0= 42801 +IEludGVyaW9y 42802 +IFRha2Vz 42803 +IHRvZGRsZXI= 42804 +IGRpY3RhdG9yc2hpcA== 42805 +IFNtaXRoc29u 42806 +IEFsbGFodQ== 42807 +z47Pgc6x 42808 +7JWY7Iq164uI64uk 42809 +IFZvdGU= 42810 +IFNtZWxscw== 42811 +0L7QtNC90L4= 42812 +IGhpbmRzaWdodA== 42813 +VlI= 42814 +IFBhdGNo 42815 +IEphaHJlcw== 42816 +IHNvdXZlbmly 42817 +IG5ldXRyb24= 42818 +IGxvbmd0aW1l 42819 +IHNheWlu 42820 +YXNha2k= 42821 +INC+0YHRgtCw0L3QvtCy 42822 +IGV4cGVsbGVk 42823 +IGNyeXB0b2N1cnJlbmNpZXM= 42824 +IE11cmRlcg== 42825 +IENpdGl6ZW4= 42826 +V0FZ 42827 +IHBsdQ== 42828 +IGxlbW9uYWRl 42829 +IGNvbnZlbmllbnRseQ== 42830 +IEhJ 42831 +IDIwMjM= 42832 +16nXldeq 42833 +0LDRhtC40L7QvQ== 42834 +IOubsA== 42835 +INmE2YPZhg== 42836 +INC90LXQvNC90L7QttC60L4= 42837 +IHVudXNlZA== 42838 +IG1haW9yaWE= 42839 +IGFzdHJvbG9neQ== 42840 +IERvd250 42841 +Tmljaw== 42842 +IHByZW9jY3Vw 42843 +IGRlbWFpbg== 42844 +157Xog== 42845 +INCy0L7QtNGL 42846 +IFNhbnNrcml0 42847 +IHByw6p0 42848 +IHN0cmFuZGVk 42849 +IHJlZmlu 42850 +INC/0YDQuNC90LjQvA== 42851 +INC/0L7QstC10YDRhQ== 42852 +4K+NPw== 42853 +IHpyb2I= 42854 +IGludGVydHc= 42855 +IERhdmlkc29u 42856 +0LvQtdC90LA= 42857 +INC/0L7QvdGP0YLRjA== 42858 +IFJlbm8= 42859 +INC/0L7Qu9GD0YfQuNC70L7RgdGM 42860 +IGNvcnJlc3BvbmRlbnQ= 42861 +IFVyYW4= 42862 +ZWxzZQ== 42863 +wrfCtw== 42864 +IHR1dG9yaW5n 42865 +IGdyYW5kZGF1Z2h0ZXI= 42866 +bHVkZWQ= 42867 +IHN0ZXNzbw== 42868 +IGjhur90 42869 +IGdlZ2FuZ2Vu 42870 +INCd0JA= 42871 +IGFudGln 42872 +YmFja2dyb3VuZA== 42873 +IGdlZGFhbg== 42874 +IGZhdm9yZWQ= 42875 +IEVtbWFudWVs 42876 +IGlvZA== 42877 +IGNsYW1wcw== 42878 +IGNvbXBsZQ== 42879 +IEFkdmFuY2U= 42880 +IOyeiOqzoOyalA== 42881 +IFJveA== 42882 +IOyXkOs= 42883 +IGludGVzdGluZXM= 42884 +IHBlcmN1c3Npb24= 42885 +IGxlZ2l0aW1hdGVseQ== 42886 +IEV0ZXJuYWw= 42887 +ZmFtaWx5 42888 +YWxvZw== 42889 +QnJhZA== 42890 +0LXQvdC40YLRjA== 42891 +INGB0L3QsNGH0LDQu9Cw 42892 +IGNlcnRh 42893 +IGFra29y 42894 +IM61zrTPjg== 42895 +IG9jdGF2ZQ== 42896 +IFZhYw== 42897 +0LzQvtGC0YDQuA== 42898 +IMOJdGF0cw== 42899 +IGxvbmd1ZQ== 42900 +IGRpc3NvY2k= 42901 +0YDRj9C0 42902 +aGVpbg== 42903 +IHBhbnRhbGxh 42904 +IGluZGljYXRpb25z 42905 +IEx0 42906 +IEdyYWRl 42907 +b2luZQ== 42908 +YnVn 42909 +IFZlcml6b24= 42910 +IEFsw6lt 42911 +IHZpZW5uZW50 42912 +INGH0LjRgdGC 42913 +IEJlbmk= 42914 +IFRzY2g= 42915 +IFRQ 42916 +IGluc3VsdGluZw== 42917 +IFdlaWdodA== 42918 +IGFkYXB0YXRpb25z 42919 +IGhhYsOtYW4= 42920 +IGNsaXF1ZQ== 42921 +b8WbY2k= 42922 +anVuYQ== 42923 +IHN1Y2hlbg== 42924 +IEdvZXM= 42925 +IEV4b2R1cw== 42926 +Q2hv 42927 +IGFudGlz 42928 +IO2MjOs= 42929 +c2V2ZW4= 42930 +INGH0LDRgdC+0LI= 42931 +IGJhbGxpc3RpYw== 42932 +em9ueQ== 42933 +SUNJQQ== 42934 +INC/0YDQtdGB0YI= 42935 +IHNpbXBsZXNtZW50ZQ== 42936 +IENvbGxhYm9y 42937 +RnJlZA== 42938 +INGC0LXQu9C10YTQvtC9 42939 +IFJhdmk= 42940 +7ZW07KQ= 42941 +0L/QtdGA0LI= 42942 +IOyeiOycvOuLiOq5jA== 42943 +IMOzdA== 42944 +IGFsZWc= 42945 +w7pw 42946 +IGRpc3JlZ2FyZA== 42947 +IGluZGVudA== 42948 +Y2xvdWQ= 42949 +Y2hsYWdlbg== 42950 +IGl0ZXJhdGU= 42951 +IGdlbmVyYWxpemVk 42952 +4KS5 42953 +ZWxlcmk= 42954 +IGRpc2FzdHJvdXM= 42955 +INGB0YLQsNC70LA= 42956 +s5E= 42957 +S05PV04= 42958 +IHJpY2huZXNz 42959 +IGNvbnNjaWVudA== 42960 +aWNodHM= 42961 +INGN0LvQtdC8 42962 +2KjYrw== 42963 +aXJlbnM= 42964 +IGhhdW50aW5n 42965 +cnVjdHVyZXM= 42966 +YXR0YWNr 42967 +IGN1cGNha2Vz 42968 +c3F1ZQ== 42969 +IG5hc3plZ28= 42970 +IGFudGhyb3BvbG9neQ== 42971 +Y2hhZQ== 42972 +IGRpc2NvdmVycw== 42973 +IFBlcnNvbmFsaXR5 42974 +IM6kzr8= 42975 +IGRpxJ9lcg== 42976 +INC90LXRkQ== 42977 +IEFuaXRh 42978 +IFvimao= 42979 +IENhcm0= 42980 +IEJlbm55 42981 +7Iqs 42982 +IHB1cGls 42983 +IG9jYXM= 42984 +w6RsbGV0 42985 +asWbxIc= 42986 +YW1lbnRhbA== 42987 +INC+0YLQvdC+0YE= 42988 +IHBpZA== 42989 +IGFybXA= 42990 +UkVF 42991 +INC+0YLQutGA0YvQsg== 42992 +IHVkYQ== 42993 +IFN5bmRyb21l 42994 +IFN0YW5kYXJkcw== 42995 +IHBvaW50ZXJz 42996 +IGVuYW0= 42997 +IFRpZw== 42998 +w616 42999 +INC90LDQvNC4 43000 +IHVuY2hhbmdlZA== 43001 +IHR1cm1vaWw= 43002 +4bupbmc= 43003 +ISEi 43004 +NTAwMA== 43005 +IOusvOyWtOs= 43006 +IG1lcmdpbmc= 43007 +IGVudHNjaGVpZGVu 43008 +Zm9ybWU= 43009 +IHRyaW1tZWQ= 43010 +IGRhcmVk 43011 +IGFzcGlyYXRpb24= 43012 +IE15dGhpY2Fs 43013 +IEhlag== 43014 +IEFsZWo= 43015 +0YbQvg== 43016 +0L7RgtGD 43017 +WmU= 43018 +INC40L3RgdGC0YDRg9C80LXQvdGC 43019 +IFJUWA== 43020 +IGxvY2FsaXplZA== 43021 +IHN1cnJvdW5kcw== 43022 +IGVtcGllemE= 43023 +IGNsYXNl 43024 +IOC4gQ== 43025 +IFJhcGlk 43026 +b21pbm91cw== 43027 +aWdhaWw= 43028 +INGI0LjRgA== 43029 +IGzDpg== 43030 +IHphc2Fk 43031 +IHVuZm9sZGluZw== 43032 +PyE/IQ== 43033 +IOyInOqwhA== 43034 +IFBvbHNraQ== 43035 +IEthdWY= 43036 +IENlbHQ= 43037 +aXRpYw== 43038 +IHRvb2xib3g= 43039 +IFBvY2tldA== 43040 +IOyEnOuhnA== 43041 +IGJlbGtp 43042 +IGFkbWlyYXRpb24= 43043 +cGhy 43044 +IFByb2R1a3Q= 43045 +IFRydWNr 43046 +IGRyYXXDn2Vu 43047 +d2HFgg== 43048 +IEhlYnJld3M= 43049 +IO2VmOqyjA== 43050 +IEFDRQ== 43051 +dXJnZW5jZQ== 43052 +YXVyYWlz 43053 +IGNoYXJpdGFibGU= 43054 +xLF0 43055 +IGFybWFz 43056 +IEdlZGFua2Vu 43057 +cmVhdGluZw== 43058 +cG9ydGU= 43059 +IGltcHJpbnQ= 43060 +ZsOkaA== 43061 +INC/0L7QtNGF0L7QtA== 43062 +IG91dHNldA== 43063 +4Lin4LiB 43064 +0LXQvdC90L7Qs9C+ 43065 +Q2xhc3M= 43066 +IHZhbml0eQ== 43067 +IFZPSUNFUw== 43068 +IDI2MA== 43069 +cmVzaWRlbnQ= 43070 +VVNF 43071 +IOqwgOyatOuNsA== 43072 +6b0= 43073 +IHRocm91Z2hwdXQ= 43074 +IGN1bWE= 43075 +7Jqx 43076 +INC/0LvQvtGJ 43077 +IHBhcnRpcw== 43078 +IEFuaW1hdGlvbg== 43079 +p4jr 43080 +Q3Jl 43081 +w7Z0emxpY2g= 43082 +IG1hZ2c= 43083 +IGNsdW1zeQ== 43084 +IGJvdHRsZW5l 43085 +IGJpcmxpa3Rl 43086 +IEdhbWI= 43087 +INeb158= 43088 +IG1ldHJvcG9saXRhbg== 43089 +T29o 43090 +IG9iamVjdGlvbnM= 43091 +INmF2Ko= 43092 +INC80LXQuw== 43093 +IHJlbW5hbnRz 43094 +IFhhdmllcg== 43095 +UmljaA== 43096 +IG9sc2E= 43097 +IFBpbGw= 43098 +IGdyb2Fucw== 43099 +IE5hcnVob2RvdQ== 43100 +IENvbnRyYWN0 43101 +0LDQtNCw 43102 +bmFp 43103 +INGE0LjQtw== 43104 +IG9wcw== 43105 +4bqhdA== 43106 +IHBhcmFjaHV0ZQ== 43107 +IG5lbGw= 43108 +IEVudHNjaGVpZHVuZw== 43109 +15zXmded 43110 +IHRydXRoZnVs 43111 +IHNoYXJwZXI= 43112 +IGJ1cmVhdWNyYWN5 43113 +Y2FydA== 43114 +INC40L3Rgg== 43115 +d2llaw== 43116 +IHdpbGxpbmdseQ== 43117 +IEhlcm1hbg== 43118 +IG1laHJlcmU= 43119 +IGVsaXRlcw== 43120 +IEFybW9y 43121 +IGVtYm9yYQ== 43122 +IFJlY29nbg== 43123 +INC70Y7QsdC70Y4= 43124 +IEV4Y2VsbGVuY2U= 43125 +aWJlbA== 43126 +IGV4cG9ydGluZw== 43127 +7LK07KCB 43128 +S2VsbHk= 43129 +Q2FtZXJhbWFu 43130 +IHNsaXBz 43131 +IGZpZ3VyYQ== 43132 +IGtvbGw= 43133 +IFBhbmRlbWll 43134 +IHRpbWVk 43135 +bGllw59saWNo 43136 +INee15s= 43137 +IHBlcsOtb2Rv 43138 +aXZhdA== 43139 +IHF1ZXN0aW9ubmFpcmU= 43140 +IHDDqXJpb2Rl 43141 +IHNpZ2hz 43142 +IGFsbGVnaWFuY2U= 43143 +IFhW 43144 +IEtlbnN1a2U= 43145 +IEdlc3VuZGhlaXRz 43146 +IHBvc2l0aXZv 43147 +IEphbmVpcm8= 43148 +IFNFRQ== 43149 +INin2LPYqg== 43150 +IEtlbHNleQ== 43151 +dG9iZXI= 43152 +IM6xzrvOu86s 43153 +IFBhcmVudA== 43154 +IERheXRvbg== 43155 +IEJpbGRlcg== 43156 +b3VyYWdl 43157 +IHNlcmVz 43158 +IG11Y2jDrXNpbW8= 43159 +IFJlYWxt 43160 +IE9GRklDRVI= 43161 +ZXJzb25pYw== 43162 +b255YQ== 43163 +IOq4iQ== 43164 +IGFuY2VzdHJ5 43165 +IEp1cmFzc2lj 43166 +IGNlbnRpZ3JhZGU= 43167 +4bqldQ== 43168 +dWrEhWM= 43169 +bWFucw== 43170 +IHRpbw== 43171 +IE1vxbw= 43172 +IHRyYWdlbg== 43173 +IHN0YXJlZA== 43174 +IHNjaGVtYXRpYw== 43175 +IHBhc3NvdQ== 43176 +IG1lYXRiYWxscw== 43177 +xYJvxZvEhw== 43178 +IHN5bmNocm9ub3Vz 43179 +IHBlcm1pcw== 43180 +YXJpYWw= 43181 +IHplcg== 43182 +IHBhcml0eQ== 43183 +IEF2YXRhcg== 43184 +aW5kZWVy 43185 +ZXN0b24= 43186 +IG1laWTDpG4= 43187 +IENseQ== 43188 +tIk= 43189 +IGVzdHJvZ2Vu 43190 +IGNlbnRpbWV0 43191 +IGNvbnZpY3Rpb25z 43192 +IHBvc3NpYW1v 43193 +IHBlcmR1 43194 +IHBhdGhvZ2Vucw== 43195 +IFF1aW4= 43196 +IFByb2dyYW1z 43197 +IFBvaW50cw== 43198 +cmFtZW50 43199 +cmFpbA== 43200 +IHZ5 43201 +IGdyYWZ0 43202 +IGJhcnQ= 43203 +IExvdHVz 43204 +4Kg= 43205 +IOuztOyLnA== 43206 +cmFtZXI= 43207 +RmF0aGVy 43208 +IOucuw== 43209 +INeU150= 43210 +IHRyYXplcg== 43211 +IHRhcms= 43212 +w6hjZXM= 43213 +Zm9ydGg= 43214 +INGB0LTQtdC70LDQu9C4 43215 +IHp1Y2NoaW5p 43216 +IHdha3R1 43217 +IGVudGVydGFpbmVk 43218 +IE1pbGxpYXJkZW4= 43219 +IHNoYWt5 43220 +IHByemVkZQ== 43221 +uIzr 43222 +IHJldmVyc2libGU= 43223 +IE5BVQ== 43224 +dWlucw== 43225 +w6lyw6p0 43226 +YW5uZW4= 43227 +IEh1bnRpbmc= 43228 +IEZlbGxvdw== 43229 +w6lsaW9y 43230 +IHJvdGF0aW9ucw== 43231 +IGdyYW5ueQ== 43232 +eHRvbg== 43233 +INGB0YLQsNC90L7QstC40YLRgdGP 43234 +INC90LDRh9Cw0Ls= 43235 +IGFydGVyaWVz 43236 +cmnDsw== 43237 +INC/0L7Qu9GM0LfQvtCy 43238 +INCR0Ys= 43239 +IG5vdmVsdHk= 43240 +cG91bmQ= 43241 +IHdlaXJkZXN0 43242 +IGJvaXM= 43243 +w6ltaWU= 43244 +dXBs 43245 +QVRB 43246 +IHRlaGQ= 43247 +IE5pcg== 43248 +c8SxbsSxeg== 43249 +ISIs 43250 +IGltbW9ydA== 43251 +IGVsaw== 43252 +0LDQvdC40Yc= 43253 +IGZhYnJpY2F0aW9u 43254 +IE5vaXNl 43255 +IEF2YW50 43256 +2LHbjA== 43257 +d2F0 43258 +IHdob29zaGluZw== 43259 +INeb15k= 43260 +INCX0L3QsNGH0LjRgg== 43261 +IGNlbnRyaWY= 43262 +YW5zaW5n 43263 +U291bmQ= 43264 +IOudvOs= 43265 +IGNhcHRpb25z 43266 +4LON 43267 +IG9yZ2Fz 43268 +IGRvbHBoaW5z 43269 +IEJsZW5k 43270 +IFRhag== 43271 +IENDVFY= 43272 +IGlub20= 43273 +IGVkaXRpb25z 43274 +IGJ1cm5vdXQ= 43275 +IGLDpHR0cmU= 43276 +IENhc2E= 43277 +b3ZpY2g= 43278 +IG1vbHRlbg== 43279 +IGJsaW5kZm9sZA== 43280 +IEd1ZQ== 43281 +IHNwaW5uZXI= 43282 +IG3DtmdsaWNoc3Q= 43283 +IFbDoA== 43284 +ZW5lY2E= 43285 +IG3DqWRpY28= 43286 +w6FzdGljbw== 43287 +IGFyZA== 43288 +IFN1bmRheXM= 43289 +IFJlbW90ZQ== 43290 +IOyWvOuniA== 43291 +IHRyxrDhu5tj 43292 +7IWo6w== 43293 +IGRvcHA= 43294 +IGJlxJ8= 43295 +aWNhbmE= 43296 +IOuCmOykkeyXkA== 43297 +IGhvbGluZXNz 43298 +ZGlyZWN0 43299 +IOyYge2ZlA== 43300 +IGN1bHBh 43301 +IFN0aXRjaA== 43302 +bGlnaHRseQ== 43303 +0LDQvNC10L0= 43304 +INC80LXRiA== 43305 +INC/0LXRhw== 43306 +IHlodGU= 43307 +b3NwaGVyZQ== 43308 +IOyTsOuKlA== 43309 +w6lr 43310 +IHNlcmlvdXNuZXNz 43311 +IGdhcm1lbnRz 43312 +IGNvbmNpc2U= 43313 +IFNK 43314 +IHZlcmxvcmVu 43315 +IHBhcmVjZXI= 43316 +IFVOQw== 43317 +7Iqk7YOA 43318 +IGVuZmFudA== 43319 +IGJvbWJlcg== 43320 +IEdpZnQ= 43321 +IOyii+uLpA== 43322 +IHJoeXRobXM= 43323 +IEtsYXI= 43324 +b3duaWs= 43325 +IFJldmVyZW5k 43326 +IGVtaXR0ZWQ= 43327 +bGFzc2Vu 43328 +IHJldmVuaXI= 43329 +IGFyaXNpbmc= 43330 +IHByZWNpc2FtZW50ZQ== 43331 +IGludGVycG9s 43332 +IFRlbmVtb3M= 43333 +b2JlZA== 43334 +IHRlY25vbG9naWE= 43335 +IG5lcmVkZQ== 43336 +IFZpc2E= 43337 +IHNhdmE= 43338 +IGVzY3JldmVy 43339 +IGFzc2F1bHRlZA== 43340 +IEZsZWlzY2g= 43341 +IENvdW5jaWxsb3Jz 43342 +IOqwgOq5jA== 43343 +IGJlZ2c= 43344 +IERldmVsb3Blcg== 43345 +IEJyb256ZQ== 43346 +IEJvbnVz 43347 +INeo16c= 43348 +ZmFjdA== 43349 +IGVuZGxlc3NseQ== 43350 +IG1hY2Ft 43351 +IHJ6ZWN6eXdpxZtjaWU= 43352 +IGhvdmVyaW5n 43353 +w6hnZQ== 43354 +IHBvb3Jlc3Q= 43355 +IFNjaGVk 43356 +bWlsZQ== 43357 +aXNzZW1lbnRz 43358 +YWPEgw== 43359 +IOumvQ== 43360 +IHZhY2Npbg== 43361 +IGZ1dHVyaXN0aWM= 43362 +IFdpbmRvdw== 43363 +0L/QsNGA 43364 +INGA0L7RgQ== 43365 +IGxvd2Vycw== 43366 +YWNz 43367 +INCQ0LvQtdC60YHQsNC90LQ= 43368 +IEFsZXJ0 43369 +aWVtZQ== 43370 +IENhdWNhcw== 43371 +IGphd3M= 43372 +IGh1bnRlZA== 43373 +7Je9 43374 +INio2YY= 43375 +INec16DXlQ== 43376 +IHR1cmJpbmVz 43377 +IGx1bXBz 43378 +IEFsbGllcw== 43379 +YWhsdA== 43380 +IHN1YnNjcmlwdGlvbnM= 43381 +IG5vdXZlYXV4 43382 +dWdlcg== 43383 +Ym9uZXM= 43384 +IGJlcnJ5 43385 +IOyEoOusvA== 43386 +IE1hbnVmYWN0 43387 +IEx1bmNo 43388 +6re4656Y 43389 +IGh5ZHJhdGVk 43390 +IGFjaGVp 43391 +IFlheg== 43392 +IFRpYmV0YW4= 43393 +IFF1YW50dW0= 43394 +IEplcm9tZQ== 43395 +INC+0YnRg9GJ 43396 +0L7QstCw0L0= 43397 +bW90aW9u 43398 +IENvbnRyb2xsZXI= 43399 +ZW5lcmdldGlj 43400 +INGB0LrQvtGA0L4= 43401 +IHZvd2Vscw== 43402 +INGD0LbQsNGB 43403 +IGhvb2Y= 43404 +IEJ1bGxldA== 43405 +aW1hZ2lu 43406 +16DXmded 43407 +IGVuZ2FnZW1lbnRz 43408 +IEJsdWVz 43409 +IGHDsWFk 43410 +IGZwcw== 43411 +IGNhdGVycA== 43412 +IHPhu5E= 43413 +IFRyaWJl 43414 +0L/QvtC9 43415 +aWZlcmF0aW9u 43416 +IHJ1bWFo 43417 +IFB1bmo= 43418 +bGFi 43419 +IGNvbXByZWhlbnNpb24= 43420 +YnJpbmdpbmc= 43421 +V28= 43422 +IHRpaw== 43423 +IGFueWhvdw== 43424 +w6F0aWNhcw== 43425 +IHNpdHplbg== 43426 +IGtvbGF5 43427 +IENvbmZlZGVyYXRl 43428 +IENhbGxlZA== 43429 +IG5hc3p5Y2g= 43430 +IGR6acSZa2k= 43431 +IGNsb2Fr 43432 +IEdvb2c= 43433 +IEFzaGU= 43434 +ZW5hbg== 43435 +INC80YvRiA== 43436 +INCy0LXRgg== 43437 +IFNwbw== 43438 +IFNrZXQ= 43439 +IEhlbmRlcnNvbg== 43440 +aWxhaA== 43441 +INCx0LXQt9C+0L/QsNGB 43442 +IHNla2FsaQ== 43443 +7Ja06rCA 43444 +IHNuYXJl 43445 +IHLhurFuZw== 43446 +IGbDtnJzw7Y= 43447 +c3p5Y2g= 43448 +IMO8YmVycw== 43449 +IHN0cmF0w6ln 43450 +IOy6kOs= 43451 +IHJhcHBlcnM= 43452 +IGNlcA== 43453 +IEhhc3Rh 43454 +IGhvcnJpYmx5 43455 +IGZyw7xo 43456 +INio2Lk= 43457 +IG1hbnRsZQ== 43458 +44CF 43459 +ZnVuZGluZw== 43460 +IHp1c3Q= 43461 +IFBlbnM= 43462 +c2Vk 43463 +IO2XpA== 43464 +IGdlcmVraQ== 43465 +IGFsYXJtcw== 43466 +IFdoYQ== 43467 +IE1hcmt1cw== 43468 +YWtzaQ== 43469 +INCQ0LvQtQ== 43470 +a2xvcmU= 43471 +IMOpbmVy 43472 +IHRpbGRl 43473 +Ym94aW5n 43474 +IOyEng== 43475 +IGVuY29udHJhbW9z 43476 +IFBoYXI= 43477 +0L3QsNC60L7QvA== 43478 +w7NzdA== 43479 +IMSwcw== 43480 +IOuLmA== 43481 +IHNxdWF0cw== 43482 +IHByZXRlbmRlZA== 43483 +IGRleg== 43484 +IOq0nOywruyVhA== 43485 +amFjaA== 43486 +65286rOg 43487 +IO2ZleynhA== 43488 +IEFuc2No 43489 +aW1lcms= 43490 +IGNvbmp1Z2F0ZQ== 43491 +IHBlbmluc3VsYQ== 43492 +IGdvcmlsbGE= 43493 +IHBob3RvZ3JhcGhlZA== 43494 +IEF1bnF1ZQ== 43495 +IGVudHJlbg== 43496 +IERldXRzY2hlbg== 43497 +IEFsYWRkaW4= 43498 +IOustOyEnA== 43499 +IFN0ZWxsYQ== 43500 +IEVsZWN0aW9u 43501 +b3V0aW5l 43502 +R3JhbmQ= 43503 +IFdhaw== 43504 +IFNlcmdpbw== 43505 +aG9yc2U= 43506 +YWhvbg== 43507 +IEZhbWlsaWVz 43508 +IGhhdGluZw== 43509 +IEJldHQ= 43510 +4LiZ4Liw4LiE4Liw 43511 +IGN1cmxpbmc= 43512 +IElzcmFlbGlz 43513 +INec15DX 43514 +IE15ZXJz 43515 +IHNjYW5uZWQ= 43516 +IEJFQw== 43517 +aWxlcmk= 43518 +IGNhbGxl 43519 +IE1pbmg= 43520 +IG1pY3Jvbg== 43521 +IGNvbmR1Yw== 43522 +w612 43523 +INCy0L7Qt9GM 43524 +IGFjdGlvbmFibGU= 43525 +IFRydXN0ZWVz 43526 +IHRpZWY= 43527 +IGhlYWRlcnM= 43528 +IGFuaW1hbGVz 43529 +7JuA 43530 +0LvQvtGF 43531 +dW5pdHk= 43532 +bHlh 43533 +IGphbmdhbg== 43534 +IGhhbmk= 43535 +IGNhc2luZw== 43536 +IGrDs3ZlbmVz 43537 +IFNwbGl0 43538 +IENhcmxv 43539 +IEJlaW0= 43540 +IG51YW5jZWQ= 43541 +IHRlZGR5 43542 +IENsYW4= 43543 +w6RjaGVu 43544 +cGllcg== 43545 +INC00L7Qv9C+0LvQvQ== 43546 +IGRpYXBlcg== 43547 +ZWZmZWN0aXZl 43548 +IE5pYWdhcmE= 43549 +IHdhcnQ= 43550 +IGNvcnJv 43551 +IEthbXBm 43552 +enRl 43553 +IGTDqXZlbG9wcGVtZW50 43554 +IGF0dGFja2Vycw== 43555 +IFNoZXJtYW4= 43556 +IDE5MTQ= 43557 +IG1lb3c= 43558 +IFDDpQ== 43559 +7Lo= 43560 +Y2l0 43561 +IGNvdXBl 43562 +IOq3uOuLpOydjOyXkA== 43563 +IGh1bW91cg== 43564 +IGNvbGU= 43565 +IFdhcm5pbmc= 43566 +IFRpbA== 43567 +Y2FsbQ== 43568 +YnVhdA== 43569 +IGNpbmU= 43570 +a2llag== 43571 +S2V2aW4= 43572 +IG1pbGxpZ3JhbXM= 43573 +15PXqA== 43574 +YXJpYW1lbnRl 43575 +IG9ybw== 43576 +IEhvZA== 43577 +ZXJ0b3M= 43578 +IGxpaGF0 43579 +IGZ1bGxlc3Q= 43580 +IGdyYW5kaQ== 43581 +INCx0L7Qug== 43582 +IHdob2xseQ== 43583 +IG1haGRvbGw= 43584 +IGNvbnRyb2xs 43585 +IEJ1bnVu 43586 +IGRpcHBlZA== 43587 +IHJlZ2nDs24= 43588 +INmE2Yg= 43589 +INCx0LDQsw== 43590 +IHByZW1pZXJz 43591 +IGNo4buL 43592 +aWRleg== 43593 +IHF1b3Rh 43594 +IGdoZWU= 43595 +YXJrYW4= 43596 +IGdlbGF0aW4= 43597 +IENsZXJr 43598 +YmJsZXM= 43599 +IFBhaWdl 43600 +IHN0YWdlZA== 43601 +IHNvY2lhaXM= 43602 +IEJpemlt 43603 +IHZlbG9jaWRhZGU= 43604 +IG1hbGFyaWE= 43605 +IHNob3J0ZW5lZA== 43606 +IHNhbHV0 43607 +IEhlaGU= 43608 +IHbhu4s= 43609 +IFRhaXdhbmVzZQ== 43610 +IEFycmk= 43611 +Z3Jlcw== 43612 +KCk= 43613 +cmlhZA== 43614 +kZDr 43615 +IG1hc2N1bGluaXR5 43616 +TFA= 43617 +IOuWoQ== 43618 +IHTDqXJtaW4= 43619 +IFbDpA== 43620 +IFNlaXRlbg== 43621 +IHJlc3BlY3RmdWxseQ== 43622 +w6Fv 43623 +IHRvdGFsZW1lbnQ= 43624 +IHNjcmFwcw== 43625 +IGluZnJpbmc= 43626 +IEJvc2U= 43627 +YW1hcg== 43628 +IEx1aXph 43629 +IEFSTQ== 43630 +INC/0LvQvtGF0L4= 43631 +IG1laWxsw6Q= 43632 +IERpb24= 43633 +IHNvdWhh 43634 +IGdlc2NoYWZmdA== 43635 +IGNvbnZvbHV0aW9u 43636 +IOKAkeKAkQ== 43637 +IDE0NA== 43638 +bGluZ3Q= 43639 +IG3DpG5uaXNr 43640 +IGd1c3RhZG8= 43641 +IGNvaW5lZA== 43642 +IEx1bHU= 43643 +b3BvdA== 43644 +IFByYXllcg== 43645 +IHJvYXN0aW5n 43646 +IGNocm9tb3NvbWVz 43647 +0LXQu9C1 43648 +Qmx1ZQ== 43649 +IEVyZm9sZw== 43650 +INC/0YDQuNC00YPQvA== 43651 +IHJpc2tpbmc= 43652 +IEd1YXJkaWFucw== 43653 +IDIwMjQ= 43654 +w6hzZQ== 43655 +INCx0YPQtNGC0L4= 43656 +IGNvbnNlcnZl 43657 +IEJyaW5naW5n 43658 +IEFzdHJh 43659 +4LmA4LiC 43660 +INC60LDQutGD0Y4= 43661 +cmVzcGFjZQ== 43662 +INCe0L8= 43663 +INCy0L7QutGA0YPQsw== 43664 +IG1hc2tlZA== 43665 +IFNoeQ== 43666 +IE5pbQ== 43667 +ZW5kYXM= 43668 +IO2PrOyduA== 43669 +IOuqqOyWkQ== 43670 +IHZhbGV1cg== 43671 +IE5lZ3Jv 43672 +IENEcw== 43673 +aW5rbGluZw== 43674 +IG1vbnTDs24= 43675 +IEhvbmQ= 43676 +UmVhbA== 43677 +IGZ1bGxuZXNz 43678 +IFdob29wcw== 43679 +IFNoYW5r 43680 +IEJyYW4= 43681 +IHRyYW5zbHVj 43682 +IGVycg== 43683 +IEdhcmRlbnM= 43684 +b3l1 43685 +IGFmZmlybWF0aXZl 43686 +IHBvdHRlcnk= 43687 +bGl2ZQ== 43688 +aWF1 43689 +bW91bnQ= 43690 +IGZsdWN0dWF0aW9ucw== 43691 +w61lbQ== 43692 +IHB1bHNlcw== 43693 +IGNyaWFuw6dhcw== 43694 +zq/Osc+C 43695 +IGJhc3Rh 43696 +RU5OSVM= 43697 +INC60L7RgNC/ 43698 +IEZ1bms= 43699 +w6VydA== 43700 +INC30LDRgtC10Lw= 43701 +IHBhcmFzaXRlcw== 43702 +IGFpcmZsb3c= 43703 +IFh1YW4= 43704 +R8O8bG1l 43705 +IGJsb29taW5n 43706 +IG11bW15 43707 +IGJhbw== 43708 +IENsYXA= 43709 +YW50aWNz 43710 +c2tpbg== 43711 +Y2VudHJpYw== 43712 +YmVmb3Jl 43713 +IFJJQ0hBUkQ= 43714 +IEhhaG4= 43715 +VEFLRQ== 43716 +INGC0YDQtdGC0Yw= 43717 +IHByZXNzdXJlZA== 43718 +IEt1cno= 43719 +aXN0aQ== 43720 +INC90LDRiNC10LPQvg== 43721 +IHNlbWljb25kdWN0b3I= 43722 +IENsaW50 43723 +IHBsdXA= 43724 +IE9yaWdpbg== 43725 +IEV2ZW50cw== 43726 +IOqxseyglQ== 43727 +bXBmZW4= 43728 +TkVZ 43729 +IERX 43730 +IOu2ge2VnA== 43731 +IGluZm9ybXM= 43732 +IGZvcnNr 43733 +IGFtaWdh 43734 +IENpbmNpbm4= 43735 +U3Ry 43736 +IHBhcmlzaA== 43737 +IOy7pO2U 43738 +IHNpemk= 43739 +IHBsYW50YXRpb24= 43740 +IGJsaXZlcg== 43741 +INC/0L7Qu9C40YI= 43742 +IHN1YmRpdg== 43743 +IHJhbnQ= 43744 +IHByaW5jaXBhbHM= 43745 +IGt1bm5l 43746 +w7xnZW4= 43747 +YXJlc3BhY2U= 43748 +IHZhbGxhaGk= 43749 +IGNvbGxhcHNpbmc= 43750 +2KfZhNmF 43751 +IGxpZGVy 43752 +IHRhbWE= 43753 +IGdhZ25lcg== 43754 +cm9sbGU= 43755 +IOunkOyUgOuTnOs= 43756 +IGNhdGhlZHJhbA== 43757 +IFdlYnM= 43758 +IFBvbGl0aWNz 43759 +IERlbmlz 43760 +IHR1bw== 43761 +IHJlZnJhY3Q= 43762 +IGRpc2ludGVncg== 43763 +c3Rlcw== 43764 +INC70Y7QsdC+0LI= 43765 +IHdpbHQ= 43766 +IHRydXN0cw== 43767 +IGtvbXVu 43768 +IEJhc2tldA== 43769 +fiEh 43770 +bmFl 43771 +INCa0L7Quw== 43772 +IHN5bGxhYmxlcw== 43773 +IEhlbnJp 43774 +IE5hYg== 43775 +2YjYuQ== 43776 +IHdu 43777 +IGthbXA= 43778 +IFByYWd1ZQ== 43779 +IEJyZWFrZmFzdA== 43780 +IOq3uOuftA== 43781 +IGNodXQ= 43782 +IDMzMA== 43783 +IEluZHVzdHJpZXM= 43784 +IGnFn2k= 43785 +IEdvbGRtYW4= 43786 +IMSwbnM= 43787 +dXNzYQ== 43788 +aXRoZQ== 43789 +hJA= 43790 +IFNPVU5E 43791 +0LDQu9GM0L3Ri9C8 43792 +Lig= 43793 +INCz0L7RgNCw0Lc= 43794 +IGRhZ2VnZW4= 43795 +IOuu 43796 +IHdhaXRlcg== 43797 +bGVuZ3Ro 43798 +IM+Dz4TOsQ== 43799 +IGNodW5reQ== 43800 +U2E= 43801 +IHJ1c3R5 43802 +IEp1ZGl0aA== 43803 +NzUw 43804 +IGVwb3h5 43805 +7Lmg 43806 +bWV0cm8= 43807 +IHJlamVjdGluZw== 43808 +IHNxdWlzaHk= 43809 +IHBsdXBhcnQ= 43810 +IG3DqXRo 43811 +IGFzcGlyaW5n 43812 +IERyYW1h 43813 +IHVwbGlmdA== 43814 +p4jri6Q= 43815 +Li4uLi4uLi4uLi4uLi4uLg== 43816 +oKTsmpQ= 43817 +IHTDqWNuaWNh 43818 +IHBhc2FuZG8= 43819 +VGhvc2U= 43820 +INGA0LDQt9C00LXQuw== 43821 +IG1lZGlvY3Jl 43822 +IE5pY2tlbA== 43823 +IHN1cGVyaGVyb2Vz 43824 +IG1pc3Npb25hcnk= 43825 +IFBhcmVjZQ== 43826 +IHJvdGF0aW9uYWw= 43827 +IHByZXR0 43828 +IGxhbWE= 43829 +IGNhbnlvbg== 43830 +IGJldGVy 43831 +IFByb3Zvc3Q= 43832 +IGh2aXM= 43833 +IGRlYWN0aXY= 43834 +IEhlbHM= 43835 +cGZsaWNodA== 43836 +U29tZXRoaW5n 43837 +IFBpZXJjZQ== 43838 +IOqygOywsA== 43839 +bHVuZ2Vu 43840 +IHNpemluZw== 43841 +IGxhdGl0dWRl 43842 +IE5vbmV0aGVsZXNz 43843 +b21uaWE= 43844 +IFNhYnJpbmE= 43845 +IER5bmFtaWM= 43846 +b250YQ== 43847 +7IaQ 43848 +IGRpcmVjdGl2ZQ== 43849 +IERlcG90 43850 +IGZ1ZWxlZA== 43851 +IGV4cGlyZQ== 43852 +IGNvbcO6bg== 43853 +IFNleHVhbA== 43854 +IEdvcmU= 43855 +IHJlc3RsZXNz 43856 +IEpBS0U= 43857 +0YLQtdGA0LXRgQ== 43858 +INGC0YDQsNC9 43859 +IEhvbHo= 43860 +IEFjdG9y 43861 +Y2FsbA== 43862 +IGVtYWlsZWQ= 43863 +IFBlYXI= 43864 +0YPQtNC4 43865 +0YDQsNC7 43866 +IG3DoHk= 43867 +IENIRUVSSU5H 43868 +IHJldGFpbGVy 43869 +IHByb3Ry 43870 +IGRpc2NhcmRlZA== 43871 +IEhJUw== 43872 +IGV2YW5nZWxpY2Fs 43873 +IEVsc2U= 43874 +IGV4cGxvcmVz 43875 +IGNyaXRpY2l6aW5n 43876 +aWZpaw== 43877 +IHdoaXBwaW5n 43878 +IG9waXM= 43879 +b3VzZWQ= 43880 +RnJlZQ== 43881 +IO2MrA== 43882 +IG1pY3M= 43883 +cnVubmluZw== 43884 +T2I= 43885 +aXRpw6k= 43886 +IG5lY2VzaXRh 43887 +IERvbWluaWNhbg== 43888 +IEJhZ2g= 43889 +IHRlbmRlbmNpZXM= 43890 +IE1ldHJvcG9saXRhbg== 43891 +xZFs 43892 +INC30L3QsNC10Lw= 43893 +IFphbQ== 43894 +IERlYWRwb29s 43895 +YWxlxbw= 43896 +IGludmVzdGlnYXRpdmU= 43897 +IFByb251bmNpYXRpb24= 43898 +IGVtdWxhdGU= 43899 +IGJhbmNv 43900 +IC3imao= 43901 +IG92ZXJhcmNoaW5n 43902 +bGljaGVz 43903 +INCy0L7Qt9Cy0YDQsNGJ 43904 +IFNjYXJ5 43905 +IEtpYQ== 43906 +cm9udGluZw== 43907 +aW5uZWQ= 43908 +INuB2Yg= 43909 +7IiY66W8 43910 +d2Vs 43911 +IOuzhOuhnA== 43912 +IHVuaW50ZW50aW9u 43913 +YWFT 43914 +IG5pY2VzdA== 43915 +IFRlc3Rpbmc= 43916 +IElTSUw= 43917 +b2dlbm91cw== 43918 +INif 43919 +IGxpZXV0ZW5hbnQ= 43920 +IGJyYXVjaA== 43921 +IFRpcg== 43922 +ZHJpdmU= 43923 +IHRvbGVyYW50 43924 +IHNob290ZXJz 43925 +IOyYiOu7kA== 43926 +b250b24= 43927 +IHRlcmlh 43928 +aWV0ZXQ= 43929 +Um9u 43930 +bGVpZ2g= 43931 +Z2Fl 43932 +IG9sbWFr 43933 +IENsb25l 43934 +c29sZA== 43935 +IHNrZWxldG9ucw== 43936 +IGluY3VtYmVudA== 43937 +0L7QvNC1 43938 +Q09O 43939 +IGxldmVu 43940 +IG1pbGxlbm5pYWxz 43941 +IGVxdWF0b3I= 43942 +IEZlZGVy 43943 +IEFsZXhhbmRyYQ== 43944 +IHZyaWo= 43945 +IEhlYWx0aGNhcmU= 43946 +IO2VkQ== 43947 +IGVtcGhhc2l6aW5n 43948 +IGRpYWxvZ3Vlcw== 43949 +IGNoaWxsZWQ= 43950 +IHByb3c= 43951 +IFBhc3Npb24= 43952 +IExhZGVu 43953 +YXJpZXN0 43954 +YXBocmFn 43955 +IGFkZGl0aXZl 43956 +IFN0YWF0 43957 +IE5lcHQ= 43958 +IEhBTQ== 43959 +4LmA4Lit 43960 +ZGF5cw== 43961 +IO2WiOuNmA== 43962 +IHZvaWxh 43963 +INGF0Ls= 43964 +IERldXRzY2hl 43965 +cXVpcg== 43966 +T3Blbg== 43967 +IHJhbmdlZA== 43968 +IGxldmVycw== 43969 +IE1hbnNpb24= 43970 +cGFyZWQ= 43971 +IFRpdGFucw== 43972 +YXRvaXJl 43973 +IGVuZ2FnZXM= 43974 +eWV6 43975 +bmFkZW4= 43976 +IG9ic3RydWN0 43977 +IEVtbXk= 43978 +sKU= 43979 +IHRyb3Bo 43980 +IHRha2Vhd2F5cw== 43981 +Ky4= 43982 +dHljem5pZQ== 43983 +aMOpc2l0ZXo= 43984 +IHBvZMOtYQ== 43985 +IOyjvOuKlA== 43986 +IGNpdGF0aW9u 43987 +IEFxdWE= 43988 +IGRlYnVnZ2luZw== 43989 +0LLQsNC9 43990 +IOuLueyLoA== 43991 +INin2YTZig== 43992 +IGluc3RhbnRhbmVvdXM= 43993 +IEF1dHVtbg== 43994 +IGtlcGFkYQ== 43995 +IGdldGFu 43996 +aGluaQ== 43997 +eW50aGVzaXM= 43998 +INC/0LXRgNC4 43999 +IE1hY2Vk 44000 +UGFj 44001 +dW50dQ== 44002 +QnJh 44003 +INCz0L7RgNCw0LfQtNC+ 44004 +IDE5NTk= 44005 +INGC0LXQvNC/0LXRgA== 44006 +IHNhbmU= 44007 +IE9VUg== 44008 +YXN1 44009 +IOustOyX 44010 +IHZhbGxleXM= 44011 +IGxpc3Rpbmdz 44012 +IHByemVkc3Rhdw== 44013 +IGd1bW15 44014 +IGNvcnRpc29s 44015 +IE9icmln 44016 +IEFsbGllZA== 44017 +0L7QttGD 44018 +IGfDqW7DqXI= 44019 +IGRvY3M= 44020 +IENoaWxp 44021 +IEFiZHVsbGFo 44022 +S2l0 44023 +IGNvbnRyaWJ1dG9ycw== 44024 +0LPQvtGA 44025 +0LvQtdGA 44026 +IGJpbmRlcg== 44027 +IG1vZMOobGU= 44028 +7YWQ 44029 +IGludGVpcm8= 44030 +bWlz 44031 +ZmVyYQ== 44032 +2KfYsA== 44033 +TWFuaWE= 44034 +IO2ZnOuPmQ== 44035 +IOu0kOyalA== 44036 +IEpheg== 44037 +0ZbQu9GM0LrQuA== 44038 +cmlzaG5h 44039 +IOq1sA== 44040 +IHRhbWFuaG8= 44041 +IGFwcGxpYW5jZQ== 44042 +IFJlc2lzdGFuY2U= 44043 +IExPT0s= 44044 +IEh5cA== 44045 +IEhlaWw= 44046 +RmlyZQ== 44047 +dWp1 44048 +IGhlYWxz 44049 +IG1hbHQ= 44050 +IFZFUlk= 44051 +INGF0L7Rh9C10YjRjA== 44052 +IGxpbmdlcg== 44053 +IE5hcnI= 44054 +IFJlZ3VsYXI= 44055 +IExvb3A= 44056 +IExlbm8= 44057 +IHNvcnRpZQ== 44058 +IFNlcnZl 44059 +IOydtQ== 44060 +IEx1ZWdv 44061 +aXR0w6Q= 44062 +IHVuZGVz 44063 +IHNsaXBwZXJz 44064 +IG9uZGE= 44065 +IMSQw6J5 44066 +IHRhcGVk 44067 +IHRyYXZlcnNl 44068 +IHJlbGF0aXZpdHk= 44069 +IFlvc2hp 44070 +Y2pvbg== 44071 +aWxhdGVk 44072 +YWN0aXZlbHk= 44073 +INCh0L7Qsg== 44074 +IFBPTA== 44075 +0KDQmA== 44076 +aW5mbGFtbQ== 44077 +Y2hlZXJmdWw= 44078 +INee15DX 44079 +ID4+Ww== 44080 +bWluc3Rlcg== 44081 +INCy0LvQuA== 44082 +IGlkZW50aWZpZXI= 44083 +IExhbWJkYQ== 44084 +IHRyb3M= 44085 +IGZsYXdsZXNz 44086 +IGRldHJpbWVudGFs 44087 +IGJ1bmxhcsSx 44088 +V2Fy 44089 +IHJlZ2nDo28= 44090 +IEJpa2U= 44091 +Y2Vzc29ycw== 44092 +IGPDuW5n 44093 +IFJO 44094 +IOq9gw== 44095 +IGvDvMOnw7xr 44096 +IEJlZ2lubmluZw== 44097 +7Zi46w== 44098 +IGdld2U= 44099 +IGRlbm90ZQ== 44100 +IEFsYmVydG8= 44101 +IHByb2Jpb3Q= 44102 +IG9kZQ== 44103 +IG1vbGFy 44104 +IGJ1cnN0aW5n 44105 +YXNzdW1lZA== 44106 +IGZvb3RwcmludHM= 44107 +dmVkYQ== 44108 +IHN0ZXJvaWRz 44109 +IGZsYW1pbmc= 44110 +IEVsbGVy 44111 +IGVya2VubmVu 44112 +w6R0emVu 44113 +IGxpZmVjeWNsZQ== 44114 +IERPVQ== 44115 +IEthcmVuYQ== 44116 +IEd1ZXJyYQ== 44117 +IHNpbmlzdGVy 44118 +IHBvZMOpaXM= 44119 +IHBhcmFi 44120 +IG9rbw== 44121 +IG1hdMOpcmk= 44122 +IGNhcmlj 44123 +c29uYXJv 44124 +IHByYXRpY2FtZW50ZQ== 44125 +0YPRgdCw 44126 +IGNvbXVucXVl 44127 +IHZpZ2lsYW50 44128 +IHJlZ2ltZXM= 44129 +IFNob290aW5n 44130 +IHJhaWRz 44131 +IE5vcmE= 44132 +IFdpZWRlcg== 44133 +bWVucw== 44134 +INGB0L7QtA== 44135 +IOqyveyasOyXkOuKlA== 44136 +INCy0YXQvtC0 44137 +IGF1dG9iaQ== 44138 +IFNjaG4= 44139 +IFJvYmJpZQ== 44140 +IEZpdG5lc3M= 44141 +INC60L7QvdGE 44142 +IHBlbmd1aW4= 44143 +0LzQvtGC0YDRjw== 44144 +INC80LjQvdC40Lw= 44145 +cGxheXM= 44146 +IGRlbGVnYXRlcw== 44147 +TWVy 44148 +IHNpc3RlbQ== 44149 +IE1pY2hhZWxz 44150 +bWFsZQ== 44151 +2KfYuQ== 44152 +IGPDoWNo 44153 +IEjDpA== 44154 +INeZ15XXk9ei 44155 +IHN1cGVycG93ZXI= 44156 +IHN0cm9u 44157 +IHJvdmVy 44158 +IGTDqXBlbmQ= 44159 +IHJldGlyaW5n 44160 +IHZhbXBpcmVz 44161 +IG1lcmRl 44162 +IENoYW5naW5n 44163 +IHRhbWU= 44164 +IHNwb2tlc3BlcnNvbg== 44165 +IGNheQ== 44166 +IGZsaXJ0aW5n 44167 +IEdyw7Y= 44168 +IHfDpHI= 44169 +IHd5Yg== 44170 +IGNvZXVy 44171 +4bqhbmg= 44172 +IOyZgOyEnA== 44173 +IGNvbm5haXM= 44174 +IEh1bmRyZWRz 44175 +IEJlYQ== 44176 +IM6xz4A= 44177 +cHJ1Y2g= 44178 +IHNvY2llZGFkZQ== 44179 +IFdoaWxzdA== 44180 +IEthaXQ= 44181 +ZXNwYWNl 44182 +IGNoaWE= 44183 +IEVybQ== 44184 +IOuwlOq/ 44185 +IGZlbmNlcw== 44186 +IE1vcnRhbA== 44187 +6rKB 44188 +INCz0YDQsNGE 44189 +IEhvbWVsYW5k 44190 +IEpVTg== 44191 +aXNzdA== 44192 +IHBhcmxhcg== 44193 +IHNwb3J0eQ== 44194 +w6lv 44195 +IGRlZXBlbg== 44196 +IEJlaGF2aW9y 44197 +IGVycmFuZA== 44198 +IHJvdGFyeQ== 44199 +IFdlbGxpbmd0b24= 44200 +V2luZA== 44201 +IG1lc2VsYQ== 44202 +4bqjbmc= 44203 +aWVuZGU= 44204 +IGV4Y2VsbA== 44205 +IEdlbml1cw== 44206 +IEVkdWFyZG8= 44207 +IMWfdW51 44208 +IMSwc3RhbmJ1bA== 44209 +IHByb2R1dG8= 44210 +IOOFjuOFjg== 44211 +T0ZG 44212 +IHdvbGx0 44213 +IOuJtOyKpA== 44214 +IGxhc3M= 44215 +IGhlcnR6 44216 +IGFyb21hdGlj 44217 +INC30LLQvtC9 44218 +IGF1dG9j 44219 +IEx1c3Q= 44220 +IDExMg== 44221 +IM6X 44222 +IHJldmlld2Vycw== 44223 +IHJlY2VwdGl2ZQ== 44224 +w6JuZA== 44225 +b2dsbw== 44226 +IOyVhOuLmQ== 44227 +IG5nbw== 44228 +0ZbRgtC4 44229 +w6V0 44230 +Y29ubw== 44231 +IHRla3Jhcg== 44232 +IOyjvOqzoA== 44233 +IGdlbG1pxZ8= 44234 +IGJlZHRpbWU= 44235 +IEFyZ2g= 44236 +QURB 44237 +INCz0L7RgNC+0LTQsA== 44238 +IMSH 44239 +IGFsbGlhbmNlcw== 44240 +Z2lnZ2xpbmc= 44241 +IHllcmRl 44242 +IHNwaWVz 44243 +IGd1dGVz 44244 +w6dp 44245 +IGFsbHRpZA== 44246 +IExhaA== 44247 +npDr 44248 +IGRva8WCYWQ= 44249 +2YjZig== 44250 +IHRveGljaXR5 44251 +IGNhbmNlbGxhdGlvbg== 44252 +IDE5NTg= 44253 +ZHJv 44254 +IOyekeydgA== 44255 +IE1vdG9yb2xh 44256 +IG11bHRpbg== 44257 +IGVudGh1c2lhc3Rz 44258 +IE1pZ2h0eQ== 44259 +IENvY29udXQ= 44260 +OuOAjA== 44261 +IFBpY3R1cmVz 44262 +IHNhbmdyZQ== 44263 +IGJsaW5raW5n 44264 +b2xlc29tZQ== 44265 +IOyKpO2DgOydvA== 44266 +RlA= 44267 +IGJvb21pbmc= 44268 +INC00LXRgdGP0YI= 44269 +IHJhdGNoZXQ= 44270 +IHRpbWVsaW5lcw== 44271 +bGVuZXNz 44272 +IGNhZ2Vz 44273 +IEdvb2RuaWdodA== 44274 +b21ldGltZXM= 44275 +IGN1bm5pbmc= 44276 +IFJpc2s= 44277 +dWxlZA== 44278 +ZGFkZQ== 44279 +IHByYXRh 44280 +IGd1c3RhcsOtYQ== 44281 +YW11cw== 44282 +IEppbnBpbmc= 44283 +IGVzdHJ1dA== 44284 +IGRlc2NvYnJpcg== 44285 +IE3EgQ== 44286 +IEFsbGFu 44287 +INec16c= 44288 +IHByZXNlcnY= 44289 +IFN0cmF3YmVycnk= 44290 +xI8= 44291 +THU= 44292 +IGtybw== 44293 +IFJlcG9ydHM= 44294 +7IWU7JW8 44295 +IHZhbHQ= 44296 +IHBvdXZhaXQ= 44297 +IGFwcGFy 44298 +IEJvbmU= 44299 +IHByZWZlcmFibHk= 44300 +IFJlcMO6YmxpY2E= 44301 +IGhlcnpsaWNo 44302 +IGNoaW1uZXk= 44303 +IMOnZXY= 44304 +IHZpc2Fz 44305 +IHZlcnI= 44306 +IGN1bHRpdmF0aW9u 44307 +IEFybWVuaWE= 44308 +INCy0LTRgNGD0LM= 44309 +IGNvY2tybw== 44310 +cmV0Y2hlZA== 44311 +YXJ0eg== 44312 +INC70Y7QtNGP0Lw= 44313 +IHBvbMOtdGljYXM= 44314 +IFBhbno= 44315 +IEFLQQ== 44316 +IOuIjOufrA== 44317 +IGVycm8= 44318 +IGNhbXBlcg== 44319 +IDEwMg== 44320 +4KS4 44321 +ZG9uZQ== 44322 +IGhvYXJk 44323 +INCf0L7RgtC+0Lw= 44324 +amVvbmc= 44325 +IGRlc3Rh 44326 +cGFr 44327 +IGluaW0= 44328 +IGdyb3dlcnM= 44329 +IE1lc3NhZ2U= 44330 +IGVsZWN0b3I= 44331 +ZW5nYWdl 44332 +IEZvcmJlcw== 44333 +IENpbmNpbm5hdGk= 44334 +IGRpZmbDqXJlbmNl 44335 +ZGY= 44336 +IHNwYXI= 44337 +IGF3YWl0cw== 44338 +IFVTU1I= 44339 +IFJpc2luZw== 44340 +IEhvxZ8= 44341 +IGZvb3Rpbmc= 44342 +IGNvbmRpY2lvbmVz 44343 +0YLQvtGA0L7Qsg== 44344 +IGNsaW5pY2lhbg== 44345 +IERpc2t1c3M= 44346 +16jXkg== 44347 +16U= 44348 +aXRlaXQ= 44349 +Z3Jlbg== 44350 +IGNoYXJpc21h 44351 +IGxldWtl 44352 +IGlycml0YXRpbmc= 44353 +IGNpcmNh 44354 +IFJob2Rlcw== 44355 +IHBpb3I= 44356 +IGhhbmRpY2Fw 44357 +cm95YWJsZQ== 44358 +IHZ1bGw= 44359 +T0c= 44360 +IGluw61jaW8= 44361 +aWVyaQ== 44362 +IHNwbGFzaGluZw== 44363 +IGRlbWlzZQ== 44364 +IGFzc2lzdGly 44365 +0YfRgtC+ 44366 +IGNvdmVydA== 44367 +IEd1ZA== 44368 +4LiJ 44369 +a2zDpHI= 44370 +IOyekOq+uA== 44371 +IHZlcsOkbmRlcnQ= 44372 +IFJFTQ== 44373 +IENvbnZlbg== 44374 +YXRnZQ== 44375 +IHBpZXJ3c3pl 44376 +IGNsZXJneQ== 44377 +bGluZ3Rvbg== 44378 +bGl2 44379 +VlBO 44380 +INGB0L7QttCw0Ls= 44381 +IEhhdGU= 44382 +z4bOvw== 44383 +IFJlc3BvbnM= 44384 +0L7Qt9C0 44385 +IGV0bWVr 44386 +IGNoZW1pbg== 44387 +2YXYqQ== 44388 +IOqwgOyhsQ== 44389 +VHJl 44390 +IHVtYXM= 44391 +IEJ1cnRvbg== 44392 +IHBhdHJpYXJjaA== 44393 +IFNtaXRoc29uaWFu 44394 +pZg= 44395 +TW9vbg== 44396 +QWly 44397 +IG1lZGlvcw== 44398 +IGVyYXNlcg== 44399 +IHdvbGx0ZW4= 44400 +IHBhcmVpbA== 44401 +IEJpbGxpZQ== 44402 +0LXRgNGC0LI= 44403 +IHBhcmxhbWVudA== 44404 +IGFnb255 44405 +IFFVRQ== 44406 +c2VxdWVudGx5 44407 +QW5vdGhlcg== 44408 +IFdoZXc= 44409 +IEFubnVhbA== 44410 +IHNlYmVu 44411 +7IOB7J2E 44412 +dmFsdWVz 44413 +npzrp4w= 44414 +IHNpbm9u 44415 +ZXJlYWw= 44416 +IEVubGlnaHQ= 44417 +IENoZW1pc3RyeQ== 44418 +IENhdGFsdW55YQ== 44419 +IGRvY3Ry 44420 +YW50b24= 44421 +IHN0dWs= 44422 +IFBsYXRl 44423 +IEthcmRhc2hpYW4= 44424 +IGZpbG9z 44425 +IFdldA== 44426 +INC/0L7Qv9GL0YI= 44427 +IHVua25vd25z 44428 +IFNjaG9u 44429 +IEJhbGR3aW4= 44430 +IHRlbGVzY29wZXM= 44431 +IEd1Y2Np 44432 +b3hpZGU= 44433 +IENvbnNlcnZhdGl2ZQ== 44434 +7ISx7J2E 44435 +IGhpbmF1cw== 44436 +UG93ZXI= 44437 +IOqxtOqwlQ== 44438 +IHByZXZhaWw= 44439 +b3JtYW4= 44440 +bWFjaGluZQ== 44441 +IDE5NDY= 44442 +IHVuYmVs 44443 +IHNjaGF1dA== 44444 +IHBpZWw= 44445 +ZWVudGg= 44446 +IG9iamVjdGl2ZWx5 44447 +IGNoYWtyYQ== 44448 +YXVkaW8= 44449 +IGNoaWNvcw== 44450 +IFZhdWx0 44451 +IG1lZGljaW5hbA== 44452 +IFRhaWw= 44453 +V2hpbGU= 44454 +IGFzcGhhbHQ= 44455 +IGZyb3pl 44456 +IEVL 44457 +dW5jaGluZw== 44458 +bm9zaXM= 44459 +MjAxNQ== 44460 +IEdyaQ== 44461 +IG9kZGx5 44462 +IE3DpHI= 44463 +IEFlZw== 44464 +Y29sbw== 44465 +UGFy 44466 +IOuTpOyWtOs= 44467 +IHZpbmRlbg== 44468 +IE9WRVI= 44469 +IGljZWQ= 44470 +IHNjb3Jw 44471 +IGhhYw== 44472 +cXVhbGlmaWVk 44473 +INGD0LLQuNC00LXRgtGM 44474 +ZXJtbw== 44475 +SEVO 44476 +IHNvaQ== 44477 +IG11bHRpcGxlcw== 44478 +IGxheW91dHM= 44479 +IGJsaW5kbmVzcw== 44480 +IEJvd3Nlcg== 44481 +INC/0L7QtNGC 44482 +IMOO 44483 +dmVudGlvbmFs 44484 +IG1hdGE= 44485 +bWFkxLE= 44486 +IGdlZXo= 44487 +IGNhZGVuY2U= 44488 +IHdhxbxuZQ== 44489 +IENocmlzdGll 44490 +dmVuZ2U= 44491 +Q2FsbA== 44492 +IHR1cm5hcm91bmQ= 44493 +IGJsb2I= 44494 +INCv0Lo= 44495 +IFZvaWNlb3Zlcg== 44496 +IHBlcmls 44497 +IEphaW1l 44498 +IEhPWQ== 44499 +bGFuZQ== 44500 +IHNlYmVs 44501 +IER1bw== 44502 +IEhpc3RvcmljYWw= 44503 +IGRuaQ== 44504 +IGdlbWE= 44505 +eWs= 44506 +IHNhYmVt 44507 +4bqvbmc= 44508 +IHZhcnM= 44509 +IFJvbm5pZQ== 44510 +IFJvbmFsZG8= 44511 +IFBlcnF1w6g= 44512 +bnNpbm4= 44513 +aGFpcg== 44514 +IHJlbGVudGxlc3M= 44515 +IGx5bg== 44516 +IHRyYXZlbGVy 44517 +bmluZQ== 44518 +IGFudGlt 44519 +IOy8gA== 44520 +IHNub3diYWxs 44521 +INGF0LDRgNCw0LrRgtC10YA= 44522 +IGludGVybnM= 44523 +IGNvbnN0aXR1ZW5jeQ== 44524 +INCd0LDQvA== 44525 +15zXnA== 44526 +VkVM 44527 +IHZpa3RpZ3Q= 44528 +IGFwb3lv 44529 +2YTYqA== 44530 +IGphcmQ= 44531 +IGhlaWdodGVuZWQ= 44532 +0YDQvtGB0YI= 44533 +IFNNSVRI 44534 +INC00LXQu9Cw 44535 +IHJlcGFpcmluZw== 44536 +IHJpZ3Q= 44537 +IFNoZWlraA== 44538 +IEJyaXRuZXk= 44539 +IGV2ZXJ5dGltZQ== 44540 +IGFkdmVudHVyb3Vz 44541 +b2NrZXk= 44542 +ZXJudA== 44543 +IGF0YXF1ZQ== 44544 +IEFsdGVybmF0aXZlbHk= 44545 +ZWZmZWN0 44546 +IHBhbGF2cmFz 44547 +IEVsbGlvdHQ= 44548 +IHLDqXVzc2k= 44549 +IGh5cGVydGVuc2lvbg== 44550 +IE1hbnVhbA== 44551 +IHByb3BoZXRpYw== 44552 +IGhhbmRj 44553 +0YzQtQ== 44554 +IHJlZnJhaW4= 44555 +IFNxdWlk 44556 +7J6h 44557 +INC60L7QvNCw0L0= 44558 +w6RsbGVu 44559 +IGxsZWfDsw== 44560 +IGJhc2g= 44561 +aW9ueQ== 44562 +INGB0LrQu9Cw0LQ= 44563 +INC60LDQsQ== 44564 +IGNhcmVsZXNz 44565 +IFBvb2w= 44566 +IHRyw6Fz 44567 +IGZpbHM= 44568 +IFNjaHI= 44569 +IHNwcmF3ZA== 44570 +IE1vbmF0ZW4= 44571 +IHVuZm9yZ2V0dGFibGU= 44572 +IENvdHRvbg== 44573 +IGluY29udmVuaWVudA== 44574 +IFJY 44575 +b3Jpcw== 44576 +IGh1bWJsZWQ= 44577 +16rXlw== 44578 +INii2b4= 44579 +IGluY3Jlw60= 44580 +IEtvbW1lbnRhcmU= 44581 +cmFjacOzbg== 44582 +IHZhbnRhZ2U= 44583 +IFNlYWw= 44584 +IOydtOqxsOulvA== 44585 +IGpvdWU= 44586 +IOyYpOuemA== 44587 +INC40YHQv9GL0YI= 44588 +b2Jlbg== 44589 +IGdyYXRl 44590 +IGNvbnRyb2xl 44591 +IFBlcmN5 44592 +xYJhZGE= 44593 +IHNpbXVsdGFuZW91cw== 44594 +IHByb3RvdHk= 44595 +IGdyb8OfZXI= 44596 +IGJld3Vzc3Q= 44597 +aW5pemk= 44598 +IHBhc3NpZXJlbg== 44599 +IEhhcHBpbmVzcw== 44600 +c2hp 44601 +Z2VodA== 44602 +IHN0YXRpb25lZA== 44603 +IEVyZ2Vibmlz 44604 +IGRpcmVjdGFtZW50ZQ== 44605 +IHN1cnZpdmVz 44606 +IHBlcnNvbmVz 44607 +QkVSRw== 44608 +IHZvbWl0aW5n 44609 +IGNvbmhlY2Vy 44610 +IGFkam91cg== 44611 +IENpdmlj 44612 +cGVp 44613 +YnVyc3Q= 44614 +IOuLpOuLiA== 44615 +6Y8= 44616 +IHNsZWQ= 44617 +IHBsYXRhZm9ybWE= 44618 +IFNlY3Q= 44619 +IERlZmlu 44620 +w6lub20= 44621 +Y2huZXQ= 44622 +IHByb2ZpdGFiaWxpdHk= 44623 +IGVycmVpY2h0 44624 +4buPaQ== 44625 +Y2F0aW9u 44626 +IOyngOq4 44627 +IHBlcmRyZQ== 44628 +IGZlbG9ueQ== 44629 +IDE5NTc= 44630 +IHVuc3VjY2Vzc2Z1bA== 44631 +IG5hZ3lvbg== 44632 +IGVsYXN0aWNpdHk= 44633 +IGZhY2FkZQ== 44634 +IGVhcnRobHk= 44635 +INCw0LzQtdGA0LjQutCw0L0= 44636 +IGNvbm4= 44637 +Y2xh 44638 +RHU= 44639 +IHBvbGl0aXF1ZXM= 44640 +IGhhbG8= 44641 +aWFudGVz 44642 +INC80L7QtdC5 44643 +dG9uZXM= 44644 +ZWxpZXI= 44645 +aHRha2luZw== 44646 +IHdpY2h0aWdl 44647 +IGFubm8= 44648 +IExvaw== 44649 +aWxsaW9ucw== 44650 +IHZpdmVy 44651 +IHNvbGNoZW4= 44652 +IHN1Zg== 44653 +IFNhbHo= 44654 +IE52aWRpYQ== 44655 +enVnZQ== 44656 +IFNwaWtl 44657 +VmlkZW8= 44658 +IHR3b3I= 44659 +IEFsYQ== 44660 +IGhhbnlh 44661 +IEFkbQ== 44662 +7J21 44663 +IFBhdGllbnRlbg== 44664 +IE9uaW9u 44665 +IEtvYmU= 44666 +IFNjZW5l 44667 +IFJhc2g= 44668 +0YDQsNGB0YI= 44669 +aXN0YW5p 44670 +R2VuZXJhbA== 44671 +bGV5ZQ== 44672 +aW1iYXA= 44673 +IGNvbmNlYWxlZA== 44674 +IEZyaWRheXM= 44675 +IFdvb2w= 44676 +INC90L7QstGL0YU= 44677 +2LTYsQ== 44678 +IOqysOqzvA== 44679 +IGplZG9jaA== 44680 +tOyLnA== 44681 +k6Trj4Q= 44682 +IOyepeuCnA== 44683 +dWt0 44684 +TG91 44685 +IOuoueyWtA== 44686 +IEV4cGVjdA== 44687 +INC00L7QvNC+0Lk= 44688 +IGlycmVzcG9uc2libGU= 44689 +IGFjZXJjYQ== 44690 +IFp1c3Q= 44691 +16jXmA== 44692 +VUk= 44693 +IHlvdXR1YmVycw== 44694 +IFBvc2l0aXZl 44695 +IHNvY2lvZQ== 44696 +IHNuYXRjaA== 44697 +IHJlZnJlc2hlZA== 44698 +IG5vbWluYXRpb25z 44699 +IFBhdHQ= 44700 +IG9ic29sZXRl 44701 +IGRlbWnFnw== 44702 +b3JtdcWf 44703 +IOyGlOynge2eiA== 44704 +IGZsYQ== 44705 +IGNyYXppZXN0 44706 +IFppZQ== 44707 +IFTDug== 44708 +emVw 44709 +aWNlbQ== 44710 +IOupi+yeiA== 44711 +IGN5bmljYWw= 44712 +IHRyZXNw 44713 +IGNyYXo= 44714 +1aXV 44715 +IG5lbGxl 44716 +IG1waA== 44717 +IE5lcmVk 44718 +IEtvYg== 44719 +IEVjaw== 44720 +qLjri4g= 44721 +SmFu 44722 +INCi0L7Qs9C00LA= 44723 +IGRlY2k= 44724 +IFZvZw== 44725 +IGJ1YmJsaW5n 44726 +w7ph 44727 +IHByb2R1Y3Rvcw== 44728 +aWJlcmFs 44729 +IHJlcGxpY2F0ZWQ= 44730 +IEltcHJvdmU= 44731 +aWxsYXJ5 44732 +Q2hh 44733 +IHLDqWR1 44734 +g5DtlZjrqbQ= 44735 +IGNvbm5vdA== 44736 +IEtyaXQ= 44737 +INC00YPRhdC+0LI= 44738 +IHRyZWFkbWlsbA== 44739 +IFBX 44740 +INC30L7QstGD0YI= 44741 +IGNsYW1z 44742 +IGRyYWZ0aW5n 44743 +IDE5NTY= 44744 +dW50YQ== 44745 +IGV4cGVuZGl0dXJlcw== 44746 +IEhvb3Zlcg== 44747 +V09P 44748 +0YjQtdC1 44749 +IGRlZHVjdGlvbg== 44750 +bW9uYXJ5 44751 +IHJlY2li 44752 +IHBvdm8= 44753 +IOuNlOs= 44754 +IFBBTA== 44755 +IEJsb3c= 44756 +IHd5cA== 44757 +IGRlc3RhYw== 44758 +ZGVhbA== 44759 +R3JhZW1l 44760 +IG7DqWNlc3NhaXJl 44761 +IGRhbW5lZA== 44762 +IDE5Mzg= 44763 +IOyLpOygnOuhnA== 44764 +IHRyb29w 44765 +IGluc2lnaHRmdWw= 44766 +IFRK 44767 +INC+0YHQsg== 44768 +IGZpZGVsaXR5 44769 +IFNraXA= 44770 +IE1heW8= 44771 +66ed 44772 +YXBwZQ== 44773 +IGJsYXM= 44774 +IFdZ 44775 +IEdO 44776 +Y3Rhcg== 44777 +U3U= 44778 +IGN1ZW50 44779 +aGV3cw== 44780 +IGNvcnBzZXM= 44781 +QWJz 44782 +IHdhc3Rld2F0ZXI= 44783 +IGNpZWs= 44784 +IE9udQ== 44785 +IGV4cGxvc2l2ZXM= 44786 +IGFybWE= 44787 +IFNURVBIQU4= 44788 +cG9saXRpaw== 44789 +IE9zYWth 44790 +dGHFgg== 44791 +IHlhcMSxeW9y 44792 +IGl6cXVpZXI= 44793 +IGJlbGV6YQ== 44794 +IFd5YXR0 44795 +IHN1aw== 44796 +IHNwZWNqYWw= 44797 +IGRhbmtl 44798 +d2hpc3RsZQ== 44799 +IGbDrXNpY2E= 44800 +IEhhcnJpZXQ= 44801 +IOyVhO2MjA== 44802 +IHdpbGxrb21tZW4= 44803 +aXBpbmc= 44804 +INGB0LzQvtGC0YDQuNGC0LU= 44805 +INC80L7QttC10YjRjA== 44806 +IGluYWNjdXJhdGU= 44807 +IGFycm9nYW5jZQ== 44808 +IFJlbW8= 44809 +zrPOrA== 44810 +YXNzZWQ= 44811 +IGRlbGl2ZXJpZXM= 44812 +IHN0aW5reQ== 44813 +INC/0LXRgNC10LY= 44814 +amF5 44815 +IHRyYW5zaXRpb25hbA== 44816 +IHJlcmU= 44817 +IE5HT3M= 44818 +IEFUTQ== 44819 +2K7Yqg== 44820 +aW9sb2d5 44821 +INCy0LvQsNC0 44822 +IHNjaG1l 44823 +IFNoaW5l 44824 +7JWh 44825 +cGFudHM= 44826 +IHNlcmdl 44827 +IHNlbmhvcg== 44828 +IGFiZHVjdA== 44829 +IEJyeWFudA== 44830 +VkVT 44831 +IGF3YWtlbmVk 44832 +IExheg== 44833 +cm9wb2xpcw== 44834 +IExhbw== 44835 +IHZpbGxh 44836 +IHN1bW1lcnM= 44837 +IGVudGhhbA== 44838 +IDE5NDk= 44839 +Vmlh 44840 +IOyWtOyo 44841 +IHRlbmRvbg== 44842 +IHZpb2xldA== 44843 +IGludGVsbGVjdHVhbGx5 44844 +IGJvdW5jZWQ= 44845 +YXJhdXM= 44846 +IDE5MTk= 44847 +IHZyYWFn 44848 +IHNwZWw= 44849 +IFNjaHdhcg== 44850 +U2NvdHQ= 44851 +IEluZG8= 44852 +IOunnQ== 44853 +IGNhbm9uaWNhbA== 44854 +IElLRQ== 44855 +IHRoYXTDrXM= 44856 +IG1lbGxhbg== 44857 +aWdtYXQ= 44858 +Q291bGQ= 44859 +Li4uPyk= 44860 +IGZvYXJ0ZQ== 44861 +IEt1bWFy 44862 +cmVuZG8= 44863 +IMOpbMOp 44864 +4LQ= 44865 +dmFsdWF0aW9u 44866 +Y2FzZXM= 44867 +IGludHVpdGl2ZWx5 44868 +aG9uZw== 44869 +ZXR0ZWQ= 44870 +IHNvdXZlbg== 44871 +IG1vcmI= 44872 +IGNvcnM= 44873 +IE5W 44874 +IEhhc2Fu 44875 +aWV2ZWQ= 44876 +IOyngOq4iOydgA== 44877 +IGR1bXBsaW5n 44878 +IGNvbnRyw7RsZQ== 44879 +IGFtYmlndWl0eQ== 44880 +IGNvZw== 44881 +IFNjcmlwdHVyZXM= 44882 +IGNhaQ== 44883 +IGJldmVy 44884 +IGh1aXM= 44885 +IGFpbWU= 44886 +IGVya2zDpHJlbg== 44887 +IExN 44888 +IEZleQ== 44889 +4K6x4K6k 44890 +IHN1cGVydmlzZWQ= 44891 +IGpld2U= 44892 +c3Bs 44893 +INGG0LXQvdGC0YA= 44894 +IGNvbGxpc2lvbnM= 44895 +2YTZgQ== 44896 +IEhvZ3dhcnRz 44897 +IER1cmhhbQ== 44898 +15XXow== 44899 +IHBob3NwaGF0ZQ== 44900 +IG92ZXJzZWU= 44901 +IGluc3BlY3Rpb25z 44902 +IGJyaW5j 44903 +IFphaw== 44904 +IHBheW9mZg== 44905 +IGNoYXVk 44906 +IEh1bmdlcg== 44907 +w6Nvcw== 44908 +dmly 44909 +IGZpYW5jZQ== 44910 +IGJvdWc= 44911 +bGl2ZWQ= 44912 +Y3J5 44913 +IGpvaW50bHk= 44914 +IGdpcmxmcmllbmRz 44915 +IE5leHVz 44916 +pqzqsqDsirXri4jri6Q= 44917 +IEt3YW5n 44918 +xYLEmQ== 44919 +IE5lZGVu 44920 +aWVjZQ== 44921 +IGluc2VydGluZw== 44922 +IE11bW15 44923 +IEdsb2Jl 44924 +IGxlZQ== 44925 +IGdlcm1hbg== 44926 +IGNyZWFtcw== 44927 +YWNobw== 44928 +IGNoxrBh 44929 +IEdhbGlsZQ== 44930 +IGbDvHJz 44931 +IGVzdGl2ZXI= 44932 +Y2lkb3M= 44933 +Q2hyaXN0aWFu 44934 +IGxvcnNxdQ== 44935 +IGN1dGVzdA== 44936 +dmFsZQ== 44937 +INC60YDQtdC/ 44938 +IHdhcnk= 44939 +IHNsaWNpbmc= 44940 +IGVzcGVyYW5kbw== 44941 +IFZhbmRlcg== 44942 +IERlaXhh 44943 +IDE5NTQ= 44944 +IG3Ds3dpxIU= 44945 +0ZbRlA== 44946 +IHRvb2xpbmc= 44947 +IHJlc3Rvcg== 44948 +IHBvc2ljacOzbg== 44949 +IGludGVudGFy 44950 +IEFwYWNoZQ== 44951 +T1VM 44952 +INmI2Kg= 44953 +IG1hdGnDqHJl 44954 +IGxpbmVu 44955 +IGVzdHJhdMOpZw== 44956 +IE11dHRh 44957 +IHBhcnRpbmc= 44958 +IG1pbmltaXppbmc= 44959 +IGFwcHJlbmRyZQ== 44960 +INCw0L3Qs9C70LjQuQ== 44961 +IERvbw== 44962 +IEZpcmVmb3g= 44963 +Y8OzbW8= 44964 +IGdlb3BvbGl0 44965 +IG1ha2Fu 44966 +IG1vZ2VsaWpr 44967 +IM+AzrXPgc65 44968 +IGPhu6k= 44969 +IGluc3RhbGxlcg== 44970 +IGRpYnVq 44971 +IEhlYXRo 44972 +bG9vcA== 44973 +IEJyb2tlbg== 44974 +SFlVTg== 44975 +c2hlbGY= 44976 +IGZpemVy 44977 +IGVuaGFuY2Vz 44978 +INC00L7RgdGC0Lg= 44979 +IFBVQg== 44980 +IEtvbGxlZ2lu 44981 +IGF0dGFpbmVk 44982 +xL4= 44983 +IG1pc3RyZXNz 44984 +IE9mdGVudGltZXM= 44985 +157Xmded 44986 +IGJld2U= 44987 +IFNvcmE= 44988 +cmF1ZW4= 44989 +YmF1bQ== 44990 +IHJvbGxlcnM= 44991 +IG1lcmluZw== 44992 +IFBBQw== 44993 +INC90ZY= 44994 +IFLDqXB1YmxpcXVl 44995 +INGC0YDQsNCy 44996 +IFZhbmd1YXJk 44997 +dWNpb25lcw== 44998 +IOustOuMgA== 44999 +IGdvdXI= 45000 +r6Q= 45001 +IM+J 45002 +IHNhdW5h 45003 +IHBlaW5l 45004 +IFZhbGVyaWU= 45005 +IFNpa2g= 45006 +ZmVuZGltaXo= 45007 +YmVybw== 45008 +INGH0Lg= 45009 +IGRvxZt3aWFk 45010 +IEV1cm9z 45011 +IGNvbW1lbnRhaXJlcw== 45012 +IHR3ZWFrcw== 45013 +IEZhc3Rlcg== 45014 +INGA0LDRgdC6 45015 +IHByb2dyZXNzaXZlbHk= 45016 +IEV1Y2g= 45017 +Ym9ybw== 45018 +IEluZ3JlZA== 45019 +Q2Fw 45020 +IHVuY2hlY2s= 45021 +IOyYpOuluA== 45022 +IHdyZQ== 45023 +IEZU 45024 +w7ZydW5n 45025 +IG1lbW9yaXplZA== 45026 +IERpbm5lcg== 45027 +IFBoZXc= 45028 +b3VibA== 45029 +IHB1dGE= 45030 +IGFkbWl0cw== 45031 +0LXQt9C00LU= 45032 +b3BvZA== 45033 +IHBhbmRh 45034 +IGhpbmdlcw== 45035 +Y2lwZQ== 45036 +IHRyYW5zYWN0 45037 +IHBvZGlh 45038 +IHBpY3M= 45039 +IGNyaXRlcmlvbg== 45040 +IE9yY2hlc3RyYQ== 45041 +IEJsb2c= 45042 +IHNvbGVtbg== 45043 +IFBpeGFy 45044 +VGhyZWU= 45045 +INCy0L3QuNC3 45046 +IFZvbHVudGU= 45047 +IFNhdmFnZQ== 45048 +IFBWQw== 45049 +IENhZg== 45050 +IHd5a29u 45051 +IGdyYWRlcnM= 45052 +IGNyb3VjaA== 45053 +IGNsaWNoZQ== 45054 +IHNveWJlYW5z 45055 +IE1VUg== 45056 +IEdvbnphbGV6 45057 +IE1pbWk= 45058 +IEJvbHNvbmFybw== 45059 +IGRpYXBocmFn 45060 +IGJpbGFuZw== 45061 +65CY64qU 45062 +IHJlZ3VsYXRpbmc= 45063 +TWM= 45064 +SnVkZ2U= 45065 +INC90L7Qtg== 45066 +IGpha8SF 45067 +aXRlc3Nl 45068 +IFdpag== 45069 +IGxhdGE= 45070 +Z3JvYW5pbmc= 45071 +UE9TSU5H 45072 +INeQ15XXqteV 45073 +IGhhZ2E= 45074 +IGdyb3VuZGluZw== 45075 +IHZpb2xlbnRseQ== 45076 +IHRpbGxz 45077 +IGVuZ2Fn 45078 +IEhvbGxvdw== 45079 +INC/0L7Qv9GD0LvRj9GA 45080 +IHdwcm93YWQ= 45081 +IHJlcGxhY2Vz 45082 +IGZsdW9yZXNjZW50 45083 +dXJnaWNhbA== 45084 +aWdnbHk= 45085 +IFRyYWRpdGlvbmFs 45086 +dHRl 45087 +INmE2Yc= 45088 +IHBob3NwaG9ydXM= 45089 +IGFwcm9u 45090 +IFdhdGVycw== 45091 +IEt1bHR1cg== 45092 +0LDQstCw0Lk= 45093 +IG9saXZlcw== 45094 +INeU15DXnA== 45095 +IHRlaWx3ZWlzZQ== 45096 +IHNlbmNpbGw= 45097 +IHByZW5kcw== 45098 +IG5hcnJvd2Vy 45099 +IGrDpHR0ZQ== 45100 +IEluZm9ybWF0aW9uZW4= 45101 +7IOB7J20 45102 +IHN0YXJ2ZQ== 45103 +IGZyaWNr 45104 +IEJld2Vn 45105 +4KSy 45106 +IGRvbHBoaW4= 45107 +IExBVUdIVEVS 45108 +IElOVEVSVklF 45109 +IHlhbmzEscWf 45110 +IHRvcnBlZG8= 45111 +IHNob3J0YWdlcw== 45112 +7J2065Oc 45113 +xLFsZMSx 45114 +IHBhd3M= 45115 +IG96b25l 45116 +IGN1bHRpdmF0ZWQ= 45117 +IEZvdA== 45118 +IG5vdG9y 45119 +0L3QvtC3 45120 +INC60L7RiA== 45121 +IHRvdWNoc2NyZWVu 45122 +IEFsbHk= 45123 +IOunm+yeiOyWtOyalA== 45124 +INCh0LXRgA== 45125 +INCy0L/QvtC70L3QtQ== 45126 +IHBhcHJpa2E= 45127 +IER1c3Rpbg== 45128 +IGVmZWN0bw== 45129 +IG9waW5p 45130 +IG11dXQ= 45131 +IGjhu41j 45132 +IGludGVyamVjdA== 45133 +xJl0 45134 +IGJ1dHRz 45135 +dXJleg== 45136 +IFBpa2U= 45137 +IEhvaw== 45138 +IEd1aW5lYQ== 45139 +IENhdGhlZHJhbA== 45140 +IDE0MDA= 45141 +Q3Jh 45142 +Kyw= 45143 +66eb 45144 +s7Trj4TroZ0= 45145 +YWJ5cmlu 45146 +IHZpZGVvZw== 45147 +INC+0YDRg9C2 45148 +IHXFvg== 45149 +IGJ1c2NhbmRv 45150 +IEFzc2lzdGFuY2U= 45151 +IG1lbGhvcmVz 45152 +7KG0 45153 +IOuBvA== 45154 +IFJK 45155 +INiq2YU= 45156 +IG9taW4= 45157 +IG1vdG9yY3ljbGVz 45158 +IFNhcHA= 45159 +IHN1cHBseWluZw== 45160 +IEFsZ3Vu 45161 +IGFlcm9zcGFjZQ== 45162 +16LXnA== 45163 +b2NjdXA= 45164 +bGVpc3Q= 45165 +IOqxsOuKlA== 45166 +IGNvbXBsZXRh 45167 +YnJlcw== 45168 +ISg= 45169 +INCf0YDQtdC0 45170 +IGRpc2FkdmFudGFnZWQ= 45171 +IEF0dGVuZA== 45172 +IEp1ZGFo 45173 +4buLY2g= 45174 +eWxlbmU= 45175 +YWN0bHk= 45176 +IHNldHVwcw== 45177 +IGFtbW9uaWE= 45178 +IFNjaHdlaXo= 45179 +IFNoYW1l 45180 +IGJhbmRl 45181 +IEZ1ZWw= 45182 +IHRyb3VibGVzb21l 45183 +IG51bWVybw== 45184 +IE1PTQ== 45185 +INC/0YDQtdC00LvQsNCz 45186 +bWVudGlvbmVk 45187 +INCx0L7Qu9GM0YjQvtC1 45188 +IFZpa3Rvcg== 45189 +IFN0eWxlcw== 45190 +IGNydWNpZmllZA== 45191 +cnVjdHVyZWQ= 45192 +ZW52aXJvbg== 45193 +IG1vcmFscw== 45194 +IG1lZGl0YXRpbmc= 45195 +IGF4aWFs 45196 +aXNhbmNl 45197 +IEFic3Q= 45198 +R3JlZW4= 45199 +IOqxtOw= 45200 +IHF1YWRyYW50 45201 +IHBlcmdp 45202 +IGNhbWVyYW1hbg== 45203 +IFNlcXU= 45204 +IHBhdXNlZA== 45205 +IExhdWdoaW5n 45206 +6reA 45207 +Py4u 45208 +IMW7ZQ== 45209 +IHBlcm1pdGly 45210 +IGRldGVjdG9ycw== 45211 +IEhVRA== 45212 +YXZhbA== 45213 +IOyXrOq4sOq5jOyngA== 45214 +IGh1YnM= 45215 +IGJlc3RpbW10 45216 +INCx0YPQtNC10YLQtQ== 45217 +SU5URVJQT1NJTkc= 45218 +IHRlbmdhbg== 45219 +IGNyYXZl 45220 +IEJ1bmRlc3JlZ2llcnVuZw== 45221 +IEJsb29keQ== 45222 +IHVzYWJpbGl0eQ== 45223 +IEVhcw== 45224 +IMSR4buZbmc= 45225 +IDE5NTU= 45226 +IGtyaWVnZW4= 45227 +IGhhYml0dWFs 45228 +IGVzc2VudGlhbHM= 45229 +cmltaW5hbA== 45230 +IHJvb21tYXRlcw== 45231 +INC/0LXRgNC10YXQvtC0 45232 +IG5naGk= 45233 +IG1lbmluZw== 45234 +IFN5bXBob255 45235 +IEh1Zw== 45236 +YWdnaQ== 45237 +IHdpZWQ= 45238 +IG1pdGFk 45239 +dGVlbnRo 45240 +aWRhxIc= 45241 +U2F2ZQ== 45242 +IHJvYmnEhw== 45243 +IGJvdW5jZXM= 45244 +sJbsl5A= 45245 +c3RhcnM= 45246 +IHByYWdtYXRpYw== 45247 +IGNvZ25pdGlvbg== 45248 +IHdyYXBwZXI= 45249 +IHdhcnRlbg== 45250 +YWRo 45251 +IHBlbnNh 45252 +IEhlcnR6 45253 +IG7Emw== 45254 +IFJlaWQ= 45255 +IFBDcw== 45256 +IE1vbGU= 45257 +IC4uLi4u 45258 +IHByZWNpbw== 45259 +IENoYW1waW9uc2hpcHM= 45260 +6rCA6529 45261 +IHbDqXI= 45262 +IGNvcnJpZG9ycw== 45263 +IEVsZWN0cm9uaWM= 45264 +U2w= 45265 +INCw0LvQtQ== 45266 +IG92ZXJ0aHJvdw== 45267 +IGthYnVs 45268 +IFJFUw== 45269 +IEN5YmVycHVuaw== 45270 +0L7Qs9C+0LQ= 45271 +INCd0LDQsg== 45272 +IHdhbg== 45273 +IG1hbmlmZXN0YXRpb25z 45274 +IGN1YWxlcw== 45275 +IFdpc2U= 45276 +IEzDtnN1bmc= 45277 +IGV4Zm9s 45278 +IGVhcm5z 45279 +0YPRgdGC0LjRgtGM 45280 +IHNhcHA= 45281 +IEJyYXVu 45282 +IEJSQU5ET04= 45283 +7LmZ 45284 +IHNhbm8= 45285 +IEZFTA== 45286 +0YvQstCw0LnRgtC10YHRjA== 45287 +0L7QttC00LXQvdC40Y8= 45288 +IHNld24= 45289 +RnVu 45290 +IHJlY2lwcm9jYWw= 45291 +IGV4cGFuc2l2ZQ== 45292 +IFRyYWZmaWM= 45293 +IGt0w7NyZWdv 45294 +INmI2LM= 45295 +IOu5qA== 45296 +cHJvdmU= 45297 +aWdhcmU= 45298 +IGxvaA== 45299 +2KfYtg== 45300 +SG9wZQ== 45301 +IGRldm90ZWVz 45302 +IEdvbQ== 45303 +IHN0ZWFscw== 45304 +IFVtcw== 45305 +IFR3aWNl 45306 +aXlpbQ== 45307 +IHJoeXRobWlj 45308 +IFZvcnRl 45309 +IHByZWZpeA== 45310 +b21pbmF0aW9u 45311 +IGRhdG8= 45312 +IGN1c3RhcmQ= 45313 +IFZPSUNF 45314 +IG1lbnk= 45315 +aXN0b3Jz 45316 +IO2YkQ== 45317 +IOyCtOyVhA== 45318 +IO2DhA== 45319 +IGtvcnQ= 45320 +IGFiYQ== 45321 +IFZlcmE= 45322 +ZXB5 45323 +IOy5tOuplOudvA== 45324 +IHN1Ym1lcmdlZA== 45325 +IENsb2Nr 45326 +IHRodW1ibmFpbHM= 45327 +IGJvYXN0 45328 +IEZhcmU= 45329 +ISFd 45330 +IMWbbQ== 45331 +IGthaWtraQ== 45332 +IFRlY2hub2xvZ2llcw== 45333 +7Jm4 45334 +0LjRgtCw0Lk= 45335 +INCw0YI= 45336 +IGtub2Jz 45337 +IHJlaWNodA== 45338 +xrDhu6NuZw== 45339 +Z2xpbw== 45340 +IOunm+ydtA== 45341 +6rCQ7J2E 45342 +IGpvdGth 45343 +IEhhbmR5 45344 +IEhhYmVu 45345 +bm91cw== 45346 +IGlubGFuZA== 45347 +IGFtYXpvbg== 45348 +aG9vdGluZw== 45349 +U0w= 45350 +IGxlaXN0ZW4= 45351 +fiI= 45352 +IHByb3Zva2U= 45353 +IFR3aXN0 45354 +INeR15c= 45355 +IGRlcGFydGVk 45356 +6rCc66W8 45357 +IGtvbnNl 45358 +IENhcnd5bg== 45359 +7ZWY7Iug 45360 +aWRlbnRhbA== 45361 +RVNDTw== 45362 +IHR0ZW9rYm9ra2k= 45363 +IGRpemVuZG8= 45364 +xLFuZGFraQ== 45365 +aW1hc3U= 45366 +YWZhcg== 45367 +IGxhbmRmaWxs 45368 +IGNvcnJlY3Rpbmc= 45369 +IGNsZWFycw== 45370 +IE51bW1lcg== 45371 +SEFN 45372 +IGNhcnRyaWRnZXM= 45373 +IERpZXNlbA== 45374 +cGFjZWQ= 45375 +IG9ibGl2 45376 +IG1veWVucw== 45377 +IFNpbm5l 45378 +IFByZWlz 45379 +aWxpeg== 45380 +INGB0LzQvtC2 45381 +IGJyb2FkZW4= 45382 +eGVz 45383 +IGNhcmJvaHlkcmF0ZQ== 45384 +7Zi5 45385 +c2Vvaw== 45386 +IGVjaG9lcw== 45387 +IGNlc3M= 45388 +67CU 45389 +INCx0LjQt9C90LXRgQ== 45390 +IGxsYW1hZG8= 45391 +IGVzc2VudA== 45392 +IOydvOuwmA== 45393 +IEFpcmVz 45394 +cGhlbg== 45395 +IHplYnJh 45396 +IHN5bWJvbGlzbQ== 45397 +T25jZQ== 45398 +IHJhY2tz 45399 +IEthZmth 45400 +INGB0LXRgNGM0LXQtw== 45401 +IHNpbm4= 45402 +cGljaW91cw== 45403 +a2Fh 45404 +IG1vdGhlcmZ1Y2tlcg== 45405 +IGFwcHJlbnRpY2VzaGlw 45406 +IHJwbQ== 45407 +IHRheGF0aW9u 45408 +IGZ1cnJ5 45409 +IFNhY3JlZA== 45410 +INGA0LDQt9C8 45411 +cG9yYQ== 45412 +ZW5nZXM= 45413 +IO2XiOs= 45414 +INGB0LjQvQ== 45415 +IHNhbml0aXplcg== 45416 +IGNyaW5nZQ== 45417 +IFNjYQ== 45418 +0L7Rh9C90L4= 45419 +IG9mZXJl 45420 +IG1lbG9kaWVz 45421 +IFZlbHZldA== 45422 +IElocmVy 45423 +IEh5YnJpZA== 45424 +IEdpb3Y= 45425 +IGlyZ2VuZHdhcw== 45426 +IGRlcGVuZGU= 45427 +IFVzZXJz 45428 +IGh1bXA= 45429 +ZHJpdmluZw== 45430 +IHNm 45431 +IHJ1dGhsZXNz 45432 +4LmA4LiE 45433 +IGxlbW9ucw== 45434 +IGbDtnJldA== 45435 +IE9q 45436 +INC80LDQvNCw 45437 +IGludGVycGVyc29uYWw= 45438 +IGdldg== 45439 +IGFibm9ybQ== 45440 +0LjRgdC7 45441 +INC40L3QtA== 45442 +IGtvbnRyb2xs 45443 +IHJlZ3Jlcw== 45444 +IGxlZGdl 45445 +IGVyesOkaGx0 45446 +IFRhY3Q= 45447 +IGFycml2w6k= 45448 +IHN1YnN0YW50aXZl 45449 +IHNwb29uZnVs 45450 +endpc2NoZW4= 45451 +b29vb28= 45452 +IGNvbnRlbmlkbw== 45453 +IGJlc2w= 45454 +4buDbQ== 45455 +a3Rlbg== 45456 +SmFtaWU= 45457 +IHNhbmR5 45458 +4os= 45459 +IHBhc2U= 45460 +IGRldHRl 45461 +IEJlbGdpYW4= 45462 +6rCc6w== 45463 +dWxhcmVz 45464 +cnVk 45465 +aWdvcg== 45466 +IO2MrOs= 45467 +IHJlbWVkaWVz 45468 +IGJsYXN0aW5n 45469 +IFNpY2g= 45470 +INC+0LbQuNC0 45471 +IG1vbnN0cg== 45472 +IG1hbmlmb2xk 45473 +IGdsYXViZW4= 45474 +IEVTVA== 45475 +IHN0cmVhbWxpbmU= 45476 +IGxvYmJ5aW5n 45477 +IEdvdGhpYw== 45478 +dG9pcmU= 45479 +Li4n 45480 +IGTDqW1vY3I= 45481 +INC90LDQsdC70Y7QtA== 45482 +IHdzcMOzbA== 45483 +IGN6xJnFm8SH 45484 +aXPDqXM= 45485 +Z2FuZ2Vu 45486 +IGJlenBpZQ== 45487 +cmVtbGlu 45488 +6rCd 45489 +U3RpbGw= 45490 +IHJlc2lkZXM= 45491 +IGdlbGVjZWs= 45492 +IHTDqWzDqXBob25l 45493 +IHBld24= 45494 +IGxlb3BhcmQ= 45495 +IGNvbXBsaW1lbnRhcnk= 45496 +IGNyaWI= 45497 +IEFuaW1hbHM= 45498 +IGdlaWw= 45499 +ZXNzZWw= 45500 +IGdhcmRlcg== 45501 +IGNhdGNoeQ== 45502 +IEV0cw== 45503 +IENvbW1lcmNpYWw= 45504 +IERFTk5JUw== 45505 +IENvb3JkaW5hdG9y 45506 +IEFiaWdhaWw= 45507 +ZmZmZmZm 45508 +4bqlcA== 45509 +IHBlcXVlw7Fh 45510 +IGluamVjdGlvbnM= 45511 +Y2VrdA== 45512 +IHBoaWxhbnRocm9weQ== 45513 +IHB1Y2s= 45514 +IGNlbGVicmF0ZXM= 45515 +IER1bms= 45516 +IERsYXRlZ28= 45517 +zrTOrg== 45518 +Z3JhZHVhdGU= 45519 +IE1vYmls 45520 +dGlsbA== 45521 +YWNhbQ== 45522 +IHlvbGtz 45523 +IHRhbmdsZWQ= 45524 +IG1hbmlhYw== 45525 +IG9ibGlnZWQ= 45526 +IExhaW5r 45527 +IHZlcmRlcg== 45528 +IERhbW9u 45529 +IG11dGFudA== 45530 +IGhvcHBpbmc= 45531 +IHJlaW5z 45532 +IGludmVydGVy 45533 +IGNvbnRlbXB0 45534 +16DXoQ== 45535 +bGVhcm5pbmc= 45536 +TWlzcw== 45537 +INCT0L7RgQ== 45538 +IE1leWVy 45539 +6ruY7ISc 45540 +15XXoNeZ150= 45541 +YXNraW5n 45542 +IHRyaW1taW5n 45543 +IHRyZWFzdXJ5 45544 +IHNlbnRl 45545 +QXVzdA== 45546 +IFVudGVyc3TDvHR6dW5n 45547 +IENvbWVkeQ== 45548 +IEFuYWtpbg== 45549 +6bk= 45550 +0YDRg9GC 45551 +IEhhcmk= 45552 +b2dyYXBoZXJz 45553 +IG9hdG1lYWw= 45554 +IEJvdHM= 45555 +INC/0LDQu9GM 45556 +IGFja25vd2xlZGdlbWVudA== 45557 +eGlj 45558 +IOq0gOyLrA== 45559 +Z2FzcGluZw== 45560 +IHRlcnJhY2U= 45561 +IG9ybmFtZW50cw== 45562 +IE1FUg== 45563 +Y29tbWl0dGVl 45564 +IOyXhuyKteuLiOuLpA== 45565 +IHJpag== 45566 +6bM= 45567 +16bXnQ== 45568 +bGVtZQ== 45569 +IGxpYmVydGllcw== 45570 +IGZlbGxhcw== 45571 +IENvcHBlcg== 45572 +YmVuY2g= 45573 +IElkZWE= 45574 +4buNbg== 45575 +0YjQsA== 45576 +IHZlcnNpw7Nu 45577 +z4TOv8+N 45578 +INCc0Lg= 45579 +INC/0YDQuNC70L7Qtg== 45580 +IGJveGVy 45581 +IFRhbm5lcg== 45582 +IE1veQ== 45583 +7LmY64qU 45584 +VGhy 45585 +IHRpbmhhbQ== 45586 +IHBvbGlzaGluZw== 45587 +IGNvbnNlcXVlbnRseQ== 45588 +IGFtZW5pdGllcw== 45589 +IEtJ 45590 +IEdSRUVO 45591 +IEZyYW5raWU= 45592 +0L3QuNGC 45593 +aXR0ZWw= 45594 +0YHQutC+0LU= 45595 +dXJzZWQ= 45596 +IHVwYnJpbmdpbmc= 45597 +IHRo4bup 45598 +IOyLneycvOuhnA== 45599 +IHdoaW0= 45600 +IGNoaW5lc2U= 45601 +Y29uZmlkZW5jZQ== 45602 +IEplZGVy 45603 +YWpjaWU= 45604 +IFRvdXM= 45605 +IFBvd2Vycw== 45606 +4burYQ== 45607 +b3RoZXJtYWw= 45608 +INCy0YvRiNC1 45609 +cmFsZQ== 45610 +2KfYrg== 45611 +IOyngOybkA== 45612 +IMOpcGlzb2Rl 45613 +IHN1bHBo 45614 +IGVuY2FyYQ== 45615 +a3JhZnQ= 45616 +YWxhcsSx 45617 +IENvbWVz 45618 +IGRpdnVs 45619 +IFJ1ZG9scGg= 45620 +IE11c2U= 45621 +IHV0ZW5z 45622 +IOyekOyjvA== 45623 +IHBhbmE= 45624 +IFZlZ2V0YQ== 45625 +IFBIUA== 45626 +IE5TQQ== 45627 +ZW50aW4= 45628 +IENhcm5lZ2ll 45629 +2KfZig== 45630 +acSZY3k= 45631 +SGFycnk= 45632 +IGbEsXI= 45633 +0KHQvw== 45634 +IGdsYWRseQ== 45635 +IGF2ZXJhZ2luZw== 45636 +7ZWY6rKg7Iq164uI64uk 45637 +0LvRj9GO0YLRgdGP 45638 +INCc0LXQvdGP 45639 +IHF1b3RhdGlvbg== 45640 +cmlyZXM= 45641 +aXRjaGVucw== 45642 +YXllZA== 45643 +IHVuYXR0 45644 +IFBlcmV6 45645 +INC+0YLQvNC10YI= 45646 +IHRhY3RpbGU= 45647 +IEV1aA== 45648 +aXNpbmk= 45649 +YnVo 45650 +IGhhdMSxcg== 45651 +IOyeiOycvA== 45652 +IHBvbGljeW1ha2Vycw== 45653 +s7TshLjsmpQ= 45654 +YWPEsQ== 45655 +IM66zrk= 45656 +IHJlZ2lzdGVyaW5n 45657 +cmV0bw== 45658 +IFNwcmlua2xl 45659 +IEdyYW1teQ== 45660 +YXh0ZXI= 45661 +INCx0Lg= 45662 +IHNpdHRlcg== 45663 +IHByZWRpYw== 45664 +IHRoaW5seQ== 45665 +IHN0cnVt 45666 +IGFnZ3Jhdg== 45667 +IGFoYQ== 45668 +2LHYrA== 45669 +bWVsbG93 45670 +IGNvbnN0YW50ZQ== 45671 +IExhdXQ= 45672 +aXN0b24= 45673 +IHRyYW5zaXRpb25lZA== 45674 +IENhbWJvZGlh 45675 +YXJ0ZWQ= 45676 +IG1pc2Y= 45677 +IFB1bmt0ZQ== 45678 +jOuToA== 45679 +IHRyZW1ibGluZw== 45680 +IGdlc3Bhbm50 45681 +INi52YTZitmH 45682 +INC90LjQutCw0LrQuNGF 45683 +IOu2gOuTnOs= 45684 +INGA0LDQt9Cy0LjRgg== 45685 +IGl0Y2h5 45686 +IGNpZW50bw== 45687 +IHBsYWlucw== 45688 +IGtpdHRlbnM= 45689 +IGJhY2tsb2c= 45690 +IFByZXNpZGluZw== 45691 +cHRh 45692 +IGhhdm9j 45693 +IERhcnJpbg== 45694 +INCb0Y7QsQ== 45695 +IHNlZ3JlZ2F0ZWQ= 45696 +IGdoZXR0bw== 45697 +IGVybGVidA== 45698 +IGRydWdpZWo= 45699 +IFNpeHQ= 45700 +4Lij4Liw 45701 +dWVuY2lh 45702 +IO2VmOq4sA== 45703 +IOuGjQ== 45704 +IHJvYmk= 45705 +IHBpb25lZXJz 45706 +IG1pbGxpYXJkcw== 45707 +IFdpdGNoZXI= 45708 +IOustOyXhw== 45709 +b3Jybw== 45710 +bWFzcw== 45711 +IGRpdmVyZ2VuY2U= 45712 +IFJpdmVyYQ== 45713 +IE5vb2RsZXM= 45714 +IGVuZHJvaXQ= 45715 +IEtvc3Rlbg== 45716 +INC00YDRg9Cz0LA= 45717 +IG3DrW5pbW8= 45718 +IEthemFraHN0YW4= 45719 +2KrZhw== 45720 +INCy0L7Qt9C00YM= 45721 +IGdlc2NocmllYmVu 45722 +IE5pbA== 45723 +0YHQutC4 45724 +IEZyw7xo 45725 +IGJldmVyYWdlcw== 45726 +IEdvbg== 45727 +QXJpbg== 45728 +IEludHJv 45729 +b2NhbHlwdGlj 45730 +IGV4aGF1c3Rpb24= 45731 +IFN0YXR1cw== 45732 +IEJhdHRlcnk= 45733 +w6lzeg== 45734 +o7zr 45735 +YWlyeQ== 45736 +IOuztOyXrOuTnOs= 45737 +IGRpc3Bhcml0eQ== 45738 +2Yw= 45739 +IFR1Y3Nvbg== 45740 +IGJyaWdodGx5 45741 +cHJvYmxlbQ== 45742 +IGJpb21hc3M= 45743 +p4k= 45744 +IGh1cmRsZQ== 45745 +IHdhdmVsZW5ndGhz 45746 +IDw8 45747 +IHRlYW1lZA== 45748 +RkZGRg== 45749 +IFNsaW0= 45750 +b21pYWw= 45751 +IHVudmVpbGVk 45752 +IFZlcmVpbg== 45753 +2YLYtw== 45754 +ZXN0cnk= 45755 +IGNsw6Fz 45756 +IGNoZWRkYXI= 45757 +IGFjY3VzaW5n 45758 +IFNjaWVudGlmaWM= 45759 +INCx0YPQtNC1 45760 +IEN5cnVz 45761 +zrXPhM61 45762 +hpPqs6A= 45763 +IOuzhA== 45764 +IGN1cmQ= 45765 +IHJlZmVycmFscw== 45766 +c2hpZnQ= 45767 +bmlrw7N3 45768 +IG1pZXI= 45769 +IGNvbmZyb250aW5n 45770 +6rKD64+E 45771 +YXds 45772 +IHRyeWlu 45773 +IOq3uOuemOyalA== 45774 +IGNoaWFy 45775 +IOyYpOuKmOuPhA== 45776 +ZXNxdWU= 45777 +IG1pc21vcw== 45778 +IFNoYWs= 45779 +IHNvY2lhdXg= 45780 +IHBpxZ8= 45781 +IGtpxZ9p 45782 +IGN5YW4= 45783 +aGF5 45784 +YmV3 45785 +Ym9k 45786 +IM65 45787 +IE1haW5seQ== 45788 +0Y7RgtGM 45789 +aGFiaXR1ZGU= 45790 +INGB0L/QvtC60L7QuQ== 45791 +IHByZWNvbg== 45792 +IE1hbmR5 45793 +8J+kow== 45794 +aWxsb3M= 45795 +IGdydXBw 45796 +IGNydW1ibGU= 45797 +IGNvbnN0cnVjdG9y 45798 +ZXJ2aWNlcw== 45799 +IGxpZ2h0aG91c2U= 45800 +IENvbmNlcHQ= 45801 +0LDQvdGC0Lg= 45802 +YWx0cm8= 45803 +aG9wZQ== 45804 +IEFsbGVn 45805 +7Ja066W8 45806 +cGllY2Vz 45807 +b3VudGVy 45808 +IO2VmOuLiOq5jA== 45809 +IOyduO2EsOs= 45810 +IHbDqXJpdGFibGU= 45811 +IHRocmVhZGVk 45812 +YmxpbmQ= 45813 +gpjrnbw= 45814 +IHRyYXlz 45815 +IEVkaXNvbg== 45816 +IMOWeg== 45817 +IFN0ZXZpZQ== 45818 +IGxlbmRlcg== 45819 +IGJyaWdhZGU= 45820 +IGRldXRzY2hl 45821 +bXVmZmxlZA== 45822 +YmFydA== 45823 +IGluc2FuaXR5 45824 +IHNhdnZ5 45825 +IHNlbnNhdGlvbmFs 45826 +IGRlcmVjaG9z 45827 +IE1Y 45828 +INC/0YDQtdC/ 45829 +IHRocmVhdGVucw== 45830 +IHJlYWx0w6A= 45831 +IGluZGljYXRpdmU= 45832 +IGNob3Bz 45833 +IGJlbmVmaXRpbmc= 45834 +IFZlcm5vbg== 45835 +IFN0cmFuZA== 45836 +bnVu 45837 +cXVlbnRseQ== 45838 +MTAx 45839 +IGVlbA== 45840 +7IiZ 45841 +cmludHM= 45842 +INmF2LM= 45843 +INio2K8= 45844 +INC/0L7RgdGC0YDQvg== 45845 +IHlhcG3EscWf 45846 +IG9sbWFzxLE= 45847 +IGllZGVyZWVu 45848 +b2zDqQ== 45849 +a2Vm 45850 +IOuwnOyDnQ== 45851 +IHJhaW5lZA== 45852 +IGFsbWlnaHR5 45853 +INCy0YvQtA== 45854 +IENQUg== 45855 +RnJl 45856 +IGluaGFiaXRlZA== 45857 +IGFyYmV0cw== 45858 +IGFraW4= 45859 +0LDRgdGC0LI= 45860 +dmFuaWE= 45861 +IGjDpHVmaWc= 45862 +IE1hdHRl 45863 +c29ycnk= 45864 +SmVubnk= 45865 +INCz0YDQsNC0 45866 +IHdoaXQ= 45867 +IGJyb2tlcnM= 45868 +IGhpbmU= 45869 +YXN0ZW4= 45870 +INCz0YDRgw== 45871 +TUI= 45872 +IFBSSQ== 45873 +U2Fi 45874 +IHdyZXN0bGVy 45875 +IGZhY2lsaXRhdGluZw== 45876 +IGVoa8Ok 45877 +IENyZWQ= 45878 +IDEyNw== 45879 +IG5vdGhpbg== 45880 +IG1hbmRhdGVk 45881 +0YPRgtGB0YLQsg== 45882 +RnJhbms= 45883 +IHdvcnM= 45884 +IGR6aWXFhA== 45885 +IFVuZGVyZ3JvdW5k 45886 +IHpuYWpkdQ== 45887 +IELDpA== 45888 +IFByaW56aXA= 45889 +0LDRgtC10LvQtdC5 45890 +IHZldGVyaW5hcg== 45891 +IHNwbGVuZGlk 45892 +IHJvenA= 45893 +IHBzeWNob3BhdGg= 45894 +aWdvbg== 45895 +IGhvcHM= 45896 +IGPhuqdu 45897 +IFhpYW4= 45898 +IHRyb2lzacOobWU= 45899 +IHByb2R1Y3Rv 45900 +IGRlxJ9lcg== 45901 +IENvbnRpbnVpbmc= 45902 +0LjQstCw0Ls= 45903 +Y8Sxaw== 45904 +IG1vaXN0dXJpemVy 45905 +V2hpdGU= 45906 +IHNpaXM= 45907 +IEV2ZXJlc3Q= 45908 +aWVuY2Vk 45909 +IGPhuqNt 45910 +IEphcG9u 45911 +tOyghA== 45912 +IHRlbsOtYW4= 45913 +IGVuY2FudGE= 45914 +TW0= 45915 +IGRyb3Bkb3du 45916 +IEl5YQ== 45917 +s7TrqbQ= 45918 +IHdvcmRpbmc= 45919 +IFNxdWVlemU= 45920 +IE1hcGxl 45921 +IGNsYXJpZmllZA== 45922 +IE11bmljaXA= 45923 +IFJvdWdl 45924 +IE5pY2tp 45925 +IEdvbw== 45926 +dm9sdA== 45927 +dGVr 45928 +ZmVjdHVyZQ== 45929 +ZnJlZA== 45930 +YXJyaXZl 45931 +dGV6 45932 +RXA= 45933 +IG9icmFz 45934 +IFZJRA== 45935 +IFJpdg== 45936 +IE1vZGk= 45937 +aWJl 45938 +IGFjb250ZWNlbmRv 45939 +IGltaXRhdGlvbg== 45940 +IGNhbW91ZmxhZ2U= 45941 +IHNwYW5uaW5n 45942 +IFNFQ1JFVA== 45943 +IE9yZW8= 45944 +7IaM66as 45945 +IGh1bmNo 45946 +IGNhxYJl 45947 +IHNwb250YW5lb3VzbHk= 45948 +IFBlcmQ= 45949 +IGV0YXA= 45950 +IEhvbGU= 45951 +IERpc2FiaWxpdHk= 45952 +IGFmdGVybGlmZQ== 45953 +IHRlc3RpZmllZA== 45954 +IHByZXN1cA== 45955 +IHBldHJvbGV1bQ== 45956 +IGNvbnRyYXJpbw== 45957 +IEFzc2Vzc21lbnQ= 45958 +xJ9sdQ== 45959 +IHBlc3Rz 45960 +IGRpbGln 45961 +INCy0YHRgtGA0LXRgg== 45962 +IGNvbnPDqXF1 45963 +IGNhbm5vbnM= 45964 +IGNhbm9l 45965 +IE1pbGU= 45966 +IGNpdG95 45967 +IGJlZ2dlZA== 45968 +IE1pbm5pZQ== 45969 +xYJ5Y2g= 45970 +IHByaW5jaXBl 45971 +z4DPjM69 45972 +bW5pZWo= 45973 +IHdlcnQ= 45974 +IOuLpOuTpA== 45975 +YW5zZQ== 45976 +IHVuY2xlcw== 45977 +IHByb3ZvY2F0aXZl 45978 +IGludGVyc2VjdGlvbnM= 45979 +IGRlbW9jcmF0cw== 45980 +IEp1bGl1cw== 45981 +0LjQvdC60Lg= 45982 +eWd1c2Fs 45983 +INec15U= 45984 +IGdqb3JkZQ== 45985 +IGdhc2tldA== 45986 +IEJvY2s= 45987 +IMSwbg== 45988 +YnJlYXQ= 45989 +IEVxdWl0eQ== 45990 +YXJkxLE= 45991 +INC60LDQvdCw0LvQtQ== 45992 +INC00L3QtdC5 45993 +IHThu5tp 45994 +IGZpeHR1cmU= 45995 +IGFidXNlcw== 45996 +IHZheWE= 45997 +IG91dmVydA== 45998 +IG11bHRpY3VsdHVyYWw= 45999 +IGNvbnRleHRv 46000 +IFNlc2FtZQ== 46001 +IGTDqXBs 46002 +IGNvbnNvbW0= 46003 +IFBhcnRl 46004 +IHBlbQ== 46005 +IENvbmFu 46006 +INCx0ZbQu9GM 46007 +IHBlcnN1YWRlZA== 46008 +IGRyYWlucw== 46009 +TW9v 46010 +Rk9SRQ== 46011 +INCx0LDRgg== 46012 +IGZvZA== 46013 +IFByb2R1Y3Rz 46014 +7KeE7Kec 46015 +ICJb 46016 +IFdpY2s= 46017 +IE5hcnV0bw== 46018 +0L3QsNC70Lg= 46019 +cnl3 46020 +IGxvZGdl 46021 +IGluaA== 46022 +IHZvbnRhZGU= 46023 +IGRpag== 46024 +IEplc8O6cw== 46025 +TG9va2luZw== 46026 +IGZvcmVhcm0= 46027 +IEludGVncmF0aW9u 46028 +IEhBUlJJUw== 46029 +IHRvb2xiYXI= 46030 +bGVhZGVy 46031 +IHNlbGRvbQ== 46032 +INCx0YDQvtGB 46033 +IEtvb2s= 46034 +0L7QvdC0 46035 +IG1vbm9wb2w= 46036 +IG1pbGxldA== 46037 +IGxpcmE= 46038 +IEFzaWFucw== 46039 +IDE4OTA= 46040 +Y2nEn2lt 46041 +IGVkZW4= 46042 +IElLRUE= 46043 +IE5laWdoYm9y 46044 +IEthenV5YQ== 46045 +w7xk 46046 +IHBzeWNoZWRlbA== 46047 +IGVudmlzaW9uZWQ= 46048 +IO+3uw== 46049 +IHd1bmRlcg== 46050 +IEJ1bGdhcmlh 46051 +QnJpZA== 46052 +IG1hcnJvdw== 46053 +IGRlcGljdGlvbg== 46054 +IFRpbg== 46055 +IFBoYXJpc2U= 46056 +IGVpbnppZ2U= 46057 +IGJsaW5kbHk= 46058 +IGRlZmVucw== 46059 +RGlyZQ== 46060 +IHZpYnJhdGluZw== 46061 +IHRyb2xscw== 46062 +IGRpc3Jlc3BlY3RmdWw= 46063 +IHdvZA== 46064 +IHN0aW11bGk= 46065 +IGNyZWVwaW5n 46066 +IGNsYWlyZW1lbnQ= 46067 +IHNjYXJpZXN0 46068 +IGTDqWNvdXZyaXI= 46069 +IDEwNA== 46070 +INCy0LXRgNGF 46071 +IMWCYXQ= 46072 +IHLDs8W8bmU= 46073 +IGJhcmxleQ== 46074 +IFJlcGw= 46075 +IFR3ZQ== 46076 +a2tl 46077 +IFJlZG1p 46078 +IE1ldHJvaWQ= 46079 +IM6uz4TOsc69 46080 +Q2hlY2s= 46081 +IFNFTg== 46082 +IGlkbw== 46083 +0YLQvtGA0LjQuA== 46084 +w7Nw 46085 +VU5LTk9XTg== 46086 +IMOkbmRlcm4= 46087 +IEp1aWNl 46088 +IEdlc2ljaHQ= 46089 +INC90LDRgdGC0L7Qu9GM0LrQvg== 46090 +7YOV 46091 +wq0= 46092 +ZXhoYWxlcw== 46093 +IOy0iQ== 46094 +IGpzZW0= 46095 +z4DPic+C 46096 +IGl0dA== 46097 +66qF7J20 46098 +IHJlbWl4 46099 +IGJsb3Nzb21z 46100 +IFJlbmVl 46101 +aXNhdGlvbnM= 46102 +7Iqk7YSw 46103 +IOuztOydtOuKlA== 46104 +dWVzdGFz 46105 +b3BlZGlh 46106 +IEFpbQ== 46107 +7J207KaI 46108 +c2NlbmU= 46109 +IGxlYWthZ2U= 46110 +dWNrdA== 46111 +U2Fk 46112 +QXNr 46113 +IHN1c3BlbnNl 46114 +IGltcG9zdA== 46115 +IFN0cmF0ZWdpYw== 46116 +IEl0w61z 46117 +4oCM 46118 +IGtleWJvYXJkcw== 46119 +IGFtdXNpbmc= 46120 +b2dy 46121 +aWRlcm1hbg== 46122 +npY= 46123 +INCy0LjQttGD 46124 +IGRpcHM= 46125 +IGFwb2xvZ2l6ZWQ= 46126 +IFNUQVI= 46127 +IGVzY3VlbGE= 46128 +IENoaW5n 46129 +0L3QtdC90LjRjw== 46130 +IOu2gOu2hOydtA== 46131 +IEZsZWV0 46132 +IHNhbWI= 46133 +IGVudHNwcmVjaGVuZA== 46134 +IGVsZWN0cm9kZXM= 46135 +IEZyZWloZWl0 46136 +IFNocmlt 46137 +acOfZQ== 46138 +IHNlbGVjdGlvbnM= 46139 +IGZvcmRp 46140 +IGRvc3M= 46141 +0Y/Rhw== 46142 +IGRpc2NyaW1pbmF0ZQ== 46143 +IEF1w59lcmRlbQ== 46144 +IGRlc2Vudm9sdg== 46145 +IEludGVybmFs 46146 +IEJlbmVkaWN0 46147 +IFNoaXY= 46148 +TWlzc3k= 46149 +INC+0LHQvdCw0YDRg9C2 46150 +INC90LDRgdGC0YDQvg== 46151 +IGNvbnRyb2xhcg== 46152 +IExpYQ== 46153 +IG9waW9pZHM= 46154 +YW50dQ== 46155 +IGN1cGJvYXJk 46156 +0LPQtQ== 46157 +YWNodHM= 46158 +IGN1cmF0ZWQ= 46159 +IHhlbQ== 46160 +IHdlYXJ5 46161 +IGJyZXRocmVu 46162 +IGJ1ZGdldGluZw== 46163 +IHBvdXJ0YW50 46164 +YWlzaWE= 46165 +INC+0YLQstC10Yc= 46166 +IEdJUw== 46167 +zrzOsc65 46168 +INep15TXldeQ 46169 +IHNhdWQ= 46170 +IGzhu5s= 46171 +0JXQog== 46172 +dWJpbmU= 46173 +INC90YPQttC10L0= 46174 +IGtpZG5hcHBpbmc= 46175 +IGJyYXQ= 46176 +IFRlcnJl 46177 +IE1vbmV0 46178 +IOuniOyKpO2B 46179 +IGZsYXNoeQ== 46180 +IElTQk4= 46181 +IGZyZWVsYW5jZQ== 46182 +aWFnZQ== 46183 +IGp1bmdl 46184 +7Lap 46185 +Y2VyYWw= 46186 +INGC0L7Rh9C60Lg= 46187 +IGZvcm11bGF0ZQ== 46188 +IEZFUg== 46189 +IERhcnRtb3V0aA== 46190 +7Jy866m07ISc 46191 +b3dpxIU= 46192 +IOuUlOyekA== 46193 +IHJlZ2ltZW50 46194 +IG1ldGFib2xpc21v 46195 +IFBhcnI= 46196 +IOy2qeu2hA== 46197 +IHNhbml0eQ== 46198 +IExhbA== 46199 +IEfDtg== 46200 +IEdsYQ== 46201 +IHByb3Rv 46202 +IG1pY3Jvc2NvcGlj 46203 +IGthbmc= 46204 +IFNjYWxpYQ== 46205 +IHB1Zw== 46206 +IFNjb3Jl 46207 +IFNhdmFubmFo 46208 +IGdhcmRl 46209 +IE5PUg== 46210 +IHNjaGVpbnQ= 46211 +IHDDs8WC 46212 +IGNvcnJp 46213 +IGJydXRl 46214 +IMWCYWQ= 46215 +IHN1Y2NlZWRpbmc= 46216 +IGJpY3ljbGVz 46217 +Tm9u 46218 +IHNlZWtlcnM= 46219 +IHVuY29uZGl0aW9uYWw= 46220 +IHJoeW1lcw== 46221 +IEdhcmFnZQ== 46222 +IGludm9pY2U= 46223 +IGNhbnZp 46224 +bmVjaw== 46225 +IGN1c3RvbWl6YWJsZQ== 46226 +aXJpdHVhbA== 46227 +UXVlZW4= 46228 +7ZWY7Iuc64qU 46229 +IHBvd2VybGVzcw== 46230 +IGNzYWs= 46231 +aXNvZnQ= 46232 +IOygle2ZlQ== 46233 +IG5ow6Ju 46234 +IE1BTkQ= 46235 +IEhhZg== 46236 +IHJldm9sdmVz 46237 +b3Zhbg== 46238 +YXJvbw== 46239 +IEdyaW5k 46240 +IGluZGlzcGVuc2FibGU= 46241 +IGNvbnN1bHRlZA== 46242 +IENsaW5pY2Fs 46243 +QWNj 46244 +IG9saG9z 46245 +IG1vbnRlcg== 46246 +IEhhbmE= 46247 +ZXRhaA== 46248 +IHZhYW4= 46249 +IHRpZ2Vycw== 46250 +IGNhdWN1cw== 46251 +8J+Ygg== 46252 +s7TsnpA= 46253 +cG93ZXJz 46254 +aXVtcw== 46255 +IO2GoOs= 46256 +IHRyYWRpY2lvbmFs 46257 +IHJlc29uYXRlZA== 46258 +IOyLoOq4sA== 46259 +dGhlbQ== 46260 +Um9iZXJ0 46261 +IGVsZW1lbnRv 46262 +IGFudGlk 46263 +INC+0LHRgQ== 46264 +IG5hdGl2ZXM= 46265 +IGxvY2E= 46266 +b3dtZW50 46267 +IFRpZ2h0 46268 +IG1lbGFu 46269 +IE51ZQ== 46270 +YW1pcw== 46271 +IHNvcmdlbg== 46272 +YXPEsW5h 46273 +SG9tZQ== 46274 +IFBVQkc= 46275 +IGF3ZnVsbHk= 46276 +IFNob3Jl 46277 +IFBlcmNow6k= 46278 +IExhdQ== 46279 +IENpbmRlcmVsbGE= 46280 +IENoZXN0 46281 +IHNlbWFudGlj 46282 +IGRlc2VydGVk 46283 +IE1vbW8= 46284 +IEhlcm5hbmRleg== 46285 +Z2VuZXM= 46286 +IEFkdWx0 46287 +0LjRh9C10YHQutC+0LPQvg== 46288 +b3NoaW1h 46289 +IGNhcmFjdGVyw61zdGljYXM= 46290 +IEtM 46291 +tOyepQ== 46292 +b2Nhcg== 46293 +IGZlaGx0 46294 +IGRydWs= 46295 +IFBvcHB5 46296 +RU5HTElTSA== 46297 +IFZlcmdsZWljaA== 46298 +QnJpZW4= 46299 +IHJlY29tcA== 46300 +INGB0LQ= 46301 +IG1lcmdlcg== 46302 +IG1hcmtldGVycw== 46303 +IGhvbmV5bW9vbg== 46304 +IHBlbnNv 46305 +IGJlbGxp 46306 +0LXRgtGD 46307 +IGJhbmtlcg== 46308 +Q2FtZXJh 46309 +IFN0YWxs 46310 +IFN0YW1w 46311 +IEJpdGU= 46312 +0LXQttC00LU= 46313 +IHPDvHI= 46314 +IGfDvMOn 46315 +IFBhc3NvdmVy 46316 +IEJ1Z8O8bg== 46317 +INGB0L7QttCw0LvQtdC90LjRjg== 46318 +INC90LjQtw== 46319 +IG1hbnVyZQ== 46320 +IGdsYWNpZXI= 46321 +UkFZ 46322 +dGVycm9y 46323 +IHNhbGFkcw== 46324 +IGh1cnJpY2FuZXM= 46325 +IERlc2lnbmVy 46326 +YXRvcmlv 46327 +IGZhY3R1YWw= 46328 +IFRhbW15 46329 +INC30LLRg9GH 46330 +IGludHJvZHVjdGlvbnM= 46331 +IGhvdXNla2VlcGluZw== 46332 +IGhhbmdlcg== 46333 +64uY6w== 46334 +YWt0ZQ== 46335 +IENvbGE= 46336 +J10= 46337 +IEdlbmRlcg== 46338 +0L7RgNC+0L0= 46339 +aXBzZQ== 46340 +aWNpYXM= 46341 +IHN1Y2Nlc3NpdmU= 46342 +IHBvbGl0aWM= 46343 +IGjDtmhlcg== 46344 +IFFpYW8= 46345 +IEdpbW1l 46346 +INC70L7Qtg== 46347 +IHNlYg== 46348 +IFdlaXRlcg== 46349 +IFNha3VyYQ== 46350 +IEJvdWxkZXI= 46351 +IEFtw6lyaWNh 46352 +cGXFgm5pZQ== 46353 +IHRlY25vbG9nw61h 46354 +aXNob3Bz 46355 +ZnVy 46356 +IG1vb25saWdodA== 46357 +IGRpc3BlcnNlZA== 46358 +IHJleg== 46359 +0LXQvdC90L7QtQ== 46360 +0LDQu9GM0L3Rg9GO 46361 +IFR3ZWx2ZQ== 46362 +IEhPUg== 46363 +7Iuk7Z6I 46364 +aWxhZ2U= 46365 +IHNoYWRlZA== 46366 +IHJlc3VtZXM= 46367 +IFBlYW51dA== 46368 +IE1JTEw= 46369 +YXBvbnM= 46370 +IFVGQw== 46371 +IFNvbGU= 46372 +IGpveXN0aWNr 46373 +IE9saXZpZXI= 46374 +d2FybWluZw== 46375 +IHN5bGxhYnVz 46376 +INC+0LHRidC1 46377 +IGhp4buHbg== 46378 +IGZlc3Rh 46379 +IGNyYWRsZQ== 46380 +IFphYw== 46381 +IHJlbWVtYnJhbmNl 46382 +IOqwmeyVhOyEnA== 46383 +IHBpxJlr 46384 +IGNvZXhpc3Q= 46385 +IFZJSQ== 46386 +IMOhcmVhcw== 46387 +IHV3YcW8 46388 +IG9ic2VydmVycw== 46389 +IG3DpG5uaXNrb3I= 46390 +Y29vbg== 46391 +IERBTQ== 46392 +IG5hc3p5bQ== 46393 +IGFsbGlnYXRvcg== 46394 +IEZyZWV6ZQ== 46395 +IEVzdGF0ZQ== 46396 +INGC0YDQsNC00Lg= 46397 +IHVuZGVyY292ZXI= 46398 +IG5pZXM= 46399 +IEZlaGxlcg== 46400 +cGxpbg== 46401 +IEthYnVs 46402 +aWxhdGU= 46403 +IOqzoOyWkQ== 46404 +IG1vcA== 46405 +7IS8 46406 +IGFuZGVyZXI= 46407 +IEtFTEw= 46408 +0L7QutC4 46409 +INC20LXRgdGC 46410 +IGdyYXppbmc= 46411 +IGRhw60= 46412 +IGNhcGl0YWxpemU= 46413 +IGFwZXg= 46414 +IG51cnR1cmluZw== 46415 +IGNvcnRhcg== 46416 +IGNvbnRyYWM= 46417 +xLFtxLF6xLE= 46418 +IHRhbmRlbQ== 46419 +Z2VtZW50 46420 +INGB0LjRgdGC0LXQvNCw 46421 +IG1hbnF1ZQ== 46422 +aWFqxIU= 46423 +V09S 46424 +INin2Kg= 46425 +IGNhcnRz 46426 +QU5P 46427 +IOuwm+qzoA== 46428 +IENlbmE= 46429 +IEJpb2xvZ3k= 46430 +aWRhcg== 46431 +IGHFvA== 46432 +ZXJuZQ== 46433 +YW51 46434 +IHRoYW5rZWQ= 46435 +IHN1Ym1hcmluZXM= 46436 +IG1hbmlj 46437 +INC80L7Qtw== 46438 +aW5zdGFudA== 46439 +ZXNzZW50aWFs 46440 +IHNhbXVyYWk= 46441 +IHBhc3Rp 46442 +IGFsYW4= 46443 +IGJyb2No 46444 +IGJha2Vy 46445 +IEd1aWxs 46446 +qLw= 46447 +IHdpdGhkcmF3bg== 46448 +64ud 46449 +UGVyZmVjdA== 46450 +cXVlbmN5 46451 +IHN0cmVhbWxpbmVk 46452 +IDEzMDA= 46453 +tOuPhA== 46454 +IOuWoOs= 46455 +IGh2YWQ= 46456 +IHZlcmJhbGx5 46457 +IEtvbnM= 46458 +IOyhsOyLrA== 46459 +IGRpZXo= 46460 +IGNodWNrbGluZw== 46461 +IE1paA== 46462 +IHJhbGxpZXM= 46463 +IG1hbnRlcg== 46464 +IGVhcm5lc3Q= 46465 +c3VwZXI= 46466 +IGdlY2U= 46467 +IFJlbmQ= 46468 +IEdlcmFkZQ== 46469 +amVuaWdlbg== 46470 +IFZhbGw= 46471 +IOyeiOuCmA== 46472 +INGB0LrQsNC30LDQu9Cw 46473 +IHRyYWJhbGg= 46474 +INC90LDRiNC10Lw= 46475 +INC80LXRhQ== 46476 +aWtpdA== 46477 +IG5vdW5z 46478 +IG5ldXJvbG9naWNhbA== 46479 +IG1vdGl2YXRpb25hbA== 46480 +IE1jTWFob24= 46481 +IEZpbmlzaGVk 46482 +IOuztOydtA== 46483 +IEZpZWxkcw== 46484 +IGFkb2xlc2NlbnRz 46485 +IFRpc2No 46486 +IE5lYmVu 46487 +IEZsb3dlcnM= 46488 +IEVuZXJn 46489 +IGRpcmV0 46490 +IFRoaQ== 46491 +IFBpY2Fz 46492 +IGF2ZXRl 46493 +IEZvcnM= 46494 +IENoYXBlbA== 46495 +TsOjbw== 46496 +RXQ= 46497 +INGB0L7QtNC10YDQtg== 46498 +cmVubw== 46499 +IHN2ZW4= 46500 +IGRvc3TEmXA= 46501 +bmVl 46502 +IFNuYXBkcmFnb24= 46503 +IElEcw== 46504 +7JWY64qU642w 46505 +16jXmg== 46506 +IHN1bmZsb3dlcg== 46507 +IHBlcnBldHVhbA== 46508 +IGtuaWdodHM= 46509 +IGdpcmQ= 46510 +IFRvbGQ= 46511 +IHZvbGNhbm9lcw== 46512 +IGFkdmVyc2FyeQ== 46513 +IEVjb25vbXk= 46514 +IGV4dHJhcG9s 46515 +IGJsdWV0b290aA== 46516 +IHpvb21pbmc= 46517 +IHNreXM= 46518 +IGdlbmlhbA== 46519 +w61jdWxvcw== 46520 +YW1icmU= 46521 +INC80LXRgA== 46522 +IHRlZW55 46523 +IHN0cmVzc2luZw== 46524 +7JWM 46525 +T05Z 46526 +IHRyYW5zbHVjZW50 46527 +IHJvdW5kaW5n 46528 +IGdydWVz 46529 +15nXoNeU 46530 +YXByw6hz 46531 +IHBydWViYQ== 46532 +IHBvbHlnb24= 46533 +IGJsdWViZXJyeQ== 46534 +IFByb2dyYW1t 46535 +IHRyZW5jaGVz 46536 +IHNlYmFnYWk= 46537 +IHBhbGF0ZQ== 46538 +IGxhdWRl 46539 +IGJlaGF2ZWQ= 46540 +IGxvbmdpdHVkaW5hbA== 46541 +IE1vZHVsZQ== 46542 +IGFkbWly 46543 +zrvOuQ== 46544 +R3JlZw== 46545 +IHd5c3Q= 46546 +IHByb3BhZ2F0ZQ== 46547 +IG1vbGRz 46548 +IFR1Yg== 46549 +IExvdWQ= 46550 +dXN0bw== 46551 +IHVuc3RvcHBhYmxl 46552 +IHJlaW5mb3JjaW5n 46553 +INC/0YDQvtCx0LvQtdC80LA= 46554 +IHBvdGVuY2lhbA== 46555 +IGhlbXA= 46556 +7J6U 46557 +4KSv 46558 +IG9wdGlj 46559 +IGVyZm9sZ3JlaWNo 46560 +0YHRiw== 46561 +0L7Qu9GM0YjQtQ== 46562 +dXJzdA== 46563 +IFBvaXM= 46564 +IHJlc3BvbmRlbnRz 46565 +IG5laG1l 46566 +IEV4dGVybmFs 46567 +b2xhdGU= 46568 +SHl1bg== 46569 +IHF1YXJ0eg== 46570 +IG1hdGhlbWF0aWNpYW4= 46571 +IGLDoXNpY2FtZW50ZQ== 46572 +IGFpbA== 46573 +7KCc66W8 46574 +YXR0dXR0bw== 46575 +IG5vb2l0 46576 +IGFmZmxpY3Q= 46577 +IE9sZ2E= 46578 +INC90LDRgg== 46579 +IGRpdGVz 46580 +IHJlYWxpZGFkZQ== 46581 +IGvDpG4= 46582 +IHVuaXF1ZW5lc3M= 46583 +IHBhZHJlcw== 46584 +IHN1YnNpZGk= 46585 +IHBpZ2VvbnM= 46586 +zrLOsQ== 46587 +c3RhZA== 46588 +IGRlcmVu 46589 +INCh0LvQtdC0 46590 +ZG9v 46591 +INC+0L/QuNGB0LDQvdC40Lg= 46592 +IGFtYmVy 46593 +IGdvb3NlYnVtcHM= 46594 +IGZyw6Vnb3I= 46595 +IFZpdGFs 46596 +IElzcmFlbGl0ZXM= 46597 +d2Fzc2Vy 46598 +SXNu 46599 +IGNvbW1pdHM= 46600 +IFNURVZFTg== 46601 +IEJldsO2bGtlcg== 46602 +dWl0aXZl 46603 +IGxlZ2Vu 46604 +IGJydWs= 46605 +0LjRgNC+0LLQsNC9 46606 +eW5lbg== 46607 +aGVsbQ== 46608 +IGdlbmVyYXRpb25hbA== 46609 +IEzDpG5kZXJu 46610 +zr/Ouc+Az4zOvQ== 46611 +dXp1 46612 +IGNhbGxlcg== 46613 +0L7QvdGM 46614 +w7xtw7w= 46615 +IGJlc2Fy 46616 +IHBsYXRz 46617 +IG1pZ3JhdGVk 46618 +IGphcA== 46619 +IFdBUg== 46620 +IGRpc3NlY3Q= 46621 +IFp1c2No 46622 +IFplaXRlbg== 46623 +IExpb25z 46624 +IERG 46625 +4pQ= 46626 +0LrQuNCy 46627 +IHBlZGVzdHJpYW5z 46628 +IE1hcmlseW4= 46629 +ZG9jaw== 46630 +IHlodA== 46631 +IHJlaW5jYXJu 46632 +IFNvbm8= 46633 +IEdyb3d0aA== 46634 +0YPRgdC+0LI= 46635 +IGR1bmdlb25z 46636 +IGJhZ3Vz 46637 +a2ljaA== 46638 +INGD0LrRgNCw0Zc= 46639 +IEtlbGxlcg== 46640 +Y2hlbWlzdHJ5 46641 +SmFwYW5lc2U= 46642 +IHdpbGxzdA== 46643 +IGRlY29tcG9zaXRpb24= 46644 +INGB0YLQtdC9 46645 +IHJldml2ZWQ= 46646 +7ZWZ6rWQ 46647 +IMWT 46648 +7Iu4 46649 +aXBweQ== 46650 +IGhvdXJseQ== 46651 +asOkbg== 46652 +IFdvcmtzaG9w 46653 +nbzshJw= 46654 +IGN1YXJ0bw== 46655 +IHBhdHJpbQ== 46656 +IEJ1cmNo 46657 +IOyeiOq4sA== 46658 +IGhlcGF0 46659 +IGjDoG5n 46660 +IOuMgO2VtA== 46661 +INCy0LDRiNC4 46662 +IHJld29yaw== 46663 +IHBhcnNl 46664 +IMOnxLFrdMSx 46665 +IFNheA== 46666 +IE1vbmdv 46667 +IEFhYWg= 46668 +cmFtYmxl 46669 +REo= 46670 +IHN0YWJpbGl6ZWQ= 46671 +IFNwZWVjaA== 46672 +Qm9va3M= 46673 +IGh1cmRsZXM= 46674 +IFdP 46675 +IExhbWJvcmc= 46676 +IDE5MzM= 46677 +IHZvcmJlcmU= 46678 +IGNsaW5pY2FsbHk= 46679 +IGJyZWF0aHRha2luZw== 46680 +IEdhdGV3YXk= 46681 +0L/QtdGA0LLRi9GF 46682 +dXRlcnM= 46683 +IOu5tQ== 46684 +IHlldGVy 46685 +IHB1bGxleQ== 46686 +IG11ZmZpbg== 46687 +IFByZWZlcg== 46688 +IFBlbmNl 46689 +IGluZm9ybWHDp8Ojbw== 46690 +7Iqk7Yq46w== 46691 +IFR1cnRsZQ== 46692 +IFJlZ2luYQ== 46693 +IExvYWQ= 46694 +ZG9lcw== 46695 +cGFuemU= 46696 +uJQ= 46697 +IG1pbmE= 46698 +IExhdGlub3M= 46699 +YW1tZXJz 46700 +IFRvcnQ= 46701 +IEJleW9uY2U= 46702 +0LjQvNC+0YHRgtC4 46703 +INCy0L7Qv9GA0L7RgdGL 46704 +IGJ1bHVu 46705 +aW5law== 46706 +YmVyZWljaA== 46707 +IHBhc3R1cmU= 46708 +IE9B 46709 +IE1lbHQ= 46710 +IEV0dA== 46711 +IERZ 46712 +IG9id29obA== 46713 +IGxlYWd1ZXM= 46714 +0YLQtdGB0Yw= 46715 +INC60YPRgQ== 46716 +IHZvcnM= 46717 +IHRvcHA= 46718 +b2dyYXBoaWNhbA== 46719 +YXNzdA== 46720 +IGxpbmRv 46721 +IOuwne2YlA== 46722 +IHLDqWZs 46723 +IGNsaW1icw== 46724 +IHZhcnNh 46725 +IG1ldGh5bA== 46726 +IEthcmVyZQ== 46727 +xrDhu58= 46728 +UmFk 46729 +IHByZXBhcmVkbmVzcw== 46730 +0L7QvdGH 46731 +IE9E 46732 +IENHSQ== 46733 +IOCkrg== 46734 +IHNwZWVjaGxlc3M= 46735 +IGxhc2Np 46736 +IGJvbGFn 46737 +INGF0L7Rh9C10YLRgdGP 46738 +IGdyaWV2aW5n 46739 +IEpvaGFubmVz 46740 +IENhcnJvbGw= 46741 +YWRha2k= 46742 +iKzr 46743 +IHPFgnU= 46744 +IGlubmVyaGFsYg== 46745 +IGd5bW5hc3RpY3M= 46746 +0L/RgNC4 46747 +aWZpcXVlcw== 46748 +IGthcmF0ZQ== 46749 +IGRvbXU= 46750 +T1RIRVI= 46751 +IGRlbWFuZMOp 46752 +IGJvb2tsZXQ= 46753 +IEt5b3Rv 46754 +IHdvaA== 46755 +IE1hcsOtYQ== 46756 +dmlvbGVudA== 46757 +SkU= 46758 +IGzDs2c= 46759 +IGJydXRhbGx5 46760 +Y290 46761 +INmF24w= 46762 +IFdhcnN6 46763 +d29s 46764 +IG1pa8Ok 46765 +IFByb25vdW5jZQ== 46766 +IEJyZW5kYW4= 46767 +IHJvdXA= 46768 +IGl0YWxpYW5v 46769 +INC60L7QvNC/0YzRjtGC 46770 +IHVyZ2luZw== 46771 +ZWRlcw== 46772 +IGNhcmJvbm8= 46773 +IFJpY2hhcmRzb24= 46774 +INCd0LDRhw== 46775 +IFRyYWluZXI= 46776 +IENyaW1lYQ== 46777 +IGRpYXBlcnM= 46778 +IGNvdmV0 46779 +IE1haGFy 46780 +IEh1dGNo 46781 +IEF1c3c= 46782 +YmVydHk= 46783 +IGluZGlmZmVyZW50 46784 +0LrRgNC10YI= 46785 +dWxkYWRl 46786 +IGhhcm1z 46787 +otmG 46788 +bGVzaWE= 46789 +IGdpbw== 46790 +IE1pc3RyZXNz 46791 +IEtub3g= 46792 +IEZSRUU= 46793 +IOujqOs= 46794 +INC90LDRiNCw 46795 +IGludmluY2libGU= 46796 +IG1haWRlbg== 46797 +IEplZXo= 46798 +IGJyZXZl 46799 +cG9sZQ== 46800 +IGNyaXRpY2lzbXM= 46801 +IFJ1c2lh 46802 +4KSu 46803 +cGhpbg== 46804 +IENvbXBhcmU= 46805 +IEJPTg== 46806 +IHNuZWFraW5n 46807 +IFJhaWxz 46808 +IEdlcmFs 46809 +IDE5NTM= 46810 +SG9sYQ== 46811 +INC+0L/Ri9GC 46812 +IHJhaW5mb3Jlc3Q= 46813 +IGJlbHVt 46814 +IE9iaQ== 46815 +IElTUw== 46816 +INCh0LI= 46817 +IGJsb25k 46818 +IHd6Z2w= 46819 +IHBvd2llZHppYcWC 46820 +IGNob2tpbmc= 46821 +IFNvbmdz 46822 +IEJpcmF6 46823 +IHllbGxz 46824 +IHN0eWxpc3Q= 46825 +z4zPhM61 46826 +IHNjaHJlaWJlbg== 46827 +IEphdw== 46828 +IEVsZXZlbg== 46829 +IFJpZg== 46830 +Ly4= 46831 +IOyYpOuenOunjA== 46832 +IHRyZWF0aWVz 46833 +dWZmZWQ= 46834 +IOKIkg== 46835 +IHJvb2Zz 46836 +4LmA4Liq 46837 +IOu7 46838 +IHNwYXJrbGU= 46839 +IEtpZXY= 46840 +IEFyZ3U= 46841 +ZXJlY2h0 46842 +INCd0LDQtNC+ 46843 +IEZJTA== 46844 +IG1vbHRh 46845 +IERldmk= 46846 +IGNhbXBl 46847 +IGJlbmV2b2w= 46848 +IFRvdWdo 46849 +IG1vaW0= 46850 +IGV2YWN1YXRl 46851 +IGVycmFkbw== 46852 +0YDRg9Cz0L4= 46853 +IO2OmA== 46854 +IM6TzrnOsQ== 46855 +IHdlYWtlbg== 46856 +IGlsbHVtaW5hdGVk 46857 +IHNpZ2xv 46858 +IFZhY2M= 46859 +0LjQtdC5 46860 +YWxpcw== 46861 +INGD0YHRgtGA0L7QuQ== 46862 +IGRvbmE= 46863 +xYJvcw== 46864 +w7xtYW4= 46865 +IHByb2R1Y2Npw7Nu 46866 +IGNsb3Q= 46867 +IE1hbmdv 46868 +IHVuZWFzeQ== 46869 +IHNodXRz 46870 +IEV4YW1wbGVz 46871 +dmVsbA== 46872 +ZWJl 46873 +IHByb21wdGx5 46874 +IFRlbGVz 46875 +INC/0YDQvtGI0Ls= 46876 +IHB1ZXJ0YQ== 46877 +IMO8YmVyemV1Zw== 46878 +IGNvY2g= 46879 +c29jaWFs 46880 +IEJlbnNvbg== 46881 +IE1ldGg= 46882 +IEV4cGVk 46883 +IHN1cHBsZW1lbnRhbA== 46884 +IGNvbmNlaXZl 46885 +INeY15XXkQ== 46886 +IGNhcHRpdml0eQ== 46887 +j5nslYg= 46888 +INGF0YPQtA== 46889 +Zm9ybWluZw== 46890 +IHVwbG9hZHM= 46891 +IHR1cmJ1bGVuY2U= 46892 +am9pbnQ= 46893 +IHNhdGlzZmFjdG9yeQ== 46894 +IEFuaW1l 46895 +IHdhc2hlcw== 46896 +IGxpYmVyYWxz 46897 +IFN1bnNoaW5l 46898 +IFJFQUw= 46899 +dWJsaWs= 46900 +YmluYXJ5 46901 +VG9ueQ== 46902 +IHBvbGFyaXplZA== 46903 +IGVucmljaGVk 46904 +dGFraW5n 46905 +IOuBneuCmA== 46906 +IHBsZWFzdXJlcw== 46907 +IGV4dGVybWlu 46908 +aW5lc2U= 46909 +YXRs 46910 +dsOkcg== 46911 +0LDRgNGL 46912 +IG15xZs= 46913 +bmFycmF0b3I= 46914 +INC+0LTQvdC+0Lw= 46915 +IG5handpxJk= 46916 +IG1vYmlsaXpl 46917 +IG1pbGxvcg== 46918 +IGF0YQ== 46919 +IHBvbMOtdGljbw== 46920 +IHBsZWFk 46921 +IHBhaW50ZXJz 46922 +IFNvdw== 46923 +0L7RhA== 46924 +IOyYm+uCoA== 46925 +INGH0YLQvtCx 46926 +IHNhYm9y 46927 +IFVuZGVydA== 46928 +IEpFUlJZ 46929 +xaHDrQ== 46930 +IOuwluyXkA== 46931 +IHByw6ljw6lk 46932 +IGFubm90YXRpb24= 46933 +IEluYXVkaWJsZQ== 46934 +IHRleHR1cmVk 46935 +IGZpc2hlcm1hbg== 46936 +dm9yZGFu 46937 +aWNoZXJ1bmc= 46938 +IOyggeydtA== 46939 +IGdlemVpZ3Q= 46940 +IG1hbmRhdGVz 46941 +IGJlYWs= 46942 +IFRXTw== 46943 +IEFrYmFy 46944 +aWxpYW4= 46945 +IHRp4bq/cA== 46946 +IHN1cGVyaW9yaXR5 46947 +aW5rdQ== 46948 +IGx5cw== 46949 +IEZDQw== 46950 +IENQQQ== 46951 +dXN0ZXJpbmc= 46952 +bmljb3M= 46953 +YW5qYQ== 46954 +IGNoaWxscw== 46955 +IENhZ2U= 46956 +IHNlYWxpbmc= 46957 +IHNhw6c= 46958 +IGRlZGFucw== 46959 +IEFsZ2Vy 46960 +IHNwZXppZQ== 46961 +IGNvbG9zcw== 46962 +xLF5xLE= 46963 +Y2xvY2t3aXNl 46964 +IGV4YWN0YW1lbnRl 46965 +IGllbWFuZA== 46966 +YW3EsQ== 46967 +IG1hbmRhcg== 46968 +cmFq 46969 +ZmFjZWQ= 46970 +YWd1YQ== 46971 +IOq5lOs= 46972 +IGluc2Jlc29uZGVyZQ== 46973 +IGRyaXp6bGU= 46974 +IGRpbWluaXNo 46975 +IFlvZGE= 46976 +QUk= 46977 +IGJpbG1peW9ydW0= 46978 +IE1NQQ== 46979 +YXRlZ29yeQ== 46980 +INC/0LXRgNC10L8= 46981 +IHBhcnRpY2lwYXI= 46982 +IG5vcm1hbGl6ZWQ= 46983 +IGNvbXBsZXhpdGllcw== 46984 +0LDRgNC+0LI= 46985 +bWlzdA== 46986 +aWNoYQ== 46987 +R3JvdXA= 46988 +IHJlc2lsaWVuY3k= 46989 +IG5vZ2xl 46990 +IENOQw== 46991 +cHLDvA== 46992 +IHBoeXNpY2lzdHM= 46993 +0L3QvtC6 46994 +TEk= 46995 +IHN0dWZmcw== 46996 +IHNpc3RlbWFz 46997 +IGludGVyZmVyaW5n 46998 +IE1hcnZpbg== 46999 +w6lyY2l0bw== 47000 +IOyXhuqzoA== 47001 +IHNvbmlj 47002 +IGVxdWl2 47003 +IGFib3Jk 47004 +IFJhbWVu 47005 +IDA5 47006 +bWVkaW0= 47007 +YXRpcXVlcw== 47008 +INC00LXQu9Cw0Y7Rgg== 47009 +IHVuYW5pbW91c2x5 47010 +IHNraXJ0cw== 47011 +IO2KueuzhA== 47012 +IFByaXg= 47013 +a2FtaQ== 47014 +IGZydWl0aW9u 47015 +IGJpcnRoZGF5cw== 47016 +0LjQutC+0Lw= 47017 +IGluYXVndXJhbA== 47018 +IGNvcnJlbGF0ZQ== 47019 +IFRvcnk= 47020 +IOuCmOyB 47021 +IGRldw== 47022 +IFByZWNpcw== 47023 +aWhp 47024 +IOusuOygnOqwgA== 47025 +IGNpdGluZw== 47026 +IExhbmE= 47027 +IEthZw== 47028 +IHBsYXl0aHJvdWdo 47029 +IFByb3RvY29s 47030 +ZnJpc3Q= 47031 +aG92YWg= 47032 +IG1lcmNpZnVs 47033 +IGJpbGluZ3VhbA== 47034 +IEd1aXRhcg== 47035 +cmg= 47036 +IGdsYW1vcm91cw== 47037 +IFZpa2luZ3M= 47038 +IE9vb29o 47039 +7ZWY64qU642w 47040 +IFVnYW5kYQ== 47041 +IGNvbGxhcHNlcw== 47042 +ZW50cnk= 47043 +IGFudGlveGlkYW50cw== 47044 +64KY6w== 47045 +0YjQsNGP 47046 +IHRyaXZpYQ== 47047 +IGfDpGxsZXI= 47048 +IGZ1bmdp 47049 +IG1pbGtz 47050 +IGRpY2h0 47051 +zrzOtw== 47052 +cG9rZQ== 47053 +INCy0YvQv9GD0YHQug== 47054 +IGZlZWRlcg== 47055 +IEFsY29ob2w= 47056 +aG93ZXI= 47057 +IGRlc2VydmluZw== 47058 +IFJlYmVs 47059 +aW9zaXM= 47060 +IDEwMw== 47061 +IGhhbmRvdXQ= 47062 +IGVubQ== 47063 +IGxhbmRsb3Jkcw== 47064 +IGdlb2xvZ3k= 47065 +cmlscw== 47066 +IGNvYnJh 47067 +IFZvbGQ= 47068 +IFBhbmNo 47069 +IEdSRUc= 47070 +IHByb3Nz 47071 +IGJyYWNlbGV0cw== 47072 +IFZlZ2E= 47073 +IHJvenVt 47074 +0LDQt9C0 47075 +IEx5bmQ= 47076 +IEhvbm9ycw== 47077 +IHN1cnJlbmRlcmVk 47078 +IGxpYnJhcmlhbnM= 47079 +MTI1 47080 +INGB0LjQsw== 47081 +IHVuaWZvcm1seQ== 47082 +IEVhZ2xlcw== 47083 +7JWZ 47084 +0LjRgtCw0L0= 47085 +YW5kaWQ= 47086 +IOygiOuMgA== 47087 +INi2 47088 +IGFycmVzdHM= 47089 +IENTVg== 47090 +IEF6ZXJiYWlqYW4= 47091 +b3J0aWM= 47092 +IERY 47093 +IEFkdmVudHVyZXM= 47094 +IGFidXM= 47095 +IEZhdQ== 47096 +IHNjaGxpbW0= 47097 +IHJhdHRsaW5n 47098 +IGNvbnN1bWVz 47099 +IFRvbGtpZW4= 47100 +IHJlc3VycmVjdGVk 47101 +IFhZ 47102 +7Yq46rCA 47103 +INCy0YvRgdGC0YPQvw== 47104 +IEFuZ2ll 47105 +xbxlbmlh 47106 +TWlj 47107 +IFNoZWlsYQ== 47108 +YWNodGV0 47109 +IG92ZXJzdA== 47110 +IGzDog== 47111 +IGluZWZmZWN0aXZl 47112 +IHdpY2h0aWdlcg== 47113 +IHZpbm8= 47114 +IHB1bQ== 47115 +IGFuZ2xlZA== 47116 +IFBpb25l 47117 +IE3hu7k= 47118 +d2/Fm8SH 47119 +ZHJhdw== 47120 +4Lix4LmI 47121 +bWFya2V0cw== 47122 +IGNhZmVz 47123 +IENlbQ== 47124 +4p2k 47125 +IFN1aXQ= 47126 +TUs= 47127 +IGVtcGhhc2l6ZXM= 47128 +IHRvcnRpbGxh 47129 +IG1lam9yYXI= 47130 +IFN1cnZpdg== 47131 +Y2FzdGluZw== 47132 +IGVkdWNhY2nDs24= 47133 +IEd1bQ== 47134 +dWVseQ== 47135 +IOyXrOq4sOuKlA== 47136 +IHN0cmV0Y2h5 47137 +ZW7Dp2E= 47138 +IHdpdGhob2xk 47139 +IGV4aXRpbmc= 47140 +IGVudGhhbHB5 47141 +IFRyYW5zaXQ= 47142 +xLFsbcSxxZ8= 47143 +YWxpZXM= 47144 +IHNhbHZhcg== 47145 +IGxlYW5lZA== 47146 +IGdyb8OfZXM= 47147 +IGZpdHQ= 47148 +0LDQutC4 47149 +U2FyYWg= 47150 +IGhvc3RlbA== 47151 +IGZpbmdlcm5h 47152 +IG5hZHppZWrEmQ== 47153 +d2l2ZXM= 47154 +UmVj 47155 +IHNwb29s 47156 +0LDRgtC+0LI= 47157 +IEVuZW15 47158 +IGZ1cnk= 47159 +IGRldHRh 47160 +IEZheQ== 47161 +0Y/RjtGC 47162 +IGFwcm94aW1hZGFtZW50ZQ== 47163 +IHNpbG9z 47164 +IG1hZ2lzdA== 47165 +IGNyZWU= 47166 +IEtyYW5r 47167 +IERPV04= 47168 +IHN0YXJ0bGVk 47169 +IHJlYm9ybg== 47170 +IFVtd2VsdA== 47171 +IFN1emFubmU= 47172 +0L3QuNGG0Ys= 47173 +b3V0ZXo= 47174 +IEpBQw== 47175 +eWFyZHM= 47176 +cmFkYXM= 47177 +cmF1 47178 +aXB0cw== 47179 +aGFpbA== 47180 +IHBhcmFncmFwaHM= 47181 +IG1lZ2xpbw== 47182 +IGlzb2xhdGluZw== 47183 +IGFjZWl0ZQ== 47184 +IEhhcnNo 47185 +IGN5c3Q= 47186 +IEJsb2NrY2hhaW4= 47187 +INGF0L7RgNC+0YjQuNC5 47188 +IHZpcnR1b3Vz 47189 +IGludmVzdGlnYWNpw7Nu 47190 +IGRldm9pcg== 47191 +IG1hc3R1cmI= 47192 +IFNhbGU= 47193 +2YrYsdip 47194 +IM6n 47195 +IFN0cmHDn2Vu 47196 +IGRpa2s= 47197 +IGFmb3Jl 47198 +IEp1bmdrb29r 47199 +IGNob2NpYcW8 47200 +IERlYmF0dGU= 47201 +IHdlaXJkbHk= 47202 +IHZpYWpl 47203 +cmVnaXN0 47204 +SGVscA== 47205 +IGtpbmRlcmVu 47206 +IGZvcm11bGF0ZWQ= 47207 +IGVuZmlt 47208 +IFRvd2FyZHM= 47209 +0LrQvtGX 47210 +aXZlcmluZw== 47211 +INC00LXRgtC4 47212 +Y2hhcmdlcg== 47213 +IHB1cmw= 47214 +IGFjYWRlbWljYWxseQ== 47215 +IE51cnNl 47216 +IGRlbGV0aW5n 47217 +YXlv 47218 +IHJlZnVzYWw= 47219 +IGRlcGljdHM= 47220 +IERyYWN1bGE= 47221 +IHRvYXN0ZWQ= 47222 +IFpvbWJpZQ== 47223 +IFN1cGVyaW9y 47224 +IEJvbGQ= 47225 +IHF1aXp6ZXM= 47226 +IGdsZQ== 47227 +NDUw 47228 +IGNvbWXDp28= 47229 +eW5u 47230 +IHZlcnN0 47231 +IE9sYWY= 47232 +IHBvbW9j 47233 +IFNhc2s= 47234 +65g= 47235 +IFRDUA== 47236 +IFByb3BlcnR5 47237 +7ZWY7KOg 47238 +4Lic4Lih 47239 +Ym9vbQ== 47240 +YXJvcw== 47241 +INGA0L7RgdGB0LjQuQ== 47242 +INCx0YvQstCw0LXRgg== 47243 +IOydtOyVvOq4sOulvA== 47244 +IGNvbWJpZW4= 47245 +dmFjYw== 47246 +IGViZW5mYWxscw== 47247 +cGFyYQ== 47248 +INC30Lw= 47249 +IGRlc3BlcmF0aW9u 47250 +b3JkcmU= 47251 +INep15zXmQ== 47252 +IGdlbmVyb3VzbHk= 47253 +INCe0Lo= 47254 +IG9yYml0aW5n 47255 +Pjwv 47256 +IGVzcMOt 47257 +IENPUA== 47258 +dmlzaWJsZQ== 47259 +INC/0YDQtdGB0YLRg9C/ 47260 +IHN0aXRjaGVk 47261 +4K+ILg== 47262 +IGxhdGVudA== 47263 +IFByYWI= 47264 +IE1jTg== 47265 +IEhlYWxpbmc= 47266 +IEN1cmlvc2l0eQ== 47267 +Y2VydA== 47268 +IOuvvOyjvA== 47269 +IHBhdGllbnRseQ== 47270 +IFlU 47271 +Zm9yZWlnbg== 47272 +IHbhuqtu 47273 +IGluZHVzdHJp 47274 +IGNvY2t0YWlscw== 47275 +IGJyaWdodGVu 47276 +IGNvbnNvbGlkYXRlZA== 47277 +0LDRgNC0 47278 +bHRyeQ== 47279 +IGdyaWxsZQ== 47280 +IGJvbmE= 47281 +IGRpbGlnZW50bHk= 47282 +IFdyZXN0bGVNYW5pYQ== 47283 +ZXJrdA== 47284 +ZW5lcmd5 47285 +OTk5 47286 +4K6V4K61 47287 +IHRvdGU= 47288 +aW9ubw== 47289 +RElP 47290 +IHNjaGl6b3BocmVuaWE= 47291 +IHBvc3Rwb25lZA== 47292 +IFFpdQ== 47293 +IM+Dz4XOvQ== 47294 +IHpkasSZ 47295 +IHNwYW5uZW5k 47296 +IERJUw== 47297 +UmVs 47298 +IHJoaW4= 47299 +aW1tdW5l 47300 +T2xk 47301 +IHBsw7Z0emxpY2g= 47302 +IG1vdW5k 47303 +IGFzdHJvbm9taWNhbA== 47304 +IEd1aWQ= 47305 +IEN1bA== 47306 +SEk= 47307 +IMWg 47308 +IHJlcG8= 47309 +IE1hdXJpY2U= 47310 +IGJhbmRpdHM= 47311 +IERlc2t0b3A= 47312 +w6Rzcw== 47313 +ZnRh 47314 +IGxpY2VuY2U= 47315 +IGltYWdpbmFy 47316 +IEVudHJlcHJlbmU= 47317 +eG8= 47318 +IOunm+yeiOuKlA== 47319 +INeU15E= 47320 +IHB1bXBraW5z 47321 +IGthbnNzYQ== 47322 +IGrEmXp5 47323 +IGNvbW11bmF1dMOp 47324 +YsO8cg== 47325 +IGVyaMO2 47326 +IFdvbHZlcg== 47327 +IFNoYXJpbmc= 47328 +IHBha2Fp 47329 +IGluc3VsdGVk 47330 +0JzRiw== 47331 +0L7Rlw== 47332 +IGNvbnNpc3Rl 47333 +IHlvdW5nc3RlcnM= 47334 +IGdsZWljaGVu 47335 +d2VkZXI= 47336 +IG1vdGU= 47337 +IGNsYXVzZXM= 47338 +w6l0YXQ= 47339 +cHJ1cw== 47340 +IHdhc3Q= 47341 +IENyaXNw 47342 +IG9mZmVuZGVycw== 47343 +IGNvbnZlY3Rpb24= 47344 +IGNvbmZpYW4= 47345 +b2xsb3c= 47346 +YW1ldA== 47347 +INGX0YU= 47348 +ZmZpY2llbmN5 47349 +IHVuZ2xhdWI= 47350 +aWdhbnM= 47351 +IG1hcmtldGVk 47352 +IFZBTg== 47353 +IHByb2NsYWltZWQ= 47354 +IGPDqWx1bGFz 47355 +IGNvbGxpZGU= 47356 +IE9jdWx1cw== 47357 +YWRvcmU= 47358 +Smk= 47359 +IHN1c3RhaW5pbmc= 47360 +IEZhc2M= 47361 +IHNldHp0 47362 +IG5vc2FsdHJlcw== 47363 +TW9zdA== 47364 +INCy0Yc= 47365 +IG5hdWM= 47366 +IEJoYXI= 47367 +IHnDqnU= 47368 +IHRpbWVzdA== 47369 +IHBlcnRhbWE= 47370 +aXJtaQ== 47371 +IHp3cg== 47372 +IHZlcmJlc3M= 47373 +IHZvcnRleA== 47374 +IFNUQUNL 47375 +2KvYsQ== 47376 +uYTr 47377 +lJTsmKQ= 47378 +IGxpbmthZ2U= 47379 +IEZyYXNlcg== 47380 +ZW5hcmlv 47381 +IOudvOuKlA== 47382 +IOyEoOuwsA== 47383 +aHRoYWw= 47384 +IOq5jA== 47385 +IEtow7RuZw== 47386 +w4M= 47387 +IHNjcmFtYmxlZA== 47388 +IEVpbms= 47389 +IG1pY3Jvb3JnYW4= 47390 +IG5hcmNpc3Npc3Q= 47391 +IEtvbWJhdA== 47392 +IOunoQ== 47393 +IEFHQQ== 47394 +IHBlcmZla3Q= 47395 +IFNlcmll 47396 +ZGV0ZXJt 47397 +LSc= 47398 +IHBvbnl0YWls 47399 +IGtvc2th 47400 +7JM= 47401 +IG9iZWM= 47402 +IGNoZXN0cw== 47403 +dmVlcg== 47404 +IHVwcmlzaW5n 47405 +IHN0b2tlZA== 47406 +YXNzb2Np 47407 +IHByb2R1w6fDo28= 47408 +IFNoYXBl 47409 +7KCc6rCA 47410 +IOuUsA== 47411 +IGpvbg== 47412 +IGluYWR2ZXJ0 47413 +YW50YXM= 47414 +INC90LDQutC+0L3QtdGG 47415 +IEFyc2VuYWw= 47416 +IHByb3RlZw== 47417 +IGxpYmVydMOp 47418 +IGdsYXJl 47419 +IHZlcmVpbg== 47420 +IGluc2VydHM= 47421 +IEphbmE= 47422 +IHd5ZGFqZQ== 47423 +xYJ1bQ== 47424 +ICUu 47425 +b3JpZ2luZQ== 47426 +IHN5bmFnb2d1ZQ== 47427 +IGZhbGxhaXQ= 47428 +IGRpc29iZWQ= 47429 +IGFudGlj 47430 +IEN5Y2w= 47431 +IGFzeW5jaHJvbm91cw== 47432 +IOuyjOyNqA== 47433 +IGdlc3VuZA== 47434 +IGdhZ24= 47435 +IHBlYQ== 47436 +IGdyaW4= 47437 +w6lzdA== 47438 +IHNhdWM= 47439 +IE3DpGQ= 47440 +7ZW064+E 47441 +cHBz 47442 +IM61z4DOuQ== 47443 +IHBldXBsZQ== 47444 +IGRlYmVu 47445 +IEJyZWU= 47446 +INGA0L7Qu9GM 47447 +INC60LDQutC40Lw= 47448 +IMO6dGls 47449 +IGRpc3RyaWJ1dG9y 47450 +0LDQu9GL 47451 +IHN3b2rEhQ== 47452 +IGZvbGtsb3Jl 47453 +IHJlY2VpdmVycw== 47454 +IE1PTw== 47455 +Ymlucw== 47456 +YXN0cmU= 47457 +7JWI6w== 47458 +IOuEo+qzoA== 47459 +IG11bHRpbWVkaWE= 47460 +IGdlYmF1dA== 47461 +0L7QstGL0YU= 47462 +w6N5 47463 +IGRhbmU= 47464 +b2tvbA== 47465 +ZW1pdGlzbQ== 47466 +T05FWQ== 47467 +IHlhxJ8= 47468 +IGNoYXVmZg== 47469 +IGVzZnVlcg== 47470 +xINu 47471 +ZXJ0YXM= 47472 +IGZvbmN0aW9ubmU= 47473 +b21pbmE= 47474 +IGl2b3J5 47475 +IFlvdXR1YmVy 47476 +IFNreXdhbGtlcg== 47477 +0LjRh9C10YHQutCw0Y8= 47478 +dG9p 47479 +IHZleWE= 47480 +IGdlbGVybnQ= 47481 +IGNoYW5jZWxsb3I= 47482 +IFN0YXRpc3RpY3M= 47483 +IHdlbGRlZA== 47484 +IG9uZGFu 47485 +IFNlaQ== 47486 +IG1lZGljYWxseQ== 47487 +IGVuZXJnaXplZA== 47488 +IFZpYQ== 47489 +INCy0LjQug== 47490 +IHVuaW50ZXI= 47491 +IGhpZ2huZXNz 47492 +IO2MlOs= 47493 +IGFtcGxpZmllZA== 47494 +IFNlcmdleQ== 47495 +IE1pbnM= 47496 +d2FybQ== 47497 +cGVsbA== 47498 +b3BoaWxl 47499 +IGjDqA== 47500 +IEJlbG8= 47501 +IFNrZXRjaA== 47502 +IGNoYXJhY3Rlcml6YXRpb24= 47503 +YW5zZW4= 47504 +INGC0YPRgA== 47505 +IOOFi+OFi+OFiw== 47506 +Tm90ZQ== 47507 +IGtvxZ8= 47508 +IGNpZXJ0 47509 +Zmx1 47510 +IGJhaHQ= 47511 +IERvd250b3du 47512 +IENSSVM= 47513 +b2RpZQ== 47514 +MTQw 47515 +IGxpdHJlcw== 47516 +IGdyaWV2 47517 +IOyUqOqwgA== 47518 +IHN1Y2NlZWRz 47519 +IF9f 47520 +ZW50aW5n 47521 +IHZpbW9z 47522 +IHPDrA== 47523 +ZGVmZW5zZQ== 47524 +IE1jRA== 47525 +IE1hcmlvbg== 47526 +IERvbnQ= 47527 +IEREUg== 47528 +IExhemFy 47529 +IERBUg== 47530 +IGt1dg== 47531 +S24= 47532 +IHNlbWJsYQ== 47533 +IGFpcmJvcm5l 47534 +IFZpb2xlbmNl 47535 +65CQ 47536 +IHJlc3RyYWludA== 47537 +IHdoaXN0bGVz 47538 +IHNjb2xkZWQ= 47539 +IGFjY2Vzbw== 47540 +IGFic29sdXRhbWVudGU= 47541 +IFR5bA== 47542 +IFNhcA== 47543 +toDrtoQ= 47544 +aXTDpHRlbg== 47545 +YWRlbQ== 47546 +IMO9 47547 +IHByZXNjcmliZQ== 47548 +IE1hZ2U= 47549 +IEhlbGVuYQ== 47550 +dnQ= 47551 +IHZpZW5lbg== 47552 +IHNuZWV6 47553 +IG1vbMOp 47554 +xrDhu59uZw== 47555 +IHRyYW5zcG9ydGluZw== 47556 +IExlYW4= 47557 +IGt1bmc= 47558 +0YPRgNCw 47559 +z4TOrQ== 47560 +dXRjaGVz 47561 +b25kZXJz 47562 +bGl5b3I= 47563 +TmF0 47564 +IHppag== 47565 +IG1hbW1hbA== 47566 +IGvDpHl0 47567 +IEpvYW5uYQ== 47568 +c2VudA== 47569 +IOCkuA== 47570 +IHZlc3RlZA== 47571 +IEVyZmFocnVuZw== 47572 +b2tlZQ== 47573 +IGNsaXBwaW5n 47574 +IExpc3RlbmluZw== 47575 +ICgj 47576 +ZsO2 47577 +IHZpZGFyZQ== 47578 +IGJyaXR0bGU= 47579 +IFNUQVJU 47580 +IERhbWFz 47581 +IFlvZw== 47582 +Z2FydA== 47583 +IHZlcmxpZXI= 47584 +IGhlYXJ0ZmVsdA== 47585 +IGRvxZvEhw== 47586 +7LmY6rCA 47587 +LsK7 47588 +IG1heGltYWw= 47589 +IGRpc3RpbnRvcw== 47590 +IOyZnOuDkO2VmOuptA== 47591 +IHNhaWxlZA== 47592 +IGNvbnZleWVk 47593 +IFRpbmRlcg== 47594 +IFNVUEVS 47595 +0L3QuNGG0YM= 47596 +Y29udHJvbGxlZA== 47597 +IGZ1bno= 47598 +IGJhc3RhcmRz 47599 +IEdpbnNidXJn 47600 +IG51b3Zv 47601 +IFBlcmU= 47602 +IEpFUw== 47603 +IERpbmdlbg== 47604 +IEJldHM= 47605 +dW1iYQ== 47606 +YWNjacOzbg== 47607 +IOyeiOyngOunjA== 47608 +IHJldHJh 47609 +IExhdXJlbnQ= 47610 +IHBvenk= 47611 +IGdyb292ZXM= 47612 +IG3DoXF1aW5h 47613 +IG1pbmlvbg== 47614 +IGRlaW5lbg== 47615 +IFNoYXVu 47616 +15nXmQ== 47617 +IGhvbm9yYXJ5 47618 +b3NhdXJ1cw== 47619 +IHplaXQ= 47620 +IGVzcGVjaWU= 47621 +IEJDRQ== 47622 +0LDRgtC1 47623 +SnVzdGlu 47624 +IFdoZWVscw== 47625 +IOydtO2VtA== 47626 +INio2YrZhg== 47627 +IHByb3B1bHNpb24= 47628 +IHBlcmNlYmVy 47629 +IE5ld21hbg== 47630 +5bQ= 47631 +Y3Vsb3Npcw== 47632 +TWk= 47633 +INCw0LrQutGD 47634 +IG1hc3RlcmluZw== 47635 +IGzDpGg= 47636 +IGZpc3Rz 47637 +IG1hcmluYWRl 47638 +TGlsbHk= 47639 +IOuFuOugpQ== 47640 +IFlI 47641 +IHVyZ2VudGx5 47642 +IGluZm9ybWF0aW9uYWw= 47643 +IGFjb3Jkbw== 47644 +aXp6eQ== 47645 +7J207Ja0 47646 +aW1hcg== 47647 +IOuCmOyYpOs= 47648 +IHR3ZW50aWVz 47649 +IHJhc3A= 47650 +IGJ1bXB5 47651 +2KjYqQ== 47652 +d29ya2Vy 47653 +IHF1aWNrZXN0 47654 +IGF0dGFjaGVz 47655 +0LLQuNCz 47656 +IOuCmO2DgOs= 47657 +IHB1cmVl 47658 +IG92ZXJzaXplZA== 47659 +IHN0aXJyZWQ= 47660 +IGpha2lt 47661 +IGhvbWljaWRl 47662 +aXNjaWxsYQ== 47663 +IOyxmQ== 47664 +IHNwZWN1bGF0aXZl 47665 +IGFzc2lzdHM= 47666 +bWFpbg== 47667 +asOkaHI= 47668 +aW5kZXQ= 47669 +IMWfdXI= 47670 +IGZvcmVjYXN0cw== 47671 +IGRpdmVyc2lvbg== 47672 +IHRhcmU= 47673 +IG9nbA== 47674 +IE9yZ2FuaXNhdGlvbg== 47675 +IENoZXZ5 47676 +IGJhamE= 47677 +YW5kxLFy 47678 +INmI2YTYpw== 47679 +IHJhZGlhbnQ= 47680 +IGxpYWlzb24= 47681 +IGRlbW9rcmF0 47682 +IE1BUkM= 47683 +z4DOv8+F 47684 +IHJ1bnQ= 47685 +IHByw6ljaXM= 47686 +IGdldmVu 47687 +IHbDqWhpYw== 47688 +IEpFU1M= 47689 +U1RS 47690 +IOyWmOs= 47691 +IHZpc2lvbmFyeQ== 47692 +IGJ1cmFkYW4= 47693 +IHJlYmlydGg= 47694 +IGV4aGliaXRlZA== 47695 +IE1ldGFsbA== 47696 +b2xpZQ== 47697 +ZWx5bg== 47698 +IGZsYXZvdXJz 47699 +IGVzY3JpdG8= 47700 +IERlbGV0ZQ== 47701 +IOyVjOyVmOyWtA== 47702 +INGD0LrRgNCw0ZfQvQ== 47703 +IGludGVycnVwdGluZw== 47704 +IGlkZW50aWZpYw== 47705 +IFN1enVraQ== 47706 +IExhbmRpbmc= 47707 +YW5kaQ== 47708 +IGVzdHJhbg== 47709 +IGNvdWxldXI= 47710 +IGFncmFk 47711 +IFNueQ== 47712 +IOCuh+Cusg== 47713 +IGFuZGVy 47714 +IHJ1YQ== 47715 +IHByaXNl 47716 +IGxhdXJl 47717 +IO2KgA== 47718 +IG1vZGVyYXRpb24= 47719 +IGVyZmFocmVu 47720 +IGRlY29uc3Q= 47721 +IFJlZXNl 47722 +IFBL 47723 +ZXRvcw== 47724 +IEdyYXZpdHk= 47725 +IEVyZW4= 47726 +IG92ZXJib2FyZA== 47727 +IG3DvHNzdA== 47728 +IEVtYWls 47729 +0LXRgNC8 47730 +eWRp 47731 +acSZZHp5 47732 +IExPVQ== 47733 +IEZ1w59iYWxs 47734 +IFJE 47735 +YWx0cw== 47736 +IOyKpO2KuOs= 47737 +INCa0YDQsNGB 47738 +IHRlbGV2 47739 +INGA0L4= 47740 +IHJlc2lnbmF0aW9u 47741 +IGppbmdsZQ== 47742 +IFN0dWRpZW4= 47743 +IElY 47744 +IFNlbnRpbmVs 47745 +IFBhbmc= 47746 +6YQ= 47747 +SmFrZQ== 47748 +IHBlcnNvbmFnZW0= 47749 +IG3DqWRpYQ== 47750 +IENoZXJu 47751 +YW50aWNhbGx5 47752 +IHRo4budaQ== 47753 +IHBhcmFseXNpcw== 47754 +IGphcGFuZXNl 47755 +IGNvbmV4 47756 +IGVmaWM= 47757 +IHVuZGVyc2lkZQ== 47758 +IG5lb2w= 47759 +IGZpYW4= 47760 +0LjQvNC+0YHRgtGM 47761 +IHF1aXJreQ== 47762 +IHBpc3Rh 47763 +IENsZW1lbnQ= 47764 +bm90aGluZw== 47765 +INC/0L7QtdGF 47766 +IGhvcnJlbmQ= 47767 +IGNvbnNvbGlkYXRl 47768 +cGxveXM= 47769 +ZW1ha2Vy 47770 +SmVubmlmZXI= 47771 +IG51bcOpcm8= 47772 +IGZhbW9zbw== 47773 +IE5lcHR1bmU= 47774 +IO2WiOyWtA== 47775 +INC/0YDQtdC30LjQtA== 47776 +IHNpdGNvbQ== 47777 +IHNlcmlv 47778 +IG11ZQ== 47779 +IGdsYW5kcw== 47780 +IGLDtnJqYXI= 47781 +IFlK 47782 +IFJpb3Q= 47783 +cGFyYWd1cw== 47784 +IHNlZ3VyYW7Dp2E= 47785 +IGltbWF0dXJl 47786 +IE1hZG9ubmE= 47787 +4LiN 47788 +IGxpbmdlcmluZw== 47789 +IGFjZXNzbw== 47790 +IE9yaWVudA== 47791 +IFJlY29tbQ== 47792 +IGNvbXBsYWM= 47793 +Zm91bmRlZA== 47794 +YXR0ZW5k 47795 +IGNpZWxv 47796 +IFpoYW4= 47797 +bmFpcmVz 47798 +Y2Nv 47799 +INeQ16A= 47800 +IHN0YXRh 47801 +IGNvbnRyYWRpY3Rvcnk= 47802 +IFPDqQ== 47803 +IFNBTg== 47804 +IENvbm5pZQ== 47805 +IOuLueyLnA== 47806 +INGB0LDQvNC+0Lk= 47807 +IG1hamVzdGlj 47808 +IFBlbmd1aW4= 47809 +IENPTUU= 47810 +w61jaW9z 47811 +cGVybw== 47812 +IG1n 47813 +IGZhdWM= 47814 +IGNvcnJlcg== 47815 +IEdvdHRlcw== 47816 +IEFuZ2xv 47817 +SGFy 47818 +4buXaQ== 47819 +IHZpdGVzc2U= 47820 +IGFubm91bmNlcg== 47821 +IE9tYWhh 47822 +a3Vt 47823 +IHNwYXJlZA== 47824 +INGA0LDQt9Cw 47825 +INC/0L7Qu9GD0YfQuNGC0YHRjw== 47826 +IHTDpGjDpG4= 47827 +INC/0L7QvdCw0LQ= 47828 +IHBlcnRhaW5pbmc= 47829 +IFJhdGU= 47830 +aWVybg== 47831 +R29sZA== 47832 +IHRlc3Rl 47833 +IGRlxJ9pbGQ= 47834 +IGRhbXBpbmc= 47835 +IFBhcnRuZXJzaGlw 47836 +enlzdGE= 47837 +Z2VsZA== 47838 +IHNtb2tlcw== 47839 +IE1hcnJpYWdl 47840 +7Kq97JeQ 47841 +aXNjZQ== 47842 +IHRyeW5h 47843 +IERpcmVjdG9yeQ== 47844 +IOuCmOyYrA== 47845 +IHNoYW1lZnVs 47846 +IG1lbnRyZQ== 47847 +IGFzc2lnbmluZw== 47848 +IHJlcGVydG9pcmU= 47849 +IG9iamV0b3M= 47850 +IHVuZGVyd29ybGQ= 47851 +IGVuZGVhdm9ycw== 47852 +IGlnbml0ZQ== 47853 +INmI2Kw= 47854 +IGV4cGVyaWVudA== 47855 +INCX0LDQvw== 47856 +INC30LDQutC70Y7Rhw== 47857 +IHZvbHRhZ2Vz 47858 +IG5pZWdv 47859 +IGRlZmljaXRz 47860 +IGJ1ZW5vcw== 47861 +IFNsZWVwaW5n 47862 +IFNhbGVt 47863 +IHVubG9ja2luZw== 47864 +IGludGVyYWN0ZWQ= 47865 +IGVudGVuZGV1 47866 +IFN1cGVyaW50ZW5kZW50 47867 +IHN6Y3plZ8OzbA== 47868 +IHF1YXM= 47869 +IHBhbGluZw== 47870 +IGtobw== 47871 +2KjYrQ== 47872 +IGNvbGFib3I= 47873 +INC/0YDQuNCz0L7RgtC+0LI= 47874 +IG1hdXY= 47875 +IEp1ZGFz 47876 +IEFzc2lzdA== 47877 +INGC0LXRgNGA0Lg= 47878 +INC90LDRgdC60L7Qu9GM0LrQvg== 47879 +IHN1YnNpZHk= 47880 +IEVtYmFzc3k= 47881 +IGRhZ2Vu 47882 +IFNhbnRv 47883 +16nXldeR 47884 +IGFicnVwdGx5 47885 +IEFkYXB0 47886 +IHZhYWs= 47887 +IHBvc3RhbA== 47888 +IGludmVzdGly 47889 +IGZpcXVlaQ== 47890 +IGRvd250aW1l 47891 +IFdlYmI= 47892 +IE5DQUE= 47893 +IEVzdG95 47894 +0L7Qu9C+0YI= 47895 +IOyCrOqxtA== 47896 +IG5hdGlvbmFsaXN0 47897 +IEthdGhyeW4= 47898 +IEtvcA== 47899 +6ao= 47900 +U2Vhbg== 47901 +T05B 47902 +IEJq 47903 +16LXnQ== 47904 +w61i 47905 +aWRhbWVudGU= 47906 +INCz0LvQsNC30LA= 47907 +IHVubmll 47908 +IGdlbWFha3Q= 47909 +IElOVEVSVklFV0VS 47910 +IEhhdXQ= 47911 +zq/Ovw== 47912 +Z2VvaXM= 47913 +d3lkZA== 47914 +INC60L7Qu9C4 47915 +IHRpZ2h0ZW5lZA== 47916 +IHBsYW5uZXJz 47917 +IGhlcnVt 47918 +IGfDtnLDvG4= 47919 +IGVsZWN0cm9uaWNhbGx5 47920 +IGNlcmFt 47921 +IOuLpOyWke2VnA== 47922 +IGVwaWxlcHN5 47923 +IGXEnw== 47924 +bGlucw== 47925 +IFNoaW55 47926 +INGB0L7Qu9C9 47927 +IG1hY2Fyb24= 47928 +IGltcGFjdG8= 47929 +IFZlZ2Fu 47930 +emXFhA== 47931 +IFJhcGhh 47932 +IFBhcnM= 47933 +IExFTw== 47934 +Y8O8 47935 +INec15TXmdeV16o= 47936 +IMOkaG5saWNo 47937 +IGZsb3Nz 47938 +IEFa 47939 +IG3DtmNodGVu 47940 +IGdyb29taW5n 47941 +IGdyYXNzZXM= 47942 +cmFuY2g= 47943 +IHJlY2liaXI= 47944 +IGJvdW5jeQ== 47945 +IEhvYmJ5 47946 +IHZpa3RpZw== 47947 +IGJlZ2l0dQ== 47948 +IFBpY2Fzc28= 47949 +IEt1c2g= 47950 +66qo 47951 +IG9ic3RydWN0aW9u 47952 +IOu2hOychA== 47953 +IG1pY3JvYg== 47954 +IFdlc3RtaW5zdGVy 47955 +cm9wcw== 47956 +ZHVs 47957 +IGRldm8= 47958 +IExlaHJlcg== 47959 +IEFkdmlzb3I= 47960 +dWNrZW4= 47961 +INCx0YPQvA== 47962 +IGZsYXR0ZXJpbmc= 47963 +IFRydW1hbg== 47964 +IFNlbXByZQ== 47965 +IE1jQ2Fpbg== 47966 +IEhpbmR1cw== 47967 +SnVsaWE= 47968 +IHdhdGVyc2hlZA== 47969 +IGx1c2g= 47970 +7KCE6w== 47971 +QmVmb3Jl 47972 +INCS0YLQvtGA 47973 +IFNhYVM= 47974 +IHNpdHp0 47975 +IGJlZXRsZQ== 47976 +IEVzc2VudGlhbA== 47977 +ZW5rbw== 47978 +IOuVjOuPhA== 47979 +IHJldnZpbmc= 47980 +IHBvb3Jlcg== 47981 +IGNvZXJj 47982 +IGlkZWU= 47983 +IGNvw7s= 47984 +YWxldA== 47985 +IHpkcm93 47986 +IGZlbmRlcg== 47987 +Z3Jvd3Ro 47988 +RElORw== 47989 +IHpkZQ== 47990 +RU5UUw== 47991 +IGZhY2V0cw== 47992 +dXNoaW1h 47993 +IMWfZWg= 47994 +IHBhcmFzaXRl 47995 +IGxhcHNl 47996 +IE1lZXI= 47997 +IEt1bmQ= 47998 +IHNsb2c= 47999 +IGJydW5jaA== 48000 +IENoYXJ0 48001 +YXJ6 48002 +IE1VUw== 48003 +IG9mZmVuc2Vz 48004 +IGluZ2zDqXM= 48005 +IGZvbGlhZ2U= 48006 +b3BsYW4= 48007 +QXV0 48008 +IEphY3F1 48009 +dGFr 48010 +aWVtYnJl 48011 +IHhlbg== 48012 +IG5vbWluZWVz 48013 +IGJpb21lZGljYWw= 48014 +w6lzdXM= 48015 +IGVzdHV2 48016 +z4TPjA== 48017 +QVRIQU4= 48018 +IO2VnOuNsA== 48019 +IGhlZWQ= 48020 +Y3Jvc3N0YWxr 48021 +QmlsbA== 48022 +IHNwb3VzZXM= 48023 +INGB0Y7Qtg== 48024 +IHZlcnNv 48025 +IFN2ZW4= 48026 +IENhdQ== 48027 +Y3V6 48028 +IOuztOyEuOyalA== 48029 +INGF0L7Qt9GP 48030 +IG1vY2tpbmc= 48031 +IE9uYQ== 48032 +IETDoQ== 48033 +IGZydWl0ZnVs 48034 +IGJhbnF1ZXQ= 48035 +dWRkaW5n 48036 +aW5jdGlvbnM= 48037 +ZGVydA== 48038 +c3Vk 48039 +IGRlc2Nvbg== 48040 +IEpD 48041 +IMKn 48042 +IHB1Ymxp 48043 +64iI 48044 +IGVudHNjaGllZGVu 48045 +IFJPSQ== 48046 +IOyDneqyvA== 48047 +IGvDpHl0dA== 48048 +eWFuaQ== 48049 +c2hhdw== 48050 +IHVubGVhc2g= 48051 +IG1hbm5l 48052 +IGhpc3RvZ3JhbQ== 48053 +4Lit4Liw4LmE4Lij 48054 +IGdu 48055 +IGZlbGxh 48056 +IGVpbmdlcw== 48057 +IEJ1aWx0 48058 +IHJlcHJlc2VudGE= 48059 +IHB1bmlzaGluZw== 48060 +IG91dHNpZGVycw== 48061 +0L3Rg9GC0YzRgdGP 48062 +Y3VycmVudA== 48063 +IGZhbWlsaWFyaXR5 48064 +INC00LjQsg== 48065 +IHByb2pldHM= 48066 +IGFxdWVsZXM= 48067 +IEdsdWU= 48068 +dGhvc2U= 48069 +IGluY2VwdGlvbg== 48070 +IGFxdWVsbG9z 48071 +IGlsbHVzaW9ucw== 48072 +IGF0dGVuZHM= 48073 +cmVzZQ== 48074 +IHN3YXJt 48075 +IHN3YWI= 48076 +IHJlZ2FyZGV6 48077 +IHBvc2nDp8Ojbw== 48078 +IGFraGly 48079 +IGV4dHJhY3Rpbmc= 48080 +IGFuZWNkb3Rl 48081 +IFRhbGU= 48082 +INCy0LjQvQ== 48083 +IGFiZ2Vz 48084 +IG9sdcWf 48085 +IGNvbXBsaWNhZG8= 48086 +IGNvdmFyaQ== 48087 +0ZbRgtGM 48088 +RGVy 48089 +INeZ15Q= 48090 +Rm9ybQ== 48091 +IOyWtOyojOuToA== 48092 +IHJlYWRhYmxl 48093 +IGluaGliaXQ= 48094 +IGRlY2lwaGVy 48095 +IEFuZ3J5 48096 +cGc= 48097 +4K614K6k 48098 +INGB0L7QsdGB0YLQstC10L3QvdC+ 48099 +IHNhbWg= 48100 +IGVzY3I= 48101 +IGVuY29tcGFzc2Vz 48102 +IGF1c3Rlcg== 48103 +IGNvbmZpc2M= 48104 +IE1hbmRhbA== 48105 +IH0= 48106 +YXRjaGVy 48107 +PSM= 48108 +INC60LjQvdC+ 48109 +IHN0YWw= 48110 +bHVuZ3M= 48111 +IHZvbGU= 48112 +IHJlcXVpcw== 48113 +IHDDqW4= 48114 +IGxlY3R1cmVy 48115 +IGluc2NyaXB0aW9u 48116 +IGNlcnZpY2Fs 48117 +IFRyZWFzdXJl 48118 +IEpX 48119 +Y29taW5ncw== 48120 +IGV5ZXNpZ2h0 48121 +IFRhaWxz 48122 +w61zaW1v 48123 +IHdvcmtzaGVldA== 48124 +IHN3aWZ0bHk= 48125 +IGNvbm9z 48126 +IGVsaW1pbmF0ZXM= 48127 +IEJsYXpl 48128 +0LDQu9C+0LM= 48129 +IHBpY3R1cmVk 48130 +IGdpcmFmZmU= 48131 +IExvZ2lj 48132 +IGVucmljaG1lbnQ= 48133 +Rml0 48134 +IHVuaW50ZW5kZWQ= 48135 +IHBlcnNlY3V0ZWQ= 48136 +YWthcA== 48137 +67CY 48138 +IGJhcmJlcg== 48139 +IGFyYmVpdGV0 48140 +IFN1cnByaXNpbmdseQ== 48141 +IEF1dG9i 48142 +dW5rdQ== 48143 +cHJvdg== 48144 +IExvY2g= 48145 +b2J5bA== 48146 +INC/0L7QtNCz0L7RgtC+0LI= 48147 +IMOpY29ub21pcXVl 48148 +IHBhdHQ= 48149 +IGNlYXNlZA== 48150 +INGB0L/QuNGB 48151 +IG51Y2xlaQ== 48152 +IGlzdGU= 48153 +IFdhZw== 48154 +IHp1cGXFgm5pZQ== 48155 +IHByb3ZlcmI= 48156 +IEFow60= 48157 +bGlhbW8= 48158 +IHJlbGlhYmx5 48159 +IHBpaw== 48160 +IFRyYWRpbmc= 48161 +IENvbGVtYW4= 48162 +IM6xzr3OsQ== 48163 +IG1hZ2FyaQ== 48164 +IFBISUw= 48165 +IHNoZWRkaW5n 48166 +b2huZXI= 48167 +IHBvcm5vZ3JhcGh5 48168 +IGJlbmVmaWNpYXJpZXM= 48169 +4oCi 48170 +ZW5pbg== 48171 +IHJlc29sdmluZw== 48172 +INGB0L/QvtGA0YI= 48173 +INCx0LXQsw== 48174 +IG5lY3Rhcg== 48175 +dWx0dXJh 48176 +aW1zaWNhbA== 48177 +jIDrpbw= 48178 +IHZpc8Ojbw== 48179 +w7/Dv8O/w7/Dv8O/w7/Dvw== 48180 +YXR0Zm9ybQ== 48181 +IOunnuuKlA== 48182 +IHBpbGdyaW1hZ2U= 48183 +IG1hdGluZw== 48184 +IFJlYXBlcg== 48185 +IEJyZWY= 48186 +INeR15M= 48187 +IG5vdmFtZW50ZQ== 48188 +IGdyaWxsaW5n 48189 +IFdpcmVsZXNz 48190 +IFJvbWFuaWFu 48191 +0ps= 48192 +7Jyg6w== 48193 +aGFpdA== 48194 +IEJvcmE= 48195 +QVJSWQ== 48196 +IGh5cG90aGVzZXM= 48197 +aWt1dA== 48198 +IOyVhOuyhA== 48199 +INGW0Lc= 48200 +IG5hdGlvbmFsZQ== 48201 +2KrZiQ== 48202 +w7xsbHQ= 48203 +IMOpbMOpbWVudHM= 48204 +IFdhcmU= 48205 +ICgt 48206 +0LDQu9GM0L3QvtC8 48207 +IGluZGljdA== 48208 +IFN0b25lcw== 48209 +ZXhwbG9zaW9u 48210 +IOuDhOyDiA== 48211 +IGZlbGlj 48212 +IGp1ZGljaWFyeQ== 48213 +IGluY2FybmF0aW9u 48214 +IGlubmluZw== 48215 +IGZvcm11bA== 48216 +IHNoaXBtZW50 48217 +IHJlaW5kZWVy 48218 +INC+0LfQvdCw0Yc= 48219 +IGVudm9s 48220 +dW5keQ== 48221 +INC30L3QsNGC0Yw= 48222 +INCy0LjQtNC10LvQuA== 48223 +IGV4Y2x1ZGluZw== 48224 +ZGVhdGg= 48225 +IGJlcm0= 48226 +IHNvcHJhdHR1dHRv 48227 +IGRlYmlkbw== 48228 +IFppZw== 48229 +IE92 48230 +IEtFVklO 48231 +IFBhbGU= 48232 +IE1pcmU= 48233 +IGFuZGFy 48234 +aW5jbHVkaW5n 48235 +IHN3YXBwZWQ= 48236 +IG1pc2NvbmNlcHRpb25z 48237 +IHNwb25n 48238 +csOpYWw= 48239 +IG9yYml0YWxz 48240 +IGhhc2h0YWdz 48241 +b3JpdA== 48242 +IG1hdXZhaXM= 48243 +0LjRgdCw 48244 +IGxpdnJlcw== 48245 +IElQUw== 48246 +IDA0 48247 +w7Zn 48248 +aW5zdHI= 48249 +INCy0L3QtdGI 48250 +IGhpY2U= 48251 +aXPDqWU= 48252 +IG93ZXM= 48253 +IGVzaW1lcms= 48254 +IFVI 48255 +IGlycml0YXRpb24= 48256 +IGdpZ2dsZXM= 48257 +IGNvbG9uaWFsaXNt 48258 +IEJsaXNz 48259 +c3RyaW5ncw== 48260 +IHJldW5pdGVk 48261 +IFBzYWtp 48262 +d2FjaA== 48263 +IGNsaWZmcw== 48264 +IEZhbHNl 48265 +w6Rn 48266 +cGlwZQ== 48267 +IHdob3BwaW5n 48268 +IG1lcmluZ3Vl 48269 +IGJ1bmc= 48270 +aW5kdXN0cmll 48271 +IGxlY2hl 48272 +IExveQ== 48273 +IGRyaWU= 48274 +IHBhc3NhdA== 48275 +IG9sZWg= 48276 +IGPDqXU= 48277 +IEdhYnJpZQ== 48278 +IHJlZWZz 48279 +IGJvbWJlcnM= 48280 +IGVwaXPDs2Rpbw== 48281 +IFJ1Zw== 48282 +IFByb3Nl 48283 +b25vcw== 48284 +IG9iZXNl 48285 +IGdvb2c= 48286 +IHBpYWNl 48287 +Zmxhbnplbg== 48288 +IGZsYXBz 48289 +IEFsdG8= 48290 +Rmlu 48291 +IHJlc2l6ZQ== 48292 +6re4656o 48293 +TmF0aGFu 48294 +nojroKQ= 48295 +INGC0LDQuQ== 48296 +IE5GVA== 48297 +IHNuZWV6ZQ== 48298 +IHNocm91ZA== 48299 +acOp 48300 +IHZlcmFtZW50ZQ== 48301 +IGNhc2NhZGU= 48302 +IE9vaw== 48303 +7JeG7J20 48304 +IGluZnVzZWQ= 48305 +ZnBz 48306 +Y2VudGVy 48307 +IGdyYXBwbGluZw== 48308 +IFdvaG51bmc= 48309 +IFR1bWI= 48310 +IEltbWE= 48311 +IER1eWd1c2Fs 48312 +0LXQvdGC0Lg= 48313 +IHN0ZXdhcmRzaGlw 48314 +IGhhcnA= 48315 +IGVuZG9yc2Vk 48316 +xLFsYW4= 48317 +INC+0LTQvdC40Lw= 48318 +IGNvbXBldGVuY3k= 48319 +IGJlcnQ= 48320 +IFRhbGVz 48321 +IHJoZQ== 48322 +IG9oaA== 48323 +IOqwhOuLqA== 48324 +IG1STkE= 48325 +IGdhbmdzdGVy 48326 +IFJ1bm5lcg== 48327 +0LXQvdC90YvQvA== 48328 +cGhvcmlh 48329 +IHfFgmHFm2Npd2ll 48330 +IHF1YXJ0bw== 48331 +IG9yZ2FuaXNl 48332 +IFZldA== 48333 +UGFk 48334 +INmF2Ks= 48335 +IHN0aW5rcw== 48336 +IER1bA== 48337 +dWVt 48338 +aXNpZWo= 48339 +VG9w 48340 +IHR1c3Nlbg== 48341 +IEVmZW5kaW1peg== 48342 +IEJvdWxl 48343 +IFNsb3Zlbg== 48344 +IEzDtg== 48345 +0ZHQtw== 48346 +0YDQuNC/ 48347 +Y2F2ZQ== 48348 +IGJvw64= 48349 +IGFwb2xvZ2lzZQ== 48350 +IE1hcmx5 48351 +IEV4cG9ydA== 48352 +IENhaXRsaW4= 48353 +IHRhdmFsbGE= 48354 +IGVudGFpbHM= 48355 +IGJyb20= 48356 +IENvcGVuaA== 48357 +IHdhbG51dA== 48358 +IGluc2lzdHM= 48359 +IGN14buZYw== 48360 +IFF1aXQ= 48361 +IERldmljZQ== 48362 +15LXnQ== 48363 +IERPVA== 48364 +IHZlbG9jaWRhZA== 48365 +TElF 48366 +Q29vbA== 48367 +IHNhbml0YXRpb24= 48368 +IG9saG8= 48369 +IEVC 48370 +IO2ZleyLpO2eiA== 48371 +INCc0LjRhQ== 48372 +IHp1aw== 48373 +IHN1cm5hbWU= 48374 +IFNjaHVsZA== 48375 +cnVmZg== 48376 +Y3VsdHVyYWw= 48377 +INGB0YLQvtC70YzQutC+ 48378 +jOuNsA== 48379 +IHRvcnRv 48380 +IGJhY2t1cHM= 48381 +0YDQuNC5 48382 +cmVsYXg= 48383 +IHN5bmVyZ3k= 48384 +IGJ1ZmZz 48385 +IGFwbw== 48386 +IFdlbGxuZXNz 48387 +cm91bmRlZA== 48388 +IHVuaXZlcnNlcw== 48389 +IGZlcmE= 48390 +IHN0YW5kYnk= 48391 +IFNpbHZh 48392 +IEpJ 48393 +ZW5zb3JlZA== 48394 +IOyXhuuLpA== 48395 +INCQ0LI= 48396 +INC+0YLQtNC10Ls= 48397 +IGbDuA== 48398 +IFJvY2tlZg== 48399 +IENvbXBhc3M= 48400 +IEJlYXJz 48401 +VHVybg== 48402 +IHRo4buxYw== 48403 +IHBvc3NpYmlsZQ== 48404 +IGVzdGVt 48405 +IENyb2F0aWE= 48406 +IHTDpHTDpA== 48407 +IENBTA== 48408 +4LmA4Lie 48409 +INGB0YLRgNCw0YU= 48410 +IHNhbHRz 48411 +IG1pbmltYWxpc3Q= 48412 +IGluY29ycG9yYXRlcw== 48413 +INmG24HbjNq6 48414 +YWNhbw== 48415 +IHNsYW1tZWQ= 48416 +IGNhbWE= 48417 +VGV4dA== 48418 +ISEhISEh 48419 +IGFsY2Fueg== 48420 +w6ltYQ== 48421 +IGluY2Vuc2U= 48422 +IGhhcmRlbg== 48423 +IGdyYW50aW5n 48424 +IE5haQ== 48425 +IEZpcm1h 48426 +IGh5cG9j 48427 +am9i 48428 +IFJI 48429 +enVy 48430 +0LjQu9GP 48431 +IMW6 48432 +IGRhcmVz 48433 +YW5o 48434 +IOunjO2BvA== 48435 +IGN1ZXN0acOzbg== 48436 +IExpbWE= 48437 +IGFzc3VudG8= 48438 +IElQTw== 48439 +IEJlbmdhbA== 48440 +IEJpZXI= 48441 +IHBzeWNoZQ== 48442 +IGFjcXVhaW50ZWQ= 48443 +IEfDvG4= 48444 +0L7Qt9C4 48445 +xZtjacSF 48446 +QUc= 48447 +IG1hbGZ1bmN0aW9u 48448 +IGFzdGVyb2lkcw== 48449 +aXJleg== 48450 +YW1vcnBo 48451 +INGB0L7RgtGA0YPQtA== 48452 +IGZyZXNod2F0ZXI= 48453 +IGFycmFu 48454 +INC/0YDRiw== 48455 +0L3QvtCz 48456 +IGRpYWJldGlj 48457 +INmC2KfZhA== 48458 +IG9wcHJlc3M= 48459 +IGNhcGFjaXRhbmNl 48460 +cGVyZm9ybWFuY2U= 48461 +Y3JhdGVz 48462 +IGFwb3N0bGU= 48463 +IEpFTg== 48464 +T1VMRA== 48465 +SW50cm8= 48466 +IHN0YWxscw== 48467 +IEFCT1VU 48468 +Y3RpY2FtZW50ZQ== 48469 +IGRpbGlnZW50 48470 +IG1hbmlmZXN0cw== 48471 +IFBha2lzdGFuaQ== 48472 +ICgn 48473 += 48474 +6ZM= 48475 +6bI= 48476 +55g= 48477 +6Jw= 48478 +6bg= 48479 +6a4= 48480 +6Jo= 48481 +6J0= 48482 +6a8= 48483 +6JU= 48484 +6KQ= 48485 +6bA= 48486 +6J8= 48487 +56M= 48488 +6KA= 48489 +6ZE= 48490 +6bU= 48491 +6bE= 48492 +6bQ= 48493 +5bU= 48494 +54A= 48495 +6Z4= 48496 +6bY= 48497 +6Y4= 48498 +6ac= 48499 +6bc= 48500 +5aw= 48501 +6Ys= 48502 +5bY= 48503 +5qs= 48504 +55M= 48505 +77w= 48506 +46k= 48507 +770= 48508 +45Y= 48509 +45c= 48510 +5IE= 48511 +8KA= 48512 +4oCY 48513 +4oCZ 48514 +4oCc 48515 +4oCd 48516 +4oCn 48517 +4oSD 48518 +4peL 48519 +44CD 48520 +44CG 48521 +44CH 48522 +44CI 48523 +44CJ 48524 +44CS 48525 +44Cd 48526 +44Ce 48527 +44GB 48528 +44GC 48529 +44GD 48530 +44GE 48531 +44GF 48532 +44GG 48533 +44GH 48534 +44GI 48535 +44GJ 48536 +44GK 48537 +44GL 48538 +44GM 48539 +44GN 48540 +44GO 48541 +44GP 48542 +44GQ 48543 +44GR 48544 +44GS 48545 +44GT 48546 +44GU 48547 +44GV 48548 +44GW 48549 +44GX 48550 +44GY 48551 +44GZ 48552 +44Ga 48553 +44Gb 48554 +44Gc 48555 +44Gd 48556 +44Ge 48557 +44Gf 48558 +44Gg 48559 +44Gh 48560 +44Gi 48561 +44Gj 48562 +44Gk 48563 +44Gl 48564 +44Gm 48565 +44Gn 48566 +44Go 48567 +44Gp 48568 +44Gq 48569 +44Gr 48570 +44Gs 48571 +44Gt 48572 +44Gu 48573 +44Gv 48574 +44Gw 48575 +44Gx 48576 +44Gy 48577 +44Gz 48578 +44G0 48579 +44G1 48580 +44G2 48581 +44G3 48582 +44G4 48583 +44G5 48584 +44G6 48585 +44G7 48586 +44G8 48587 +44G9 48588 +44G+ 48589 +44G/ 48590 +44KA 48591 +44KB 48592 +44KC 48593 +44KD 48594 +44KE 48595 +44KF 48596 +44KG 48597 +44KH 48598 +44KI 48599 +44KJ 48600 +44KK 48601 +44KL 48602 +44KM 48603 +44KN 48604 +44KP 48605 +44KQ 48606 +44KR 48607 +44KS 48608 +44KT 48609 +44Kd 48610 +44Ke 48611 +44Kh 48612 +44Ki 48613 +44Kj 48614 +44Kk 48615 +44Kl 48616 +44Km 48617 +44Kn 48618 +44Ko 48619 +44Kp 48620 +44Kq 48621 +44Kr 48622 +44Ks 48623 +44Kt 48624 +44Ku 48625 +44Kv 48626 +44Kw 48627 +44Kx 48628 +44Ky 48629 +44Kz 48630 +44K0 48631 +44K1 48632 +44K2 48633 +44K3 48634 +44K4 48635 +44K5 48636 +44K6 48637 +44K7 48638 +44K8 48639 +44K9 48640 +44K+ 48641 +44K/ 48642 +44OA 48643 +44OB 48644 +44OC 48645 +44OD 48646 +44OE 48647 +44OF 48648 +44OG 48649 +44OH 48650 +44OI 48651 +44OJ 48652 +44OK 48653 +44OL 48654 +44OM 48655 +44ON 48656 +44OO 48657 +44OP 48658 +44OQ 48659 +44OR 48660 +44OS 48661 +44OT 48662 +44OU 48663 +44OV 48664 +44OW 48665 +44OX 48666 +44OY 48667 +44OZ 48668 +44Oa 48669 +44Ob 48670 +44Oc 48671 +44Od 48672 +44Oe 48673 +44Of 48674 +44Og 48675 +44Oh 48676 +44Oi 48677 +44Oj 48678 +44Ok 48679 +44Ol 48680 +44Om 48681 +44On 48682 +44Oo 48683 +44Op 48684 +44Oq 48685 +44Or 48686 +44Os 48687 +44Ot 48688 +44Ou 48689 +44Ov 48690 +44Ow 48691 +44Ox 48692 +44Oy 48693 +44Oz 48694 +44O0 48695 +44O1 48696 +44O2 48697 +44O7 48698 +44O8 48699 +44O+ 48700 +45at 48701 +45eO 48702 +46mS 48703 +46mn 48704 +5IGv 48705 +5LiA 48706 +5LiB 48707 +5LiD 48708 +5LiH 48709 +5LiI 48710 +5LiJ 48711 +5LiK 48712 +5LiL 48713 +5LiN 48714 +5LiO 48715 +5LiQ 48716 +5LiR 48717 +5LiT 48718 +5LiU 48719 +5LiV 48720 +5LiW 48721 +5LiX 48722 +5LiY 48723 +5LiZ 48724 +5Lia 48725 +5Lib 48726 +5Lic 48727 +5Lid 48728 +5Lie 48729 +5Lif 48730 +5Lih 48731 +5Lii 48732 +5Lik 48733 +5Lil 48734 +5Lim 48735 +5Lin 48736 +5Lio 48737 +5Liq 48738 +5Lir 48739 +5Lit 48740 +5Liw 48741 +5Liy 48742 +5Li0 48743 +5Li2 48744 +5Li4 48745 +5Li5 48746 +5Li6 48747 +5Li7 48748 +5Li8 48749 +5Li9 48750 +5Li+ 48751 +5LmC 48752 +5LmD 48753 +5LmF 48754 +5LmH 48755 +5LmI 48756 +5LmJ 48757 +5LmL 48758 +5LmM 48759 +5LmN 48760 +5LmO 48761 +5LmP 48762 +5LmQ 48763 +5LmS 48764 +5LmT 48765 +5LmU 48766 +5LmW 48767 +5LmX 48768 +5LmY 48769 +5LmZ 48770 +5Lmc 48771 +5Lmd 48772 +5Lme 48773 +5Lmf 48774 +5Lmg 48775 +5Lmh 48776 +5Lmi 48777 +5Lmm 48778 +5Lmp 48779 +5Lmq 48780 +5Lmw 48781 +5Lmx 48782 +5Lmz 48783 +5Lm4 48784 +5Lm+ 48785 +5LqA 48786 +5LqB 48787 +5LqC 48788 +5LqG 48789 +5LqI 48790 +5LqJ 48791 +5LqL 48792 +5LqM 48793 +5LqN 48794 +5LqO 48795 +5LqP 48796 +5LqR 48797 +5LqS 48798 +5LqT 48799 +5LqU 48800 +5LqV 48801 +5LqY 48802 +5LqZ 48803 +5Lqa 48804 +5Lqb 48805 +5Lqc 48806 +5Lqe 48807 +5Lqf 48808 +5Lqh 48809 +5Lqi 48810 +5Lqk 48811 +5Lql 48812 +5Lqm 48813 +5Lqn 48814 +5Lqo 48815 +5Lqp 48816 +5Lqr 48817 +5Lqs 48818 +5Lqt 48819 +5Lqu 48820 +5Lqw 48821 +5Lqy 48822 +5Lqz 48823 +5Lq1 48824 +5Lq2 48825 +5Lq5 48826 +5Lq6 48827 +5Lq/ 48828 +5LuA 48829 +5LuB 48830 +5LuC 48831 +5LuD 48832 +5LuE 48833 +5LuF 48834 +5LuG 48835 +5LuH 48836 +5LuJ 48837 +5LuK 48838 +5LuL 48839 +5LuN 48840 +5LuO 48841 +5LuP 48842 +5LuR 48843 +5LuT 48844 +5LuU 48845 +5LuV 48846 +5LuW 48847 +5LuX 48848 +5LuY 48849 +5LuZ 48850 +5Lud 48851 +5Lue 48852 +5Luf 48853 +5Luh 48854 +5Luj 48855 +5Luk 48856 +5Lul 48857 +5Luo 48858 +5Luq 48859 +5Lur 48860 +5Lus 48861 +5Lut 48862 +5Luu 48863 +5Luw 48864 +5Luy 48865 +5Luz 48866 +5Lu1 48867 +5Lu2 48868 +5Lu3 48869 +5Lu7 48870 +5Lu9 48871 +5Lu/ 48872 +5LyB 48873 +5LyD 48874 +5LyE 48875 +5LyJ 48876 +5LyK 48877 +5LyL 48878 +5LyN 48879 +5LyO 48880 +5LyP 48881 +5LyQ 48882 +5LyR 48883 +5LyX 48884 +5LyY 48885 +5LyZ 48886 +5Lya 48887 +5Lyb 48888 +5Lyc 48889 +5Lyd 48890 +5Lye 48891 +5Lyf 48892 +5Lyg 48893 +5Lyi 48894 +5Lyk 48895 +5Lyl 48896 +5Lym 48897 +5Lyn 48898 +5Lyq 48899 +5Lyr 48900 +5Lyv 48901 +5Lyw 48902 +5Lyx 48903 +5Lyy 48904 +5Ly0 48905 +5Ly2 48906 +5Ly3 48907 +5Ly4 48908 +5Ly6 48909 +5Ly8 48910 +5Ly9 48911 +5L2D 48912 +5L2G 48913 +5L2H 48914 +5L2I 48915 +5L2J 48916 +5L2N 48917 +5L2O 48918 +5L2P 48919 +5L2Q 48920 +5L2R 48921 +5L2T 48922 +5L2U 48923 +5L2V 48924 +5L2X 48925 +5L2Y 48926 +5L2Z 48927 +5L2a 48928 +5L2b 48929 +5L2c 48930 +5L2d 48931 +5L2e 48932 +5L2f 48933 +5L2g 48934 +5L2i 48935 +5L2j 48936 +5L2k 48937 +5L2l 48938 +5L2p 48939 +5L2s 48940 +5L2v 48941 +5L2w 48942 +5L2z 48943 +5L21 48944 +5L22 48945 +5L23 48946 +5L26 48947 +5L27 48948 +5L28 48949 +5L2+ 48950 +5L2/ 48951 +5L6C 48952 +5L6D 48953 +5L6E 48954 +5L6G 48955 +5L6I 48956 +5L6J 48957 +5L6L 48958 +5L6N 48959 +5L6P 48960 +5L6R 48961 +5L6T 48962 +5L6U 48963 +5L6X 48964 +5L6Y 48965 +5L6b 48966 +5L6d 48967 +5L6g 48968 +5L6h 48969 +5L6j 48970 +5L6l 48971 +5L6m 48972 +5L6n 48973 +5L6o 48974 +5L6p 48975 +5L6q 48976 +5L6s 48977 +5L6t 48978 +5L6u 48979 +5L6v 48980 +5L61 48981 +5L62 48982 +5L63 48983 +5L6/ 48984 +5L+C 48985 +5L+D 48986 +5L+E 48987 +5L+F 48988 +5L+K 48989 +5L+O 48990 +5L+P 48991 +5L+Q 48992 +5L+R 48993 +5L+U 48994 +5L+X 48995 +5L+Y 48996 +5L+a 48997 +5L+b 48998 +5L+c 48999 +5L+d 49000 +5L+e 49001 +5L+f 49002 +5L+g 49003 +5L+h 49004 +5L+i 49005 +5L+j 49006 +5L+k 49007 +5L+m 49008 +5L+o 49009 +5L+p 49010 +5L+q 49011 +5L+s 49012 +5L+t 49013 +5L+u 49014 +5L+v 49015 +5L+x 49016 +5L+z 49017 +5L+1 49018 +5L+2 49019 +5L+4 49020 +5L+6 49021 +5L++ 49022 +5YCF 49023 +5YCG 49024 +5YCJ 49025 +5YCL 49026 +5YCM 49027 +5YCN 49028 +5YCP 49029 +5YCR 49030 +5YCS 49031 +5YCT 49032 +5YCU 49033 +5YCW 49034 +5YCY 49035 +5YCZ 49036 +5YCa 49037 +5YCc 49038 +5YCf 49039 +5YCh 49040 +5YCi 49041 +5YCj 49042 +5YCk 49043 +5YCl 49044 +5YCm 49045 +5YCn 49046 +5YCo 49047 +5YCp 49048 +5YCq 49049 +5YCr 49050 +5YCs 49051 +5YCt 49052 +5YCu 49053 +5YC2 49054 +5YC5 49055 +5YC6 49056 +5YC8 49057 +5YC+ 49058 +5YGB 49059 +5YGD 49060 +5YGH 49061 +5YGI 49062 +5YGJ 49063 +5YGM 49064 +5YGO 49065 +5YGP 49066 +5YGT 49067 +5YGV 49068 +5YGW 49069 +5YGa 49070 +5YGc 49071 +5YGl 49072 +5YGs 49073 +5YGt 49074 +5YGx 49075 +5YGy 49076 +5YG0 49077 +5YG1 49078 +5YG2 49079 +5YG3 49080 +5YG4 49081 +5YG7 49082 +5YG9 49083 +5YG+ 49084 +5YG/ 49085 +5YKA 49086 +5YKF 49087 +5YKI 49088 +5YKN 49089 +5YKR 49090 +5YKV 49091 +5YKY 49092 +5YKZ 49093 +5YKc 49094 +5YKi 49095 +5YKj 49096 +5YKl 49097 +5YKn 49098 +5YKo 49099 +5YKp 49100 +5YKr 49101 +5YKs 49102 +5YKt 49103 +5YKy 49104 +5YKz 49105 +5YK0 49106 +5YK1 49107 +5YK3 49108 +5YK6 49109 +5YK7 49110 +5YK+ 49111 +5YOC 49112 +5YOF 49113 +5YOG 49114 +5YOJ 49115 +5YOK 49116 +5YON 49117 +5YOP 49118 +5YOR 49119 +5YOU 49120 +5YOV 49121 +5YOW 49122 +5YOa 49123 +5YOe 49124 +5YOj 49125 +5YOl 49126 +5YOm 49127 +5YOn 49128 +5YOs 49129 +5YOt 49130 +5YOu 49131 +5YOx 49132 +5YOz 49133 +5YO1 49134 +5YO5 49135 +5YO7 49136 +5YSA 49137 +5YSB 49138 +5YSC 49139 +5YSE 49140 +5YSG 49141 +5YSI 49142 +5YSJ 49143 +5YSL 49144 +5YSS 49145 +5YSU 49146 +5YSV 49147 +5YSY 49148 +5YSa 49149 +5YSf 49150 +5YSh 49151 +5YSq 49152 +5YSy 49153 +5YS3 49154 +5YS6 49155 +5YS8 49156 +5YS/ 49157 +5YWA 49158 +5YWB 49159 +5YWD 49160 +5YWE 49161 +5YWF 49162 +5YWG 49163 +5YWH 49164 +5YWI 49165 +5YWJ 49166 +5YWK 49167 +5YWL 49168 +5YWM 49169 +5YWN 49170 +5YWO 49171 +5YWQ 49172 +5YWR 49173 +5YWS 49174 +5YWU 49175 +5YWV 49176 +5YWW 49177 +5YWa 49178 +5YWc 49179 +5YWi 49180 +5YWl 49181 +5YWn 49182 +5YWo 49183 +5YWp 49184 +5YWq 49185 +5YWr 49186 +5YWs 49187 +5YWt 49188 +5YWu 49189 +5YWw 49190 +5YWx 49191 +5YWz 49192 +5YW0 49193 +5YW1 49194 +5YW2 49195 +5YW3 49196 +5YW4 49197 +5YW5 49198 +5YW7 49199 +5YW8 49200 +5YW9 49201 +5YaA 49202 +5YaC 49203 +5YaF 49204 +5YaG 49205 +5YaH 49206 +5YaI 49207 +5YaJ 49208 +5YaK 49209 +5YaM 49210 +5YaN 49211 +5YaP 49212 +5YaR 49213 +5YaS 49214 +5YaV 49215 +5YaW 49216 +5YaX 49217 +5YaZ 49218 +5Yaa 49219 +5Yab 49220 +5Yac 49221 +5Yag 49222 +5Yai 49223 +5Yak 49224 +5Yal 49225 +5Yam 49226 +5Yan 49227 +5Yao 49228 +5Yap 49229 +5Yaq 49230 +5Yar 49231 +5Yas 49232 +5Yau 49233 +5Yav 49234 +5Yaw 49235 +5Yax 49236 +5Yay 49237 +5Yaz 49238 +5Ya0 49239 +5Ya1 49240 +5Ya2 49241 +5Ya3 49242 +5Ya7 49243 +5Ya8 49244 +5Ya9 49245 +5Ya/ 49246 +5YeA 49247 +5YeE 49248 +5YeG 49249 +5YeH 49250 +5YeI 49251 +5YeJ 49252 +5YeK 49253 +5YeL 49254 +5YeM 49255 +5YeN 49256 +5YeP 49257 +5YeR 49258 +5YeW 49259 +5Yeb 49260 +5Yec 49261 +5Yed 49262 +5Yeg 49263 +5Yeh 49264 +5Yei 49265 +5Yek 49266 +5Yem 49267 +5Yen 49268 +5Yep 49269 +5Yeq 49270 +5Yer 49271 +5Yet 49272 +5Yev 49273 +5Yew 49274 +5Yex 49275 +5Yez 49276 +5Ye1 49277 +5Ye2 49278 +5Ye4 49279 +5Ye5 49280 +5Ye6 49281 +5Ye7 49282 +5Ye8 49283 +5Ye9 49284 +5Ye/ 49285 +5YiA 49286 +5YiB 49287 +5YiD 49288 +5YiG 49289 +5YiH 49290 +5YiI 49291 +5YiK 49292 +5YiN 49293 +5YiO 49294 +5YiR 49295 +5YiS 49296 +5YiU 49297 +5YiX 49298 +5YiY 49299 +5YiZ 49300 +5Yia 49301 +5Yib 49302 +5Yid 49303 +5Yig 49304 +5Yik 49305 +5Yil 49306 +5Yio 49307 +5Yip 49308 +5Yiq 49309 +5Yir 49310 +5Yis 49311 +5Yit 49312 +5Yiu 49313 +5Yiw 49314 +5Yiz 49315 +5Yi2 49316 +5Yi3 49317 +5Yi4 49318 +5Yi5 49319 +5Yi6 49320 +5Yi7 49321 +5Yi8 49322 +5Yi9 49323 +5Yi/ 49324 +5YmA 49325 +5YmB 49326 +5YmC 49327 +5YmD 49328 +5YmF 49329 +5YmH 49330 +5YmK 49331 +5YmL 49332 +5YmM 49333 +5YmN 49334 +5YmO 49335 +5YmQ 49336 +5YmR 49337 +5YmU 49338 +5YmV 49339 +5YmW 49340 +5Ymb 49341 +5Ymc 49342 +5Ymd 49343 +5Yme 49344 +5Ymf 49345 +5Ymh 49346 +5Ymj 49347 +5Ymk 49348 +5Yml 49349 +5Ymn 49350 +5Ymp 49351 +5Ymq 49352 +5Ymv 49353 +5Ymw 49354 +5Ymx 49355 +5Ymy 49356 +5Ym0 49357 +5Ym1 49358 +5Ym9 49359 +5Ym/ 49360 +5YqC 49361 +5YqD 49362 +5YqH 49363 +5YqI 49364 +5YqJ 49365 +5YqN 49366 +5YqP 49367 +5YqR 49368 +5YqS 49369 +5YqT 49370 +5YqU 49371 +5Yqb 49372 +5Yqd 49373 +5Yqe 49374 +5Yqf 49375 +5Yqg 49376 +5Yqh 49377 +5Yqi 49378 +5Yqj 49379 +5Yqo 49380 +5Yqp 49381 +5Yqq 49382 +5Yqr 49383 +5Yqs 49384 +5Yqt 49385 +5Yqx 49386 +5Yqy 49387 +5Yqz 49388 +5Yq0 49389 +5Yq1 49390 +5Yq5 49391 +5Yq8 49392 +5Yq+ 49393 +5Yq/ 49394 +5YuB 49395 +5YuD 49396 +5YuF 49397 +5YuH 49398 +5YuJ 49399 +5YuL 49400 +5YuN 49401 +5YuQ 49402 +5YuS 49403 +5YuV 49404 +5YuW 49405 +5YuX 49406 +5YuY 49407 +5YuZ 49408 +5Yub 49409 +5Yud 49410 +5Yue 49411 +5Yuf 49412 +5Yug 49413 +5Yui 49414 +5Yuj 49415 +5Yuk 49416 +5Yum 49417 +5Yun 49418 +5Yuu 49419 +5Yuw 49420 +5Yuy 49421 +5Yuz 49422 +5Yu1 49423 +5Yu4 49424 +5Yu5 49425 +5Yu6 49426 +5Yu7 49427 +5Yu+ 49428 +5Yu/ 49429 +5YyA 49430 +5YyB 49431 +5YyC 49432 +5YyF 49433 +5YyG 49434 +5YyI 49435 +5YyN 49436 +5YyP 49437 +5YyQ 49438 +5YyV 49439 +5YyW 49440 +5YyX 49441 +5YyZ 49442 +5Yya 49443 +5Yyc 49444 +5Yyd 49445 +5Yyg 49446 +5Yyh 49447 +5Yyj 49448 +5Yyq 49449 +5Yyu 49450 +5Yyv 49451 +5Yyx 49452 +5Yy4 49453 +5Yy5 49454 +5Yy6 49455 +5Yy7 49456 +5Yy8 49457 +5Yy9 49458 +5Yy+ 49459 +5Yy/ 49460 +5Y2A 49461 +5Y2B 49462 +5Y2D 49463 +5Y2F 49464 +5Y2G 49465 +5Y2H 49466 +5Y2I 49467 +5Y2J 49468 +5Y2K 49469 +5Y2N 49470 +5Y2O 49471 +5Y2P 49472 +5Y2R 49473 +5Y2S 49474 +5Y2T 49475 +5Y2U 49476 +5Y2V 49477 +5Y2W 49478 +5Y2X 49479 +5Y2Y 49480 +5Y2a 49481 +5Y2c 49482 +5Y2e 49483 +5Y2f 49484 +5Y2g 49485 +5Y2h 49486 +5Y2i 49487 +5Y2j 49488 +5Y2k 49489 +5Y2m 49490 +5Y2n 49491 +5Y2r 49492 +5Y2s 49493 +5Y2u 49494 +5Y2v 49495 +5Y2w 49496 +5Y2x 49497 +5Y2y 49498 +5Y2z 49499 +5Y20 49500 +5Y21 49501 +5Y23 49502 +5Y24 49503 +5Y26 49504 +5Y27 49505 +5Y2/ 49506 +5Y6C 49507 +5Y6E 49508 +5Y6F 49509 +5Y6G 49510 +5Y6J 49511 +5Y6L 49512 +5Y6M 49513 +5Y6N 49514 +5Y6Q 49515 +5Y6T 49516 +5Y6U 49517 +5Y6V 49518 +5Y6W 49519 +5Y6Y 49520 +5Y6a 49521 +5Y6d 49522 +5Y6f 49523 +5Y6g 49524 +5Y6i 49525 +5Y6j 49526 +5Y6l 49527 +5Y6m 49528 +5Y6o 49529 +5Y6p 49530 +5Y6t 49531 +5Y6u 49532 +5Y6w 49533 +5Y6y 49534 +5Y6z 49535 +5Y62 49536 +5Y67 49537 +5Y6/ 49538 +5Y+B 49539 +5Y+C 49540 +5Y+D 49541 +5Y+G 49542 +5Y+I 49543 +5Y+J 49544 +5Y+K 49545 +5Y+L 49546 +5Y+M 49547 +5Y+N 49548 +5Y+O 49549 +5Y+R 49550 +5Y+U 49551 +5Y+W 49552 +5Y+X 49553 +5Y+Y 49554 +5Y+Z 49555 +5Y+b 49556 +5Y+f 49557 +5Y+g 49558 +5Y+h 49559 +5Y+i 49560 +5Y+j 49561 +5Y+k 49562 +5Y+l 49563 +5Y+m 49564 +5Y+o 49565 +5Y+p 49566 +5Y+q 49567 +5Y+r 49568 +5Y+s 49569 +5Y+t 49570 +5Y+u 49571 +5Y+v 49572 +5Y+w 49573 +5Y+x 49574 +5Y+y 49575 +5Y+z 49576 +5Y+1 49577 +5Y+2 49578 +5Y+3 49579 +5Y+4 49580 +5Y+5 49581 +5Y+6 49582 +5Y+7 49583 +5Y+8 49584 +5Y+9 49585 +5ZCB 49586 +5ZCD 49587 +5ZCE 49588 +5ZCF 49589 +5ZCG 49590 +5ZCH 49591 +5ZCI 49592 +5ZCJ 49593 +5ZCK 49594 +5ZCL 49595 +5ZCM 49596 +5ZCN 49597 +5ZCO 49598 +5ZCP 49599 +5ZCQ 49600 +5ZCR 49601 +5ZCS 49602 +5ZCT 49603 +5ZCU 49604 +5ZCV 49605 +5ZCW 49606 +5ZCX 49607 +5ZCZ 49608 +5ZCb 49609 +5ZCd 49610 +5ZCe 49611 +5ZCf 49612 +5ZCg 49613 +5ZCh 49614 +5ZCj 49615 +5ZCl 49616 +5ZCm 49617 +5ZCn 49618 +5ZCo 49619 +5ZCp 49620 +5ZCr 49621 +5ZCs 49622 +5ZCt 49623 +5ZCu 49624 +5ZCv 49625 +5ZCx 49626 +5ZCy 49627 +5ZCz 49628 +5ZC0 49629 +5ZC1 49630 +5ZC2 49631 +5ZC4 49632 +5ZC5 49633 +5ZC7 49634 +5ZC8 49635 +5ZC9 49636 +5ZC+ 49637 +5ZC/ 49638 +5ZGA 49639 +5ZGC 49640 +5ZGD 49641 +5ZGG 49642 +5ZGI 49643 +5ZGJ 49644 +5ZGK 49645 +5ZGL 49646 +5ZGO 49647 +5ZGQ 49648 +5ZGR 49649 +5ZGS 49650 +5ZGT 49651 +5ZGU 49652 +5ZGV 49653 +5ZGW 49654 +5ZGX 49655 +5ZGY 49656 +5ZGZ 49657 +5ZGb 49658 +5ZGc 49659 +5ZGf 49660 +5ZGi 49661 +5ZGj 49662 +5ZGk 49663 +5ZGm 49664 +5ZGo 49665 +5ZGq 49666 +5ZGr 49667 +5ZGv 49668 +5ZGw 49669 +5ZGx 49670 +5ZGy 49671 +5ZGz 49672 +5ZG1 49673 +5ZG2 49674 +5ZG3 49675 +5ZG4 49676 +5ZG7 49677 +5ZG8 49678 +5ZG9 49679 +5ZKA 49680 +5ZKB 49681 +5ZKC 49682 +5ZKE 49683 +5ZKG 49684 +5ZKJ 49685 +5ZKL 49686 +5ZKM 49687 +5ZKO 49688 +5ZKP 49689 +5ZKQ 49690 +5ZKS 49691 +5ZKU 49692 +5ZKV 49693 +5ZKW 49694 +5ZKX 49695 +5ZKY 49696 +5ZKZ 49697 +5ZKa 49698 +5ZKb 49699 +5ZKd 49700 +5ZKj 49701 +5ZKk 49702 +5ZKm 49703 +5ZKn 49704 +5ZKo 49705 +5ZKp 49706 +5ZKq 49707 +5ZKr 49708 +5ZKs 49709 +5ZKt 49710 +5ZKv 49711 +5ZKx 49712 +5ZKy 49713 +5ZKz 49714 +5ZK0 49715 +5ZK1 49716 +5ZK2 49717 +5ZK3 49718 +5ZK4 49719 +5ZK5 49720 +5ZK7 49721 +5ZK9 49722 +5ZK+ 49723 +5ZK/ 49724 +5ZOA 49725 +5ZOB 49726 +5ZOC 49727 +5ZOD 49728 +5ZOE 49729 +5ZOG 49730 +5ZOH 49731 +5ZOI 49732 +5ZOJ 49733 +5ZOL 49734 +5ZOM 49735 +5ZON 49736 +5ZOO 49737 +5ZOP 49738 +5ZOQ 49739 +5ZOR 49740 +5ZOS 49741 +5ZOT 49742 +5ZOU 49743 +5ZOV 49744 +5ZOW 49745 +5ZOX 49746 +5ZOY 49747 +5ZOZ 49748 +5ZOa 49749 +5ZOc 49750 +5ZOd 49751 +5ZOe 49752 +5ZOf 49753 +5ZOg 49754 +5ZOh 49755 +5ZOl 49756 +5ZOm 49757 +5ZOn 49758 +5ZOo 49759 +5ZOp 49760 +5ZOq 49761 +5ZOt 49762 +5ZOu 49763 +5ZOy 49764 +5ZO6 49765 +5ZO8 49766 +5ZO9 49767 +5ZSB 49768 +5ZSE 49769 +5ZSG 49770 +5ZSH 49771 +5ZSJ 49772 +5ZSP 49773 +5ZSQ 49774 +5ZSR 49775 +5ZSU 49776 +5ZSW 49777 +5ZSb 49778 +5ZSe 49779 +5ZSg 49780 +5ZSi 49781 +5ZSj 49782 +5ZSk 49783 +5ZSn 49784 +5ZSq 49785 +5ZSs 49786 +5ZSu 49787 +5ZSv 49788 +5ZSw 49789 +5ZSx 49790 +5ZSz 49791 +5ZS1 49792 +5ZS3 49793 +5ZS4 49794 +5ZS7 49795 +5ZS8 49796 +5ZS+ 49797 +5ZS/ 49798 +5ZWA 49799 +5ZWB 49800 +5ZWC 49801 +5ZWD 49802 +5ZWE 49803 +5ZWG 49804 +5ZWJ 49805 +5ZWK 49806 +5ZWL 49807 +5ZWP 49808 +5ZWQ 49809 +5ZWT 49810 +5ZWV 49811 +5ZWW 49812 +5ZWc 49813 +5ZWe 49814 +5ZWf 49815 +5ZWh 49816 +5ZWk 49817 +5ZWl 49818 +5ZWm 49819 +5ZWn 49820 +5ZWp 49821 +5ZWq 49822 +5ZWr 49823 +5ZWs 49824 +5ZWt 49825 +5ZWu 49826 +5ZWv 49827 +5ZWw 49828 +5ZWx 49829 +5ZWy 49830 +5ZW1 49831 +5ZW2 49832 +5ZW3 49833 +5ZW4 49834 +5ZW7 49835 +5ZW8 49836 +5ZW+ 49837 +5ZaA 49838 +5ZaB 49839 +5ZaC 49840 +5ZaD 49841 +5ZaE 49842 +5ZaG 49843 +5ZaH 49844 +5ZaI 49845 +5ZaJ 49846 +5ZaK 49847 +5ZaL 49848 +5ZaO 49849 +5ZaP 49850 +5ZaQ 49851 +5ZaR 49852 +5ZaS 49853 +5ZaT 49854 +5ZaU 49855 +5ZaY 49856 +5ZaZ 49857 +5Zaa 49858 +5Zab 49859 +5Zac 49860 +5Zad 49861 +5Zaf 49862 +5Zak 49863 +5Zan 49864 +5Zao 49865 +5Zap 49866 +5Zaq 49867 +5Zar 49868 +5Zas 49869 +5Zau 49870 +5Zaw 49871 +5Zax 49872 +5Zay 49873 +5Zaz 49874 +5Za1 49875 +5Za2 49876 +5Za3 49877 +5Za5 49878 +5Za6 49879 +5Za7 49880 +5Za9 49881 +5Za+ 49882 +5ZeE 49883 +5ZeF 49884 +5ZeG 49885 +5ZeH 49886 +5ZeJ 49887 +5ZeM 49888 +5ZeN 49889 +5ZeO 49890 +5ZeQ 49891 +5ZeR 49892 +5ZeS 49893 +5ZeT 49894 +5ZeU 49895 +5ZeW 49896 +5ZeZ 49897 +5Zea 49898 +5Zeb 49899 +5Zec 49900 +5Zed 49901 +5Zee 49902 +5Zef 49903 +5Zeh 49904 +5Zej 49905 +5Zek 49906 +5Zel 49907 +5Zem 49908 +5Zeo 49909 +5Zeq 49910 +5Zer 49911 +5Zes 49912 +5Zeu 49913 +5Zev 49914 +5Zew 49915 +5Zex 49916 +5Zey 49917 +5Zez 49918 +5Ze1 49919 +5Ze2 49920 +5Ze3 49921 +5Ze7 49922 +5Ze9 49923 +5Ze+ 49924 +5ZiA 49925 +5ZiB 49926 +5ZiF 49927 +5ZiG 49928 +5ZiI 49929 +5ZiJ 49930 +5ZiM 49931 +5ZiO 49932 +5ZiP 49933 +5ZiU 49934 +5ZiW 49935 +5ZiX 49936 +5ZiY 49937 +5Zia 49938 +5Zib 49939 +5Zie 49940 +5Zif 49941 +5Zih 49942 +5Zii 49943 +5Zij 49944 +5Zik 49945 +5Zil 49946 +5Zin 49947 +5Zip 49948 +5Zis 49949 +5Zit 49950 +5Ziv 49951 +5Ziw 49952 +5Zix 49953 +5Ziy 49954 +5Zi0 49955 +5Zi2 49956 +5Zi4 49957 +5Zi5 49958 +5Zi7 49959 +5Zi/ 49960 +5ZmC 49961 +5ZmD 49962 +5ZmM 49963 +5ZmN 49964 +5ZmO 49965 +5ZmT 49966 +5ZmU 49967 +5ZmX 49968 +5ZmY 49969 +5ZmZ 49970 +5Zmb 49971 +5Zmc 49972 +5Zmg 49973 +5Zmi 49974 +5Zmk 49975 +5Zmo 49976 +5Zmp 49977 +5Zmq 49978 +5Zmr 49979 +5Zms 49980 +5Zmx 49981 +5Zm0 49982 +5Zm2 49983 +5Zm4 49984 +5Zm5 49985 +5Zm6 49986 +5Zm7 49987 +5Zm8 49988 +5ZqA 49989 +5ZqF 49990 +5ZqG 49991 +5ZqH 49992 +5ZqK 49993 +5ZqO 49994 +5ZqP 49995 +5ZqQ 49996 +5ZqS 49997 +5ZqT 49998 +5ZqU 49999 +5ZqV 50000 +5ZqX 50001 +5Zqc 50002 +5Zqf 50003 +5Zqg 50004 +5Zqi 50005 +5Zqj 50006 +5Zql 50007 +5Zqo 50008 +5Zqp 50009 +5Zqt 50010 +5Zqu 50011 +5Zqv 50012 +5Zq0 50013 +5Zq2 50014 +5Zq3 50015 +5Zq8 50016 +5ZuA 50017 +5ZuB 50018 +5ZuC 50019 +5ZuD 50020 +5ZuI 50021 +5ZuJ 50022 +5ZuK 50023 +5ZuN 50024 +5ZuO 50025 +5ZuR 50026 +5ZuU 50027 +5ZuW 50028 +5ZuX 50029 +5Zua 50030 +5Zub 50031 +5Zud 50032 +5Zue 50033 +5Zuf 50034 +5Zug 50035 +5Zuh 50036 +5Zui 50037 +5Zuj 50038 +5Zuk 50039 +5Zun 50040 +5Zuo 50041 +5Zur 50042 +5Zut 50043 +5Zuu 50044 +5Zuv 50045 +5Zuw 50046 +5Zux 50047 +5Zuy 50048 +5Zuz 50049 +5Zu0 50050 +5Zu1 50051 +5Zu3 50052 +5Zu5 50053 +5Zu6 50054 +5Zu9 50055 +5Zu+ 50056 +5Zu/ 50057 +5ZyA 50058 +5ZyD 50059 +5ZyE 50060 +5ZyG 50061 +5ZyI 50062 +5ZyJ 50063 +5ZyK 50064 +5ZyL 50065 +5ZyN 50066 +5ZyP 50067 +5ZyS 50068 +5ZyT 50069 +5ZyW 50070 +5ZyY 50071 +5Zyc 50072 +5Zyf 50073 +5Zyj 50074 +5Zym 50075 +5Zyn 50076 +5Zyo 50077 +5Zyp 50078 +5Zyq 50079 +5Zys 50080 +5Zyt 50081 +5Zyu 50082 +5Zyv 50083 +5Zyw 50084 +5Zyz 50085 +5Zy3 50086 +5Zy5 50087 +5Zy6 50088 +5Zy7 50089 +5Zy+ 50090 +5Z2A 50091 +5Z2C 50092 +5Z2H 50093 +5Z2K 50094 +5Z2N 50095 +5Z2O 50096 +5Z2P 50097 +5Z2Q 50098 +5Z2R 50099 +5Z2S 50100 +5Z2X 50101 +5Z2a 50102 +5Z2b 50103 +5Z2c 50104 +5Z2d 50105 +5Z2e 50106 +5Z2f 50107 +5Z2g 50108 +5Z2h 50109 +5Z2k 50110 +5Z2m 50111 +5Z2o 50112 +5Z2p 50113 +5Z2q 50114 +5Z2t 50115 +5Z2u 50116 +5Z2v 50117 +5Z2z 50118 +5Z23 50119 +5Z27 50120 +5Z28 50121 +5Z6C 50122 +5Z6D 50123 +5Z6E 50124 +5Z6F 50125 +5Z6G 50126 +5Z6H 50127 +5Z6I 50128 +5Z6L 50129 +5Z6M 50130 +5Z6N 50131 +5Z6S 50132 +5Z6T 50133 +5Z6V 50134 +5Z6X 50135 +5Z6a 50136 +5Z6b 50137 +5Z6d 50138 +5Z6g 50139 +5Z6h 50140 +5Z6i 50141 +5Z6j 50142 +5Z6k 50143 +5Z6m 50144 +5Z6n 50145 +5Z6p 50146 +5Z6q 50147 +5Z6r 50148 +5Z6t 50149 +5Z6u 50150 +5Z6v 50151 +5Z6w 50152 +5Z6x 50153 +5Z6z 50154 +5Z60 50155 +5Z61 50156 +5Z64 50157 +5Z+A 50158 +5Z+C 50159 +5Z+D 50160 +5Z+G 50161 +5Z+H 50162 +5Z+L 50163 +5Z+M 50164 +5Z+O 50165 +5Z+P 50166 +5Z+S 50167 +5Z+T 50168 +5Z+U 50169 +5Z+V 50170 +5Z+W 50171 +5Z+X 50172 +5Z+Z 50173 +5Z+a 50174 +5Z+c 50175 +5Z+d 50176 +5Z+f 50177 +5Z+g 50178 +5Z+j 50179 +5Z+k 50180 +5Z+q 50181 +5Z+t 50182 +5Z+y 50183 +5Z+0 50184 +5Z+1 50185 +5Z+3 50186 +5Z+4 50187 +5Z+5 50188 +5Z+6 50189 +5Z+8 50190 +5Z+9 50191 +5aCA 50192 +5aCC 50193 +5aCD 50194 +5aCF 50195 +5aCG 50196 +5aCH 50197 +5aCK 50198 +5aCL 50199 +5aCM 50200 +5aCN 50201 +5aCO 50202 +5aCQ 50203 +5aCR 50204 +5aCV 50205 +5aCZ 50206 +5aCd 50207 +5aCe 50208 +5aCg 50209 +5aCh 50210 +5aCi 50211 +5aCk 50212 +5aCo 50213 +5aCq 50214 +5aCv 50215 +5aCw 50216 +5aCx 50217 +5aC0 50218 +5aC1 50219 +5aC6 50220 +5aC8 50221 +5aGA 50222 +5aGB 50223 +5aGE 50224 +5aGK 50225 +5aGL 50226 +5aGM 50227 +5aGN 50228 +5aGR 50229 +5aGS 50230 +5aGU 50231 +5aGX 50232 +5aGY 50233 +5aGZ 50234 +5aGa 50235 +5aGe 50236 +5aGi 50237 +5aGp 50238 +5aGr 50239 +5aGs 50240 +5aGy 50241 +5aG1 50242 +5aG5 50243 +5aG9 50244 +5aG+ 50245 +5aKA 50246 +5aKB 50247 +5aKD 50248 +5aKF 50249 +5aKJ 50250 +5aKK 50251 +5aKO 50252 +5aKS 50253 +5aKT 50254 +5aKV 50255 +5aKX 50256 +5aKZ 50257 +5aKa 50258 +5aKc 50259 +5aKe 50260 +5aKf 50261 +5aKh 50262 +5aKo 50263 +5aKp 50264 +5aKr 50265 +5aKu 50266 +5aKz 50267 +5aK5 50268 +5aK6 50269 +5aK7 50270 +5aK8 50271 +5aK+ 50272 +5aOB 50273 +5aOF 50274 +5aOH 50275 +5aOK 50276 +5aOM 50277 +5aOR 50278 +5aOT 50279 +5aOV 50280 +5aOX 50281 +5aOY 50282 +5aOc 50283 +5aOe 50284 +5aOf 50285 +5aOk 50286 +5aOp 50287 +5aOr 50288 +5aOs 50289 +5aOu 50290 +5aOv 50291 +5aOw 50292 +5aOx 50293 +5aOy 50294 +5aOz 50295 +5aO2 50296 +5aO3 50297 +5aO4 50298 +5aO5 50299 +5aO6 50300 +5aO7 50301 +5aO9 50302 +5aSE 50303 +5aSH 50304 +5aSJ 50305 +5aSK 50306 +5aSM 50307 +5aSN 50308 +5aSP 50309 +5aSQ 50310 +5aSU 50311 +5aSV 50312 +5aSW 50313 +5aSZ 50314 +5aSa 50315 +5aSb 50316 +5aSc 50317 +5aSf 50318 +5aSg 50319 +5aSi 50320 +5aSk 50321 +5aSl 50322 +5aSn 50323 +5aSp 50324 +5aSq 50325 +5aSr 50326 +5aSs 50327 +5aSt 50328 +5aSu 50329 +5aSv 50330 +5aSx 50331 +5aS0 50332 +5aS3 50333 +5aS4 50334 +5aS5 50335 +5aS6 50336 +5aS8 50337 +5aS+ 50338 +5aWB 50339 +5aWC 50340 +5aWE 50341 +5aWH 50342 +5aWI 50343 +5aWJ 50344 +5aWL 50345 +5aWM 50346 +5aWO 50347 +5aWP 50348 +5aWQ 50349 +5aWR 50350 +5aWU 50351 +5aWV 50352 +5aWW 50353 +5aWX 50354 +5aWY 50355 +5aWa 50356 +5aWg 50357 +5aWi 50358 +5aWl 50359 +5aWn 50360 +5aWo 50361 +5aWq 50362 +5aWs 50363 +5aWt 50364 +5aWu 50365 +5aWz 50366 +5aW0 50367 +5aW2 50368 +5aW4 50369 +5aW5 50370 +5aW9 50371 +5aaB 50372 +5aaC 50373 +5aaD 50374 +5aaE 50375 +5aaG 50376 +5aaH 50377 +5aaI 50378 +5aaK 50379 +5aaN 50380 +5aaS 50381 +5aaT 50382 +5aaW 50383 +5aaX 50384 +5aaZ 50385 +5aad 50386 +5aae 50387 +5aaj 50388 +5aak 50389 +5aal 50390 +5aan 50391 +5aao 50392 +5aap 50393 +5aaq 50394 +5aar 50395 +5aas 50396 +5aau 50397 +5aav 50398 +5aax 50399 +5aay 50400 +5aa5 50401 +5aa6 50402 +5aa7 50403 +5aa9 50404 +5aa+ 50405 +5aeG 50406 +5aeJ 50407 +5aeK 50408 +5aeL 50409 +5aeN 50410 +5aeQ 50411 +5aeR 50412 +5aeS 50413 +5aeT 50414 +5aeU 50415 +5aeX 50416 +5aeY 50417 +5aea 50418 +5aec 50419 +5aed 50420 +5aej 50421 +5aek 50422 +5ael 50423 +5aem 50424 +5aeo 50425 +5aep 50426 +5aeq 50427 +5aer 50428 +5aes 50429 +5aeu 50430 +5ae2 50431 +5ae4 50432 +5ae5 50433 +5ae6 50434 +5ae7 50435 +5ae/ 50436 +5aiB 50437 +5aiD 50438 +5aiE 50439 +5aiF 50440 +5aiG 50441 +5aiH 50442 +5aiI 50443 +5aiJ 50444 +5aiM 50445 +5aiR 50446 +5aiT 50447 +5aiY 50448 +5aia 50449 +5aib 50450 +5aic 50451 +5aif 50452 +5aig 50453 +5aih 50454 +5aij 50455 +5ail 50456 +5aip 50457 +5aiv 50458 +5aix 50459 +5aiy 50460 +5ai0 50461 +5ai2 50462 +5ai8 50463 +5ai/ 50464 +5amA 50465 +5amB 50466 +5amE 50467 +5amG 50468 +5amJ 50469 +5amK 50470 +5amM 50471 +5amV 50472 +5ama 50473 +5ami 50474 +5amm 50475 +5amn 50476 +5amq 50477 +5ams 50478 +5am0 50479 +5am1 50480 +5am2 50481 +5am3 50482 +5am6 50483 +5am/ 50484 +5aqS 50485 +5aqW 50486 +5aqa 50487 +5aqb 50488 +5aqc 50489 +5aqe 50490 +5aqq 50491 +5aqx 50492 +5aqy 50493 +5aqz 50494 +5aq1 50495 +5aq8 50496 +5aq9 50497 +5aq+ 50498 +5auB 50499 +5auC 50500 +5auE 50501 +5auJ 50502 +5auL 50503 +5auM 50504 +5auS 50505 +5auU 50506 +5auW 50507 +5auX 50508 +5auY 50509 +5aua 50510 +5auh 50511 +5auj 50512 +5auk 50513 +5aum 50514 +5aup 50515 +5auq 50516 +5aur 50517 +5auw 50518 +5aux 50519 +5auy 50520 +5au1 50521 +5au7 50522 +5ayF 50523 +5ayJ 50524 +5ayL 50525 +5ayM 50526 +5ayW 50527 +5ayX 50528 +5ayb 50529 +5ayi 50530 +5ayl 50531 +5ayq 50532 +5ays 50533 +5ayw 50534 +5ayy 50535 +5ay0 50536 +5ay2 50537 +5ay3 50538 +5ay4 50539 +5a2A 50540 +5a2D 50541 +5a2Q 50542 +5a2R 50543 +5a2T 50544 +5a2U 50545 +5a2V 50546 +5a2W 50547 +5a2X 50548 +5a2Y 50549 +5a2Z 50550 +5a2a 50551 +5a2b 50552 +5a2c 50553 +5a2d 50554 +5a2f 50555 +5a2i 50556 +5a2j 50557 +5a2k 50558 +5a2l 50559 +5a2m 50560 +5a2p 50561 +5a2q 50562 +5a2r 50563 +5a2s 50564 +5a2t 50565 +5a2w 50566 +5a2x 50567 +5a2z 50568 +5a21 50569 +5a24 50570 +5a26 50571 +5a29 50572 +5a6B 50573 +5a6D 50574 +5a6E 50575 +5a6F 50576 +5a6H 50577 +5a6I 50578 +5a6J 50579 +5a6L 50580 +5a6M 50581 +5a6N 50582 +5a6P 50583 +5a6T 50584 +5a6V 50585 +5a6X 50586 +5a6Y 50587 +5a6Z 50588 +5a6a 50589 +5a6b 50590 +5a6c 50591 +5a6d 50592 +5a6e 50593 +5a6f 50594 +5a6g 50595 +5a6h 50596 +5a6i 50597 +5a6j 50598 +5a6k 50599 +5a6l 50600 +5a6m 50601 +5a6q 50602 +5a6r 50603 +5a6u 50604 +5a6w 50605 +5a6z 50606 +5a60 50607 +5a61 50608 +5a62 50609 +5a64 50610 +5a65 50611 +5a69 50612 +5a6+ 50613 +5a6/ 50614 +5a+C 50615 +5a+E 50616 +5a+F 50617 +5a+G 50618 +5a+H 50619 +5a+M 50620 +5a+Q 50621 +5a+S 50622 +5a+T 50623 +5a+U 50624 +5a+V 50625 +5a+W 50626 +5a+b 50627 +5a+d 50628 +5a+e 50629 +5a+f 50630 +5a+g 50631 +5a+h 50632 +5a+i 50633 +5a+k 50634 +5a+l 50635 +5a+m 50636 +5a+n 50637 +5a+o 50638 +5a+p 50639 +5a+r 50640 +5a+s 50641 +5a+u 50642 +5a+w 50643 +5a+z 50644 +5a+1 50645 +5a+2 50646 +5a+4 50647 +5a+5 50648 +5a+6 50649 +5a+7 50650 +5a+8 50651 +5a++ 50652 +5a+/ 50653 +5bCB 50654 +5bCC 50655 +5bCE 50656 +5bCF 50657 +5bCG 50658 +5bCH 50659 +5bCI 50660 +5bCJ 50661 +5bCK 50662 +5bCL 50663 +5bCN 50664 +5bCO 50665 +5bCP 50666 +5bCR 50667 +5bCT 50668 +5bCU 50669 +5bCV 50670 +5bCW 50671 +5bCY 50672 +5bCZ 50673 +5bCa 50674 +5bCd 50675 +5bCe 50676 +5bCg 50677 +5bCh 50678 +5bCi 50679 +5bCk 50680 +5bCl 50681 +5bCn 50682 +5bCo 50683 +5bCq 50684 +5bCs 50685 +5bCt 50686 +5bCw 50687 +5bCx 50688 +5bC0 50689 +5bC3 50690 +5bC4 50691 +5bC5 50692 +5bC6 50693 +5bC7 50694 +5bC8 50695 +5bC9 50696 +5bC+ 50697 +5bC/ 50698 +5bGA 50699 +5bGB 50700 +5bGC 50701 +5bGE 50702 +5bGF 50703 +5bGG 50704 +5bGI 50705 +5bGJ 50706 +5bGK 50707 +5bGL 50708 +5bGM 50709 +5bGN 50710 +5bGO 50711 +5bGP 50712 +5bGQ 50713 +5bGR 50714 +5bGT 50715 +5bGV 50716 +5bGY 50717 +5bGZ 50718 +5bGc 50719 +5bGe 50720 +5bGg 50721 +5bGh 50722 +5bGi 50723 +5bGj 50724 +5bGk 50725 +5bGl 50726 +5bGm 50727 +5bGs 50728 +5bGv 50729 +5bGx 50730 +5bG5 50731 +5bG6 50732 +5bG/ 50733 +5bKA 50734 +5bKB 50735 +5bKC 50736 +5bKI 50737 +5bKM 50738 +5bKN 50739 +5bKQ 50740 +5bKR 50741 +5bKU 50742 +5bKV 50743 +5bKW 50744 +5bKX 50745 +5bKY 50746 +5bKZ 50747 +5bKa 50748 +5bKb 50749 +5bKc 50750 +5bKe 50751 +5bKh 50752 +5bKi 50753 +5bKo 50754 +5bKp 50755 +5bKr 50756 +5bKs 50757 +5bKt 50758 +5bKx 50759 +5bKz 50760 +5bK1 50761 +5bK3 50762 +5bK4 50763 +5bK7 50764 +5bK8 50765 +5bK9 50766 +5bK/ 50767 +5bOB 50768 +5bOE 50769 +5bOF 50770 +5bOH 50771 +5bOL 50772 +5bOS 50773 +5bOZ 50774 +5bOg 50775 +5bOh 50776 +5bOj 50777 +5bOk 50778 +5bOl 50779 +5bOm 50780 +5bOo 50781 +5bOq 50782 +5bOt 50783 +5bOv 50784 +5bOw 50785 +5bO2 50786 +5bO7 50787 +5bO9 50788 +5bSC 50789 +5bSD 50790 +5bSG 50791 +5bSH 50792 +5bSL 50793 +5bSO 50794 +5bSQ 50795 +5bSR 50796 +5bSS 50797 +5bSU 50798 +5bSV 50799 +5bSW 50800 +5bSX 50801 +5bSZ 50802 +5bSa 50803 +5bSb 50804 +5bSe 50805 +5bSf 50806 +5bSi 50807 +5bSk 50808 +5bSm 50809 +5bSn 50810 +5bSp 50811 +5bSt 50812 +5bSu 50813 +5bS0 50814 +5bS9 50815 +5bS+ 50816 +5bWC 50817 +5bWH 50818 +5bWK 50819 +5bWL 50820 +5bWM 50821 +5bWO 50822 +5bWQ 50823 +5bWS 50824 +5bWW 50825 +5bWY 50826 +5bWb 50827 +5bWc 50828 +5bWo 50829 +5bWp 50830 +5bWq 50831 +5bWr 50832 +5bWs 50833 +5bWv 50834 +5bW0 50835 +5baC 50836 +5baD 50837 +5baE 50838 +5baH 50839 +5baL 50840 +5baM 50841 +5baT 50842 +5baW 50843 +5baZ 50844 +5bad 50845 +5bas 50846 +5bau 50847 +5ba3 50848 +5ba6 50849 +5ba8 50850 +5ba9 50851 +5beC 50852 +5beF 50853 +5beH 50854 +5beJ 50855 +5beM 50856 +5beN 50857 +5beS 50858 +5beT 50859 +5beW 50860 +5bed 50861 +5bee 50862 +5beh 50863 +5bei 50864 +5bej 50865 +5bel 50866 +5bem 50867 +5ben 50868 +5beo 50869 +5bep 50870 +5ber 50871 +5beu 50872 +5bev 50873 +5bex 50874 +5bey 50875 +5bez 50876 +5be0 50877 +5be1 50878 +5be3 50879 +5be6 50880 +5be7 50881 +5be9 50882 +5be+ 50883 +5be/ 50884 +5biA 50885 +5biB 50886 +5biC 50887 +5biD 50888 +5biF 50889 +5biG 50890 +5biI 50891 +5biM 50892 +5biP 50893 +5biQ 50894 +5biR 50895 +5biU 50896 +5biV 50897 +5biW 50898 +5biY 50899 +5biZ 50900 +5bia 50901 +5bib 50902 +5bic 50903 +5bid 50904 +5bil 50905 +5bim 50906 +5bin 50907 +5bir 50908 +5bit 50909 +5biu 50910 +5biv 50911 +5biw 50912 +5biz 50913 +5bi2 50914 +5bi3 50915 +5bi4 50916 +5bi7 50917 +5bi8 50918 +5bi9 50919 +5bmA 50920 +5bmC 50921 +5bmE 50922 +5bmF 50923 +5bmH 50924 +5bmM 50925 +5bmU 50926 +5bmV 50927 +5bmX 50928 +5bmb 50929 +5bmf 50930 +5bmh 50931 +5bmi 50932 +5bmj 50933 +5bmr 50934 +5bmy 50935 +5bmz 50936 +5bm0 50937 +5bm2 50938 +5bm3 50939 +5bm4 50940 +5bm5 50941 +5bm6 50942 +5bm7 50943 +5bm8 50944 +5bm9 50945 +5bm+ 50946 +5bm/ 50947 +5bqB 50948 +5bqD 50949 +5bqE 50950 +5bqF 50951 +5bqG 50952 +5bqH 50953 +5bqK 50954 +5bqP 50955 +5bqQ 50956 +5bqR 50957 +5bqT 50958 +5bqU 50959 +5bqV 50960 +5bqW 50961 +5bqX 50962 +5bqZ 50963 +5bqa 50964 +5bqc 50965 +5bqe 50966 +5bqf 50967 +5bqg 50968 +5bqm 50969 +5bqn 50970 +5bqr 50971 +5bqt 50972 +5bq1 50973 +5bq2 50974 +5bq3 50975 +5bq4 50976 +5bq5 50977 +5bq+ 50978 +5buB 50979 +5buC 50980 +5buD 50981 +5buG 50982 +5buI 50983 +5buJ 50984 +5buK 50985 +5buL 50986 +5buR 50987 +5buT 50988 +5buW 50989 +5bua 50990 +5bub 50991 +5bud 50992 +5buf 50993 +5bug 50994 +5bui 50995 +5buj 50996 +5buo 50997 +5buq 50998 +5bus 50999 +5buz 51000 +5bu0 51001 +5bu2 51002 +5bu3 51003 +5bu6 51004 +5bu7 51005 +5bu8 51006 +5bu/ 51007 +5byA 51008 +5byB 51009 +5byC 51010 +5byD 51011 +5byE 51012 +5byH 51013 +5byI 51014 +5byJ 51015 +5byK 51016 +5byL 51017 +5byP 51018 +5byQ 51019 +5byR 51020 +5byT 51021 +5byU 51022 +5byV 51023 +5byW 51024 +5byX 51025 +5byY 51026 +5byb 51027 +5byf 51028 +5byg 51029 +5byi 51030 +5byl 51031 +5bym 51032 +5byn 51033 +5byo 51034 +5byp 51035 +5byt 51036 +5byv 51037 +5byx 51038 +5by1 51039 +5by3 51040 +5by5 51041 +5by6 51042 +5by8 51043 +5by+ 51044 +5b2A 51045 +5b2F 51046 +5b2G 51047 +5b2I 51048 +5b2K 51049 +5b2M 51050 +5b2O 51051 +5b2R 51052 +5b2S 51053 +5b2T 51054 +5b2V 51055 +5b2W 51056 +5b2X 51057 +5b2Y 51058 +5b2Z 51059 +5b2d 51060 +5b2f 51061 +5b2h 51062 +5b2i 51063 +5b2k 51064 +5b2l 51065 +5b2m 51066 +5b2n 51067 +5b2p 51068 +5b2q 51069 +5b2r 51070 +5b2s 51071 +5b2t 51072 +5b2w 51073 +5b2x 51074 +5b2z 51075 +5b23 51076 +5b25 51077 +5b26 51078 +5b27 51079 +5b28 51080 +5b2/ 51081 +5b6A 51082 +5b6B 51083 +5b6C 51084 +5b6D 51085 +5b6E 51086 +5b6F 51087 +5b6H 51088 +5b6I 51089 +5b6J 51090 +5b6K 51091 +5b6L 51092 +5b6M 51093 +5b6N 51094 +5b6Q 51095 +5b6R 51096 +5b6S 51097 +5b6T 51098 +5b6V 51099 +5b6X 51100 +5b6Y 51101 +5b6Z 51102 +5b6c 51103 +5b6e 51104 +5b6g 51105 +5b6h 51106 +5b6o 51107 +5b6p 51108 +5b6q 51109 +5b6s 51110 +5b6t 51111 +5b6u 51112 +5b6z 51113 +5b60 51114 +5b61 51115 +5b63 51116 +5b65 51117 +5b68 51118 +5b69 51119 +5b+D 51120 +5b+E 51121 +5b+F 51122 +5b+G 51123 +5b+L 51124 +5b+M 51125 +5b+N 51126 +5b+P 51127 +5b+Q 51128 +5b+R 51129 +5b+S 51130 +5b+W 51131 +5b+X 51132 +5b+Y 51133 +5b+Z 51134 +5b+c 51135 +5b+d 51136 +5b+g 51137 +5b+h 51138 +5b+k 51139 +5b+n 51140 +5b+q 51141 +5b+r 51142 +5b+w 51143 +5b+x 51144 +5b+1 51145 +5b+4 51146 +5b+7 51147 +5b+9 51148 +5b++ 51149 +5b+/ 51150 +5oCA 51151 +5oCB 51152 +5oCC 51153 +5oCD 51154 +5oCE 51155 +5oCF 51156 +5oCG 51157 +5oCN 51158 +5oCO 51159 +5oCP 51160 +5oCS 51161 +5oCU 51162 +5oCV 51163 +5oCW 51164 +5oCX 51165 +5oCZ 51166 +5oCb 51167 +5oCc 51168 +5oCd 51169 +5oCg 51170 +5oCh 51171 +5oCl 51172 +5oCm 51173 +5oCn 51174 +5oCo 51175 +5oCp 51176 +5oCq 51177 +5oCr 51178 +5oCv 51179 +5oCx 51180 +5oC1 51181 +5oC5 51182 +5oC7 51183 +5oC8 51184 +5oC/ 51185 +5oGB 51186 +5oGC 51187 +5oGD 51188 +5oGG 51189 +5oGL 51190 +5oGN 51191 +5oGQ 51192 +5oGS 51193 +5oGT 51194 +5oGV 51195 +5oGZ 51196 +5oGa 51197 +5oGf 51198 +5oGi 51199 +5oGj 51200 +5oGk 51201 +5oGl 51202 +5oGo 51203 +5oGp 51204 +5oGq 51205 +5oGr 51206 +5oGs 51207 +5oGt 51208 +5oGv 51209 +5oGw 51210 +5oGz 51211 +5oG1 51212 +5oG2 51213 +5oG4 51214 +5oG5 51215 +5oG6 51216 +5oG7 51217 +5oG8 51218 +5oG9 51219 +5oG/ 51220 +5oKD 51221 +5oKE 51222 +5oKF 51223 +5oKG 51224 +5oKJ 51225 +5oKL 51226 +5oKM 51227 +5oKN 51228 +5oKS 51229 +5oKU 51230 +5oKV 51231 +5oKW 51232 +5oKa 51233 +5oKb 51234 +5oKd 51235 +5oKf 51236 +5oKg 51237 +5oKj 51238 +5oKm 51239 +5oKn 51240 +5oKo 51241 +5oKp 51242 +5oKq 51243 +5oKr 51244 +5oKs 51245 +5oKt 51246 +5oKv 51247 +5oKx 51248 +5oKy 51249 +5oKz 51250 +5oK0 51251 +5oK1 51252 +5oK2 51253 +5oK4 51254 +5oK7 51255 +5oK8 51256 +5oK9 51257 +5oOF 51258 +5oOG 51259 +5oOH 51260 +5oOK 51261 +5oOL 51262 +5oOO 51263 +5oOR 51264 +5oOV 51265 +5oOY 51266 +5oOZ 51267 +5oOa 51268 +5oOc 51269 +5oOf 51270 +5oOg 51271 +5oOh 51272 +5oOj 51273 +5oOm 51274 +5oOn 51275 +5oOo 51276 +5oOp 51277 +5oOr 51278 +5oOs 51279 +5oOt 51280 +5oOu 51281 +5oOv 51282 +5oOw 51283 +5oOx 51284 +5oOz 51285 +5oO0 51286 +5oO2 51287 +5oO5 51288 +5oO6 51289 +5oO7 51290 +5oSA 51291 +5oSB 51292 +5oSG 51293 +5oSH 51294 +5oSI 51295 +5oSJ 51296 +5oSK 51297 +5oSN 51298 +5oSO 51299 +5oSP 51300 +5oSU 51301 +5oSV 51302 +5oSa 51303 +5oSb 51304 +5oSf 51305 +5oSg 51306 +5oSj 51307 +5oSk 51308 +5oSm 51309 +5oSn 51310 +5oSr 51311 +5oSs 51312 +5oS0 51313 +5oS3 51314 +5oS8 51315 +5oS+ 51316 +5oS/ 51317 +5oWC 51318 +5oWE 51319 +5oWG 51320 +5oWH 51321 +5oWI 51322 +5oWK 51323 +5oWL 51324 +5oWM 51325 +5oWO 51326 +5oWR 51327 +5oWT 51328 +5oWV 51329 +5oWY 51330 +5oWZ 51331 +5oWa 51332 +5oWc 51333 +5oWd 51334 +5oWf 51335 +5oWi 51336 +5oWj 51337 +5oWl 51338 +5oWn 51339 +5oWo 51340 +5oWr 51341 +5oWu 51342 +5oWw 51343 +5oWz 51344 +5oW0 51345 +5oW1 51346 +5oW2 51347 +5oW3 51348 +5oW+ 51349 +5oaC 51350 +5oaK 51351 +5oaL 51352 +5oaN 51353 +5oaO 51354 +5oaQ 51355 +5oaR 51356 +5oaU 51357 +5oaW 51358 +5oaZ 51359 +5oaa 51360 +5oak 51361 +5oan 51362 +5oao 51363 +5oap 51364 +5oar 51365 +5oas 51366 +5oau 51367 +5oay 51368 +5oa2 51369 +5oa3 51370 +5oa6 51371 +5oa+ 51372 +5oeC 51373 +5oeD 51374 +5oeG 51375 +5oeH 51376 +5oeI 51377 +5oeJ 51378 +5oeK 51379 +5oeL 51380 +5oeQ 51381 +5oeR 51382 +5oeS 51383 +5oej 51384 +5oem 51385 +5oey 51386 +5oe1 51387 +5oe2 51388 +5oe3 51389 +5oe4 51390 +5oe6 51391 +5oe8 51392 +5oe+ 51393 +5oe/ 51394 +5oiA 51395 +5oiG 51396 +5oiH 51397 +5oiI 51398 +5oiK 51399 +5oiM 51400 +5oiN 51401 +5oiO 51402 +5oiP 51403 +5oiQ 51404 +5oiR 51405 +5oiS 51406 +5oiU 51407 +5oiV 51408 +5oiW 51409 +5oiX 51410 +5oiY 51411 +5oia 51412 +5oib 51413 +5oie 51414 +5oif 51415 +5oih 51416 +5oii 51417 +5oil 51418 +5oim 51419 +5oiq 51420 +5ois 51421 +5oiu 51422 +5oiv 51423 +5oiw 51424 +5oiy 51425 +5oiz 51426 +5oi0 51427 +5oi2 51428 +5oi3 51429 +5oi4 51430 +5oi7 51431 +5oi9 51432 +5oi+ 51433 +5oi/ 51434 +5omA 51435 +5omB 51436 +5omD 51437 +5omG 51438 +5omH 51439 +5omI 51440 +5omJ 51441 +5omL 51442 +5omN 51443 +5omO 51444 +5omQ 51445 +5omR 51446 +5omS 51447 +5omT 51448 +5omU 51449 +5omV 51450 +5omY 51451 +5omb 51452 +5ome 51453 +5omg 51454 +5omj 51455 +5omk 51456 +5oml 51457 +5omm 51458 +5omn 51459 +5omo 51460 +5omp 51461 +5omq 51462 +5omr 51463 +5oms 51464 +5omt 51465 +5omu 51466 +5omv 51467 +5omw 51468 +5omx 51469 +5omz 51470 +5om2 51471 +5om5 51472 +5om8 51473 +5om+ 51474 +5om/ 51475 +5oqA 51476 +5oqD 51477 +5oqE 51478 +5oqF 51479 +5oqJ 51480 +5oqK 51481 +5oqM 51482 +5oqR 51483 +5oqS 51484 +5oqT 51485 +5oqU 51486 +5oqV 51487 +5oqW 51488 +5oqX 51489 +5oqY 51490 +5oqa 51491 +5oqb 51492 +5oqc 51493 +5oqe 51494 +5oqf 51495 +5oqg 51496 +5oqh 51497 +5oqi 51498 +5oqk 51499 +5oql 51500 +5oqo 51501 +5oqr 51502 +5oqs 51503 +5oqx 51504 +5oq1 51505 +5oq5 51506 +5oq7 51507 +5oq8 51508 +5oq9 51509 +5oq+ 51510 +5oq/ 51511 +5ouC 51512 +5ouD 51513 +5ouE 51514 +5ouF 51515 +5ouG 51516 +5ouH 51517 +5ouI 51518 +5ouJ 51519 +5ouK 51520 +5ouL 51521 +5ouM 51522 +5ouN 51523 +5ouO 51524 +5ouQ 51525 +5ouS 51526 +5ouT 51527 +5ouU 51528 +5ouW 51529 +5ouX 51530 +5ouY 51531 +5ouZ 51532 +5oua 51533 +5oub 51534 +5ouc 51535 +5oud 51536 +5ouf 51537 +5oug 51538 +5ouh 51539 +5oui 51540 +5ouj 51541 +5ouk 51542 +5oul 51543 +5oum 51544 +5oun 51545 +5ouo 51546 +5oup 51547 +5ous 51548 +5out 51549 +5ouu 51550 +5ouv 51551 +5oux 51552 +5ouz 51553 +5ou0 51554 +5ou1 51555 +5ou2 51556 +5ou3 51557 +5ou8 51558 +5ou9 51559 +5ou+ 51560 +5ou/ 51561 +5oyB 51562 +5oyC 51563 +5oyH 51564 +5oyI 51565 +5oyJ 51566 +5oyM 51567 +5oyO 51568 +5oyR 51569 +5oyS 51570 +5oyW 51571 +5oyZ 51572 +5oya 51573 +5oyb 51574 +5oyd 51575 +5oye 51576 +5oyf 51577 +5oyg 51578 +5oyh 51579 +5oyi 51580 +5oyj 51581 +5oyk 51582 +5oyl 51583 +5oyo 51584 +5oyq 51585 +5oyr 51586 +5oyv 51587 +5oyy 51588 +5oy5 51589 +5oy6 51590 +5oy8 51591 +5oy9 51592 +5oy+ 51593 +5oy/ 51594 +5o2C 51595 +5o2F 51596 +5o2G 51597 +5o2J 51598 +5o2K 51599 +5o2L 51600 +5o2M 51601 +5o2N 51602 +5o2O 51603 +5o2P 51604 +5o2Q 51605 +5o2V 51606 +5o2X 51607 +5o2c 51608 +5o2e 51609 +5o2f 51610 +5o2h 51611 +5o2i 51612 +5o2j 51613 +5o2n 51614 +5o2o 51615 +5o2p 51616 +5o2r 51617 +5o2t 51618 +5o2u 51619 +5o2v 51620 +5o2x 51621 +5o2y 51622 +5o22 51623 +5o23 51624 +5o26 51625 +5o27 51626 +5o6A 51627 +5o6C 51628 +5o6D 51629 +5o6H 51630 +5o6I 51631 +5o6J 51632 +5o6K 51633 +5o6M 51634 +5o6O 51635 +5o6P 51636 +5o6Q 51637 +5o6S 51638 +5o6V 51639 +5o6W 51640 +5o6Y 51641 +5o6Z 51642 +5o6b 51643 +5o6e 51644 +5o6f 51645 +5o6g 51646 +5o6h 51647 +5o6i 51648 +5o6j 51649 +5o6l 51650 +5o6n 51651 +5o6o 51652 +5o6p 51653 +5o6q 51654 +5o6s 51655 +5o6u 51656 +5o6w 51657 +5o6y 51658 +5o6z 51659 +5o60 51660 +5o63 51661 +5o64 51662 +5o65 51663 +5o66 51664 +5o67 51665 +5o68 51666 +5o6+ 51667 +5o+A 51668 +5o+D 51669 +5o+E 51670 +5o+G 51671 +5o+I 51672 +5o+J 51673 +5o+N 51674 +5o+O 51675 +5o+P 51676 +5o+Q 51677 +5o+S 51678 +5o+W 51679 +5o+a 51680 +5o+b 51681 +5o+e 51682 +5o+g 51683 +5o+h 51684 +5o+j 51685 +5o+p 51686 +5o+q 51687 +5o+t 51688 +5o+u 51689 +5o+y 51690 +5o+0 51691 +5o+1 51692 +5o+2 51693 +5o+4 51694 +5o+6 51695 +5o+8 51696 +5o+9 51697 +5o+/ 51698 +5pCA 51699 +5pCB 51700 +5pCC 51701 +5pCF 51702 +5pCG 51703 +5pCL 51704 +5pCM 51705 +5pCN 51706 +5pCP 51707 +5pCQ 51708 +5pCT 51709 +5pCU 51710 +5pCW 51711 +5pCX 51712 +5pCb 51713 +5pCc 51714 +5pCe 51715 +5pCg 51716 +5pCh 51717 +5pCi 51718 +5pCj 51719 +5pCm 51720 +5pCn 51721 +5pCo 51722 +5pCq 51723 +5pCs 51724 +5pCt 51725 +5pC0 51726 +5pC1 51727 +5pC2 51728 +5pC5 51729 +5pC6 51730 +5pC9 51731 +5pC+ 51732 +5pGB 51733 +5pGC 51734 +5pGE 51735 +5pGF 51736 +5pGG 51737 +5pGH 51738 +5pGI 51739 +5pGK 51740 +5pGQ 51741 +5pGS 51742 +5pGU 51743 +5pGY 51744 +5pGb 51745 +5pGe 51746 +5pGf 51747 +5pGn 51748 +5pGp 51749 +5pGt 51750 +5pGv 51751 +5pG1 51752 +5pG4 51753 +5pG5 51754 +5pG6 51755 +5pG9 51756 +5pKC 51757 +5pKD 51758 +5pKE 51759 +5pKF 51760 +5pKH 51761 +5pKI 51762 +5pKQ 51763 +5pKR 51764 +5pKS 51765 +5pKT 51766 +5pKV 51767 +5pKW 51768 +5pKZ 51769 +5pKa 51770 +5pKe 51771 +5pKk 51772 +5pKl 51773 +5pKp 51774 +5pKr 51775 +5pKs 51776 +5pKt 51777 +5pKu 51778 +5pKw 51779 +5pKy 51780 +5pKz 51781 +5pK0 51782 +5pK1 51783 +5pK3 51784 +5pK4 51785 +5pK5 51786 +5pK6 51787 +5pK7 51788 +5pK8 51789 +5pK/ 51790 +5pOA 51791 +5pOB 51792 +5pOC 51793 +5pOF 51794 +5pOH 51795 +5pOK 51796 +5pOL 51797 +5pON 51798 +5pOO 51799 +5pOQ 51800 +5pOS 51801 +5pOU 51802 +5pOX 51803 +5pOY 51804 +5pOa 51805 +5pOe 51806 +5pOg 51807 +5pOh 51808 +5pOi 51809 +5pOj 51810 +5pOk 51811 +5pOm 51812 +5pOn 51813 +5pOs 51814 +5pOv 51815 +5pOw 51816 +5pOx 51817 +5pOy 51818 +5pOz 51819 +5pO0 51820 +5pO2 51821 +5pO6 51822 +5pO7 51823 +5pO9 51824 +5pO+ 51825 +5pSA 51826 +5pSG 51827 +5pSJ 51828 +5pSP 51829 +5pSS 51830 +5pSU 51831 +5pSY 51832 +5pSZ 51833 +5pSc 51834 +5pSd 51835 +5pSe 51836 +5pSj 51837 +5pSk 51838 +5pSl 51839 +5pSq 51840 +5pSr 51841 +5pSs 51842 +5pSu 51843 +5pSv 51844 +5pSw 51845 +5pS0 51846 +5pS1 51847 +5pS2 51848 +5pS3 51849 +5pS4 51850 +5pS5 51851 +5pS7 51852 +5pS+ 51853 +5pS/ 51854 +5pWF 51855 +5pWI 51856 +5pWJ 51857 +5pWM 51858 +5pWN 51859 +5pWP 51860 +5pWR 51861 +5pWV 51862 +5pWW 51863 +5pWX 51864 +5pWY 51865 +5pWZ 51866 +5pWb 51867 +5pWd 51868 +5pWe 51869 +5pWi 51870 +5pWj 51871 +5pWm 51872 +5pWr 51873 +5pWs 51874 +5pWw 51875 +5pWy 51876 +5pW0 51877 +5pW1 51878 +5pW3 51879 +5pW4 51880 +5paB 51881 +5paC 51882 +5paD 51883 +5paH 51884 +5paJ 51885 +5paL 51886 +5paM 51887 +5paO 51888 +5paQ 51889 +5paR 51890 +5paT 51891 +5paV 51892 +5paX 51893 +5paZ 51894 +5pab 51895 +5pac 51896 +5pad 51897 +5paf 51898 +5pah 51899 +5pak 51900 +5pal 51901 +5pan 51902 +5pap 51903 +5par 51904 +5pas 51905 +5pat 51906 +5pav 51907 +5paw 51908 +5pa3 51909 +5pa5 51910 +5pa8 51911 +5pa9 51912 +5pa/ 51913 +5peB 51914 +5peD 51915 +5peE 51916 +5peF 51917 +5peG 51918 +5peJ 51919 +5peL 51920 +5peM 51921 +5peO 51922 +5peP 51923 +5peS 51924 +5peW 51925 +5peX 51926 +5peb 51927 +5peg 51928 +5pei 51929 +5pel 51930 +5pem 51931 +5pen 51932 +5peo 51933 +5pep 51934 +5pes 51935 +5pet 51936 +5peu 51937 +5pev 51938 +5pew 51939 +5pex 51940 +5pez 51941 +5pe2 51942 +5pe3 51943 +5pe4 51944 +5pe6 51945 +5pe7 51946 +5pe8 51947 +5piA 51948 +5piC 51949 +5piD 51950 +5piG 51951 +5piH 51952 +5piJ 51953 +5piK 51954 +5piM 51955 +5piO 51956 +5piP 51957 +5piT 51958 +5piU 51959 +5piV 51960 +5piZ 51961 +5pia 51962 +5pid 51963 +5pie 51964 +5pif 51965 +5pig 51966 +5pil 51967 +5pin 51968 +5pio 51969 +5pit 51970 +5piv 51971 +5pix 51972 +5pi0 51973 +5pi1 51974 +5pi2 51975 +5pi6 51976 +5pi8 51977 +5pi+ 51978 +5pmB 51979 +5pmC 51980 +5pmD 51981 +5pmE 51982 +5pmJ 51983 +5pmL 51984 +5pmM 51985 +5pmP 51986 +5pmS 51987 +5pmT 51988 +5pmU 51989 +5pmV 51990 +5pmW 51991 +5pmX 51992 +5pma 51993 +5pmd 51994 +5pme 51995 +5pmf 51996 +5pmh 51997 +5pmi 51998 +5pmk 51999 +5pml 52000 +5pmm 52001 +5pmn 52002 +5pmo 52003 +5pmp 52004 +5pms 52005 +5pmu 52006 +5pmv 52007 +5pmw 52008 +5pmz 52009 +5pm0 52010 +5pm2 52011 +5pm3 52012 +5pm6 52013 +5pm7 52014 +5pm+ 52015 +5pqB 52016 +5pqC 52017 +5pqE 52018 +5pqH 52019 +5pqI 52020 +5pqJ 52021 +5pqM 52022 +5pqN 52023 +5pqO 52024 +5pqR 52025 +5pqW 52026 +5pqX 52027 +5pqY 52028 +5pqd 52029 +5pqi 52030 +5pqm 52031 +5pqn 52032 +5pqo 52033 +5pqr 52034 +5pqu 52035 +5pqy 52036 +5pq0 52037 +5pq5 52038 +5pq7 52039 +5pq8 52040 +5pq+ 52041 +5puE 52042 +5puG 52043 +5puH 52044 +5puI 52045 +5puJ 52046 +5puM 52047 +5puW 52048 +5puZ 52049 +5pua 52050 +5pub 52051 +5puc 52052 +5pud 52053 +5pug 52054 +5puh 52055 +5pum 52056 +5pup 52057 +5pus 52058 +5puw 52059 +5pux 52060 +5puy 52061 +5puz 52062 +5pu0 52063 +5pu1 52064 +5pu3 52065 +5pu4 52066 +5pu5 52067 +5pu6 52068 +5pu8 52069 +5pu9 52070 +5pu+ 52071 +5pu/ 52072 +5pyA 52073 +5pyD 52074 +5pyI 52075 +5pyJ 52076 +5pyK 52077 +5pyL 52078 +5pyN 52079 +5pyP 52080 +5pyQ 52081 +5pyT 52082 +5pyU 52083 +5pyV 52084 +5pyX 52085 +5pyb 52086 +5pyd 52087 +5pyf 52088 +5pym 52089 +5pyn 52090 +5pyo 52091 +5pyq 52092 +5pyr 52093 +5pys 52094 +5pyt 52095 +5pyu 52096 +5pyv 52097 +5pyx 52098 +5py0 52099 +5py1 52100 +5py2 52101 +5py4 52102 +5py6 52103 +5py9 52104 +5py+ 52105 +5p2A 52106 +5p2B 52107 +5p2C 52108 +5p2D 52109 +5p2G 52110 +5p2I 52111 +5p2J 52112 +5p2M 52113 +5p2O 52114 +5p2P 52115 +5p2Q 52116 +5p2R 52117 +5p2T 52118 +5p2W 52119 +5p2Z 52120 +5p2c 52121 +5p2e 52122 +5p2f 52123 +5p2g 52124 +5p2h 52125 +5p2i 52126 +5p2j 52127 +5p2k 52128 +5p2l 52129 +5p2o 52130 +5p2p 52131 +5p2q 52132 +5p2s 52133 +5p2t 52134 +5p2u 52135 +5p2v 52136 +5p2w 52137 +5p2x 52138 +5p2y 52139 +5p2z 52140 +5p21 52141 +5p23 52142 +5p27 52143 +5p28 52144 +5p2+ 52145 +5p2/ 52146 +5p6B 52147 +5p6E 52148 +5p6F 52149 +5p6H 52150 +5p6J 52151 +5p6L 52152 +5p6M 52153 +5p6O 52154 +5p6Q 52155 +5p6T 52156 +5p6V 52157 +5p6X 52158 +5p6Y 52159 +5p6a 52160 +5p6c 52161 +5p6d 52162 +5p6e 52163 +5p6g 52164 +5p6h 52165 +5p6i 52166 +5p6j 52167 +5p6l 52168 +5p6m 52169 +5p6n 52170 +5p6o 52171 +5p6q 52172 +5p6r 52173 +5p6t 52174 +5p6v 52175 +5p6w 52176 +5p6x 52177 +5p6y 52178 +5p6z 52179 +5p60 52180 +5p62 52181 +5p63 52182 +5p64 52183 +5p65 52184 +5p+A 52185 +5p+B 52186 +5p+D 52187 +5p+E 52188 +5p+H 52189 +5p+K 52190 +5p+P 52191 +5p+Q 52192 +5p+R 52193 +5p+S 52194 +5p+T 52195 +5p+U 52196 +5p+Y 52197 +5p+a 52198 +5p+c 52199 +5p+d 52200 +5p+e 52201 +5p+g 52202 +5p+i 52203 +5p+k 52204 +5p+l 52205 +5p+n 52206 +5p+p 52207 +5p+s 52208 +5p+v 52209 +5p+w 52210 +5p+x 52211 +5p+z 52212 +5p+0 52213 +5p+1 52214 +5p+3 52215 +5p+4 52216 +5p+5 52217 +5p+7 52218 +5p+9 52219 +5p++ 52220 +5p+/ 52221 +5qCA 52222 +5qCC 52223 +5qCD 52224 +5qCE 52225 +5qCF 52226 +5qCH 52227 +5qCI 52228 +5qCJ 52229 +5qCK 52230 +5qCL 52231 +5qCM 52232 +5qCO 52233 +5qCP 52234 +5qCR 52235 +5qCT 52236 +5qCW 52237 +5qCX 52238 +5qCY 52239 +5qCd 52240 +5qCe 52241 +5qCf 52242 +5qCh 52243 +5qCi 52244 +5qCn 52245 +5qCp 52246 +5qCq 52247 +5qCr 52248 +5qCs 52249 +5qCx 52250 +5qCy 52251 +5qCz 52252 +5qC0 52253 +5qC3 52254 +5qC4 52255 +5qC5 52256 +5qC7 52257 +5qC8 52258 +5qC9 52259 +5qC+ 52260 +5qGA 52261 +5qGB 52262 +5qGC 52263 +5qGD 52264 +5qGE 52265 +5qGF 52266 +5qGG 52267 +5qGI 52268 +5qGJ 52269 +5qGM 52270 +5qGO 52271 +5qGQ 52272 +5qGR 52273 +5qGT 52274 +5qGU 52275 +5qGV 52276 +5qGW 52277 +5qGZ 52278 +5qGc 52279 +5qGd 52280 +5qGf 52281 +5qGg 52282 +5qGh 52283 +5qGi 52284 +5qGj 52285 +5qGk 52286 +5qGl 52287 +5qGm 52288 +5qGn 52289 +5qGo 52290 +5qGp 52291 +5qGr 52292 +5qGv 52293 +5qG0 52294 +5qG2 52295 +5qG3 52296 +5qG8 52297 +5qG+ 52298 +5qG/ 52299 +5qKB 52300 +5qKD 52301 +5qKF 52302 +5qKG 52303 +5qKI 52304 +5qKP 52305 +5qKT 52306 +5qKU 52307 +5qKX 52308 +5qKb 52309 +5qKd 52310 +5qKf 52311 +5qKg 52312 +5qKh 52313 +5qKi 52314 +5qKj 52315 +5qKm 52316 +5qKn 52317 +5qKo 52318 +5qKq 52319 +5qKr 52320 +5qKt 52321 +5qKv 52322 +5qKw 52323 +5qKx 52324 +5qKz 52325 +5qK1 52326 +5qK2 52327 +5qK5 52328 +5qK6 52329 +5qK7 52330 +5qK8 52331 +5qK/ 52332 +5qOA 52333 +5qOC 52334 +5qOE 52335 +5qOF 52336 +5qOI 52337 +5qOJ 52338 +5qOK 52339 +5qOL 52340 +5qON 52341 +5qOS 52342 +5qOU 52343 +5qOV 52344 +5qOX 52345 +5qOY 52346 +5qOa 52347 +5qOf 52348 +5qOg 52349 +5qOh 52350 +5qOj 52351 +5qOn 52352 +5qOo 52353 +5qOs 52354 +5qOu 52355 +5qOv 52356 +5qOw 52357 +5qOx 52358 +5qOy 52359 +5qO1 52360 +5qO2 52361 +5qO3 52362 +5qO5 52363 +5qO6 52364 +5qO7 52365 +5qO8 52366 +5qSA 52367 +5qSB 52368 +5qSF 52369 +5qSI 52370 +5qSK 52371 +5qSL 52372 +5qSM 52373 +5qSN 52374 +5qSO 52375 +5qSP 52376 +5qSQ 52377 +5qSS 52378 +5qSZ 52379 +5qSa 52380 +5qSb 52381 +5qSc 52382 +5qSf 52383 +5qSh 52384 +5qSj 52385 +5qSk 52386 +5qSl 52387 +5qSo 52388 +5qSq 52389 +5qSt 52390 +5qSw 52391 +5qS0 52392 +5qS5 52393 +5qS9 52394 +5qS/ 52395 +5qWA 52396 +5qWC 52397 +5qWJ 52398 +5qWK 52399 +5qWT 52400 +5qWU 52401 +5qWV 52402 +5qWX 52403 +5qWZ 52404 +5qWa 52405 +5qWc 52406 +5qWd 52407 +5qWe 52408 +5qWg 52409 +5qWh 52410 +5qWi 52411 +5qWj 52412 +5qWm 52413 +5qWq 52414 +5qWr 52415 +5qWt 52416 +5qWu 52417 +5qWv 52418 +5qWx 52419 +5qWz 52420 +5qW1 52421 +5qW3 52422 +5qW4 52423 +5qW5 52424 +5qW8 52425 +5qW9 52426 +5qW+ 52427 +5qaB 52428 +5qaC 52429 +5qaE 52430 +5qaG 52431 +5qaH 52432 +5qaI 52433 +5qaJ 52434 +5qaK 52435 +5qaO 52436 +5qaR 52437 +5qaU 52438 +5qaV 52439 +5qaW 52440 +5qaY 52441 +5qab 52442 +5qac 52443 +5qan 52444 +5qao 52445 +5qar 52446 +5qat 52447 +5qau 52448 +5qay 52449 +5qa0 52450 +5qa3 52451 +5qa7 52452 +5qa8 52453 +5qa+ 52454 +5qa/ 52455 +5qeB 52456 +5qeD 52457 +5qeF 52458 +5qeH 52459 +5qeK 52460 +5qeL 52461 +5qeM 52462 +5qeN 52463 +5qeO 52464 +5qeQ 52465 +5qeT 52466 +5qeW 52467 +5qeY 52468 +5qeZ 52469 +5qeb 52470 +5qef 52471 +5qen 52472 +5qeo 52473 +5qep 52474 +5qer 52475 +5qet 52476 +5qey 52477 +5qez 52478 +5qe7 52479 +5qe9 52480 +5qe/ 52481 +5qiA 52482 +5qiB 52483 +5qiC 52484 +5qiF 52485 +5qiJ 52486 +5qiK 52487 +5qiL 52488 +5qiR 52489 +5qiS 52490 +5qiT 52491 +5qiW 52492 +5qiX 52493 +5qiY 52494 +5qiZ 52495 +5qib 52496 +5qie 52497 +5qif 52498 +5qih 52499 +5qij 52500 +5qio 52501 +5qip 52502 +5qiq 52503 +5qir 52504 +5qiu 52505 +5qiv 52506 +5qix 52507 +5qi1 52508 +5qi4 52509 +5qi5 52510 +5qi6 52511 +5qi9 52512 +5qi+ 52513 +5qmE 52514 +5qmF 52515 +5qmH 52516 +5qmI 52517 +5qmL 52518 +5qmQ 52519 +5qmY 52520 +5qmZ 52521 +5qmb 52522 +5qme 52523 +5qmf 52524 +5qmh 52525 +5qmi 52526 +5qml 52527 +5qmm 52528 +5qmr 52529 +5qmx 52530 +5qmy 52531 +5qm5 52532 +5qm8 52533 +5qm/ 52534 +5qqA 52535 +5qqE 52536 +5qqJ 52537 +5qqN 52538 +5qqO 52539 +5qqQ 52540 +5qqU 52541 +5qqX 52542 +5qqc 52543 +5qqe 52544 +5qqg 52545 +5qqi 52546 +5qqj 52547 +5qqp 52548 +5qqq 52549 +5qqr 52550 +5qqs 52551 +5qqu 52552 +5qqv 52553 +5qqz 52554 +5qq4 52555 +5qq7 52556 +5qq/ 52557 +5quB 52558 +5quC 52559 +5quD 52560 +5quI 52561 +5quT 52562 +5qua 52563 +5qub 52564 +5que 52565 +5quf 52566 +5qun 52567 +5quo 52568 +5quq 52569 +5qu6 52570 +5qu7 52571 +5qyE 52572 +5qyF 52573 +5qyK 52574 +5qyS 52575 +5qyW 52576 +5qyd 52577 +5qye 52578 +5qyg 52579 +5qyh 52580 +5qyi 52581 +5qyj 52582 +5qyk 52583 +5qyn 52584 +5qyy 52585 +5qy3 52586 +5qy4 52587 +5qy5 52588 +5qy6 52589 +5qy7 52590 +5qy9 52591 +5qy+ 52592 +5q2A 52593 +5q2D 52594 +5q2G 52595 +5q2H 52596 +5q2J 52597 +5q2M 52598 +5q2O 52599 +5q2Q 52600 +5q2T 52601 +5q2U 52602 +5q2Y 52603 +5q2Z 52604 +5q2h 52605 +5q2i 52606 +5q2j 52607 +5q2k 52608 +5q2l 52609 +5q2m 52610 +5q2n 52611 +5q2p 52612 +5q2q 52613 +5q2t 52614 +5q2v 52615 +5q2y 52616 +5q2z 52617 +5q20 52618 +5q23 52619 +5q24 52620 +5q25 52621 +5q27 52622 +5q28 52623 +5q2/ 52624 +5q6B 52625 +5q6C 52626 +5q6D 52627 +5q6E 52628 +5q6G 52629 +5q6H 52630 +5q6J 52631 +5q6K 52632 +5q6L 52633 +5q6N 52634 +5q6S 52635 +5q6T 52636 +5q6W 52637 +5q6Y 52638 +5q6a 52639 +5q6b 52640 +5q6h 52641 +5q6q 52642 +5q6t 52643 +5q6u 52644 +5q6v 52645 +5q6y 52646 +5q6z 52647 +5q60 52648 +5q61 52649 +5q63 52650 +5q66 52651 +5q67 52652 +5q68 52653 +5q69 52654 +5q6/ 52655 +5q+A 52656 +5q+B 52657 +5q+C 52658 +5q+F 52659 +5q+G 52660 +5q+L 52661 +5q+N 52662 +5q+O 52663 +5q+P 52664 +5q+Q 52665 +5q+S 52666 +5q+T 52667 +5q+U 52668 +5q+V 52669 +5q+W 52670 +5q+X 52671 +5q+Y 52672 +5q+Z 52673 +5q+b 52674 +5q+f 52675 +5q+h 52676 +5q+r 52677 +5q+s 52678 +5q+v 52679 +5q+z 52680 +5q+5 52681 +5q+9 52682 +5rCF 52683 +5rCG 52684 +5rCH 52685 +5rCI 52686 +5rCN 52687 +5rCP 52688 +5rCQ 52689 +5rCR 52690 +5rCT 52691 +5rCU 52692 +5rCV 52693 +5rCW 52694 +5rCX 52695 +5rCY 52696 +5rCZ 52697 +5rCa 52698 +5rCb 52699 +5rCf 52700 +5rCh 52701 +5rCi 52702 +5rCj 52703 +5rCk 52704 +5rCm 52705 +5rCn 52706 +5rCo 52707 +5rCp 52708 +5rCq 52709 +5rCu 52710 +5rCv 52711 +5rCw 52712 +5rCy 52713 +5rC0 52714 +5rC3 52715 +5rC4 52716 +5rC5 52717 +5rC9 52718 +5rC+ 52719 +5rGA 52720 +5rGB 52721 +5rGC 52722 +5rGG 52723 +5rGH 52724 +5rGI 52725 +5rGJ 52726 +5rGK 52727 +5rGO 52728 +5rGQ 52729 +5rGU 52730 +5rGV 52731 +5rGX 52732 +5rGa 52733 +5rGb 52734 +5rGc 52735 +5rGd 52736 +5rGe 52737 +5rGf 52738 +5rGg 52739 +5rGh 52740 +5rGk 52741 +5rGo 52742 +5rGp 52743 +5rGq 52744 +5rGt 52745 +5rGw 52746 +5rGy 52747 +5rG0 52748 +5rG1 52749 +5rG2 52750 +5rG5 52751 +5rG6 52752 +5rG9 52753 +5rG+ 52754 +5rKB 52755 +5rKC 52756 +5rKD 52757 +5rKE 52758 +5rKF 52759 +5rKG 52760 +5rKI 52761 +5rKJ 52762 +5rKM 52763 +5rKP 52764 +5rKQ 52765 +5rKS 52766 +5rKT 52767 +5rKU 52768 +5rKW 52769 +5rKZ 52770 +5rKa 52771 +5rKb 52772 +5rKf 52773 +5rKh 52774 +5rKi 52775 +5rKj 52776 +5rKk 52777 +5rKl 52778 +5rKm 52779 +5rKn 52780 +5rKo 52781 +5rKp 52782 +5rKq 52783 +5rKr 52784 +5rKt 52785 +5rKu 52786 +5rKx 52787 +5rKz 52788 +5rK4 52789 +5rK5 52790 +5rK7 52791 +5rK8 52792 +5rK9 52793 +5rK+ 52794 +5rK/ 52795 +5rOB 52796 +5rOD 52797 +5rOE 52798 +5rOF 52799 +5rOG 52800 +5rOJ 52801 +5rOK 52802 +5rOM 52803 +5rOQ 52804 +5rOS 52805 +5rOT 52806 +5rOU 52807 +5rOV 52808 +5rOW 52809 +5rOX 52810 +5rOZ 52811 +5rOa 52812 +5rOb 52813 +5rOe 52814 +5rOg 52815 +5rOh 52816 +5rOi 52817 +5rOj 52818 +5rOl 52819 +5rOo 52820 +5rOq 52821 +5rOr 52822 +5rOs 52823 +5rOu 52824 +5rOv 52825 +5rOw 52826 +5rOx 52827 +5rOz 52828 +5rO1 52829 +5rO3 52830 +5rO4 52831 +5rO6 52832 +5rO7 52833 +5rO8 52834 +5rO9 52835 +5rO+ 52836 +5rSB 52837 +5rSE 52838 +5rSH 52839 +5rSL 52840 +5rSM 52841 +5rSO 52842 +5rSP 52843 +5rSR 52844 +5rSS 52845 +5rSX 52846 +5rSZ 52847 +5rSb 52848 +5rSe 52849 +5rSf 52850 +5rSj 52851 +5rSl 52852 +5rSn 52853 +5rSp 52854 +5rSq 52855 +5rSu 52856 +5rSx 52857 +5rSy 52858 +5rSz 52859 +5rS1 52860 +5rS2 52861 +5rS4 52862 +5rS5 52863 +5rS6 52864 +5rS7 52865 +5rS8 52866 +5rS9 52867 +5rS+ 52868 +5rS/ 52869 +5rWB 52870 +5rWD 52871 +5rWE 52872 +5rWF 52873 +5rWG 52874 +5rWH 52875 +5rWI 52876 +5rWJ 52877 +5rWK 52878 +5rWL 52879 +5rWN 52880 +5rWO 52881 +5rWP 52882 +5rWQ 52883 +5rWR 52884 +5rWS 52885 +5rWT 52886 +5rWU 52887 +5rWZ 52888 +5rWa 52889 +5rWb 52890 +5rWc 52891 +5rWe 52892 +5rWg 52893 +5rWj 52894 +5rWl 52895 +5rWm 52896 +5rWp 52897 +5rWq 52898 +5rWs 52899 +5rWu 52900 +5rWv 52901 +5rW0 52902 +5rW3 52903 +5rW4 52904 +5rW5 52905 +5raC 52906 +5raF 52907 +5raI 52908 +5raJ 52909 +5raM 52910 +5raO 52911 +5raR 52912 +5raT 52913 +5raU 52914 +5raV 52915 +5raW 52916 +5raY 52917 +5raZ 52918 +5rab 52919 +5rac 52920 +5rad 52921 +5rae 52922 +5raf 52923 +5rag 52924 +5rah 52925 +5raj 52926 +5rak 52927 +5ram 52928 +5ran 52929 +5rao 52930 +5rap 52931 +5raq 52932 +5rau 52933 +5rav 52934 +5ray 52935 +5ra1 52936 +5ra4 52937 +5ra8 52938 +5ra/ 52939 +5reA 52940 +5reE 52941 +5reF 52942 +5reG 52943 +5reH 52944 +5reL 52945 +5reM 52946 +5reP 52947 +5reR 52948 +5reS 52949 +5reW 52950 +5reY 52951 +5reZ 52952 +5rea 52953 +5rec 52954 +5red 52955 +5ree 52956 +5reg 52957 +5reh 52958 +5rek 52959 +5rem 52960 +5reo 52961 +5req 52962 +5rer 52963 +5res 52964 +5reu 52965 +5rev 52966 +5rex 52967 +5rez 52968 +5re1 52969 +5re3 52970 +5re4 52971 +5re5 52972 +5re6 52973 +5re7 52974 +5re8 52975 +5riA 52976 +5riF 52977 +5riH 52978 +5riI 52979 +5riJ 52980 +5riK 52981 +5riL 52982 +5riM 52983 +5riN 52984 +5riO 52985 +5riQ 52986 +5riR 52987 +5riT 52988 +5riU 52989 +5riV 52990 +5riX 52991 +5riZ 52992 +5ria 52993 +5rib 52994 +5rid 52995 +5rif 52996 +5rig 52997 +5rih 52998 +5rij 52999 +5rik 53000 +5ril 53001 +5rim 53002 +5rip 53003 +5rir 53004 +5ris 53005 +5rit 53006 +5riv 53007 +5riy 53008 +5ri0 53009 +5ri4 53010 +5ri6 53011 +5ri+ 53012 +5rmD 53013 +5rmE 53014 +5rmJ 53015 +5rmK 53016 +5rmN 53017 +5rmO 53018 +5rmT 53019 +5rmU 53020 +5rmW 53021 +5rmY 53022 +5rmb 53023 +5rmc 53024 +5rmd 53025 +5rmf 53026 +5rmj 53027 +5rmn 53028 +5rmr 53029 +5rmu 53030 +5rmv 53031 +5rmy 53032 +5rm0 53033 +5rm2 53034 +5rm+ 53035 +5rm/ 53036 +5rqA 53037 +5rqC 53038 +5rqD 53039 +5rqF 53040 +5rqG 53041 +5rqH 53042 +5rqJ 53043 +5rqM 53044 +5rqN 53045 +5rqP 53046 +5rqQ 53047 +5rqW 53048 +5rqY 53049 +5rqc 53050 +5rqd 53051 +5rqf 53052 +5rqi 53053 +5rql 53054 +5rqn 53055 +5rqq 53056 +5rqr 53057 +5rqv 53058 +5rqx 53059 +5rqy 53060 +5rq0 53061 +5rq2 53062 +5rq3 53063 +5rq6 53064 +5rq9 53065 +5ruB 53066 +5ruC 53067 +5ruE 53068 +5ruF 53069 +5ruH 53070 +5ruI 53071 +5ruJ 53072 +5ruL 53073 +5ruM 53074 +5ruP 53075 +5ruR 53076 +5ruT 53077 +5ruU 53078 +5ruV 53079 +5ruX 53080 +5ruY 53081 +5rua 53082 +5rud 53083 +5rue 53084 +5ruf 53085 +5rug 53086 +5ruh 53087 +5rui 53088 +5ruk 53089 +5rul 53090 +5rum 53091 +5ruo 53092 +5rup 53093 +5rus 53094 +5ruv 53095 +5ruy 53096 +5ru0 53097 +5ru4 53098 +5ru5 53099 +5ru+ 53100 +5ru/ 53101 +5ryB 53102 +5ryC 53103 +5ryG 53104 +5ryI 53105 +5ryJ 53106 +5ryP 53107 +5ryR 53108 +5ryT 53109 +5ryU 53110 +5ryV 53111 +5ryg 53112 +5ryi 53113 +5ryj 53114 +5ryp 53115 +5ryq 53116 +5ryr 53117 +5rys 53118 +5ryt 53119 +5ryv 53120 +5ryx 53121 +5ryy 53122 +5ryz 53123 +5ry0 53124 +5ry2 53125 +5ry3 53126 +5ry4 53127 +5ry8 53128 +5ry+ 53129 +5ry/ 53130 +5r2F 53131 +5r2G 53132 +5r2H 53133 +5r2L 53134 +5r2N 53135 +5r2O 53136 +5r2P 53137 +5r2R 53138 +5r2U 53139 +5r2Y 53140 +5r2b 53141 +5r2c 53142 +5r2e 53143 +5r2f 53144 +5r2h 53145 +5r2i 53146 +5r2k 53147 +5r2l 53148 +5r2m 53149 +5r2p 53150 +5r2s 53151 +5r2t 53152 +5r2u 53153 +5r2w 53154 +5r2y 53155 +5r20 53156 +5r21 53157 +5r24 53158 +5r26 53159 +5r28 53160 +5r6A 53161 +5r6B 53162 +5r6E 53163 +5r6G 53164 +5r6I 53165 +5r6M 53166 +5r6N 53167 +5r6O 53168 +5r6X 53169 +5r6c 53170 +5r6h 53171 +5r6j 53172 +5r6k 53173 +5r6n 53174 +5r6q 53175 +5r6x 53176 +5r6z 53177 +5r60 53178 +5r62 53179 +5r65 53180 +5r+A 53181 +5r+B 53182 +5r+C 53183 +5r+D 53184 +5r+G 53185 +5r+J 53186 +5r+R 53187 +5r+S 53188 +5r+V 53189 +5r+Y 53190 +5r+b 53191 +5r+e 53192 +5r+f 53193 +5r+g 53194 +5r+h 53195 +5r+k 53196 +5r+p 53197 +5r+r 53198 +5r+s 53199 +5r+u 53200 +5r+v 53201 +5r+x 53202 +5r+2 53203 +5r+6 53204 +5r++ 53205 +54CJ 53206 +54CL 53207 +54CN 53208 +54CP 53209 +54CR 53210 +54CV 53211 +54Ca 53212 +54Cb 53213 +54Cd 53214 +54Ce 53215 +54Cf 53216 +54Cj 53217 +54Cm 53218 +54Cn 53219 +54Cs 53220 +54Cw 53221 +54Cy 53222 +54C5 53223 +54C+ 53224 +54GM 53225 +54GP 53226 +54GR 53227 +54GY 53228 +54Ge 53229 +54Gj 53230 +54Gr 53231 +54Gt 53232 +54Gv 53233 +54Gw 53234 +54G1 53235 +54G2 53236 +54G4 53237 +54G8 53238 +54G9 53239 +54G+ 53240 +54G/ 53241 +54KA 53242 +54KB 53243 +54KF 53244 +54KG 53245 +54KJ 53246 +54KK 53247 +54KO 53248 +54KS 53249 +54KU 53250 +54KV 53251 +54KW 53252 +54KZ 53253 +54Kc 53254 +54Kd 53255 +54Kf 53256 +54Kk 53257 +54Kq 53258 +54Kr 53259 +54Ks 53260 +54Kt 53261 +54Ku 53262 +54Kv 53263 +54Kz 53264 +54K0 53265 +54K3 53266 +54K4 53267 +54K5 53268 +54K6 53269 +54K8 53270 +54K9 53271 +54OA 53272 +54OB 53273 +54OC 53274 +54OD 53275 +54OI 53276 +54OK 53277 +54OP 53278 +54OW 53279 +54OY 53280 +54OZ 53281 +54Ob 53282 +54Oc 53283 +54Of 53284 +54Ok 53285 +54Om 53286 +54On 53287 +54Oo 53288 +54Op 53289 +54Or 53290 +54Os 53291 +54Ot 53292 +54Ov 53293 +54Ox 53294 +54O3 53295 +54O5 53296 +54O9 53297 +54SJ 53298 +54SK 53299 +54SQ 53300 +54ST 53301 +54SU 53302 +54SV 53303 +54SW 53304 +54SX 53305 +54SY 53306 +54SZ 53307 +54Sa 53308 +54Sc 53309 +54Sh 53310 +54Sm 53311 +54Sv 53312 +54Sw 53313 +54Sx 53314 +54S2 53315 +54S8 53316 +54WF 53317 +54WJ 53318 +54WK 53319 +54WL 53320 +54WM 53321 +54WO 53322 +54WV 53323 +54WW 53324 +54WZ 53325 +54Wc 53326 +54We 53327 +54Wf 53328 +54Wi 53329 +54Wk 53330 +54Wl 53331 +54Wm 53332 +54Wn 53333 +54Wo 53334 +54Wp 53335 +54Ws 53336 +54Wu 53337 +54Wy 53338 +54Wz 53339 +54W4 53340 +54W6 53341 +54W9 53342 +54W/ 53343 +54aE 53344 +54aK 53345 +54aP 53346 +54aU 53347 +54aY 53348 +54aZ 53349 +54ac 53350 +54af 53351 +54ag 53352 +54ao 53353 +54as 53354 +54ax 53355 +54az 53356 +54a1 53357 +54a5 53358 +54a+ 53359 +54eD 53360 +54eE 53361 +54eI 53362 +54eJ 53363 +54eK 53364 +54eL 53365 +54eO 53366 +54eQ 53367 +54eS 53368 +54eU 53369 +54eV 53370 +54eX 53371 +54eZ 53372 +54ea 53373 +54ef 53374 +54eg 53375 +54el 53376 +54em 53377 +54en 53378 +54et 53379 +54eu 53380 +54e1 53381 +54e5 53382 +54e7 53383 +54e8 53384 +54e/ 53385 +54iG 53386 +54iN 53387 +54iQ 53388 +54ib 53389 +54io 53390 +54iq 53391 +54is 53392 +54it 53393 +54iw 53394 +54ix 53395 +54iy 53396 +54i1 53397 +54i2 53398 +54i3 53399 +54i4 53400 +54i5 53401 +54i6 53402 +54i7 53403 +54i8 53404 +54i9 53405 +54i+ 53406 +54i/ 53407 +54mA 53408 +54mB 53409 +54mC 53410 +54mG 53411 +54mH 53412 +54mI 53413 +54mM 53414 +54mN 53415 +54mS 53416 +54mV 53417 +54mW 53418 +54mY 53419 +54mZ 53420 +54mb 53421 +54md 53422 +54mf 53423 +54mg 53424 +54mh 53425 +54mi 53426 +54mk 53427 +54mm 53428 +54mn 53429 +54mp 53430 +54mu 53431 +54mv 53432 +54my 53433 +54m0 53434 +54m1 53435 +54m4 53436 +54m5 53437 +54m6 53438 +54m9 53439 +54m+ 53440 +54qA 53441 +54qB 53442 +54qC 53443 +54qE 53444 +54qH 53445 +54qK 53446 +54qL 53447 +54qN 53448 +54qS 53449 +54qW 53450 +54qf 53451 +54qg 53452 +54qi 53453 +54qn 53454 +54qs 53455 +54qv 53456 +54qw 53457 +54qz 53458 +54q0 53459 +54q2 53460 +54q3 53461 +54q4 53462 +54q5 53463 +54q8 53464 +54uA 53465 +54uC 53466 +54uE 53467 +54uG 53468 +54uI 53469 +54uM 53470 +54uN 53471 +54uO 53472 +54uQ 53473 +54uS 53474 +54uX 53475 +54uZ 53476 +54ub 53477 +54ud 53478 +54ue 53479 +54ug 53480 +54uh 53481 +54ui 53482 +54uo 53483 +54up 53484 +54us 53485 +54ut 53486 +54uu 53487 +54uw 53488 +54ux 53489 +54uy 53490 +54u0 53491 +54u3 53492 +54u4 53493 +54u5 53494 +54u7 53495 +54u8 53496 +54u9 53497 +54yB 53498 +54yH 53499 +54yK 53500 +54yO 53501 +54yV 53502 +54yW 53503 +54yX 53504 +54yZ 53505 +54yb 53506 +54yc 53507 +54yd 53508 +54ye 53509 +54yf 53510 +54yh 53511 +54yi 53512 +54yl 53513 +54yo 53514 +54yp 53515 +54yq 53516 +54yr 53517 +54ys 53518 +54yu 53519 +54yv 53520 +54yx 53521 +54yy 53522 +54y0 53523 +54y2 53524 +54y3 53525 +54y5 53526 +54y+ 53527 +54y/ 53528 +542E 53529 +542F 53530 +542O 53531 +542P 53532 +542Q 53533 +542S 53534 +542X 53535 +542g 53536 +542j 53537 +542o 53538 +542q 53539 +542s 53540 +542t 53541 +542w 53542 +542y 53543 +5421 53544 +5424 53545 +5426 53546 +5427 53547 +542+ 53548 +546E 53549 +546H 53550 +546J 53551 +546L 53552 +546O 53553 +546R 53554 +546V 53555 +546W 53556 +546Y 53557 +546Z 53558 +546a 53559 +546b 53560 +546f 53561 +546g 53562 +546i 53563 +546l 53564 +546m 53565 +546p 53566 +546r 53567 +546u 53568 +546v 53569 +546w 53570 +546y 53571 +546z 53572 +5463 53573 +5465 53574 +5466 53575 +5467 53576 +54+A 53577 +54+C 53578 +54+F 53579 +54+I 53580 +54+J 53581 +54+K 53582 +54+N 53583 +54+O 53584 +54+P 53585 +54+Q 53586 +54+R 53587 +54+Z 53588 +54+c 53589 +54+e 53590 +54+g 53591 +54+j 53592 +54+l 53593 +54+m 53594 +54+n 53595 +54+p 53596 +54+q 53597 +54+r 53598 +54+t 53599 +54+u 53600 +54+w 53601 +54+y 53602 +54+4 53603 +54+6 53604 +54+9 53605 +54++ 53606 +55CD 53607 +55CF 53608 +55CG 53609 +55CH 53610 +55CJ 53611 +55CK 53612 +55CN 53613 +55CO 53614 +55CP 53615 +55CQ 53616 +55Ca 53617 +55Cb 53618 +55Ci 53619 +55Ck 53620 +55Cl 53621 +55Cm 53622 +55Co 53623 +55Cq 53624 +55Cs 53625 +55Cu 53626 +55Cv 53627 +55Cw 53628 +55Cy 53629 +55Cz 53630 +55C0 53631 +55C1 53632 +55C2 53633 +55C6 53634 +55C8 53635 +55GA 53636 +55GB 53637 +55GE 53638 +55GV 53639 +55GX 53640 +55GZ 53641 +55Ga 53642 +55Gb 53643 +55Gc 53644 +55Ge 53645 +55Gf 53646 +55Gg 53647 +55Gj 53648 +55Gk 53649 +55Gp 53650 +55Gq 53651 +55Gt 53652 +55Gu 53653 +55Gv 53654 +55Gw 53655 +55Gx 53656 +55Gz 53657 +55G0 53658 +55G2 53659 +55G3 53660 +55G+ 53661 +55KA 53662 +55KB 53663 +55KD 53664 +55KH 53665 +55KI 53666 +55KL 53667 +55KO 53668 +55KQ 53669 +55KY 53670 +55Kc 53671 +55Kd 53672 +55Ke 53673 +55Kf 53674 +55Kg 53675 +55Kj 53676 +55Kn 53677 +55Ko 53678 +55Kp 53679 +55Kw 53680 +55K6 53681 +55K9 53682 +55OK 53683 +55OP 53684 +55OS 53685 +55OU 53686 +55OY 53687 +55Oc 53688 +55Og 53689 +55Oi 53690 +55Oj 53691 +55Ok 53692 +55Om 53693 +55Or 53694 +55Ou 53695 +55Ov 53696 +55O0 53697 +55O2 53698 +55O3 53699 +55O/ 53700 +55SD 53701 +55SE 53702 +55SM 53703 +55SN 53704 +55SO 53705 +55SP 53706 +55SR 53707 +55ST 53708 +55SV 53709 +55SY 53710 +55SZ 53711 +55Sa 53712 +55Sc 53713 +55Sf 53714 +55Si 53715 +55Sj 53716 +55Sl 53717 +55Sm 53718 +55So 53719 +55Sp 53720 +55Sq 53721 +55Sr 53722 +55Ss 53723 +55St 53724 +55Sv 53725 +55Sw 53726 +55Sx 53727 +55Sy 53728 +55Sz 53729 +55S0 53730 +55S1 53731 +55S3 53732 +55S4 53733 +55S6 53734 +55S7 53735 +55S+ 53736 +55WA 53737 +55WF 53738 +55WI 53739 +55WJ 53740 +55WK 53741 +55WL 53742 +55WM 53743 +55WO 53744 +55WP 53745 +55WR 53746 +55WU 53747 +55WZ 53748 +55Wa 53749 +55Wb 53750 +55Wc 53751 +55Wd 53752 +55Wg 53753 +55Wi 53754 +55Wk 53755 +55Wl 53756 +55Wm 53757 +55Wq 53758 +55Wr 53759 +55Ws 53760 +55Wt 53761 +55Wv 53762 +55Ww 53763 +55Wy 53764 +55Wz 53765 +55W0 53766 +55W1 53767 +55W2 53768 +55W3 53769 +55W4 53770 +55W5 53771 +55W/ 53772 +55aD 53773 +55aG 53774 +55aH 53775 +55aK 53776 +55aL 53777 +55aN 53778 +55aO 53779 +55aP 53780 +55aR 53781 +55aU 53782 +55aW 53783 +55aX 53784 +55aZ 53785 +55aa 53786 +55ad 53787 +55af 53788 +55ag 53789 +55ah 53790 +55aj 53791 +55ak 53792 +55al 53793 +55ar 53794 +55as 53795 +55at 53796 +55au 53797 +55av 53798 +55aw 53799 +55ax 53800 +55ay 53801 +55az 53802 +55a0 53803 +55a1 53804 +55a4 53805 +55a5 53806 +55a8 53807 +55a9 53808 +55a+ 53809 +55eC 53810 +55eD 53811 +55eE 53812 +55eF 53813 +55eH 53814 +55eI 53815 +55eJ 53816 +55eK 53817 +55eN 53818 +55eS 53819 +55eU 53820 +55eV 53821 +55eY 53822 +55eZ 53823 +55eb 53824 +55ee 53825 +55ei 53826 +55ej 53827 +55ek 53828 +55em 53829 +55en 53830 +55eo 53831 +55ep 53832 +55eq 53833 +55er 53834 +55ew 53835 +55ex 53836 +55ey 53837 +55ez 53838 +55e0 53839 +55e5 53840 +55e6 53841 +55e8 53842 +55e+ 53843 +55e/ 53844 +55iA 53845 +55iB 53846 +55iF 53847 +55iG 53848 +55iK 53849 +55iL 53850 +55iM 53851 +55iN 53852 +55iT 53853 +55iV 53854 +55iX 53855 +55iY 53856 +55iZ 53857 +55id 53858 +55if 53859 +55ig 53860 +55ih 53861 +55ii 53862 +55ik 53863 +55im 53864 +55in 53865 +55ip 53866 +55iq 53867 +55ir 53868 +55iw 53869 +55iz 53870 +55i0 53871 +55i1 53872 +55i4 53873 +55i7 53874 +55i8 53875 +55i+ 53876 +55i/ 53877 +55mA 53878 +55mC 53879 +55mD 53880 +55mG 53881 +55mH 53882 +55mI 53883 +55mM 53884 +55mN 53885 +55mO 53886 +55mS 53887 +55mU 53888 +55mW 53889 +55mY 53890 +55mc 53891 +55me 53892 +55mh 53893 +55mi 53894 +55mj 53895 +55ml 53896 +55mn 53897 +55mp 53898 +55mq 53899 +55mr 53900 +55ms 53901 +55mu 53902 +55mv 53903 +55mw 53904 +55mx 53905 +55my 53906 +55m4 53907 +55m6 53908 +55m7 53909 +55m8 53910 +55m9 53911 +55m+ 53912 +55qA 53913 +55qC 53914 +55qE 53915 +55qG 53916 +55qH 53917 +55qI 53918 +55qL 53919 +55qM 53920 +55qO 53921 +55qQ 53922 +55qR 53923 +55qT 53924 +55qV 53925 +55qW 53926 +55qZ 53927 +55qa 53928 +55qd 53929 +55qe 53930 +55qk 53931 +55qm 53932 +55qu 53933 +55qv 53934 +55qw 53935 +55qx 53936 +55qy 53937 +55q0 53938 +55q3 53939 +55q4 53940 +55q5 53941 +55q6 53942 +55q/ 53943 +55uC 53944 +55uD 53945 +55uF 53946 +55uG 53947 +55uI 53948 +55uJ 53949 +55uK 53950 +55uN 53951 +55uO 53952 +55uP 53953 +55uQ 53954 +55uR 53955 +55uS 53956 +55uU 53957 +55uW 53958 +55uX 53959 +55uY 53960 +55ub 53961 +55uc 53962 +55ue 53963 +55uf 53964 +55uh 53965 +55uj 53966 +55uk 53967 +55ul 53968 +55un 53969 +55up 53970 +55uq 53971 +55uu 53972 +55uv 53973 +55ux 53974 +55uy 53975 +55u0 53976 +55u4 53977 +55u5 53978 +55u7 53979 +55u8 53980 +55u+ 53981 +55yA 53982 +55yB 53983 +55yE 53984 +55yH 53985 +55yI 53986 +55yJ 53987 +55yL 53988 +55yM 53989 +55yN 53990 +55yZ 53991 +55ya 53992 +55yb 53993 +55yc 53994 +55ye 53995 +55yf 53996 +55yg 53997 +55yl 53998 +55ym 53999 +55yo 54000 +55yp 54001 +55ys 54002 +55yt 54003 +55yv 54004 +55y1 54005 +55y2 54006 +55y3 54007 +55y4 54008 +55y6 54009 +55y8 54010 +55y+ 54011 +552A 54012 +552B 54013 +552D 54014 +552G 54015 +552H 54016 +552Q 54017 +552R 54018 +552a 54019 +552b 54020 +552c 54021 +552e 54022 +552f 54023 +552h 54024 +552i 54025 +552j 54026 +552l 54027 +552m 54028 +552o 54029 +552r 54030 +552s 54031 +552x 54032 +5525 54033 +5526 54034 +5529 54035 +552+ 54036 +552/ 54037 +556A 54038 +556E 54039 +556F 54040 +556G 54041 +556H 54042 +556L 54043 +556M 54044 +556O 54045 +556R 54046 +556S 54047 +556T 54048 +556e 54049 +556f 54050 +556g 54051 +556i 54052 +556l 54053 +556n 54054 +556p 54055 +556q 54056 +556s 54057 +556t 54058 +556w 54059 +556z 54060 +5561 54061 +5567 54062 +5568 54063 +5569 54064 +556+ 54065 +556/ 54066 +55+H 54067 +55+N 54068 +55+T 54069 +55+X 54070 +55+a 54071 +55+b 54072 +55+c 54073 +55+i 54074 +55+j 54075 +55+l 54076 +55+n 54077 +55+p 54078 +55+r 54079 +55+s 54080 +55+t 54081 +55+u 54082 +55+v 54083 +55+x 54084 +55+z 54085 +55+2 54086 +55+4 54087 +55+8 54088 +55+9 54089 +55++ 54090 +55+/ 54091 +56CA 54092 +56CB 54093 +56CC 54094 +56CK 54095 +56CM 54096 +56CN 54097 +56CS 54098 +56CU 54099 +56CV 54100 +56CW 54101 +56CX 54102 +56CY 54103 +56Ca 54104 +56Cc 54105 +56Cd 54106 +56Cf 54107 +56Cg 54108 +56Cj 54109 +56Cl 54110 +56Cm 54111 +56Cn 54112 +56Cp 54113 +56Cr 54114 +56Cs 54115 +56Ct 54116 +56Cw 54117 +56Cy 54118 +56C0 54119 +56C1 54120 +56C3 54121 +56C4 54122 +56C6 54123 +56C7 54124 +56C8 54125 +56C+ 54126 +56C/ 54127 +56GA 54128 +56GB 54129 +56GF 54130 +56GM 54131 +56GQ 54132 +56GS 54133 +56GV 54134 +56GW 54135 +56GX 54136 +56Ga 54137 +56Gd 54138 +56Ge 54139 +56Gq 54140 +56Gr 54141 +56Gs 54142 +56Gt 54143 +56Gu 54144 +56Gv 54145 +56Gy 54146 +56G0 54147 +56G3 54148 +56G8 54149 +56G/ 54150 +56KB 54151 +56KG 54152 +56KH 54153 +56KJ 54154 +56KM 54155 +56KN 54156 +56KO 54157 +56KR 54158 +56KT 54159 +56KV 54160 +56KX 54161 +56KY 54162 +56Ka 54163 +56Kb 54164 +56Kc 54165 +56Kf 54166 +56Kh 54167 +56Kj 54168 +56Kn 54169 +56Kp 54170 +56Kq 54171 +56Kw 54172 +56Kx 54173 +56Ky 54174 +56Kz 54175 +56K0 54176 +56K6 54177 +56K8 54178 +56K+ 54179 +56OB 54180 +56OF 54181 +56OG 54182 +56OJ 54183 +56OK 54184 +56OL 54185 +56OQ 54186 +56OR 54187 +56OS 54188 +56OU 54189 +56OV 54190 +56OZ 54191 +56Oa 54192 +56Oh 54193 +56On 54194 +56Oo 54195 +56Os 54196 +56Ov 54197 +56Oy 54198 +56O0 54199 +56O3 54200 +56O6 54201 +56O7 54202 +56O+ 54203 +56SB 54204 +56SF 54205 +56SM 54206 +56SO 54207 +56SS 54208 +56ST 54209 +56SZ 54210 +56Se 54211 +56Sm 54212 +56Sq 54213 +56Sr 54214 +56Ss 54215 +56S0 54216 +56S6 54217 +56S7 54218 +56S8 54219 +56S9 54220 +56S+ 54221 +56WA 54222 +56WB 54223 +56WG 54224 +56WH 54225 +56WI 54226 +56WJ 54227 +56WO 54228 +56WP 54229 +56WQ 54230 +56WT 54231 +56WW 54232 +56WX 54233 +56Wa 54234 +56Wb 54235 +56Wc 54236 +56Wd 54237 +56We 54238 +56Wf 54239 +56Wg 54240 +56Wi 54241 +56Wl 54242 +56Wn 54243 +56Wo 54244 +56Wt 54245 +56Wv 54246 +56W3 54247 +56W4 54248 +56W6 54249 +56W8 54250 +56W/ 54251 +56aA 54252 +56aB 54253 +56aE 54254 +56aF 54255 +56aK 54256 +56aN 54257 +56aO 54258 +56aP 54259 +56ab 54260 +56al 54261 +56am 54262 +56an 54263 +56ao 54264 +56ap 54265 +56aq 54266 +56au 54267 +56aw 54268 +56ax 54269 +56az 54270 +56a5 54271 +56a6 54272 +56a7 54273 +56a9 54274 +56a+ 54275 +56a/ 54276 +56eA 54277 +56eB 54278 +56eC 54279 +56eD 54280 +56eG 54281 +56eJ 54282 +56eL 54283 +56eN 54284 +56eP 54285 +56eR 54286 +56eS 54287 +56eV 54288 +56eY 54289 +56ef 54290 +56eh 54291 +56ej 54292 +56ek 54293 +56em 54294 +56en 54295 +56ep 54296 +56er 54297 +56es 54298 +56et 54299 +56ev 54300 +56ew 54301 +56e4 54302 +56e7 54303 +56e9 54304 +56e+ 54305 +56iA 54306 +56iC 54307 +56iF 54308 +56iI 54309 +56iK 54310 +56iL 54311 +56iN 54312 +56iO 54313 +56iU 54314 +56iX 54315 +56iZ 54316 +56ia 54317 +56ic 54318 +56ie 54319 +56if 54320 +56ig 54321 +56ij 54322 +56iu 54323 +56ix 54324 +56iy 54325 +56iz 54326 +56i3 54327 +56i5 54328 +56i7 54329 +56i8 54330 +56i9 54331 +56i/ 54332 +56mA 54333 +56mC 54334 +56mG 54335 +56mH 54336 +56mM 54337 +56mN 54338 +56mO 54339 +56mP 54340 +56mQ 54341 +56mR 54342 +56mX 54343 +56mh 54344 +56mi 54345 +56mj 54346 +56mp 54347 +56mr 54348 +56mw 54349 +56m0 54350 +56m2 54351 +56m3 54352 +56m4 54353 +56m5 54354 +56m6 54355 +56m9 54356 +56m/ 54357 +56qA 54358 +56qB 54359 +56qD 54360 +56qE 54361 +56qI 54362 +56qN 54363 +56qO 54364 +56qR 54365 +56qS 54366 +56qT 54367 +56qV 54368 +56qW 54369 +56qX 54370 +56qY 54371 +56qc 54372 +56qd 54373 +56qf 54374 +56qg 54375 +56qh 54376 +56qj 54377 +56ql 54378 +56qm 54379 +56qo 54380 +56qp 54381 +56qq 54382 +56qt 54383 +56qu 54384 +56qv 54385 +56qz 54386 +56q2 54387 +56q4 54388 +56q6 54389 +56q+ 54390 +56q/ 54391 +56uD 54392 +56uE 54393 +56uF 54394 +56uH 54395 +56uI 54396 +56uK 54397 +56uL 54398 +56uR 54399 +56uW 54400 +56uZ 54401 +56uc 54402 +56ud 54403 +56ue 54404 +56uf 54405 +56ug 54406 +56ui 54407 +56uj 54408 +56ul 54409 +56um 54410 +56uq 54411 +56ut 54412 +56uv 54413 +56uy 54414 +56u2 54415 +56u5 54416 +56u6 54417 +56u9 54418 +56u/ 54419 +56yC 54420 +56yD 54421 +56yE 54422 +56yG 54423 +56yI 54424 +56yK 54425 +56yL 54426 +56yP 54427 +56yR 54428 +56yU 54429 +56yV 54430 +56yW 54431 +56yY 54432 +56yZ 54433 +56yb 54434 +56ye 54435 +56yg 54436 +56yk 54437 +56yl 54438 +56ym 54439 +56yo 54440 +56yp 54441 +56yq 54442 +56yr 54443 +56ys 54444 +56yz 54445 +56y1 54446 +56y4 54447 +56y5 54448 +56y6 54449 +56y8 54450 +56y+ 54451 +562F 54452 +562G 54453 +562H 54454 +562I 54455 +562J 54456 +562K 54457 +562L 54458 +562M 54459 +562N 54460 +562P 54461 +562Q 54462 +562R 54463 +562S 54464 +562U 54465 +562W 54466 +562Y 54467 +562a 54468 +562b 54469 +562c 54470 +562d 54471 +562g 54472 +562i 54473 +562l 54474 +562n 54475 +562s 54476 +562u 54477 +562w 54478 +562x 54479 +562y 54480 +5621 54481 +5623 54482 +5625 54483 +5626 54484 +5627 54485 +5628 54486 +562+ 54487 +566A 54488 +566F 54489 +566G 54490 +566H 54491 +566L 54492 +566N 54493 +566P 54494 +566Q 54495 +566S 54496 +566T 54497 +566U 54498 +566V 54499 +566X 54500 +566Z 54501 +566a 54502 +566c 54503 +566d 54504 +566f 54505 +566h 54506 +566i 54507 +566l 54508 +566m 54509 +566n 54510 +566o 54511 +566p 54512 +566q 54513 +566r 54514 +566s 54515 +566t 54516 +566x 54517 +5660 54518 +5664 54519 +5667 54520 +5668 54521 +566+ 54522 +56+A 54523 +56+B 54524 +56+E 54525 +56+G 54526 +56+H 54527 +56+J 54528 +56+L 54529 +56+M 54530 +56+R 54531 +56+T 54532 +56+Z 54533 +56+a 54534 +56+d 54535 +56+g 54536 +56+h 54537 +56+k 54538 +56+l 54539 +56+m 54540 +56+p 54541 +56+q 54542 +56+t 54543 +56+u 54544 +56+x 54545 +56+z 54546 +56+2 54547 +56+3 54548 +56+8 54549 +56++ 54550 +57CA 54551 +57CD 54552 +57CH 54553 +57CL 54554 +57CM 54555 +57CN 54556 +57CP 54557 +57CR 54558 +57CS 54559 +57CT 54560 +57CU 54561 +57CW 54562 +57CX 54563 +57Cf 54564 +57Ch 54565 +57Cj 54566 +57Cm 54567 +57Cn 54568 +57Cq 54569 +57Cr 54570 +57Cw 54571 +57C3 54572 +57C4 54573 +57C6 54574 +57C9 54575 +57C+ 54576 +57C/ 54577 +57GA 54578 +57GB 54579 +57GD 54580 +57GH 54581 +57GM 54582 +57GN 54583 +57GP 54584 +57GQ 54585 +57GT 54586 +57GU 54587 +57GW 54588 +57Gf 54589 +57Gg 54590 +57Gj 54591 +57Gk 54592 +57Gs 54593 +57Gu 54594 +57Gy 54595 +57Gz 54596 +57G7 54597 +57G8 54598 +57G9 54599 +57G+ 54600 +57KB 54601 +57KC 54602 +57KD 54603 +57KJ 54604 +57KL 54605 +57KN 54606 +57KR 54607 +57KS 54608 +57KV 54609 +57KX 54610 +57KY 54611 +57Kb 54612 +57Kd 54613 +57Kf 54614 +57Ki 54615 +57Kk 54616 +57Kl 54617 +57Km 54618 +57Kn 54619 +57Kq 54620 +57Kt 54621 +57Ku 54622 +57Kx 54623 +57Ky 54624 +57Kz 54625 +57K1 54626 +57K5 54627 +57K8 54628 +57K9 54629 +57K+ 54630 +57OA 54631 +57OB 54632 +57OF 54633 +57OK 54634 +57OM 54635 +57ON 54636 +57OO 54637 +57OS 54638 +57OV 54639 +57OW 54640 +57OX 54641 +57OY 54642 +57OZ 54643 +57Oc 54644 +57Oe 54645 +57Of 54646 +57Og 54647 +57Oi 54648 +57On 54649 +57Oo 54650 +57Ov 54651 +57Oy 54652 +57O2 54653 +57O4 54654 +57O6 54655 +57O7 54656 +57O+ 54657 +57SA 54658 +57SC 54659 +57SE 54660 +57SF 54661 +57SG 54662 +57SJ 54663 +57SK 54664 +57SL 54665 +57SN 54666 +57SQ 54667 +57SU 54668 +57SX 54669 +57SY 54670 +57SZ 54671 +57Sa 54672 +57Sb 54673 +57Sc 54674 +57Sg 54675 +57Sh 54676 +57Si 54677 +57Sn 54678 +57Sr 54679 +57Ss 54680 +57Su 54681 +57Sv 54682 +57Sw 54683 +57Sy 54684 +57Sz 54685 +57S1 54686 +57S5 54687 +57S6 54688 +57WA 54689 +57WC 54690 +57WD 54691 +57WE 54692 +57WF 54693 +57WG 54694 +57WL 54695 +57WM 54696 +57WO 54697 +57WP 54698 +57WQ 54699 +57WV 54700 +57WW 54701 +57Wb 54702 +57Wc 54703 +57We 54704 +57Wh 54705 +57Wi 54706 +57Wj 54707 +57Wm 54708 +57Wo 54709 +57Wu 54710 +57Wv 54711 +57Wx 54712 +57Wy 54713 +57Wz 54714 +57W1 54715 +57W2 54716 +57W5 54717 +57W6 54718 +57W9 54719 +57aB 54720 +57aJ 54721 +57aP 54722 +57aT 54723 +57aZ 54724 +57aa 54725 +57ab 54726 +57ac 54727 +57af 54728 +57ag 54729 +57ai 54730 +57aj 54731 +57am 54732 +57as 54733 +57at 54734 +57au 54735 +57av 54736 +57aw 54737 +57ax 54738 +57ay 54739 +57a0 54740 +57a1 54741 +57a2 54742 +57a4 54743 +57a6 54744 +57a7 54745 +57a9 54746 +57a+ 54747 +57a/ 54748 +57eH 54749 +57eK 54750 +57eL 54751 +57eP 54752 +57eR 54753 +57eS 54754 +57eY 54755 +57ea 54756 +57eb 54757 +57ed 54758 +57ee 54759 +57eg 54760 +57eh 54761 +57ej 54762 +57ek 54763 +57eo 54764 +57ep 54765 +57es 54766 +57ev 54767 +57ey 54768 +57e0 54769 +57e7 54770 +57iB 54771 +57iE 54772 +57iF 54773 +57iI 54774 +57iJ 54775 +57iK 54776 +57iL 54777 +57iS 54778 +57ib 54779 +57ie 54780 +57if 54781 +57ig 54782 +57ii 54783 +57ij 54784 +57im 54785 +57ir 54786 +57iu 54787 +57ix 54788 +57iy 54789 +57i0 54790 +57i1 54791 +57i3 54792 +57i5 54793 +57i6 54794 +57i7 54795 +57i9 54796 +57i+ 54797 +57mB 54798 +57mD 54799 +57mG 54800 +57mH 54801 +57mK 54802 +57mL 54803 +57mN 54804 +57mR 54805 +57mU 54806 +57mV 54807 +57mW 54808 +57mZ 54809 +57ma 54810 +57md 54811 +57me 54812 +57mh 54813 +57mn 54814 +57mp 54815 +57mq 54816 +57mr 54817 +57mt 54818 +57mw 54819 +57mz 54820 +57m5 54821 +57m7 54822 +57m8 54823 +57m9 54824 +57qC 54825 +57qH 54826 +57qI 54827 +57qM 54828 +57qN 54829 +57qP 54830 +57qQ 54831 +57qS 54832 +57qT 54833 +57qU 54834 +57qW 54835 +57qb 54836 +57qc 54837 +57qg 54838 +57qh 54839 +57qi 54840 +57qj 54841 +57qk 54842 +57ql 54843 +57qm 54844 +57qn 54845 +57qo 54846 +57qp 54847 +57qq 54848 +57qr 54849 +57qs 54850 +57qt 54851 +57qu 54852 +57qv 54853 +57qw 54854 +57qx 54855 +57qy 54856 +57qz 54857 +57q1 54858 +57q2 54859 +57q3 54860 +57q4 54861 +57q5 54862 +57q6 54863 +57q7 54864 +57q9 54865 +57q+ 54866 +57q/ 54867 +57uA 54868 +57uB 54869 +57uC 54870 +57uD 54871 +57uE 54872 +57uF 54873 +57uG 54874 +57uH 54875 +57uI 54876 +57uJ 54877 +57uK 54878 +57uL 54879 +57uM 54880 +57uN 54881 +57uO 54882 +57uP 54883 +57uQ 54884 +57uR 54885 +57uS 54886 +57uT 54887 +57uU 54888 +57uV 54889 +57uX 54890 +57uY 54891 +57uZ 54892 +57ua 54893 +57ub 54894 +57uc 54895 +57ud 54896 +57ue 54897 +57uf 54898 +57uh 54899 +57ui 54900 +57uj 54901 +57uk 54902 +57ul 54903 +57um 54904 +57un 54905 +57uo 54906 +57up 54907 +57uq 54908 +57ur 54909 +57ut 54910 +57uu 54911 +57uv 54912 +57uw 54913 +57ux 54914 +57uy 54915 +57uz 54916 +57u0 54917 +57u1 54918 +57u2 54919 +57u3 54920 +57u4 54921 +57u6 54922 +57u7 54923 +57u8 54924 +57u9 54925 +57u+ 54926 +57u/ 54927 +57yA 54928 +57yB 54929 +57yC 54930 +57yD 54931 +57yE 54932 +57yF 54933 +57yG 54934 +57yH 54935 +57yI 54936 +57yJ 54937 +57yK 54938 +57yL 54939 +57yM 54940 +57yO 54941 +57yR 54942 +57yS 54943 +57yT 54944 +57yU 54945 +57yV 54946 +57yW 54947 +57yX 54948 +57yY 54949 +57yZ 54950 +57ya 54951 +57yb 54952 +57yc 54953 +57yd 54954 +57yf 54955 +57yg 54956 +57yi 54957 +57yj 54958 +57yk 54959 +57yl 54960 +57ym 54961 +57yn 54962 +57yo 54963 +57yp 54964 +57yq 54965 +57yr 54966 +57ys 54967 +57yt 54968 +57yu 54969 +57yv 54970 +57yw 54971 +57yx 54972 +57yz 54973 +57y0 54974 +57y1 54975 +57y2 54976 +57y4 54977 +57y6 54978 +572C 54979 +572E 54980 +572F 54981 +572H 54982 +572M 54983 +572N 54984 +572Q 54985 +572R 54986 +572U 54987 +572V 54988 +572X 54989 +572Y 54990 +572a 54991 +572f 54992 +572g 54993 +572h 54994 +572i 54995 +572n 54996 +572o 54997 +572p 54998 +572q 54999 +572r 55000 +572u 55001 +572w 55002 +572y 55003 +5720 55004 +5721 55005 +5723 55006 +5725 55007 +572+ 55008 +576B 55009 +576C 55010 +576D 55011 +576F 55012 +576G 55013 +576H 55014 +576I 55015 +576K 55016 +576M 55017 +576O 55018 +576R 55019 +576U 55020 +576W 55021 +576X 55022 +576a 55023 +576d 55024 +576e 55025 +576f 55026 +576h 55027 +576j 55028 +576k 55029 +576n 55030 +576o 55031 +576p 55032 +576v 55033 +576w 55034 +576y 55035 +5762 55036 +5764 55037 +5765 55038 +5769 55039 +576/ 55040 +57+A 55041 +57+B 55042 +57+D 55043 +57+F 55044 +57+G 55045 +57+K 55046 +57+M 55047 +57+O 55048 +57+S 55049 +57+U 55050 +57+V 55051 +57+Y 55052 +57+a 55053 +57+b 55054 +57+f 55055 +57+g 55056 +57+h 55057 +57+l 55058 +57+m 55059 +57+p 55060 +57+r 55061 +57+u 55062 +57+w 55063 +57+x 55064 +57+z 55065 +57+5 55066 +57+7 55067 +57+8 55068 +6ICA 55069 +6ICB 55070 +6ICD 55071 +6ICE 55072 +6ICF 55073 +6ICG 55074 +6ICL 55075 +6ICM 55076 +6ICN 55077 +6ICQ 55078 +6ICS 55079 +6ICV 55080 +6ICX 55081 +6ICY 55082 +6ICZ 55083 +6ICc 55084 +6ICm 55085 +6ICn 55086 +6ICo 55087 +6ICq 55088 +6ICx 55089 +6ICz 55090 +6IC1 55091 +6IC2 55092 +6IC3 55093 +6IC4 55094 +6IC7 55095 +6IC9 55096 +6IC/ 55097 +6IGC 55098 +6IGD 55099 +6IGG 55100 +6IGK 55101 +6IGL 55102 +6IGM 55103 +6IGN 55104 +6IGS 55105 +6IGU 55106 +6IGW 55107 +6IGY 55108 +6IGa 55109 +6IGe 55110 +6IGf 55111 +6IGh 55112 +6IGi 55113 +6IGo 55114 +6IGp 55115 +6IGq 55116 +6IGv 55117 +6IGw 55118 +6IGy 55119 +6IGz 55120 +6IG0 55121 +6IG1 55122 +6IG2 55123 +6IG3 55124 +6IG9 55125 +6IG+ 55126 +6IG/ 55127 +6IKD 55128 +6IKE 55129 +6IKF 55130 +6IKG 55131 +6IKH 55132 +6IKJ 55133 +6IKL 55134 +6IKM 55135 +6IKP 55136 +6IKT 55137 +6IKW 55138 +6IKY 55139 +6IKa 55140 +6IKb 55141 +6IKd 55142 +6IKf 55143 +6IKg 55144 +6IKh 55145 +6IKi 55146 +6IKk 55147 +6IKl 55148 +6IKp 55149 +6IKq 55150 +6IKr 55151 +6IKs 55152 +6IKt 55153 +6IKu 55154 +6IKv 55155 +6IKx 55156 +6IKy 55157 +6IK0 55158 +6IK3 55159 +6IK4 55160 +6IK6 55161 +6IK8 55162 +6IK9 55163 +6IK+ 55164 +6IK/ 55165 +6IOA 55166 +6IOB 55167 +6IOD 55168 +6IOE 55169 +6IOG 55170 +6IOM 55171 +6ION 55172 +6IOO 55173 +6IOW 55174 +6IOX 55175 +6IOZ 55176 +6IOa 55177 +6IOb 55178 +6IOc 55179 +6IOd 55180 +6IOe 55181 +6IOh 55182 +6IOk 55183 +6IOl 55184 +6IOn 55185 +6IOq 55186 +6IOr 55187 +6IOs 55188 +6IOt 55189 +6IOv 55190 +6IOw 55191 +6IOx 55192 +6IOz 55193 +6IO0 55194 +6IO2 55195 +6IO4 55196 +6IO6 55197 +6IO8 55198 +6IO9 55199 +6ISB 55200 +6ISC 55201 +6ISF 55202 +6ISG 55203 +6ISH 55204 +6ISI 55205 +6ISJ 55206 +6ISK 55207 +6ISN 55208 +6ISP 55209 +6ISQ 55210 +6ISR 55211 +6ISS 55212 +6IST 55213 +6ISU 55214 +6ISW 55215 +6ISY 55216 +6ISa 55217 +6ISb 55218 +6ISj 55219 +6ISp 55220 +6ISr 55221 +6ISs 55222 +6ISv 55223 +6ISw 55224 +6ISx 55225 +6ISy 55226 +6ISz 55227 +6IS3 55228 +6IS4 55229 +6IS5 55230 +6IS+ 55231 +6IWG 55232 +6IWI 55233 +6IWK 55234 +6IWL 55235 +6IWM 55236 +6IWO 55237 +6IWQ 55238 +6IWR 55239 +6IWT 55240 +6IWU 55241 +6IWV 55242 +6IWY 55243 +6IWZ 55244 +6IWa 55245 +6IWf 55246 +6IWg 55247 +6IWl 55248 +6IWm 55249 +6IWn 55250 +6IWp 55251 +6IWr 55252 +6IWt 55253 +6IWu 55254 +6IWw 55255 +6IWx 55256 +6IWz 55257 +6IW0 55258 +6IW4 55259 +6IW5 55260 +6IW6 55261 +6IW7 55262 +6IW8 55263 +6IW+ 55264 +6IW/ 55265 +6IaA 55266 +6IaC 55267 +6IaD 55268 +6IaI 55269 +6IaK 55270 +6IaP 55271 +6IaR 55272 +6IaV 55273 +6IaY 55274 +6Iaa 55275 +6Iab 55276 +6Iac 55277 +6Iad 55278 +6Iag 55279 +6Iaj 55280 +6Iam 55281 +6Iao 55282 +6Iap 55283 +6Iaz 55284 +6Ia0 55285 +6Ia1 55286 +6Ia6 55287 +6Ia7 55288 +6Ia9 55289 +6Ia+ 55290 +6Ia/ 55291 +6IeA 55292 +6IeC 55293 +6IeD 55294 +6IeG 55295 +6IeH 55296 +6IeI 55297 +6IeJ 55298 +6IeK 55299 +6IeM 55300 +6IeN 55301 +6IeR 55302 +6IeT 55303 +6IeY 55304 +6IeZ 55305 +6Iea 55306 +6Iec 55307 +6Ief 55308 +6Iej 55309 +6Iel 55310 +6Ien 55311 +6Ieo 55312 +6Ieq 55313 +6Ies 55314 +6Iet 55315 +6Iez 55316 +6Ie0 55317 +6Ie6 55318 +6Ie7 55319 +6Ie8 55320 +6Ie+ 55321 +6IiA 55322 +6IiB 55323 +6IiC 55324 +6IiF 55325 +6IiG 55326 +6IiH 55327 +6IiI 55328 +6IiJ 55329 +6IiK 55330 +6IiM 55331 +6IiN 55332 +6IiO 55333 +6IiQ 55334 +6IiS 55335 +6IiU 55336 +6IiW 55337 +6IiX 55338 +6IiY 55339 +6Iib 55340 +6Iic 55341 +6Iie 55342 +6Iif 55343 +6Iii 55344 +6Iij 55345 +6Iip 55346 +6Iiq 55347 +6Iir 55348 +6Iis 55349 +6Iiu 55350 +6Iiv 55351 +6Iiw 55352 +6Iix 55353 +6Iiy 55354 +6Iiz 55355 +6Ii1 55356 +6Ii2 55357 +6Ii3 55358 +6Ii4 55359 +6Ii5 55360 +6Ii+ 55361 +6ImA 55362 +6ImE 55363 +6ImH 55364 +6ImJ 55365 +6ImL 55366 +6ImP 55367 +6ImY 55368 +6ImZ 55369 +6Imf 55370 +6Imk 55371 +6Imm 55372 +6Imo 55373 +6Imq 55374 +6Imr 55375 +6Imu 55376 +6Imv 55377 +6Imw 55378 +6Imx 55379 +6Imy 55380 +6Imz 55381 +6Im2 55382 +6Im3 55383 +6Im4 55384 +6Im5 55385 +6Im6 55386 +6Im9 55387 +6Im+ 55388 +6Im/ 55389 +6IqC 55390 +6IqD 55391 +6IqI 55392 +6IqK 55393 +6IqL 55394 +6IqN 55395 +6IqO 55396 +6IqR 55397 +6IqS 55398 +6IqX 55399 +6IqY 55400 +6IqZ 55401 +6Iqc 55402 +6Iqd 55403 +6Iqf 55404 +6Iqh 55405 +6Iqj 55406 +6Iqk 55407 +6Iql 55408 +6Iqm 55409 +6Iqo 55410 +6Iqp 55411 +6Iqq 55412 +6Iqr 55413 +6Iqs 55414 +6Iqt 55415 +6Iqu 55416 +6Iqv 55417 +6Iqw 55418 +6Iqx 55419 +6Iqz 55420 +6Iq3 55421 +6Iq4 55422 +6Iq5 55423 +6Iq7 55424 +6Iq9 55425 +6Iq+ 55426 +6IuB 55427 +6IuE 55428 +6IuF 55429 +6IuH 55430 +6IuI 55431 +6IuK 55432 +6IuL 55433 +6IuM 55434 +6IuN 55435 +6IuO 55436 +6IuP 55437 +6IuR 55438 +6IuS 55439 +6IuT 55440 +6IuU 55441 +6IuV 55442 +6IuX 55443 +6IuY 55444 +6IuZ 55445 +6Iub 55446 +6Iuc 55447 +6Iue 55448 +6Iuf 55449 +6Iuh 55450 +6Iui 55451 +6Iuj 55452 +6Iuk 55453 +6Iul 55454 +6Ium 55455 +6Iun 55456 +6Iur 55457 +6Iuv 55458 +6Iux 55459 +6Iuz 55460 +6Iu0 55461 +6Iu3 55462 +6Iu5 55463 +6Iu6 55464 +6Iu7 55465 +6Iu8 55466 +6Iu+ 55467 +6IyB 55468 +6IyC 55469 +6IyD 55470 +6IyE 55471 +6IyF 55472 +6IyG 55473 +6IyI 55474 +6IyJ 55475 +6IyM 55476 +6IyO 55477 +6IyP 55478 +6IyR 55479 +6IyU 55480 +6IyV 55481 +6IyX 55482 +6IyY 55483 +6Iya 55484 +6Iyb 55485 +6Iyc 55486 +6Iyj 55487 +6Iyn 55488 +6Iyo 55489 +6Iyr 55490 +6Iys 55491 +6Iyt 55492 +6Iyv 55493 +6Iyx 55494 +6Iyy 55495 +6Iyz 55496 +6Iy0 55497 +6Iy1 55498 +6Iy2 55499 +6Iy4 55500 +6Iy5 55501 +6Iy6 55502 +6Iy8 55503 +6I2A 55504 +6I2D 55505 +6I2F 55506 +6I2G 55507 +6I2H 55508 +6I2J 55509 +6I2K 55510 +6I2P 55511 +6I2Q 55512 +6I2R 55513 +6I2S 55514 +6I2U 55515 +6I2Y 55516 +6I2Z 55517 +6I2a 55518 +6I2b 55519 +6I2c 55520 +6I2e 55521 +6I2f 55522 +6I2g 55523 +6I2h 55524 +6I2j 55525 +6I2k 55526 +6I2l 55527 +6I2m 55528 +6I2n 55529 +6I2o 55530 +6I2p 55531 +6I2q 55532 +6I2r 55533 +6I2s 55534 +6I2v 55535 +6I2z 55536 +6I23 55537 +6I24 55538 +6I27 55539 +6I28 55540 +6I29 55541 +6I6F 55542 +6I6G 55543 +6I6H 55544 +6I6J 55545 +6I6K 55546 +6I6O 55547 +6I6S 55548 +6I6T 55549 +6I6V 55550 +6I6W 55551 +6I6Y 55552 +6I6Z 55553 +6I6a 55554 +6I6c 55555 +6I6e 55556 +6I6f 55557 +6I6g 55558 +6I6i 55559 +6I6n 55560 +6I6o 55561 +6I6p 55562 +6I6q 55563 +6I6r 55564 +6I6x 55565 +6I6y 55566 +6I6z 55567 +6I60 55568 +6I61 55569 +6I62 55570 +6I63 55571 +6I64 55572 +6I65 55573 +6I66 55574 +6I68 55575 +6I69 55576 +6I+A 55577 +6I+B 55578 +6I+F 55579 +6I+H 55580 +6I+J 55581 +6I+K 55582 +6I+M 55583 +6I+O 55584 +6I+P 55585 +6I+T 55586 +6I+U 55587 +6I+W 55588 +6I+Y 55589 +6I+c 55590 +6I+f 55591 +6I+g 55592 +6I+h 55593 +6I+l 55594 +6I+o 55595 +6I+p 55596 +6I+q 55597 +6I+r 55598 +6I+v 55599 +6I+w 55600 +6I+x 55601 +6I+y 55602 +6I+0 55603 +6I+4 55604 +6I+5 55605 +6I+9 55606 +6JCB 55607 +6JCD 55608 +6JCE 55609 +6JCG 55610 +6JCK 55611 +6JCL 55612 +6JCM 55613 +6JCN 55614 +6JCO 55615 +6JCP 55616 +6JCT 55617 +6JCY 55618 +6JCc 55619 +6JCd 55620 +6JCg 55621 +6JCi 55622 +6JCk 55623 +6JCl 55624 +6JCm 55625 +6JCn 55626 +6JCo 55627 +6JCp 55628 +6JCs 55629 +6JCx 55630 +6JC1 55631 +6JC4 55632 +6JC5 55633 +6JC8 55634 +6JC9 55635 +6JGG 55636 +6JGI 55637 +6JGJ 55638 +6JGO 55639 +6JGR 55640 +6JGX 55641 +6JGZ 55642 +6JGa 55643 +6JGb 55644 +6JGh 55645 +6JGj 55646 +6JGm 55647 +6JGp 55648 +6JGr 55649 +6JGs 55650 +6JGt 55651 +6JGv 55652 +6JGx 55653 +6JGz 55654 +6JG1 55655 +6JG2 55656 +6JG3 55657 +6JG4 55658 +6JG5 55659 +6JG6 55660 +6JKC 55661 +6JKE 55662 +6JKL 55663 +6JKM 55664 +6JKO 55665 +6JKQ 55666 +6JKU 55667 +6JKX 55668 +6JKZ 55669 +6JKc 55670 +6JKf 55671 +6JKh 55672 +6JKv 55673 +6JKy 55674 +6JK0 55675 +6JK4 55676 +6JK5 55677 +6JK6 55678 +6JK7 55679 +6JK8 55680 +6JK9 55681 +6JK/ 55682 +6JOA 55683 +6JOB 55684 +6JOC 55685 +6JOE 55686 +6JOG 55687 +6JOJ 55688 +6JOK 55689 +6JOL 55690 +6JON 55691 +6JOQ 55692 +6JOR 55693 +6JOT 55694 +6JOW 55695 +6JOZ 55696 +6JOa 55697 +6JOd 55698 +6JOf 55699 +6JOg 55700 +6JOj 55701 +6JOl 55702 +6JOm 55703 +6JOs 55704 +6JOu 55705 +6JO0 55706 +6JO8 55707 +6JO/ 55708 +6JSA 55709 +6JSM 55710 +6JSR 55711 +6JST 55712 +6JSU 55713 +6JSV 55714 +6JSX 55715 +6JSa 55716 +6JSf 55717 +6JSh 55718 +6JSj 55719 +6JSk 55720 +6JSl 55721 +6JSm 55722 +6JSr 55723 +6JSs 55724 +6JSt 55725 +6JS1 55726 +6JS3 55727 +6JS4 55728 +6JS5 55729 +6JS6 55730 +6JS7 55731 +6JS8 55732 +6JS9 55733 +6JWB 55734 +6JWD 55735 +6JWI 55736 +6JWJ 55737 +6JWK 55738 +6JWL 55739 +6JWO 55740 +6JWW 55741 +6JWX 55742 +6JWZ 55743 +6JWa 55744 +6JWe 55745 +6JWj 55746 +6JWk 55747 +6JWo 55748 +6JWp 55749 +6JWq 55750 +6JWr 55751 +6JWt 55752 +6JWy 55753 +6JW0 55754 +6JW3 55755 +6JW6 55756 +6JW7 55757 +6JW+ 55758 +6JaA 55759 +6JaB 55760 +6JaE 55761 +6JaF 55762 +6JaH 55763 +6JaI 55764 +6JaK 55765 +6JaP 55766 +6JaQ 55767 +6JaR 55768 +6JaU 55769 +6JaX 55770 +6JaZ 55771 +6Jab 55772 +6Jac 55773 +6Jai 55774 +6Jak 55775 +6Jam 55776 +6Jao 55777 +6Jap 55778 +6Jaq 55779 +6Jar 55780 +6Jas 55781 +6Jat 55782 +6Jau 55783 +6Jav 55784 +6Jaw 55785 +6Jaz 55786 +6Ja3 55787 +6Ja5 55788 +6Ja6 55789 +6JeB 55790 +6JeJ 55791 +6JeN 55792 +6JeP 55793 +6JeQ 55794 +6JeT 55795 +6JeV 55796 +6Jec 55797 +6Jed 55798 +6Jeg 55799 +6Jek 55800 +6Jel 55801 +6Jem 55802 +6Jep 55803 +6Jeq 55804 +6Je3 55805 +6Je5 55806 +6Je6 55807 +6Je7 55808 +6Je/ 55809 +6JiC 55810 +6JiF 55811 +6JiG 55812 +6JiH 55813 +6JiK 55814 +6JiL 55815 +6JiR 55816 +6JiT 55817 +6JiW 55818 +6JiX 55819 +6JiY 55820 +6Jia 55821 +6Jin 55822 +6Jit 55823 +6Jiw 55824 +6Ji4 55825 +6Ji8 55826 +6Ji/ 55827 +6JmO 55828 +6JmP 55829 +6JmQ 55830 +6JmR 55831 +6JmT 55832 +6JmU 55833 +6JmV 55834 +6Jma 55835 +6Jmb 55836 +6Jmc 55837 +6Jme 55838 +6Jmf 55839 +6Jmi 55840 +6Jmn 55841 +6Jmr 55842 +6Jms 55843 +6Jmu 55844 +6Jmx 55845 +6Jm1 55846 +6Jm5 55847 +6Jm6 55848 +6Jm7 55849 +6Jm9 55850 +6Jm+ 55851 +6Jm/ 55852 +6JqA 55853 +6JqB 55854 +6JqC 55855 +6JqK 55856 +6JqL 55857 +6JqM 55858 +6JqN 55859 +6JqT 55860 +6JqV 55861 +6Jqc 55862 +6Jqd 55863 +6Jqh 55864 +6Jqj 55865 +6Jqk 55866 +6Jqn 55867 +6Jqo 55868 +6Jqp 55869 +6Jqq 55870 +6Jqr 55871 +6Jqs 55872 +6Jqv 55873 +6Jqw 55874 +6Jqx 55875 +6Jqz 55876 +6Jq0 55877 +6Jq1 55878 +6Jq2 55879 +6JuA 55880 +6JuE 55881 +6JuG 55882 +6JuH 55883 +6JuJ 55884 +6JuK 55885 +6JuL 55886 +6JuN 55887 +6JuO 55888 +6JuP 55889 +6JuQ 55890 +6JuR 55891 +6JuU 55892 +6JuY 55893 +6JuZ 55894 +6Jub 55895 +6Jue 55896 +6Juf 55897 +6Juk 55898 +6Jup 55899 +6Jus 55900 +6Jut 55901 +6Juu 55902 +6Juv 55903 +6Juw 55904 +6Jux 55905 +6Juy 55906 +6Juz 55907 +6Ju0 55908 +6Ju4 55909 +6Ju5 55910 +6Ju7 55911 +6Ju8 55912 +6Ju9 55913 +6Ju+ 55914 +6JyA 55915 +6JyC 55916 +6JyD 55917 +6JyG 55918 +6JyH 55919 +6JyI 55920 +6JyJ 55921 +6JyK 55922 +6JyN 55923 +6JyO 55924 +6JyR 55925 +6JyS 55926 +6JyT 55927 +6JyV 55928 +6JyX 55929 +6JyY 55930 +6Jya 55931 +6Jyb 55932 +6Jyc 55933 +6Jye 55934 +6Jyh 55935 +6Jyi 55936 +6Jyj 55937 +6Jyl 55938 +6Jyp 55939 +6Jyu 55940 +6Jyx 55941 +6Jy0 55942 +6Jy3 55943 +6Jy7 55944 +6Jy+ 55945 +6Jy/ 55946 +6J2H 55947 +6J2I 55948 +6J2J 55949 +6J2L 55950 +6J2M 55951 +6J2O 55952 +6J2T 55953 +6J2V 55954 +6J2X 55955 +6J2Y 55956 +6J2Z 55957 +6J2f 55958 +6J2g 55959 +6J2j 55960 +6J2l 55961 +6J2m 55962 +6J2o 55963 +6J2u 55964 +6J2w 55965 +6J2y 55966 +6J20 55967 +6J22 55968 +6J24 55969 +6J27 55970 +6J28 55971 +6J29 55972 +6J2+ 55973 +6J2/ 55974 +6J6C 55975 +6J6D 55976 +6J6F 55977 +6J6I 55978 +6J6L 55979 +6J6N 55980 +6J6e 55981 +6J6f 55982 +6J6g 55983 +6J6i 55984 +6J6o 55985 +6J6r 55986 +6J6s 55987 +6J6t 55988 +6J6v 55989 +6J6z 55990 +6J61 55991 +6J66 55992 +6J67 55993 +6J69 55994 +6J+A 55995 +6J+E 55996 +6J+G 55997 +6J+H 55998 +6J+K 55999 +6J+L 56000 +6J+Q 56001 +6J+R 56002 +6J+S 56003 +6J+b 56004 +6J+c 56005 +6J+f 56006 +6J+g 56007 +6J+l 56008 +6J+q 56009 +6J+s 56010 +6J+t 56011 +6J+u 56012 +6J+v 56013 +6J+y 56014 +6J+2 56015 +6J+3 56016 +6J+5 56017 +6J+7 56018 +6J++ 56019 +6KCD 56020 +6KCF 56021 +6KCK 56022 +6KCL 56023 +6KCN 56024 +6KCO 56025 +6KCP 56026 +6KCR 56027 +6KCT 56028 +6KCV 56029 +6KCW 56030 +6KCb 56031 +6KCc 56032 +6KCf 56033 +6KCh 56034 +6KCi 56035 +6KCj 56036 +6KCn 56037 +6KCx 56038 +6KCy 56039 +6KC2 56040 +6KC5 56041 +6KC7 56042 +6KC8 56043 +6KGA 56044 +6KGE 56045 +6KGF 56046 +6KGG 56047 +6KGM 56048 +6KGN 56049 +6KGO 56050 +6KGS 56051 +6KGT 56052 +6KGU 56053 +6KGX 56054 +6KGZ 56055 +6KGb 56056 +6KGd 56057 +6KGe 56058 +6KGh 56059 +6KGi 56060 +6KGj 56061 +6KGl 56062 +6KGo 56063 +6KGp 56064 +6KGr 56065 +6KGs 56066 +6KGu 56067 +6KGv 56068 +6KGw 56069 +6KGy 56070 +6KG1 56071 +6KG3 56072 +6KG9 56073 +6KG+ 56074 +6KG/ 56075 +6KKB 56076 +6KKC 56077 +6KKE 56078 +6KKF 56079 +6KKG 56080 +6KKI 56081 +6KKL 56082 +6KKN 56083 +6KKS 56084 +6KKT 56085 +6KKW 56086 +6KKX 56087 +6KKZ 56088 +6KKc 56089 +6KKd 56090 +6KKe 56091 +6KKi 56092 +6KKk 56093 +6KKq 56094 +6KKr 56095 +6KKt 56096 +6KKw 56097 +6KKx 56098 +6KK0 56099 +6KK1 56100 +6KK3 56101 +6KK8 56102 +6KK/ 56103 +6KOB 56104 +6KOC 56105 +6KOD 56106 +6KOE 56107 +6KOF 56108 +6KOG 56109 +6KOH 56110 +6KOJ 56111 +6KOK 56112 +6KOO 56113 +6KOP 56114 +6KOS 56115 +6KOU 56116 +6KOV 56117 +6KOY 56118 +6KOZ 56119 +6KOb 56120 +6KOc 56121 +6KOd 56122 +6KOf 56123 +6KOh 56124 +6KOi 56125 +6KOk 56126 +6KOl 56127 +6KOo 56128 +6KOw 56129 +6KOx 56130 +6KOy 56131 +6KOz 56132 +6KO0 56133 +6KO4 56134 +6KO5 56135 +6KO9 56136 +6KO+ 56137 +6KSA 56138 +6KSC 56139 +6KSE 56140 +6KSH 56141 +6KSK 56142 +6KSM 56143 +6KSQ 56144 +6KSS 56145 +6KST 56146 +6KSU 56147 +6KSZ 56148 +6KSa 56149 +6KSb 56150 +6KSe 56151 +6KSh 56152 +6KSl 56153 +6KSq 56154 +6KSr 56155 +6KSt 56156 +6KSw 56157 +6KSy 56158 +6KS0 56159 +6KS2 56160 +6KS4 56161 +6KS7 56162 +6KWA 56163 +6KWB 56164 +6KWE 56165 +6KWW 56166 +6KWc 56167 +6KWe 56168 +6KWf 56169 +6KWg 56170 +6KWk 56171 +6KWm 56172 +6KWq 56173 +6KWv 56174 +6KWy 56175 +6KW0 56176 +6KW3 56177 +6KW7 56178 +6KW/ 56179 +6KaB 56180 +6KaD 56181 +6KaG 56182 +6KaH 56183 +6KaL 56184 +6KaP 56185 +6KaT 56186 +6KaW 56187 +6KaX 56188 +6KaY 56189 +6Kaa 56190 +6Kah 56191 +6Kan 56192 +6Kap 56193 +6Kaq 56194 +6Kav 56195 +6Kay 56196 +6Kaz 56197 +6Ka3 56198 +6Ka6 56199 +6Ka9 56200 +6Ka/ 56201 +6KeA 56202 +6KeB 56203 +6KeC 56204 +6KeE 56205 +6KeF 56206 +6KeG 56207 +6KeH 56208 +6KeI 56209 +6KeJ 56210 +6KeK 56211 +6KeM 56212 +6KeO 56213 +6KeP 56214 +6KeQ 56215 +6KeR 56216 +6KeS 56217 +6Kea 56218 +6Kec 56219 +6Ked 56220 +6Kee 56221 +6Kej 56222 +6Kel 56223 +6Kem 56224 +6Ker 56225 +6Kev 56226 +6Kex 56227 +6Kez 56228 +6Ke0 56229 +6Ke4 56230 +6KiA 56231 +6KiC 56232 +6KiD 56233 +6KiH 56234 +6KiI 56235 +6KiK 56236 +6KiM 56237 +6KiO 56238 +6KiT 56239 +6KiV 56240 +6KiX 56241 +6KiY 56242 +6Kia 56243 +6Kib 56244 +6Kid 56245 +6Kif 56246 +6Kii 56247 +6Kij 56248 +6Kil 56249 +6Kiq 56250 +6Kit 56251 +6Kix 56252 +6Kiz 56253 +6Ki0 56254 +6Ki2 56255 +6Ki6 56256 +6Ki7 56257 +6Ki8 56258 +6Ki+ 56259 +6KmB 56260 +6KmI 56261 +6KmQ 56262 +6KmS 56263 +6KmU 56264 +6KmV 56265 +6Kmb 56266 +6Kmd 56267 +6Kme 56268 +6Kmg 56269 +6Kmi 56270 +6Kmj 56271 +6Kmm 56272 +6Kmp 56273 +6Kmr 56274 +6Kms 56275 +6Kmt 56276 +6Kmu 56277 +6Kmw 56278 +6Kmx 56279 +6Kmy 56280 +6Kmz 56281 +6Km5 56282 +6KqC 56283 +6KqE 56284 +6KqF 56285 +6KqH 56286 +6KqJ 56287 +6KqK 56288 +6KqM 56289 +6KqN 56290 +6KqR 56291 +6KqS 56292 +6KqT 56293 +6KqV 56294 +6KqY 56295 +6Kqe 56296 +6Kqg 56297 +6Kqh 56298 +6Kqj 56299 +6Kqk 56300 +6Kql 56301 +6Kqm 56302 +6Kqo 56303 +6Kqq 56304 +6Kqs 56305 +6Kqt 56306 +6Kqw 56307 +6Kqy 56308 +6Kq5 56309 +6Kq8 56310 +6Kq/ 56311 +6KuC 56312 +6KuE 56313 +6KuH 56314 +6KuL 56315 +6KuM 56316 +6KuN 56317 +6KuP 56318 +6KuS 56319 +6KuW 56320 +6KuX 56321 +6Kua 56322 +6Kub 56323 +6Kuc 56324 +6Kuh 56325 +6Kui 56326 +6Kuk 56327 +6Kum 56328 +6Kun 56329 +6Kur 56330 +6Kut 56331 +6Kuu 56332 +6Kux 56333 +6Kuz 56334 +6Ku3 56335 +6Ku4 56336 +6Ku6 56337 +6Ku8 56338 +6Ku+ 56339 +6KyA 56340 +6KyB 56341 +6KyC 56342 +6KyE 56343 +6KyH 56344 +6KyK 56345 +6KyO 56346 +6KyQ 56347 +6KyU 56348 +6KyW 56349 +6KyX 56350 +6KyZ 56351 +6Kya 56352 +6Kyb 56353 +6Kyd 56354 +6Kyg 56355 +6Kyh 56356 +6Kym 56357 +6Kyo 56358 +6Kyp 56359 +6Kyr 56360 +6Kys 56361 +6Kyz 56362 +6Ky3 56363 +6Ky5 56364 +6K2B 56365 +6K2J 56366 +6K2O 56367 +6K2P 56368 +6K2W 56369 +6K2Y 56370 +6K2a 56371 +6K2c 56372 +6K2e 56373 +6K2f 56374 +6K2m 56375 +6K2r 56376 +6K2s 56377 +6K2v 56378 +6K2w 56379 +6K2y 56380 +6K20 56381 +6K23 56382 +6K29 56383 +6K6A 56384 +6K6D 56385 +6K6K 56386 +6K6M 56387 +6K6O 56388 +6K6Q 56389 +6K6S 56390 +6K6T 56391 +6K6W 56392 +6K6a 56393 +6K6g 56394 +6K6h 56395 +6K6i 56396 +6K6j 56397 +6K6k 56398 +6K6l 56399 +6K6m 56400 +6K6n 56401 +6K6o 56402 +6K6p 56403 +6K6q 56404 +6K6r 56405 +6K6t 56406 +6K6u 56407 +6K6v 56408 +6K6w 56409 +6K6y 56410 +6K6z 56411 +6K60 56412 +6K61 56413 +6K62 56414 +6K63 56415 +6K64 56416 +6K65 56417 +6K66 56418 +6K68 56419 +6K69 56420 +6K6+ 56421 +6K6/ 56422 +6K+A 56423 +6K+B 56424 +6K+C 56425 +6K+D 56426 +6K+E 56427 +6K+F 56428 +6K+G 56429 +6K+I 56430 +6K+J 56431 +6K+K 56432 +6K+L 56433 +6K+M 56434 +6K+N 56435 +6K+O 56436 +6K+P 56437 +6K+Q 56438 +6K+R 56439 +6K+S 56440 +6K+T 56441 +6K+U 56442 +6K+V 56443 +6K+W 56444 +6K+X 56445 +6K+Y 56446 +6K+Z 56447 +6K+a 56448 +6K+b 56449 +6K+c 56450 +6K+d 56451 +6K+e 56452 +6K+f 56453 +6K+g 56454 +6K+h 56455 +6K+i 56456 +6K+j 56457 +6K+k 56458 +6K+l 56459 +6K+m 56460 +6K+n 56461 +6K+o 56462 +6K+p 56463 +6K+r 56464 +6K+s 56465 +6K+t 56466 +6K+u 56467 +6K+v 56468 +6K+w 56469 +6K+x 56470 +6K+y 56471 +6K+z 56472 +6K+0 56473 +6K+1 56474 +6K+2 56475 +6K+3 56476 +6K+4 56477 +6K+5 56478 +6K+6 56479 +6K+7 56480 +6K+8 56481 +6K+9 56482 +6K++ 56483 +6K+/ 56484 +6LCA 56485 +6LCB 56486 +6LCC 56487 +6LCD 56488 +6LCE 56489 +6LCF 56490 +6LCG 56491 +6LCI 56492 +6LCK 56493 +6LCL 56494 +6LCM 56495 +6LCN 56496 +6LCO 56497 +6LCP 56498 +6LCQ 56499 +6LCR 56500 +6LCS 56501 +6LCT 56502 +6LCU 56503 +6LCV 56504 +6LCW 56505 +6LCX 56506 +6LCY 56507 +6LCZ 56508 +6LCa 56509 +6LCb 56510 +6LCc 56511 +6LCd 56512 +6LCe 56513 +6LCf 56514 +6LCg 56515 +6LCh 56516 +6LCi 56517 +6LCj 56518 +6LCk 56519 +6LCl 56520 +6LCm 56521 +6LCn 56522 +6LCo 56523 +6LCp 56524 +6LCq 56525 +6LCs 56526 +6LCt 56527 +6LCu 56528 +6LCv 56529 +6LCw 56530 +6LCx 56531 +6LCy 56532 +6LCz 56533 +6LC0 56534 +6LC1 56535 +6LC2 56536 +6LC3 56537 +6LC6 56538 +6LC/ 56539 +6LGB 56540 +6LGF 56541 +6LGG 56542 +6LGH 56543 +6LGI 56544 +6LGJ 56545 +6LGK 56546 +6LGM 56547 +6LGO 56548 +6LGQ 56549 +6LGU 56550 +6LGV 56551 +6LGa 56552 +6LGb 56553 +6LGd 56554 +6LGh 56555 +6LGi 56556 +6LGo 56557 +6LGq 56558 +6LGr 56559 +6LGs 56560 +6LGz 56561 +6LG4 56562 +6LG5 56563 +6LG6 56564 +6LKC 56565 +6LKF 56566 +6LKJ 56567 +6LKK 56568 +6LKM 56569 +6LKT 56570 +6LKU 56571 +6LKY 56572 +6LKd 56573 +6LKe 56574 +6LKg 56575 +6LKh 56576 +6LKi 56577 +6LKn 56578 +6LKo 56579 +6LKp 56580 +6LKq 56581 +6LKr 56582 +6LKs 56583 +6LKv 56584 +6LKw 56585 +6LKy 56586 +6LKz 56587 +6LK0 56588 +6LK2 56589 +6LK3 56590 +6LK4 56591 +6LK7 56592 +6LK8 56593 +6LK9 56594 +6LK/ 56595 +6LOA 56596 +6LOB 56597 +6LOC 56598 +6LOD 56599 +6LOE 56600 +6LOH 56601 +6LOI 56602 +6LOK 56603 +6LOO 56604 +6LOR 56605 +6LOS 56606 +6LOT 56607 +6LOa 56608 +6LOb 56609 +6LOc 56610 +6LOe 56611 +6LOg 56612 +6LOi 56613 +6LOj 56614 +6LOk 56615 +6LOm 56616 +6LOq 56617 +6LOs 56618 +6LOt 56619 +6LO0 56620 +6LO6 56621 +6LO8 56622 +6LO9 56623 +6LSE 56624 +6LSF 56625 +6LSH 56626 +6LSI 56627 +6LSK 56628 +6LSL 56629 +6LSP 56630 +6LSQ 56631 +6LST 56632 +6LSU 56633 +6LSW 56634 +6LSd 56635 +6LSe 56636 +6LSf 56637 +6LSh 56638 +6LSi 56639 +6LSj 56640 +6LSk 56641 +6LSl 56642 +6LSm 56643 +6LSn 56644 +6LSo 56645 +6LSp 56646 +6LSq 56647 +6LSr 56648 +6LSs 56649 +6LSt 56650 +6LSu 56651 +6LSv 56652 +6LSw 56653 +6LSx 56654 +6LSy 56655 +6LS0 56656 +6LS1 56657 +6LS2 56658 +6LS3 56659 +6LS4 56660 +6LS5 56661 +6LS6 56662 +6LS7 56663 +6LS8 56664 +6LS9 56665 +6LS+ 56666 +6LS/ 56667 +6LWB 56668 +6LWC 56669 +6LWD 56670 +6LWE 56671 +6LWF 56672 +6LWI 56673 +6LWJ 56674 +6LWK 56675 +6LWL 56676 +6LWM 56677 +6LWN 56678 +6LWO 56679 +6LWP 56680 +6LWQ 56681 +6LWT 56682 +6LWU 56683 +6LWV 56684 +6LWW 56685 +6LWY 56686 +6LWZ 56687 +6LWa 56688 +6LWb 56689 +6LWc 56690 +6LWd 56691 +6LWe 56692 +6LWf 56693 +6LWg 56694 +6LWh 56695 +6LWi 56696 +6LWj 56697 +6LWk 56698 +6LWm 56699 +6LWn 56700 +6LWq 56701 +6LWr 56702 +6LWs 56703 +6LWt 56704 +6LWw 56705 +6LWz 56706 +6LW0 56707 +6LW1 56708 +6LW2 56709 +6LW3 56710 +6LaB 56711 +6LaE 56712 +6LaF 56713 +6LaK 56714 +6LaL 56715 +6LaU 56716 +6LaV 56717 +6LaZ 56718 +6Laf 56719 +6Laj 56720 +6Lao 56721 +6Laz 56722 +6La0 56723 +6La1 56724 +6La4 56725 +6La6 56726 +6La+ 56727 +6La/ 56728 +6LeC 56729 +6LeD 56730 +6LeE 56731 +6LeG 56732 +6LeL 56733 +6LeM 56734 +6LeO 56735 +6LeP 56736 +6LeR 56737 +6LeW 56738 +6LeX 56739 +6Lea 56740 +6Leb 56741 +6Led 56742 +6Lee 56743 +6Lef 56744 +6Leh 56745 +6Lej 56746 +6Lek 56747 +6Leo 56748 +6Lep 56749 +6Leq 56750 +6Ler 56751 +6Les 56752 +6Lev 56753 +6Lex 56754 +6Lez 56755 +6Le1 56756 +6Le2 56757 +6Le3 56758 +6Le4 56759 +6Le5 56760 +6Le6 56761 +6Le7 56762 +6Le8 56763 +6Le9 56764 +6Le/ 56765 +6LiF 56766 +6LiJ 56767 +6LiK 56768 +6LiM 56769 +6LiO 56770 +6LiP 56771 +6LiQ 56772 +6LiU 56773 +6LiW 56774 +6Lid 56775 +6Lie 56776 +6Lif 56777 +6Lih 56778 +6Lii 56779 +6Lij 56780 +6Lim 56781 +6Lin 56782 +6Lip 56783 +6Liq 56784 +6Lis 56785 +6Lit 56786 +6Liu 56787 +6Liv 56788 +6Liw 56789 +6Lix 56790 +6Li0 56791 +6Li1 56792 +6Li5 56793 +6Li6 56794 +6Li9 56795 +6LmA 56796 +6LmB 56797 +6LmC 56798 +6LmE 56799 +6LmH 56800 +6LmI 56801 +6LmJ 56802 +6LmK 56803 +6LmL 56804 +6LmM 56805 +6LmQ 56806 +6LmR 56807 +6LmS 56808 +6LmV 56809 +6LmZ 56810 +6Lma 56811 +6Lmf 56812 +6Lmg 56813 +6Lmh 56814 +6Lmj 56815 +6Lmk 56816 +6Lmm 56817 +6Lmp 56818 +6Lms 56819 +6Lmt 56820 +6Lmv 56821 +6Lmw 56822 +6Lmy 56823 +6Lm0 56824 +6Lm2 56825 +6Lm8 56826 +6Lm9 56827 +6Lm/ 56828 +6LqB 56829 +6LqE 56830 +6LqF 56831 +6LqH 56832 +6LqK 56833 +6LqN 56834 +6LqP 56835 +6LqQ 56836 +6LqR 56837 +6LqT 56838 +6LqU 56839 +6LqZ 56840 +6Lqc 56841 +6Lqh 56842 +6Lqq 56843 +6Lqr 56844 +6Lqs 56845 +6Lqv 56846 +6Lqw 56847 +6Lqx 56848 +6Lqy 56849 +6Lq6 56850 +6Lq+ 56851 +6LuA 56852 +6LuI 56853 +6LuK 56854 +6LuL 56855 +6LuM 56856 +6LuN 56857 +6LuO 56858 +6LuS 56859 +6Lub 56860 +6Luf 56861 +6Lui 56862 +6Luj 56863 +6Lur 56864 +6Lu4 56865 +6Lu7 56866 +6Lu8 56867 +6Lu9 56868 +6LyD 56869 +6LyJ 56870 +6LyK 56871 +6LyM 56872 +6LyS 56873 +6LyT 56874 +6LyU 56875 +6LyV 56876 +6Lyb 56877 +6Lyc 56878 +6Lyd 56879 +6Lym 56880 +6Lyp 56881 +6Lyq 56882 +6Lyv 56883 +6Lyz 56884 +6Ly2 56885 +6Ly4 56886 +6Ly7 56887 +6Ly+ 56888 +6Ly/ 56889 +6L2C 56890 +6L2E 56891 +6L2F 56892 +6L2G 56893 +6L2J 56894 +6L2M 56895 +6L2N 56896 +6L2O 56897 +6L2X 56898 +6L2f 56899 +6L2h 56900 +6L2i 56901 +6L2j 56902 +6L2k 56903 +6L2m 56904 +6L2n 56905 +6L2o 56906 +6L2p 56907 +6L2r 56908 +6L2s 56909 +6L2t 56910 +6L2u 56911 +6L2v 56912 +6L2w 56913 +6L2x 56914 +6L2y 56915 +6L2z 56916 +6L20 56917 +6L21 56918 +6L22 56919 +6L24 56920 +6L25 56921 +6L26 56922 +6L27 56923 +6L28 56924 +6L29 56925 +6L2+ 56926 +6L2/ 56927 +6L6C 56928 +6L6D 56929 +6L6E 56930 +6L6F 56931 +6L6G 56932 +6L6H 56933 +6L6I 56934 +6L6J 56935 +6L6K 56936 +6L6L 56937 +6L6N 56938 +6L6O 56939 +6L6P 56940 +6L6Q 56941 +6L6R 56942 +6L6T 56943 +6L6U 56944 +6L6V 56945 +6L6W 56946 +6L6X 56947 +6L6Y 56948 +6L6Z 56949 +6L6a 56950 +6L6b 56951 +6L6c 56952 +6L6e 56953 +6L6f 56954 +6L6j 56955 +6L6m 56956 +6L6o 56957 +6L6p 56958 +6L6r 56959 +6L6t 56960 +6L6u 56961 +6L6v 56962 +6L6w 56963 +6L6x 56964 +6L6y 56965 +6L63 56966 +6L65 56967 +6L66 56968 +6L67 56969 +6L68 56970 +6L69 56971 +6L6+ 56972 +6L6/ 56973 +6L+B 56974 +6L+C 56975 +6L+E 56976 +6L+F 56977 +6L+H 56978 +6L+I 56979 +6L+O 56980 +6L+Q 56981 +6L+R 56982 +6L+T 56983 +6L+U 56984 +6L+V 56985 +6L+Y 56986 +6L+Z 56987 +6L+a 56988 +6L+b 56989 +6L+c 56990 +6L+d 56991 +6L+e 56992 +6L+f 56993 +6L+g 56994 +6L+i 56995 +6L+k 56996 +6L+l 56997 +6L+m 56998 +6L+o 56999 +6L+p 57000 +6L+q 57001 +6L+r 57002 +6L+t 57003 +6L+u 57004 +6L+w 57005 +6L+z 57006 +6L+0 57007 +6L+3 57008 +6L+4 57009 +6L+5 57010 +6L+9 57011 +6YCA 57012 +6YCB 57013 +6YCC 57014 +6YCD 57015 +6YCE 57016 +6YCF 57017 +6YCG 57018 +6YCJ 57019 +6YCK 57020 +6YCL 57021 +6YCN 57022 +6YCP 57023 +6YCQ 57024 +6YCR 57025 +6YCS 57026 +6YCT 57027 +6YCU 57028 +6YCV 57029 +6YCW 57030 +6YCX 57031 +6YCZ 57032 +6YCa 57033 +6YCb 57034 +6YCd 57035 +6YCe 57036 +6YCf 57037 +6YCg 57038 +6YCh 57039 +6YCi 57040 +6YCj 57041 +6YCm 57042 +6YCu 57043 +6YCv 57044 +6YCx 57045 +6YCy 57046 +6YC1 57047 +6YC2 57048 +6YC4 57049 +6YC7 57050 +6YC8 57051 +6YC+ 57052 +6YGB 57053 +6YGC 57054 +6YGE 57055 +6YGF 57056 +6YGH 57057 +6YGJ 57058 +6YGK 57059 +6YGL 57060 +6YGN 57061 +6YGO 57062 +6YGP 57063 +6YGQ 57064 +6YGR 57065 +6YGS 57066 +6YGT 57067 +6YGU 57068 +6YGV 57069 +6YGW 57070 +6YGX 57071 +6YGY 57072 +6YGZ 57073 +6YGb 57074 +6YGc 57075 +6YGe 57076 +6YGg 57077 +6YGh 57078 +6YGi 57079 +6YGj 57080 +6YGl 57081 +6YGo 57082 +6YGp 57083 +6YGt 57084 +6YGu 57085 +6YGv 57086 +6YGy 57087 +6YG0 57088 +6YG1 57089 +6YG3 57090 +6YG4 57091 +6YG5 57092 +6YG6 57093 +6YG8 57094 +6YG9 57095 +6YG/ 57096 +6YKA 57097 +6YKB 57098 +6YKC 57099 +6YKD 57100 +6YKE 57101 +6YKF 57102 +6YKH 57103 +6YKI 57104 +6YKJ 57105 +6YKK 57106 +6YKL 57107 +6YKP 57108 +6YKR 57109 +6YKT 57110 +6YKV 57111 +6YKX 57112 +6YKY 57113 +6YKZ 57114 +6YKb 57115 +6YKd 57116 +6YKg 57117 +6YKh 57118 +6YKi 57119 +6YKj 57120 +6YKm 57121 +6YKo 57122 +6YKq 57123 +6YKs 57124 +6YKu 57125 +6YKv 57126 +6YKw 57127 +6YKx 57128 +6YKz 57129 +6YK0 57130 +6YK1 57131 +6YK2 57132 +6YK4 57133 +6YK5 57134 +6YK6 57135 +6YK7 57136 +6YK9 57137 +6YK+ 57138 +6YOB 57139 +6YOD 57140 +6YOE 57141 +6YOF 57142 +6YOH 57143 +6YOK 57144 +6YOO 57145 +6YOP 57146 +6YOQ 57147 +6YOR 57148 +6YOT 57149 +6YOV 57150 +6YOb 57151 +6YOc 57152 +6YOd 57153 +6YOe 57154 +6YOh 57155 +6YOi 57156 +6YOk 57157 +6YOm 57158 +6YOn 57159 +6YOo 57160 +6YOr 57161 +6YOt 57162 +6YOv 57163 +6YO0 57164 +6YO1 57165 +6YO3 57166 +6YO4 57167 +6YO9 57168 +6YO+ 57169 +6YO/ 57170 +6YSC 57171 +6YSE 57172 +6YSF 57173 +6YSJ 57174 +6YSP 57175 +6YSS 57176 +6YSY 57177 +6YSZ 57178 +6YSa 57179 +6YSc 57180 +6YSe 57181 +6YSg 57182 +6YSi 57183 +6YSj 57184 +6YSn 57185 +6YSp 57186 +6YSr 57187 +6YSt 57188 +6YSu 57189 +6YSv 57190 +6YSw 57191 +6YSx 57192 +6YSy 57193 +6YS6 57194 +6YWG 57195 +6YWJ 57196 +6YWK 57197 +6YWL 57198 +6YWM 57199 +6YWN 57200 +6YWO 57201 +6YWQ 57202 +6YWS 57203 +6YWU 57204 +6YWX 57205 +6YWY 57206 +6YWa 57207 +6YWd 57208 +6YWe 57209 +6YWh 57210 +6YWi 57211 +6YWj 57212 +6YWk 57213 +6YWl 57214 +6YWp 57215 +6YWq 57216 +6YWr 57217 +6YWs 57218 +6YWu 57219 +6YWv 57220 +6YWw 57221 +6YWx 57222 +6YW1 57223 +6YW2 57224 +6YW3 57225 +6YW4 57226 +6YW5 57227 +6YW6 57228 +6YW9 57229 +6YW/ 57230 +6YaC 57231 +6YaF 57232 +6YaH 57233 +6YaJ 57234 +6YaL 57235 +6YaM 57236 +6YaN 57237 +6YaQ 57238 +6YaS 57239 +6YaX 57240 +6Yaa 57241 +6Yab 57242 +6Yac 57243 +6Yae 57244 +6Yai 57245 +6Yaj 57246 +6Yak 57247 +6Yaq 57248 +6Yar 57249 +6Yas 57250 +6Yat 57251 +6Yau 57252 +6Yav 57253 +6Yay 57254 +6Ya0 57255 +6Ya1 57256 +6Ya4 57257 +6Ya6 57258 +6YeA 57259 +6YeB 57260 +6YeG 57261 +6YeH 57262 +6YeI 57263 +6YeJ 57264 +6YeK 57265 +6YeL 57266 +6YeM 57267 +6YeN 57268 +6YeO 57269 +6YeP 57270 +6YeQ 57271 +6YeR 57272 +6YeY 57273 +6Yeb 57274 +6Yec 57275 +6Yed 57276 +6Yeh 57277 +6Yej 57278 +6Yem 57279 +6Yen 57280 +6Yet 57281 +6Ye1 57282 +6Ye2 57283 +6Ye8 57284 +6Ye/ 57285 +6YiH 57286 +6YiN 57287 +6YiO 57288 +6YiR 57289 +6YiU 57290 +6YiV 57291 +6Yie 57292 +6Yip 57293 +6Yiq 57294 +6Yiz 57295 +6Yi0 57296 +6Yi3 57297 +6Yi/ 57298 +6YmE 57299 +6YmI 57300 +6YmJ 57301 +6YmL 57302 +6YmP 57303 +6YmX 57304 +6Ymb 57305 +6Yme 57306 +6Ymi 57307 +6Ymk 57308 +6Ymm 57309 +6Ymx 57310 +6Ym0 57311 +6Ym+ 57312 +6YqA 57313 +6YqD 57314 +6YqF 57315 +6YqR 57316 +6YqT 57317 +6YqV 57318 +6YqW 57319 +6YqY 57320 +6Yqa 57321 +6Yqb 57322 +6Yqc 57323 +6Yqt 57324 +6Yqu 57325 +6Yqz 57326 +6Yq2 57327 +6Yq3 57328 +6Yq5 57329 +6YuG 57330 +6YuI 57331 +6YuP 57332 +6YuQ 57333 +6YuS 57334 +6Yuk 57335 +6Yup 57336 +6Yuq 57337 +6Yut 57338 +6Yuy 57339 +6Yuz 57340 +6Yu4 57341 +6Yu5 57342 +6Yu6 57343 +6Yu8 57344 +6YyE 57345 +6YyG 57346 +6YyP 57347 +6YyQ 57348 +6YyY 57349 +6YyZ 57350 +6Yya 57351 +6Yye 57352 +6Yyg 57353 +6Yyi 57354 +6Yyj 57355 +6Yym 57356 +6Yyo 57357 +6Yyr 57358 +6Yys 57359 +6Yyu 57360 +6Yyv 57361 +6Yyy 57362 +6Yy1 57363 +6Yy2 57364 +6Yy6 57365 +6Yy+ 57366 +6Y2J 57367 +6Y2K 57368 +6Y2L 57369 +6Y2N 57370 +6Y2S 57371 +6Y2U 57372 +6Y2b 57373 +6Y2c 57374 +6Y2l 57375 +6Y2q 57376 +6Y2s 57377 +6Y2u 57378 +6Y21 57379 +6Y28 57380 +6Y2+ 57381 +6Y6J 57382 +6Y6K 57383 +6Y6M 57384 +6Y6P 57385 +6Y6U 57386 +6Y6W 57387 +6Y6X 57388 +6Y6a 57389 +6Y6b 57390 +6Y6n 57391 +6Y6s 57392 +6Y6t 57393 +6Y6u 57394 +6Y6w 57395 +6Y64 57396 +6Y65 57397 +6Y+D 57398 +6Y+I 57399 +6Y+K 57400 +6Y+Q 57401 +6Y+R 57402 +6Y+W 57403 +6Y+X 57404 +6Y+Y 57405 +6Y+d 57406 +6Y+f 57407 +6Y+h 57408 +6Y+k 57409 +6Y+l 57410 +6Y+o 57411 +6ZCD 57412 +6ZCH 57413 +6ZCO 57414 +6ZCQ 57415 +6ZCU 57416 +6ZCY 57417 +6ZCZ 57418 +6ZCa 57419 +6ZCh 57420 +6ZCn 57421 +6ZCu 57422 +6ZCy 57423 +6ZC1 57424 +6ZC2 57425 +6ZC4 57426 +6ZC6 57427 +6ZGB 57428 +6ZGE 57429 +6ZGK 57430 +6ZGR 57431 +6ZGS 57432 +6ZGT 57433 +6ZGb 57434 +6ZGe 57435 +6ZGg 57436 +6ZGi 57437 +6ZGq 57438 +6ZGr 57439 +6ZGw 57440 +6ZGx 57441 +6ZGy 57442 +6ZG1 57443 +6ZG3 57444 +6ZG5 57445 +6ZG8 57446 +6ZG9 57447 +6ZG/ 57448 +6ZKH 57449 +6ZKI 57450 +6ZKJ 57451 +6ZKK 57452 +6ZKL 57453 +6ZKM 57454 +6ZKN 57455 +6ZKO 57456 +6ZKP 57457 +6ZKQ 57458 +6ZKS 57459 +6ZKT 57460 +6ZKU 57461 +6ZKV 57462 +6ZKX 57463 +6ZKY 57464 +6ZKZ 57465 +6ZKa 57466 +6ZKb 57467 +6ZKc 57468 +6ZKd 57469 +6ZKe 57470 +6ZKf 57471 +6ZKg 57472 +6ZKh 57473 +6ZKi 57474 +6ZKj 57475 +6ZKk 57476 +6ZKl 57477 +6ZKm 57478 +6ZKn 57479 +6ZKo 57480 +6ZKp 57481 +6ZKq 57482 +6ZKr 57483 +6ZKs 57484 +6ZKu 57485 +6ZKv 57486 +6ZKw 57487 +6ZKx 57488 +6ZKy 57489 +6ZKz 57490 +6ZK0 57491 +6ZK1 57492 +6ZK5 57493 +6ZK6 57494 +6ZK7 57495 +6ZK8 57496 +6ZK9 57497 +6ZK+ 57498 +6ZK/ 57499 +6ZOA 57500 +6ZOB 57501 +6ZOC 57502 +6ZOD 57503 +6ZOE 57504 +6ZOF 57505 +6ZOG 57506 +6ZOI 57507 +6ZOJ 57508 +6ZOK 57509 +6ZOL 57510 +6ZOM 57511 +6ZON 57512 +6ZOO 57513 +6ZOQ 57514 +6ZOR 57515 +6ZOS 57516 +6ZOT 57517 +6ZOW 57518 +6ZOX 57519 +6ZOZ 57520 +6ZOa 57521 +6ZOb 57522 +6ZOc 57523 +6ZOd 57524 +6ZOe 57525 +6ZOf 57526 +6ZOg 57527 +6ZOh 57528 +6ZOi 57529 +6ZOj 57530 +6ZOk 57531 +6ZOl 57532 +6ZOm 57533 +6ZOn 57534 +6ZOo 57535 +6ZOp 57536 +6ZOq 57537 +6ZOr 57538 +6ZOs 57539 +6ZOt 57540 +6ZOu 57541 +6ZOv 57542 +6ZOw 57543 +6ZOx 57544 +6ZOy 57545 +6ZOz 57546 +6ZO1 57547 +6ZO2 57548 +6ZO3 57549 +6ZO4 57550 +6ZO6 57551 +6ZO8 57552 +6ZO+ 57553 +6ZO/ 57554 +6ZSA 57555 +6ZSB 57556 +6ZSC 57557 +6ZSD 57558 +6ZSE 57559 +6ZSF 57560 +6ZSG 57561 +6ZSH 57562 +6ZSI 57563 +6ZSJ 57564 +6ZSK 57565 +6ZSL 57566 +6ZSM 57567 +6ZSN 57568 +6ZSP 57569 +6ZSQ 57570 +6ZSR 57571 +6ZSS 57572 +6ZSU 57573 +6ZSV 57574 +6ZSW 57575 +6ZSX 57576 +6ZSY 57577 +6ZSZ 57578 +6ZSa 57579 +6ZSb 57580 +6ZSc 57581 +6ZSd 57582 +6ZSe 57583 +6ZSf 57584 +6ZSh 57585 +6ZSi 57586 +6ZSj 57587 +6ZSk 57588 +6ZSl 57589 +6ZSm 57590 +6ZSo 57591 +6ZSp 57592 +6ZSr 57593 +6ZSs 57594 +6ZSt 57595 +6ZSu 57596 +6ZSv 57597 +6ZSw 57598 +6ZSx 57599 +6ZSy 57600 +6ZS0 57601 +6ZS1 57602 +6ZS2 57603 +6ZS3 57604 +6ZS4 57605 +6ZS5 57606 +6ZS6 57607 +6ZS7 57608 +6ZWA 57609 +6ZWB 57610 +6ZWC 57611 +6ZWF 57612 +6ZWG 57613 +6ZWH 57614 +6ZWJ 57615 +6ZWK 57616 +6ZWL 57617 +6ZWM 57618 +6ZWN 57619 +6ZWP 57620 +6ZWQ 57621 +6ZWR 57622 +6ZWS 57623 +6ZWU 57624 +6ZWV 57625 +6ZWW 57626 +6ZWX 57627 +6ZWY 57628 +6ZWb 57629 +6ZWc 57630 +6ZWd 57631 +6ZWe 57632 +6ZWf 57633 +6ZWg 57634 +6ZWh 57635 +6ZWi 57636 +6ZWj 57637 +6ZWl 57638 +6ZWn 57639 +6ZWp 57640 +6ZWq 57641 +6ZWr 57642 +6ZWs 57643 +6ZWt 57644 +6ZWv 57645 +6ZWw 57646 +6ZWx 57647 +6ZWy 57648 +6ZWz 57649 +6ZW1 57650 +6ZW2 57651 +6ZW3 57652 +6ZW/ 57653 +6ZaA 57654 +6ZaC 57655 +6ZaD 57656 +6ZaH 57657 +6ZaJ 57658 +6ZaK 57659 +6ZaL 57660 +6ZaO 57661 +6ZaP 57662 +6ZaR 57663 +6ZaS 57664 +6ZaT 57665 +6ZaU 57666 +6ZaW 57667 +6ZaY 57668 +6Zaf 57669 +6Zai 57670 +6Zaj 57671 +6Zak 57672 +6Zal 57673 +6Zam 57674 +6Zao 57675 +6Zat 57676 +6Zax 57677 +6Zay 57678 +6Za5 57679 +6Za7 57680 +6Za8 57681 +6Za+ 57682 +6ZeD 57683 +6ZeG 57684 +6ZeH 57685 +6ZeK 57686 +6ZeM 57687 +6ZeN 57688 +6ZeV 57689 +6ZeW 57690 +6ZeY 57691 +6Zec 57692 +6Zeh 57693 +6Zei 57694 +6Zel 57695 +6Zeo 57696 +6Zep 57697 +6Zeq 57698 +6Zer 57699 +6Zet 57700 +6Zeu 57701 +6Zev 57702 +6Zew 57703 +6Zex 57704 +6Zey 57705 +6Zez 57706 +6Ze0 57707 +6Ze1 57708 +6Ze3 57709 +6Ze4 57710 +6Ze5 57711 +6Ze6 57712 +6Ze7 57713 +6Ze8 57714 +6Ze9 57715 +6Ze+ 57716 +6Ze/ 57717 +6ZiA 57718 +6ZiB 57719 +6ZiC 57720 +6ZiD 57721 +6ZiE 57722 +6ZiF 57723 +6ZiG 57724 +6ZiH 57725 +6ZiI 57726 +6ZiJ 57727 +6ZiK 57728 +6ZiL 57729 +6ZiM 57730 +6ZiN 57731 +6ZiO 57732 +6ZiP 57733 +6ZiQ 57734 +6ZiR 57735 +6ZiS 57736 +6ZiU 57737 +6ZiV 57738 +6ZiW 57739 +6ZiX 57740 +6ZiZ 57741 +6Zia 57742 +6Zic 57743 +6Zid 57744 +6Zif 57745 +6Zih 57746 +6Zio 57747 +6Ziq 57748 +6Zis 57749 +6Ziu 57750 +6Zix 57751 +6Ziy 57752 +6Ziz 57753 +6Zi0 57754 +6Zi1 57755 +6Zi2 57756 +6Zi7 57757 +6Zi8 57758 +6Zi9 57759 +6Zi/ 57760 +6ZmA 57761 +6ZmC 57762 +6ZmE 57763 +6ZmF 57764 +6ZmG 57765 +6ZmH 57766 +6ZmI 57767 +6ZmJ 57768 +6ZmL 57769 +6ZmM 57770 +6ZmN 57771 +6ZmQ 57772 +6ZmU 57773 +6ZmV 57774 +6Zmb 57775 +6Zmc 57776 +6Zmd 57777 +6Zme 57778 +6Zmf 57779 +6Zmh 57780 +6Zmi 57781 +6Zmj 57782 +6Zmk 57783 +6Zml 57784 +6Zmm 57785 +6Zmn 57786 +6Zmo 57787 +6Zmp 57788 +6Zmq 57789 +6Zms 57790 +6Zmw 57791 +6Zmy 57792 +6Zmz 57793 +6Zm1 57794 +6Zm2 57795 +6Zm3 57796 +6Zm4 57797 +6Zm6 57798 +6Zm9 57799 +6ZqF 57800 +6ZqG 57801 +6ZqI 57802 +6ZqK 57803 +6ZqL 57804 +6ZqN 57805 +6ZqO 57806 +6ZqP 57807 +6ZqQ 57808 +6ZqU 57809 +6ZqV 57810 +6ZqX 57811 +6ZqY 57812 +6ZqZ 57813 +6Zqb 57814 +6Zqc 57815 +6Zqg 57816 +6Zqj 57817 +6Zqn 57818 +6Zqo 57819 +6Zqq 57820 +6Zqw 57821 +6Zqx 57822 +6Zqy 57823 +6Zqz 57824 +6Zq2 57825 +6Zq3 57826 +6Zq4 57827 +6Zq5 57828 +6Zq7 57829 +6Zq8 57830 +6Zq9 57831 +6Zq+ 57832 +6ZuA 57833 +6ZuB 57834 +6ZuE 57835 +6ZuF 57836 +6ZuG 57837 +6ZuH 57838 +6ZuJ 57839 +6ZuL 57840 +6ZuM 57841 +6ZuN 57842 +6ZuO 57843 +6ZuP 57844 +6ZuR 57845 +6ZuS 57846 +6ZuV 57847 +6ZuW 57848 +6ZuZ 57849 +6Zub 57850 +6Zuc 57851 +6Zue 57852 +6Zug 57853 +6Zui 57854 +6Zuj 57855 +6Zuo 57856 +6Zup 57857 +6Zuq 57858 +6Zur 57859 +6Zuv 57860 +6Zuw 57861 +6Zux 57862 +6Zuy 57863 +6Zuz 57864 +6Zu2 57865 +6Zu3 57866 +6Zu5 57867 +6Zu7 57868 +6Zu+ 57869 +6ZyA 57870 +6ZyB 57871 +6ZyE 57872 +6ZyG 57873 +6ZyH 57874 +6ZyI 57875 +6ZyJ 57876 +6ZyK 57877 +6ZyN 57878 +6ZyO 57879 +6ZyP 57880 +6ZyR 57881 +6ZyT 57882 +6ZyW 57883 +6ZyZ 57884 +6Zyc 57885 +6Zye 57886 +6Zyn 57887 +6Zyq 57888 +6Zyr 57889 +6Zyt 57890 +6Zyw 57891 +6Zyy 57892 +6Zy4 57893 +6Zy5 57894 +6Zy9 57895 +6Zy+ 57896 +6Z2C 57897 +6Z2E 57898 +6Z2G 57899 +6Z2I 57900 +6Z2J 57901 +6Z2R 57902 +6Z2S 57903 +6Z2T 57904 +6Z2W 57905 +6Z2Z 57906 +6Z2a 57907 +6Z2b 57908 +6Z2c 57909 +6Z2e 57910 +6Z2g 57911 +6Z2h 57912 +6Z2i 57913 +6Z2l 57914 +6Z2m 57915 +6Z2o 57916 +6Z2p 57917 +6Z2r 57918 +6Z2t 57919 +6Z2x 57920 +6Z2z 57921 +6Z20 57922 +6Z22 57923 +6Z24 57924 +6Z25 57925 +6Z26 57926 +6Z28 57927 +6Z6B 57928 +6Z6E 57929 +6Z6F 57930 +6Z6G 57931 +6Z6L 57932 +6Z6N 57933 +6Z6P 57934 +6Z6Q 57935 +6Z6R 57936 +6Z6Y 57937 +6Z6c 57938 +6Z6g 57939 +6Z6j 57940 +6Z6l 57941 +6Z6m 57942 +6Z6n 57943 +6Z6o 57944 +6Z6r 57945 +6Z6s 57946 +6Z6t 57947 +6Z60 57948 +6Z62 57949 +6Z+C 57950 +6Z+D 57951 +6Z+L 57952 +6Z+M 57953 +6Z+T 57954 +6Z+Y 57955 +6Z+c 57956 +6Z+h 57957 +6Z+m 57958 +6Z+n 57959 +6Z+p 57960 +6Z+q 57961 +6Z+r 57962 +6Z+s 57963 +6Z+t 57964 +6Z+u 57965 +6Z+y 57966 +6Z+z 57967 +6Z+1 57968 +6Z+2 57969 +6Z+7 57970 +6Z+/ 57971 +6aCB 57972 +6aCC 57973 +6aCD 57974 +6aCF 57975 +6aCG 57976 +6aCI 57977 +6aCM 57978 +6aCP 57979 +6aCQ 57980 +6aCR 57981 +6aCS 57982 +6aCT 57983 +6aCX 57984 +6aCY 57985 +6aCa 57986 +6aCg 57987 +6aCh 57988 +6aCk 57989 +6aCr 57990 +6aCs 57991 +6aCt 57992 +6aCw 57993 +6aC0 57994 +6aC3 57995 +6aC4 57996 +6aC5 57997 +6aC7 57998 +6aC8 57999 +6aC9 58000 +6aGG 58001 +6aGL 58002 +6aGM 58003 +6aGN 58004 +6aGO 58005 +6aGP 58006 +6aGS 58007 +6aGU 58008 +6aGV 58009 +6aGX 58010 +6aGY 58011 +6aGb 58012 +6aGe 58013 +6aGn 58014 +6aGr 58015 +6aGs 58016 +6aGv 58017 +6aGw 58018 +6aGx 58019 +6aGz 58020 +6aG0 58021 +6aG1 58022 +6aG2 58023 +6aG3 58024 +6aG4 58025 +6aG5 58026 +6aG6 58027 +6aG7 58028 +6aG8 58029 +6aG9 58030 +6aG+ 58031 +6aG/ 58032 +6aKA 58033 +6aKB 58034 +6aKC 58035 +6aKE 58036 +6aKF 58037 +6aKG 58038 +6aKH 58039 +6aKI 58040 +6aKJ 58041 +6aKK 58042 +6aKL 58043 +6aKM 58044 +6aKN 58045 +6aKO 58046 +6aKP 58047 +6aKQ 58048 +6aKR 58049 +6aKT 58050 +6aKU 58051 +6aKW 58052 +6aKX 58053 +6aKY 58054 +6aKZ 58055 +6aKa 58056 +6aKb 58057 +6aKc 58058 +6aKd 58059 +6aKe 58060 +6aKf 58061 +6aKg 58062 +6aKh 58063 +6aKi 58064 +6aKk 58065 +6aKm 58066 +6aKn 58067 +6aKo 58068 +6aKq 58069 +6aKv 58070 +6aKx 58071 +6aK2 58072 +6aOE 58073 +6aOG 58074 +6aOK 58075 +6aOO 58076 +6aOQ 58077 +6aOS 58078 +6aOT 58079 +6aOV 58080 +6aOW 58081 +6aOX 58082 +6aOY 58083 +6aOZ 58084 +6aOa 58085 +6aOb 58086 +6aOe 58087 +6aOf 58088 +6aOi 58089 +6aOn 58090 +6aOo 58091 +6aOp 58092 +6aOq 58093 +6aOr 58094 +6aOt 58095 +6aOv 58096 +6aOy 58097 +6aO0 58098 +6aO8 58099 +6aO9 58100 +6aO+ 58101 +6aSD 58102 +6aSF 58103 +6aSJ 58104 +6aSK 58105 +6aSM 58106 +6aSN 58107 +6aSQ 58108 +6aSR 58109 +6aSS 58110 +6aST 58111 +6aSY 58112 +6aSa 58113 +6aSd 58114 +6aSe 58115 +6aSg 58116 +6aSh 58117 +6aSo 58118 +6aSs 58119 +6aSu 58120 +6aS1 58121 +6aS4 58122 +6aWC 58123 +6aWF 58124 +6aWJ 58125 +6aWL 58126 +6aWM 58127 +6aWQ 58128 +6aWR 58129 +6aWS 58130 +6aWU 58131 +6aWV 58132 +6aWX 58133 +6aWk 58134 +6aWl 58135 +6aWn 58136 +6aWo 58137 +6aWq 58138 +6aWs 58139 +6aWt 58140 +6aWu 58141 +6aWv 58142 +6aWw 58143 +6aWx 58144 +6aWy 58145 +6aW0 58146 +6aW1 58147 +6aW2 58148 +6aW3 58149 +6aW4 58150 +6aW5 58151 +6aW6 58152 +6aW8 58153 +6aW9 58154 +6aW/ 58155 +6aaA 58156 +6aaB 58157 +6aaD 58158 +6aaE 58159 +6aaF 58160 +6aaG 58161 +6aaH 58162 +6aaI 58163 +6aaK 58164 +6aaL 58165 +6aaN 58166 +6aaP 58167 +6aaQ 58168 +6aaR 58169 +6aaS 58170 +6aaT 58171 +6aaU 58172 +6aaV 58173 +6aaW 58174 +6aaX 58175 +6aaY 58176 +6aaZ 58177 +6aal 58178 +6aao 58179 +6aas 58180 +6aat 58181 +6aau 58182 +6aaz 58183 +6aa0 58184 +6aa/ 58185 +6aeB 58186 +6aeD 58187 +6aeE 58188 +6aeF 58189 +6aeG 58190 +6aeI 58191 +6aeQ 58192 +6aeR 58193 +6aeS 58194 +6aeV 58195 +6aeY 58196 +6aeb 58197 +6aed 58198 +6aef 58199 +6aei 58200 +6aet 58201 +6aeu 58202 +6aex 58203 +6ae4 58204 +6ae7 58205 +6ae/ 58206 +6aiB 58207 +6aiO 58208 +6aiP 58209 +6aiR 58210 +6aiS 58211 +6aiT 58212 +6aiV 58213 +6aiW 58214 +6aiZ 58215 +6aig 58216 +6aio 58217 +6aiu 58218 +6aiw 58219 +6ai3 58220 +6ai+ 58221 +6amA 58222 +6amD 58223 +6amF 58224 +6amN 58225 +6amV 58226 +6amX 58227 +6ama 58228 +6amb 58229 +6amf 58230 +6ami 58231 +6aml 58232 +6amp 58233 +6amq 58234 +6amr 58235 +6ams 58236 +6amt 58237 +6amu 58238 +6amv 58239 +6amw 58240 +6amx 58241 +6amz 58242 +6am0 58243 +6am2 58244 +6am3 58245 +6am4 58246 +6am5 58247 +6am6 58248 +6am7 58249 +6am8 58250 +6am9 58251 +6am+ 58252 +6am/ 58253 +6aqA 58254 +6aqB 58255 +6aqC 58256 +6aqE 58257 +6aqF 58258 +6aqG 58259 +6aqH 58260 +6aqI 58261 +6aqK 58262 +6aqL 58263 +6aqM 58264 +6aqN 58265 +6aqO 58266 +6aqP 58267 +6aqQ 58268 +6aqR 58269 +6aqS 58270 +6aqT 58271 +6aqV 58272 +6aqW 58273 +6aqX 58274 +6aqY 58275 +6aqa 58276 +6aqb 58277 +6aqc 58278 +6aqd 58279 +6aqe 58280 +6aqf 58281 +6aqg 58282 +6aqh 58283 +6aqi 58284 +6aqk 58285 +6aql 58286 +6aqn 58287 +6aqo 58288 +6aqv 58289 +6aqw 58290 +6aq2 58291 +6aq3 58292 +6aq4 58293 +6aq6 58294 +6aq8 58295 +6auA 58296 +6auB 58297 +6auC 58298 +6auD 58299 +6auE 58300 +6auF 58301 +6auI 58302 +6auL 58303 +6auM 58304 +6auO 58305 +6auP 58306 +6auR 58307 +6auS 58308 +6auT 58309 +6auU 58310 +6auY 58311 +6auZ 58312 +6auf 58313 +6auh 58314 +6aui 58315 +6auj 58316 +6aum 58317 +6auq 58318 +6aur 58319 +6aut 58320 +6auu 58321 +6auv 58322 +6aux 58323 +6au0 58324 +6au3 58325 +6au5 58326 +6au7 58327 +6au9 58328 +6ayD 58329 +6ayE 58330 +6ayG 58331 +6ayN 58332 +6ayP 58333 +6ayQ 58334 +6ayT 58335 +6ayY 58336 +6aya 58337 +6ayf 58338 +6ayi 58339 +6ayj 58340 +6ayl 58341 +6ayn 58342 +6ayo 58343 +6ayp 58344 +6ayu 58345 +6ayv 58346 +6ayx 58347 +6ayy 58348 +6ay2 58349 +6ay7 58350 +6ay8 58351 +6a2B 58352 +6a2C 58353 +6a2D 58354 +6a2E 58355 +6a2F 58356 +6a2H 58357 +6a2I 58358 +6a2J 58359 +6a2N 58360 +6a2O 58361 +6a2P 58362 +6a2R 58363 +6a2U 58364 +6a2Y 58365 +6a2a 58366 +6a2f 58367 +6a2j 58368 +6a2m 58369 +6a2s 58370 +6a2v 58371 +6a2z 58372 +6a20 58373 +6a21 58374 +6a6A 58375 +6a6D 58376 +6a6E 58377 +6a6J 58378 +6a6K 58379 +6a6L 58380 +6a6O 58381 +6a6P 58382 +6a6Q 58383 +6a6R 58384 +6a6S 58385 +6a6T 58386 +6a6U 58387 +6a6W 58388 +6a6X 58389 +6a6f 58390 +6a6g 58391 +6a6n 58392 +6a6o 58393 +6a6q 58394 +6a6r 58395 +6a6t 58396 +6a6u 58397 +6a6x 58398 +6a6y 58399 +6a60 58400 +6a64 58401 +6a65 58402 +6a+A 58403 +6a+G 58404 +6a+H 58405 +6a+J 58406 +6a+K 58407 +6a+O 58408 +6a+P 58409 +6a+R 58410 +6a+S 58411 +6a+U 58412 +6a+W 58413 +6a+b 58414 +6a+h 58415 +6a+i 58416 +6a+j 58417 +6a+l 58418 +6a+n 58419 +6a+o 58420 +6a+q 58421 +6a+w 58422 +6a+x 58423 +6a+y 58424 +6a+z 58425 +6a+1 58426 +6a+3 58427 +6a+9 58428 +6bCE 58429 +6bCG 58430 +6bCI 58431 +6bCJ 58432 +6bCK 58433 +6bCM 58434 +6bCN 58435 +6bCQ 58436 +6bCR 58437 +6bCS 58438 +6bCT 58439 +6bCU 58440 +6bCV 58441 +6bCW 58442 +6bCY 58443 +6bCZ 58444 +6bCa 58445 +6bCh 58446 +6bCk 58447 +6bCl 58448 +6bCn 58449 +6bCt 58450 +6bCu 58451 +6bCv 58452 +6bCw 58453 +6bCy 58454 +6bC2 58455 +6bC5 58456 +6bC6 58457 +6bC7 58458 +6bC+ 58459 +6bGA 58460 +6bGF 58461 +6bGG 58462 +6bGH 58463 +6bGI 58464 +6bGP 58465 +6bGS 58466 +6bGT 58467 +6bGX 58468 +6bGY 58469 +6bGa 58470 +6bGd 58471 +6bGg 58472 +6bGn 58473 +6bGu 58474 +6bGw 58475 +6bG1 58476 +6bG2 58477 +6bG4 58478 +6bG8 58479 +6bG/ 58480 +6bKA 58481 +6bKB 58482 +6bKC 58483 +6bKF 58484 +6bKH 58485 +6bKI 58486 +6bKK 58487 +6bKL 58488 +6bKM 58489 +6bKN 58490 +6bKQ 58491 +6bKR 58492 +6bKS 58493 +6bKU 58494 +6bKW 58495 +6bKa 58496 +6bKb 58497 +6bKc 58498 +6bKe 58499 +6bKf 58500 +6bKg 58501 +6bKh 58502 +6bKi 58503 +6bKj 58504 +6bKk 58505 +6bKl 58506 +6bKm 58507 +6bKn 58508 +6bKo 58509 +6bKp 58510 +6bKr 58511 +6bKt 58512 +6bKu 58513 +6bKx 58514 +6bKy 58515 +6bKz 58516 +6bK0 58517 +6bK1 58518 +6bK2 58519 +6bK3 58520 +6bK4 58521 +6bK7 58522 +6bK8 58523 +6bK9 58524 +6bOA 58525 +6bOD 58526 +6bOE 58527 +6bOF 58528 +6bOH 58529 +6bOJ 58530 +6bOK 58531 +6bOM 58532 +6bON 58533 +6bOO 58534 +6bOP 58535 +6bOQ 58536 +6bOU 58537 +6bOV 58538 +6bOW 58539 +6bOX 58540 +6bOZ 58541 +6bOc 58542 +6bOd 58543 +6bOe 58544 +6bOf 58545 +6bOj 58546 +6bOl 58547 +6bOn 58548 +6bOp 58549 +6bOr 58550 +6bOw 58551 +6bOz 58552 +6bO0 58553 +6bO2 58554 +6bSC 58555 +6bSD 58556 +6bSG 58557 +6bSH 58558 +6bSI 58559 +6bSJ 58560 +6bSL 58561 +6bSO 58562 +6bSQ 58563 +6bSS 58564 +6bSb 58565 +6bSe 58566 +6bSf 58567 +6bSj 58568 +6bSm 58569 +6bSo 58570 +6bSr 58571 +6bSs 58572 +6bSy 58573 +6bS7 58574 +6bS+ 58575 +6bS/ 58576 +6bWA 58577 +6bWE 58578 +6bWG 58579 +6bWH 58580 +6bWQ 58581 +6bWR 58582 +6bWZ 58583 +6bWc 58584 +6bWd 58585 +6bWe 58586 +6bWf 58587 +6bWg 58588 +6bWh 58589 +6bWk 58590 +6bWr 58591 +6bWs 58592 +6bWv 58593 +6bWw 58594 +6bWy 58595 +6bW6 58596 +6bW8 58597 +6baH 58598 +6baJ 58599 +6baP 58600 +6baS 58601 +6baW 58602 +6baX 58603 +6baa 58604 +6bah 58605 +6bak 58606 +6bap 58607 +6bar 58608 +6bav 58609 +6bay 58610 +6ba0 58611 +6ba4 58612 +6ba6 58613 +6ba7 58614 +6beB 58615 +6beC 58616 +6beD 58617 +6beG 58618 +6beT 58619 +6beZ 58620 +6bea 58621 +6beg 58622 +6bem 58623 +6bet 58624 +6bev 58625 +6bey 58626 +6be4 58627 +6be5 58628 +6be6 58629 +6be9 58630 +6biC 58631 +6biZ 58632 +6bia 58633 +6bib 58634 +6bie 58635 +6bif 58636 +6big 58637 +6bih 58638 +6bii 58639 +6bij 58640 +6bil 58641 +6bim 58642 +6bio 58643 +6bip 58644 +6biq 58645 +6bir 58646 +6bis 58647 +6bit 58648 +6biu 58649 +6biv 58650 +6biw 58651 +6bix 58652 +6biz 58653 +6bi1 58654 +6bi2 58655 +6bi3 58656 +6bi4 58657 +6bi5 58658 +6bi9 58659 +6bi+ 58660 +6bi/ 58661 +6bmA 58662 +6bmB 58663 +6bmC 58664 +6bmD 58665 +6bmE 58666 +6bmF 58667 +6bmG 58668 +6bmH 58669 +6bmI 58670 +6bmJ 58671 +6bmK 58672 +6bmL 58673 +6bmM 58674 +6bmO 58675 +6bmP 58676 +6bmR 58677 +6bmV 58678 +6bmW 58679 +6bmX 58680 +6bmY 58681 +6bma 58682 +6bmc 58683 +6bme 58684 +6bmj 58685 +6bmk 58686 +6bmm 58687 +6bmn 58688 +6bmo 58689 +6bmp 58690 +6bmq 58691 +6bmr 58692 +6bms 58693 +6bmt 58694 +6bmu 58695 +6bmv 58696 +6bmw 58697 +6bmx 58698 +6bmz 58699 +6bm1 58700 +6bm4 58701 +6bm5 58702 +6bm9 58703 +6bm+ 58704 +6bm/ 58705 +6bqB 58706 +6bqC 58707 +6bqH 58708 +6bqI 58709 +6bqL 58710 +6bqS 58711 +6bqT 58712 +6bqV 58713 +6bqX 58714 +6bqd 58715 +6bqe 58716 +6bqf 58717 +6bql 58718 +6bqm 58719 +6bqp 58720 +6bqq 58721 +6bqt 58722 +6bq0 58723 +6bq1 58724 +6bq4 58725 +6bq5 58726 +6bq6 58727 +6bq7 58728 +6bq8 58729 +6bq9 58730 +6bq+ 58731 +6bq/ 58732 +6buD 58733 +6buE 58734 +6buJ 58735 +6buM 58736 +6buN 58737 +6buO 58738 +6buP 58739 +6buQ 58740 +6buR 58741 +6buS 58742 +6buU 58743 +6buY 58744 +6buZ 58745 +6bub 58746 +6buc 58747 +6bud 58748 +6bue 58749 +6buf 58750 +6bug 58751 +6buh 58752 +6bui 58753 +6bul 58754 +6bun 58755 +6buo 58756 +6bup 58757 +6buv 58758 +6bu0 58759 +6bu5 58760 +6bu7 58761 +6bu8 58762 +6bu9 58763 +6byH 58764 +6byI 58765 +6byL 58766 +6byN 58767 +6byO 58768 +6byQ 58769 +6byT 58770 +6byV 58771 +6byZ 58772 +6byg 58773 +6byh 58774 +6byi 58775 +6byp 58776 +6byq 58777 +6bys 58778 +6byv 58779 +6byx 58780 +6by5 58781 +6by7 58782 +6by+ 58783 +6b2B 58784 +6b2J 58785 +6b2K 58786 +6b2L 58787 +6b2O 58788 +6b2Q 58789 +6b2R 58790 +6b2S 58791 +6b2U 58792 +6b2f 58793 +6b2h 58794 +6b2i 58795 +6b2j 58796 +6b2m 58797 +6b2n 58798 +6b2q 58799 +6b2s 58800 +6b2y 58801 +6b23 58802 +6b2/ 58803 +6b6D 58804 +6b6E 58805 +6b6F 58806 +6b6H 58807 +6b6I 58808 +6b6J 58809 +6b6K 58810 +6b6L 58811 +6b6M 58812 +6b6N 58813 +6b6Q 58814 +6b6V 58815 +6b6Z 58816 +6b6a 58817 +6b6b 58818 +6b6c 58819 +6b6d 58820 +6b6f 58821 +6b6g 58822 +6b6i 58823 +77yB 58824 +77yI 58825 +77yJ 58826 +77yM 58827 +77yN 58828 +77ya 58829 +77yb 58830 +77yf 58831 +772Y 58832 +772Z 58833 +8KCx 58834 +8KCxgQ== 58835 diff --git a/cosyvoice/tokenizer/tokenizer.py b/cosyvoice/tokenizer/tokenizer.py new file mode 100644 index 0000000000000000000000000000000000000000..fbe78fff8851240147efa20363e0df94db315da5 --- /dev/null +++ b/cosyvoice/tokenizer/tokenizer.py @@ -0,0 +1,277 @@ +import base64 +import os +from functools import lru_cache +from typing import Optional +import torch +from transformers import AutoTokenizer +from whisper.tokenizer import Tokenizer + +import tiktoken + +LANGUAGES = { + "en": "english", + "zh": "chinese", + "de": "german", + "es": "spanish", + "ru": "russian", + "ko": "korean", + "fr": "french", + "ja": "japanese", + "pt": "portuguese", + "tr": "turkish", + "pl": "polish", + "ca": "catalan", + "nl": "dutch", + "ar": "arabic", + "sv": "swedish", + "it": "italian", + "id": "indonesian", + "hi": "hindi", + "fi": "finnish", + "vi": "vietnamese", + "he": "hebrew", + "uk": "ukrainian", + "el": "greek", + "ms": "malay", + "cs": "czech", + "ro": "romanian", + "da": "danish", + "hu": "hungarian", + "ta": "tamil", + "no": "norwegian", + "th": "thai", + "ur": "urdu", + "hr": "croatian", + "bg": "bulgarian", + "lt": "lithuanian", + "la": "latin", + "mi": "maori", + "ml": "malayalam", + "cy": "welsh", + "sk": "slovak", + "te": "telugu", + "fa": "persian", + "lv": "latvian", + "bn": "bengali", + "sr": "serbian", + "az": "azerbaijani", + "sl": "slovenian", + "kn": "kannada", + "et": "estonian", + "mk": "macedonian", + "br": "breton", + "eu": "basque", + "is": "icelandic", + "hy": "armenian", + "ne": "nepali", + "mn": "mongolian", + "bs": "bosnian", + "kk": "kazakh", + "sq": "albanian", + "sw": "swahili", + "gl": "galician", + "mr": "marathi", + "pa": "punjabi", + "si": "sinhala", + "km": "khmer", + "sn": "shona", + "yo": "yoruba", + "so": "somali", + "af": "afrikaans", + "oc": "occitan", + "ka": "georgian", + "be": "belarusian", + "tg": "tajik", + "sd": "sindhi", + "gu": "gujarati", + "am": "amharic", + "yi": "yiddish", + "lo": "lao", + "uz": "uzbek", + "fo": "faroese", + "ht": "haitian creole", + "ps": "pashto", + "tk": "turkmen", + "nn": "nynorsk", + "mt": "maltese", + "sa": "sanskrit", + "lb": "luxembourgish", + "my": "myanmar", + "bo": "tibetan", + "tl": "tagalog", + "mg": "malagasy", + "as": "assamese", + "tt": "tatar", + "haw": "hawaiian", + "ln": "lingala", + "ha": "hausa", + "ba": "bashkir", + "jw": "javanese", + "su": "sundanese", + "yue": "cantonese", + "minnan": "minnan", + "wuyu": "wuyu", + "dialect": "dialect", + "zh/en": "zh/en", + "en/zh": "en/zh", +} + +# language code lookup by name, with a few language aliases +TO_LANGUAGE_CODE = { + **{language: code for code, language in LANGUAGES.items()}, + "burmese": "my", + "valencian": "ca", + "flemish": "nl", + "haitian": "ht", + "letzeburgesch": "lb", + "pushto": "ps", + "panjabi": "pa", + "moldavian": "ro", + "moldovan": "ro", + "sinhalese": "si", + "castilian": "es", + "mandarin": "zh", +} + +AUDIO_EVENT = { + "ASR": "ASR", + "AED": "AED", + "SER": "SER", + "Speech": "Speech", + "/Speech": "/Speech", + "BGM": "BGM", + "/BGM": "/BGM", + "Laughter": "Laughter", + "/Laughter": "/Laughter", + "Applause": "Applause", + "/Applause": "/Applause", +} + +EMOTION = { + "HAPPY": "HAPPY", + "SAD": "SAD", + "ANGRY": "ANGRY", + "NEUTRAL": "NEUTRAL", +} + +TTS_Vocal_Token = { + "TTS/B": "TTS/B", + "TTS/O": "TTS/O", + "TTS/Q": "TTS/Q", + "TTS/A": "TTS/A", + "TTS/CO": "TTS/CO", + "TTS/CL": "TTS/CL", + "TTS/H": "TTS/H", + **{f"TTS/SP{i:02d}": f"TTS/SP{i:02d}" for i in range(1, 14)} +} + + +@lru_cache(maxsize=None) +def get_encoding(name: str = "gpt2", num_languages: int = 99): + vocab_path = os.path.join(os.path.dirname(__file__), "assets", f"{name}.tiktoken") + ranks = { + base64.b64decode(token): int(rank) + for token, rank in (line.split() for line in open(vocab_path) if line) + } + n_vocab = len(ranks) + special_tokens = {} + + specials = [ + "<|endoftext|>", + "<|startoftranscript|>", + *[f"<|{lang}|>" for lang in list(LANGUAGES.keys())[:num_languages]], + *[f"<|{audio_event}|>" for audio_event in list(AUDIO_EVENT.keys())], + *[f"<|{emotion}|>" for emotion in list(EMOTION.keys())], + "<|translate|>", + "<|transcribe|>", + "<|startoflm|>", + "<|startofprev|>", + "<|nospeech|>", + "<|notimestamps|>", + *[f"<|SPECIAL_TOKEN_{i}|>" for i in range(1, 31)], # register special tokens for ASR + *[f"<|{tts}|>" for tts in list(TTS_Vocal_Token.keys())], # register special tokens for TTS + *[f"<|{i * 0.02:.2f}|>" for i in range(1501)], + ] + + for token in specials: + special_tokens[token] = n_vocab + n_vocab += 1 + + return tiktoken.Encoding( + name=os.path.basename(vocab_path), + explicit_n_vocab=n_vocab, + pat_str=r"""'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+""", + mergeable_ranks=ranks, + special_tokens=special_tokens, + ) + + +@lru_cache(maxsize=None) +def get_tokenizer( + multilingual: bool, + *, + num_languages: int = 99, + language: Optional[str] = None, + task: Optional[str] = None, # Literal["transcribe", "translate", None] +) -> Tokenizer: + if language is not None: + language = language.lower() + if language not in LANGUAGES: + if language in TO_LANGUAGE_CODE: + language = TO_LANGUAGE_CODE[language] + else: + raise ValueError(f"Unsupported language: {language}") + + if multilingual: + encoding_name = "multilingual_zh_ja_yue_char_del" + language = language or "en" + task = task or "transcribe" + else: + encoding_name = "gpt2" + language = None + task = None + + encoding = get_encoding(name=encoding_name, num_languages=num_languages) + + return Tokenizer( + encoding=encoding, num_languages=num_languages, language=language, task=task + ) + + +class QwenTokenizer(): + def __init__(self, token_path, skip_special_tokens=True): + super().__init__() + # NOTE: non-chat model, all these special tokens keep randomly initialized. + special_tokens = { + 'eos_token': '<|endoftext|>', + 'pad_token': '<|endoftext|>', + 'additional_special_tokens': [ + '<|im_start|>', '<|im_end|>', '<|endofprompt|>', + '[breath]', '', '', '[noise]', + '[laughter]', '[cough]', '[clucking]', '[accent]', + '[quick_breath]', + "", "", + "[hissing]", "[sigh]", "[vocalized-noise]", + "[lipsmack]", "[mn]" + ] + } + self.tokenizer = AutoTokenizer.from_pretrained(token_path) + self.tokenizer.add_special_tokens(special_tokens) + self.skip_special_tokens = skip_special_tokens + + def encode(self, text, **kwargs): + tokens = self.tokenizer([text], return_tensors="pt") + tokens = tokens["input_ids"][0].cpu().tolist() + return tokens + + def decode(self, tokens): + tokens = torch.tensor(tokens, dtype=torch.int64) + text = self.tokenizer.batch_decode([tokens], skip_special_tokens=self.skip_special_tokens)[0] + return text + +@lru_cache(maxsize=None) +def get_qwen_tokenizer( + token_path: str, + skip_special_tokens: bool +) -> QwenTokenizer: + return QwenTokenizer(token_path=token_path, skip_special_tokens=skip_special_tokens) \ No newline at end of file diff --git a/cosyvoice/transformer/__init__.py b/cosyvoice/transformer/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/cosyvoice/transformer/activation.py b/cosyvoice/transformer/activation.py new file mode 100644 index 0000000000000000000000000000000000000000..8cea54816385d3b6585ccc2417bc71630d578177 --- /dev/null +++ b/cosyvoice/transformer/activation.py @@ -0,0 +1,84 @@ +# Copyright (c) 2020 Johns Hopkins University (Shinji Watanabe) +# 2020 Northwestern Polytechnical University (Pengcheng Guo) +# 2020 Mobvoi Inc (Binbin Zhang) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Swish() activation function for Conformer.""" + +import torch +from torch import nn, sin, pow +from torch.nn import Parameter + + +class Swish(torch.nn.Module): + """Construct an Swish object.""" + + def forward(self, x: torch.Tensor) -> torch.Tensor: + """Return Swish activation function.""" + return x * torch.sigmoid(x) + + +# Implementation adapted from https://github.com/EdwardDixon/snake under the MIT license. +# LICENSE is in incl_licenses directory. +class Snake(nn.Module): + ''' + Implementation of a sine-based periodic activation function + Shape: + - Input: (B, C, T) + - Output: (B, C, T), same shape as the input + Parameters: + - alpha - trainable parameter + References: + - This activation function is from this paper by Liu Ziyin, Tilman Hartwig, Masahito Ueda: + https://arxiv.org/abs/2006.08195 + Examples: + >>> a1 = snake(256) + >>> x = torch.randn(256) + >>> x = a1(x) + ''' + def __init__(self, in_features, alpha=1.0, alpha_trainable=True, alpha_logscale=False): + ''' + Initialization. + INPUT: + - in_features: shape of the input + - alpha: trainable parameter + alpha is initialized to 1 by default, higher values = higher-frequency. + alpha will be trained along with the rest of your model. + ''' + super(Snake, self).__init__() + self.in_features = in_features + + # initialize alpha + self.alpha_logscale = alpha_logscale + if self.alpha_logscale: # log scale alphas initialized to zeros + self.alpha = Parameter(torch.zeros(in_features) * alpha) + else: # linear scale alphas initialized to ones + self.alpha = Parameter(torch.ones(in_features) * alpha) + + self.alpha.requires_grad = alpha_trainable + + self.no_div_by_zero = 0.000000001 + + def forward(self, x): + ''' + Forward pass of the function. + Applies the function to the input elementwise. + Snake ∶= x + 1/a * sin^2 (xa) + ''' + alpha = self.alpha.unsqueeze(0).unsqueeze(-1) # line up with x to [B, C, T] + if self.alpha_logscale: + alpha = torch.exp(alpha) + x = x + (1.0 / (alpha + self.no_div_by_zero)) * pow(sin(x * alpha), 2) + + return x diff --git a/cosyvoice/transformer/attention.py b/cosyvoice/transformer/attention.py new file mode 100644 index 0000000000000000000000000000000000000000..8c0c0983a833a6a91cae306a8198ebb2ca82696f --- /dev/null +++ b/cosyvoice/transformer/attention.py @@ -0,0 +1,330 @@ +# Copyright (c) 2019 Shigeki Karita +# 2020 Mobvoi Inc (Binbin Zhang) +# 2022 Xingchen Song (sxc19@mails.tsinghua.edu.cn) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Multi-Head Attention layer definition.""" + +import math +from typing import Tuple + +import torch +from torch import nn + + +class MultiHeadedAttention(nn.Module): + """Multi-Head Attention layer. + + Args: + n_head (int): The number of heads. + n_feat (int): The number of features. + dropout_rate (float): Dropout rate. + + """ + + def __init__(self, + n_head: int, + n_feat: int, + dropout_rate: float, + key_bias: bool = True): + """Construct an MultiHeadedAttention object.""" + super().__init__() + assert n_feat % n_head == 0 + # We assume d_v always equals d_k + self.d_k = n_feat // n_head + self.h = n_head + self.linear_q = nn.Linear(n_feat, n_feat) + self.linear_k = nn.Linear(n_feat, n_feat, bias=key_bias) + self.linear_v = nn.Linear(n_feat, n_feat) + self.linear_out = nn.Linear(n_feat, n_feat) + self.dropout = nn.Dropout(p=dropout_rate) + + def forward_qkv( + self, query: torch.Tensor, key: torch.Tensor, value: torch.Tensor + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Transform query, key and value. + + Args: + query (torch.Tensor): Query tensor (#batch, time1, size). + key (torch.Tensor): Key tensor (#batch, time2, size). + value (torch.Tensor): Value tensor (#batch, time2, size). + + Returns: + torch.Tensor: Transformed query tensor, size + (#batch, n_head, time1, d_k). + torch.Tensor: Transformed key tensor, size + (#batch, n_head, time2, d_k). + torch.Tensor: Transformed value tensor, size + (#batch, n_head, time2, d_k). + + """ + n_batch = query.size(0) + q = self.linear_q(query).view(n_batch, -1, self.h, self.d_k) + k = self.linear_k(key).view(n_batch, -1, self.h, self.d_k) + v = self.linear_v(value).view(n_batch, -1, self.h, self.d_k) + q = q.transpose(1, 2) # (batch, head, time1, d_k) + k = k.transpose(1, 2) # (batch, head, time2, d_k) + v = v.transpose(1, 2) # (batch, head, time2, d_k) + + return q, k, v + + def forward_attention( + self, + value: torch.Tensor, + scores: torch.Tensor, + mask: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool) + ) -> torch.Tensor: + """Compute attention context vector. + + Args: + value (torch.Tensor): Transformed value, size + (#batch, n_head, time2, d_k). + scores (torch.Tensor): Attention score, size + (#batch, n_head, time1, time2). + mask (torch.Tensor): Mask, size (#batch, 1, time2) or + (#batch, time1, time2), (0, 0, 0) means fake mask. + + Returns: + torch.Tensor: Transformed value (#batch, time1, d_model) + weighted by the attention score (#batch, time1, time2). + + """ + n_batch = value.size(0) + # NOTE(xcsong): When will `if mask.size(2) > 0` be True? + # 1. onnx(16/4) [WHY? Because we feed real cache & real mask for the + # 1st chunk to ease the onnx export.] + # 2. pytorch training + if mask.size(2) > 0: # time2 > 0 + mask = mask.unsqueeze(1).eq(0) # (batch, 1, *, time2) + # For last chunk, time2 might be larger than scores.size(-1) + mask = mask[:, :, :, :scores.size(-1)] # (batch, 1, *, time2) + scores = scores.masked_fill(mask, -float('inf')) + attn = torch.softmax(scores, dim=-1).masked_fill( + mask, 0.0) # (batch, head, time1, time2) + # NOTE(xcsong): When will `if mask.size(2) > 0` be False? + # 1. onnx(16/-1, -1/-1, 16/0) + # 2. jit (16/-1, -1/-1, 16/0, 16/4) + else: + attn = torch.softmax(scores, dim=-1) # (batch, head, time1, time2) + + p_attn = self.dropout(attn) + x = torch.matmul(p_attn, value) # (batch, head, time1, d_k) + x = (x.transpose(1, 2).contiguous().view(n_batch, -1, + self.h * self.d_k) + ) # (batch, time1, d_model) + + return self.linear_out(x) # (batch, time1, d_model) + + def forward( + self, + query: torch.Tensor, + key: torch.Tensor, + value: torch.Tensor, + mask: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool), + pos_emb: torch.Tensor = torch.empty(0), + cache: torch.Tensor = torch.zeros((0, 0, 0, 0)) + ) -> Tuple[torch.Tensor, torch.Tensor]: + """Compute scaled dot product attention. + + Args: + query (torch.Tensor): Query tensor (#batch, time1, size). + key (torch.Tensor): Key tensor (#batch, time2, size). + value (torch.Tensor): Value tensor (#batch, time2, size). + mask (torch.Tensor): Mask tensor (#batch, 1, time2) or + (#batch, time1, time2). + 1.When applying cross attention between decoder and encoder, + the batch padding mask for input is in (#batch, 1, T) shape. + 2.When applying self attention of encoder, + the mask is in (#batch, T, T) shape. + 3.When applying self attention of decoder, + the mask is in (#batch, L, L) shape. + 4.If the different position in decoder see different block + of the encoder, such as Mocha, the passed in mask could be + in (#batch, L, T) shape. But there is no such case in current + CosyVoice. + cache (torch.Tensor): Cache tensor (1, head, cache_t, d_k * 2), + where `cache_t == chunk_size * num_decoding_left_chunks` + and `head * d_k == size` + + + Returns: + torch.Tensor: Output tensor (#batch, time1, d_model). + torch.Tensor: Cache tensor (1, head, cache_t + time1, d_k * 2) + where `cache_t == chunk_size * num_decoding_left_chunks` + and `head * d_k == size` + + """ + q, k, v = self.forward_qkv(query, key, value) + + # NOTE(xcsong): + # when export onnx model, for 1st chunk, we feed + # cache(1, head, 0, d_k * 2) (16/-1, -1/-1, 16/0 mode) + # or cache(1, head, real_cache_t, d_k * 2) (16/4 mode). + # In all modes, `if cache.size(0) > 0` will alwayse be `True` + # and we will always do splitting and + # concatnation(this will simplify onnx export). Note that + # it's OK to concat & split zero-shaped tensors(see code below). + # when export jit model, for 1st chunk, we always feed + # cache(0, 0, 0, 0) since jit supports dynamic if-branch. + # >>> a = torch.ones((1, 2, 0, 4)) + # >>> b = torch.ones((1, 2, 3, 4)) + # >>> c = torch.cat((a, b), dim=2) + # >>> torch.equal(b, c) # True + # >>> d = torch.split(a, 2, dim=-1) + # >>> torch.equal(d[0], d[1]) # True + if cache.size(0) > 0: + key_cache, value_cache = torch.split(cache, + cache.size(-1) // 2, + dim=-1) + k = torch.cat([key_cache, k], dim=2) + v = torch.cat([value_cache, v], dim=2) + # NOTE(xcsong): We do cache slicing in encoder.forward_chunk, since it's + # non-trivial to calculate `next_cache_start` here. + new_cache = torch.cat((k, v), dim=-1) + + scores = torch.matmul(q, k.transpose(-2, -1)) / math.sqrt(self.d_k) + return self.forward_attention(v, scores, mask), new_cache + + +class RelPositionMultiHeadedAttention(MultiHeadedAttention): + """Multi-Head Attention layer with relative position encoding. + Paper: https://arxiv.org/abs/1901.02860 + Args: + n_head (int): The number of heads. + n_feat (int): The number of features. + dropout_rate (float): Dropout rate. + """ + + def __init__(self, + n_head: int, + n_feat: int, + dropout_rate: float, + key_bias: bool = True): + """Construct an RelPositionMultiHeadedAttention object.""" + super().__init__(n_head, n_feat, dropout_rate, key_bias) + # linear transformation for positional encoding + self.linear_pos = nn.Linear(n_feat, n_feat, bias=False) + # these two learnable bias are used in matrix c and matrix d + # as described in https://arxiv.org/abs/1901.02860 Section 3.3 + self.pos_bias_u = nn.Parameter(torch.Tensor(self.h, self.d_k)) + self.pos_bias_v = nn.Parameter(torch.Tensor(self.h, self.d_k)) + torch.nn.init.xavier_uniform_(self.pos_bias_u) + torch.nn.init.xavier_uniform_(self.pos_bias_v) + + def rel_shift(self, x: torch.Tensor) -> torch.Tensor: + """Compute relative positional encoding. + + Args: + x (torch.Tensor): Input tensor (batch, head, time1, 2*time1-1). + time1 means the length of query vector. + + Returns: + torch.Tensor: Output tensor. + + """ + zero_pad = torch.zeros((x.size()[0], x.size()[1], x.size()[2], 1), + device=x.device, + dtype=x.dtype) + x_padded = torch.cat([zero_pad, x], dim=-1) + + x_padded = x_padded.view(x.size()[0], + x.size()[1], + x.size(3) + 1, x.size(2)) + x = x_padded[:, :, 1:].view_as(x)[ + :, :, :, : x.size(-1) // 2 + 1 + ] # only keep the positions from 0 to time2 + return x + + def forward( + self, + query: torch.Tensor, + key: torch.Tensor, + value: torch.Tensor, + mask: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool), + pos_emb: torch.Tensor = torch.empty(0), + cache: torch.Tensor = torch.zeros((0, 0, 0, 0)) + ) -> Tuple[torch.Tensor, torch.Tensor]: + """Compute 'Scaled Dot Product Attention' with rel. positional encoding. + Args: + query (torch.Tensor): Query tensor (#batch, time1, size). + key (torch.Tensor): Key tensor (#batch, time2, size). + value (torch.Tensor): Value tensor (#batch, time2, size). + mask (torch.Tensor): Mask tensor (#batch, 1, time2) or + (#batch, time1, time2), (0, 0, 0) means fake mask. + pos_emb (torch.Tensor): Positional embedding tensor + (#batch, time2, size). + cache (torch.Tensor): Cache tensor (1, head, cache_t, d_k * 2), + where `cache_t == chunk_size * num_decoding_left_chunks` + and `head * d_k == size` + Returns: + torch.Tensor: Output tensor (#batch, time1, d_model). + torch.Tensor: Cache tensor (1, head, cache_t + time1, d_k * 2) + where `cache_t == chunk_size * num_decoding_left_chunks` + and `head * d_k == size` + """ + q, k, v = self.forward_qkv(query, key, value) + q = q.transpose(1, 2) # (batch, time1, head, d_k) + + # NOTE(xcsong): + # when export onnx model, for 1st chunk, we feed + # cache(1, head, 0, d_k * 2) (16/-1, -1/-1, 16/0 mode) + # or cache(1, head, real_cache_t, d_k * 2) (16/4 mode). + # In all modes, `if cache.size(0) > 0` will alwayse be `True` + # and we will always do splitting and + # concatnation(this will simplify onnx export). Note that + # it's OK to concat & split zero-shaped tensors(see code below). + # when export jit model, for 1st chunk, we always feed + # cache(0, 0, 0, 0) since jit supports dynamic if-branch. + # >>> a = torch.ones((1, 2, 0, 4)) + # >>> b = torch.ones((1, 2, 3, 4)) + # >>> c = torch.cat((a, b), dim=2) + # >>> torch.equal(b, c) # True + # >>> d = torch.split(a, 2, dim=-1) + # >>> torch.equal(d[0], d[1]) # True + if cache.size(0) > 0: + key_cache, value_cache = torch.split(cache, + cache.size(-1) // 2, + dim=-1) + k = torch.cat([key_cache, k], dim=2) + v = torch.cat([value_cache, v], dim=2) + # NOTE(xcsong): We do cache slicing in encoder.forward_chunk, since it's + # non-trivial to calculate `next_cache_start` here. + new_cache = torch.cat((k, v), dim=-1) + + n_batch_pos = pos_emb.size(0) + p = self.linear_pos(pos_emb).view(n_batch_pos, -1, self.h, self.d_k) + p = p.transpose(1, 2) # (batch, head, time1, d_k) + + # (batch, head, time1, d_k) + q_with_bias_u = (q + self.pos_bias_u).transpose(1, 2) + # (batch, head, time1, d_k) + q_with_bias_v = (q + self.pos_bias_v).transpose(1, 2) + + # compute attention score + # first compute matrix a and matrix c + # as described in https://arxiv.org/abs/1901.02860 Section 3.3 + # (batch, head, time1, time2) + matrix_ac = torch.matmul(q_with_bias_u, k.transpose(-2, -1)) + + # compute matrix b and matrix d + # (batch, head, time1, time2) + matrix_bd = torch.matmul(q_with_bias_v, p.transpose(-2, -1)) + # NOTE(Xiang Lyu): Keep rel_shift since espnet rel_pos_emb is used + if matrix_ac.shape != matrix_bd.shape: + matrix_bd = self.rel_shift(matrix_bd) + + scores = (matrix_ac + matrix_bd) / math.sqrt( + self.d_k) # (batch, head, time1, time2) + + return self.forward_attention(v, scores, mask), new_cache diff --git a/cosyvoice/transformer/convolution.py b/cosyvoice/transformer/convolution.py new file mode 100644 index 0000000000000000000000000000000000000000..4d5d96149154776000991a681a666fbe55e562fe --- /dev/null +++ b/cosyvoice/transformer/convolution.py @@ -0,0 +1,145 @@ +# Copyright (c) 2020 Mobvoi Inc. (authors: Binbin Zhang, Di Wu) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""ConvolutionModule definition.""" + +from typing import Tuple + +import torch +from torch import nn + + +class ConvolutionModule(nn.Module): + """ConvolutionModule in Conformer model.""" + + def __init__(self, + channels: int, + kernel_size: int = 15, + activation: nn.Module = nn.ReLU(), + norm: str = "batch_norm", + causal: bool = False, + bias: bool = True): + """Construct an ConvolutionModule object. + Args: + channels (int): The number of channels of conv layers. + kernel_size (int): Kernel size of conv layers. + causal (int): Whether use causal convolution or not + """ + super().__init__() + + self.pointwise_conv1 = nn.Conv1d( + channels, + 2 * channels, + kernel_size=1, + stride=1, + padding=0, + bias=bias, + ) + # self.lorder is used to distinguish if it's a causal convolution, + # if self.lorder > 0: it's a causal convolution, the input will be + # padded with self.lorder frames on the left in forward. + # else: it's a symmetrical convolution + if causal: + padding = 0 + self.lorder = kernel_size - 1 + else: + # kernel_size should be an odd number for none causal convolution + assert (kernel_size - 1) % 2 == 0 + padding = (kernel_size - 1) // 2 + self.lorder = 0 + self.depthwise_conv = nn.Conv1d( + channels, + channels, + kernel_size, + stride=1, + padding=padding, + groups=channels, + bias=bias, + ) + + assert norm in ['batch_norm', 'layer_norm'] + if norm == "batch_norm": + self.use_layer_norm = False + self.norm = nn.BatchNorm1d(channels) + else: + self.use_layer_norm = True + self.norm = nn.LayerNorm(channels) + + self.pointwise_conv2 = nn.Conv1d( + channels, + channels, + kernel_size=1, + stride=1, + padding=0, + bias=bias, + ) + self.activation = activation + + def forward( + self, + x: torch.Tensor, + mask_pad: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool), + cache: torch.Tensor = torch.zeros((0, 0, 0)), + ) -> Tuple[torch.Tensor, torch.Tensor]: + """Compute convolution module. + Args: + x (torch.Tensor): Input tensor (#batch, time, channels). + mask_pad (torch.Tensor): used for batch padding (#batch, 1, time), + (0, 0, 0) means fake mask. + cache (torch.Tensor): left context cache, it is only + used in causal convolution (#batch, channels, cache_t), + (0, 0, 0) meas fake cache. + Returns: + torch.Tensor: Output tensor (#batch, time, channels). + """ + # exchange the temporal dimension and the feature dimension + x = x.transpose(1, 2) # (#batch, channels, time) + + # mask batch padding + if mask_pad.size(2) > 0: # time > 0 + x.masked_fill_(~mask_pad, 0.0) + + if self.lorder > 0: + if cache.size(2) == 0: # cache_t == 0 + x = nn.functional.pad(x, (self.lorder, 0), 'constant', 0.0) + else: + assert cache.size(0) == x.size(0) # equal batch + assert cache.size(1) == x.size(1) # equal channel + x = torch.cat((cache, x), dim=2) + assert (x.size(2) > self.lorder) + new_cache = x[:, :, -self.lorder:] + else: + # It's better we just return None if no cache is required, + # However, for JIT export, here we just fake one tensor instead of + # None. + new_cache = torch.zeros((0, 0, 0), dtype=x.dtype, device=x.device) + + # GLU mechanism + x = self.pointwise_conv1(x) # (batch, 2*channel, dim) + x = nn.functional.glu(x, dim=1) # (batch, channel, dim) + + # 1D Depthwise Conv + x = self.depthwise_conv(x) + if self.use_layer_norm: + x = x.transpose(1, 2) + x = self.activation(self.norm(x)) + if self.use_layer_norm: + x = x.transpose(1, 2) + x = self.pointwise_conv2(x) + # mask batch padding + if mask_pad.size(2) > 0: # time > 0 + x.masked_fill_(~mask_pad, 0.0) + + return x.transpose(1, 2), new_cache diff --git a/cosyvoice/transformer/decoder.py b/cosyvoice/transformer/decoder.py new file mode 100644 index 0000000000000000000000000000000000000000..98f3a66a6649b125343bb111b337f92793c492a9 --- /dev/null +++ b/cosyvoice/transformer/decoder.py @@ -0,0 +1,396 @@ +# Copyright (c) 2021 Mobvoi Inc. (authors: Binbin Zhang, Di Wu) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Decoder definition.""" +from typing import Tuple, List, Optional + +import torch +import torch.utils.checkpoint as ckpt +import logging + +from cosyvoice.transformer.decoder_layer import DecoderLayer +from cosyvoice.transformer.positionwise_feed_forward import PositionwiseFeedForward +from cosyvoice.utils.class_utils import ( + COSYVOICE_EMB_CLASSES, + COSYVOICE_ATTENTION_CLASSES, + COSYVOICE_ACTIVATION_CLASSES, +) +from cosyvoice.utils.mask import (subsequent_mask, make_pad_mask) + + +class TransformerDecoder(torch.nn.Module): + """Base class of Transfomer decoder module. + Args: + vocab_size: output dim + encoder_output_size: dimension of attention + attention_heads: the number of heads of multi head attention + linear_units: the hidden units number of position-wise feedforward + num_blocks: the number of decoder blocks + dropout_rate: dropout rate + self_attention_dropout_rate: dropout rate for attention + input_layer: input layer type + use_output_layer: whether to use output layer + pos_enc_class: PositionalEncoding or ScaledPositionalEncoding + normalize_before: + True: use layer_norm before each sub-block of a layer. + False: use layer_norm after each sub-block of a layer. + src_attention: if false, encoder-decoder cross attention is not + applied, such as CIF model + key_bias: whether use bias in attention.linear_k, False for whisper models. + gradient_checkpointing: rerunning a forward-pass segment for each + checkpointed segment during backward. + tie_word_embedding: Tie or clone module weights depending of whether we are + using TorchScript or not + """ + + def __init__( + self, + vocab_size: int, + encoder_output_size: int, + attention_heads: int = 4, + linear_units: int = 2048, + num_blocks: int = 6, + dropout_rate: float = 0.1, + positional_dropout_rate: float = 0.1, + self_attention_dropout_rate: float = 0.0, + src_attention_dropout_rate: float = 0.0, + input_layer: str = "embed", + use_output_layer: bool = True, + normalize_before: bool = True, + src_attention: bool = True, + key_bias: bool = True, + activation_type: str = "relu", + gradient_checkpointing: bool = False, + tie_word_embedding: bool = False, + ): + super().__init__() + attention_dim = encoder_output_size + activation = COSYVOICE_ACTIVATION_CLASSES[activation_type]() + + self.embed = torch.nn.Sequential( + torch.nn.Identity() if input_layer == "no_pos" else + torch.nn.Embedding(vocab_size, attention_dim), + COSYVOICE_EMB_CLASSES[input_layer](attention_dim, + positional_dropout_rate), + ) + + self.normalize_before = normalize_before + self.after_norm = torch.nn.LayerNorm(attention_dim, eps=1e-5) + self.use_output_layer = use_output_layer + if use_output_layer: + self.output_layer = torch.nn.Linear(attention_dim, vocab_size) + else: + self.output_layer = torch.nn.Identity() + self.num_blocks = num_blocks + self.decoders = torch.nn.ModuleList([ + DecoderLayer( + attention_dim, + COSYVOICE_ATTENTION_CLASSES["selfattn"]( + attention_heads, attention_dim, + self_attention_dropout_rate, key_bias), + COSYVOICE_ATTENTION_CLASSES["selfattn"]( + attention_heads, attention_dim, src_attention_dropout_rate, + key_bias) if src_attention else None, + PositionwiseFeedForward(attention_dim, linear_units, + dropout_rate, activation), + dropout_rate, + normalize_before, + ) for _ in range(self.num_blocks) + ]) + + self.gradient_checkpointing = gradient_checkpointing + self.tie_word_embedding = tie_word_embedding + + def forward( + self, + memory: torch.Tensor, + memory_mask: torch.Tensor, + ys_in_pad: torch.Tensor, + ys_in_lens: torch.Tensor, + r_ys_in_pad: torch.Tensor = torch.empty(0), + reverse_weight: float = 0.0, + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Forward decoder. + Args: + memory: encoded memory, float32 (batch, maxlen_in, feat) + memory_mask: encoder memory mask, (batch, 1, maxlen_in) + ys_in_pad: padded input token ids, int64 (batch, maxlen_out) + ys_in_lens: input lengths of this batch (batch) + r_ys_in_pad: not used in transformer decoder, in order to unify api + with bidirectional decoder + reverse_weight: not used in transformer decoder, in order to unify + api with bidirectional decode + Returns: + (tuple): tuple containing: + x: decoded token score before softmax (batch, maxlen_out, + vocab_size) if use_output_layer is True, + torch.tensor(0.0), in order to unify api with bidirectional decoder + olens: (batch, ) + NOTE(xcsong): + We pass the `__call__` method of the modules instead of `forward` to the + checkpointing API because `__call__` attaches all the hooks of the module. + https://discuss.pytorch.org/t/any-different-between-model-input-and-model-forward-input/3690/2 + """ + tgt = ys_in_pad + maxlen = tgt.size(1) + # tgt_mask: (B, 1, L) + tgt_mask = ~make_pad_mask(ys_in_lens, maxlen).unsqueeze(1) + tgt_mask = tgt_mask.to(tgt.device) + # m: (1, L, L) + m = subsequent_mask(tgt_mask.size(-1), + device=tgt_mask.device).unsqueeze(0) + # tgt_mask: (B, L, L) + tgt_mask = tgt_mask & m + x, _ = self.embed(tgt) + if self.gradient_checkpointing and self.training: + x = self.forward_layers_checkpointed(x, tgt_mask, memory, + memory_mask) + else: + x = self.forward_layers(x, tgt_mask, memory, memory_mask) + if self.normalize_before: + x = self.after_norm(x) + if self.use_output_layer: + x = self.output_layer(x) + olens = tgt_mask.sum(1) + return x, torch.tensor(0.0), olens + + def forward_layers(self, x: torch.Tensor, tgt_mask: torch.Tensor, + memory: torch.Tensor, + memory_mask: torch.Tensor) -> torch.Tensor: + for layer in self.decoders: + x, tgt_mask, memory, memory_mask = layer(x, tgt_mask, memory, + memory_mask) + return x + + @torch.jit.unused + def forward_layers_checkpointed(self, x: torch.Tensor, + tgt_mask: torch.Tensor, + memory: torch.Tensor, + memory_mask: torch.Tensor) -> torch.Tensor: + for layer in self.decoders: + x, tgt_mask, memory, memory_mask = ckpt.checkpoint( + layer.__call__, x, tgt_mask, memory, memory_mask) + return x + + def forward_one_step( + self, + memory: torch.Tensor, + memory_mask: torch.Tensor, + tgt: torch.Tensor, + tgt_mask: torch.Tensor, + cache: Optional[List[torch.Tensor]] = None, + ) -> Tuple[torch.Tensor, List[torch.Tensor]]: + """Forward one step. + This is only used for decoding. + Args: + memory: encoded memory, float32 (batch, maxlen_in, feat) + memory_mask: encoded memory mask, (batch, 1, maxlen_in) + tgt: input token ids, int64 (batch, maxlen_out) + tgt_mask: input token mask, (batch, maxlen_out) + dtype=torch.uint8 in PyTorch 1.2- + dtype=torch.bool in PyTorch 1.2+ (include 1.2) + cache: cached output list of (batch, max_time_out-1, size) + Returns: + y, cache: NN output value and cache per `self.decoders`. + y.shape` is (batch, maxlen_out, token) + """ + x, _ = self.embed(tgt) + new_cache = [] + for i, decoder in enumerate(self.decoders): + if cache is None: + c = None + else: + c = cache[i] + x, tgt_mask, memory, memory_mask = decoder(x, + tgt_mask, + memory, + memory_mask, + cache=c) + new_cache.append(x) + if self.normalize_before: + y = self.after_norm(x[:, -1]) + else: + y = x[:, -1] + if self.use_output_layer: + y = torch.log_softmax(self.output_layer(y), dim=-1) + return y, new_cache + + def tie_or_clone_weights(self, jit_mode: bool = True): + """Tie or clone module weights (between word_emb and output_layer) + depending of whether we are using TorchScript or not""" + if not self.use_output_layer: + return + if jit_mode: + logging.info("clone emb.weight to output.weight") + self.output_layer.weight = torch.nn.Parameter( + self.embed[0].weight.clone()) + else: + logging.info("tie emb.weight with output.weight") + self.output_layer.weight = self.embed[0].weight + + if getattr(self.output_layer, "bias", None) is not None: + self.output_layer.bias.data = torch.nn.functional.pad( + self.output_layer.bias.data, + ( + 0, + self.output_layer.weight.shape[0] - + self.output_layer.bias.shape[0], + ), + "constant", + 0, + ) + + +class BiTransformerDecoder(torch.nn.Module): + """Base class of Transfomer decoder module. + Args: + vocab_size: output dim + encoder_output_size: dimension of attention + attention_heads: the number of heads of multi head attention + linear_units: the hidden units number of position-wise feedforward + num_blocks: the number of decoder blocks + r_num_blocks: the number of right to left decoder blocks + dropout_rate: dropout rate + self_attention_dropout_rate: dropout rate for attention + input_layer: input layer type + use_output_layer: whether to use output layer + pos_enc_class: PositionalEncoding or ScaledPositionalEncoding + normalize_before: + True: use layer_norm before each sub-block of a layer. + False: use layer_norm after each sub-block of a layer. + key_bias: whether use bias in attention.linear_k, False for whisper models. + """ + + def __init__( + self, + vocab_size: int, + encoder_output_size: int, + attention_heads: int = 4, + linear_units: int = 2048, + num_blocks: int = 6, + r_num_blocks: int = 0, + dropout_rate: float = 0.1, + positional_dropout_rate: float = 0.1, + self_attention_dropout_rate: float = 0.0, + src_attention_dropout_rate: float = 0.0, + input_layer: str = "embed", + use_output_layer: bool = True, + normalize_before: bool = True, + key_bias: bool = True, + gradient_checkpointing: bool = False, + tie_word_embedding: bool = False, + ): + + super().__init__() + self.tie_word_embedding = tie_word_embedding + self.left_decoder = TransformerDecoder( + vocab_size, + encoder_output_size, + attention_heads, + linear_units, + num_blocks, + dropout_rate, + positional_dropout_rate, + self_attention_dropout_rate, + src_attention_dropout_rate, + input_layer, + use_output_layer, + normalize_before, + key_bias=key_bias, + gradient_checkpointing=gradient_checkpointing, + tie_word_embedding=tie_word_embedding) + + self.right_decoder = TransformerDecoder( + vocab_size, + encoder_output_size, + attention_heads, + linear_units, + r_num_blocks, + dropout_rate, + positional_dropout_rate, + self_attention_dropout_rate, + src_attention_dropout_rate, + input_layer, + use_output_layer, + normalize_before, + key_bias=key_bias, + gradient_checkpointing=gradient_checkpointing, + tie_word_embedding=tie_word_embedding) + + def forward( + self, + memory: torch.Tensor, + memory_mask: torch.Tensor, + ys_in_pad: torch.Tensor, + ys_in_lens: torch.Tensor, + r_ys_in_pad: torch.Tensor, + reverse_weight: float = 0.0, + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Forward decoder. + Args: + memory: encoded memory, float32 (batch, maxlen_in, feat) + memory_mask: encoder memory mask, (batch, 1, maxlen_in) + ys_in_pad: padded input token ids, int64 (batch, maxlen_out) + ys_in_lens: input lengths of this batch (batch) + r_ys_in_pad: padded input token ids, int64 (batch, maxlen_out), + used for right to left decoder + reverse_weight: used for right to left decoder + Returns: + (tuple): tuple containing: + x: decoded token score before softmax (batch, maxlen_out, + vocab_size) if use_output_layer is True, + r_x: x: decoded token score (right to left decoder) + before softmax (batch, maxlen_out, vocab_size) + if use_output_layer is True, + olens: (batch, ) + """ + l_x, _, olens = self.left_decoder(memory, memory_mask, ys_in_pad, + ys_in_lens) + r_x = torch.tensor(0.0) + if reverse_weight > 0.0: + r_x, _, olens = self.right_decoder(memory, memory_mask, + r_ys_in_pad, ys_in_lens) + return l_x, r_x, olens + + def forward_one_step( + self, + memory: torch.Tensor, + memory_mask: torch.Tensor, + tgt: torch.Tensor, + tgt_mask: torch.Tensor, + cache: Optional[List[torch.Tensor]] = None, + ) -> Tuple[torch.Tensor, List[torch.Tensor]]: + """Forward one step. + This is only used for decoding. + Args: + memory: encoded memory, float32 (batch, maxlen_in, feat) + memory_mask: encoded memory mask, (batch, 1, maxlen_in) + tgt: input token ids, int64 (batch, maxlen_out) + tgt_mask: input token mask, (batch, maxlen_out) + dtype=torch.uint8 in PyTorch 1.2- + dtype=torch.bool in PyTorch 1.2+ (include 1.2) + cache: cached output list of (batch, max_time_out-1, size) + Returns: + y, cache: NN output value and cache per `self.decoders`. + y.shape` is (batch, maxlen_out, token) + """ + return self.left_decoder.forward_one_step(memory, memory_mask, tgt, + tgt_mask, cache) + + def tie_or_clone_weights(self, jit_mode: bool = True): + """Tie or clone module weights (between word_emb and output_layer) + depending of whether we are using TorchScript or not""" + self.left_decoder.tie_or_clone_weights(jit_mode) + self.right_decoder.tie_or_clone_weights(jit_mode) diff --git a/cosyvoice/transformer/decoder_layer.py b/cosyvoice/transformer/decoder_layer.py new file mode 100644 index 0000000000000000000000000000000000000000..91c7c5d7fb2a8e79cea7705646e5381016f73466 --- /dev/null +++ b/cosyvoice/transformer/decoder_layer.py @@ -0,0 +1,132 @@ +# Copyright (c) 2019 Shigeki Karita +# 2020 Mobvoi Inc (Binbin Zhang) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Decoder self-attention layer definition.""" +from typing import Optional, Tuple + +import torch +from torch import nn + + +class DecoderLayer(nn.Module): + """Single decoder layer module. + + Args: + size (int): Input dimension. + self_attn (torch.nn.Module): Self-attention module instance. + `MultiHeadedAttention` instance can be used as the argument. + src_attn (torch.nn.Module): Inter-attention module instance. + `MultiHeadedAttention` instance can be used as the argument. + If `None` is passed, Inter-attention is not used, such as + CIF, GPT, and other decoder only model. + feed_forward (torch.nn.Module): Feed-forward module instance. + `PositionwiseFeedForward` instance can be used as the argument. + dropout_rate (float): Dropout rate. + normalize_before (bool): + True: use layer_norm before each sub-block. + False: to use layer_norm after each sub-block. + """ + + def __init__( + self, + size: int, + self_attn: nn.Module, + src_attn: Optional[nn.Module], + feed_forward: nn.Module, + dropout_rate: float, + normalize_before: bool = True, + ): + """Construct an DecoderLayer object.""" + super().__init__() + self.size = size + self.self_attn = self_attn + self.src_attn = src_attn + self.feed_forward = feed_forward + self.norm1 = nn.LayerNorm(size, eps=1e-5) + self.norm2 = nn.LayerNorm(size, eps=1e-5) + self.norm3 = nn.LayerNorm(size, eps=1e-5) + self.dropout = nn.Dropout(dropout_rate) + self.normalize_before = normalize_before + + def forward( + self, + tgt: torch.Tensor, + tgt_mask: torch.Tensor, + memory: torch.Tensor, + memory_mask: torch.Tensor, + cache: Optional[torch.Tensor] = None + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]: + """Compute decoded features. + + Args: + tgt (torch.Tensor): Input tensor (#batch, maxlen_out, size). + tgt_mask (torch.Tensor): Mask for input tensor + (#batch, maxlen_out). + memory (torch.Tensor): Encoded memory + (#batch, maxlen_in, size). + memory_mask (torch.Tensor): Encoded memory mask + (#batch, maxlen_in). + cache (torch.Tensor): cached tensors. + (#batch, maxlen_out - 1, size). + + Returns: + torch.Tensor: Output tensor (#batch, maxlen_out, size). + torch.Tensor: Mask for output tensor (#batch, maxlen_out). + torch.Tensor: Encoded memory (#batch, maxlen_in, size). + torch.Tensor: Encoded memory mask (#batch, maxlen_in). + + """ + residual = tgt + if self.normalize_before: + tgt = self.norm1(tgt) + + if cache is None: + tgt_q = tgt + tgt_q_mask = tgt_mask + else: + # compute only the last frame query keeping dim: max_time_out -> 1 + assert cache.shape == ( + tgt.shape[0], + tgt.shape[1] - 1, + self.size, + ), "{cache.shape} == {(tgt.shape[0], tgt.shape[1] - 1, self.size)}" + tgt_q = tgt[:, -1:, :] + residual = residual[:, -1:, :] + tgt_q_mask = tgt_mask[:, -1:, :] + + x = residual + self.dropout( + self.self_attn(tgt_q, tgt, tgt, tgt_q_mask)[0]) + if not self.normalize_before: + x = self.norm1(x) + + if self.src_attn is not None: + residual = x + if self.normalize_before: + x = self.norm2(x) + x = residual + self.dropout( + self.src_attn(x, memory, memory, memory_mask)[0]) + if not self.normalize_before: + x = self.norm2(x) + + residual = x + if self.normalize_before: + x = self.norm3(x) + x = residual + self.dropout(self.feed_forward(x)) + if not self.normalize_before: + x = self.norm3(x) + + if cache is not None: + x = torch.cat([cache, x], dim=1) + + return x, tgt_mask, memory, memory_mask diff --git a/cosyvoice/transformer/embedding.py b/cosyvoice/transformer/embedding.py new file mode 100644 index 0000000000000000000000000000000000000000..eae8c8ecabb15b4174cc3aa73c070ae702bb5f82 --- /dev/null +++ b/cosyvoice/transformer/embedding.py @@ -0,0 +1,294 @@ +# Copyright (c) 2020 Mobvoi Inc. (authors: Binbin Zhang, Di Wu) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Positonal Encoding Module.""" + +import math +from typing import Tuple, Union + +import torch +import torch.nn.functional as F +import numpy as np + + +class PositionalEncoding(torch.nn.Module): + """Positional encoding. + + :param int d_model: embedding dim + :param float dropout_rate: dropout rate + :param int max_len: maximum input length + + PE(pos, 2i) = sin(pos/(10000^(2i/dmodel))) + PE(pos, 2i+1) = cos(pos/(10000^(2i/dmodel))) + """ + + def __init__(self, + d_model: int, + dropout_rate: float, + max_len: int = 5000, + reverse: bool = False): + """Construct an PositionalEncoding object.""" + super().__init__() + self.d_model = d_model + self.xscale = math.sqrt(self.d_model) + self.dropout = torch.nn.Dropout(p=dropout_rate) + self.max_len = max_len + + self.pe = torch.zeros(self.max_len, self.d_model) + position = torch.arange(0, self.max_len, + dtype=torch.float32).unsqueeze(1) + div_term = torch.exp( + torch.arange(0, self.d_model, 2, dtype=torch.float32) * + -(math.log(10000.0) / self.d_model)) + self.pe[:, 0::2] = torch.sin(position * div_term) + self.pe[:, 1::2] = torch.cos(position * div_term) + self.pe = self.pe.unsqueeze(0) + + def forward(self, + x: torch.Tensor, + offset: Union[int, torch.Tensor] = 0) \ + -> Tuple[torch.Tensor, torch.Tensor]: + """Add positional encoding. + + Args: + x (torch.Tensor): Input. Its shape is (batch, time, ...) + offset (int, torch.tensor): position offset + + Returns: + torch.Tensor: Encoded tensor. Its shape is (batch, time, ...) + torch.Tensor: for compatibility to RelPositionalEncoding + """ + + self.pe = self.pe.to(x.device) + pos_emb = self.position_encoding(offset, x.size(1), False) + x = x * self.xscale + pos_emb + return self.dropout(x), self.dropout(pos_emb) + + def position_encoding(self, + offset: Union[int, torch.Tensor], + size: int, + apply_dropout: bool = True) -> torch.Tensor: + """ For getting encoding in a streaming fashion + + Attention!!!!! + we apply dropout only once at the whole utterance level in a none + streaming way, but will call this function several times with + increasing input size in a streaming scenario, so the dropout will + be applied several times. + + Args: + offset (int or torch.tensor): start offset + size (int): required size of position encoding + + Returns: + torch.Tensor: Corresponding encoding + """ + # How to subscript a Union type: + # https://github.com/pytorch/pytorch/issues/69434 + if isinstance(offset, int): + assert offset + size <= self.max_len + pos_emb = self.pe[:, offset:offset + size] + elif isinstance(offset, torch.Tensor) and offset.dim() == 0: # scalar + assert offset + size <= self.max_len + pos_emb = self.pe[:, offset:offset + size] + else: # for batched streaming decoding on GPU + assert torch.max(offset) + size <= self.max_len + index = offset.unsqueeze(1) + \ + torch.arange(0, size).to(offset.device) # B X T + flag = index > 0 + # remove negative offset + index = index * flag + pos_emb = F.embedding(index, self.pe[0]) # B X T X d_model + + if apply_dropout: + pos_emb = self.dropout(pos_emb) + return pos_emb + + +class RelPositionalEncoding(PositionalEncoding): + """Relative positional encoding module. + See : Appendix B in https://arxiv.org/abs/1901.02860 + Args: + d_model (int): Embedding dimension. + dropout_rate (float): Dropout rate. + max_len (int): Maximum input length. + """ + + def __init__(self, d_model: int, dropout_rate: float, max_len: int = 5000): + """Initialize class.""" + super().__init__(d_model, dropout_rate, max_len, reverse=True) + + def forward(self, + x: torch.Tensor, + offset: Union[int, torch.Tensor] = 0) \ + -> Tuple[torch.Tensor, torch.Tensor]: + """Compute positional encoding. + Args: + x (torch.Tensor): Input tensor (batch, time, `*`). + Returns: + torch.Tensor: Encoded tensor (batch, time, `*`). + torch.Tensor: Positional embedding tensor (1, time, `*`). + """ + self.pe = self.pe.to(x.device) + x = x * self.xscale + pos_emb = self.position_encoding(offset, x.size(1), False) + return self.dropout(x), self.dropout(pos_emb) + + +class WhisperPositionalEncoding(PositionalEncoding): + """ Sinusoids position encoding used in openai-whisper.encoder + """ + + def __init__(self, d_model: int, dropout_rate: float, max_len: int = 1500): + super().__init__(d_model, dropout_rate, max_len) + self.xscale = 1.0 + log_timescale_increment = np.log(10000) / (d_model // 2 - 1) + inv_timescales = torch.exp(-log_timescale_increment * + torch.arange(d_model // 2)) + scaled_time = torch.arange(max_len)[:, np.newaxis] * \ + inv_timescales[np.newaxis, :] + pe = torch.cat([torch.sin(scaled_time), torch.cos(scaled_time)], dim=1) + delattr(self, "pe") + self.register_buffer("pe", pe.unsqueeze(0)) + + +class LearnablePositionalEncoding(PositionalEncoding): + """ Learnable position encoding used in openai-whisper.decoder + """ + + def __init__(self, d_model: int, dropout_rate: float, max_len: int = 448): + super().__init__(d_model, dropout_rate, max_len) + # NOTE(xcsong): overwrite self.pe & self.xscale + self.pe = torch.nn.Parameter(torch.empty(1, max_len, d_model)) + self.xscale = 1.0 + + +class NoPositionalEncoding(torch.nn.Module): + """ No position encoding + """ + + def __init__(self, d_model: int, dropout_rate: float): + super().__init__() + self.d_model = d_model + self.dropout = torch.nn.Dropout(p=dropout_rate) + + def forward(self, + x: torch.Tensor, + offset: Union[int, torch.Tensor] = 0) \ + -> Tuple[torch.Tensor, torch.Tensor]: + """ Just return zero vector for interface compatibility + """ + pos_emb = torch.zeros(1, x.size(1), self.d_model).to(x.device) + return self.dropout(x), pos_emb + + def position_encoding(self, offset: Union[int, torch.Tensor], + size: int) -> torch.Tensor: + return torch.zeros(1, size, self.d_model) + + +class EspnetRelPositionalEncoding(torch.nn.Module): + """Relative positional encoding module (new implementation). + + Details can be found in https://github.com/espnet/espnet/pull/2816. + + See : Appendix B in https://arxiv.org/abs/1901.02860 + + Args: + d_model (int): Embedding dimension. + dropout_rate (float): Dropout rate. + max_len (int): Maximum input length. + + """ + + def __init__(self, d_model: int, dropout_rate: float, max_len: int = 5000): + """Construct an PositionalEncoding object.""" + super(EspnetRelPositionalEncoding, self).__init__() + self.d_model = d_model + self.xscale = math.sqrt(self.d_model) + self.dropout = torch.nn.Dropout(p=dropout_rate) + self.pe = None + self.extend_pe(torch.tensor(0.0).expand(1, max_len)) + + def extend_pe(self, x: torch.Tensor): + """Reset the positional encodings.""" + if self.pe is not None: + # self.pe contains both positive and negative parts + # the length of self.pe is 2 * input_len - 1 + if self.pe.size(1) >= x.size(1) * 2 - 1: + if self.pe.dtype != x.dtype or self.pe.device != x.device: + self.pe = self.pe.to(dtype=x.dtype, device=x.device) + return + # Suppose `i` means to the position of query vecotr and `j` means the + # position of key vector. We use position relative positions when keys + # are to the left (i>j) and negative relative positions otherwise (i Tuple[torch.Tensor, torch.Tensor]: + """Add positional encoding. + + Args: + x (torch.Tensor): Input tensor (batch, time, `*`). + + Returns: + torch.Tensor: Encoded tensor (batch, time, `*`). + + """ + self.extend_pe(x) + x = x * self.xscale + pos_emb = self.position_encoding(size=x.size(1), offset=offset) + return self.dropout(x), self.dropout(pos_emb) + + def position_encoding(self, + offset: Union[int, torch.Tensor], + size: int) -> torch.Tensor: + """ For getting encoding in a streaming fashion + + Attention!!!!! + we apply dropout only once at the whole utterance level in a none + streaming way, but will call this function several times with + increasing input size in a streaming scenario, so the dropout will + be applied several times. + + Args: + offset (int or torch.tensor): start offset + size (int): required size of position encoding + + Returns: + torch.Tensor: Corresponding encoding + """ + pos_emb = self.pe[ + :, + self.pe.size(1) // 2 - size + 1: self.pe.size(1) // 2 + size, + ] + return pos_emb diff --git a/cosyvoice/transformer/encoder.py b/cosyvoice/transformer/encoder.py new file mode 100644 index 0000000000000000000000000000000000000000..c5709d0ce86b71cb994a9ea188e66fd233ebda67 --- /dev/null +++ b/cosyvoice/transformer/encoder.py @@ -0,0 +1,474 @@ +# Copyright (c) 2021 Mobvoi Inc (Binbin Zhang, Di Wu) +# 2022 Xingchen Song (sxc19@mails.tsinghua.edu.cn) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Encoder definition.""" +from typing import Tuple + +import torch +import torch.utils.checkpoint as ckpt + +from cosyvoice.transformer.convolution import ConvolutionModule +from cosyvoice.transformer.encoder_layer import TransformerEncoderLayer +from cosyvoice.transformer.encoder_layer import ConformerEncoderLayer +from cosyvoice.transformer.positionwise_feed_forward import PositionwiseFeedForward +from cosyvoice.utils.class_utils import ( + COSYVOICE_EMB_CLASSES, + COSYVOICE_SUBSAMPLE_CLASSES, + COSYVOICE_ATTENTION_CLASSES, + COSYVOICE_ACTIVATION_CLASSES, +) +from cosyvoice.utils.mask import make_pad_mask +from cosyvoice.utils.mask import add_optional_chunk_mask + + +class BaseEncoder(torch.nn.Module): + + def __init__( + self, + input_size: int, + output_size: int = 256, + attention_heads: int = 4, + linear_units: int = 2048, + num_blocks: int = 6, + dropout_rate: float = 0.1, + positional_dropout_rate: float = 0.1, + attention_dropout_rate: float = 0.0, + input_layer: str = "conv2d", + pos_enc_layer_type: str = "abs_pos", + normalize_before: bool = True, + static_chunk_size: int = 0, + use_dynamic_chunk: bool = False, + global_cmvn: torch.nn.Module = None, + use_dynamic_left_chunk: bool = False, + gradient_checkpointing: bool = False, + ): + """ + Args: + input_size (int): input dim + output_size (int): dimension of attention + attention_heads (int): the number of heads of multi head attention + linear_units (int): the hidden units number of position-wise feed + forward + num_blocks (int): the number of decoder blocks + dropout_rate (float): dropout rate + attention_dropout_rate (float): dropout rate in attention + positional_dropout_rate (float): dropout rate after adding + positional encoding + input_layer (str): input layer type. + optional [linear, conv2d, conv2d6, conv2d8] + pos_enc_layer_type (str): Encoder positional encoding layer type. + opitonal [abs_pos, scaled_abs_pos, rel_pos, no_pos] + normalize_before (bool): + True: use layer_norm before each sub-block of a layer. + False: use layer_norm after each sub-block of a layer. + static_chunk_size (int): chunk size for static chunk training and + decoding + use_dynamic_chunk (bool): whether use dynamic chunk size for + training or not, You can only use fixed chunk(chunk_size > 0) + or dyanmic chunk size(use_dynamic_chunk = True) + global_cmvn (Optional[torch.nn.Module]): Optional GlobalCMVN module + use_dynamic_left_chunk (bool): whether use dynamic left chunk in + dynamic chunk training + key_bias: whether use bias in attention.linear_k, False for whisper models. + gradient_checkpointing: rerunning a forward-pass segment for each + checkpointed segment during backward. + """ + super().__init__() + self._output_size = output_size + + self.global_cmvn = global_cmvn + self.embed = COSYVOICE_SUBSAMPLE_CLASSES[input_layer]( + input_size, + output_size, + dropout_rate, + COSYVOICE_EMB_CLASSES[pos_enc_layer_type](output_size, + positional_dropout_rate), + ) + + self.normalize_before = normalize_before + self.after_norm = torch.nn.LayerNorm(output_size, eps=1e-5) + self.static_chunk_size = static_chunk_size + self.use_dynamic_chunk = use_dynamic_chunk + self.use_dynamic_left_chunk = use_dynamic_left_chunk + self.gradient_checkpointing = gradient_checkpointing + + def output_size(self) -> int: + return self._output_size + + def forward( + self, + xs: torch.Tensor, + xs_lens: torch.Tensor, + decoding_chunk_size: int = 0, + num_decoding_left_chunks: int = -1, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """Embed positions in tensor. + + Args: + xs: padded input tensor (B, T, D) + xs_lens: input length (B) + decoding_chunk_size: decoding chunk size for dynamic chunk + 0: default for training, use random dynamic chunk. + <0: for decoding, use full chunk. + >0: for decoding, use fixed chunk size as set. + num_decoding_left_chunks: number of left chunks, this is for decoding, + the chunk size is decoding_chunk_size. + >=0: use num_decoding_left_chunks + <0: use all left chunks + Returns: + encoder output tensor xs, and subsampled masks + xs: padded output tensor (B, T' ~= T/subsample_rate, D) + masks: torch.Tensor batch padding mask after subsample + (B, 1, T' ~= T/subsample_rate) + NOTE(xcsong): + We pass the `__call__` method of the modules instead of `forward` to the + checkpointing API because `__call__` attaches all the hooks of the module. + https://discuss.pytorch.org/t/any-different-between-model-input-and-model-forward-input/3690/2 + """ + T = xs.size(1) + masks = ~make_pad_mask(xs_lens, T).unsqueeze(1) # (B, 1, T) + if self.global_cmvn is not None: + xs = self.global_cmvn(xs) + xs, pos_emb, masks = self.embed(xs, masks) + mask_pad = masks # (B, 1, T/subsample_rate) + chunk_masks = add_optional_chunk_mask(xs, masks, + self.use_dynamic_chunk, + self.use_dynamic_left_chunk, + decoding_chunk_size, + self.static_chunk_size, + num_decoding_left_chunks) + if self.gradient_checkpointing and self.training: + xs = self.forward_layers_checkpointed(xs, chunk_masks, pos_emb, + mask_pad) + else: + xs = self.forward_layers(xs, chunk_masks, pos_emb, mask_pad) + if self.normalize_before: + xs = self.after_norm(xs) + # Here we assume the mask is not changed in encoder layers, so just + # return the masks before encoder layers, and the masks will be used + # for cross attention with decoder later + return xs, masks + + def forward_layers(self, xs: torch.Tensor, chunk_masks: torch.Tensor, + pos_emb: torch.Tensor, + mask_pad: torch.Tensor) -> torch.Tensor: + for layer in self.encoders: + xs, chunk_masks, _, _ = layer(xs, chunk_masks, pos_emb, mask_pad) + return xs + + @torch.jit.unused + def forward_layers_checkpointed(self, xs: torch.Tensor, + chunk_masks: torch.Tensor, + pos_emb: torch.Tensor, + mask_pad: torch.Tensor) -> torch.Tensor: + for layer in self.encoders: + xs, chunk_masks, _, _ = ckpt.checkpoint(layer.__call__, xs, + chunk_masks, pos_emb, + mask_pad) + return xs + + @torch.jit.export + def forward_chunk( + self, + xs: torch.Tensor, + offset: int, + required_cache_size: int, + att_cache: torch.Tensor = torch.zeros(0, 0, 0, 0), + cnn_cache: torch.Tensor = torch.zeros(0, 0, 0, 0), + att_mask: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool), + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """ Forward just one chunk + + Args: + xs (torch.Tensor): chunk input, with shape (b=1, time, mel-dim), + where `time == (chunk_size - 1) * subsample_rate + \ + subsample.right_context + 1` + offset (int): current offset in encoder output time stamp + required_cache_size (int): cache size required for next chunk + compuation + >=0: actual cache size + <0: means all history cache is required + att_cache (torch.Tensor): cache tensor for KEY & VALUE in + transformer/conformer attention, with shape + (elayers, head, cache_t1, d_k * 2), where + `head * d_k == hidden-dim` and + `cache_t1 == chunk_size * num_decoding_left_chunks`. + cnn_cache (torch.Tensor): cache tensor for cnn_module in conformer, + (elayers, b=1, hidden-dim, cache_t2), where + `cache_t2 == cnn.lorder - 1` + + Returns: + torch.Tensor: output of current input xs, + with shape (b=1, chunk_size, hidden-dim). + torch.Tensor: new attention cache required for next chunk, with + dynamic shape (elayers, head, ?, d_k * 2) + depending on required_cache_size. + torch.Tensor: new conformer cnn cache required for next chunk, with + same shape as the original cnn_cache. + + """ + assert xs.size(0) == 1 + # tmp_masks is just for interface compatibility + tmp_masks = torch.ones(1, + xs.size(1), + device=xs.device, + dtype=torch.bool) + tmp_masks = tmp_masks.unsqueeze(1) + if self.global_cmvn is not None: + xs = self.global_cmvn(xs) + # NOTE(xcsong): Before embed, shape(xs) is (b=1, time, mel-dim) + xs, pos_emb, _ = self.embed(xs, tmp_masks, offset) + # NOTE(xcsong): After embed, shape(xs) is (b=1, chunk_size, hidden-dim) + elayers, cache_t1 = att_cache.size(0), att_cache.size(2) + chunk_size = xs.size(1) + attention_key_size = cache_t1 + chunk_size + pos_emb = self.embed.position_encoding(offset=offset - cache_t1, + size=attention_key_size) + if required_cache_size < 0: + next_cache_start = 0 + elif required_cache_size == 0: + next_cache_start = attention_key_size + else: + next_cache_start = max(attention_key_size - required_cache_size, 0) + r_att_cache = [] + r_cnn_cache = [] + for i, layer in enumerate(self.encoders): + # NOTE(xcsong): Before layer.forward + # shape(att_cache[i:i + 1]) is (1, head, cache_t1, d_k * 2), + # shape(cnn_cache[i]) is (b=1, hidden-dim, cache_t2) + xs, _, new_att_cache, new_cnn_cache = layer( + xs, + att_mask, + pos_emb, + att_cache=att_cache[i:i + 1] if elayers > 0 else att_cache, + cnn_cache=cnn_cache[i] if cnn_cache.size(0) > 0 else cnn_cache) + # NOTE(xcsong): After layer.forward + # shape(new_att_cache) is (1, head, attention_key_size, d_k * 2), + # shape(new_cnn_cache) is (b=1, hidden-dim, cache_t2) + r_att_cache.append(new_att_cache[:, :, next_cache_start:, :]) + r_cnn_cache.append(new_cnn_cache.unsqueeze(0)) + if self.normalize_before: + xs = self.after_norm(xs) + + # NOTE(xcsong): shape(r_att_cache) is (elayers, head, ?, d_k * 2), + # ? may be larger than cache_t1, it depends on required_cache_size + r_att_cache = torch.cat(r_att_cache, dim=0) + # NOTE(xcsong): shape(r_cnn_cache) is (e, b=1, hidden-dim, cache_t2) + r_cnn_cache = torch.cat(r_cnn_cache, dim=0) + + return (xs, r_att_cache, r_cnn_cache) + + @torch.jit.unused + def forward_chunk_by_chunk( + self, + xs: torch.Tensor, + decoding_chunk_size: int, + num_decoding_left_chunks: int = -1, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ Forward input chunk by chunk with chunk_size like a streaming + fashion + + Here we should pay special attention to computation cache in the + streaming style forward chunk by chunk. Three things should be taken + into account for computation in the current network: + 1. transformer/conformer encoder layers output cache + 2. convolution in conformer + 3. convolution in subsampling + + However, we don't implement subsampling cache for: + 1. We can control subsampling module to output the right result by + overlapping input instead of cache left context, even though it + wastes some computation, but subsampling only takes a very + small fraction of computation in the whole model. + 2. Typically, there are several covolution layers with subsampling + in subsampling module, it is tricky and complicated to do cache + with different convolution layers with different subsampling + rate. + 3. Currently, nn.Sequential is used to stack all the convolution + layers in subsampling, we need to rewrite it to make it work + with cache, which is not preferred. + Args: + xs (torch.Tensor): (1, max_len, dim) + chunk_size (int): decoding chunk size + """ + assert decoding_chunk_size > 0 + # The model is trained by static or dynamic chunk + assert self.static_chunk_size > 0 or self.use_dynamic_chunk + subsampling = self.embed.subsampling_rate + context = self.embed.right_context + 1 # Add current frame + stride = subsampling * decoding_chunk_size + decoding_window = (decoding_chunk_size - 1) * subsampling + context + num_frames = xs.size(1) + att_cache: torch.Tensor = torch.zeros((0, 0, 0, 0), device=xs.device) + cnn_cache: torch.Tensor = torch.zeros((0, 0, 0, 0), device=xs.device) + outputs = [] + offset = 0 + required_cache_size = decoding_chunk_size * num_decoding_left_chunks + + # Feed forward overlap input step by step + for cur in range(0, num_frames - context + 1, stride): + end = min(cur + decoding_window, num_frames) + chunk_xs = xs[:, cur:end, :] + (y, att_cache, + cnn_cache) = self.forward_chunk(chunk_xs, offset, + required_cache_size, att_cache, + cnn_cache) + outputs.append(y) + offset += y.size(1) + ys = torch.cat(outputs, 1) + masks = torch.ones((1, 1, ys.size(1)), + device=ys.device, + dtype=torch.bool) + return ys, masks + + +class TransformerEncoder(BaseEncoder): + """Transformer encoder module.""" + + def __init__( + self, + input_size: int, + output_size: int = 256, + attention_heads: int = 4, + linear_units: int = 2048, + num_blocks: int = 6, + dropout_rate: float = 0.1, + positional_dropout_rate: float = 0.1, + attention_dropout_rate: float = 0.0, + input_layer: str = "conv2d", + pos_enc_layer_type: str = "abs_pos", + normalize_before: bool = True, + static_chunk_size: int = 0, + use_dynamic_chunk: bool = False, + global_cmvn: torch.nn.Module = None, + use_dynamic_left_chunk: bool = False, + key_bias: bool = True, + selfattention_layer_type: str = "selfattn", + activation_type: str = "relu", + gradient_checkpointing: bool = False, + ): + """ Construct TransformerEncoder + + See Encoder for the meaning of each parameter. + """ + super().__init__(input_size, output_size, attention_heads, + linear_units, num_blocks, dropout_rate, + positional_dropout_rate, attention_dropout_rate, + input_layer, pos_enc_layer_type, normalize_before, + static_chunk_size, use_dynamic_chunk, global_cmvn, + use_dynamic_left_chunk, gradient_checkpointing) + activation = COSYVOICE_ACTIVATION_CLASSES[activation_type]() + self.encoders = torch.nn.ModuleList([ + TransformerEncoderLayer( + output_size, + COSYVOICE_ATTENTION_CLASSES[selfattention_layer_type](attention_heads, + output_size, + attention_dropout_rate, + key_bias), + PositionwiseFeedForward(output_size, linear_units, + dropout_rate, activation), + dropout_rate, normalize_before) for _ in range(num_blocks) + ]) + + +class ConformerEncoder(BaseEncoder): + """Conformer encoder module.""" + + def __init__( + self, + input_size: int, + output_size: int = 256, + attention_heads: int = 4, + linear_units: int = 2048, + num_blocks: int = 6, + dropout_rate: float = 0.1, + positional_dropout_rate: float = 0.1, + attention_dropout_rate: float = 0.0, + input_layer: str = "conv2d", + pos_enc_layer_type: str = "rel_pos", + normalize_before: bool = True, + static_chunk_size: int = 0, + use_dynamic_chunk: bool = False, + global_cmvn: torch.nn.Module = None, + use_dynamic_left_chunk: bool = False, + positionwise_conv_kernel_size: int = 1, + macaron_style: bool = True, + selfattention_layer_type: str = "rel_selfattn", + activation_type: str = "swish", + use_cnn_module: bool = True, + cnn_module_kernel: int = 15, + causal: bool = False, + cnn_module_norm: str = "batch_norm", + key_bias: bool = True, + gradient_checkpointing: bool = False, + ): + """Construct ConformerEncoder + + Args: + input_size to use_dynamic_chunk, see in BaseEncoder + positionwise_conv_kernel_size (int): Kernel size of positionwise + conv1d layer. + macaron_style (bool): Whether to use macaron style for + positionwise layer. + selfattention_layer_type (str): Encoder attention layer type, + the parameter has no effect now, it's just for configure + compatibility. + activation_type (str): Encoder activation function type. + use_cnn_module (bool): Whether to use convolution module. + cnn_module_kernel (int): Kernel size of convolution module. + causal (bool): whether to use causal convolution or not. + key_bias: whether use bias in attention.linear_k, False for whisper models. + """ + super().__init__(input_size, output_size, attention_heads, + linear_units, num_blocks, dropout_rate, + positional_dropout_rate, attention_dropout_rate, + input_layer, pos_enc_layer_type, normalize_before, + static_chunk_size, use_dynamic_chunk, global_cmvn, + use_dynamic_left_chunk, gradient_checkpointing) + activation = COSYVOICE_ACTIVATION_CLASSES[activation_type]() + + # self-attention module definition + encoder_selfattn_layer_args = ( + attention_heads, + output_size, + attention_dropout_rate, + key_bias, + ) + # feed-forward module definition + positionwise_layer_args = ( + output_size, + linear_units, + dropout_rate, + activation, + ) + # convolution module definition + convolution_layer_args = (output_size, cnn_module_kernel, activation, + cnn_module_norm, causal) + + self.encoders = torch.nn.ModuleList([ + ConformerEncoderLayer( + output_size, + COSYVOICE_ATTENTION_CLASSES[selfattention_layer_type]( + *encoder_selfattn_layer_args), + PositionwiseFeedForward(*positionwise_layer_args), + PositionwiseFeedForward( + *positionwise_layer_args) if macaron_style else None, + ConvolutionModule( + *convolution_layer_args) if use_cnn_module else None, + dropout_rate, + normalize_before, + ) for _ in range(num_blocks) + ]) diff --git a/cosyvoice/transformer/encoder_layer.py b/cosyvoice/transformer/encoder_layer.py new file mode 100644 index 0000000000000000000000000000000000000000..efbb12dd365770bebe8bca75276fe63be260a08f --- /dev/null +++ b/cosyvoice/transformer/encoder_layer.py @@ -0,0 +1,236 @@ +# Copyright (c) 2021 Mobvoi Inc (Binbin Zhang, Di Wu) +# 2022 Xingchen Song (sxc19@mails.tsinghua.edu.cn) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Encoder self-attention layer definition.""" + +from typing import Optional, Tuple + +import torch +from torch import nn + + +class TransformerEncoderLayer(nn.Module): + """Encoder layer module. + + Args: + size (int): Input dimension. + self_attn (torch.nn.Module): Self-attention module instance. + `MultiHeadedAttention` or `RelPositionMultiHeadedAttention` + instance can be used as the argument. + feed_forward (torch.nn.Module): Feed-forward module instance. + `PositionwiseFeedForward`, instance can be used as the argument. + dropout_rate (float): Dropout rate. + normalize_before (bool): + True: use layer_norm before each sub-block. + False: to use layer_norm after each sub-block. + """ + + def __init__( + self, + size: int, + self_attn: torch.nn.Module, + feed_forward: torch.nn.Module, + dropout_rate: float, + normalize_before: bool = True, + ): + """Construct an EncoderLayer object.""" + super().__init__() + self.self_attn = self_attn + self.feed_forward = feed_forward + self.norm1 = nn.LayerNorm(size, eps=1e-12) + self.norm2 = nn.LayerNorm(size, eps=1e-12) + self.dropout = nn.Dropout(dropout_rate) + self.size = size + self.normalize_before = normalize_before + + def forward( + self, + x: torch.Tensor, + mask: torch.Tensor, + pos_emb: torch.Tensor, + mask_pad: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool), + att_cache: torch.Tensor = torch.zeros((0, 0, 0, 0)), + cnn_cache: torch.Tensor = torch.zeros((0, 0, 0, 0)), + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]: + """Compute encoded features. + + Args: + x (torch.Tensor): (#batch, time, size) + mask (torch.Tensor): Mask tensor for the input (#batch, time,time), + (0, 0, 0) means fake mask. + pos_emb (torch.Tensor): just for interface compatibility + to ConformerEncoderLayer + mask_pad (torch.Tensor): does not used in transformer layer, + just for unified api with conformer. + att_cache (torch.Tensor): Cache tensor of the KEY & VALUE + (#batch=1, head, cache_t1, d_k * 2), head * d_k == size. + cnn_cache (torch.Tensor): Convolution cache in conformer layer + (#batch=1, size, cache_t2), not used here, it's for interface + compatibility to ConformerEncoderLayer. + Returns: + torch.Tensor: Output tensor (#batch, time, size). + torch.Tensor: Mask tensor (#batch, time, time). + torch.Tensor: att_cache tensor, + (#batch=1, head, cache_t1 + time, d_k * 2). + torch.Tensor: cnn_cahce tensor (#batch=1, size, cache_t2). + + """ + residual = x + if self.normalize_before: + x = self.norm1(x) + x_att, new_att_cache = self.self_attn(x, x, x, mask, pos_emb=pos_emb, cache=att_cache) + x = residual + self.dropout(x_att) + if not self.normalize_before: + x = self.norm1(x) + + residual = x + if self.normalize_before: + x = self.norm2(x) + x = residual + self.dropout(self.feed_forward(x)) + if not self.normalize_before: + x = self.norm2(x) + + fake_cnn_cache = torch.zeros((0, 0, 0), dtype=x.dtype, device=x.device) + return x, mask, new_att_cache, fake_cnn_cache + + +class ConformerEncoderLayer(nn.Module): + """Encoder layer module. + Args: + size (int): Input dimension. + self_attn (torch.nn.Module): Self-attention module instance. + `MultiHeadedAttention` or `RelPositionMultiHeadedAttention` + instance can be used as the argument. + feed_forward (torch.nn.Module): Feed-forward module instance. + `PositionwiseFeedForward` instance can be used as the argument. + feed_forward_macaron (torch.nn.Module): Additional feed-forward module + instance. + `PositionwiseFeedForward` instance can be used as the argument. + conv_module (torch.nn.Module): Convolution module instance. + `ConvlutionModule` instance can be used as the argument. + dropout_rate (float): Dropout rate. + normalize_before (bool): + True: use layer_norm before each sub-block. + False: use layer_norm after each sub-block. + """ + + def __init__( + self, + size: int, + self_attn: torch.nn.Module, + feed_forward: Optional[nn.Module] = None, + feed_forward_macaron: Optional[nn.Module] = None, + conv_module: Optional[nn.Module] = None, + dropout_rate: float = 0.1, + normalize_before: bool = True, + ): + """Construct an EncoderLayer object.""" + super().__init__() + self.self_attn = self_attn + self.feed_forward = feed_forward + self.feed_forward_macaron = feed_forward_macaron + self.conv_module = conv_module + self.norm_ff = nn.LayerNorm(size, eps=1e-12) # for the FNN module + self.norm_mha = nn.LayerNorm(size, eps=1e-12) # for the MHA module + if feed_forward_macaron is not None: + self.norm_ff_macaron = nn.LayerNorm(size, eps=1e-12) + self.ff_scale = 0.5 + else: + self.ff_scale = 1.0 + if self.conv_module is not None: + self.norm_conv = nn.LayerNorm(size, eps=1e-12) # for the CNN module + self.norm_final = nn.LayerNorm( + size, eps=1e-12) # for the final output of the block + self.dropout = nn.Dropout(dropout_rate) + self.size = size + self.normalize_before = normalize_before + + def forward( + self, + x: torch.Tensor, + mask: torch.Tensor, + pos_emb: torch.Tensor, + mask_pad: torch.Tensor = torch.ones((0, 0, 0), dtype=torch.bool), + att_cache: torch.Tensor = torch.zeros((0, 0, 0, 0)), + cnn_cache: torch.Tensor = torch.zeros((0, 0, 0, 0)), + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]: + """Compute encoded features. + + Args: + x (torch.Tensor): (#batch, time, size) + mask (torch.Tensor): Mask tensor for the input (#batch, time,time), + (0, 0, 0) means fake mask. + pos_emb (torch.Tensor): positional encoding, must not be None + for ConformerEncoderLayer. + mask_pad (torch.Tensor): batch padding mask used for conv module. + (#batch, 1,time), (0, 0, 0) means fake mask. + att_cache (torch.Tensor): Cache tensor of the KEY & VALUE + (#batch=1, head, cache_t1, d_k * 2), head * d_k == size. + cnn_cache (torch.Tensor): Convolution cache in conformer layer + (#batch=1, size, cache_t2) + Returns: + torch.Tensor: Output tensor (#batch, time, size). + torch.Tensor: Mask tensor (#batch, time, time). + torch.Tensor: att_cache tensor, + (#batch=1, head, cache_t1 + time, d_k * 2). + torch.Tensor: cnn_cahce tensor (#batch, size, cache_t2). + """ + + # whether to use macaron style + if self.feed_forward_macaron is not None: + residual = x + if self.normalize_before: + x = self.norm_ff_macaron(x) + x = residual + self.ff_scale * self.dropout( + self.feed_forward_macaron(x)) + if not self.normalize_before: + x = self.norm_ff_macaron(x) + + # multi-headed self-attention module + residual = x + if self.normalize_before: + x = self.norm_mha(x) + x_att, new_att_cache = self.self_attn(x, x, x, mask, pos_emb, + att_cache) + x = residual + self.dropout(x_att) + if not self.normalize_before: + x = self.norm_mha(x) + + # convolution module + # Fake new cnn cache here, and then change it in conv_module + new_cnn_cache = torch.zeros((0, 0, 0), dtype=x.dtype, device=x.device) + if self.conv_module is not None: + residual = x + if self.normalize_before: + x = self.norm_conv(x) + x, new_cnn_cache = self.conv_module(x, mask_pad, cnn_cache) + x = residual + self.dropout(x) + + if not self.normalize_before: + x = self.norm_conv(x) + + # feed forward module + residual = x + if self.normalize_before: + x = self.norm_ff(x) + + x = residual + self.ff_scale * self.dropout(self.feed_forward(x)) + if not self.normalize_before: + x = self.norm_ff(x) + + if self.conv_module is not None: + x = self.norm_final(x) + + return x, mask, new_att_cache, new_cnn_cache diff --git a/cosyvoice/transformer/label_smoothing_loss.py b/cosyvoice/transformer/label_smoothing_loss.py new file mode 100644 index 0000000000000000000000000000000000000000..feacabf09609ee6eb047c89ce18d372256c72c71 --- /dev/null +++ b/cosyvoice/transformer/label_smoothing_loss.py @@ -0,0 +1,96 @@ +# Copyright (c) 2019 Shigeki Karita +# 2020 Mobvoi Inc (Binbin Zhang) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Label smoothing module.""" + +import torch +from torch import nn + + +class LabelSmoothingLoss(nn.Module): + """Label-smoothing loss. + + In a standard CE loss, the label's data distribution is: + [0,1,2] -> + [ + [1.0, 0.0, 0.0], + [0.0, 1.0, 0.0], + [0.0, 0.0, 1.0], + ] + + In the smoothing version CE Loss,some probabilities + are taken from the true label prob (1.0) and are divided + among other labels. + + e.g. + smoothing=0.1 + [0,1,2] -> + [ + [0.9, 0.05, 0.05], + [0.05, 0.9, 0.05], + [0.05, 0.05, 0.9], + ] + + Args: + size (int): the number of class + padding_idx (int): padding class id which will be ignored for loss + smoothing (float): smoothing rate (0.0 means the conventional CE) + normalize_length (bool): + normalize loss by sequence length if True + normalize loss by batch size if False + """ + + def __init__(self, + size: int, + padding_idx: int, + smoothing: float, + normalize_length: bool = False): + """Construct an LabelSmoothingLoss object.""" + super(LabelSmoothingLoss, self).__init__() + self.criterion = nn.KLDivLoss(reduction="none") + self.padding_idx = padding_idx + self.confidence = 1.0 - smoothing + self.smoothing = smoothing + self.size = size + self.normalize_length = normalize_length + + def forward(self, x: torch.Tensor, target: torch.Tensor) -> torch.Tensor: + """Compute loss between x and target. + + The model outputs and data labels tensors are flatten to + (batch*seqlen, class) shape and a mask is applied to the + padding part which should not be calculated for loss. + + Args: + x (torch.Tensor): prediction (batch, seqlen, class) + target (torch.Tensor): + target signal masked with self.padding_id (batch, seqlen) + Returns: + loss (torch.Tensor) : The KL loss, scalar float value + """ + assert x.size(2) == self.size + batch_size = x.size(0) + x = x.view(-1, self.size) + target = target.view(-1) + # use zeros_like instead of torch.no_grad() for true_dist, + # since no_grad() can not be exported by JIT + true_dist = torch.zeros_like(x) + true_dist.fill_(self.smoothing / (self.size - 1)) + ignore = target == self.padding_idx # (B,) + total = len(target) - ignore.sum().item() + target = target.masked_fill(ignore, 0) # avoid -1 index + true_dist.scatter_(1, target.unsqueeze(1), self.confidence) + kl = self.criterion(torch.log_softmax(x, dim=1), true_dist) + denom = total if self.normalize_length else batch_size + return kl.masked_fill(ignore.unsqueeze(1), 0).sum() / denom diff --git a/cosyvoice/transformer/positionwise_feed_forward.py b/cosyvoice/transformer/positionwise_feed_forward.py new file mode 100644 index 0000000000000000000000000000000000000000..b7a2cf6e7315e3a5ed2794423daff0a59cc5b208 --- /dev/null +++ b/cosyvoice/transformer/positionwise_feed_forward.py @@ -0,0 +1,115 @@ +# Copyright (c) 2019 Shigeki Karita +# 2020 Mobvoi Inc (Binbin Zhang) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Positionwise feed forward layer definition.""" + +import torch + + +class PositionwiseFeedForward(torch.nn.Module): + """Positionwise feed forward layer. + + FeedForward are appied on each position of the sequence. + The output dim is same with the input dim. + + Args: + idim (int): Input dimenstion. + hidden_units (int): The number of hidden units. + dropout_rate (float): Dropout rate. + activation (torch.nn.Module): Activation function + """ + + def __init__( + self, + idim: int, + hidden_units: int, + dropout_rate: float, + activation: torch.nn.Module = torch.nn.ReLU(), + ): + """Construct a PositionwiseFeedForward object.""" + super(PositionwiseFeedForward, self).__init__() + self.w_1 = torch.nn.Linear(idim, hidden_units) + self.activation = activation + self.dropout = torch.nn.Dropout(dropout_rate) + self.w_2 = torch.nn.Linear(hidden_units, idim) + + def forward(self, xs: torch.Tensor) -> torch.Tensor: + """Forward function. + + Args: + xs: input tensor (B, L, D) + Returns: + output tensor, (B, L, D) + """ + return self.w_2(self.dropout(self.activation(self.w_1(xs)))) + + +class MoEFFNLayer(torch.nn.Module): + """ + Mixture of expert with Positionwise feed forward layer + See also figure 1 in https://arxiv.org/pdf/2305.15663.pdf + The output dim is same with the input dim. + + Modified from https://github.com/Lightning-AI/lit-gpt/pull/823 + https://github.com/mistralai/mistral-src/blob/b46d6/moe_one_file_ref.py#L203-L219 + Args: + n_expert: number of expert. + n_expert_per_token: The actual number of experts used for each frame + idim (int): Input dimenstion. + hidden_units (int): The number of hidden units. + dropout_rate (float): Dropout rate. + activation (torch.nn.Module): Activation function + """ + + def __init__( + self, + n_expert: int, + n_expert_per_token: int, + idim: int, + hidden_units: int, + dropout_rate: float, + activation: torch.nn.Module = torch.nn.ReLU(), + ): + super(MoEFFNLayer, self).__init__() + self.gate = torch.nn.Linear(idim, n_expert, bias=False) + self.experts = torch.nn.ModuleList( + PositionwiseFeedForward(idim, hidden_units, dropout_rate, + activation) for _ in range(n_expert)) + self.n_expert_per_token = n_expert_per_token + + def forward(self, xs: torch.Tensor) -> torch.Tensor: + """Foward function. + Args: + xs: input tensor (B, L, D) + Returns: + output tensor, (B, L, D) + + """ + B, L, D = xs.size( + ) # batch size, sequence length, embedding dimension (idim) + xs = xs.view(-1, D) # (B*L, D) + router = self.gate(xs) # (B*L, n_expert) + logits, indices = torch.topk( + router, self.n_expert_per_token + ) # probs:(B*L, n_expert), indices: (B*L, n_expert) + weights = torch.nn.functional.softmax( + logits, dim=1, + dtype=torch.float).to(dtype=xs.dtype) # (B*L, n_expert_per_token) + output = torch.zeros_like(xs) # (B*L, D) + for i, expert in enumerate(self.experts): + mask = indices == i + batch_idx, ith_expert = torch.where(mask) + output[batch_idx] += weights[batch_idx, ith_expert, None] * expert( + xs[batch_idx]) + return output.view(B, L, D) diff --git a/cosyvoice/transformer/subsampling.py b/cosyvoice/transformer/subsampling.py new file mode 100644 index 0000000000000000000000000000000000000000..e17c2e324e3afb24e1b619effe29cef07c9c5b3a --- /dev/null +++ b/cosyvoice/transformer/subsampling.py @@ -0,0 +1,383 @@ +# Copyright (c) 2021 Mobvoi Inc (Binbin Zhang, Di Wu) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Subsampling layer definition.""" + +from typing import Tuple, Union + +import torch + + +class BaseSubsampling(torch.nn.Module): + + def __init__(self): + super().__init__() + self.right_context = 0 + self.subsampling_rate = 1 + + def position_encoding(self, offset: Union[int, torch.Tensor], + size: int) -> torch.Tensor: + return self.pos_enc.position_encoding(offset, size) + + +class EmbedinigNoSubsampling(BaseSubsampling): + """Embedding input without subsampling + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + super().__init__() + self.embed = torch.nn.Embedding(idim, odim) + self.pos_enc = pos_enc_class + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Input x. + + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: linear input tensor (#batch, time', odim), + where time' = time . + torch.Tensor: linear input mask (#batch, 1, time'), + where time' = time . + + """ + x = self.embed(x) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask + + +class LinearNoSubsampling(BaseSubsampling): + """Linear transform the input without subsampling + + Args: + idim (int): Input dimension. + odim (int): Output dimension. + dropout_rate (float): Dropout rate. + + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + """Construct an linear object.""" + super().__init__() + self.out = torch.nn.Sequential( + torch.nn.Linear(idim, odim), + torch.nn.LayerNorm(odim, eps=1e-5), + torch.nn.Dropout(dropout_rate), + ) + self.pos_enc = pos_enc_class + self.right_context = 0 + self.subsampling_rate = 1 + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Input x. + + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: linear input tensor (#batch, time', odim), + where time' = time . + torch.Tensor: linear input mask (#batch, 1, time'), + where time' = time . + + """ + x = self.out(x) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask + + +class Conv1dSubsampling2(BaseSubsampling): + """Convolutional 1D subsampling (to 1/2 length). + It is designed for Whisper, ref: + https://github.com/openai/whisper/blob/main/whisper/model.py + + Args: + idim (int): Input dimension. + odim (int): Output dimension. + dropout_rate (float): Dropout rate. + + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + """Construct an Conv1dSubsampling2 object.""" + super().__init__() + self.conv = torch.nn.Sequential( + torch.nn.Conv1d(idim, odim, kernel_size=3, padding=1), + torch.nn.GELU(), + torch.nn.Conv1d(odim, odim, kernel_size=3, stride=2, padding=1), + torch.nn.GELU(), + ) + self.pos_enc = pos_enc_class + # The right context for every conv layer is computed by: + # (kernel_size - 1) * frame_rate_of_this_layer + self.subsampling_rate = 2 + # 4 = (3 - 1) * 1 + (3 - 1) * 1 + self.right_context = 4 + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Subsample x. + + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: Subsampled tensor (#batch, time', odim), + where time' = time // 2. + torch.Tensor: Subsampled mask (#batch, 1, time'), + where time' = time // 2. + torch.Tensor: positional encoding + + """ + time = x.size(1) + x = x.transpose(1, 2) # (b, f, t) + x = self.conv(x) + x = x.transpose(1, 2) # (b, t, f) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask[:, :, (time + 1) % 2::2] + + +class Conv2dSubsampling4(BaseSubsampling): + """Convolutional 2D subsampling (to 1/4 length). + + Args: + idim (int): Input dimension. + odim (int): Output dimension. + dropout_rate (float): Dropout rate. + + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + """Construct an Conv2dSubsampling4 object.""" + super().__init__() + self.conv = torch.nn.Sequential( + torch.nn.Conv2d(1, odim, 3, 2), + torch.nn.ReLU(), + torch.nn.Conv2d(odim, odim, 3, 2), + torch.nn.ReLU(), + ) + self.out = torch.nn.Sequential( + torch.nn.Linear(odim * (((idim - 1) // 2 - 1) // 2), odim)) + self.pos_enc = pos_enc_class + # The right context for every conv layer is computed by: + # (kernel_size - 1) * frame_rate_of_this_layer + self.subsampling_rate = 4 + # 6 = (3 - 1) * 1 + (3 - 1) * 2 + self.right_context = 6 + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Subsample x. + + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: Subsampled tensor (#batch, time', odim), + where time' = time // 4. + torch.Tensor: Subsampled mask (#batch, 1, time'), + where time' = time // 4. + torch.Tensor: positional encoding + + """ + x = x.unsqueeze(1) # (b, c=1, t, f) + x = self.conv(x) + b, c, t, f = x.size() + x = self.out(x.transpose(1, 2).contiguous().view(b, t, c * f)) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask[:, :, 2::2][:, :, 2::2] + + +class Conv2dSubsampling6(BaseSubsampling): + """Convolutional 2D subsampling (to 1/6 length). + Args: + idim (int): Input dimension. + odim (int): Output dimension. + dropout_rate (float): Dropout rate. + pos_enc (torch.nn.Module): Custom position encoding layer. + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + """Construct an Conv2dSubsampling6 object.""" + super().__init__() + self.conv = torch.nn.Sequential( + torch.nn.Conv2d(1, odim, 3, 2), + torch.nn.ReLU(), + torch.nn.Conv2d(odim, odim, 5, 3), + torch.nn.ReLU(), + ) + self.linear = torch.nn.Linear(odim * (((idim - 1) // 2 - 2) // 3), + odim) + self.pos_enc = pos_enc_class + # 10 = (3 - 1) * 1 + (5 - 1) * 2 + self.subsampling_rate = 6 + self.right_context = 10 + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Subsample x. + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: Subsampled tensor (#batch, time', odim), + where time' = time // 6. + torch.Tensor: Subsampled mask (#batch, 1, time'), + where time' = time // 6. + torch.Tensor: positional encoding + """ + x = x.unsqueeze(1) # (b, c, t, f) + x = self.conv(x) + b, c, t, f = x.size() + x = self.linear(x.transpose(1, 2).contiguous().view(b, t, c * f)) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask[:, :, 2::2][:, :, 4::3] + + +class Conv2dSubsampling8(BaseSubsampling): + """Convolutional 2D subsampling (to 1/8 length). + + Args: + idim (int): Input dimension. + odim (int): Output dimension. + dropout_rate (float): Dropout rate. + + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + """Construct an Conv2dSubsampling8 object.""" + super().__init__() + self.conv = torch.nn.Sequential( + torch.nn.Conv2d(1, odim, 3, 2), + torch.nn.ReLU(), + torch.nn.Conv2d(odim, odim, 3, 2), + torch.nn.ReLU(), + torch.nn.Conv2d(odim, odim, 3, 2), + torch.nn.ReLU(), + ) + self.linear = torch.nn.Linear( + odim * ((((idim - 1) // 2 - 1) // 2 - 1) // 2), odim) + self.pos_enc = pos_enc_class + self.subsampling_rate = 8 + # 14 = (3 - 1) * 1 + (3 - 1) * 2 + (3 - 1) * 4 + self.right_context = 14 + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Subsample x. + + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: Subsampled tensor (#batch, time', odim), + where time' = time // 8. + torch.Tensor: Subsampled mask (#batch, 1, time'), + where time' = time // 8. + torch.Tensor: positional encoding + """ + x = x.unsqueeze(1) # (b, c, t, f) + x = self.conv(x) + b, c, t, f = x.size() + x = self.linear(x.transpose(1, 2).contiguous().view(b, t, c * f)) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask[:, :, 2::2][:, :, 2::2][:, :, 2::2] + + +class LegacyLinearNoSubsampling(BaseSubsampling): + """Linear transform the input without subsampling + + Args: + idim (int): Input dimension. + odim (int): Output dimension. + dropout_rate (float): Dropout rate. + + """ + + def __init__(self, idim: int, odim: int, dropout_rate: float, + pos_enc_class: torch.nn.Module): + """Construct an linear object.""" + super().__init__() + self.out = torch.nn.Sequential( + torch.nn.Linear(idim, odim), + torch.nn.LayerNorm(odim, eps=1e-5), + torch.nn.Dropout(dropout_rate), + torch.nn.ReLU(), + ) + self.pos_enc = pos_enc_class + self.right_context = 0 + self.subsampling_rate = 1 + + def forward( + self, + x: torch.Tensor, + x_mask: torch.Tensor, + offset: Union[int, torch.Tensor] = 0 + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """Input x. + + Args: + x (torch.Tensor): Input tensor (#batch, time, idim). + x_mask (torch.Tensor): Input mask (#batch, 1, time). + + Returns: + torch.Tensor: linear input tensor (#batch, time', odim), + where time' = time . + torch.Tensor: linear input mask (#batch, 1, time'), + where time' = time . + + """ + x = self.out(x) + x, pos_emb = self.pos_enc(x, offset) + return x, pos_emb, x_mask diff --git a/cosyvoice/transformer/upsample_encoder.py b/cosyvoice/transformer/upsample_encoder.py new file mode 100644 index 0000000000000000000000000000000000000000..7c64726704ebd09a55e3266afc4b43d546cd8bcf --- /dev/null +++ b/cosyvoice/transformer/upsample_encoder.py @@ -0,0 +1,322 @@ +# Copyright (c) 2021 Mobvoi Inc (Binbin Zhang, Di Wu) +# 2022 Xingchen Song (sxc19@mails.tsinghua.edu.cn) +# 2024 Alibaba Inc (Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Encoder definition.""" +from typing import Tuple + +import torch +from torch import nn +import torch.utils.checkpoint as ckpt +from torch.nn import functional as F + +from cosyvoice.transformer.convolution import ConvolutionModule +from cosyvoice.transformer.encoder_layer import ConformerEncoderLayer +from cosyvoice.transformer.positionwise_feed_forward import PositionwiseFeedForward +from cosyvoice.utils.class_utils import ( + COSYVOICE_EMB_CLASSES, + COSYVOICE_SUBSAMPLE_CLASSES, + COSYVOICE_ATTENTION_CLASSES, + COSYVOICE_ACTIVATION_CLASSES, +) +from cosyvoice.utils.mask import make_pad_mask +from cosyvoice.utils.mask import add_optional_chunk_mask + + +class Upsample1D(nn.Module): + """A 1D upsampling layer with an optional convolution. + + Parameters: + channels (`int`): + number of channels in the inputs and outputs. + use_conv (`bool`, default `False`): + option to use a convolution. + use_conv_transpose (`bool`, default `False`): + option to use a convolution transpose. + out_channels (`int`, optional): + number of output channels. Defaults to `channels`. + """ + + def __init__(self, channels: int, out_channels: int, stride: int=2): + super().__init__() + self.channels = channels + self.out_channels = out_channels + self.stride = stride + # In this mode, first repeat interpolate, than conv with stride=1 + self.conv = nn.Conv1d( + self.channels, self.out_channels, stride*2+1, stride=1, + padding=0, + ) + + def forward(self, inputs: torch.Tensor, input_lengths: torch.Tensor): + outputs = F.interpolate(inputs, scale_factor=float(self.stride), mode="nearest") + outputs = F.pad(outputs, (self.stride * 2, 0), value=0.0) + outputs = self.conv(outputs) + return outputs, input_lengths * self.stride + + +class PreLookaheadLayer(nn.Module): + def __init__(self, channels: int, pre_lookahead_len: int = 1): + super().__init__() + self.channels = channels + self.pre_lookahead_len = pre_lookahead_len + self.conv1 = nn.Conv1d( + channels, channels, + kernel_size=pre_lookahead_len+1, + stride=1, padding=0, + ) + self.conv2 = nn.Conv1d( + channels, channels, + kernel_size=3, stride=1, padding=0, + ) + + def forward(self, inputs: torch.Tensor) -> torch.Tensor: + """ + inputs: (batch_size, seq_len, channels) + """ + outputs = inputs.transpose(1, 2).contiguous() + # look ahead + outputs = F.pad(outputs, (0, self.pre_lookahead_len), mode='constant', value=0.0) + outputs = F.leaky_relu(self.conv1(outputs)) + # outputs + outputs = F.pad(outputs, (2, 0), mode='constant', value=0.0) + outputs = self.conv2(outputs) + outputs = outputs.transpose(1, 2).contiguous() + + # residual connection + outputs = outputs + inputs + return outputs + + +class UpsampleConformerEncoder(torch.nn.Module): + + def __init__( + self, + input_size: int, + output_size: int = 256, + attention_heads: int = 4, + linear_units: int = 2048, + num_blocks: int = 6, + dropout_rate: float = 0.1, + positional_dropout_rate: float = 0.1, + attention_dropout_rate: float = 0.0, + input_layer: str = "conv2d", + pos_enc_layer_type: str = "rel_pos", + normalize_before: bool = True, + static_chunk_size: int = 0, + use_dynamic_chunk: bool = False, + global_cmvn: torch.nn.Module = None, + use_dynamic_left_chunk: bool = False, + positionwise_conv_kernel_size: int = 1, + macaron_style: bool = True, + selfattention_layer_type: str = "rel_selfattn", + activation_type: str = "swish", + use_cnn_module: bool = True, + cnn_module_kernel: int = 15, + causal: bool = False, + cnn_module_norm: str = "batch_norm", + key_bias: bool = True, + gradient_checkpointing: bool = False, + ): + """ + Args: + input_size (int): input dim + output_size (int): dimension of attention + attention_heads (int): the number of heads of multi head attention + linear_units (int): the hidden units number of position-wise feed + forward + num_blocks (int): the number of decoder blocks + dropout_rate (float): dropout rate + attention_dropout_rate (float): dropout rate in attention + positional_dropout_rate (float): dropout rate after adding + positional encoding + input_layer (str): input layer type. + optional [linear, conv2d, conv2d6, conv2d8] + pos_enc_layer_type (str): Encoder positional encoding layer type. + opitonal [abs_pos, scaled_abs_pos, rel_pos, no_pos] + normalize_before (bool): + True: use layer_norm before each sub-block of a layer. + False: use layer_norm after each sub-block of a layer. + static_chunk_size (int): chunk size for static chunk training and + decoding + use_dynamic_chunk (bool): whether use dynamic chunk size for + training or not, You can only use fixed chunk(chunk_size > 0) + or dyanmic chunk size(use_dynamic_chunk = True) + global_cmvn (Optional[torch.nn.Module]): Optional GlobalCMVN module + use_dynamic_left_chunk (bool): whether use dynamic left chunk in + dynamic chunk training + key_bias: whether use bias in attention.linear_k, False for whisper models. + gradient_checkpointing: rerunning a forward-pass segment for each + checkpointed segment during backward. + """ + super().__init__() + self._output_size = output_size + + self.global_cmvn = global_cmvn + self.embed = COSYVOICE_SUBSAMPLE_CLASSES[input_layer]( + input_size, + output_size, + dropout_rate, + COSYVOICE_EMB_CLASSES[pos_enc_layer_type](output_size, + positional_dropout_rate), + ) + + self.normalize_before = normalize_before + self.after_norm = torch.nn.LayerNorm(output_size, eps=1e-5) + self.static_chunk_size = static_chunk_size + self.use_dynamic_chunk = use_dynamic_chunk + self.use_dynamic_left_chunk = use_dynamic_left_chunk + self.gradient_checkpointing = gradient_checkpointing + activation = COSYVOICE_ACTIVATION_CLASSES[activation_type]() + # self-attention module definition + encoder_selfattn_layer_args = ( + attention_heads, + output_size, + attention_dropout_rate, + key_bias, + ) + # feed-forward module definition + positionwise_layer_args = ( + output_size, + linear_units, + dropout_rate, + activation, + ) + # convolution module definition + convolution_layer_args = (output_size, cnn_module_kernel, activation, + cnn_module_norm, causal) + self.pre_lookahead_layer = PreLookaheadLayer(channels=512, pre_lookahead_len=3) + self.encoders = torch.nn.ModuleList([ + ConformerEncoderLayer( + output_size, + COSYVOICE_ATTENTION_CLASSES[selfattention_layer_type]( + *encoder_selfattn_layer_args), + PositionwiseFeedForward(*positionwise_layer_args), + PositionwiseFeedForward( + *positionwise_layer_args) if macaron_style else None, + ConvolutionModule( + *convolution_layer_args) if use_cnn_module else None, + dropout_rate, + normalize_before, + ) for _ in range(num_blocks) + ]) + self.up_layer = Upsample1D(channels=512, out_channels=512, stride=2) + self.up_embed = COSYVOICE_SUBSAMPLE_CLASSES[input_layer]( + input_size, + output_size, + dropout_rate, + COSYVOICE_EMB_CLASSES[pos_enc_layer_type](output_size, + positional_dropout_rate), + ) + self.up_encoders = torch.nn.ModuleList([ + ConformerEncoderLayer( + output_size, + COSYVOICE_ATTENTION_CLASSES[selfattention_layer_type]( + *encoder_selfattn_layer_args), + PositionwiseFeedForward(*positionwise_layer_args), + PositionwiseFeedForward( + *positionwise_layer_args) if macaron_style else None, + ConvolutionModule( + *convolution_layer_args) if use_cnn_module else None, + dropout_rate, + normalize_before, + ) for _ in range(4) + ]) + + def output_size(self) -> int: + return self._output_size + + def forward( + self, + xs: torch.Tensor, + xs_lens: torch.Tensor, + decoding_chunk_size: int = 0, + num_decoding_left_chunks: int = -1, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """Embed positions in tensor. + + Args: + xs: padded input tensor (B, T, D) + xs_lens: input length (B) + decoding_chunk_size: decoding chunk size for dynamic chunk + 0: default for training, use random dynamic chunk. + <0: for decoding, use full chunk. + >0: for decoding, use fixed chunk size as set. + num_decoding_left_chunks: number of left chunks, this is for decoding, + the chunk size is decoding_chunk_size. + >=0: use num_decoding_left_chunks + <0: use all left chunks + Returns: + encoder output tensor xs, and subsampled masks + xs: padded output tensor (B, T' ~= T/subsample_rate, D) + masks: torch.Tensor batch padding mask after subsample + (B, 1, T' ~= T/subsample_rate) + NOTE(xcsong): + We pass the `__call__` method of the modules instead of `forward` to the + checkpointing API because `__call__` attaches all the hooks of the module. + https://discuss.pytorch.org/t/any-different-between-model-input-and-model-forward-input/3690/2 + """ + T = xs.size(1) + masks = ~make_pad_mask(xs_lens, T).unsqueeze(1) # (B, 1, T) + if self.global_cmvn is not None: + xs = self.global_cmvn(xs) + xs, pos_emb, masks = self.embed(xs, masks) + mask_pad = masks # (B, 1, T/subsample_rate) + chunk_masks = add_optional_chunk_mask(xs, masks, + self.use_dynamic_chunk, + self.use_dynamic_left_chunk, + decoding_chunk_size, + self.static_chunk_size, + num_decoding_left_chunks) + # lookahead + conformer encoder + xs = self.pre_lookahead_layer(xs) + xs = self.forward_layers(xs, chunk_masks, pos_emb, mask_pad) + + # upsample + conformer encoder + xs = xs.transpose(1, 2).contiguous() + xs, xs_lens = self.up_layer(xs, xs_lens) + xs = xs.transpose(1, 2).contiguous() + T = xs.size(1) + masks = ~make_pad_mask(xs_lens, T).unsqueeze(1) # (B, 1, T) + xs, pos_emb, masks = self.up_embed(xs, masks) + mask_pad = masks # (B, 1, T/subsample_rate) + chunk_masks = add_optional_chunk_mask(xs, masks, + self.use_dynamic_chunk, + self.use_dynamic_left_chunk, + decoding_chunk_size, + self.static_chunk_size * self.up_layer.stride, + num_decoding_left_chunks) + xs = self.forward_up_layers(xs, chunk_masks, pos_emb, mask_pad) + + if self.normalize_before: + xs = self.after_norm(xs) + # Here we assume the mask is not changed in encoder layers, so just + # return the masks before encoder layers, and the masks will be used + # for cross attention with decoder later + return xs, masks + + def forward_layers(self, xs: torch.Tensor, chunk_masks: torch.Tensor, + pos_emb: torch.Tensor, + mask_pad: torch.Tensor) -> torch.Tensor: + for layer in self.encoders: + xs, chunk_masks, _, _ = layer(xs, chunk_masks, pos_emb, mask_pad) + return xs + + def forward_up_layers(self, xs: torch.Tensor, chunk_masks: torch.Tensor, + pos_emb: torch.Tensor, + mask_pad: torch.Tensor) -> torch.Tensor: + for layer in self.up_encoders: + xs, chunk_masks, _, _ = layer(xs, chunk_masks, pos_emb, mask_pad) + return xs diff --git a/cosyvoice/utils/__init__.py b/cosyvoice/utils/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/cosyvoice/utils/class_utils.py b/cosyvoice/utils/class_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..b8cc4714586161487c7019153b960bfb2a029e36 --- /dev/null +++ b/cosyvoice/utils/class_utils.py @@ -0,0 +1,70 @@ +# Copyright [2023-11-28] +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import torch + +from cosyvoice.transformer.activation import Swish +from cosyvoice.transformer.subsampling import ( + LinearNoSubsampling, + EmbedinigNoSubsampling, + Conv1dSubsampling2, + Conv2dSubsampling4, + Conv2dSubsampling6, + Conv2dSubsampling8, +) +from cosyvoice.transformer.embedding import (PositionalEncoding, + RelPositionalEncoding, + WhisperPositionalEncoding, + LearnablePositionalEncoding, + NoPositionalEncoding) +from cosyvoice.transformer.attention import (MultiHeadedAttention, + RelPositionMultiHeadedAttention) +from cosyvoice.transformer.embedding import EspnetRelPositionalEncoding +from cosyvoice.transformer.subsampling import LegacyLinearNoSubsampling + + +COSYVOICE_ACTIVATION_CLASSES = { + "hardtanh": torch.nn.Hardtanh, + "tanh": torch.nn.Tanh, + "relu": torch.nn.ReLU, + "selu": torch.nn.SELU, + "swish": getattr(torch.nn, "SiLU", Swish), + "gelu": torch.nn.GELU, +} + +COSYVOICE_SUBSAMPLE_CLASSES = { + "linear": LinearNoSubsampling, + "linear_legacy": LegacyLinearNoSubsampling, + "embed": EmbedinigNoSubsampling, + "conv1d2": Conv1dSubsampling2, + "conv2d": Conv2dSubsampling4, + "conv2d6": Conv2dSubsampling6, + "conv2d8": Conv2dSubsampling8, + 'paraformer_dummy': torch.nn.Identity +} + +COSYVOICE_EMB_CLASSES = { + "embed": PositionalEncoding, + "abs_pos": PositionalEncoding, + "rel_pos": RelPositionalEncoding, + "rel_pos_espnet": EspnetRelPositionalEncoding, + "no_pos": NoPositionalEncoding, + "abs_pos_whisper": WhisperPositionalEncoding, + "embed_learnable_pe": LearnablePositionalEncoding, +} + +COSYVOICE_ATTENTION_CLASSES = { + "selfattn": MultiHeadedAttention, + "rel_selfattn": RelPositionMultiHeadedAttention, +} diff --git a/cosyvoice/utils/common.py b/cosyvoice/utils/common.py new file mode 100644 index 0000000000000000000000000000000000000000..2e12ad2ed4675e3070fa9d1142d08715bcb57497 --- /dev/null +++ b/cosyvoice/utils/common.py @@ -0,0 +1,166 @@ +# Copyright (c) 2020 Mobvoi Inc (Binbin Zhang) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +"""Unility functions for Transformer.""" + +import random +from typing import List + +import numpy as np +import torch + +IGNORE_ID = -1 + + +def pad_list(xs: List[torch.Tensor], pad_value: int): + """Perform padding for the list of tensors. + + Args: + xs (List): List of Tensors [(T_1, `*`), (T_2, `*`), ..., (T_B, `*`)]. + pad_value (float): Value for padding. + + Returns: + Tensor: Padded tensor (B, Tmax, `*`). + + Examples: + >>> x = [torch.ones(4), torch.ones(2), torch.ones(1)] + >>> x + [tensor([1., 1., 1., 1.]), tensor([1., 1.]), tensor([1.])] + >>> pad_list(x, 0) + tensor([[1., 1., 1., 1.], + [1., 1., 0., 0.], + [1., 0., 0., 0.]]) + + """ + max_len = max([len(item) for item in xs]) + batchs = len(xs) + ndim = xs[0].ndim + if ndim == 1: + pad_res = torch.zeros(batchs, + max_len, + dtype=xs[0].dtype, + device=xs[0].device) + elif ndim == 2: + pad_res = torch.zeros(batchs, + max_len, + xs[0].shape[1], + dtype=xs[0].dtype, + device=xs[0].device) + elif ndim == 3: + pad_res = torch.zeros(batchs, + max_len, + xs[0].shape[1], + xs[0].shape[2], + dtype=xs[0].dtype, + device=xs[0].device) + else: + raise ValueError(f"Unsupported ndim: {ndim}") + pad_res.fill_(pad_value) + for i in range(batchs): + pad_res[i, :len(xs[i])] = xs[i] + return pad_res + + +def th_accuracy(pad_outputs: torch.Tensor, pad_targets: torch.Tensor, + ignore_label: int) -> torch.Tensor: + """Calculate accuracy. + + Args: + pad_outputs (Tensor): Prediction tensors (B * Lmax, D). + pad_targets (LongTensor): Target label tensors (B, Lmax). + ignore_label (int): Ignore label id. + + Returns: + torch.Tensor: Accuracy value (0.0 - 1.0). + + """ + pad_pred = pad_outputs.view(pad_targets.size(0), pad_targets.size(1), + pad_outputs.size(1)).argmax(2) + mask = pad_targets != ignore_label + numerator = torch.sum( + pad_pred.masked_select(mask) == pad_targets.masked_select(mask)) + denominator = torch.sum(mask) + return (numerator / denominator).detach() + + +def get_padding(kernel_size, dilation=1): + return int((kernel_size * dilation - dilation) / 2) + + +def init_weights(m, mean=0.0, std=0.01): + classname = m.__class__.__name__ + if classname.find("Conv") != -1: + m.weight.data.normal_(mean, std) + + +# Repetition Aware Sampling in VALL-E 2 +def ras_sampling(weighted_scores, decoded_tokens, sampling, top_p=0.8, top_k=25, win_size=10, tau_r=0.1): + top_ids = nucleus_sampling(weighted_scores, top_p=top_p, top_k=top_k) + rep_num = (torch.tensor(decoded_tokens[-win_size:]).to(weighted_scores.device) == top_ids).sum().item() + if rep_num >= win_size * tau_r: + top_ids = random_sampling(weighted_scores, decoded_tokens, sampling) + return top_ids + + +def nucleus_sampling(weighted_scores, top_p=0.8, top_k=25): + prob, indices = [], [] + cum_prob = 0.0 + sorted_value, sorted_idx = weighted_scores.softmax(dim=0).sort(descending=True, stable=True) + for i in range(len(sorted_idx)): + # sampling both top-p and numbers. + if cum_prob < top_p and len(prob) < top_k: + cum_prob += sorted_value[i] + prob.append(sorted_value[i]) + indices.append(sorted_idx[i]) + else: + break + prob = torch.tensor(prob).to(weighted_scores) + indices = torch.tensor(indices, dtype=torch.long).to(weighted_scores.device) + top_ids = indices[prob.multinomial(1, replacement=True)] + return top_ids + + +def random_sampling(weighted_scores, decoded_tokens, sampling): + top_ids = weighted_scores.softmax(dim=0).multinomial(1, replacement=True) + return top_ids + + +def fade_in_out(fade_in_mel, fade_out_mel, window): + device = fade_in_mel.device + fade_in_mel, fade_out_mel = fade_in_mel.cpu(), fade_out_mel.cpu() + mel_overlap_len = int(window.shape[0] / 2) + if fade_in_mel.device == torch.device('cpu'): + fade_in_mel = fade_in_mel.clone() + fade_in_mel[..., :mel_overlap_len] = fade_in_mel[..., :mel_overlap_len] * window[:mel_overlap_len] + \ + fade_out_mel[..., -mel_overlap_len:] * window[mel_overlap_len:] + return fade_in_mel.to(device) + + +def set_all_random_seed(seed): + random.seed(seed) + np.random.seed(seed) + torch.manual_seed(seed) + torch.cuda.manual_seed_all(seed) + + +def mask_to_bias(mask: torch.Tensor, dtype: torch.dtype) -> torch.Tensor: + assert mask.dtype == torch.bool + assert dtype in [torch.float32, torch.bfloat16, torch.float16] + mask = mask.to(dtype) + # attention mask bias + # NOTE(Mddct): torch.finfo jit issues + # chunk_masks = (1.0 - chunk_masks) * torch.finfo(dtype).min + mask = (1.0 - mask) * torch.finfo(dtype).min + return mask \ No newline at end of file diff --git a/cosyvoice/utils/executor.py b/cosyvoice/utils/executor.py new file mode 100644 index 0000000000000000000000000000000000000000..8c38bf016f892e7ac333d7bb6b466a0d0bc78857 --- /dev/null +++ b/cosyvoice/utils/executor.py @@ -0,0 +1,172 @@ +# Copyright (c) 2020 Mobvoi Inc (Binbin Zhang) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +from contextlib import nullcontext +import os + +import torch +import torch.distributed as dist + +from cosyvoice.utils.train_utils import update_parameter_and_lr, log_per_step, log_per_save, batch_forward, batch_backward, save_model, cosyvoice_join + + +class Executor: + + def __init__(self, gan: bool = False): + self.gan = gan + self.step = 0 + self.epoch = 0 + self.rank = int(os.environ.get('RANK', 0)) + self.device = torch.device('cuda:{}'.format(self.rank)) + + def train_one_epoc(self, model, optimizer, scheduler, train_data_loader, cv_data_loader, writer, info_dict, scaler, group_join): + ''' Train one epoch + ''' + + lr = optimizer.param_groups[0]['lr'] + logging.info('Epoch {} TRAIN info lr {} rank {}'.format(self.epoch, lr, self.rank)) + logging.info('using accumulate grad, new batch size is {} times' + ' larger than before'.format(info_dict['accum_grad'])) + # A context manager to be used in conjunction with an instance of + # torch.nn.parallel.DistributedDataParallel to be able to train + # with uneven inputs across participating processes. + model.train() + model_context = model.join if info_dict['train_engine'] == 'torch_ddp' else nullcontext + with model_context(): + for batch_idx, batch_dict in enumerate(train_data_loader): + info_dict["tag"] = "TRAIN" + info_dict["step"] = self.step + info_dict["epoch"] = self.epoch + info_dict["batch_idx"] = batch_idx + if cosyvoice_join(group_join, info_dict): + break + + # Disable gradient synchronizations across DDP processes. + # Within this context, gradients will be accumulated on module + # variables, which will later be synchronized. + if info_dict['train_engine'] == 'torch_ddp' and (batch_idx + 1) % info_dict["accum_grad"] != 0: + context = model.no_sync + # Used for single gpu training and DDP gradient synchronization + # processes. + else: + context = nullcontext + + with context(): + info_dict = batch_forward(model, batch_dict, scaler, info_dict) + info_dict = batch_backward(model, scaler, info_dict) + + info_dict = update_parameter_and_lr(model, optimizer, scheduler, scaler, info_dict) + log_per_step(writer, info_dict) + # NOTE specify save_per_step in cosyvoice.yaml if you want to enable step save + if info_dict['save_per_step'] > 0 and (self.step + 1) % info_dict['save_per_step'] == 0 and \ + (batch_idx + 1) % info_dict["accum_grad"] == 0: + dist.barrier() + self.cv(model, cv_data_loader, writer, info_dict, on_batch_end=False) + model.train() + if (batch_idx + 1) % info_dict["accum_grad"] == 0: + self.step += 1 + dist.barrier() + self.cv(model, cv_data_loader, writer, info_dict, on_batch_end=True) + + def train_one_epoc_gan(self, model, optimizer, scheduler, optimizer_d, scheduler_d, train_data_loader, cv_data_loader, + writer, info_dict, scaler, group_join): + ''' Train one epoch + ''' + + lr = optimizer.param_groups[0]['lr'] + logging.info('Epoch {} TRAIN info lr {} rank {}'.format(self.epoch, lr, self.rank)) + logging.info('using accumulate grad, new batch size is {} times' + ' larger than before'.format(info_dict['accum_grad'])) + # A context manager to be used in conjunction with an instance of + # torch.nn.parallel.DistributedDataParallel to be able to train + # with uneven inputs across participating processes. + model.train() + model_context = model.join if info_dict['train_engine'] == 'torch_ddp' else nullcontext + with model_context(): + for batch_idx, batch_dict in enumerate(train_data_loader): + info_dict["tag"] = "TRAIN" + info_dict["step"] = self.step + info_dict["epoch"] = self.epoch + info_dict["batch_idx"] = batch_idx + if cosyvoice_join(group_join, info_dict): + break + + # Disable gradient synchronizations across DDP processes. + # Within this context, gradients will be accumulated on module + # variables, which will later be synchronized. + if info_dict['train_engine'] == 'torch_ddp' and (batch_idx + 1) % info_dict["accum_grad"] != 0: + context = model.no_sync + # Used for single gpu training and DDP gradient synchronization + # processes. + else: + context = nullcontext + + with context(): + batch_dict['turn'] = 'discriminator' + info_dict = batch_forward(model, batch_dict, scaler, info_dict) + info_dict = batch_backward(model, scaler, info_dict) + info_dict = update_parameter_and_lr(model, optimizer_d, scheduler_d, scaler, info_dict) + optimizer.zero_grad() + log_per_step(writer, info_dict) + with context(): + batch_dict['turn'] = 'generator' + info_dict = batch_forward(model, batch_dict, scaler, info_dict) + info_dict = batch_backward(model, scaler, info_dict) + info_dict = update_parameter_and_lr(model, optimizer, scheduler, scaler, info_dict) + optimizer_d.zero_grad() + log_per_step(writer, info_dict) + # NOTE specify save_per_step in cosyvoice.yaml if you want to enable step save + if info_dict['save_per_step'] > 0 and (self.step + 1) % info_dict['save_per_step'] == 0 and \ + (batch_idx + 1) % info_dict["accum_grad"] == 0: + dist.barrier() + self.cv(model, cv_data_loader, writer, info_dict, on_batch_end=False) + model.train() + if (batch_idx + 1) % info_dict["accum_grad"] == 0: + self.step += 1 + dist.barrier() + self.cv(model, cv_data_loader, writer, info_dict, on_batch_end=True) + + @torch.inference_mode() + def cv(self, model, cv_data_loader, writer, info_dict, on_batch_end=True): + ''' Cross validation on + ''' + logging.info('Epoch {} Step {} on_batch_end {} CV rank {}'.format(self.epoch, self.step + 1, on_batch_end, self.rank)) + model.eval() + total_num_utts, total_loss_dict = 0, {} # avoid division by 0 + for batch_idx, batch_dict in enumerate(cv_data_loader): + info_dict["tag"] = "CV" + info_dict["step"] = self.step + info_dict["epoch"] = self.epoch + info_dict["batch_idx"] = batch_idx + + num_utts = len(batch_dict["utts"]) + total_num_utts += num_utts + + if self.gan is True: + batch_dict['turn'] = 'generator' + info_dict = batch_forward(model, batch_dict, None, info_dict) + + for k, v in info_dict['loss_dict'].items(): + if k not in total_loss_dict: + total_loss_dict[k] = [] + total_loss_dict[k].append(v.item() * num_utts) + log_per_step(None, info_dict) + for k, v in total_loss_dict.items(): + total_loss_dict[k] = sum(v) / total_num_utts + info_dict['loss_dict'] = total_loss_dict + log_per_save(writer, info_dict) + model_name = 'epoch_{}_whole'.format(self.epoch) if on_batch_end else 'epoch_{}_step_{}'.format(self.epoch, self.step + 1) + save_model(model, model_name, info_dict) diff --git a/cosyvoice/utils/file_utils.py b/cosyvoice/utils/file_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..8413e63a973d36d5b22b386371042d596f4eafa8 --- /dev/null +++ b/cosyvoice/utils/file_utils.py @@ -0,0 +1,51 @@ +# Copyright (c) 2021 Mobvoi Inc. (authors: Binbin Zhang) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import torchaudio +import logging +logging.getLogger('matplotlib').setLevel(logging.WARNING) +logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(levelname)s %(message)s') + + +def read_lists(list_file): + lists = [] + with open(list_file, 'r', encoding='utf8') as fin: + for line in fin: + lists.append(line.strip()) + return lists + + +def read_json_lists(list_file): + lists = read_lists(list_file) + results = {} + for fn in lists: + with open(fn, 'r', encoding='utf8') as fin: + results.update(json.load(fin)) + return results + + +def load_wav(wav, target_sr): + # speech, sample_rate = torchaudio.load(wav) + # speech = speech.mean(dim=0, keepdim=True) + # if sample_rate != target_sr: + # assert sample_rate > target_sr, 'wav sample rate {} must be greater than {}'.format(sample_rate, target_sr) + # speech = torchaudio.transforms.Resample(orig_freq=sample_rate, new_freq=target_sr)(speech) + + import librosa, torch + speech, _ = librosa.load(path=wav, sr=target_sr) + speech = torch.from_numpy(speech).unsqueeze(dim=0) + return speech diff --git a/cosyvoice/utils/frontend_utils.py b/cosyvoice/utils/frontend_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..ab01a1fec17457ad4a68c7785c9e669aed54367e --- /dev/null +++ b/cosyvoice/utils/frontend_utils.py @@ -0,0 +1,129 @@ +# Copyright (c) 2024 Alibaba Inc (authors: Xiang Lyu, Zhihao Du) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import re +chinese_char_pattern = re.compile(r'[\u4e00-\u9fff]+') + + +# whether contain chinese character +def contains_chinese(text): + return bool(chinese_char_pattern.search(text)) + + +# replace special symbol +def replace_corner_mark(text): + text = text.replace('²', '平方') + text = text.replace('³', '立方') + return text + + +# remove meaningless symbol +def remove_bracket(text): + text = text.replace('(', '').replace(')', '') + text = text.replace('【', '').replace('】', '') + text = text.replace('`', '').replace('`', '') + text = text.replace("——", " ") + return text + + +# spell Arabic numerals +def spell_out_number(text: str, inflect_parser): + new_text = [] + st = None + for i, c in enumerate(text): + if not c.isdigit(): + if st is not None: + num_str = inflect_parser.number_to_words(text[st: i]) + new_text.append(num_str) + st = None + new_text.append(c) + else: + if st is None: + st = i + if st is not None and st < len(text): + num_str = inflect_parser.number_to_words(text[st:]) + new_text.append(num_str) + return ''.join(new_text) + + +# split paragrah logic: +# 1. per sentence max len token_max_n, min len token_min_n, merge if last sentence len less than merge_len +# 2. cal sentence len according to lang +# 3. split sentence according to puncatation +def split_paragraph(text: str, tokenize, lang="zh", token_max_n=80, token_min_n=60, merge_len=20, comma_split=False): + def calc_utt_length(_text: str): + if lang == "zh": + return len(_text) + else: + return len(tokenize(_text)) + + def should_merge(_text: str): + if lang == "zh": + return len(_text) < merge_len + else: + return len(tokenize(_text)) < merge_len + + if lang == "zh": + pounc = ['。', '?', '!', ';', ':', '、', '.', '?', '!', ';'] + else: + pounc = ['.', '?', '!', ';', ':'] + if comma_split: + pounc.extend([',', ',']) + + if text[-1] not in pounc: + if lang == "zh": + text += "。" + else: + text += "." + + st = 0 + utts = [] + for i, c in enumerate(text): + if c in pounc: + if len(text[st: i]) > 0: + utts.append(text[st: i] + c) + if i + 1 < len(text) and text[i + 1] in ['"', '”']: + tmp = utts.pop(-1) + utts.append(tmp + text[i + 1]) + st = i + 2 + else: + st = i + 1 + + final_utts = [] + cur_utt = "" + for utt in utts: + if calc_utt_length(cur_utt + utt) > token_max_n and calc_utt_length(cur_utt) > token_min_n: + final_utts.append(cur_utt) + cur_utt = "" + cur_utt = cur_utt + utt + if len(cur_utt) > 0: + if should_merge(cur_utt) and len(final_utts) != 0: + final_utts[-1] = final_utts[-1] + cur_utt + else: + final_utts.append(cur_utt) + + return final_utts + + +# remove blank between chinese character +def replace_blank(text: str): + out_str = [] + for i, c in enumerate(text): + if c == " ": + if ((text[i + 1].isascii() and text[i + 1] != " ") and + (text[i - 1].isascii() and text[i - 1] != " ")): + out_str.append(c) + else: + out_str.append(c) + return "".join(out_str) diff --git a/cosyvoice/utils/losses.py b/cosyvoice/utils/losses.py new file mode 100644 index 0000000000000000000000000000000000000000..78efd3b72ff4c61971f4732626c43613f812761d --- /dev/null +++ b/cosyvoice/utils/losses.py @@ -0,0 +1,20 @@ +import torch +import torch.nn.functional as F + + +def tpr_loss(disc_real_outputs, disc_generated_outputs, tau): + loss = 0 + for dr, dg in zip(disc_real_outputs, disc_generated_outputs): + m_DG = torch.median((dr - dg)) + L_rel = torch.mean((((dr - dg) - m_DG) ** 2)[dr < dg + m_DG]) + loss += tau - F.relu(tau - L_rel) + return loss + + +def mel_loss(real_speech, generated_speech, mel_transforms): + loss = 0 + for transform in mel_transforms: + mel_r = transform(real_speech) + mel_g = transform(generated_speech) + loss += F.l1_loss(mel_g, mel_r) + return loss diff --git a/cosyvoice/utils/mask.py b/cosyvoice/utils/mask.py new file mode 100644 index 0000000000000000000000000000000000000000..2b460bbd5adb4bd61d643ace71400a14fe314236 --- /dev/null +++ b/cosyvoice/utils/mask.py @@ -0,0 +1,227 @@ +# Copyright (c) 2019 Shigeki Karita +# 2020 Mobvoi Inc (Binbin Zhang) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import torch +''' +def subsequent_mask( + size: int, + device: torch.device = torch.device("cpu"), +) -> torch.Tensor: + """Create mask for subsequent steps (size, size). + + This mask is used only in decoder which works in an auto-regressive mode. + This means the current step could only do attention with its left steps. + + In encoder, fully attention is used when streaming is not necessary and + the sequence is not long. In this case, no attention mask is needed. + + When streaming is need, chunk-based attention is used in encoder. See + subsequent_chunk_mask for the chunk-based attention mask. + + Args: + size (int): size of mask + str device (str): "cpu" or "cuda" or torch.Tensor.device + dtype (torch.device): result dtype + + Returns: + torch.Tensor: mask + + Examples: + >>> subsequent_mask(3) + [[1, 0, 0], + [1, 1, 0], + [1, 1, 1]] + """ + ret = torch.ones(size, size, device=device, dtype=torch.bool) + return torch.tril(ret) +''' + + +def subsequent_mask( + size: int, + device: torch.device = torch.device("cpu"), +) -> torch.Tensor: + """Create mask for subsequent steps (size, size). + + This mask is used only in decoder which works in an auto-regressive mode. + This means the current step could only do attention with its left steps. + + In encoder, fully attention is used when streaming is not necessary and + the sequence is not long. In this case, no attention mask is needed. + + When streaming is need, chunk-based attention is used in encoder. See + subsequent_chunk_mask for the chunk-based attention mask. + + Args: + size (int): size of mask + str device (str): "cpu" or "cuda" or torch.Tensor.device + dtype (torch.device): result dtype + + Returns: + torch.Tensor: mask + + Examples: + >>> subsequent_mask(3) + [[1, 0, 0], + [1, 1, 0], + [1, 1, 1]] + """ + arange = torch.arange(size, device=device) + mask = arange.expand(size, size) + arange = arange.unsqueeze(-1) + mask = mask <= arange + return mask + + +def subsequent_chunk_mask( + size: int, + chunk_size: int, + num_left_chunks: int = -1, + device: torch.device = torch.device("cpu"), +) -> torch.Tensor: + """Create mask for subsequent steps (size, size) with chunk size, + this is for streaming encoder + + Args: + size (int): size of mask + chunk_size (int): size of chunk + num_left_chunks (int): number of left chunks + <0: use full chunk + >=0: use num_left_chunks + device (torch.device): "cpu" or "cuda" or torch.Tensor.device + + Returns: + torch.Tensor: mask + + Examples: + >>> subsequent_chunk_mask(4, 2) + [[1, 1, 0, 0], + [1, 1, 0, 0], + [1, 1, 1, 1], + [1, 1, 1, 1]] + """ + ret = torch.zeros(size, size, device=device, dtype=torch.bool) + for i in range(size): + if num_left_chunks < 0: + start = 0 + else: + start = max((i // chunk_size - num_left_chunks) * chunk_size, 0) + ending = min((i // chunk_size + 1) * chunk_size, size) + ret[i, start:ending] = True + return ret + + +def add_optional_chunk_mask(xs: torch.Tensor, + masks: torch.Tensor, + use_dynamic_chunk: bool, + use_dynamic_left_chunk: bool, + decoding_chunk_size: int, + static_chunk_size: int, + num_decoding_left_chunks: int, + enable_full_context: bool = True): + """ Apply optional mask for encoder. + + Args: + xs (torch.Tensor): padded input, (B, L, D), L for max length + mask (torch.Tensor): mask for xs, (B, 1, L) + use_dynamic_chunk (bool): whether to use dynamic chunk or not + use_dynamic_left_chunk (bool): whether to use dynamic left chunk for + training. + decoding_chunk_size (int): decoding chunk size for dynamic chunk, it's + 0: default for training, use random dynamic chunk. + <0: for decoding, use full chunk. + >0: for decoding, use fixed chunk size as set. + static_chunk_size (int): chunk size for static chunk training/decoding + if it's greater than 0, if use_dynamic_chunk is true, + this parameter will be ignored + num_decoding_left_chunks: number of left chunks, this is for decoding, + the chunk size is decoding_chunk_size. + >=0: use num_decoding_left_chunks + <0: use all left chunks + enable_full_context (bool): + True: chunk size is either [1, 25] or full context(max_len) + False: chunk size ~ U[1, 25] + + Returns: + torch.Tensor: chunk mask of the input xs. + """ + # Whether to use chunk mask or not + if use_dynamic_chunk: + max_len = xs.size(1) + if decoding_chunk_size < 0: + chunk_size = max_len + num_left_chunks = -1 + elif decoding_chunk_size > 0: + chunk_size = decoding_chunk_size + num_left_chunks = num_decoding_left_chunks + else: + # chunk size is either [1, 25] or full context(max_len). + # Since we use 4 times subsampling and allow up to 1s(100 frames) + # delay, the maximum frame is 100 / 4 = 25. + chunk_size = torch.randint(1, max_len, (1, )).item() + num_left_chunks = -1 + if chunk_size > max_len // 2 and enable_full_context: + chunk_size = max_len + else: + chunk_size = chunk_size % 25 + 1 + if use_dynamic_left_chunk: + max_left_chunks = (max_len - 1) // chunk_size + num_left_chunks = torch.randint(0, max_left_chunks, + (1, )).item() + chunk_masks = subsequent_chunk_mask(xs.size(1), chunk_size, + num_left_chunks, + xs.device) # (L, L) + chunk_masks = chunk_masks.unsqueeze(0) # (1, L, L) + chunk_masks = masks & chunk_masks # (B, L, L) + elif static_chunk_size > 0: + num_left_chunks = num_decoding_left_chunks + chunk_masks = subsequent_chunk_mask(xs.size(1), static_chunk_size, + num_left_chunks, + xs.device) # (L, L) + chunk_masks = chunk_masks.unsqueeze(0) # (1, L, L) + chunk_masks = masks & chunk_masks # (B, L, L) + else: + chunk_masks = masks + return chunk_masks + + +def make_pad_mask(lengths: torch.Tensor, max_len: int = 0) -> torch.Tensor: + """Make mask tensor containing indices of padded part. + + See description of make_non_pad_mask. + + Args: + lengths (torch.Tensor): Batch of lengths (B,). + Returns: + torch.Tensor: Mask tensor containing indices of padded part. + + Examples: + >>> lengths = [5, 3, 2] + >>> make_pad_mask(lengths) + masks = [[0, 0, 0, 0 ,0], + [0, 0, 0, 1, 1], + [0, 0, 1, 1, 1]] + """ + batch_size = lengths.size(0) + max_len = max_len if max_len > 0 else lengths.max().item() + seq_range = torch.arange(0, + max_len, + dtype=torch.int64, + device=lengths.device) + seq_range_expand = seq_range.unsqueeze(0).expand(batch_size, max_len) + seq_length_expand = lengths.unsqueeze(-1) + mask = seq_range_expand >= seq_length_expand + return mask diff --git a/cosyvoice/utils/scheduler.py b/cosyvoice/utils/scheduler.py new file mode 100644 index 0000000000000000000000000000000000000000..06e7f3dacbd3f890f35020acea56783b58f98e0e --- /dev/null +++ b/cosyvoice/utils/scheduler.py @@ -0,0 +1,738 @@ +# Copyright (c) 2020 Mobvoi Inc (Binbin Zhang) +# 2022 Ximalaya Inc (Yuguang Yang) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# Modified from ESPnet(https://github.com/espnet/espnet) +# NeMo(https://github.com/NVIDIA/NeMo) + +from typing import Union + +import math +import warnings +import torch +from torch.optim.lr_scheduler import _LRScheduler + + +class WarmupLR(_LRScheduler): + """The WarmupLR scheduler + + This scheduler is almost same as NoamLR Scheduler except for following + difference: + + NoamLR: + lr = optimizer.lr * model_size ** -0.5 + * min(step ** -0.5, step * warmup_step ** -1.5) + WarmupLR: + lr = optimizer.lr * warmup_step ** 0.5 + * min(step ** -0.5, step * warmup_step ** -1.5) + + Note that the maximum lr equals to optimizer.lr in this scheduler. + + """ + + def __init__( + self, + optimizer: torch.optim.Optimizer, + warmup_steps: Union[int, float] = 25000, + last_epoch: int = -1, + ): + self.warmup_steps = warmup_steps + + # __init__() must be invoked before setting field + # because step() is also invoked in __init__() + super().__init__(optimizer, last_epoch) + + def __repr__(self): + return f"{self.__class__.__name__}(warmup_steps={self.warmup_steps})" + + def get_lr(self): + step_num = self.last_epoch + 1 + if self.warmup_steps == 0: + return [lr * step_num**-0.5 for lr in self.base_lrs] + else: + return [ + lr * self.warmup_steps**0.5 * + min(step_num**-0.5, step_num * self.warmup_steps**-1.5) + for lr in self.base_lrs + ] + + def set_step(self, step: int): + self.last_epoch = step + + +class WarmupPolicy(_LRScheduler): + """Adds warmup kwargs and warmup logic to lr policy. + All arguments should be passed as kwargs for clarity, + Args: + warmup_steps: Number of training steps in warmup stage + warmup_ratio: Ratio of warmup steps to total steps + max_steps: Total number of steps while training or `None` for + infinite training + """ + + def __init__(self, + optimizer, + *, + warmup_steps=None, + warmup_ratio=None, + max_steps=None, + min_lr=0.0, + last_epoch=-1): + assert not (warmup_steps is not None and warmup_ratio is not None),\ + "Either use particular number of step or ratio" + assert warmup_ratio is None or max_steps is not None, \ + "If there is a ratio, there should be a total steps" + + # It is necessary to assign all attributes *before* __init__, + # as class is wrapped by an inner class. + self.max_steps = max_steps + if warmup_steps is not None: + self.warmup_steps = warmup_steps + elif warmup_ratio is not None: + self.warmup_steps = int(warmup_ratio * max_steps) + else: + self.warmup_steps = 0 + + self.min_lr = min_lr + super().__init__(optimizer, last_epoch) + + def get_lr(self): + if not self._get_lr_called_within_step: + warnings.warn( + "To get the last learning rate computed " + "by the scheduler, please use `get_last_lr()`.", + UserWarning, + stacklevel=2) + + step = self.last_epoch + + if step <= self.warmup_steps and self.warmup_steps > 0: + return self._get_warmup_lr(step) + + if step > self.max_steps: + return [self.min_lr for _ in self.base_lrs] + + return self._get_lr(step) + + def _get_warmup_lr(self, step): + lr_val = (step + 1) / (self.warmup_steps + 1) + return [initial_lr * lr_val for initial_lr in self.base_lrs] + + def _get_lr(self, step): + """Simple const lr policy""" + return self.base_lrs + + +class SquareRootConstantPolicy(_LRScheduler): + """Adds warmup kwargs and warmup logic to lr policy. + All arguments should be passed as kwargs for clarity, + Args: + warmup_steps: Number of training steps in warmup stage + warmup_ratio: Ratio of warmup steps to total steps + max_steps: Total number of steps while training or `None` for + infinite training + """ + + def __init__(self, + optimizer, + *, + constant_steps=None, + constant_ratio=None, + max_steps=None, + min_lr=0.0, + last_epoch=-1): + assert not (constant_steps is not None + and constant_ratio is not None), \ + "Either use particular number of step or ratio" + assert constant_ratio is None or max_steps is not None, \ + "If there is a ratio, there should be a total steps" + + # It is necessary to assign all attributes *before* __init__, + # as class is wrapped by an inner class. + self.max_steps = max_steps + if constant_steps is not None: + self.constant_steps = constant_steps + elif constant_ratio is not None: + self.constant_steps = int(constant_ratio * max_steps) + else: + self.constant_steps = 0 + + self.constant_lr = 1 / (constant_steps**0.5) + self.min_lr = min_lr + super().__init__(optimizer, last_epoch) + + def get_lr(self): + if not self._get_lr_called_within_step: + warnings.warn( + "To get the last learning rate computed " + "by the scheduler, please use `get_last_lr()`.", + UserWarning, + stacklevel=2) + + step = self.last_epoch + + if step <= self.constant_steps: + return [self.constant_lr for _ in self.base_lrs] + + if step > self.max_steps: + return [self.min_lr for _ in self.base_lrs] + + return self._get_lr(step) + + def _get_lr(self, step): + """Simple const lr policy""" + return self.base_lrs + + +class WarmupHoldPolicy(WarmupPolicy): + """Variant of WarmupPolicy which maintains high + learning rate for a defined number of steps. + All arguments should be passed as kwargs for clarity, + Args: + warmup_steps: Number of training steps in warmup stage + warmup_ratio: Ratio of warmup steps to total steps + hold_steps: Number of training steps to + hold the learning rate after warm up + hold_ratio: Ratio of hold steps to total steps + max_steps: Total number of steps while training or `None` for + infinite training + """ + + def __init__( + self, + optimizer, + *, + warmup_steps=None, + warmup_ratio=None, + hold_steps=None, + hold_ratio=None, + max_steps=None, + min_lr=0.0, + last_epoch=-1, + ): + assert not (hold_steps is not None and hold_ratio is not None), \ + "Either use particular number of step or ratio" + assert hold_ratio is None or max_steps is not None, \ + "If there is a ratio, there should be a total steps" + + self.min_lr = min_lr + self._last_warmup_lr = 0.0 + + # Necessary to duplicate as class attributes are hidden in inner class + self.max_steps = max_steps + if warmup_steps is not None: + self.warmup_steps = warmup_steps + elif warmup_ratio is not None: + self.warmup_steps = int(warmup_ratio * max_steps) + else: + self.warmup_steps = 0 + + if hold_steps is not None: + self.hold_steps = hold_steps + self.warmup_steps + elif hold_ratio is not None: + self.hold_steps = int(hold_ratio * max_steps) + self.warmup_steps + else: + self.hold_steps = 0 + + super().__init__( + optimizer, + warmup_steps=warmup_steps, + warmup_ratio=warmup_ratio, + max_steps=max_steps, + last_epoch=last_epoch, + min_lr=min_lr, + ) + + def get_lr(self): + if not self._get_lr_called_within_step: + warnings.warn( + "To get the last learning rate computed by the scheduler," + " " + "please use `get_last_lr()`.", + UserWarning, + stacklevel=2) + + step = self.last_epoch + + # Warmup phase + if step <= self.warmup_steps and self.warmup_steps > 0: + return self._get_warmup_lr(step) + + # Hold phase + if (step >= self.warmup_steps) and (step < self.hold_steps): + return self.base_lrs + + if step > self.max_steps: + return [self.min_lr for _ in self.base_lrs] + + return self._get_lr(step) + + +class WarmupAnnealHoldPolicy(_LRScheduler): + """Adds warmup kwargs and warmup logic to lr policy. + All arguments should be passed as kwargs for clarity, + Args: + warmup_steps: Number of training steps in warmup stage + warmup_ratio: Ratio of warmup steps to total steps + max_steps: Total number of steps while training or `None` for + infinite training + min_lr: Minimum lr to hold the learning rate after decay at. + constant_steps: Number of steps to keep lr constant at. + constant_ratio: Ratio of steps to keep lr constant. + """ + + def __init__( + self, + optimizer, + *, + warmup_steps=None, + warmup_ratio=None, + constant_steps=None, + constant_ratio=None, + max_steps=None, + min_lr=0.0, + last_epoch=-1, + ): + assert not (warmup_steps is not None + and warmup_ratio is not None), \ + "Either use particular number of step or ratio" + assert not (constant_steps is not None + and constant_ratio is not None), \ + "Either use constant_steps or constant_ratio" + assert warmup_ratio is None or max_steps is not None, \ + "If there is a ratio, there should be a total steps" + + # It is necessary to assign all attributes *before* __init__, + # as class is wrapped by an inner class. + self.max_steps = max_steps + + if warmup_steps is not None: + self.warmup_steps = warmup_steps + elif warmup_ratio is not None: + self.warmup_steps = int(warmup_ratio * max_steps) + else: + self.warmup_steps = 0 + + if constant_steps is not None: + self.constant_steps = constant_steps + elif constant_ratio is not None: + self.constant_steps = int(constant_ratio * max_steps) + else: + self.constant_steps = 0 + + self.decay_steps = max_steps - (self.constant_steps + + self.warmup_steps) + + self.min_lr = min_lr + super().__init__(optimizer, last_epoch) + + def get_lr(self): + if not self._get_lr_called_within_step: + warnings.warn( + "To get the last learning rate computed " + "by the scheduler, please use `get_last_lr()`.", + UserWarning, + stacklevel=2) + + step = self.last_epoch + + # Warmup steps + if self.warmup_steps > 0 and step <= self.warmup_steps: + return self._get_warmup_lr(step) + + # Constant steps after warmup and decay + if self.constant_steps > 0 and ( + self.warmup_steps + self.decay_steps) < step <= self.max_steps: + return self._get_constant_lr(step) + + # Min lr after max steps of updates + if step > self.max_steps: + return [self.min_lr for _ in self.base_lrs] + + return self._get_lr(step) + + def _get_warmup_lr(self, step): + lr_val = (step + 1) / (self.warmup_steps + 1) + return [initial_lr * lr_val for initial_lr in self.base_lrs] + + def _get_constant_lr(self, step): + return [self.min_lr for _ in self.base_lrs] + + def _get_lr(self, step): + """Simple const lr policy""" + return self.base_lrs + + +def _squareroot_annealing(initial_lr, step, max_steps, min_lr): + mult = ((max_steps - step) / max_steps)**0.5 + out_lr = initial_lr * mult + out_lr = max(out_lr, min_lr) + return out_lr + + +def _square_annealing(initial_lr, step, max_steps, min_lr): + mult = ((max_steps - step) / max_steps)**2 + out_lr = initial_lr * mult + out_lr = max(out_lr, min_lr) + return out_lr + + +def _cosine_annealing(initial_lr, step, max_steps, min_lr): + mult = 0.5 * (1 + math.cos(math.pi * step / max_steps)) + out_lr = (initial_lr - min_lr) * mult + min_lr + return out_lr + + +def _linear_warmup_with_cosine_annealing(max_lr, warmup_steps, step, + decay_steps, min_lr): + assert max_lr > min_lr + # Use linear warmup for the initial part. + if warmup_steps > 0 and step <= warmup_steps: + return max_lr * float(step) / float(warmup_steps) + + # For any steps larger than `decay_steps`, use `min_lr`. + if step > warmup_steps + decay_steps: + return min_lr + + # If we are done with the warmup period, use the decay style. + num_steps_ = step - warmup_steps + decay_steps_ = decay_steps + decay_ratio = float(num_steps_) / float(decay_steps_) + assert decay_ratio >= 0.0 + assert decay_ratio <= 1.0 + delta_lr = max_lr - min_lr + + coeff = 0.5 * (math.cos(math.pi * decay_ratio) + 1.0) + + return min_lr + coeff * delta_lr + + +def _poly_decay(initial_lr, step, decay_steps, power, min_lr, cycle): + if cycle: + multiplier = 1.0 if step == 0 else math.ceil(step / decay_steps) + decay_steps *= multiplier + else: + step = min(step, decay_steps) + p = step / decay_steps + lr = (initial_lr - min_lr) * math.pow(1.0 - p, power) + lr += min_lr + return lr + + +def _noam_hold_annealing(initial_lr, step, warmup_steps, hold_steps, + decay_rate, min_lr): + # hold_steps = total number of steps + # to hold the LR, not the warmup + hold steps. + T_warmup_decay = max(1, warmup_steps**decay_rate) + T_hold_decay = max(1, (step - hold_steps)**decay_rate) + lr = (initial_lr * T_warmup_decay) / T_hold_decay + lr = max(lr, min_lr) + return lr + + +class SquareAnnealing(WarmupPolicy): + + def __init__(self, + optimizer, + *, + max_steps, + min_lr=1e-5, + last_epoch=-1, + **kwargs): + super().__init__(optimizer=optimizer, + max_steps=max_steps, + last_epoch=last_epoch, + min_lr=min_lr, + **kwargs) + + def _get_lr(self, step): + new_lrs = [ + _square_annealing( + initial_lr=initial_lr, + step=step - self.warmup_steps, + max_steps=self.max_steps - self.warmup_steps, + min_lr=self.min_lr, + ) for initial_lr in self.base_lrs + ] + return new_lrs + + +class SquareRootAnnealing(WarmupPolicy): + + def __init__(self, + optimizer, + *, + max_steps, + min_lr=0, + last_epoch=-1, + **kwargs): + super().__init__(optimizer=optimizer, + max_steps=max_steps, + last_epoch=last_epoch, + min_lr=min_lr, + **kwargs) + + def _get_lr(self, step): + new_lrs = [ + _squareroot_annealing(initial_lr=initial_lr, + step=step, + max_steps=self.max_steps, + min_lr=self.min_lr) + for initial_lr in self.base_lrs + ] + return new_lrs + + +class CosineAnnealing(WarmupAnnealHoldPolicy): + + def __init__(self, + optimizer, + *, + max_steps, + min_lr=0, + last_epoch=-1, + **kwargs): + super().__init__(optimizer=optimizer, + max_steps=max_steps, + last_epoch=last_epoch, + min_lr=min_lr, + **kwargs) + + def _get_lr(self, step): + for initial_lr in self.base_lrs: + if initial_lr < self.min_lr: + raise ValueError( + f"{self} received an initial learning rate " + f"that was lower than the minimum learning rate.") + + if self.constant_steps is None or self.constant_steps == 0: + new_lrs = [ + _cosine_annealing( + initial_lr=initial_lr, + step=step - self.warmup_steps, + max_steps=self.max_steps - self.warmup_steps, + min_lr=self.min_lr, + ) for initial_lr in self.base_lrs + ] + else: + new_lrs = self._get_linear_warmup_with_cosine_annealing_lr(step) + return new_lrs + + def _get_warmup_lr(self, step): + if self.constant_steps is None or self.constant_steps == 0: + return super()._get_warmup_lr(step) + else: + # Use linear warmup for the initial part. + return self._get_linear_warmup_with_cosine_annealing_lr(step) + + def _get_constant_lr(self, step): + # Only called when `constant_steps` > 0. + return self._get_linear_warmup_with_cosine_annealing_lr(step) + + def _get_linear_warmup_with_cosine_annealing_lr(self, step): + # Cosine Schedule for Megatron LM, + # slightly different warmup schedule + constant LR at the end. + new_lrs = [ + _linear_warmup_with_cosine_annealing( + max_lr=self.base_lrs[0], + warmup_steps=self.warmup_steps, + step=step, + decay_steps=self.decay_steps, + min_lr=self.min_lr, + ) for _ in self.base_lrs + ] + return new_lrs + + +class NoamAnnealing(_LRScheduler): + + def __init__(self, + optimizer, + *, + d_model, + warmup_steps=None, + warmup_ratio=None, + max_steps=None, + min_lr=0.0, + last_epoch=-1): + self._normalize = d_model**(-0.5) + assert not (warmup_steps is not None and warmup_ratio is not None), \ + "Either use particular number of step or ratio" + assert warmup_ratio is None or max_steps is not None, \ + "If there is a ratio, there should be a total steps" + + # It is necessary to assign all attributes *before* __init__, + # as class is wrapped by an inner class. + self.max_steps = max_steps + if warmup_steps is not None: + self.warmup_steps = warmup_steps + elif warmup_ratio is not None: + self.warmup_steps = int(warmup_ratio * max_steps) + else: + self.warmup_steps = 0 + + self.min_lr = min_lr + super().__init__(optimizer, last_epoch) + + def get_lr(self): + if not self._get_lr_called_within_step: + warnings.warn( + "To get the last learning rate computed " + "by the scheduler, please use `get_last_lr()`.", + UserWarning, + stacklevel=2) + + step = max(1, self.last_epoch) + + for initial_lr in self.base_lrs: + if initial_lr < self.min_lr: + raise ValueError( + f"{self} received an initial learning rate " + f"that was lower than the minimum learning rate.") + + new_lrs = [ + self._noam_annealing(initial_lr=initial_lr, step=step) + for initial_lr in self.base_lrs + ] + return new_lrs + + def _noam_annealing(self, initial_lr, step): + if self.warmup_steps > 0: + mult = self._normalize * min(step**(-0.5), + step * (self.warmup_steps**(-1.5))) + else: + mult = self._normalize * step**(-0.5) + + out_lr = initial_lr * mult + if step > self.warmup_steps: + out_lr = max(out_lr, self.min_lr) + return out_lr + + +class NoamHoldAnnealing(WarmupHoldPolicy): + + def __init__(self, + optimizer, + *, + max_steps, + decay_rate=0.5, + min_lr=0.0, + last_epoch=-1, + **kwargs): + """ + From Nemo: + Implementation of the Noam Hold Annealing policy + from the SqueezeFormer paper. + + Unlike NoamAnnealing, the peak learning rate + can be explicitly set for this scheduler. + The schedule first performs linear warmup, + then holds the peak LR, then decays with some schedule for + the remainder of the steps. + Therefore the min-lr is still dependent + on the hyper parameters selected. + + It's schedule is determined by three factors- + + Warmup Steps: Initial stage, where linear warmup + occurs uptil the peak LR is reached. Unlike NoamAnnealing, + the peak LR is explicitly stated here instead of a scaling factor. + + Hold Steps: Intermediate stage, where the peak LR + is maintained for some number of steps. In this region, + the high peak LR allows the model to converge faster + if training is stable. However the high LR + may also cause instability during training. + Should usually be a significant fraction of training + steps (around 30-40% of the entire training steps). + + Decay Steps: Final stage, where the LR rapidly decays + with some scaling rate (set by decay rate). + To attain Noam decay, use 0.5, + for Squeezeformer recommended decay, use 1.0. + The fast decay after prolonged high LR during + hold phase allows for rapid convergence. + + References: + - [Squeezeformer: + An Efficient Transformer for Automatic Speech Recognition] + (https://arxiv.org/abs/2206.00888) + + Args: + optimizer: Pytorch compatible Optimizer object. + warmup_steps: Number of training steps in warmup stage + warmup_ratio: Ratio of warmup steps to total steps + hold_steps: Number of training steps to + hold the learning rate after warm up + hold_ratio: Ratio of hold steps to total steps + max_steps: Total number of steps while training or `None` for + infinite training + decay_rate: Float value describing the polynomial decay + after the hold period. Default value + of 0.5 corresponds to Noam decay. + min_lr: Minimum learning rate. + """ + self.decay_rate = decay_rate + super().__init__(optimizer=optimizer, + max_steps=max_steps, + last_epoch=last_epoch, + min_lr=min_lr, + **kwargs) + + def _get_lr(self, step): + if self.warmup_steps is None or self.warmup_steps == 0: + raise ValueError( + "Noam scheduler cannot be used without warmup steps") + + if self.hold_steps > 0: + hold_steps = self.hold_steps - self.warmup_steps + else: + hold_steps = 0 + + new_lrs = [ + _noam_hold_annealing( + initial_lr, + step=step, + warmup_steps=self.warmup_steps, + hold_steps=hold_steps, + decay_rate=self.decay_rate, + min_lr=self.min_lr, + ) for initial_lr in self.base_lrs + ] + return new_lrs + + def set_step(self, step: int): + self.last_epoch = step + + +class ConstantLR(_LRScheduler): + """The ConstantLR scheduler + + This scheduler keeps a constant lr + + """ + + def __init__( + self, + optimizer: torch.optim.Optimizer, + ): + # __init__() must be invoked before setting field + # because step() is also invoked in __init__() + super().__init__(optimizer) + + def get_lr(self): + return self.base_lrs + + def set_step(self, step: int): + self.last_epoch = step diff --git a/cosyvoice/utils/train_utils.py b/cosyvoice/utils/train_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..72e291a1be0aa6dc726e117be82a82f51ad2149f --- /dev/null +++ b/cosyvoice/utils/train_utils.py @@ -0,0 +1,345 @@ +# Copyright (c) 2021 Mobvoi Inc. (authors: Binbin Zhang) +# 2023 Horizon Inc. (authors: Xingchen Song) +# 2024 Alibaba Inc (authors: Xiang Lyu) +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +import os +import torch +import json +import re +import datetime +import yaml + +import deepspeed +import torch.optim as optim +import torch.distributed as dist + +from torch.utils.tensorboard import SummaryWriter +from torch.utils.data import DataLoader +from torch.nn.utils import clip_grad_norm_ + +from deepspeed.runtime.zero.stage_1_and_2 import estimate_zero2_model_states_mem_needs_all_live + +from cosyvoice.dataset.dataset import Dataset +from cosyvoice.utils.scheduler import WarmupLR, NoamHoldAnnealing, ConstantLR + + +def init_distributed(args): + world_size = int(os.environ.get('WORLD_SIZE', 1)) + local_rank = int(os.environ.get('LOCAL_RANK', 0)) + rank = int(os.environ.get('RANK', 0)) + logging.info('training on multiple gpus, this gpu {}'.format(local_rank) + + ', rank {}, world_size {}'.format(rank, world_size)) + if args.train_engine == 'torch_ddp': + torch.cuda.set_device(local_rank) + dist.init_process_group(args.dist_backend) + else: + deepspeed.init_distributed(dist_backend=args.dist_backend) + return world_size, local_rank, rank + + +def init_dataset_and_dataloader(args, configs, gan): + data_pipeline = configs['data_pipeline_gan'] if gan is True else configs['data_pipeline'] + train_dataset = Dataset(args.train_data, data_pipeline=data_pipeline, mode='train', gan=gan, shuffle=True, partition=True) + cv_dataset = Dataset(args.cv_data, data_pipeline=data_pipeline, mode='train', gan=gan, shuffle=False, partition=False) + + # do not use persistent_workers=True, as whisper tokenizer opens tiktoken file each time when the for loop starts + train_data_loader = DataLoader(train_dataset, + batch_size=None, + pin_memory=args.pin_memory, + num_workers=args.num_workers, + prefetch_factor=args.prefetch) + cv_data_loader = DataLoader(cv_dataset, + batch_size=None, + pin_memory=args.pin_memory, + num_workers=args.num_workers, + prefetch_factor=args.prefetch) + return train_dataset, cv_dataset, train_data_loader, cv_data_loader + + +def check_modify_and_save_config(args, configs): + if args.train_engine == "torch_ddp": + configs['train_conf']["dtype"] = 'fp32' + else: + with open(args.deepspeed_config, 'r') as fin: + ds_configs = json.load(fin) + if "fp16" in ds_configs and ds_configs["fp16"]["enabled"]: + configs['train_conf']["dtype"] = "fp16" + elif "bf16" in ds_configs and ds_configs["bf16"]["enabled"]: + configs['train_conf']["dtype"] = "bf16" + else: + configs['train_conf']["dtype"] = "fp32" + assert ds_configs["train_micro_batch_size_per_gpu"] == 1 + # if use deepspeed, override ddp config + configs['train_conf']['save_per_step'] = int(configs['train_conf']['save_per_step'] * + configs['train_conf']['accum_grad'] / ds_configs["gradient_accumulation_steps"]) + configs['train_conf']['accum_grad'] = ds_configs["gradient_accumulation_steps"] + configs['train_conf']['grad_clip'] = ds_configs["gradient_clipping"] + configs['train_conf']['log_interval'] = ds_configs["steps_per_print"] + return configs + + +def wrap_cuda_model(args, model): + local_world_size = int(os.environ.get('LOCAL_WORLD_SIZE', 1)) + world_size = int(os.environ.get('WORLD_SIZE', 1)) + if args.train_engine == "torch_ddp": # native pytorch ddp + assert (torch.cuda.is_available()) + model.cuda() + model = torch.nn.parallel.DistributedDataParallel(model, find_unused_parameters=True) + else: + if int(os.environ.get('RANK', 0)) == 0: + logging.info("Estimating model states memory needs (zero2)...") + estimate_zero2_model_states_mem_needs_all_live( + model, + num_gpus_per_node=local_world_size, + num_nodes=world_size // local_world_size) + return model + + +def init_optimizer_and_scheduler(args, configs, model, gan): + if gan is False: + if configs['train_conf']['optim'] == 'adam': + optimizer = optim.Adam(model.parameters(), **configs['train_conf']['optim_conf']) + elif configs['train_conf']['optim'] == 'adamw': + optimizer = optim.AdamW(model.parameters(), **configs['train_conf']['optim_conf']) + else: + raise ValueError("unknown optimizer: " + configs['train_conf']) + + if configs['train_conf']['scheduler'] == 'warmuplr': + scheduler_type = WarmupLR + scheduler = WarmupLR(optimizer, **configs['train_conf']['scheduler_conf']) + elif configs['train_conf']['scheduler'] == 'NoamHoldAnnealing': + scheduler_type = NoamHoldAnnealing + scheduler = NoamHoldAnnealing(optimizer, **configs['train_conf']['scheduler_conf']) + elif configs['train_conf']['scheduler'] == 'constantlr': + scheduler_type = ConstantLR + scheduler = ConstantLR(optimizer) + else: + raise ValueError("unknown scheduler: " + configs['train_conf']) + + # use deepspeed optimizer for speedup + if args.train_engine == "deepspeed": + def scheduler(opt): + return scheduler_type(opt, **configs['train_conf']['scheduler_conf']) + model, optimizer, _, scheduler = deepspeed.initialize( + args=args, + model=model, + optimizer=None, + lr_scheduler=scheduler, + model_parameters=model.parameters()) + + optimizer_d, scheduler_d = None, None + + else: + # currently we wrap generator and discriminator in one model, so we cannot use deepspeed + if configs['train_conf']['optim'] == 'adam': + optimizer = optim.Adam(model.module.generator.parameters(), **configs['train_conf']['optim_conf']) + elif configs['train_conf']['optim'] == 'adamw': + optimizer = optim.AdamW(model.module.generator.parameters(), **configs['train_conf']['optim_conf']) + else: + raise ValueError("unknown optimizer: " + configs['train_conf']) + + if configs['train_conf']['scheduler'] == 'warmuplr': + scheduler_type = WarmupLR + scheduler = WarmupLR(optimizer, **configs['train_conf']['scheduler_conf']) + elif configs['train_conf']['scheduler'] == 'NoamHoldAnnealing': + scheduler_type = NoamHoldAnnealing + scheduler = NoamHoldAnnealing(optimizer, **configs['train_conf']['scheduler_conf']) + elif configs['train_conf']['scheduler'] == 'constantlr': + scheduler_type = ConstantLR + scheduler = ConstantLR(optimizer) + else: + raise ValueError("unknown scheduler: " + configs['train_conf']) + + if configs['train_conf']['optim_d'] == 'adam': + optimizer_d = optim.Adam(model.module.discriminator.parameters(), **configs['train_conf']['optim_conf']) + elif configs['train_conf']['optim_d'] == 'adamw': + optimizer_d = optim.AdamW(model.module.discriminator.parameters(), **configs['train_conf']['optim_conf']) + else: + raise ValueError("unknown optimizer: " + configs['train_conf']) + + if configs['train_conf']['scheduler_d'] == 'warmuplr': + scheduler_type = WarmupLR + scheduler_d = WarmupLR(optimizer_d, **configs['train_conf']['scheduler_conf']) + elif configs['train_conf']['scheduler_d'] == 'NoamHoldAnnealing': + scheduler_type = NoamHoldAnnealing + scheduler_d = NoamHoldAnnealing(optimizer_d, **configs['train_conf']['scheduler_conf']) + elif configs['train_conf']['scheduler'] == 'constantlr': + scheduler_type = ConstantLR + scheduler_d = ConstantLR(optimizer_d) + else: + raise ValueError("unknown scheduler: " + configs['train_conf']) + return model, optimizer, scheduler, optimizer_d, scheduler_d + + +def init_summarywriter(args): + writer = None + if int(os.environ.get('RANK', 0)) == 0: + os.makedirs(args.model_dir, exist_ok=True) + writer = SummaryWriter(args.tensorboard_dir) + return writer + + +def save_model(model, model_name, info_dict): + rank = int(os.environ.get('RANK', 0)) + model_dir = info_dict["model_dir"] + save_model_path = os.path.join(model_dir, '{}.pt'.format(model_name)) + + if info_dict["train_engine"] == "torch_ddp": + if rank == 0: + torch.save({**model.module.state_dict(), 'epoch': info_dict['epoch'], 'step': info_dict['step']}, save_model_path) + else: + with torch.no_grad(): + model.save_checkpoint(save_dir=model_dir, + tag=model_name, + client_state=info_dict) + if rank == 0: + info_path = re.sub('.pt$', '.yaml', save_model_path) + info_dict['save_time'] = datetime.datetime.now().strftime('%d/%m/%Y %H:%M:%S') + with open(info_path, 'w') as fout: + data = yaml.dump(info_dict) + fout.write(data) + logging.info('[Rank {}] Checkpoint: save to checkpoint {}'.format(rank, save_model_path)) + + +def cosyvoice_join(group_join, info_dict): + world_size = int(os.environ.get('WORLD_SIZE', 1)) + local_rank = int(os.environ.get('LOCAL_RANK', 0)) + rank = int(os.environ.get('RANK', 0)) + + if info_dict["batch_idx"] != 0: + # we try to join all rank in both ddp and deepspeed mode, in case different rank has different lr + try: + dist.monitored_barrier(group=group_join, + timeout=group_join.options._timeout) + return False + except RuntimeError as e: + logging.info("Detected uneven workload distribution: {}\n".format(e) + + "Break current worker to manually join all workers, " + + "world_size {}, current rank {}, current local_rank {}\n". + format(world_size, rank, local_rank)) + return True + else: + return False + + +def batch_forward(model, batch, scaler, info_dict): + device = int(os.environ.get('LOCAL_RANK', 0)) + + dtype = info_dict["dtype"] + if dtype == "fp16": + dtype = torch.float16 + elif dtype == "bf16": + dtype = torch.bfloat16 + else: # fp32 + dtype = torch.float32 + + if info_dict['train_engine'] == 'torch_ddp': + autocast = torch.cuda.amp.autocast(enabled=scaler is not None) + else: + autocast = torch.cuda.amp.autocast(enabled=True, dtype=dtype, cache_enabled=False) + + with autocast: + info_dict['loss_dict'] = model(batch, device) + return info_dict + + +def batch_backward(model, scaler, info_dict): + if info_dict["train_engine"] == "deepspeed": + scaled_loss = model.backward(info_dict['loss_dict']['loss']) + else: + scaled_loss = info_dict['loss_dict']['loss'] / info_dict['accum_grad'] + if scaler is not None: + scaler.scale(scaled_loss).backward() + else: + scaled_loss.backward() + + info_dict['loss_dict']['loss'] = scaled_loss + return info_dict + + +def update_parameter_and_lr(model, optimizer, scheduler, scaler, info_dict): + grad_norm = 0.0 + if info_dict['train_engine'] == "deepspeed": + info_dict["is_gradient_accumulation_boundary"] = model.is_gradient_accumulation_boundary() + model.step() + grad_norm = model.get_global_grad_norm() + elif (info_dict['batch_idx'] + 1) % info_dict["accum_grad"] == 0: + # Use mixed precision training + if scaler is not None: + scaler.unscale_(optimizer) + grad_norm = clip_grad_norm_(model.parameters(), info_dict['grad_clip']) + # We don't check grad here since that if the gradient + # has inf/nan values, scaler.step will skip + # optimizer.step(). + if torch.isfinite(grad_norm): + scaler.step(optimizer) + scaler.update() + else: + grad_norm = clip_grad_norm_(model.parameters(), info_dict['grad_clip']) + if torch.isfinite(grad_norm): + optimizer.step() + optimizer.zero_grad() + scheduler.step() + info_dict["lr"] = optimizer.param_groups[0]['lr'] + info_dict["grad_norm"] = grad_norm + return info_dict + + +def log_per_step(writer, info_dict): + tag = info_dict["tag"] + epoch = info_dict.get('epoch', 0) + step = info_dict["step"] + batch_idx = info_dict["batch_idx"] + loss_dict = info_dict['loss_dict'] + rank = int(os.environ.get('RANK', 0)) + + # only rank 0 write to tensorboard to avoid multi-process write + if writer is not None: + if (info_dict['train_engine'] == 'deepspeed' and info_dict['is_gradient_accumulation_boundary'] is True) or \ + (info_dict['train_engine'] == 'torch_ddp' and (info_dict['batch_idx'] + 1) % info_dict['accum_grad'] == 0): + for k in ['epoch', 'lr', 'grad_norm']: + writer.add_scalar('{}/{}'.format(tag, k), info_dict[k], step + 1) + for k, v in loss_dict.items(): + writer.add_scalar('{}/{}'.format(tag, k), v, step + 1) + + # TRAIN & CV, Shell log (stdout) + if (info_dict['batch_idx'] + 1) % info_dict['log_interval'] == 0: + log_str = '{} Batch {}/{} '.format(tag, epoch, batch_idx + 1) + for name, value in loss_dict.items(): + log_str += '{} {:.6f} '.format(name, value) + if tag == "TRAIN": + log_str += 'lr {:.8f} grad_norm {:.6f}'.format( + info_dict["lr"], info_dict['grad_norm']) + log_str += ' rank {}'.format(rank) + logging.debug(log_str) + + +def log_per_save(writer, info_dict): + tag = info_dict["tag"] + epoch = info_dict["epoch"] + step = info_dict["step"] + loss_dict = info_dict["loss_dict"] + lr = info_dict['lr'] + rank = int(os.environ.get('RANK', 0)) + logging.info( + 'Epoch {} Step {} CV info lr {} {} rank {}'.format( + epoch, step + 1, lr, rank, ' '.join(['{}_{}'.format(k, v) for k, v in loss_dict.items()]))) + + if writer is not None: + for k in ['epoch', 'lr']: + writer.add_scalar('{}/{}'.format(tag, k), info_dict[k], step + 1) + for k, v in loss_dict.items(): + writer.add_scalar('{}/{}'.format(tag, k), v, step + 1) diff --git a/key.pem b/key.pem new file mode 100644 index 0000000000000000000000000000000000000000..bfd008e9426ced37e9d60106dee3190876f203cf --- /dev/null +++ b/key.pem @@ -0,0 +1,52 @@ +-----BEGIN PRIVATE KEY----- +MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQCqIcz91e1XQ8jI +H0TuPsc4f5lhT2qUFiSCK4Zx4/BkSfbYBVV3+9b3FDzKPv7fstK47qcN1sFiI+pC +T9ebeOscZi86CR2Sh1e3dWO1yU8jdYb0Qs3hs+sPxFV9MulPtMvZtRxtJL7Hy8Ai +mT8RDdtUXz7pBjd6jiKY2kbxOn8YPAwlEDfKhKY0PQ0Hoav4NAf8GRcCAdtPPfgX +qnrI2jop2Nvs+GIjK3iI9ncvFzOhufarkttaHtLuZ+klvNGsn/8gOgh6m5QhzX3Y +t7688TGpTY0+RBysULCxA3dp1kp3aD3lwpV3UqCKRNfh/OnVh2aczy3eqzn2vhQm +d00LGWy/qd63ntgCDCAe81sOfaChhPFLmW7cglViuobnzDrO9N2U/e1ngRKDgO9o +rVMAgagGpGDaFC72Ejrl2U9C7yTdWeGCzU5CVwwNLrzAAT20RV3xSuuxf3y5v74H +rOHYYaUDXksUrlxAu6zAOYQkEZNwXHHRIMaAXzWXDByqPAmgd8MWyu4p12W9yQ+L +BSuuB+VY3yRPImxc6CIYjyArgvtG80in3NPnXFDTGyrBOTN3rZktU3Dyrnm5PTk7 +vGFCYjTGIBCJ8O7wqtNOL+CDqkK9Gl/yxkZttUQf4jN6hSgkh0sOf2fqPbGf5MNw +HjZ8ea+XauDgLMMd0YUnDybXeqnrGQIDAQABAoICAEQ22z9nmAsmNYnv565y42QG +3VPECOKpYigDFZvynb9IXL3Ona9G/bEBn0IkMgM1awIVRkvpMI6OAe5mnvdKa1Ju +sj7dysqmk4gOfFU2CxIXnG2xn2UAw54FxZU2ZY+82QNId8ZXNltbmYUF1uCaordY +nRvHj1UHSl3pHwq3vp/T67asowIDX7SQSfomW5JgIld1I+F9JxbFrQSoKSUBQtLm +jX+dM5QQaPrZf34VGnGc44d1kZe3xjEq3rNv2s4RNLUSL7YhTSqkfvH28nZFavkM +DDbMDocUr1O6JRX9gswPssm91DoMmiv2YGzPAF7KNF1pQGYIV2xUWDX4HZ72qcAk +FYwHGX3MhaK+vPc21jPtwwsiaUiGH+7Rw7Sgt2+WbD/M9T31CYQPnuap+ByI9Wpx +GDAWnMKJ293BeYW/lEuWH0RcKpWK4PHyy5q5mPYhS8dh/gAIpA3jLa5AQQ0fp2ZP +iC3goOuCv4c6bnDOj/bW9VKcPuqjkwvE7qkWEXbGkdcuaBJODxMGCIycPfePxhlo +tIE3iRW9Ev8+LCM1CzZBZCFSPV6vGX5lIMj7gjQuD1CI1OBqmvw8AFXnzmq+T601 +5Rzl55o+0joFy/ATiKQLfP/juki4VI017pORm0KRpL+xaJzidIafA1Jm61/1vxDi +c2VsosVgYlfmVhdVHtwRAoIBAQDUZu1dslrvCV2EXiZMcN80+ulFPqpbeosDpUmd +vd2poJUU/2+bOw028ypatS7F8JJd9C26KCpGmITYk18vFpNoC5hMq+pL+IZqgZTK +91Mz2lz3XaHir68PhHVFajPsqKRi58JdcR2cH0ttArPRu1gfvdRNh8u+5cpEYz0B +KraH7Q38n66srt32Ln8Rflz8YdRn0Sb808IVeRTtCz5SBjAufBnvJpxirbcSlC4Q +0XPo35qjTLdEOnbNGDiS7NG798FdR8dp7YSORY4d+haIubnAeo4oi64QLK51GVcP +Dv9S+iGRadfQpJSNH73mhSyUqVg6uzWO6HFhqAHClKyExhFNAoIBAQDNDbbSaQ0q +KyxIu4RJQYCNQHxJrpMOGFZCxsia/3LAc0CvUBWg9+I5KR+srVL+hTz49PUUkKOm +oP1Q0ru6RLfBqTuc9ynrHdhj+yCPx/IKvnIkhlrCQmwcFjZyWLxoFPOLPSgfsTyr +w6S7Tcg7jMrEQbbDJ7l2oJILL5xvMQ2c8StXE7zMw9wt1oJI28yene/bqYiJkbvW +lEeEKMScz5tvMG0X00xukq3XZbJDIjIPw/ZZ2XUB1ZXwnYpEgZi7agXxoc/a0G+u +z6irJdcuhkeTXaYn2GFpKeZKc1qrY/6CNoK8hI17J2WKpqdfODS7U6xHKmSKHUC0 +Vfy3LoQ1TRr9AoIBAQCPSsT2Ah4wxxus8itaRIeA4Yk/6s/ZGSnxkq/AWFfTWP9a +hB0SF1uJ57B6M2NTrEHCWroCrZgfukNdLMb5KHzXo4LirtRI3mgoMDVmXEZoY/d1 +9lgBa05p5I2M/+H51afZBcttaKN2MPKcn0caxg3klBdHGsbMiY/UZTLBt8QenUFj +XYLlAq/BpoqZDavDpGg8hbCMvntgKyh/5qbrhTs6EQUZ/u1f8Rvhz8/oDrXos/lK +E7ZLtDlzkdSQ4m14JuPvfz476z4TET+YX6CWKt3yyXtgRSNvzAUCAM9n3FFJ9G9y +/3nWS0Hglzpw6wUxYbGhJa0zNQNQw5w0XkKo7Eq9AoIBAGExlu61DKBoRl1TRKjU +e3J4lnD2Zo3Py1NrlbqiSmoeNxLiCt55oKknbPQUU7qAvR3kPia5SFi7BldBC+qG +l/MbnD4SibQAOYlqh0yfoYKmMsRNSse5ZDUL8lLQ7L0I8UeWfWZIRFHGMlb1z2sq +mRHddBucwLQR+CeFMckinyk8xyZHHL6SN9MiUi7mwF6Ozhp4iVdr1HUpY5ypFkid +vzc85PjeFuRyciQe+BgKJWCDqkl8YZG1A5VBl0BRjWuIHbki0bsOAWIC3BgDn7NV +wqd/RDquvb1zNs0jUF7czs45uE5TJhyx19eYlszzf0srpgU1euJca0cPWvIZAmGh +YqECggEANSoPFa7jheazdMn+EC0QBe6srZJH7Boqlh3K49i5S8gDtNaiYPZJW7ON +7KbjWAarNPKkVYBNN+NBBH7w/RTGACnFyrc09p8KpHHfx+mq06+dX0Ef5l125um1 +tiaBAiU+coH8xGv2+XTT7r/gN0PtDo+eFat03uRbdO5rNyuwhne6+ge0niMRQu5S +uWj7b6Hg7XZJFfp4VJHCI8jccyaNGHxnw227YOnnYADacBnlFc+mWEj1KXH3KJq+ +uL491YrSTP6OlvYyUoYLu4MAlHAYPQYyzPY/60dpEomIdPP0KuI2hYYKz8lTLzaY +nuls6U8SjCl2wFXn61AztE0NjmJ6Cw== +-----END PRIVATE KEY----- diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..32acd53b6d1e8a64416e598295e2586ca7e2d585 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,39 @@ +--extra-index-url https://download.pytorch.org/whl/cu121 +--extra-index-url https://pypi.nvidia.com +--trusted-host download.pytorch.org +--trusted-host pypi.nvidia.com +audioseal==0.1.4 +conformer==0.3.2 +diffusers==0.27.2 +funasr==1.2.0 +gdown==5.1.0 +huggingface-hub==0.23.5 +hydra-core==1.3.2 +HyperPyYAML==1.2.2 +inflect==7.3.1 +librosa==0.10.2 +lightning==2.2.4 +matplotlib==3.7.5 +modelscope==1.17.1 +networkx==3.1 +omegaconf==2.3.0 +onnx==1.16.0 +onnxruntime-gpu==1.17.0 +onnxconverter_common==1.14.0 +openai-whisper==20231117 +protobuf==3.20.2 +pydantic==2.7.0 +rich==13.7.1 +soundfile==0.12.1 +tensorboard==2.14.0 +tensorrt-cu12==10.0.1 +tensorrt-cu12-bindings==10.0.1 +tensorrt-cu12-libs==10.0.1 +torch==2.3.1 +torchaudio==2.3.1 +transformers==4.40.1 +uvicorn==0.30.0 +wget==3.2 +fastapi==0.111.0 +fastapi-cli==0.0.4 +WeTextProcessing==1.0.3 \ No newline at end of file diff --git a/third_party/Matcha-TTS/.env.example b/third_party/Matcha-TTS/.env.example new file mode 100644 index 0000000000000000000000000000000000000000..a790e320464ebc778ca07f5bcd826a9c8412ed0e --- /dev/null +++ b/third_party/Matcha-TTS/.env.example @@ -0,0 +1,6 @@ +# example of file for storing private and user specific environment variables, like keys or system paths +# rename it to ".env" (excluded from version control by default) +# .env is loaded by train.py automatically +# hydra allows you to reference variables in .yaml configs with special syntax: ${oc.env:MY_VAR} + +MY_VAR="/home/user/my/system/path" diff --git a/third_party/Matcha-TTS/.github/PULL_REQUEST_TEMPLATE.md b/third_party/Matcha-TTS/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000000000000000000000000000000000000..410bcd87a45297ab8f0d369574a032858b6b1811 --- /dev/null +++ b/third_party/Matcha-TTS/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,22 @@ +## What does this PR do? + + + +Fixes #\ + +## Before submitting + +- [ ] Did you make sure **title is self-explanatory** and **the description concisely explains the PR**? +- [ ] Did you make sure your **PR does only one thing**, instead of bundling different changes together? +- [ ] Did you list all the **breaking changes** introduced by this pull request? +- [ ] Did you **test your PR locally** with `pytest` command? +- [ ] Did you **run pre-commit hooks** with `pre-commit run -a` command? + +## Did you have fun? + +Make sure you had fun coding 🙃 diff --git a/third_party/Matcha-TTS/.github/codecov.yml b/third_party/Matcha-TTS/.github/codecov.yml new file mode 100644 index 0000000000000000000000000000000000000000..c66853c4bd9991f730da5dda7dc9881986779558 --- /dev/null +++ b/third_party/Matcha-TTS/.github/codecov.yml @@ -0,0 +1,15 @@ +coverage: + status: + # measures overall project coverage + project: + default: + threshold: 100% # how much decrease in coverage is needed to not consider success + + # measures PR or single commit coverage + patch: + default: + threshold: 100% # how much decrease in coverage is needed to not consider success + + + # project: off + # patch: off diff --git a/third_party/Matcha-TTS/.github/dependabot.yml b/third_party/Matcha-TTS/.github/dependabot.yml new file mode 100644 index 0000000000000000000000000000000000000000..b19ccab12a3c573025ce6ba6d9068b062b29cc1b --- /dev/null +++ b/third_party/Matcha-TTS/.github/dependabot.yml @@ -0,0 +1,17 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "pip" # See documentation for possible values + directory: "/" # Location of package manifests + target-branch: "dev" + schedule: + interval: "daily" + ignore: + - dependency-name: "pytorch-lightning" + update-types: ["version-update:semver-patch"] + - dependency-name: "torchmetrics" + update-types: ["version-update:semver-patch"] diff --git a/third_party/Matcha-TTS/.github/release-drafter.yml b/third_party/Matcha-TTS/.github/release-drafter.yml new file mode 100644 index 0000000000000000000000000000000000000000..59af159f671abe75311eb626c8ec92ca6ea09d3c --- /dev/null +++ b/third_party/Matcha-TTS/.github/release-drafter.yml @@ -0,0 +1,44 @@ +name-template: "v$RESOLVED_VERSION" +tag-template: "v$RESOLVED_VERSION" + +categories: + - title: "🚀 Features" + labels: + - "feature" + - "enhancement" + - title: "🐛 Bug Fixes" + labels: + - "fix" + - "bugfix" + - "bug" + - title: "🧹 Maintenance" + labels: + - "maintenance" + - "dependencies" + - "refactoring" + - "cosmetic" + - "chore" + - title: "📝️ Documentation" + labels: + - "documentation" + - "docs" + +change-template: "- $TITLE @$AUTHOR (#$NUMBER)" +change-title-escapes: '\<*_&' # You can add # and @ to disable mentions + +version-resolver: + major: + labels: + - "major" + minor: + labels: + - "minor" + patch: + labels: + - "patch" + default: patch + +template: | + ## Changes + + $CHANGES diff --git a/third_party/Matcha-TTS/.gitignore b/third_party/Matcha-TTS/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..cbec8b43a0414bbbf4cc9feae49b9dc091a60c92 --- /dev/null +++ b/third_party/Matcha-TTS/.gitignore @@ -0,0 +1,163 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +.python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +### VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace +**/.vscode + +# JetBrains +.idea/ + +# Data & Models +*.h5 +*.tar +*.tar.gz + +# Lightning-Hydra-Template +configs/local/default.yaml +/data/ +/logs/ +.env + +# Aim logging +.aim + +# Cython complied files +matcha/utils/monotonic_align/core.c + +# Ignoring hifigan checkpoint +generator_v1 +g_02500000 +gradio_cached_examples/ +synth_output/ diff --git a/third_party/Matcha-TTS/.pre-commit-config.yaml b/third_party/Matcha-TTS/.pre-commit-config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e695f115eba12d84fe6f465c5d834dfa35c3d2ec --- /dev/null +++ b/third_party/Matcha-TTS/.pre-commit-config.yaml @@ -0,0 +1,59 @@ +default_language_version: + python: python3.10 + +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.5.0 + hooks: + # list of supported hooks: https://pre-commit.com/hooks.html + - id: trailing-whitespace + - id: end-of-file-fixer + # - id: check-docstring-first + - id: check-yaml + - id: debug-statements + - id: detect-private-key + - id: check-toml + - id: check-case-conflict + - id: check-added-large-files + + # python code formatting + - repo: https://github.com/psf/black + rev: 23.12.1 + hooks: + - id: black + args: [--line-length, "120"] + + # python import sorting + - repo: https://github.com/PyCQA/isort + rev: 5.13.2 + hooks: + - id: isort + args: ["--profile", "black", "--filter-files"] + + # python upgrading syntax to newer version + - repo: https://github.com/asottile/pyupgrade + rev: v3.15.0 + hooks: + - id: pyupgrade + args: [--py38-plus] + + # python check (PEP8), programming errors and code complexity + - repo: https://github.com/PyCQA/flake8 + rev: 7.0.0 + hooks: + - id: flake8 + args: + [ + "--max-line-length", "120", + "--extend-ignore", + "E203,E402,E501,F401,F841,RST2,RST301", + "--exclude", + "logs/*,data/*,matcha/hifigan/*", + ] + additional_dependencies: [flake8-rst-docstrings==0.3.0] + + # pylint + - repo: https://github.com/pycqa/pylint + rev: v3.0.3 + hooks: + - id: pylint diff --git a/third_party/Matcha-TTS/.project-root b/third_party/Matcha-TTS/.project-root new file mode 100644 index 0000000000000000000000000000000000000000..63eab774b9e36aa1a46cbd31b59cbd373bc5477f --- /dev/null +++ b/third_party/Matcha-TTS/.project-root @@ -0,0 +1,2 @@ +# this file is required for inferring the project root directory +# do not delete diff --git a/third_party/Matcha-TTS/.pylintrc b/third_party/Matcha-TTS/.pylintrc new file mode 100644 index 0000000000000000000000000000000000000000..962864189eab99a66b315b80f5a9976e7a423d4a --- /dev/null +++ b/third_party/Matcha-TTS/.pylintrc @@ -0,0 +1,525 @@ +[MASTER] + +# A comma-separated list of package or module names from where C extensions may +# be loaded. Extensions are loading into the active Python interpreter and may +# run arbitrary code. +extension-pkg-whitelist= + +# Add files or directories to the blacklist. They should be base names, not +# paths. +ignore=CVS + +# Add files or directories matching the regex patterns to the blacklist. The +# regex matches against base names, not paths. +ignore-patterns= + +# Python code to execute, usually for sys.path manipulation such as +# pygtk.require(). +#init-hook= + +# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the +# number of processors available to use. +jobs=1 + +# Control the amount of potential inferred values when inferring a single +# object. This can help the performance when dealing with large functions or +# complex, nested conditions. +limit-inference-results=100 + +# List of plugins (as comma separated values of python modules names) to load, +# usually to register additional checkers. +load-plugins= + +# Pickle collected data for later comparisons. +persistent=yes + +# Specify a configuration file. +#rcfile= + +# When enabled, pylint would attempt to guess common misconfiguration and emit +# user-friendly hints instead of false-positive error messages. +suggestion-mode=yes + +# Allow loading of arbitrary C extensions. Extensions are imported into the +# active Python interpreter and may run arbitrary code. +unsafe-load-any-extension=no + + +[MESSAGES CONTROL] + +# Only show warnings with the listed confidence levels. Leave empty to show +# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED. +confidence= + +# Disable the message, report, category or checker with the given id(s). You +# can either give multiple identifiers separated by comma (,) or put this +# option multiple times (only on the command line, not in the configuration +# file where it should appear only once). You can also use "--disable=all" to +# disable everything first and then reenable specific checks. For example, if +# you want to run only the similarities checker, you can use "--disable=all +# --enable=similarities". If you want to run only the classes checker, but have +# no Warning level messages displayed, use "--disable=all --enable=classes +# --disable=W". +disable=missing-docstring, + too-many-public-methods, + too-many-lines, + bare-except, + ## for avoiding weird p3.6 CI linter error + ## TODO: see later if we can remove this + assigning-non-slot, + unsupported-assignment-operation, + ## end + line-too-long, + fixme, + wrong-import-order, + ungrouped-imports, + wrong-import-position, + import-error, + invalid-name, + too-many-instance-attributes, + arguments-differ, + arguments-renamed, + no-name-in-module, + no-member, + unsubscriptable-object, + raw-checker-failed, + bad-inline-option, + locally-disabled, + file-ignored, + suppressed-message, + useless-suppression, + deprecated-pragma, + use-symbolic-message-instead, + useless-object-inheritance, + too-few-public-methods, + too-many-branches, + too-many-arguments, + too-many-locals, + too-many-statements, + duplicate-code, + not-callable, + import-outside-toplevel, + logging-fstring-interpolation, + logging-not-lazy, + unused-argument, + no-else-return, + chained-comparison, + redefined-outer-name + +# Enable the message, report, category or checker with the given id(s). You can +# either give multiple identifier separated by comma (,) or put this option +# multiple time (only on the command line, not in the configuration file where +# it should appear only once). See also the "--disable" option for examples. +enable=c-extension-no-member + + +[REPORTS] + +# Python expression which should return a note less than 10 (10 is the highest +# note). You have access to the variables errors warning, statement which +# respectively contain the number of errors / warnings messages and the total +# number of statements analyzed. This is used by the global evaluation report +# (RP0004). +evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) + +# Template used to display messages. This is a python new-style format string +# used to format the message information. See doc for all details. +#msg-template= + +# Set the output format. Available formats are text, parseable, colorized, json +# and msvs (visual studio). You can also give a reporter class, e.g. +# mypackage.mymodule.MyReporterClass. +output-format=text + +# Tells whether to display a full report or only the messages. +reports=no + +# Activate the evaluation score. +score=yes + + +[REFACTORING] + +# Maximum number of nested blocks for function / method body +max-nested-blocks=5 + +# Complete name of functions that never returns. When checking for +# inconsistent-return-statements if a never returning function is called then +# it will be considered as an explicit return statement and no message will be +# printed. +never-returning-functions=sys.exit + + +[LOGGING] + +# Format style used to check logging format string. `old` means using % +# formatting, while `new` is for `{}` formatting. +logging-format-style=old + +# Logging modules to check that the string format arguments are in logging +# function parameter format. +logging-modules=logging + + +[SPELLING] + +# Limits count of emitted suggestions for spelling mistakes. +max-spelling-suggestions=4 + +# Spelling dictionary name. Available dictionaries: none. To make it working +# install python-enchant package.. +spelling-dict= + +# List of comma separated words that should not be checked. +spelling-ignore-words= + +# A path to a file that contains private dictionary; one word per line. +spelling-private-dict-file= + +# Tells whether to store unknown words to indicated private dictionary in +# --spelling-private-dict-file option instead of raising a message. +spelling-store-unknown-words=no + + +[MISCELLANEOUS] + +# List of note tags to take in consideration, separated by a comma. +notes=FIXME, + XXX, + TODO + + +[TYPECHECK] + +# List of decorators that produce context managers, such as +# contextlib.contextmanager. Add to this list to register other decorators that +# produce valid context managers. +contextmanager-decorators=contextlib.contextmanager + +# List of members which are set dynamically and missed by pylint inference +# system, and so shouldn't trigger E1101 when accessed. Python regular +# expressions are accepted. +generated-members=numpy.*,torch.* + +# Tells whether missing members accessed in mixin class should be ignored. A +# mixin class is detected if its name ends with "mixin" (case insensitive). +ignore-mixin-members=yes + +# Tells whether to warn about missing members when the owner of the attribute +# is inferred to be None. +ignore-none=yes + +# This flag controls whether pylint should warn about no-member and similar +# checks whenever an opaque object is returned when inferring. The inference +# can return multiple potential results while evaluating a Python object, but +# some branches might not be evaluated, which results in partial inference. In +# that case, it might be useful to still emit no-member and other checks for +# the rest of the inferred objects. +ignore-on-opaque-inference=yes + +# List of class names for which member attributes should not be checked (useful +# for classes with dynamically set attributes). This supports the use of +# qualified names. +ignored-classes=optparse.Values,thread._local,_thread._local + +# List of module names for which member attributes should not be checked +# (useful for modules/projects where namespaces are manipulated during runtime +# and thus existing member attributes cannot be deduced by static analysis. It +# supports qualified module names, as well as Unix pattern matching. +ignored-modules= + +# Show a hint with possible names when a member name was not found. The aspect +# of finding the hint is based on edit distance. +missing-member-hint=yes + +# The minimum edit distance a name should have in order to be considered a +# similar match for a missing member name. +missing-member-hint-distance=1 + +# The total number of similar names that should be taken in consideration when +# showing a hint for a missing member. +missing-member-max-choices=1 + + +[VARIABLES] + +# List of additional names supposed to be defined in builtins. Remember that +# you should avoid defining new builtins when possible. +additional-builtins= + +# Tells whether unused global variables should be treated as a violation. +allow-global-unused-variables=yes + +# List of strings which can identify a callback function by name. A callback +# name must start or end with one of those strings. +callbacks=cb_, + _cb + +# A regular expression matching the name of dummy variables (i.e. expected to +# not be used). +dummy-variables-rgx=_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_ + +# Argument names that match this expression will be ignored. Default to name +# with leading underscore. +ignored-argument-names=_.*|^ignored_|^unused_ + +# Tells whether we should check for unused import in __init__ files. +init-import=no + +# List of qualified module names which can have objects that can redefine +# builtins. +redefining-builtins-modules=six.moves,past.builtins,future.builtins,builtins,io + + +[FORMAT] + +# Expected format of line ending, e.g. empty (any line ending), LF or CRLF. +expected-line-ending-format= + +# Regexp for a line that is allowed to be longer than the limit. +ignore-long-lines=^\s*(# )??$ + +# Number of spaces of indent required inside a hanging or continued line. +indent-after-paren=4 + +# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 +# tab). +indent-string=' ' + +# Maximum number of characters on a single line. +max-line-length=120 + +# Maximum number of lines in a module. +max-module-lines=1000 + +# Allow the body of a class to be on the same line as the declaration if body +# contains single statement. +single-line-class-stmt=no + +# Allow the body of an if to be on the same line as the test if there is no +# else. +single-line-if-stmt=no + + +[SIMILARITIES] + +# Ignore comments when computing similarities. +ignore-comments=yes + +# Ignore docstrings when computing similarities. +ignore-docstrings=yes + +# Ignore imports when computing similarities. +ignore-imports=no + +# Minimum lines number of a similarity. +min-similarity-lines=4 + + +[BASIC] + +# Naming style matching correct argument names. +argument-naming-style=snake_case + +# Regular expression matching correct argument names. Overrides argument- +# naming-style. +argument-rgx=[a-z_][a-z0-9_]{0,30}$ + +# Naming style matching correct attribute names. +attr-naming-style=snake_case + +# Regular expression matching correct attribute names. Overrides attr-naming- +# style. +#attr-rgx= + +# Bad variable names which should always be refused, separated by a comma. +bad-names= + +# Naming style matching correct class attribute names. +class-attribute-naming-style=any + +# Regular expression matching correct class attribute names. Overrides class- +# attribute-naming-style. +#class-attribute-rgx= + +# Naming style matching correct class names. +class-naming-style=PascalCase + +# Regular expression matching correct class names. Overrides class-naming- +# style. +#class-rgx= + +# Naming style matching correct constant names. +const-naming-style=UPPER_CASE + +# Regular expression matching correct constant names. Overrides const-naming- +# style. +#const-rgx= + +# Minimum line length for functions/classes that require docstrings, shorter +# ones are exempt. +docstring-min-length=-1 + +# Naming style matching correct function names. +function-naming-style=snake_case + +# Regular expression matching correct function names. Overrides function- +# naming-style. +#function-rgx= + +# Good variable names which should always be accepted, separated by a comma. +good-names=i, + j, + k, + x, + ex, + Run, + _ + +# Include a hint for the correct naming format with invalid-name. +include-naming-hint=no + +# Naming style matching correct inline iteration names. +inlinevar-naming-style=any + +# Regular expression matching correct inline iteration names. Overrides +# inlinevar-naming-style. +#inlinevar-rgx= + +# Naming style matching correct method names. +method-naming-style=snake_case + +# Regular expression matching correct method names. Overrides method-naming- +# style. +#method-rgx= + +# Naming style matching correct module names. +module-naming-style=snake_case + +# Regular expression matching correct module names. Overrides module-naming- +# style. +#module-rgx= + +# Colon-delimited sets of names that determine each other's naming style when +# the name regexes allow several styles. +name-group= + +# Regular expression which should only match function or class names that do +# not require a docstring. +no-docstring-rgx=^_ + +# List of decorators that produce properties, such as abc.abstractproperty. Add +# to this list to register other decorators that produce valid properties. +# These decorators are taken in consideration only for invalid-name. +property-classes=abc.abstractproperty + +# Naming style matching correct variable names. +variable-naming-style=snake_case + +# Regular expression matching correct variable names. Overrides variable- +# naming-style. +variable-rgx=[a-z_][a-z0-9_]{0,30}$ + + +[STRING] + +# This flag controls whether the implicit-str-concat-in-sequence should +# generate a warning on implicit string concatenation in sequences defined over +# several lines. +check-str-concat-over-line-jumps=no + + +[IMPORTS] + +# Allow wildcard imports from modules that define __all__. +allow-wildcard-with-all=no + +# Analyse import fallback blocks. This can be used to support both Python 2 and +# 3 compatible code, which means that the block might have code that exists +# only in one or another interpreter, leading to false positives when analysed. +analyse-fallback-blocks=no + +# Deprecated modules which should not be used, separated by a comma. +deprecated-modules=optparse,tkinter.tix + +# Create a graph of external dependencies in the given file (report RP0402 must +# not be disabled). +ext-import-graph= + +# Create a graph of every (i.e. internal and external) dependencies in the +# given file (report RP0402 must not be disabled). +import-graph= + +# Create a graph of internal dependencies in the given file (report RP0402 must +# not be disabled). +int-import-graph= + +# Force import order to recognize a module as part of the standard +# compatibility libraries. +known-standard-library= + +# Force import order to recognize a module as part of a third party library. +known-third-party=enchant + + +[CLASSES] + +# List of method names used to declare (i.e. assign) instance attributes. +defining-attr-methods=__init__, + __new__, + setUp + +# List of member names, which should be excluded from the protected access +# warning. +exclude-protected=_asdict, + _fields, + _replace, + _source, + _make + +# List of valid names for the first argument in a class method. +valid-classmethod-first-arg=cls + +# List of valid names for the first argument in a metaclass class method. +valid-metaclass-classmethod-first-arg=cls + + +[DESIGN] + +# Maximum number of arguments for function / method. +max-args=5 + +# Maximum number of attributes for a class (see R0902). +max-attributes=7 + +# Maximum number of boolean expressions in an if statement. +max-bool-expr=5 + +# Maximum number of branch for function / method body. +max-branches=12 + +# Maximum number of locals for function / method body. +max-locals=15 + +# Maximum number of parents for a class (see R0901). +max-parents=15 + +# Maximum number of public methods for a class (see R0904). +max-public-methods=20 + +# Maximum number of return / yield for function / method body. +max-returns=6 + +# Maximum number of statements in function / method body. +max-statements=50 + +# Minimum number of public methods for a class (see R0903). +min-public-methods=2 + + +[EXCEPTIONS] + +# Exceptions that will emit a warning when being caught. Defaults to +# "BaseException, Exception". +overgeneral-exceptions=builtins.BaseException, + builtins.Exception diff --git a/third_party/Matcha-TTS/LICENSE b/third_party/Matcha-TTS/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..858018e750da7be7b271bb7307e68d159ed67ef6 --- /dev/null +++ b/third_party/Matcha-TTS/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Shivam Mehta + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/third_party/Matcha-TTS/MANIFEST.in b/third_party/Matcha-TTS/MANIFEST.in new file mode 100644 index 0000000000000000000000000000000000000000..c013140cdfb9de19c4d4e73c73a44e33f33fa871 --- /dev/null +++ b/third_party/Matcha-TTS/MANIFEST.in @@ -0,0 +1,14 @@ +include README.md +include LICENSE.txt +include requirements.*.txt +include *.cff +include requirements.txt +include matcha/VERSION +recursive-include matcha *.json +recursive-include matcha *.html +recursive-include matcha *.png +recursive-include matcha *.md +recursive-include matcha *.py +recursive-include matcha *.pyx +recursive-exclude tests * +prune tests* diff --git a/third_party/Matcha-TTS/Makefile b/third_party/Matcha-TTS/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..4b523dd17b13a19617c9cc9d9dad7f7d8d4c24a0 --- /dev/null +++ b/third_party/Matcha-TTS/Makefile @@ -0,0 +1,42 @@ + +help: ## Show help + @grep -E '^[.a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' + +clean: ## Clean autogenerated files + rm -rf dist + find . -type f -name "*.DS_Store" -ls -delete + find . | grep -E "(__pycache__|\.pyc|\.pyo)" | xargs rm -rf + find . | grep -E ".pytest_cache" | xargs rm -rf + find . | grep -E ".ipynb_checkpoints" | xargs rm -rf + rm -f .coverage + +clean-logs: ## Clean logs + rm -rf logs/** + +create-package: ## Create wheel and tar gz + rm -rf dist/ + python setup.py bdist_wheel --plat-name=manylinux1_x86_64 + python setup.py sdist + python -m twine upload dist/* --verbose --skip-existing + +format: ## Run pre-commit hooks + pre-commit run -a + +sync: ## Merge changes from main branch to your current branch + git pull + git pull origin main + +test: ## Run not slow tests + pytest -k "not slow" + +test-full: ## Run all tests + pytest + +train-ljspeech: ## Train the model + python matcha/train.py experiment=ljspeech + +train-ljspeech-min: ## Train the model with minimum memory + python matcha/train.py experiment=ljspeech_min_memory + +start_app: ## Start the app + python matcha/app.py diff --git a/third_party/Matcha-TTS/README.md b/third_party/Matcha-TTS/README.md new file mode 100644 index 0000000000000000000000000000000000000000..ebc6b7c0a76d30c33bf95583d629825c02183e31 --- /dev/null +++ b/third_party/Matcha-TTS/README.md @@ -0,0 +1,278 @@ +
+ +# 🍵 Matcha-TTS: A fast TTS architecture with conditional flow matching + +### [Shivam Mehta](https://www.kth.se/profile/smehta), [Ruibo Tu](https://www.kth.se/profile/ruibo), [Jonas Beskow](https://www.kth.se/profile/beskow), [Éva Székely](https://www.kth.se/profile/szekely), and [Gustav Eje Henter](https://people.kth.se/~ghe/) + +[![python](https://img.shields.io/badge/-Python_3.10-blue?logo=python&logoColor=white)](https://www.python.org/downloads/release/python-3100/) +[![pytorch](https://img.shields.io/badge/PyTorch_2.0+-ee4c2c?logo=pytorch&logoColor=white)](https://pytorch.org/get-started/locally/) +[![lightning](https://img.shields.io/badge/-Lightning_2.0+-792ee5?logo=pytorchlightning&logoColor=white)](https://pytorchlightning.ai/) +[![hydra](https://img.shields.io/badge/Config-Hydra_1.3-89b8cd)](https://hydra.cc/) +[![black](https://img.shields.io/badge/Code%20Style-Black-black.svg?labelColor=gray)](https://black.readthedocs.io/en/stable/) +[![isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/) + +

+ +

+ +
+ +> This is the official code implementation of 🍵 Matcha-TTS [ICASSP 2024]. + +We propose 🍵 Matcha-TTS, a new approach to non-autoregressive neural TTS, that uses [conditional flow matching](https://arxiv.org/abs/2210.02747) (similar to [rectified flows](https://arxiv.org/abs/2209.03003)) to speed up ODE-based speech synthesis. Our method: + +- Is probabilistic +- Has compact memory footprint +- Sounds highly natural +- Is very fast to synthesise from + +Check out our [demo page](https://shivammehta25.github.io/Matcha-TTS) and read [our ICASSP 2024 paper](https://arxiv.org/abs/2309.03199) for more details. + +[Pre-trained models](https://drive.google.com/drive/folders/17C_gYgEHOxI5ZypcfE_k1piKCtyR0isJ?usp=sharing) will be automatically downloaded with the CLI or gradio interface. + +You can also [try 🍵 Matcha-TTS in your browser on HuggingFace 🤗 spaces](https://huggingface.co/spaces/shivammehta25/Matcha-TTS). + +## Teaser video + +[![Watch the video](https://img.youtube.com/vi/xmvJkz3bqw0/hqdefault.jpg)](https://youtu.be/xmvJkz3bqw0) + +## Installation + +1. Create an environment (suggested but optional) + +``` +conda create -n matcha-tts python=3.10 -y +conda activate matcha-tts +``` + +2. Install Matcha TTS using pip or from source + +```bash +pip install matcha-tts +``` + +from source + +```bash +pip install git+https://github.com/shivammehta25/Matcha-TTS.git +cd Matcha-TTS +pip install -e . +``` + +3. Run CLI / gradio app / jupyter notebook + +```bash +# This will download the required models +matcha-tts --text "" +``` + +or + +```bash +matcha-tts-app +``` + +or open `synthesis.ipynb` on jupyter notebook + +### CLI Arguments + +- To synthesise from given text, run: + +```bash +matcha-tts --text "" +``` + +- To synthesise from a file, run: + +```bash +matcha-tts --file +``` + +- To batch synthesise from a file, run: + +```bash +matcha-tts --file --batched +``` + +Additional arguments + +- Speaking rate + +```bash +matcha-tts --text "" --speaking_rate 1.0 +``` + +- Sampling temperature + +```bash +matcha-tts --text "" --temperature 0.667 +``` + +- Euler ODE solver steps + +```bash +matcha-tts --text "" --steps 10 +``` + +## Train with your own dataset + +Let's assume we are training with LJ Speech + +1. Download the dataset from [here](https://keithito.com/LJ-Speech-Dataset/), extract it to `data/LJSpeech-1.1`, and prepare the file lists to point to the extracted data like for [item 5 in the setup of the NVIDIA Tacotron 2 repo](https://github.com/NVIDIA/tacotron2#setup). + +2. Clone and enter the Matcha-TTS repository + +```bash +git clone https://github.com/shivammehta25/Matcha-TTS.git +cd Matcha-TTS +``` + +3. Install the package from source + +```bash +pip install -e . +``` + +4. Go to `configs/data/ljspeech.yaml` and change + +```yaml +train_filelist_path: data/filelists/ljs_audio_text_train_filelist.txt +valid_filelist_path: data/filelists/ljs_audio_text_val_filelist.txt +``` + +5. Generate normalisation statistics with the yaml file of dataset configuration + +```bash +matcha-data-stats -i ljspeech.yaml +# Output: +#{'mel_mean': -5.53662231756592, 'mel_std': 2.1161014277038574} +``` + +Update these values in `configs/data/ljspeech.yaml` under `data_statistics` key. + +```bash +data_statistics: # Computed for ljspeech dataset + mel_mean: -5.536622 + mel_std: 2.116101 +``` + +to the paths of your train and validation filelists. + +6. Run the training script + +```bash +make train-ljspeech +``` + +or + +```bash +python matcha/train.py experiment=ljspeech +``` + +- for a minimum memory run + +```bash +python matcha/train.py experiment=ljspeech_min_memory +``` + +- for multi-gpu training, run + +```bash +python matcha/train.py experiment=ljspeech trainer.devices=[0,1] +``` + +7. Synthesise from the custom trained model + +```bash +matcha-tts --text "" --checkpoint_path +``` + +## ONNX support + +> Special thanks to [@mush42](https://github.com/mush42) for implementing ONNX export and inference support. + +It is possible to export Matcha checkpoints to [ONNX](https://onnx.ai/), and run inference on the exported ONNX graph. + +### ONNX export + +To export a checkpoint to ONNX, first install ONNX with + +```bash +pip install onnx +``` + +then run the following: + +```bash +python3 -m matcha.onnx.export matcha.ckpt model.onnx --n-timesteps 5 +``` + +Optionally, the ONNX exporter accepts **vocoder-name** and **vocoder-checkpoint** arguments. This enables you to embed the vocoder in the exported graph and generate waveforms in a single run (similar to end-to-end TTS systems). + +**Note** that `n_timesteps` is treated as a hyper-parameter rather than a model input. This means you should specify it during export (not during inference). If not specified, `n_timesteps` is set to **5**. + +**Important**: for now, torch>=2.1.0 is needed for export since the `scaled_product_attention` operator is not exportable in older versions. Until the final version is released, those who want to export their models must install torch>=2.1.0 manually as a pre-release. + +### ONNX Inference + +To run inference on the exported model, first install `onnxruntime` using + +```bash +pip install onnxruntime +pip install onnxruntime-gpu # for GPU inference +``` + +then use the following: + +```bash +python3 -m matcha.onnx.infer model.onnx --text "hey" --output-dir ./outputs +``` + +You can also control synthesis parameters: + +```bash +python3 -m matcha.onnx.infer model.onnx --text "hey" --output-dir ./outputs --temperature 0.4 --speaking_rate 0.9 --spk 0 +``` + +To run inference on **GPU**, make sure to install **onnxruntime-gpu** package, and then pass `--gpu` to the inference command: + +```bash +python3 -m matcha.onnx.infer model.onnx --text "hey" --output-dir ./outputs --gpu +``` + +If you exported only Matcha to ONNX, this will write mel-spectrogram as graphs and `numpy` arrays to the output directory. +If you embedded the vocoder in the exported graph, this will write `.wav` audio files to the output directory. + +If you exported only Matcha to ONNX, and you want to run a full TTS pipeline, you can pass a path to a vocoder model in `ONNX` format: + +```bash +python3 -m matcha.onnx.infer model.onnx --text "hey" --output-dir ./outputs --vocoder hifigan.small.onnx +``` + +This will write `.wav` audio files to the output directory. + +## Citation information + +If you use our code or otherwise find this work useful, please cite our paper: + +```text +@inproceedings{mehta2024matcha, + title={Matcha-{TTS}: A fast {TTS} architecture with conditional flow matching}, + author={Mehta, Shivam and Tu, Ruibo and Beskow, Jonas and Sz{\'e}kely, {\'E}va and Henter, Gustav Eje}, + booktitle={Proc. ICASSP}, + year={2024} +} +``` + +## Acknowledgements + +Since this code uses [Lightning-Hydra-Template](https://github.com/ashleve/lightning-hydra-template), you have all the powers that come with it. + +Other source code we would like to acknowledge: + +- [Coqui-TTS](https://github.com/coqui-ai/TTS/tree/dev): For helping me figure out how to make cython binaries pip installable and encouragement +- [Hugging Face Diffusers](https://huggingface.co/): For their awesome diffusers library and its components +- [Grad-TTS](https://github.com/huawei-noah/Speech-Backbones/tree/main/Grad-TTS): For the monotonic alignment search source code +- [torchdyn](https://github.com/DiffEqML/torchdyn): Useful for trying other ODE solvers during research and development +- [labml.ai](https://nn.labml.ai/transformers/rope/index.html): For the RoPE implementation diff --git a/third_party/Matcha-TTS/configs/__init__.py b/third_party/Matcha-TTS/configs/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..56bf7f4aa4906bc0f997132708cc0826c198e4aa --- /dev/null +++ b/third_party/Matcha-TTS/configs/__init__.py @@ -0,0 +1 @@ +# this file is needed here to include configs when building project as a package diff --git a/third_party/Matcha-TTS/configs/callbacks/default.yaml b/third_party/Matcha-TTS/configs/callbacks/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ebaa3ed31a7f626bc62f90184dc4b25b631e52a9 --- /dev/null +++ b/third_party/Matcha-TTS/configs/callbacks/default.yaml @@ -0,0 +1,5 @@ +defaults: + - model_checkpoint.yaml + - model_summary.yaml + - rich_progress_bar.yaml + - _self_ diff --git a/third_party/Matcha-TTS/configs/callbacks/model_checkpoint.yaml b/third_party/Matcha-TTS/configs/callbacks/model_checkpoint.yaml new file mode 100644 index 0000000000000000000000000000000000000000..3d085c711a8521b6b98ad6401b686bb601ceacd6 --- /dev/null +++ b/third_party/Matcha-TTS/configs/callbacks/model_checkpoint.yaml @@ -0,0 +1,17 @@ +# https://lightning.ai/docs/pytorch/stable/api/lightning.pytorch.callbacks.ModelCheckpoint.html + +model_checkpoint: + _target_: lightning.pytorch.callbacks.ModelCheckpoint + dirpath: ${paths.output_dir}/checkpoints # directory to save the model file + filename: checkpoint_{epoch:03d} # checkpoint filename + monitor: epoch # name of the logged metric which determines when model is improving + verbose: False # verbosity mode + save_last: true # additionally always save an exact copy of the last checkpoint to a file last.ckpt + save_top_k: 10 # save k best models (determined by above metric) + mode: "max" # "max" means higher metric value is better, can be also "min" + auto_insert_metric_name: True # when True, the checkpoints filenames will contain the metric name + save_weights_only: False # if True, then only the model’s weights will be saved + every_n_train_steps: null # number of training steps between checkpoints + train_time_interval: null # checkpoints are monitored at the specified time interval + every_n_epochs: 100 # number of epochs between checkpoints + save_on_train_epoch_end: null # whether to run checkpointing at the end of the training epoch or the end of validation diff --git a/third_party/Matcha-TTS/configs/callbacks/model_summary.yaml b/third_party/Matcha-TTS/configs/callbacks/model_summary.yaml new file mode 100644 index 0000000000000000000000000000000000000000..6e5368d0e94298cce6d5421365b4583bd763ba92 --- /dev/null +++ b/third_party/Matcha-TTS/configs/callbacks/model_summary.yaml @@ -0,0 +1,5 @@ +# https://lightning.ai/docs/pytorch/stable/api/lightning.pytorch.callbacks.RichModelSummary.html + +model_summary: + _target_: lightning.pytorch.callbacks.RichModelSummary + max_depth: 3 # the maximum depth of layer nesting that the summary will include diff --git a/third_party/Matcha-TTS/configs/callbacks/none.yaml b/third_party/Matcha-TTS/configs/callbacks/none.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/configs/callbacks/rich_progress_bar.yaml b/third_party/Matcha-TTS/configs/callbacks/rich_progress_bar.yaml new file mode 100644 index 0000000000000000000000000000000000000000..de6f1ccb11205a4db93645fb6f297e50205de172 --- /dev/null +++ b/third_party/Matcha-TTS/configs/callbacks/rich_progress_bar.yaml @@ -0,0 +1,4 @@ +# https://lightning.ai/docs/pytorch/latest/api/lightning.pytorch.callbacks.RichProgressBar.html + +rich_progress_bar: + _target_: lightning.pytorch.callbacks.RichProgressBar diff --git a/third_party/Matcha-TTS/configs/data/hi-fi_en-US_female.yaml b/third_party/Matcha-TTS/configs/data/hi-fi_en-US_female.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1269f9b3b421d27a204bb0697e2f27a0fa0864a3 --- /dev/null +++ b/third_party/Matcha-TTS/configs/data/hi-fi_en-US_female.yaml @@ -0,0 +1,14 @@ +defaults: + - ljspeech + - _self_ + +# Dataset URL: https://ast-astrec.nict.go.jp/en/release/hi-fi-captain/ +_target_: matcha.data.text_mel_datamodule.TextMelDataModule +name: hi-fi_en-US_female +train_filelist_path: data/filelists/hi-fi-captain-en-us-female_train.txt +valid_filelist_path: data/filelists/hi-fi-captain-en-us-female_val.txt +batch_size: 32 +cleaners: [english_cleaners_piper] +data_statistics: # Computed for this dataset + mel_mean: -6.38385 + mel_std: 2.541796 diff --git a/third_party/Matcha-TTS/configs/data/ljspeech.yaml b/third_party/Matcha-TTS/configs/data/ljspeech.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f251420c3caadd9b27a0b01ad28ee37b5eec1440 --- /dev/null +++ b/third_party/Matcha-TTS/configs/data/ljspeech.yaml @@ -0,0 +1,21 @@ +_target_: matcha.data.text_mel_datamodule.TextMelDataModule +name: ljspeech +train_filelist_path: data/filelists/ljs_audio_text_train_filelist.txt +valid_filelist_path: data/filelists/ljs_audio_text_val_filelist.txt +batch_size: 32 +num_workers: 20 +pin_memory: True +cleaners: [english_cleaners2] +add_blank: True +n_spks: 1 +n_fft: 1024 +n_feats: 80 +sample_rate: 22050 +hop_length: 256 +win_length: 1024 +f_min: 0 +f_max: 8000 +data_statistics: # Computed for ljspeech dataset + mel_mean: -5.536622 + mel_std: 2.116101 +seed: ${seed} diff --git a/third_party/Matcha-TTS/configs/data/vctk.yaml b/third_party/Matcha-TTS/configs/data/vctk.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ba11cc63371ad6308d6711513268de7efe50eed9 --- /dev/null +++ b/third_party/Matcha-TTS/configs/data/vctk.yaml @@ -0,0 +1,14 @@ +defaults: + - ljspeech + - _self_ + +_target_: matcha.data.text_mel_datamodule.TextMelDataModule +name: vctk +train_filelist_path: data/filelists/vctk_audio_sid_text_train_filelist.txt +valid_filelist_path: data/filelists/vctk_audio_sid_text_val_filelist.txt +batch_size: 32 +add_blank: True +n_spks: 109 +data_statistics: # Computed for vctk dataset + mel_mean: -6.630575 + mel_std: 2.482914 diff --git a/third_party/Matcha-TTS/configs/debug/default.yaml b/third_party/Matcha-TTS/configs/debug/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e3932c82585fbe44047c1569a5cfe9ee9895c71a --- /dev/null +++ b/third_party/Matcha-TTS/configs/debug/default.yaml @@ -0,0 +1,35 @@ +# @package _global_ + +# default debugging setup, runs 1 full epoch +# other debugging configs can inherit from this one + +# overwrite task name so debugging logs are stored in separate folder +task_name: "debug" + +# disable callbacks and loggers during debugging +# callbacks: null +# logger: null + +extras: + ignore_warnings: False + enforce_tags: False + +# sets level of all command line loggers to 'DEBUG' +# https://hydra.cc/docs/tutorials/basic/running_your_app/logging/ +hydra: + job_logging: + root: + level: DEBUG + + # use this to also set hydra loggers to 'DEBUG' + # verbose: True + +trainer: + max_epochs: 1 + accelerator: cpu # debuggers don't like gpus + devices: 1 # debuggers don't like multiprocessing + detect_anomaly: true # raise exception if NaN or +/-inf is detected in any tensor + +data: + num_workers: 0 # debuggers don't like multiprocessing + pin_memory: False # disable gpu memory pin diff --git a/third_party/Matcha-TTS/configs/debug/fdr.yaml b/third_party/Matcha-TTS/configs/debug/fdr.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7f2d34fa37c31017e749d5a4fc5ae6763e688b46 --- /dev/null +++ b/third_party/Matcha-TTS/configs/debug/fdr.yaml @@ -0,0 +1,9 @@ +# @package _global_ + +# runs 1 train, 1 validation and 1 test step + +defaults: + - default + +trainer: + fast_dev_run: true diff --git a/third_party/Matcha-TTS/configs/debug/limit.yaml b/third_party/Matcha-TTS/configs/debug/limit.yaml new file mode 100644 index 0000000000000000000000000000000000000000..514d77fbd1475b03fff0372e3da3c2fa7ea7d190 --- /dev/null +++ b/third_party/Matcha-TTS/configs/debug/limit.yaml @@ -0,0 +1,12 @@ +# @package _global_ + +# uses only 1% of the training data and 5% of validation/test data + +defaults: + - default + +trainer: + max_epochs: 3 + limit_train_batches: 0.01 + limit_val_batches: 0.05 + limit_test_batches: 0.05 diff --git a/third_party/Matcha-TTS/configs/debug/overfit.yaml b/third_party/Matcha-TTS/configs/debug/overfit.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9906586a67a12aa81ff69138f589a366dbe2222f --- /dev/null +++ b/third_party/Matcha-TTS/configs/debug/overfit.yaml @@ -0,0 +1,13 @@ +# @package _global_ + +# overfits to 3 batches + +defaults: + - default + +trainer: + max_epochs: 20 + overfit_batches: 3 + +# model ckpt and early stopping need to be disabled during overfitting +callbacks: null diff --git a/third_party/Matcha-TTS/configs/debug/profiler.yaml b/third_party/Matcha-TTS/configs/debug/profiler.yaml new file mode 100644 index 0000000000000000000000000000000000000000..266295f15e0166e1d1b58b88caa7673f4b6493b5 --- /dev/null +++ b/third_party/Matcha-TTS/configs/debug/profiler.yaml @@ -0,0 +1,15 @@ +# @package _global_ + +# runs with execution time profiling + +defaults: + - default + +trainer: + max_epochs: 1 + # profiler: "simple" + profiler: "advanced" + # profiler: "pytorch" + accelerator: gpu + + limit_train_batches: 0.02 diff --git a/third_party/Matcha-TTS/configs/eval.yaml b/third_party/Matcha-TTS/configs/eval.yaml new file mode 100644 index 0000000000000000000000000000000000000000..be312992b2a486b04d83a54dbd8f670d94979709 --- /dev/null +++ b/third_party/Matcha-TTS/configs/eval.yaml @@ -0,0 +1,18 @@ +# @package _global_ + +defaults: + - _self_ + - data: mnist # choose datamodule with `test_dataloader()` for evaluation + - model: mnist + - logger: null + - trainer: default + - paths: default + - extras: default + - hydra: default + +task_name: "eval" + +tags: ["dev"] + +# passing checkpoint path is necessary for evaluation +ckpt_path: ??? diff --git a/third_party/Matcha-TTS/configs/experiment/hifi_dataset_piper_phonemizer.yaml b/third_party/Matcha-TTS/configs/experiment/hifi_dataset_piper_phonemizer.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7e6c57a0d0a399f7463f4ff2d96e1928c435779b --- /dev/null +++ b/third_party/Matcha-TTS/configs/experiment/hifi_dataset_piper_phonemizer.yaml @@ -0,0 +1,14 @@ +# @package _global_ + +# to execute this experiment run: +# python train.py experiment=multispeaker + +defaults: + - override /data: hi-fi_en-US_female.yaml + +# all parameters below will be merged with parameters from default configurations set above +# this allows you to overwrite only specified parameters + +tags: ["hi-fi", "single_speaker", "piper_phonemizer", "en_US", "female"] + +run_name: hi-fi_en-US_female_piper_phonemizer diff --git a/third_party/Matcha-TTS/configs/experiment/ljspeech.yaml b/third_party/Matcha-TTS/configs/experiment/ljspeech.yaml new file mode 100644 index 0000000000000000000000000000000000000000..d5723f42cf3552226c42bd91202cc18818b685f0 --- /dev/null +++ b/third_party/Matcha-TTS/configs/experiment/ljspeech.yaml @@ -0,0 +1,14 @@ +# @package _global_ + +# to execute this experiment run: +# python train.py experiment=multispeaker + +defaults: + - override /data: ljspeech.yaml + +# all parameters below will be merged with parameters from default configurations set above +# this allows you to overwrite only specified parameters + +tags: ["ljspeech"] + +run_name: ljspeech diff --git a/third_party/Matcha-TTS/configs/experiment/ljspeech_min_memory.yaml b/third_party/Matcha-TTS/configs/experiment/ljspeech_min_memory.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ef554dc633c392b1592d90d9d7734f2329264fdd --- /dev/null +++ b/third_party/Matcha-TTS/configs/experiment/ljspeech_min_memory.yaml @@ -0,0 +1,18 @@ +# @package _global_ + +# to execute this experiment run: +# python train.py experiment=multispeaker + +defaults: + - override /data: ljspeech.yaml + +# all parameters below will be merged with parameters from default configurations set above +# this allows you to overwrite only specified parameters + +tags: ["ljspeech"] + +run_name: ljspeech_min + + +model: + out_size: 172 diff --git a/third_party/Matcha-TTS/configs/experiment/multispeaker.yaml b/third_party/Matcha-TTS/configs/experiment/multispeaker.yaml new file mode 100644 index 0000000000000000000000000000000000000000..553842f4e2168db0fee4e44db11b5d086295b044 --- /dev/null +++ b/third_party/Matcha-TTS/configs/experiment/multispeaker.yaml @@ -0,0 +1,14 @@ +# @package _global_ + +# to execute this experiment run: +# python train.py experiment=multispeaker + +defaults: + - override /data: vctk.yaml + +# all parameters below will be merged with parameters from default configurations set above +# this allows you to overwrite only specified parameters + +tags: ["multispeaker"] + +run_name: multispeaker diff --git a/third_party/Matcha-TTS/configs/extras/default.yaml b/third_party/Matcha-TTS/configs/extras/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b9c6b622283a647fbc513166fc14f016cc3ed8a0 --- /dev/null +++ b/third_party/Matcha-TTS/configs/extras/default.yaml @@ -0,0 +1,8 @@ +# disable python warnings if they annoy you +ignore_warnings: False + +# ask user for tags if none are provided in the config +enforce_tags: True + +# pretty print config tree at the start of the run using Rich library +print_config: True diff --git a/third_party/Matcha-TTS/configs/hparams_search/mnist_optuna.yaml b/third_party/Matcha-TTS/configs/hparams_search/mnist_optuna.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1391183ebcdec3d8f5eb61374e0719d13c7545da --- /dev/null +++ b/third_party/Matcha-TTS/configs/hparams_search/mnist_optuna.yaml @@ -0,0 +1,52 @@ +# @package _global_ + +# example hyperparameter optimization of some experiment with Optuna: +# python train.py -m hparams_search=mnist_optuna experiment=example + +defaults: + - override /hydra/sweeper: optuna + +# choose metric which will be optimized by Optuna +# make sure this is the correct name of some metric logged in lightning module! +optimized_metric: "val/acc_best" + +# here we define Optuna hyperparameter search +# it optimizes for value returned from function with @hydra.main decorator +# docs: https://hydra.cc/docs/next/plugins/optuna_sweeper +hydra: + mode: "MULTIRUN" # set hydra to multirun by default if this config is attached + + sweeper: + _target_: hydra_plugins.hydra_optuna_sweeper.optuna_sweeper.OptunaSweeper + + # storage URL to persist optimization results + # for example, you can use SQLite if you set 'sqlite:///example.db' + storage: null + + # name of the study to persist optimization results + study_name: null + + # number of parallel workers + n_jobs: 1 + + # 'minimize' or 'maximize' the objective + direction: maximize + + # total number of runs that will be executed + n_trials: 20 + + # choose Optuna hyperparameter sampler + # you can choose bayesian sampler (tpe), random search (without optimization), grid sampler, and others + # docs: https://optuna.readthedocs.io/en/stable/reference/samplers.html + sampler: + _target_: optuna.samplers.TPESampler + seed: 1234 + n_startup_trials: 10 # number of random sampling runs before optimization starts + + # define hyperparameter search space + params: + model.optimizer.lr: interval(0.0001, 0.1) + data.batch_size: choice(32, 64, 128, 256) + model.net.lin1_size: choice(64, 128, 256) + model.net.lin2_size: choice(64, 128, 256) + model.net.lin3_size: choice(32, 64, 128, 256) diff --git a/third_party/Matcha-TTS/configs/hydra/default.yaml b/third_party/Matcha-TTS/configs/hydra/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1533136b22802a4f81e5387b74e407289edce94d --- /dev/null +++ b/third_party/Matcha-TTS/configs/hydra/default.yaml @@ -0,0 +1,19 @@ +# https://hydra.cc/docs/configure_hydra/intro/ + +# enable color logging +defaults: + - override hydra_logging: colorlog + - override job_logging: colorlog + +# output directory, generated dynamically on each run +run: + dir: ${paths.log_dir}/${task_name}/${run_name}/runs/${now:%Y-%m-%d}_${now:%H-%M-%S} +sweep: + dir: ${paths.log_dir}/${task_name}/${run_name}/multiruns/${now:%Y-%m-%d}_${now:%H-%M-%S} + subdir: ${hydra.job.num} + +job_logging: + handlers: + file: + # Incorporates fix from https://github.com/facebookresearch/hydra/pull/2242 + filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log diff --git a/third_party/Matcha-TTS/configs/local/.gitkeep b/third_party/Matcha-TTS/configs/local/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/configs/logger/aim.yaml b/third_party/Matcha-TTS/configs/logger/aim.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8f9f6adad7feb2780c2efd5ddb0ed053621e05f8 --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/aim.yaml @@ -0,0 +1,28 @@ +# https://aimstack.io/ + +# example usage in lightning module: +# https://github.com/aimhubio/aim/blob/main/examples/pytorch_lightning_track.py + +# open the Aim UI with the following command (run in the folder containing the `.aim` folder): +# `aim up` + +aim: + _target_: aim.pytorch_lightning.AimLogger + repo: ${paths.root_dir} # .aim folder will be created here + # repo: "aim://ip_address:port" # can instead provide IP address pointing to Aim remote tracking server which manages the repo, see https://aimstack.readthedocs.io/en/latest/using/remote_tracking.html# + + # aim allows to group runs under experiment name + experiment: null # any string, set to "default" if not specified + + train_metric_prefix: "train/" + val_metric_prefix: "val/" + test_metric_prefix: "test/" + + # sets the tracking interval in seconds for system usage metrics (CPU, GPU, memory, etc.) + system_tracking_interval: 10 # set to null to disable system metrics tracking + + # enable/disable logging of system params such as installed packages, git info, env vars, etc. + log_system_params: true + + # enable/disable tracking console logs (default value is true) + capture_terminal_logs: false # set to false to avoid infinite console log loop issue https://github.com/aimhubio/aim/issues/2550 diff --git a/third_party/Matcha-TTS/configs/logger/comet.yaml b/third_party/Matcha-TTS/configs/logger/comet.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e0789274e2137ee6c97ca37a5d56c2b8abaf0aaa --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/comet.yaml @@ -0,0 +1,12 @@ +# https://www.comet.ml + +comet: + _target_: lightning.pytorch.loggers.comet.CometLogger + api_key: ${oc.env:COMET_API_TOKEN} # api key is loaded from environment variable + save_dir: "${paths.output_dir}" + project_name: "lightning-hydra-template" + rest_api_key: null + # experiment_name: "" + experiment_key: null # set to resume experiment + offline: False + prefix: "" diff --git a/third_party/Matcha-TTS/configs/logger/csv.yaml b/third_party/Matcha-TTS/configs/logger/csv.yaml new file mode 100644 index 0000000000000000000000000000000000000000..fa028e9c146430c319101ffdfce466514338591c --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/csv.yaml @@ -0,0 +1,7 @@ +# csv logger built in lightning + +csv: + _target_: lightning.pytorch.loggers.csv_logs.CSVLogger + save_dir: "${paths.output_dir}" + name: "csv/" + prefix: "" diff --git a/third_party/Matcha-TTS/configs/logger/many_loggers.yaml b/third_party/Matcha-TTS/configs/logger/many_loggers.yaml new file mode 100644 index 0000000000000000000000000000000000000000..dd586800bdccb4e8f4b0236a181b7ddd756ba9ab --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/many_loggers.yaml @@ -0,0 +1,9 @@ +# train with many loggers at once + +defaults: + # - comet + - csv + # - mlflow + # - neptune + - tensorboard + - wandb diff --git a/third_party/Matcha-TTS/configs/logger/mlflow.yaml b/third_party/Matcha-TTS/configs/logger/mlflow.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f8fb7e685fa27fc8141387a421b90a0b9b492d9e --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/mlflow.yaml @@ -0,0 +1,12 @@ +# https://mlflow.org + +mlflow: + _target_: lightning.pytorch.loggers.mlflow.MLFlowLogger + # experiment_name: "" + # run_name: "" + tracking_uri: ${paths.log_dir}/mlflow/mlruns # run `mlflow ui` command inside the `logs/mlflow/` dir to open the UI + tags: null + # save_dir: "./mlruns" + prefix: "" + artifact_location: null + # run_id: "" diff --git a/third_party/Matcha-TTS/configs/logger/neptune.yaml b/third_party/Matcha-TTS/configs/logger/neptune.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8233c140018ecce6ab62971beed269991d31c89b --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/neptune.yaml @@ -0,0 +1,9 @@ +# https://neptune.ai + +neptune: + _target_: lightning.pytorch.loggers.neptune.NeptuneLogger + api_key: ${oc.env:NEPTUNE_API_TOKEN} # api key is loaded from environment variable + project: username/lightning-hydra-template + # name: "" + log_model_checkpoints: True + prefix: "" diff --git a/third_party/Matcha-TTS/configs/logger/tensorboard.yaml b/third_party/Matcha-TTS/configs/logger/tensorboard.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2bd31f6d8ba68d1f5c36a804885d5b9f9c1a9302 --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/tensorboard.yaml @@ -0,0 +1,10 @@ +# https://www.tensorflow.org/tensorboard/ + +tensorboard: + _target_: lightning.pytorch.loggers.tensorboard.TensorBoardLogger + save_dir: "${paths.output_dir}/tensorboard/" + name: null + log_graph: False + default_hp_metric: True + prefix: "" + # version: "" diff --git a/third_party/Matcha-TTS/configs/logger/wandb.yaml b/third_party/Matcha-TTS/configs/logger/wandb.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ece165889b3d0d9dc750a8f3c7454188cfdf12b7 --- /dev/null +++ b/third_party/Matcha-TTS/configs/logger/wandb.yaml @@ -0,0 +1,16 @@ +# https://wandb.ai + +wandb: + _target_: lightning.pytorch.loggers.wandb.WandbLogger + # name: "" # name of the run (normally generated by wandb) + save_dir: "${paths.output_dir}" + offline: False + id: null # pass correct id to resume experiment! + anonymous: null # enable anonymous logging + project: "lightning-hydra-template" + log_model: False # upload lightning ckpts + prefix: "" # a string to put at the beginning of metric keys + # entity: "" # set to name of your wandb team + group: "" + tags: [] + job_type: "" diff --git a/third_party/Matcha-TTS/configs/model/cfm/default.yaml b/third_party/Matcha-TTS/configs/model/cfm/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0d1d9609e2d05c7b0a12a26115520340ac18e584 --- /dev/null +++ b/third_party/Matcha-TTS/configs/model/cfm/default.yaml @@ -0,0 +1,3 @@ +name: CFM +solver: euler +sigma_min: 1e-4 diff --git a/third_party/Matcha-TTS/configs/model/decoder/default.yaml b/third_party/Matcha-TTS/configs/model/decoder/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..aaa00e63402ade5c76247a2f1d6b294ec3c61e63 --- /dev/null +++ b/third_party/Matcha-TTS/configs/model/decoder/default.yaml @@ -0,0 +1,7 @@ +channels: [256, 256] +dropout: 0.05 +attention_head_dim: 64 +n_blocks: 1 +num_mid_blocks: 2 +num_heads: 2 +act_fn: snakebeta diff --git a/third_party/Matcha-TTS/configs/model/encoder/default.yaml b/third_party/Matcha-TTS/configs/model/encoder/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..d4d5e5adee8f707bd384b682a3ad9a116c40c6ed --- /dev/null +++ b/third_party/Matcha-TTS/configs/model/encoder/default.yaml @@ -0,0 +1,18 @@ +encoder_type: RoPE Encoder +encoder_params: + n_feats: ${model.n_feats} + n_channels: 192 + filter_channels: 768 + filter_channels_dp: 256 + n_heads: 2 + n_layers: 6 + kernel_size: 3 + p_dropout: 0.1 + spk_emb_dim: 64 + n_spks: 1 + prenet: true + +duration_predictor_params: + filter_channels_dp: ${model.encoder.encoder_params.filter_channels_dp} + kernel_size: 3 + p_dropout: ${model.encoder.encoder_params.p_dropout} diff --git a/third_party/Matcha-TTS/configs/model/matcha.yaml b/third_party/Matcha-TTS/configs/model/matcha.yaml new file mode 100644 index 0000000000000000000000000000000000000000..36f6eafbdcaa324f7494a4b97a7590da7824f357 --- /dev/null +++ b/third_party/Matcha-TTS/configs/model/matcha.yaml @@ -0,0 +1,15 @@ +defaults: + - _self_ + - encoder: default.yaml + - decoder: default.yaml + - cfm: default.yaml + - optimizer: adam.yaml + +_target_: matcha.models.matcha_tts.MatchaTTS +n_vocab: 178 +n_spks: ${data.n_spks} +spk_emb_dim: 64 +n_feats: 80 +data_statistics: ${data.data_statistics} +out_size: null # Must be divisible by 4 +prior_loss: true diff --git a/third_party/Matcha-TTS/configs/model/optimizer/adam.yaml b/third_party/Matcha-TTS/configs/model/optimizer/adam.yaml new file mode 100644 index 0000000000000000000000000000000000000000..42795577474eaee5b0b96845a95e1a11c9152385 --- /dev/null +++ b/third_party/Matcha-TTS/configs/model/optimizer/adam.yaml @@ -0,0 +1,4 @@ +_target_: torch.optim.Adam +_partial_: true +lr: 1e-4 +weight_decay: 0.0 diff --git a/third_party/Matcha-TTS/configs/paths/default.yaml b/third_party/Matcha-TTS/configs/paths/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ec81db2d34712909a79be3e42e65efe08c35ecee --- /dev/null +++ b/third_party/Matcha-TTS/configs/paths/default.yaml @@ -0,0 +1,18 @@ +# path to root directory +# this requires PROJECT_ROOT environment variable to exist +# you can replace it with "." if you want the root to be the current working directory +root_dir: ${oc.env:PROJECT_ROOT} + +# path to data directory +data_dir: ${paths.root_dir}/data/ + +# path to logging directory +log_dir: ${paths.root_dir}/logs/ + +# path to output directory, created dynamically by hydra +# path generation pattern is specified in `configs/hydra/default.yaml` +# use it to store all files generated during the run, like ckpts and metrics +output_dir: ${hydra:runtime.output_dir} + +# path to working directory +work_dir: ${hydra:runtime.cwd} diff --git a/third_party/Matcha-TTS/configs/train.yaml b/third_party/Matcha-TTS/configs/train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e6f5c2e7b9781758c8d25f941f004ca383c3f494 --- /dev/null +++ b/third_party/Matcha-TTS/configs/train.yaml @@ -0,0 +1,51 @@ +# @package _global_ + +# specify here default configuration +# order of defaults determines the order in which configs override each other +defaults: + - _self_ + - data: ljspeech + - model: matcha + - callbacks: default + - logger: tensorboard # set logger here or use command line (e.g. `python train.py logger=tensorboard`) + - trainer: default + - paths: default + - extras: default + - hydra: default + + # experiment configs allow for version control of specific hyperparameters + # e.g. best hyperparameters for given model and datamodule + - experiment: null + + # config for hyperparameter optimization + - hparams_search: null + + # optional local config for machine/user specific settings + # it's optional since it doesn't need to exist and is excluded from version control + - optional local: default + + # debugging config (enable through command line, e.g. `python train.py debug=default) + - debug: null + +# task name, determines output directory path +task_name: "train" + +run_name: ??? + +# tags to help you identify your experiments +# you can overwrite this in experiment configs +# overwrite from command line with `python train.py tags="[first_tag, second_tag]"` +tags: ["dev"] + +# set False to skip model training +train: True + +# evaluate on test set, using best model weights achieved during training +# lightning chooses best weights based on the metric specified in checkpoint callback +test: True + +# simply provide checkpoint path to resume training +ckpt_path: null + +# seed for random number generators in pytorch, numpy and python.random +seed: 1234 diff --git a/third_party/Matcha-TTS/configs/trainer/cpu.yaml b/third_party/Matcha-TTS/configs/trainer/cpu.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b7d6767e60c956567555980654f15e7bb673a41f --- /dev/null +++ b/third_party/Matcha-TTS/configs/trainer/cpu.yaml @@ -0,0 +1,5 @@ +defaults: + - default + +accelerator: cpu +devices: 1 diff --git a/third_party/Matcha-TTS/configs/trainer/ddp.yaml b/third_party/Matcha-TTS/configs/trainer/ddp.yaml new file mode 100644 index 0000000000000000000000000000000000000000..94b43e20ca7bf1f2ea92627fd46906e4f0a273a1 --- /dev/null +++ b/third_party/Matcha-TTS/configs/trainer/ddp.yaml @@ -0,0 +1,9 @@ +defaults: + - default + +strategy: ddp + +accelerator: gpu +devices: [0,1] +num_nodes: 1 +sync_batchnorm: True diff --git a/third_party/Matcha-TTS/configs/trainer/ddp_sim.yaml b/third_party/Matcha-TTS/configs/trainer/ddp_sim.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8404419e5c295654967d0dfb73a7366e75be2f1f --- /dev/null +++ b/third_party/Matcha-TTS/configs/trainer/ddp_sim.yaml @@ -0,0 +1,7 @@ +defaults: + - default + +# simulate DDP on CPU, useful for debugging +accelerator: cpu +devices: 2 +strategy: ddp_spawn diff --git a/third_party/Matcha-TTS/configs/trainer/default.yaml b/third_party/Matcha-TTS/configs/trainer/default.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ee3d370d8ca6b08d7ee7a86d34184c2104f0e1ef --- /dev/null +++ b/third_party/Matcha-TTS/configs/trainer/default.yaml @@ -0,0 +1,20 @@ +_target_: lightning.pytorch.trainer.Trainer + +default_root_dir: ${paths.output_dir} + +max_epochs: -1 + +accelerator: gpu +devices: [0] + +# mixed precision for extra speed-up +precision: 16-mixed + +# perform a validation loop every N training epochs +check_val_every_n_epoch: 1 + +# set True to to ensure deterministic results +# makes training slower but gives more reproducibility than just setting seeds +deterministic: False + +gradient_clip_val: 5.0 diff --git a/third_party/Matcha-TTS/configs/trainer/gpu.yaml b/third_party/Matcha-TTS/configs/trainer/gpu.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b2389510a90f5f0161cff6ccfcb4a96097ddf9a1 --- /dev/null +++ b/third_party/Matcha-TTS/configs/trainer/gpu.yaml @@ -0,0 +1,5 @@ +defaults: + - default + +accelerator: gpu +devices: 1 diff --git a/third_party/Matcha-TTS/configs/trainer/mps.yaml b/third_party/Matcha-TTS/configs/trainer/mps.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1ecf6d5cc3a34ca127c5510f4a18e989561e38e4 --- /dev/null +++ b/third_party/Matcha-TTS/configs/trainer/mps.yaml @@ -0,0 +1,5 @@ +defaults: + - default + +accelerator: mps +devices: 1 diff --git a/third_party/Matcha-TTS/matcha/VERSION b/third_party/Matcha-TTS/matcha/VERSION new file mode 100644 index 0000000000000000000000000000000000000000..442b1138f7851df1c22deb15fd5d6ff5b742e550 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/VERSION @@ -0,0 +1 @@ +0.0.5.1 diff --git a/third_party/Matcha-TTS/matcha/__init__.py b/third_party/Matcha-TTS/matcha/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/app.py b/third_party/Matcha-TTS/matcha/app.py new file mode 100644 index 0000000000000000000000000000000000000000..d68fbaa2d10d1faab606d89906af5e8b6baa5aa4 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/app.py @@ -0,0 +1,357 @@ +import tempfile +from argparse import Namespace +from pathlib import Path + +import gradio as gr +import soundfile as sf +import torch + +from matcha.cli import ( + MATCHA_URLS, + VOCODER_URLS, + assert_model_downloaded, + get_device, + load_matcha, + load_vocoder, + process_text, + to_waveform, +) +from matcha.utils.utils import get_user_data_dir, plot_tensor + +LOCATION = Path(get_user_data_dir()) + +args = Namespace( + cpu=False, + model="matcha_vctk", + vocoder="hifigan_univ_v1", + spk=0, +) + +CURRENTLY_LOADED_MODEL = args.model + + +def MATCHA_TTS_LOC(x): + return LOCATION / f"{x}.ckpt" + + +def VOCODER_LOC(x): + return LOCATION / f"{x}" + + +LOGO_URL = "https://shivammehta25.github.io/Matcha-TTS/images/logo.png" +RADIO_OPTIONS = { + "Multi Speaker (VCTK)": { + "model": "matcha_vctk", + "vocoder": "hifigan_univ_v1", + }, + "Single Speaker (LJ Speech)": { + "model": "matcha_ljspeech", + "vocoder": "hifigan_T2_v1", + }, +} + +# Ensure all the required models are downloaded +assert_model_downloaded(MATCHA_TTS_LOC("matcha_ljspeech"), MATCHA_URLS["matcha_ljspeech"]) +assert_model_downloaded(VOCODER_LOC("hifigan_T2_v1"), VOCODER_URLS["hifigan_T2_v1"]) +assert_model_downloaded(MATCHA_TTS_LOC("matcha_vctk"), MATCHA_URLS["matcha_vctk"]) +assert_model_downloaded(VOCODER_LOC("hifigan_univ_v1"), VOCODER_URLS["hifigan_univ_v1"]) + +device = get_device(args) + +# Load default model +model = load_matcha(args.model, MATCHA_TTS_LOC(args.model), device) +vocoder, denoiser = load_vocoder(args.vocoder, VOCODER_LOC(args.vocoder), device) + + +def load_model(model_name, vocoder_name): + model = load_matcha(model_name, MATCHA_TTS_LOC(model_name), device) + vocoder, denoiser = load_vocoder(vocoder_name, VOCODER_LOC(vocoder_name), device) + return model, vocoder, denoiser + + +def load_model_ui(model_type, textbox): + model_name, vocoder_name = RADIO_OPTIONS[model_type]["model"], RADIO_OPTIONS[model_type]["vocoder"] + + global model, vocoder, denoiser, CURRENTLY_LOADED_MODEL # pylint: disable=global-statement + if CURRENTLY_LOADED_MODEL != model_name: + model, vocoder, denoiser = load_model(model_name, vocoder_name) + CURRENTLY_LOADED_MODEL = model_name + + if model_name == "matcha_ljspeech": + spk_slider = gr.update(visible=False, value=-1) + single_speaker_examples = gr.update(visible=True) + multi_speaker_examples = gr.update(visible=False) + length_scale = gr.update(value=0.95) + else: + spk_slider = gr.update(visible=True, value=0) + single_speaker_examples = gr.update(visible=False) + multi_speaker_examples = gr.update(visible=True) + length_scale = gr.update(value=0.85) + + return ( + textbox, + gr.update(interactive=True), + spk_slider, + single_speaker_examples, + multi_speaker_examples, + length_scale, + ) + + +@torch.inference_mode() +def process_text_gradio(text): + output = process_text(1, text, device) + return output["x_phones"][1::2], output["x"], output["x_lengths"] + + +@torch.inference_mode() +def synthesise_mel(text, text_length, n_timesteps, temperature, length_scale, spk): + spk = torch.tensor([spk], device=device, dtype=torch.long) if spk >= 0 else None + output = model.synthesise( + text, + text_length, + n_timesteps=n_timesteps, + temperature=temperature, + spks=spk, + length_scale=length_scale, + ) + output["waveform"] = to_waveform(output["mel"], vocoder, denoiser) + with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as fp: + sf.write(fp.name, output["waveform"], 22050, "PCM_24") + + return fp.name, plot_tensor(output["mel"].squeeze().cpu().numpy()) + + +def multispeaker_example_cacher(text, n_timesteps, mel_temp, length_scale, spk): + global CURRENTLY_LOADED_MODEL # pylint: disable=global-statement + if CURRENTLY_LOADED_MODEL != "matcha_vctk": + global model, vocoder, denoiser # pylint: disable=global-statement + model, vocoder, denoiser = load_model("matcha_vctk", "hifigan_univ_v1") + CURRENTLY_LOADED_MODEL = "matcha_vctk" + + phones, text, text_lengths = process_text_gradio(text) + audio, mel_spectrogram = synthesise_mel(text, text_lengths, n_timesteps, mel_temp, length_scale, spk) + return phones, audio, mel_spectrogram + + +def ljspeech_example_cacher(text, n_timesteps, mel_temp, length_scale, spk=-1): + global CURRENTLY_LOADED_MODEL # pylint: disable=global-statement + if CURRENTLY_LOADED_MODEL != "matcha_ljspeech": + global model, vocoder, denoiser # pylint: disable=global-statement + model, vocoder, denoiser = load_model("matcha_ljspeech", "hifigan_T2_v1") + CURRENTLY_LOADED_MODEL = "matcha_ljspeech" + + phones, text, text_lengths = process_text_gradio(text) + audio, mel_spectrogram = synthesise_mel(text, text_lengths, n_timesteps, mel_temp, length_scale, spk) + return phones, audio, mel_spectrogram + + +def main(): + description = """# 🍵 Matcha-TTS: A fast TTS architecture with conditional flow matching + ### [Shivam Mehta](https://www.kth.se/profile/smehta), [Ruibo Tu](https://www.kth.se/profile/ruibo), [Jonas Beskow](https://www.kth.se/profile/beskow), [Éva Székely](https://www.kth.se/profile/szekely), and [Gustav Eje Henter](https://people.kth.se/~ghe/) + We propose 🍵 Matcha-TTS, a new approach to non-autoregressive neural TTS, that uses conditional flow matching (similar to rectified flows) to speed up ODE-based speech synthesis. Our method: + + + * Is probabilistic + * Has compact memory footprint + * Sounds highly natural + * Is very fast to synthesise from + + + Check out our [demo page](https://shivammehta25.github.io/Matcha-TTS). Read our [arXiv preprint for more details](https://arxiv.org/abs/2309.03199). + Code is available in our [GitHub repository](https://github.com/shivammehta25/Matcha-TTS), along with pre-trained models. + + Cached examples are available at the bottom of the page. + """ + + with gr.Blocks(title="🍵 Matcha-TTS: A fast TTS architecture with conditional flow matching") as demo: + processed_text = gr.State(value=None) + processed_text_len = gr.State(value=None) + + with gr.Box(): + with gr.Row(): + gr.Markdown(description, scale=3) + with gr.Column(): + gr.Image(LOGO_URL, label="Matcha-TTS logo", height=50, width=50, scale=1, show_label=False) + html = '
' + gr.HTML(html) + + with gr.Box(): + radio_options = list(RADIO_OPTIONS.keys()) + model_type = gr.Radio( + radio_options, value=radio_options[0], label="Choose a Model", interactive=True, container=False + ) + + with gr.Row(): + gr.Markdown("# Text Input") + with gr.Row(): + text = gr.Textbox(value="", lines=2, label="Text to synthesise", scale=3) + spk_slider = gr.Slider( + minimum=0, maximum=107, step=1, value=args.spk, label="Speaker ID", interactive=True, scale=1 + ) + + with gr.Row(): + gr.Markdown("### Hyper parameters") + with gr.Row(): + n_timesteps = gr.Slider( + label="Number of ODE steps", + minimum=1, + maximum=100, + step=1, + value=10, + interactive=True, + ) + length_scale = gr.Slider( + label="Length scale (Speaking rate)", + minimum=0.5, + maximum=1.5, + step=0.05, + value=1.0, + interactive=True, + ) + mel_temp = gr.Slider( + label="Sampling temperature", + minimum=0.00, + maximum=2.001, + step=0.16675, + value=0.667, + interactive=True, + ) + + synth_btn = gr.Button("Synthesise") + + with gr.Box(): + with gr.Row(): + gr.Markdown("### Phonetised text") + phonetised_text = gr.Textbox(interactive=False, scale=10, label="Phonetised text") + + with gr.Box(): + with gr.Row(): + mel_spectrogram = gr.Image(interactive=False, label="mel spectrogram") + + # with gr.Row(): + audio = gr.Audio(interactive=False, label="Audio") + + with gr.Row(visible=False) as example_row_lj_speech: + examples = gr.Examples( # pylint: disable=unused-variable + examples=[ + [ + "We propose Matcha-TTS, a new approach to non-autoregressive neural TTS, that uses conditional flow matching (similar to rectified flows) to speed up O D E-based speech synthesis.", + 50, + 0.677, + 0.95, + ], + [ + "The Secret Service believed that it was very doubtful that any President would ride regularly in a vehicle with a fixed top, even though transparent.", + 2, + 0.677, + 0.95, + ], + [ + "The Secret Service believed that it was very doubtful that any President would ride regularly in a vehicle with a fixed top, even though transparent.", + 4, + 0.677, + 0.95, + ], + [ + "The Secret Service believed that it was very doubtful that any President would ride regularly in a vehicle with a fixed top, even though transparent.", + 10, + 0.677, + 0.95, + ], + [ + "The Secret Service believed that it was very doubtful that any President would ride regularly in a vehicle with a fixed top, even though transparent.", + 50, + 0.677, + 0.95, + ], + [ + "The narrative of these events is based largely on the recollections of the participants.", + 10, + 0.677, + 0.95, + ], + [ + "The jury did not believe him, and the verdict was for the defendants.", + 10, + 0.677, + 0.95, + ], + ], + fn=ljspeech_example_cacher, + inputs=[text, n_timesteps, mel_temp, length_scale], + outputs=[phonetised_text, audio, mel_spectrogram], + cache_examples=True, + ) + + with gr.Row() as example_row_multispeaker: + multi_speaker_examples = gr.Examples( # pylint: disable=unused-variable + examples=[ + [ + "Hello everyone! I am speaker 0 and I am here to tell you that Matcha-TTS is amazing!", + 10, + 0.677, + 0.85, + 0, + ], + [ + "Hello everyone! I am speaker 16 and I am here to tell you that Matcha-TTS is amazing!", + 10, + 0.677, + 0.85, + 16, + ], + [ + "Hello everyone! I am speaker 44 and I am here to tell you that Matcha-TTS is amazing!", + 50, + 0.677, + 0.85, + 44, + ], + [ + "Hello everyone! I am speaker 45 and I am here to tell you that Matcha-TTS is amazing!", + 50, + 0.677, + 0.85, + 45, + ], + [ + "Hello everyone! I am speaker 58 and I am here to tell you that Matcha-TTS is amazing!", + 4, + 0.677, + 0.85, + 58, + ], + ], + fn=multispeaker_example_cacher, + inputs=[text, n_timesteps, mel_temp, length_scale, spk_slider], + outputs=[phonetised_text, audio, mel_spectrogram], + cache_examples=True, + label="Multi Speaker Examples", + ) + + model_type.change(lambda x: gr.update(interactive=False), inputs=[synth_btn], outputs=[synth_btn]).then( + load_model_ui, + inputs=[model_type, text], + outputs=[text, synth_btn, spk_slider, example_row_lj_speech, example_row_multispeaker, length_scale], + ) + + synth_btn.click( + fn=process_text_gradio, + inputs=[ + text, + ], + outputs=[phonetised_text, processed_text, processed_text_len], + api_name="matcha_tts", + queue=True, + ).then( + fn=synthesise_mel, + inputs=[processed_text, processed_text_len, n_timesteps, mel_temp, length_scale, spk_slider], + outputs=[audio, mel_spectrogram], + ) + + demo.queue().launch(share=True) + + +if __name__ == "__main__": + main() diff --git a/third_party/Matcha-TTS/matcha/cli.py b/third_party/Matcha-TTS/matcha/cli.py new file mode 100644 index 0000000000000000000000000000000000000000..579d7d636450a41f1c06a4393d64ddbae38c5011 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/cli.py @@ -0,0 +1,418 @@ +import argparse +import datetime as dt +import os +import warnings +from pathlib import Path + +import matplotlib.pyplot as plt +import numpy as np +import soundfile as sf +import torch + +from matcha.hifigan.config import v1 +from matcha.hifigan.denoiser import Denoiser +from matcha.hifigan.env import AttrDict +from matcha.hifigan.models import Generator as HiFiGAN +from matcha.models.matcha_tts import MatchaTTS +from matcha.text import sequence_to_text, text_to_sequence +from matcha.utils.utils import assert_model_downloaded, get_user_data_dir, intersperse + +MATCHA_URLS = { + "matcha_ljspeech": "https://github.com/shivammehta25/Matcha-TTS-checkpoints/releases/download/v1.0/matcha_ljspeech.ckpt", + "matcha_vctk": "https://github.com/shivammehta25/Matcha-TTS-checkpoints/releases/download/v1.0/matcha_vctk.ckpt", +} + +VOCODER_URLS = { + "hifigan_T2_v1": "https://github.com/shivammehta25/Matcha-TTS-checkpoints/releases/download/v1.0/generator_v1", # Old url: https://drive.google.com/file/d/14NENd4equCBLyyCSke114Mv6YR_j_uFs/view?usp=drive_link + "hifigan_univ_v1": "https://github.com/shivammehta25/Matcha-TTS-checkpoints/releases/download/v1.0/g_02500000", # Old url: https://drive.google.com/file/d/1qpgI41wNXFcH-iKq1Y42JlBC9j0je8PW/view?usp=drive_link +} + +MULTISPEAKER_MODEL = { + "matcha_vctk": {"vocoder": "hifigan_univ_v1", "speaking_rate": 0.85, "spk": 0, "spk_range": (0, 107)} +} + +SINGLESPEAKER_MODEL = {"matcha_ljspeech": {"vocoder": "hifigan_T2_v1", "speaking_rate": 0.95, "spk": None}} + + +def plot_spectrogram_to_numpy(spectrogram, filename): + fig, ax = plt.subplots(figsize=(12, 3)) + im = ax.imshow(spectrogram, aspect="auto", origin="lower", interpolation="none") + plt.colorbar(im, ax=ax) + plt.xlabel("Frames") + plt.ylabel("Channels") + plt.title("Synthesised Mel-Spectrogram") + fig.canvas.draw() + plt.savefig(filename) + + +def process_text(i: int, text: str, device: torch.device): + print(f"[{i}] - Input text: {text}") + x = torch.tensor( + intersperse(text_to_sequence(text, ["english_cleaners2"]), 0), + dtype=torch.long, + device=device, + )[None] + x_lengths = torch.tensor([x.shape[-1]], dtype=torch.long, device=device) + x_phones = sequence_to_text(x.squeeze(0).tolist()) + print(f"[{i}] - Phonetised text: {x_phones[1::2]}") + + return {"x_orig": text, "x": x, "x_lengths": x_lengths, "x_phones": x_phones} + + +def get_texts(args): + if args.text: + texts = [args.text] + else: + with open(args.file, encoding="utf-8") as f: + texts = f.readlines() + return texts + + +def assert_required_models_available(args): + save_dir = get_user_data_dir() + if not hasattr(args, "checkpoint_path") and args.checkpoint_path is None: + model_path = args.checkpoint_path + else: + model_path = save_dir / f"{args.model}.ckpt" + assert_model_downloaded(model_path, MATCHA_URLS[args.model]) + + vocoder_path = save_dir / f"{args.vocoder}" + assert_model_downloaded(vocoder_path, VOCODER_URLS[args.vocoder]) + return {"matcha": model_path, "vocoder": vocoder_path} + + +def load_hifigan(checkpoint_path, device): + h = AttrDict(v1) + hifigan = HiFiGAN(h).to(device) + hifigan.load_state_dict(torch.load(checkpoint_path, map_location=device)["generator"]) + _ = hifigan.eval() + hifigan.remove_weight_norm() + return hifigan + + +def load_vocoder(vocoder_name, checkpoint_path, device): + print(f"[!] Loading {vocoder_name}!") + vocoder = None + if vocoder_name in ("hifigan_T2_v1", "hifigan_univ_v1"): + vocoder = load_hifigan(checkpoint_path, device) + else: + raise NotImplementedError( + f"Vocoder {vocoder_name} not implemented! define a load_<> method for it" + ) + + denoiser = Denoiser(vocoder, mode="zeros") + print(f"[+] {vocoder_name} loaded!") + return vocoder, denoiser + + +def load_matcha(model_name, checkpoint_path, device): + print(f"[!] Loading {model_name}!") + model = MatchaTTS.load_from_checkpoint(checkpoint_path, map_location=device) + _ = model.eval() + + print(f"[+] {model_name} loaded!") + return model + + +def to_waveform(mel, vocoder, denoiser=None): + audio = vocoder(mel).clamp(-1, 1) + if denoiser is not None: + audio = denoiser(audio.squeeze(), strength=0.00025).cpu().squeeze() + + return audio.cpu().squeeze() + + +def save_to_folder(filename: str, output: dict, folder: str): + folder = Path(folder) + folder.mkdir(exist_ok=True, parents=True) + plot_spectrogram_to_numpy(np.array(output["mel"].squeeze().float().cpu()), f"{filename}.png") + np.save(folder / f"{filename}", output["mel"].cpu().numpy()) + sf.write(folder / f"{filename}.wav", output["waveform"], 22050, "PCM_24") + return folder.resolve() / f"{filename}.wav" + + +def validate_args(args): + assert ( + args.text or args.file + ), "Either text or file must be provided Matcha-T(ea)TTS need sometext to whisk the waveforms." + assert args.temperature >= 0, "Sampling temperature cannot be negative" + assert args.steps > 0, "Number of ODE steps must be greater than 0" + + if args.checkpoint_path is None: + # When using pretrained models + if args.model in SINGLESPEAKER_MODEL: + args = validate_args_for_single_speaker_model(args) + + if args.model in MULTISPEAKER_MODEL: + args = validate_args_for_multispeaker_model(args) + else: + # When using a custom model + if args.vocoder != "hifigan_univ_v1": + warn_ = "[-] Using custom model checkpoint! I would suggest passing --vocoder hifigan_univ_v1, unless the custom model is trained on LJ Speech." + warnings.warn(warn_, UserWarning) + if args.speaking_rate is None: + args.speaking_rate = 1.0 + + if args.batched: + assert args.batch_size > 0, "Batch size must be greater than 0" + assert args.speaking_rate > 0, "Speaking rate must be greater than 0" + + return args + + +def validate_args_for_multispeaker_model(args): + if args.vocoder is not None: + if args.vocoder != MULTISPEAKER_MODEL[args.model]["vocoder"]: + warn_ = f"[-] Using {args.model} model! I would suggest passing --vocoder {MULTISPEAKER_MODEL[args.model]['vocoder']}" + warnings.warn(warn_, UserWarning) + else: + args.vocoder = MULTISPEAKER_MODEL[args.model]["vocoder"] + + if args.speaking_rate is None: + args.speaking_rate = MULTISPEAKER_MODEL[args.model]["speaking_rate"] + + spk_range = MULTISPEAKER_MODEL[args.model]["spk_range"] + if args.spk is not None: + assert ( + args.spk >= spk_range[0] and args.spk <= spk_range[-1] + ), f"Speaker ID must be between {spk_range} for this model." + else: + available_spk_id = MULTISPEAKER_MODEL[args.model]["spk"] + warn_ = f"[!] Speaker ID not provided! Using speaker ID {available_spk_id}" + warnings.warn(warn_, UserWarning) + args.spk = available_spk_id + + return args + + +def validate_args_for_single_speaker_model(args): + if args.vocoder is not None: + if args.vocoder != SINGLESPEAKER_MODEL[args.model]["vocoder"]: + warn_ = f"[-] Using {args.model} model! I would suggest passing --vocoder {SINGLESPEAKER_MODEL[args.model]['vocoder']}" + warnings.warn(warn_, UserWarning) + else: + args.vocoder = SINGLESPEAKER_MODEL[args.model]["vocoder"] + + if args.speaking_rate is None: + args.speaking_rate = SINGLESPEAKER_MODEL[args.model]["speaking_rate"] + + if args.spk != SINGLESPEAKER_MODEL[args.model]["spk"]: + warn_ = f"[-] Ignoring speaker id {args.spk} for {args.model}" + warnings.warn(warn_, UserWarning) + args.spk = SINGLESPEAKER_MODEL[args.model]["spk"] + + return args + + +@torch.inference_mode() +def cli(): + parser = argparse.ArgumentParser( + description=" 🍵 Matcha-TTS: A fast TTS architecture with conditional flow matching" + ) + parser.add_argument( + "--model", + type=str, + default="matcha_ljspeech", + help="Model to use", + choices=MATCHA_URLS.keys(), + ) + + parser.add_argument( + "--checkpoint_path", + type=str, + default=None, + help="Path to the custom model checkpoint", + ) + + parser.add_argument( + "--vocoder", + type=str, + default=None, + help="Vocoder to use (default: will use the one suggested with the pretrained model))", + choices=VOCODER_URLS.keys(), + ) + parser.add_argument("--text", type=str, default=None, help="Text to synthesize") + parser.add_argument("--file", type=str, default=None, help="Text file to synthesize") + parser.add_argument("--spk", type=int, default=None, help="Speaker ID") + parser.add_argument( + "--temperature", + type=float, + default=0.667, + help="Variance of the x0 noise (default: 0.667)", + ) + parser.add_argument( + "--speaking_rate", + type=float, + default=None, + help="change the speaking rate, a higher value means slower speaking rate (default: 1.0)", + ) + parser.add_argument("--steps", type=int, default=10, help="Number of ODE steps (default: 10)") + parser.add_argument("--cpu", action="store_true", help="Use CPU for inference (default: use GPU if available)") + parser.add_argument( + "--denoiser_strength", + type=float, + default=0.00025, + help="Strength of the vocoder bias denoiser (default: 0.00025)", + ) + parser.add_argument( + "--output_folder", + type=str, + default=os.getcwd(), + help="Output folder to save results (default: current dir)", + ) + parser.add_argument("--batched", action="store_true", help="Batched inference (default: False)") + parser.add_argument( + "--batch_size", type=int, default=32, help="Batch size only useful when --batched (default: 32)" + ) + + args = parser.parse_args() + + args = validate_args(args) + device = get_device(args) + print_config(args) + paths = assert_required_models_available(args) + + if args.checkpoint_path is not None: + print(f"[🍵] Loading custom model from {args.checkpoint_path}") + paths["matcha"] = args.checkpoint_path + args.model = "custom_model" + + model = load_matcha(args.model, paths["matcha"], device) + vocoder, denoiser = load_vocoder(args.vocoder, paths["vocoder"], device) + + texts = get_texts(args) + + spk = torch.tensor([args.spk], device=device, dtype=torch.long) if args.spk is not None else None + if len(texts) == 1 or not args.batched: + unbatched_synthesis(args, device, model, vocoder, denoiser, texts, spk) + else: + batched_synthesis(args, device, model, vocoder, denoiser, texts, spk) + + +class BatchedSynthesisDataset(torch.utils.data.Dataset): + def __init__(self, processed_texts): + self.processed_texts = processed_texts + + def __len__(self): + return len(self.processed_texts) + + def __getitem__(self, idx): + return self.processed_texts[idx] + + +def batched_collate_fn(batch): + x = [] + x_lengths = [] + + for b in batch: + x.append(b["x"].squeeze(0)) + x_lengths.append(b["x_lengths"]) + + x = torch.nn.utils.rnn.pad_sequence(x, batch_first=True) + x_lengths = torch.concat(x_lengths, dim=0) + return {"x": x, "x_lengths": x_lengths} + + +def batched_synthesis(args, device, model, vocoder, denoiser, texts, spk): + total_rtf = [] + total_rtf_w = [] + processed_text = [process_text(i, text, "cpu") for i, text in enumerate(texts)] + dataloader = torch.utils.data.DataLoader( + BatchedSynthesisDataset(processed_text), + batch_size=args.batch_size, + collate_fn=batched_collate_fn, + num_workers=8, + ) + for i, batch in enumerate(dataloader): + i = i + 1 + start_t = dt.datetime.now() + output = model.synthesise( + batch["x"].to(device), + batch["x_lengths"].to(device), + n_timesteps=args.steps, + temperature=args.temperature, + spks=spk, + length_scale=args.speaking_rate, + ) + + output["waveform"] = to_waveform(output["mel"], vocoder, denoiser) + t = (dt.datetime.now() - start_t).total_seconds() + rtf_w = t * 22050 / (output["waveform"].shape[-1]) + print(f"[🍵-Batch: {i}] Matcha-TTS RTF: {output['rtf']:.4f}") + print(f"[🍵-Batch: {i}] Matcha-TTS + VOCODER RTF: {rtf_w:.4f}") + total_rtf.append(output["rtf"]) + total_rtf_w.append(rtf_w) + for j in range(output["mel"].shape[0]): + base_name = f"utterance_{j:03d}_speaker_{args.spk:03d}" if args.spk is not None else f"utterance_{j:03d}" + length = output["mel_lengths"][j] + new_dict = {"mel": output["mel"][j][:, :length], "waveform": output["waveform"][j][: length * 256]} + location = save_to_folder(base_name, new_dict, args.output_folder) + print(f"[🍵-{j}] Waveform saved: {location}") + + print("".join(["="] * 100)) + print(f"[🍵] Average Matcha-TTS RTF: {np.mean(total_rtf):.4f} ± {np.std(total_rtf)}") + print(f"[🍵] Average Matcha-TTS + VOCODER RTF: {np.mean(total_rtf_w):.4f} ± {np.std(total_rtf_w)}") + print("[🍵] Enjoy the freshly whisked 🍵 Matcha-TTS!") + + +def unbatched_synthesis(args, device, model, vocoder, denoiser, texts, spk): + total_rtf = [] + total_rtf_w = [] + for i, text in enumerate(texts): + i = i + 1 + base_name = f"utterance_{i:03d}_speaker_{args.spk:03d}" if args.spk is not None else f"utterance_{i:03d}" + + print("".join(["="] * 100)) + text = text.strip() + text_processed = process_text(i, text, device) + + print(f"[🍵] Whisking Matcha-T(ea)TS for: {i}") + start_t = dt.datetime.now() + output = model.synthesise( + text_processed["x"], + text_processed["x_lengths"], + n_timesteps=args.steps, + temperature=args.temperature, + spks=spk, + length_scale=args.speaking_rate, + ) + output["waveform"] = to_waveform(output["mel"], vocoder, denoiser) + # RTF with HiFiGAN + t = (dt.datetime.now() - start_t).total_seconds() + rtf_w = t * 22050 / (output["waveform"].shape[-1]) + print(f"[🍵-{i}] Matcha-TTS RTF: {output['rtf']:.4f}") + print(f"[🍵-{i}] Matcha-TTS + VOCODER RTF: {rtf_w:.4f}") + total_rtf.append(output["rtf"]) + total_rtf_w.append(rtf_w) + + location = save_to_folder(base_name, output, args.output_folder) + print(f"[+] Waveform saved: {location}") + + print("".join(["="] * 100)) + print(f"[🍵] Average Matcha-TTS RTF: {np.mean(total_rtf):.4f} ± {np.std(total_rtf)}") + print(f"[🍵] Average Matcha-TTS + VOCODER RTF: {np.mean(total_rtf_w):.4f} ± {np.std(total_rtf_w)}") + print("[🍵] Enjoy the freshly whisked 🍵 Matcha-TTS!") + + +def print_config(args): + print("[!] Configurations: ") + print(f"\t- Model: {args.model}") + print(f"\t- Vocoder: {args.vocoder}") + print(f"\t- Temperature: {args.temperature}") + print(f"\t- Speaking rate: {args.speaking_rate}") + print(f"\t- Number of ODE steps: {args.steps}") + print(f"\t- Speaker: {args.spk}") + + +def get_device(args): + if torch.cuda.is_available() and not args.cpu: + print("[+] GPU Available! Using GPU") + device = torch.device("cuda") + else: + print("[-] GPU not available or forced CPU run! Using CPU") + device = torch.device("cpu") + return device + + +if __name__ == "__main__": + cli() diff --git a/third_party/Matcha-TTS/matcha/data/__init__.py b/third_party/Matcha-TTS/matcha/data/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/data/components/__init__.py b/third_party/Matcha-TTS/matcha/data/components/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/data/text_mel_datamodule.py b/third_party/Matcha-TTS/matcha/data/text_mel_datamodule.py new file mode 100644 index 0000000000000000000000000000000000000000..704f93629f1874b88efd07609409653ffbb8338a --- /dev/null +++ b/third_party/Matcha-TTS/matcha/data/text_mel_datamodule.py @@ -0,0 +1,231 @@ +import random +from typing import Any, Dict, Optional + +import torch +import torchaudio as ta +from lightning import LightningDataModule +from torch.utils.data.dataloader import DataLoader + +from matcha.text import text_to_sequence +from matcha.utils.audio import mel_spectrogram +from matcha.utils.model import fix_len_compatibility, normalize +from matcha.utils.utils import intersperse + + +def parse_filelist(filelist_path, split_char="|"): + with open(filelist_path, encoding="utf-8") as f: + filepaths_and_text = [line.strip().split(split_char) for line in f] + return filepaths_and_text + + +class TextMelDataModule(LightningDataModule): + def __init__( # pylint: disable=unused-argument + self, + name, + train_filelist_path, + valid_filelist_path, + batch_size, + num_workers, + pin_memory, + cleaners, + add_blank, + n_spks, + n_fft, + n_feats, + sample_rate, + hop_length, + win_length, + f_min, + f_max, + data_statistics, + seed, + ): + super().__init__() + + # this line allows to access init params with 'self.hparams' attribute + # also ensures init params will be stored in ckpt + self.save_hyperparameters(logger=False) + + def setup(self, stage: Optional[str] = None): # pylint: disable=unused-argument + """Load data. Set variables: `self.data_train`, `self.data_val`, `self.data_test`. + + This method is called by lightning with both `trainer.fit()` and `trainer.test()`, so be + careful not to execute things like random split twice! + """ + # load and split datasets only if not loaded already + + self.trainset = TextMelDataset( # pylint: disable=attribute-defined-outside-init + self.hparams.train_filelist_path, + self.hparams.n_spks, + self.hparams.cleaners, + self.hparams.add_blank, + self.hparams.n_fft, + self.hparams.n_feats, + self.hparams.sample_rate, + self.hparams.hop_length, + self.hparams.win_length, + self.hparams.f_min, + self.hparams.f_max, + self.hparams.data_statistics, + self.hparams.seed, + ) + self.validset = TextMelDataset( # pylint: disable=attribute-defined-outside-init + self.hparams.valid_filelist_path, + self.hparams.n_spks, + self.hparams.cleaners, + self.hparams.add_blank, + self.hparams.n_fft, + self.hparams.n_feats, + self.hparams.sample_rate, + self.hparams.hop_length, + self.hparams.win_length, + self.hparams.f_min, + self.hparams.f_max, + self.hparams.data_statistics, + self.hparams.seed, + ) + + def train_dataloader(self): + return DataLoader( + dataset=self.trainset, + batch_size=self.hparams.batch_size, + num_workers=self.hparams.num_workers, + pin_memory=self.hparams.pin_memory, + shuffle=True, + collate_fn=TextMelBatchCollate(self.hparams.n_spks), + ) + + def val_dataloader(self): + return DataLoader( + dataset=self.validset, + batch_size=self.hparams.batch_size, + num_workers=self.hparams.num_workers, + pin_memory=self.hparams.pin_memory, + shuffle=False, + collate_fn=TextMelBatchCollate(self.hparams.n_spks), + ) + + def teardown(self, stage: Optional[str] = None): + """Clean up after fit or test.""" + pass # pylint: disable=unnecessary-pass + + def state_dict(self): # pylint: disable=no-self-use + """Extra things to save to checkpoint.""" + return {} + + def load_state_dict(self, state_dict: Dict[str, Any]): + """Things to do when loading checkpoint.""" + pass # pylint: disable=unnecessary-pass + + +class TextMelDataset(torch.utils.data.Dataset): + def __init__( + self, + filelist_path, + n_spks, + cleaners, + add_blank=True, + n_fft=1024, + n_mels=80, + sample_rate=22050, + hop_length=256, + win_length=1024, + f_min=0.0, + f_max=8000, + data_parameters=None, + seed=None, + ): + self.filepaths_and_text = parse_filelist(filelist_path) + self.n_spks = n_spks + self.cleaners = cleaners + self.add_blank = add_blank + self.n_fft = n_fft + self.n_mels = n_mels + self.sample_rate = sample_rate + self.hop_length = hop_length + self.win_length = win_length + self.f_min = f_min + self.f_max = f_max + if data_parameters is not None: + self.data_parameters = data_parameters + else: + self.data_parameters = {"mel_mean": 0, "mel_std": 1} + random.seed(seed) + random.shuffle(self.filepaths_and_text) + + def get_datapoint(self, filepath_and_text): + if self.n_spks > 1: + filepath, spk, text = ( + filepath_and_text[0], + int(filepath_and_text[1]), + filepath_and_text[2], + ) + else: + filepath, text = filepath_and_text[0], filepath_and_text[1] + spk = None + + text = self.get_text(text, add_blank=self.add_blank) + mel = self.get_mel(filepath) + + return {"x": text, "y": mel, "spk": spk} + + def get_mel(self, filepath): + audio, sr = ta.load(filepath) + assert sr == self.sample_rate + mel = mel_spectrogram( + audio, + self.n_fft, + self.n_mels, + self.sample_rate, + self.hop_length, + self.win_length, + self.f_min, + self.f_max, + center=False, + ).squeeze() + mel = normalize(mel, self.data_parameters["mel_mean"], self.data_parameters["mel_std"]) + return mel + + def get_text(self, text, add_blank=True): + text_norm = text_to_sequence(text, self.cleaners) + if self.add_blank: + text_norm = intersperse(text_norm, 0) + text_norm = torch.IntTensor(text_norm) + return text_norm + + def __getitem__(self, index): + datapoint = self.get_datapoint(self.filepaths_and_text[index]) + return datapoint + + def __len__(self): + return len(self.filepaths_and_text) + + +class TextMelBatchCollate: + def __init__(self, n_spks): + self.n_spks = n_spks + + def __call__(self, batch): + B = len(batch) + y_max_length = max([item["y"].shape[-1] for item in batch]) + y_max_length = fix_len_compatibility(y_max_length) + x_max_length = max([item["x"].shape[-1] for item in batch]) + n_feats = batch[0]["y"].shape[-2] + + y = torch.zeros((B, n_feats, y_max_length), dtype=torch.float32) + x = torch.zeros((B, x_max_length), dtype=torch.long) + y_lengths, x_lengths = [], [] + spks = [] + for i, item in enumerate(batch): + y_, x_ = item["y"], item["x"] + y_lengths.append(y_.shape[-1]) + x_lengths.append(x_.shape[-1]) + y[i, :, : y_.shape[-1]] = y_ + x[i, : x_.shape[-1]] = x_ + spks.append(item["spk"]) + + y_lengths = torch.tensor(y_lengths, dtype=torch.long) + x_lengths = torch.tensor(x_lengths, dtype=torch.long) + spks = torch.tensor(spks, dtype=torch.long) if self.n_spks > 1 else None + + return {"x": x, "x_lengths": x_lengths, "y": y, "y_lengths": y_lengths, "spks": spks} diff --git a/third_party/Matcha-TTS/matcha/hifigan/LICENSE b/third_party/Matcha-TTS/matcha/hifigan/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..91751daed806f63ac594cf077a3065f719a41662 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Jungil Kong + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/third_party/Matcha-TTS/matcha/hifigan/README.md b/third_party/Matcha-TTS/matcha/hifigan/README.md new file mode 100644 index 0000000000000000000000000000000000000000..5db25850451a794b1db1b15b08e82c1d802edbb3 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/README.md @@ -0,0 +1,101 @@ +# HiFi-GAN: Generative Adversarial Networks for Efficient and High Fidelity Speech Synthesis + +### Jungil Kong, Jaehyeon Kim, Jaekyoung Bae + +In our [paper](https://arxiv.org/abs/2010.05646), +we proposed HiFi-GAN: a GAN-based model capable of generating high fidelity speech efficiently.
+We provide our implementation and pretrained models as open source in this repository. + +**Abstract :** +Several recent work on speech synthesis have employed generative adversarial networks (GANs) to produce raw waveforms. +Although such methods improve the sampling efficiency and memory usage, +their sample quality has not yet reached that of autoregressive and flow-based generative models. +In this work, we propose HiFi-GAN, which achieves both efficient and high-fidelity speech synthesis. +As speech audio consists of sinusoidal signals with various periods, +we demonstrate that modeling periodic patterns of an audio is crucial for enhancing sample quality. +A subjective human evaluation (mean opinion score, MOS) of a single speaker dataset indicates that our proposed method +demonstrates similarity to human quality while generating 22.05 kHz high-fidelity audio 167.9 times faster than +real-time on a single V100 GPU. We further show the generality of HiFi-GAN to the mel-spectrogram inversion of unseen +speakers and end-to-end speech synthesis. Finally, a small footprint version of HiFi-GAN generates samples 13.4 times +faster than real-time on CPU with comparable quality to an autoregressive counterpart. + +Visit our [demo website](https://jik876.github.io/hifi-gan-demo/) for audio samples. + +## Pre-requisites + +1. Python >= 3.6 +2. Clone this repository. +3. Install python requirements. Please refer [requirements.txt](requirements.txt) +4. Download and extract the [LJ Speech dataset](https://keithito.com/LJ-Speech-Dataset/). + And move all wav files to `LJSpeech-1.1/wavs` + +## Training + +``` +python train.py --config config_v1.json +``` + +To train V2 or V3 Generator, replace `config_v1.json` with `config_v2.json` or `config_v3.json`.
+Checkpoints and copy of the configuration file are saved in `cp_hifigan` directory by default.
+You can change the path by adding `--checkpoint_path` option. + +Validation loss during training with V1 generator.
+![validation loss](./validation_loss.png) + +## Pretrained Model + +You can also use pretrained models we provide.
+[Download pretrained models](https://drive.google.com/drive/folders/1-eEYTB5Av9jNql0WGBlRoi-WH2J7bp5Y?usp=sharing)
+Details of each folder are as in follows: + +| Folder Name | Generator | Dataset | Fine-Tuned | +| ------------ | --------- | --------- | ------------------------------------------------------ | +| LJ_V1 | V1 | LJSpeech | No | +| LJ_V2 | V2 | LJSpeech | No | +| LJ_V3 | V3 | LJSpeech | No | +| LJ_FT_T2_V1 | V1 | LJSpeech | Yes ([Tacotron2](https://github.com/NVIDIA/tacotron2)) | +| LJ_FT_T2_V2 | V2 | LJSpeech | Yes ([Tacotron2](https://github.com/NVIDIA/tacotron2)) | +| LJ_FT_T2_V3 | V3 | LJSpeech | Yes ([Tacotron2](https://github.com/NVIDIA/tacotron2)) | +| VCTK_V1 | V1 | VCTK | No | +| VCTK_V2 | V2 | VCTK | No | +| VCTK_V3 | V3 | VCTK | No | +| UNIVERSAL_V1 | V1 | Universal | No | + +We provide the universal model with discriminator weights that can be used as a base for transfer learning to other datasets. + +## Fine-Tuning + +1. Generate mel-spectrograms in numpy format using [Tacotron2](https://github.com/NVIDIA/tacotron2) with teacher-forcing.
+ The file name of the generated mel-spectrogram should match the audio file and the extension should be `.npy`.
+ Example: + ` Audio File : LJ001-0001.wav +Mel-Spectrogram File : LJ001-0001.npy` +2. Create `ft_dataset` folder and copy the generated mel-spectrogram files into it.
+3. Run the following command. + ``` + python train.py --fine_tuning True --config config_v1.json + ``` + For other command line options, please refer to the training section. + +## Inference from wav file + +1. Make `test_files` directory and copy wav files into the directory. +2. Run the following command. + ` python inference.py --checkpoint_file [generator checkpoint file path]` + Generated wav files are saved in `generated_files` by default.
+ You can change the path by adding `--output_dir` option. + +## Inference for end-to-end speech synthesis + +1. Make `test_mel_files` directory and copy generated mel-spectrogram files into the directory.
+ You can generate mel-spectrograms using [Tacotron2](https://github.com/NVIDIA/tacotron2), + [Glow-TTS](https://github.com/jaywalnut310/glow-tts) and so forth. +2. Run the following command. + ` python inference_e2e.py --checkpoint_file [generator checkpoint file path]` + Generated wav files are saved in `generated_files_from_mel` by default.
+ You can change the path by adding `--output_dir` option. + +## Acknowledgements + +We referred to [WaveGlow](https://github.com/NVIDIA/waveglow), [MelGAN](https://github.com/descriptinc/melgan-neurips) +and [Tacotron2](https://github.com/NVIDIA/tacotron2) to implement this. diff --git a/third_party/Matcha-TTS/matcha/hifigan/__init__.py b/third_party/Matcha-TTS/matcha/hifigan/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/hifigan/config.py b/third_party/Matcha-TTS/matcha/hifigan/config.py new file mode 100644 index 0000000000000000000000000000000000000000..b3abea9e151a08864353d32066bd4935e24b82e7 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/config.py @@ -0,0 +1,28 @@ +v1 = { + "resblock": "1", + "num_gpus": 0, + "batch_size": 16, + "learning_rate": 0.0004, + "adam_b1": 0.8, + "adam_b2": 0.99, + "lr_decay": 0.999, + "seed": 1234, + "upsample_rates": [8, 8, 2, 2], + "upsample_kernel_sizes": [16, 16, 4, 4], + "upsample_initial_channel": 512, + "resblock_kernel_sizes": [3, 7, 11], + "resblock_dilation_sizes": [[1, 3, 5], [1, 3, 5], [1, 3, 5]], + "resblock_initial_channel": 256, + "segment_size": 8192, + "num_mels": 80, + "num_freq": 1025, + "n_fft": 1024, + "hop_size": 256, + "win_size": 1024, + "sampling_rate": 22050, + "fmin": 0, + "fmax": 8000, + "fmax_loss": None, + "num_workers": 4, + "dist_config": {"dist_backend": "nccl", "dist_url": "tcp://localhost:54321", "world_size": 1}, +} diff --git a/third_party/Matcha-TTS/matcha/hifigan/denoiser.py b/third_party/Matcha-TTS/matcha/hifigan/denoiser.py new file mode 100644 index 0000000000000000000000000000000000000000..9fd33312a09b1940374a0e29a97fe3a1a1dac7d2 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/denoiser.py @@ -0,0 +1,64 @@ +# Code modified from Rafael Valle's implementation https://github.com/NVIDIA/waveglow/blob/5bc2a53e20b3b533362f974cfa1ea0267ae1c2b1/denoiser.py + +"""Waveglow style denoiser can be used to remove the artifacts from the HiFiGAN generated audio.""" +import torch + + +class Denoiser(torch.nn.Module): + """Removes model bias from audio produced with waveglow""" + + def __init__(self, vocoder, filter_length=1024, n_overlap=4, win_length=1024, mode="zeros"): + super().__init__() + self.filter_length = filter_length + self.hop_length = int(filter_length / n_overlap) + self.win_length = win_length + + dtype, device = next(vocoder.parameters()).dtype, next(vocoder.parameters()).device + self.device = device + if mode == "zeros": + mel_input = torch.zeros((1, 80, 88), dtype=dtype, device=device) + elif mode == "normal": + mel_input = torch.randn((1, 80, 88), dtype=dtype, device=device) + else: + raise Exception(f"Mode {mode} if not supported") + + def stft_fn(audio, n_fft, hop_length, win_length, window): + spec = torch.stft( + audio, + n_fft=n_fft, + hop_length=hop_length, + win_length=win_length, + window=window, + return_complex=True, + ) + spec = torch.view_as_real(spec) + return torch.sqrt(spec.pow(2).sum(-1)), torch.atan2(spec[..., -1], spec[..., 0]) + + self.stft = lambda x: stft_fn( + audio=x, + n_fft=self.filter_length, + hop_length=self.hop_length, + win_length=self.win_length, + window=torch.hann_window(self.win_length, device=device), + ) + self.istft = lambda x, y: torch.istft( + torch.complex(x * torch.cos(y), x * torch.sin(y)), + n_fft=self.filter_length, + hop_length=self.hop_length, + win_length=self.win_length, + window=torch.hann_window(self.win_length, device=device), + ) + + with torch.no_grad(): + bias_audio = vocoder(mel_input).float().squeeze(0) + bias_spec, _ = self.stft(bias_audio) + + self.register_buffer("bias_spec", bias_spec[:, :, 0][:, :, None]) + + @torch.inference_mode() + def forward(self, audio, strength=0.0005): + audio_spec, audio_angles = self.stft(audio) + audio_spec_denoised = audio_spec - self.bias_spec.to(audio.device) * strength + audio_spec_denoised = torch.clamp(audio_spec_denoised, 0.0) + audio_denoised = self.istft(audio_spec_denoised, audio_angles) + return audio_denoised diff --git a/third_party/Matcha-TTS/matcha/hifigan/env.py b/third_party/Matcha-TTS/matcha/hifigan/env.py new file mode 100644 index 0000000000000000000000000000000000000000..9ea4f948a3f002921bf9bc24f52cbc1c0b1fc2ec --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/env.py @@ -0,0 +1,17 @@ +""" from https://github.com/jik876/hifi-gan """ + +import os +import shutil + + +class AttrDict(dict): + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self.__dict__ = self + + +def build_env(config, config_name, path): + t_path = os.path.join(path, config_name) + if config != t_path: + os.makedirs(path, exist_ok=True) + shutil.copyfile(config, os.path.join(path, config_name)) diff --git a/third_party/Matcha-TTS/matcha/hifigan/meldataset.py b/third_party/Matcha-TTS/matcha/hifigan/meldataset.py new file mode 100644 index 0000000000000000000000000000000000000000..8b43ea7965e04a52d5427a485ee911b743057c4a --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/meldataset.py @@ -0,0 +1,217 @@ +""" from https://github.com/jik876/hifi-gan """ + +import math +import os +import random + +import numpy as np +import torch +import torch.utils.data +from librosa.filters import mel as librosa_mel_fn +from librosa.util import normalize +from scipy.io.wavfile import read + +MAX_WAV_VALUE = 32768.0 + + +def load_wav(full_path): + sampling_rate, data = read(full_path) + return data, sampling_rate + + +def dynamic_range_compression(x, C=1, clip_val=1e-5): + return np.log(np.clip(x, a_min=clip_val, a_max=None) * C) + + +def dynamic_range_decompression(x, C=1): + return np.exp(x) / C + + +def dynamic_range_compression_torch(x, C=1, clip_val=1e-5): + return torch.log(torch.clamp(x, min=clip_val) * C) + + +def dynamic_range_decompression_torch(x, C=1): + return torch.exp(x) / C + + +def spectral_normalize_torch(magnitudes): + output = dynamic_range_compression_torch(magnitudes) + return output + + +def spectral_de_normalize_torch(magnitudes): + output = dynamic_range_decompression_torch(magnitudes) + return output + + +mel_basis = {} +hann_window = {} + + +def mel_spectrogram(y, n_fft, num_mels, sampling_rate, hop_size, win_size, fmin, fmax, center=False): + if torch.min(y) < -1.0: + print("min value is ", torch.min(y)) + if torch.max(y) > 1.0: + print("max value is ", torch.max(y)) + + global mel_basis, hann_window # pylint: disable=global-statement + if fmax not in mel_basis: + mel = librosa_mel_fn(sampling_rate, n_fft, num_mels, fmin, fmax) + mel_basis[str(fmax) + "_" + str(y.device)] = torch.from_numpy(mel).float().to(y.device) + hann_window[str(y.device)] = torch.hann_window(win_size).to(y.device) + + y = torch.nn.functional.pad( + y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), mode="reflect" + ) + y = y.squeeze(1) + + spec = torch.view_as_real( + torch.stft( + y, + n_fft, + hop_length=hop_size, + win_length=win_size, + window=hann_window[str(y.device)], + center=center, + pad_mode="reflect", + normalized=False, + onesided=True, + return_complex=True, + ) + ) + + spec = torch.sqrt(spec.pow(2).sum(-1) + (1e-9)) + + spec = torch.matmul(mel_basis[str(fmax) + "_" + str(y.device)], spec) + spec = spectral_normalize_torch(spec) + + return spec + + +def get_dataset_filelist(a): + with open(a.input_training_file, encoding="utf-8") as fi: + training_files = [ + os.path.join(a.input_wavs_dir, x.split("|")[0] + ".wav") for x in fi.read().split("\n") if len(x) > 0 + ] + + with open(a.input_validation_file, encoding="utf-8") as fi: + validation_files = [ + os.path.join(a.input_wavs_dir, x.split("|")[0] + ".wav") for x in fi.read().split("\n") if len(x) > 0 + ] + return training_files, validation_files + + +class MelDataset(torch.utils.data.Dataset): + def __init__( + self, + training_files, + segment_size, + n_fft, + num_mels, + hop_size, + win_size, + sampling_rate, + fmin, + fmax, + split=True, + shuffle=True, + n_cache_reuse=1, + device=None, + fmax_loss=None, + fine_tuning=False, + base_mels_path=None, + ): + self.audio_files = training_files + random.seed(1234) + if shuffle: + random.shuffle(self.audio_files) + self.segment_size = segment_size + self.sampling_rate = sampling_rate + self.split = split + self.n_fft = n_fft + self.num_mels = num_mels + self.hop_size = hop_size + self.win_size = win_size + self.fmin = fmin + self.fmax = fmax + self.fmax_loss = fmax_loss + self.cached_wav = None + self.n_cache_reuse = n_cache_reuse + self._cache_ref_count = 0 + self.device = device + self.fine_tuning = fine_tuning + self.base_mels_path = base_mels_path + + def __getitem__(self, index): + filename = self.audio_files[index] + if self._cache_ref_count == 0: + audio, sampling_rate = load_wav(filename) + audio = audio / MAX_WAV_VALUE + if not self.fine_tuning: + audio = normalize(audio) * 0.95 + self.cached_wav = audio + if sampling_rate != self.sampling_rate: + raise ValueError(f"{sampling_rate} SR doesn't match target {self.sampling_rate} SR") + self._cache_ref_count = self.n_cache_reuse + else: + audio = self.cached_wav + self._cache_ref_count -= 1 + + audio = torch.FloatTensor(audio) + audio = audio.unsqueeze(0) + + if not self.fine_tuning: + if self.split: + if audio.size(1) >= self.segment_size: + max_audio_start = audio.size(1) - self.segment_size + audio_start = random.randint(0, max_audio_start) + audio = audio[:, audio_start : audio_start + self.segment_size] + else: + audio = torch.nn.functional.pad(audio, (0, self.segment_size - audio.size(1)), "constant") + + mel = mel_spectrogram( + audio, + self.n_fft, + self.num_mels, + self.sampling_rate, + self.hop_size, + self.win_size, + self.fmin, + self.fmax, + center=False, + ) + else: + mel = np.load(os.path.join(self.base_mels_path, os.path.splitext(os.path.split(filename)[-1])[0] + ".npy")) + mel = torch.from_numpy(mel) + + if len(mel.shape) < 3: + mel = mel.unsqueeze(0) + + if self.split: + frames_per_seg = math.ceil(self.segment_size / self.hop_size) + + if audio.size(1) >= self.segment_size: + mel_start = random.randint(0, mel.size(2) - frames_per_seg - 1) + mel = mel[:, :, mel_start : mel_start + frames_per_seg] + audio = audio[:, mel_start * self.hop_size : (mel_start + frames_per_seg) * self.hop_size] + else: + mel = torch.nn.functional.pad(mel, (0, frames_per_seg - mel.size(2)), "constant") + audio = torch.nn.functional.pad(audio, (0, self.segment_size - audio.size(1)), "constant") + + mel_loss = mel_spectrogram( + audio, + self.n_fft, + self.num_mels, + self.sampling_rate, + self.hop_size, + self.win_size, + self.fmin, + self.fmax_loss, + center=False, + ) + + return (mel.squeeze(), audio.squeeze(0), filename, mel_loss.squeeze()) + + def __len__(self): + return len(self.audio_files) diff --git a/third_party/Matcha-TTS/matcha/hifigan/models.py b/third_party/Matcha-TTS/matcha/hifigan/models.py new file mode 100644 index 0000000000000000000000000000000000000000..d209d9a4e99ec29e4167a5a2eaa62d72b3eff694 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/models.py @@ -0,0 +1,368 @@ +""" from https://github.com/jik876/hifi-gan """ + +import torch +import torch.nn as nn +import torch.nn.functional as F +from torch.nn import AvgPool1d, Conv1d, Conv2d, ConvTranspose1d +from torch.nn.utils import remove_weight_norm, spectral_norm, weight_norm + +from .xutils import get_padding, init_weights + +LRELU_SLOPE = 0.1 + + +class ResBlock1(torch.nn.Module): + def __init__(self, h, channels, kernel_size=3, dilation=(1, 3, 5)): + super().__init__() + self.h = h + self.convs1 = nn.ModuleList( + [ + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=dilation[0], + padding=get_padding(kernel_size, dilation[0]), + ) + ), + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=dilation[1], + padding=get_padding(kernel_size, dilation[1]), + ) + ), + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=dilation[2], + padding=get_padding(kernel_size, dilation[2]), + ) + ), + ] + ) + self.convs1.apply(init_weights) + + self.convs2 = nn.ModuleList( + [ + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=1, + padding=get_padding(kernel_size, 1), + ) + ), + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=1, + padding=get_padding(kernel_size, 1), + ) + ), + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=1, + padding=get_padding(kernel_size, 1), + ) + ), + ] + ) + self.convs2.apply(init_weights) + + def forward(self, x): + for c1, c2 in zip(self.convs1, self.convs2): + xt = F.leaky_relu(x, LRELU_SLOPE) + xt = c1(xt) + xt = F.leaky_relu(xt, LRELU_SLOPE) + xt = c2(xt) + x = xt + x + return x + + def remove_weight_norm(self): + for l in self.convs1: + remove_weight_norm(l) + for l in self.convs2: + remove_weight_norm(l) + + +class ResBlock2(torch.nn.Module): + def __init__(self, h, channels, kernel_size=3, dilation=(1, 3)): + super().__init__() + self.h = h + self.convs = nn.ModuleList( + [ + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=dilation[0], + padding=get_padding(kernel_size, dilation[0]), + ) + ), + weight_norm( + Conv1d( + channels, + channels, + kernel_size, + 1, + dilation=dilation[1], + padding=get_padding(kernel_size, dilation[1]), + ) + ), + ] + ) + self.convs.apply(init_weights) + + def forward(self, x): + for c in self.convs: + xt = F.leaky_relu(x, LRELU_SLOPE) + xt = c(xt) + x = xt + x + return x + + def remove_weight_norm(self): + for l in self.convs: + remove_weight_norm(l) + + +class Generator(torch.nn.Module): + def __init__(self, h): + super().__init__() + self.h = h + self.num_kernels = len(h.resblock_kernel_sizes) + self.num_upsamples = len(h.upsample_rates) + self.conv_pre = weight_norm(Conv1d(80, h.upsample_initial_channel, 7, 1, padding=3)) + resblock = ResBlock1 if h.resblock == "1" else ResBlock2 + + self.ups = nn.ModuleList() + for i, (u, k) in enumerate(zip(h.upsample_rates, h.upsample_kernel_sizes)): + self.ups.append( + weight_norm( + ConvTranspose1d( + h.upsample_initial_channel // (2**i), + h.upsample_initial_channel // (2 ** (i + 1)), + k, + u, + padding=(k - u) // 2, + ) + ) + ) + + self.resblocks = nn.ModuleList() + for i in range(len(self.ups)): + ch = h.upsample_initial_channel // (2 ** (i + 1)) + for _, (k, d) in enumerate(zip(h.resblock_kernel_sizes, h.resblock_dilation_sizes)): + self.resblocks.append(resblock(h, ch, k, d)) + + self.conv_post = weight_norm(Conv1d(ch, 1, 7, 1, padding=3)) + self.ups.apply(init_weights) + self.conv_post.apply(init_weights) + + def forward(self, x): + x = self.conv_pre(x) + for i in range(self.num_upsamples): + x = F.leaky_relu(x, LRELU_SLOPE) + x = self.ups[i](x) + xs = None + for j in range(self.num_kernels): + if xs is None: + xs = self.resblocks[i * self.num_kernels + j](x) + else: + xs += self.resblocks[i * self.num_kernels + j](x) + x = xs / self.num_kernels + x = F.leaky_relu(x) + x = self.conv_post(x) + x = torch.tanh(x) + + return x + + def remove_weight_norm(self): + print("Removing weight norm...") + for l in self.ups: + remove_weight_norm(l) + for l in self.resblocks: + l.remove_weight_norm() + remove_weight_norm(self.conv_pre) + remove_weight_norm(self.conv_post) + + +class DiscriminatorP(torch.nn.Module): + def __init__(self, period, kernel_size=5, stride=3, use_spectral_norm=False): + super().__init__() + self.period = period + norm_f = weight_norm if use_spectral_norm is False else spectral_norm + self.convs = nn.ModuleList( + [ + norm_f(Conv2d(1, 32, (kernel_size, 1), (stride, 1), padding=(get_padding(5, 1), 0))), + norm_f(Conv2d(32, 128, (kernel_size, 1), (stride, 1), padding=(get_padding(5, 1), 0))), + norm_f(Conv2d(128, 512, (kernel_size, 1), (stride, 1), padding=(get_padding(5, 1), 0))), + norm_f(Conv2d(512, 1024, (kernel_size, 1), (stride, 1), padding=(get_padding(5, 1), 0))), + norm_f(Conv2d(1024, 1024, (kernel_size, 1), 1, padding=(2, 0))), + ] + ) + self.conv_post = norm_f(Conv2d(1024, 1, (3, 1), 1, padding=(1, 0))) + + def forward(self, x): + fmap = [] + + # 1d to 2d + b, c, t = x.shape + if t % self.period != 0: # pad first + n_pad = self.period - (t % self.period) + x = F.pad(x, (0, n_pad), "reflect") + t = t + n_pad + x = x.view(b, c, t // self.period, self.period) + + for l in self.convs: + x = l(x) + x = F.leaky_relu(x, LRELU_SLOPE) + fmap.append(x) + x = self.conv_post(x) + fmap.append(x) + x = torch.flatten(x, 1, -1) + + return x, fmap + + +class MultiPeriodDiscriminator(torch.nn.Module): + def __init__(self): + super().__init__() + self.discriminators = nn.ModuleList( + [ + DiscriminatorP(2), + DiscriminatorP(3), + DiscriminatorP(5), + DiscriminatorP(7), + DiscriminatorP(11), + ] + ) + + def forward(self, y, y_hat): + y_d_rs = [] + y_d_gs = [] + fmap_rs = [] + fmap_gs = [] + for _, d in enumerate(self.discriminators): + y_d_r, fmap_r = d(y) + y_d_g, fmap_g = d(y_hat) + y_d_rs.append(y_d_r) + fmap_rs.append(fmap_r) + y_d_gs.append(y_d_g) + fmap_gs.append(fmap_g) + + return y_d_rs, y_d_gs, fmap_rs, fmap_gs + + +class DiscriminatorS(torch.nn.Module): + def __init__(self, use_spectral_norm=False): + super().__init__() + norm_f = weight_norm if use_spectral_norm is False else spectral_norm + self.convs = nn.ModuleList( + [ + norm_f(Conv1d(1, 128, 15, 1, padding=7)), + norm_f(Conv1d(128, 128, 41, 2, groups=4, padding=20)), + norm_f(Conv1d(128, 256, 41, 2, groups=16, padding=20)), + norm_f(Conv1d(256, 512, 41, 4, groups=16, padding=20)), + norm_f(Conv1d(512, 1024, 41, 4, groups=16, padding=20)), + norm_f(Conv1d(1024, 1024, 41, 1, groups=16, padding=20)), + norm_f(Conv1d(1024, 1024, 5, 1, padding=2)), + ] + ) + self.conv_post = norm_f(Conv1d(1024, 1, 3, 1, padding=1)) + + def forward(self, x): + fmap = [] + for l in self.convs: + x = l(x) + x = F.leaky_relu(x, LRELU_SLOPE) + fmap.append(x) + x = self.conv_post(x) + fmap.append(x) + x = torch.flatten(x, 1, -1) + + return x, fmap + + +class MultiScaleDiscriminator(torch.nn.Module): + def __init__(self): + super().__init__() + self.discriminators = nn.ModuleList( + [ + DiscriminatorS(use_spectral_norm=True), + DiscriminatorS(), + DiscriminatorS(), + ] + ) + self.meanpools = nn.ModuleList([AvgPool1d(4, 2, padding=2), AvgPool1d(4, 2, padding=2)]) + + def forward(self, y, y_hat): + y_d_rs = [] + y_d_gs = [] + fmap_rs = [] + fmap_gs = [] + for i, d in enumerate(self.discriminators): + if i != 0: + y = self.meanpools[i - 1](y) + y_hat = self.meanpools[i - 1](y_hat) + y_d_r, fmap_r = d(y) + y_d_g, fmap_g = d(y_hat) + y_d_rs.append(y_d_r) + fmap_rs.append(fmap_r) + y_d_gs.append(y_d_g) + fmap_gs.append(fmap_g) + + return y_d_rs, y_d_gs, fmap_rs, fmap_gs + + +def feature_loss(fmap_r, fmap_g): + loss = 0 + for dr, dg in zip(fmap_r, fmap_g): + for rl, gl in zip(dr, dg): + loss += torch.mean(torch.abs(rl - gl)) + + return loss * 2 + + +def discriminator_loss(disc_real_outputs, disc_generated_outputs): + loss = 0 + r_losses = [] + g_losses = [] + for dr, dg in zip(disc_real_outputs, disc_generated_outputs): + r_loss = torch.mean((1 - dr) ** 2) + g_loss = torch.mean(dg**2) + loss += r_loss + g_loss + r_losses.append(r_loss.item()) + g_losses.append(g_loss.item()) + + return loss, r_losses, g_losses + + +def generator_loss(disc_outputs): + loss = 0 + gen_losses = [] + for dg in disc_outputs: + l = torch.mean((1 - dg) ** 2) + gen_losses.append(l) + loss += l + + return loss, gen_losses diff --git a/third_party/Matcha-TTS/matcha/hifigan/xutils.py b/third_party/Matcha-TTS/matcha/hifigan/xutils.py new file mode 100644 index 0000000000000000000000000000000000000000..eefadcb7a1d0bf9015e636b88fee3e22c9771bc5 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/hifigan/xutils.py @@ -0,0 +1,60 @@ +""" from https://github.com/jik876/hifi-gan """ + +import glob +import os + +import matplotlib +import torch +from torch.nn.utils import weight_norm + +matplotlib.use("Agg") +import matplotlib.pylab as plt + + +def plot_spectrogram(spectrogram): + fig, ax = plt.subplots(figsize=(10, 2)) + im = ax.imshow(spectrogram, aspect="auto", origin="lower", interpolation="none") + plt.colorbar(im, ax=ax) + + fig.canvas.draw() + plt.close() + + return fig + + +def init_weights(m, mean=0.0, std=0.01): + classname = m.__class__.__name__ + if classname.find("Conv") != -1: + m.weight.data.normal_(mean, std) + + +def apply_weight_norm(m): + classname = m.__class__.__name__ + if classname.find("Conv") != -1: + weight_norm(m) + + +def get_padding(kernel_size, dilation=1): + return int((kernel_size * dilation - dilation) / 2) + + +def load_checkpoint(filepath, device): + assert os.path.isfile(filepath) + print(f"Loading '{filepath}'") + checkpoint_dict = torch.load(filepath, map_location=device) + print("Complete.") + return checkpoint_dict + + +def save_checkpoint(filepath, obj): + print(f"Saving checkpoint to {filepath}") + torch.save(obj, filepath) + print("Complete.") + + +def scan_checkpoint(cp_dir, prefix): + pattern = os.path.join(cp_dir, prefix + "????????") + cp_list = glob.glob(pattern) + if len(cp_list) == 0: + return None + return sorted(cp_list)[-1] diff --git a/third_party/Matcha-TTS/matcha/models/__init__.py b/third_party/Matcha-TTS/matcha/models/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/models/baselightningmodule.py b/third_party/Matcha-TTS/matcha/models/baselightningmodule.py new file mode 100644 index 0000000000000000000000000000000000000000..3724888090e36b5f55445d33a87fcdae687b35a5 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/models/baselightningmodule.py @@ -0,0 +1,209 @@ +""" +This is a base lightning module that can be used to train a model. +The benefit of this abstraction is that all the logic outside of model definition can be reused for different models. +""" +import inspect +from abc import ABC +from typing import Any, Dict + +import torch +from lightning import LightningModule +from lightning.pytorch.utilities import grad_norm + +from matcha import utils +from matcha.utils.utils import plot_tensor + +log = utils.get_pylogger(__name__) + + +class BaseLightningClass(LightningModule, ABC): + def update_data_statistics(self, data_statistics): + if data_statistics is None: + data_statistics = { + "mel_mean": 0.0, + "mel_std": 1.0, + } + + self.register_buffer("mel_mean", torch.tensor(data_statistics["mel_mean"])) + self.register_buffer("mel_std", torch.tensor(data_statistics["mel_std"])) + + def configure_optimizers(self) -> Any: + optimizer = self.hparams.optimizer(params=self.parameters()) + if self.hparams.scheduler not in (None, {}): + scheduler_args = {} + # Manage last epoch for exponential schedulers + if "last_epoch" in inspect.signature(self.hparams.scheduler.scheduler).parameters: + if hasattr(self, "ckpt_loaded_epoch"): + current_epoch = self.ckpt_loaded_epoch - 1 + else: + current_epoch = -1 + + scheduler_args.update({"optimizer": optimizer}) + scheduler = self.hparams.scheduler.scheduler(**scheduler_args) + scheduler.last_epoch = current_epoch + return { + "optimizer": optimizer, + "lr_scheduler": { + "scheduler": scheduler, + "interval": self.hparams.scheduler.lightning_args.interval, + "frequency": self.hparams.scheduler.lightning_args.frequency, + "name": "learning_rate", + }, + } + + return {"optimizer": optimizer} + + def get_losses(self, batch): + x, x_lengths = batch["x"], batch["x_lengths"] + y, y_lengths = batch["y"], batch["y_lengths"] + spks = batch["spks"] + + dur_loss, prior_loss, diff_loss = self( + x=x, + x_lengths=x_lengths, + y=y, + y_lengths=y_lengths, + spks=spks, + out_size=self.out_size, + ) + return { + "dur_loss": dur_loss, + "prior_loss": prior_loss, + "diff_loss": diff_loss, + } + + def on_load_checkpoint(self, checkpoint: Dict[str, Any]) -> None: + self.ckpt_loaded_epoch = checkpoint["epoch"] # pylint: disable=attribute-defined-outside-init + + def training_step(self, batch: Any, batch_idx: int): + loss_dict = self.get_losses(batch) + self.log( + "step", + float(self.global_step), + on_step=True, + prog_bar=True, + logger=True, + sync_dist=True, + ) + + self.log( + "sub_loss/train_dur_loss", + loss_dict["dur_loss"], + on_step=True, + on_epoch=True, + logger=True, + sync_dist=True, + ) + self.log( + "sub_loss/train_prior_loss", + loss_dict["prior_loss"], + on_step=True, + on_epoch=True, + logger=True, + sync_dist=True, + ) + self.log( + "sub_loss/train_diff_loss", + loss_dict["diff_loss"], + on_step=True, + on_epoch=True, + logger=True, + sync_dist=True, + ) + + total_loss = sum(loss_dict.values()) + self.log( + "loss/train", + total_loss, + on_step=True, + on_epoch=True, + logger=True, + prog_bar=True, + sync_dist=True, + ) + + return {"loss": total_loss, "log": loss_dict} + + def validation_step(self, batch: Any, batch_idx: int): + loss_dict = self.get_losses(batch) + self.log( + "sub_loss/val_dur_loss", + loss_dict["dur_loss"], + on_step=True, + on_epoch=True, + logger=True, + sync_dist=True, + ) + self.log( + "sub_loss/val_prior_loss", + loss_dict["prior_loss"], + on_step=True, + on_epoch=True, + logger=True, + sync_dist=True, + ) + self.log( + "sub_loss/val_diff_loss", + loss_dict["diff_loss"], + on_step=True, + on_epoch=True, + logger=True, + sync_dist=True, + ) + + total_loss = sum(loss_dict.values()) + self.log( + "loss/val", + total_loss, + on_step=True, + on_epoch=True, + logger=True, + prog_bar=True, + sync_dist=True, + ) + + return total_loss + + def on_validation_end(self) -> None: + if self.trainer.is_global_zero: + one_batch = next(iter(self.trainer.val_dataloaders)) + if self.current_epoch == 0: + log.debug("Plotting original samples") + for i in range(2): + y = one_batch["y"][i].unsqueeze(0).to(self.device) + self.logger.experiment.add_image( + f"original/{i}", + plot_tensor(y.squeeze().cpu()), + self.current_epoch, + dataformats="HWC", + ) + + log.debug("Synthesising...") + for i in range(2): + x = one_batch["x"][i].unsqueeze(0).to(self.device) + x_lengths = one_batch["x_lengths"][i].unsqueeze(0).to(self.device) + spks = one_batch["spks"][i].unsqueeze(0).to(self.device) if one_batch["spks"] is not None else None + output = self.synthesise(x[:, :x_lengths], x_lengths, n_timesteps=10, spks=spks) + y_enc, y_dec = output["encoder_outputs"], output["decoder_outputs"] + attn = output["attn"] + self.logger.experiment.add_image( + f"generated_enc/{i}", + plot_tensor(y_enc.squeeze().cpu()), + self.current_epoch, + dataformats="HWC", + ) + self.logger.experiment.add_image( + f"generated_dec/{i}", + plot_tensor(y_dec.squeeze().cpu()), + self.current_epoch, + dataformats="HWC", + ) + self.logger.experiment.add_image( + f"alignment/{i}", + plot_tensor(attn.squeeze().cpu()), + self.current_epoch, + dataformats="HWC", + ) + + def on_before_optimizer_step(self, optimizer): + self.log_dict({f"grad_norm/{k}": v for k, v in grad_norm(self, norm_type=2).items()}) diff --git a/third_party/Matcha-TTS/matcha/models/components/__init__.py b/third_party/Matcha-TTS/matcha/models/components/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/models/components/decoder.py b/third_party/Matcha-TTS/matcha/models/components/decoder.py new file mode 100644 index 0000000000000000000000000000000000000000..1137cd7008e9d07b4f306926a82e44c2b2cddbdf --- /dev/null +++ b/third_party/Matcha-TTS/matcha/models/components/decoder.py @@ -0,0 +1,443 @@ +import math +from typing import Optional + +import torch +import torch.nn as nn +import torch.nn.functional as F +from conformer import ConformerBlock +from diffusers.models.activations import get_activation +from einops import pack, rearrange, repeat + +from matcha.models.components.transformer import BasicTransformerBlock + + +class SinusoidalPosEmb(torch.nn.Module): + def __init__(self, dim): + super().__init__() + self.dim = dim + assert self.dim % 2 == 0, "SinusoidalPosEmb requires dim to be even" + + def forward(self, x, scale=1000): + if x.ndim < 1: + x = x.unsqueeze(0) + device = x.device + half_dim = self.dim // 2 + emb = math.log(10000) / (half_dim - 1) + emb = torch.exp(torch.arange(half_dim, device=device).float() * -emb) + emb = scale * x.unsqueeze(1) * emb.unsqueeze(0) + emb = torch.cat((emb.sin(), emb.cos()), dim=-1) + return emb + + +class Block1D(torch.nn.Module): + def __init__(self, dim, dim_out, groups=8): + super().__init__() + self.block = torch.nn.Sequential( + torch.nn.Conv1d(dim, dim_out, 3, padding=1), + torch.nn.GroupNorm(groups, dim_out), + nn.Mish(), + ) + + def forward(self, x, mask): + output = self.block(x * mask) + return output * mask + + +class ResnetBlock1D(torch.nn.Module): + def __init__(self, dim, dim_out, time_emb_dim, groups=8): + super().__init__() + self.mlp = torch.nn.Sequential(nn.Mish(), torch.nn.Linear(time_emb_dim, dim_out)) + + self.block1 = Block1D(dim, dim_out, groups=groups) + self.block2 = Block1D(dim_out, dim_out, groups=groups) + + self.res_conv = torch.nn.Conv1d(dim, dim_out, 1) + + def forward(self, x, mask, time_emb): + h = self.block1(x, mask) + h += self.mlp(time_emb).unsqueeze(-1) + h = self.block2(h, mask) + output = h + self.res_conv(x * mask) + return output + + +class Downsample1D(nn.Module): + def __init__(self, dim): + super().__init__() + self.conv = torch.nn.Conv1d(dim, dim, 3, 2, 1) + + def forward(self, x): + return self.conv(x) + + +class TimestepEmbedding(nn.Module): + def __init__( + self, + in_channels: int, + time_embed_dim: int, + act_fn: str = "silu", + out_dim: int = None, + post_act_fn: Optional[str] = None, + cond_proj_dim=None, + ): + super().__init__() + + self.linear_1 = nn.Linear(in_channels, time_embed_dim) + + if cond_proj_dim is not None: + self.cond_proj = nn.Linear(cond_proj_dim, in_channels, bias=False) + else: + self.cond_proj = None + + self.act = get_activation(act_fn) + + if out_dim is not None: + time_embed_dim_out = out_dim + else: + time_embed_dim_out = time_embed_dim + self.linear_2 = nn.Linear(time_embed_dim, time_embed_dim_out) + + if post_act_fn is None: + self.post_act = None + else: + self.post_act = get_activation(post_act_fn) + + def forward(self, sample, condition=None): + if condition is not None: + sample = sample + self.cond_proj(condition) + sample = self.linear_1(sample) + + if self.act is not None: + sample = self.act(sample) + + sample = self.linear_2(sample) + + if self.post_act is not None: + sample = self.post_act(sample) + return sample + + +class Upsample1D(nn.Module): + """A 1D upsampling layer with an optional convolution. + + Parameters: + channels (`int`): + number of channels in the inputs and outputs. + use_conv (`bool`, default `False`): + option to use a convolution. + use_conv_transpose (`bool`, default `False`): + option to use a convolution transpose. + out_channels (`int`, optional): + number of output channels. Defaults to `channels`. + """ + + def __init__(self, channels, use_conv=False, use_conv_transpose=True, out_channels=None, name="conv"): + super().__init__() + self.channels = channels + self.out_channels = out_channels or channels + self.use_conv = use_conv + self.use_conv_transpose = use_conv_transpose + self.name = name + + self.conv = None + if use_conv_transpose: + self.conv = nn.ConvTranspose1d(channels, self.out_channels, 4, 2, 1) + elif use_conv: + self.conv = nn.Conv1d(self.channels, self.out_channels, 3, padding=1) + + def forward(self, inputs): + assert inputs.shape[1] == self.channels + if self.use_conv_transpose: + return self.conv(inputs) + + outputs = F.interpolate(inputs, scale_factor=2.0, mode="nearest") + + if self.use_conv: + outputs = self.conv(outputs) + + return outputs + + +class ConformerWrapper(ConformerBlock): + def __init__( # pylint: disable=useless-super-delegation + self, + *, + dim, + dim_head=64, + heads=8, + ff_mult=4, + conv_expansion_factor=2, + conv_kernel_size=31, + attn_dropout=0, + ff_dropout=0, + conv_dropout=0, + conv_causal=False, + ): + super().__init__( + dim=dim, + dim_head=dim_head, + heads=heads, + ff_mult=ff_mult, + conv_expansion_factor=conv_expansion_factor, + conv_kernel_size=conv_kernel_size, + attn_dropout=attn_dropout, + ff_dropout=ff_dropout, + conv_dropout=conv_dropout, + conv_causal=conv_causal, + ) + + def forward( + self, + hidden_states, + attention_mask, + encoder_hidden_states=None, + encoder_attention_mask=None, + timestep=None, + ): + return super().forward(x=hidden_states, mask=attention_mask.bool()) + + +class Decoder(nn.Module): + def __init__( + self, + in_channels, + out_channels, + channels=(256, 256), + dropout=0.05, + attention_head_dim=64, + n_blocks=1, + num_mid_blocks=2, + num_heads=4, + act_fn="snake", + down_block_type="transformer", + mid_block_type="transformer", + up_block_type="transformer", + ): + super().__init__() + channels = tuple(channels) + self.in_channels = in_channels + self.out_channels = out_channels + + self.time_embeddings = SinusoidalPosEmb(in_channels) + time_embed_dim = channels[0] * 4 + self.time_mlp = TimestepEmbedding( + in_channels=in_channels, + time_embed_dim=time_embed_dim, + act_fn="silu", + ) + + self.down_blocks = nn.ModuleList([]) + self.mid_blocks = nn.ModuleList([]) + self.up_blocks = nn.ModuleList([]) + + output_channel = in_channels + for i in range(len(channels)): # pylint: disable=consider-using-enumerate + input_channel = output_channel + output_channel = channels[i] + is_last = i == len(channels) - 1 + resnet = ResnetBlock1D(dim=input_channel, dim_out=output_channel, time_emb_dim=time_embed_dim) + transformer_blocks = nn.ModuleList( + [ + self.get_block( + down_block_type, + output_channel, + attention_head_dim, + num_heads, + dropout, + act_fn, + ) + for _ in range(n_blocks) + ] + ) + downsample = ( + Downsample1D(output_channel) if not is_last else nn.Conv1d(output_channel, output_channel, 3, padding=1) + ) + + self.down_blocks.append(nn.ModuleList([resnet, transformer_blocks, downsample])) + + for i in range(num_mid_blocks): + input_channel = channels[-1] + out_channels = channels[-1] + + resnet = ResnetBlock1D(dim=input_channel, dim_out=output_channel, time_emb_dim=time_embed_dim) + + transformer_blocks = nn.ModuleList( + [ + self.get_block( + mid_block_type, + output_channel, + attention_head_dim, + num_heads, + dropout, + act_fn, + ) + for _ in range(n_blocks) + ] + ) + + self.mid_blocks.append(nn.ModuleList([resnet, transformer_blocks])) + + channels = channels[::-1] + (channels[0],) + for i in range(len(channels) - 1): + input_channel = channels[i] + output_channel = channels[i + 1] + is_last = i == len(channels) - 2 + + resnet = ResnetBlock1D( + dim=2 * input_channel, + dim_out=output_channel, + time_emb_dim=time_embed_dim, + ) + transformer_blocks = nn.ModuleList( + [ + self.get_block( + up_block_type, + output_channel, + attention_head_dim, + num_heads, + dropout, + act_fn, + ) + for _ in range(n_blocks) + ] + ) + upsample = ( + Upsample1D(output_channel, use_conv_transpose=True) + if not is_last + else nn.Conv1d(output_channel, output_channel, 3, padding=1) + ) + + self.up_blocks.append(nn.ModuleList([resnet, transformer_blocks, upsample])) + + self.final_block = Block1D(channels[-1], channels[-1]) + self.final_proj = nn.Conv1d(channels[-1], self.out_channels, 1) + + self.initialize_weights() + # nn.init.normal_(self.final_proj.weight) + + @staticmethod + def get_block(block_type, dim, attention_head_dim, num_heads, dropout, act_fn): + if block_type == "conformer": + block = ConformerWrapper( + dim=dim, + dim_head=attention_head_dim, + heads=num_heads, + ff_mult=1, + conv_expansion_factor=2, + ff_dropout=dropout, + attn_dropout=dropout, + conv_dropout=dropout, + conv_kernel_size=31, + ) + elif block_type == "transformer": + block = BasicTransformerBlock( + dim=dim, + num_attention_heads=num_heads, + attention_head_dim=attention_head_dim, + dropout=dropout, + activation_fn=act_fn, + ) + else: + raise ValueError(f"Unknown block type {block_type}") + + return block + + def initialize_weights(self): + for m in self.modules(): + if isinstance(m, nn.Conv1d): + nn.init.kaiming_normal_(m.weight, nonlinearity="relu") + + if m.bias is not None: + nn.init.constant_(m.bias, 0) + + elif isinstance(m, nn.GroupNorm): + nn.init.constant_(m.weight, 1) + nn.init.constant_(m.bias, 0) + + elif isinstance(m, nn.Linear): + nn.init.kaiming_normal_(m.weight, nonlinearity="relu") + + if m.bias is not None: + nn.init.constant_(m.bias, 0) + + def forward(self, x, mask, mu, t, spks=None, cond=None): + """Forward pass of the UNet1DConditional model. + + Args: + x (torch.Tensor): shape (batch_size, in_channels, time) + mask (_type_): shape (batch_size, 1, time) + t (_type_): shape (batch_size) + spks (_type_, optional): shape: (batch_size, condition_channels). Defaults to None. + cond (_type_, optional): placeholder for future use. Defaults to None. + + Raises: + ValueError: _description_ + ValueError: _description_ + + Returns: + _type_: _description_ + """ + + t = self.time_embeddings(t) + t = self.time_mlp(t) + + x = pack([x, mu], "b * t")[0] + + if spks is not None: + spks = repeat(spks, "b c -> b c t", t=x.shape[-1]) + x = pack([x, spks], "b * t")[0] + + hiddens = [] + masks = [mask] + for resnet, transformer_blocks, downsample in self.down_blocks: + mask_down = masks[-1] + x = resnet(x, mask_down, t) + x = rearrange(x, "b c t -> b t c") + mask_down = rearrange(mask_down, "b 1 t -> b t") + for transformer_block in transformer_blocks: + x = transformer_block( + hidden_states=x, + attention_mask=mask_down, + timestep=t, + ) + x = rearrange(x, "b t c -> b c t") + mask_down = rearrange(mask_down, "b t -> b 1 t") + hiddens.append(x) # Save hidden states for skip connections + x = downsample(x * mask_down) + masks.append(mask_down[:, :, ::2]) + + masks = masks[:-1] + mask_mid = masks[-1] + + for resnet, transformer_blocks in self.mid_blocks: + x = resnet(x, mask_mid, t) + x = rearrange(x, "b c t -> b t c") + mask_mid = rearrange(mask_mid, "b 1 t -> b t") + for transformer_block in transformer_blocks: + x = transformer_block( + hidden_states=x, + attention_mask=mask_mid, + timestep=t, + ) + x = rearrange(x, "b t c -> b c t") + mask_mid = rearrange(mask_mid, "b t -> b 1 t") + + for resnet, transformer_blocks, upsample in self.up_blocks: + mask_up = masks.pop() + x = resnet(pack([x, hiddens.pop()], "b * t")[0], mask_up, t) + x = rearrange(x, "b c t -> b t c") + mask_up = rearrange(mask_up, "b 1 t -> b t") + for transformer_block in transformer_blocks: + x = transformer_block( + hidden_states=x, + attention_mask=mask_up, + timestep=t, + ) + x = rearrange(x, "b t c -> b c t") + mask_up = rearrange(mask_up, "b t -> b 1 t") + x = upsample(x * mask_up) + + x = self.final_block(x, mask_up) + output = self.final_proj(x * mask_up) + + return output * mask diff --git a/third_party/Matcha-TTS/matcha/models/components/flow_matching.py b/third_party/Matcha-TTS/matcha/models/components/flow_matching.py new file mode 100644 index 0000000000000000000000000000000000000000..5cad7431ef66a8d11da32a77c1af7f6e31d6b774 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/models/components/flow_matching.py @@ -0,0 +1,132 @@ +from abc import ABC + +import torch +import torch.nn.functional as F + +from matcha.models.components.decoder import Decoder +from matcha.utils.pylogger import get_pylogger + +log = get_pylogger(__name__) + + +class BASECFM(torch.nn.Module, ABC): + def __init__( + self, + n_feats, + cfm_params, + n_spks=1, + spk_emb_dim=128, + ): + super().__init__() + self.n_feats = n_feats + self.n_spks = n_spks + self.spk_emb_dim = spk_emb_dim + self.solver = cfm_params.solver + if hasattr(cfm_params, "sigma_min"): + self.sigma_min = cfm_params.sigma_min + else: + self.sigma_min = 1e-4 + + self.estimator = None + + @torch.inference_mode() + def forward(self, mu, mask, n_timesteps, temperature=1.0, spks=None, cond=None): + """Forward diffusion + + Args: + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): output_mask + shape: (batch_size, 1, mel_timesteps) + n_timesteps (int): number of diffusion steps + temperature (float, optional): temperature for scaling noise. Defaults to 1.0. + spks (torch.Tensor, optional): speaker ids. Defaults to None. + shape: (batch_size, spk_emb_dim) + cond: Not used but kept for future purposes + + Returns: + sample: generated mel-spectrogram + shape: (batch_size, n_feats, mel_timesteps) + """ + z = torch.randn_like(mu) * temperature + t_span = torch.linspace(0, 1, n_timesteps + 1, device=mu.device) + return self.solve_euler(z, t_span=t_span, mu=mu, mask=mask, spks=spks, cond=cond) + + def solve_euler(self, x, t_span, mu, mask, spks, cond): + """ + Fixed euler solver for ODEs. + Args: + x (torch.Tensor): random noise + t_span (torch.Tensor): n_timesteps interpolated + shape: (n_timesteps + 1,) + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): output_mask + shape: (batch_size, 1, mel_timesteps) + spks (torch.Tensor, optional): speaker ids. Defaults to None. + shape: (batch_size, spk_emb_dim) + cond: Not used but kept for future purposes + """ + t, _, dt = t_span[0], t_span[-1], t_span[1] - t_span[0] + + # I am storing this because I can later plot it by putting a debugger here and saving it to a file + # Or in future might add like a return_all_steps flag + sol = [] + + for step in range(1, len(t_span)): + dphi_dt = self.estimator(x, mask, mu, t, spks, cond) + + x = x + dt * dphi_dt + t = t + dt + sol.append(x) + if step < len(t_span) - 1: + dt = t_span[step + 1] - t + + return sol[-1] + + def compute_loss(self, x1, mask, mu, spks=None, cond=None): + """Computes diffusion loss + + Args: + x1 (torch.Tensor): Target + shape: (batch_size, n_feats, mel_timesteps) + mask (torch.Tensor): target mask + shape: (batch_size, 1, mel_timesteps) + mu (torch.Tensor): output of encoder + shape: (batch_size, n_feats, mel_timesteps) + spks (torch.Tensor, optional): speaker embedding. Defaults to None. + shape: (batch_size, spk_emb_dim) + + Returns: + loss: conditional flow matching loss + y: conditional flow + shape: (batch_size, n_feats, mel_timesteps) + """ + b, _, t = mu.shape + + # random timestep + t = torch.rand([b, 1, 1], device=mu.device, dtype=mu.dtype) + # sample noise p(x_0) + z = torch.randn_like(x1) + + y = (1 - (1 - self.sigma_min) * t) * z + t * x1 + u = x1 - (1 - self.sigma_min) * z + + loss = F.mse_loss(self.estimator(y, mask, mu, t.squeeze(), spks), u, reduction="sum") / ( + torch.sum(mask) * u.shape[1] + ) + return loss, y + + +class CFM(BASECFM): + def __init__(self, in_channels, out_channel, cfm_params, decoder_params, n_spks=1, spk_emb_dim=64): + super().__init__( + n_feats=in_channels, + cfm_params=cfm_params, + n_spks=n_spks, + spk_emb_dim=spk_emb_dim, + ) + + in_channels = in_channels + (spk_emb_dim if n_spks > 1 else 0) + # Just change the architecture of the estimator here + self.estimator = Decoder(in_channels=in_channels, out_channels=out_channel, **decoder_params) diff --git a/third_party/Matcha-TTS/matcha/models/components/text_encoder.py b/third_party/Matcha-TTS/matcha/models/components/text_encoder.py new file mode 100644 index 0000000000000000000000000000000000000000..a388d05d6351fa2c9d9632fed0942d51fbec067b --- /dev/null +++ b/third_party/Matcha-TTS/matcha/models/components/text_encoder.py @@ -0,0 +1,410 @@ +""" from https://github.com/jaywalnut310/glow-tts """ + +import math + +import torch +import torch.nn as nn +from einops import rearrange + +import matcha.utils as utils +from matcha.utils.model import sequence_mask + +log = utils.get_pylogger(__name__) + + +class LayerNorm(nn.Module): + def __init__(self, channels, eps=1e-4): + super().__init__() + self.channels = channels + self.eps = eps + + self.gamma = torch.nn.Parameter(torch.ones(channels)) + self.beta = torch.nn.Parameter(torch.zeros(channels)) + + def forward(self, x): + n_dims = len(x.shape) + mean = torch.mean(x, 1, keepdim=True) + variance = torch.mean((x - mean) ** 2, 1, keepdim=True) + + x = (x - mean) * torch.rsqrt(variance + self.eps) + + shape = [1, -1] + [1] * (n_dims - 2) + x = x * self.gamma.view(*shape) + self.beta.view(*shape) + return x + + +class ConvReluNorm(nn.Module): + def __init__(self, in_channels, hidden_channels, out_channels, kernel_size, n_layers, p_dropout): + super().__init__() + self.in_channels = in_channels + self.hidden_channels = hidden_channels + self.out_channels = out_channels + self.kernel_size = kernel_size + self.n_layers = n_layers + self.p_dropout = p_dropout + + self.conv_layers = torch.nn.ModuleList() + self.norm_layers = torch.nn.ModuleList() + self.conv_layers.append(torch.nn.Conv1d(in_channels, hidden_channels, kernel_size, padding=kernel_size // 2)) + self.norm_layers.append(LayerNorm(hidden_channels)) + self.relu_drop = torch.nn.Sequential(torch.nn.ReLU(), torch.nn.Dropout(p_dropout)) + for _ in range(n_layers - 1): + self.conv_layers.append( + torch.nn.Conv1d(hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2) + ) + self.norm_layers.append(LayerNorm(hidden_channels)) + self.proj = torch.nn.Conv1d(hidden_channels, out_channels, 1) + self.proj.weight.data.zero_() + self.proj.bias.data.zero_() + + def forward(self, x, x_mask): + x_org = x + for i in range(self.n_layers): + x = self.conv_layers[i](x * x_mask) + x = self.norm_layers[i](x) + x = self.relu_drop(x) + x = x_org + self.proj(x) + return x * x_mask + + +class DurationPredictor(nn.Module): + def __init__(self, in_channels, filter_channels, kernel_size, p_dropout): + super().__init__() + self.in_channels = in_channels + self.filter_channels = filter_channels + self.p_dropout = p_dropout + + self.drop = torch.nn.Dropout(p_dropout) + self.conv_1 = torch.nn.Conv1d(in_channels, filter_channels, kernel_size, padding=kernel_size // 2) + self.norm_1 = LayerNorm(filter_channels) + self.conv_2 = torch.nn.Conv1d(filter_channels, filter_channels, kernel_size, padding=kernel_size // 2) + self.norm_2 = LayerNorm(filter_channels) + self.proj = torch.nn.Conv1d(filter_channels, 1, 1) + + def forward(self, x, x_mask): + x = self.conv_1(x * x_mask) + x = torch.relu(x) + x = self.norm_1(x) + x = self.drop(x) + x = self.conv_2(x * x_mask) + x = torch.relu(x) + x = self.norm_2(x) + x = self.drop(x) + x = self.proj(x * x_mask) + return x * x_mask + + +class RotaryPositionalEmbeddings(nn.Module): + """ + ## RoPE module + + Rotary encoding transforms pairs of features by rotating in the 2D plane. + That is, it organizes the $d$ features as $\frac{d}{2}$ pairs. + Each pair can be considered a coordinate in a 2D plane, and the encoding will rotate it + by an angle depending on the position of the token. + """ + + def __init__(self, d: int, base: int = 10_000): + r""" + * `d` is the number of features $d$ + * `base` is the constant used for calculating $\Theta$ + """ + super().__init__() + + self.base = base + self.d = int(d) + self.cos_cached = None + self.sin_cached = None + + def _build_cache(self, x: torch.Tensor): + r""" + Cache $\cos$ and $\sin$ values + """ + # Return if cache is already built + if self.cos_cached is not None and x.shape[0] <= self.cos_cached.shape[0]: + return + + # Get sequence length + seq_len = x.shape[0] + + # $\Theta = {\theta_i = 10000^{-\frac{2(i-1)}{d}}, i \in [1, 2, ..., \frac{d}{2}]}$ + theta = 1.0 / (self.base ** (torch.arange(0, self.d, 2).float() / self.d)).to(x.device) + + # Create position indexes `[0, 1, ..., seq_len - 1]` + seq_idx = torch.arange(seq_len, device=x.device).float().to(x.device) + + # Calculate the product of position index and $\theta_i$ + idx_theta = torch.einsum("n,d->nd", seq_idx, theta) + + # Concatenate so that for row $m$ we have + # $[m \theta_0, m \theta_1, ..., m \theta_{\frac{d}{2}}, m \theta_0, m \theta_1, ..., m \theta_{\frac{d}{2}}]$ + idx_theta2 = torch.cat([idx_theta, idx_theta], dim=1) + + # Cache them + self.cos_cached = idx_theta2.cos()[:, None, None, :] + self.sin_cached = idx_theta2.sin()[:, None, None, :] + + def _neg_half(self, x: torch.Tensor): + # $\frac{d}{2}$ + d_2 = self.d // 2 + + # Calculate $[-x^{(\frac{d}{2} + 1)}, -x^{(\frac{d}{2} + 2)}, ..., -x^{(d)}, x^{(1)}, x^{(2)}, ..., x^{(\frac{d}{2})}]$ + return torch.cat([-x[:, :, :, d_2:], x[:, :, :, :d_2]], dim=-1) + + def forward(self, x: torch.Tensor): + """ + * `x` is the Tensor at the head of a key or a query with shape `[seq_len, batch_size, n_heads, d]` + """ + # Cache $\cos$ and $\sin$ values + x = rearrange(x, "b h t d -> t b h d") + + self._build_cache(x) + + # Split the features, we can choose to apply rotary embeddings only to a partial set of features. + x_rope, x_pass = x[..., : self.d], x[..., self.d :] + + # Calculate + # $[-x^{(\frac{d}{2} + 1)}, -x^{(\frac{d}{2} + 2)}, ..., -x^{(d)}, x^{(1)}, x^{(2)}, ..., x^{(\frac{d}{2})}]$ + neg_half_x = self._neg_half(x_rope) + + x_rope = (x_rope * self.cos_cached[: x.shape[0]]) + (neg_half_x * self.sin_cached[: x.shape[0]]) + + return rearrange(torch.cat((x_rope, x_pass), dim=-1), "t b h d -> b h t d") + + +class MultiHeadAttention(nn.Module): + def __init__( + self, + channels, + out_channels, + n_heads, + heads_share=True, + p_dropout=0.0, + proximal_bias=False, + proximal_init=False, + ): + super().__init__() + assert channels % n_heads == 0 + + self.channels = channels + self.out_channels = out_channels + self.n_heads = n_heads + self.heads_share = heads_share + self.proximal_bias = proximal_bias + self.p_dropout = p_dropout + self.attn = None + + self.k_channels = channels // n_heads + self.conv_q = torch.nn.Conv1d(channels, channels, 1) + self.conv_k = torch.nn.Conv1d(channels, channels, 1) + self.conv_v = torch.nn.Conv1d(channels, channels, 1) + + # from https://nn.labml.ai/transformers/rope/index.html + self.query_rotary_pe = RotaryPositionalEmbeddings(self.k_channels * 0.5) + self.key_rotary_pe = RotaryPositionalEmbeddings(self.k_channels * 0.5) + + self.conv_o = torch.nn.Conv1d(channels, out_channels, 1) + self.drop = torch.nn.Dropout(p_dropout) + + torch.nn.init.xavier_uniform_(self.conv_q.weight) + torch.nn.init.xavier_uniform_(self.conv_k.weight) + if proximal_init: + self.conv_k.weight.data.copy_(self.conv_q.weight.data) + self.conv_k.bias.data.copy_(self.conv_q.bias.data) + torch.nn.init.xavier_uniform_(self.conv_v.weight) + + def forward(self, x, c, attn_mask=None): + q = self.conv_q(x) + k = self.conv_k(c) + v = self.conv_v(c) + + x, self.attn = self.attention(q, k, v, mask=attn_mask) + + x = self.conv_o(x) + return x + + def attention(self, query, key, value, mask=None): + b, d, t_s, t_t = (*key.size(), query.size(2)) + query = rearrange(query, "b (h c) t-> b h t c", h=self.n_heads) + key = rearrange(key, "b (h c) t-> b h t c", h=self.n_heads) + value = rearrange(value, "b (h c) t-> b h t c", h=self.n_heads) + + query = self.query_rotary_pe(query) + key = self.key_rotary_pe(key) + + scores = torch.matmul(query, key.transpose(-2, -1)) / math.sqrt(self.k_channels) + + if self.proximal_bias: + assert t_s == t_t, "Proximal bias is only available for self-attention." + scores = scores + self._attention_bias_proximal(t_s).to(device=scores.device, dtype=scores.dtype) + if mask is not None: + scores = scores.masked_fill(mask == 0, -1e4) + p_attn = torch.nn.functional.softmax(scores, dim=-1) + p_attn = self.drop(p_attn) + output = torch.matmul(p_attn, value) + output = output.transpose(2, 3).contiguous().view(b, d, t_t) + return output, p_attn + + @staticmethod + def _attention_bias_proximal(length): + r = torch.arange(length, dtype=torch.float32) + diff = torch.unsqueeze(r, 0) - torch.unsqueeze(r, 1) + return torch.unsqueeze(torch.unsqueeze(-torch.log1p(torch.abs(diff)), 0), 0) + + +class FFN(nn.Module): + def __init__(self, in_channels, out_channels, filter_channels, kernel_size, p_dropout=0.0): + super().__init__() + self.in_channels = in_channels + self.out_channels = out_channels + self.filter_channels = filter_channels + self.kernel_size = kernel_size + self.p_dropout = p_dropout + + self.conv_1 = torch.nn.Conv1d(in_channels, filter_channels, kernel_size, padding=kernel_size // 2) + self.conv_2 = torch.nn.Conv1d(filter_channels, out_channels, kernel_size, padding=kernel_size // 2) + self.drop = torch.nn.Dropout(p_dropout) + + def forward(self, x, x_mask): + x = self.conv_1(x * x_mask) + x = torch.relu(x) + x = self.drop(x) + x = self.conv_2(x * x_mask) + return x * x_mask + + +class Encoder(nn.Module): + def __init__( + self, + hidden_channels, + filter_channels, + n_heads, + n_layers, + kernel_size=1, + p_dropout=0.0, + **kwargs, + ): + super().__init__() + self.hidden_channels = hidden_channels + self.filter_channels = filter_channels + self.n_heads = n_heads + self.n_layers = n_layers + self.kernel_size = kernel_size + self.p_dropout = p_dropout + + self.drop = torch.nn.Dropout(p_dropout) + self.attn_layers = torch.nn.ModuleList() + self.norm_layers_1 = torch.nn.ModuleList() + self.ffn_layers = torch.nn.ModuleList() + self.norm_layers_2 = torch.nn.ModuleList() + for _ in range(self.n_layers): + self.attn_layers.append(MultiHeadAttention(hidden_channels, hidden_channels, n_heads, p_dropout=p_dropout)) + self.norm_layers_1.append(LayerNorm(hidden_channels)) + self.ffn_layers.append( + FFN( + hidden_channels, + hidden_channels, + filter_channels, + kernel_size, + p_dropout=p_dropout, + ) + ) + self.norm_layers_2.append(LayerNorm(hidden_channels)) + + def forward(self, x, x_mask): + attn_mask = x_mask.unsqueeze(2) * x_mask.unsqueeze(-1) + for i in range(self.n_layers): + x = x * x_mask + y = self.attn_layers[i](x, x, attn_mask) + y = self.drop(y) + x = self.norm_layers_1[i](x + y) + y = self.ffn_layers[i](x, x_mask) + y = self.drop(y) + x = self.norm_layers_2[i](x + y) + x = x * x_mask + return x + + +class TextEncoder(nn.Module): + def __init__( + self, + encoder_type, + encoder_params, + duration_predictor_params, + n_vocab, + n_spks=1, + spk_emb_dim=128, + ): + super().__init__() + self.encoder_type = encoder_type + self.n_vocab = n_vocab + self.n_feats = encoder_params.n_feats + self.n_channels = encoder_params.n_channels + self.spk_emb_dim = spk_emb_dim + self.n_spks = n_spks + + self.emb = torch.nn.Embedding(n_vocab, self.n_channels) + torch.nn.init.normal_(self.emb.weight, 0.0, self.n_channels**-0.5) + + if encoder_params.prenet: + self.prenet = ConvReluNorm( + self.n_channels, + self.n_channels, + self.n_channels, + kernel_size=5, + n_layers=3, + p_dropout=0.5, + ) + else: + self.prenet = lambda x, x_mask: x + + self.encoder = Encoder( + encoder_params.n_channels + (spk_emb_dim if n_spks > 1 else 0), + encoder_params.filter_channels, + encoder_params.n_heads, + encoder_params.n_layers, + encoder_params.kernel_size, + encoder_params.p_dropout, + ) + + self.proj_m = torch.nn.Conv1d(self.n_channels + (spk_emb_dim if n_spks > 1 else 0), self.n_feats, 1) + self.proj_w = DurationPredictor( + self.n_channels + (spk_emb_dim if n_spks > 1 else 0), + duration_predictor_params.filter_channels_dp, + duration_predictor_params.kernel_size, + duration_predictor_params.p_dropout, + ) + + def forward(self, x, x_lengths, spks=None): + """Run forward pass to the transformer based encoder and duration predictor + + Args: + x (torch.Tensor): text input + shape: (batch_size, max_text_length) + x_lengths (torch.Tensor): text input lengths + shape: (batch_size,) + spks (torch.Tensor, optional): speaker ids. Defaults to None. + shape: (batch_size,) + + Returns: + mu (torch.Tensor): average output of the encoder + shape: (batch_size, n_feats, max_text_length) + logw (torch.Tensor): log duration predicted by the duration predictor + shape: (batch_size, 1, max_text_length) + x_mask (torch.Tensor): mask for the text input + shape: (batch_size, 1, max_text_length) + """ + x = self.emb(x) * math.sqrt(self.n_channels) + x = torch.transpose(x, 1, -1) + x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) + + x = self.prenet(x, x_mask) + if self.n_spks > 1: + x = torch.cat([x, spks.unsqueeze(-1).repeat(1, 1, x.shape[-1])], dim=1) + x = self.encoder(x, x_mask) + mu = self.proj_m(x) * x_mask + + x_dp = torch.detach(x) + logw = self.proj_w(x_dp, x_mask) + + return mu, logw, x_mask diff --git a/third_party/Matcha-TTS/matcha/models/components/transformer.py b/third_party/Matcha-TTS/matcha/models/components/transformer.py new file mode 100644 index 0000000000000000000000000000000000000000..dd1afa3aff5383912209e508676c6885e13ef4ee --- /dev/null +++ b/third_party/Matcha-TTS/matcha/models/components/transformer.py @@ -0,0 +1,316 @@ +from typing import Any, Dict, Optional + +import torch +import torch.nn as nn +from diffusers.models.attention import ( + GEGLU, + GELU, + AdaLayerNorm, + AdaLayerNormZero, + ApproximateGELU, +) +from diffusers.models.attention_processor import Attention +from diffusers.models.lora import LoRACompatibleLinear +from diffusers.utils.torch_utils import maybe_allow_in_graph + + +class SnakeBeta(nn.Module): + """ + A modified Snake function which uses separate parameters for the magnitude of the periodic components + Shape: + - Input: (B, C, T) + - Output: (B, C, T), same shape as the input + Parameters: + - alpha - trainable parameter that controls frequency + - beta - trainable parameter that controls magnitude + References: + - This activation function is a modified version based on this paper by Liu Ziyin, Tilman Hartwig, Masahito Ueda: + https://arxiv.org/abs/2006.08195 + Examples: + >>> a1 = snakebeta(256) + >>> x = torch.randn(256) + >>> x = a1(x) + """ + + def __init__(self, in_features, out_features, alpha=1.0, alpha_trainable=True, alpha_logscale=True): + """ + Initialization. + INPUT: + - in_features: shape of the input + - alpha - trainable parameter that controls frequency + - beta - trainable parameter that controls magnitude + alpha is initialized to 1 by default, higher values = higher-frequency. + beta is initialized to 1 by default, higher values = higher-magnitude. + alpha will be trained along with the rest of your model. + """ + super().__init__() + self.in_features = out_features if isinstance(out_features, list) else [out_features] + self.proj = LoRACompatibleLinear(in_features, out_features) + + # initialize alpha + self.alpha_logscale = alpha_logscale + if self.alpha_logscale: # log scale alphas initialized to zeros + self.alpha = nn.Parameter(torch.zeros(self.in_features) * alpha) + self.beta = nn.Parameter(torch.zeros(self.in_features) * alpha) + else: # linear scale alphas initialized to ones + self.alpha = nn.Parameter(torch.ones(self.in_features) * alpha) + self.beta = nn.Parameter(torch.ones(self.in_features) * alpha) + + self.alpha.requires_grad = alpha_trainable + self.beta.requires_grad = alpha_trainable + + self.no_div_by_zero = 0.000000001 + + def forward(self, x): + """ + Forward pass of the function. + Applies the function to the input elementwise. + SnakeBeta ∶= x + 1/b * sin^2 (xa) + """ + x = self.proj(x) + if self.alpha_logscale: + alpha = torch.exp(self.alpha) + beta = torch.exp(self.beta) + else: + alpha = self.alpha + beta = self.beta + + x = x + (1.0 / (beta + self.no_div_by_zero)) * torch.pow(torch.sin(x * alpha), 2) + + return x + + +class FeedForward(nn.Module): + r""" + A feed-forward layer. + + Parameters: + dim (`int`): The number of channels in the input. + dim_out (`int`, *optional*): The number of channels in the output. If not given, defaults to `dim`. + mult (`int`, *optional*, defaults to 4): The multiplier to use for the hidden dimension. + dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. + activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. + final_dropout (`bool` *optional*, defaults to False): Apply a final dropout. + """ + + def __init__( + self, + dim: int, + dim_out: Optional[int] = None, + mult: int = 4, + dropout: float = 0.0, + activation_fn: str = "geglu", + final_dropout: bool = False, + ): + super().__init__() + inner_dim = int(dim * mult) + dim_out = dim_out if dim_out is not None else dim + + if activation_fn == "gelu": + act_fn = GELU(dim, inner_dim) + if activation_fn == "gelu-approximate": + act_fn = GELU(dim, inner_dim, approximate="tanh") + elif activation_fn == "geglu": + act_fn = GEGLU(dim, inner_dim) + elif activation_fn == "geglu-approximate": + act_fn = ApproximateGELU(dim, inner_dim) + elif activation_fn == "snakebeta": + act_fn = SnakeBeta(dim, inner_dim) + + self.net = nn.ModuleList([]) + # project in + self.net.append(act_fn) + # project dropout + self.net.append(nn.Dropout(dropout)) + # project out + self.net.append(LoRACompatibleLinear(inner_dim, dim_out)) + # FF as used in Vision Transformer, MLP-Mixer, etc. have a final dropout + if final_dropout: + self.net.append(nn.Dropout(dropout)) + + def forward(self, hidden_states): + for module in self.net: + hidden_states = module(hidden_states) + return hidden_states + + +@maybe_allow_in_graph +class BasicTransformerBlock(nn.Module): + r""" + A basic Transformer block. + + Parameters: + dim (`int`): The number of channels in the input and output. + num_attention_heads (`int`): The number of heads to use for multi-head attention. + attention_head_dim (`int`): The number of channels in each head. + dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. + cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. + only_cross_attention (`bool`, *optional*): + Whether to use only cross-attention layers. In this case two cross attention layers are used. + double_self_attention (`bool`, *optional*): + Whether to use two self-attention layers. In this case no cross attention layers are used. + activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. + num_embeds_ada_norm (: + obj: `int`, *optional*): The number of diffusion steps used during training. See `Transformer2DModel`. + attention_bias (: + obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. + """ + + def __init__( + self, + dim: int, + num_attention_heads: int, + attention_head_dim: int, + dropout=0.0, + cross_attention_dim: Optional[int] = None, + activation_fn: str = "geglu", + num_embeds_ada_norm: Optional[int] = None, + attention_bias: bool = False, + only_cross_attention: bool = False, + double_self_attention: bool = False, + upcast_attention: bool = False, + norm_elementwise_affine: bool = True, + norm_type: str = "layer_norm", + final_dropout: bool = False, + ): + super().__init__() + self.only_cross_attention = only_cross_attention + + self.use_ada_layer_norm_zero = (num_embeds_ada_norm is not None) and norm_type == "ada_norm_zero" + self.use_ada_layer_norm = (num_embeds_ada_norm is not None) and norm_type == "ada_norm" + + if norm_type in ("ada_norm", "ada_norm_zero") and num_embeds_ada_norm is None: + raise ValueError( + f"`norm_type` is set to {norm_type}, but `num_embeds_ada_norm` is not defined. Please make sure to" + f" define `num_embeds_ada_norm` if setting `norm_type` to {norm_type}." + ) + + # Define 3 blocks. Each block has its own normalization layer. + # 1. Self-Attn + if self.use_ada_layer_norm: + self.norm1 = AdaLayerNorm(dim, num_embeds_ada_norm) + elif self.use_ada_layer_norm_zero: + self.norm1 = AdaLayerNormZero(dim, num_embeds_ada_norm) + else: + self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) + self.attn1 = Attention( + query_dim=dim, + heads=num_attention_heads, + dim_head=attention_head_dim, + dropout=dropout, + bias=attention_bias, + cross_attention_dim=cross_attention_dim if only_cross_attention else None, + upcast_attention=upcast_attention, + ) + + # 2. Cross-Attn + if cross_attention_dim is not None or double_self_attention: + # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. + # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during + # the second cross attention block. + self.norm2 = ( + AdaLayerNorm(dim, num_embeds_ada_norm) + if self.use_ada_layer_norm + else nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) + ) + self.attn2 = Attention( + query_dim=dim, + cross_attention_dim=cross_attention_dim if not double_self_attention else None, + heads=num_attention_heads, + dim_head=attention_head_dim, + dropout=dropout, + bias=attention_bias, + upcast_attention=upcast_attention, + # scale_qk=False, # uncomment this to not to use flash attention + ) # is self-attn if encoder_hidden_states is none + else: + self.norm2 = None + self.attn2 = None + + # 3. Feed-forward + self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) + self.ff = FeedForward(dim, dropout=dropout, activation_fn=activation_fn, final_dropout=final_dropout) + + # let chunk size default to None + self._chunk_size = None + self._chunk_dim = 0 + + def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): + # Sets chunk feed-forward + self._chunk_size = chunk_size + self._chunk_dim = dim + + def forward( + self, + hidden_states: torch.FloatTensor, + attention_mask: Optional[torch.FloatTensor] = None, + encoder_hidden_states: Optional[torch.FloatTensor] = None, + encoder_attention_mask: Optional[torch.FloatTensor] = None, + timestep: Optional[torch.LongTensor] = None, + cross_attention_kwargs: Dict[str, Any] = None, + class_labels: Optional[torch.LongTensor] = None, + ): + # Notice that normalization is always applied before the real computation in the following blocks. + # 1. Self-Attention + if self.use_ada_layer_norm: + norm_hidden_states = self.norm1(hidden_states, timestep) + elif self.use_ada_layer_norm_zero: + norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1( + hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype + ) + else: + norm_hidden_states = self.norm1(hidden_states) + + cross_attention_kwargs = cross_attention_kwargs if cross_attention_kwargs is not None else {} + + attn_output = self.attn1( + norm_hidden_states, + encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None, + attention_mask=encoder_attention_mask if self.only_cross_attention else attention_mask, + **cross_attention_kwargs, + ) + if self.use_ada_layer_norm_zero: + attn_output = gate_msa.unsqueeze(1) * attn_output + hidden_states = attn_output + hidden_states + + # 2. Cross-Attention + if self.attn2 is not None: + norm_hidden_states = ( + self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states) + ) + + attn_output = self.attn2( + norm_hidden_states, + encoder_hidden_states=encoder_hidden_states, + attention_mask=encoder_attention_mask, + **cross_attention_kwargs, + ) + hidden_states = attn_output + hidden_states + + # 3. Feed-forward + norm_hidden_states = self.norm3(hidden_states) + + if self.use_ada_layer_norm_zero: + norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None] + + if self._chunk_size is not None: + # "feed_forward_chunk_size" can be used to save memory + if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: + raise ValueError( + f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." + ) + + num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size + ff_output = torch.cat( + [self.ff(hid_slice) for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)], + dim=self._chunk_dim, + ) + else: + ff_output = self.ff(norm_hidden_states) + + if self.use_ada_layer_norm_zero: + ff_output = gate_mlp.unsqueeze(1) * ff_output + + hidden_states = ff_output + hidden_states + + return hidden_states diff --git a/third_party/Matcha-TTS/matcha/models/matcha_tts.py b/third_party/Matcha-TTS/matcha/models/matcha_tts.py new file mode 100644 index 0000000000000000000000000000000000000000..64b2c07fe8de4760aee1aed80d206112d30df55f --- /dev/null +++ b/third_party/Matcha-TTS/matcha/models/matcha_tts.py @@ -0,0 +1,239 @@ +import datetime as dt +import math +import random + +import torch + +import matcha.utils.monotonic_align as monotonic_align +from matcha import utils +from matcha.models.baselightningmodule import BaseLightningClass +from matcha.models.components.flow_matching import CFM +from matcha.models.components.text_encoder import TextEncoder +from matcha.utils.model import ( + denormalize, + duration_loss, + fix_len_compatibility, + generate_path, + sequence_mask, +) + +log = utils.get_pylogger(__name__) + + +class MatchaTTS(BaseLightningClass): # 🍵 + def __init__( + self, + n_vocab, + n_spks, + spk_emb_dim, + n_feats, + encoder, + decoder, + cfm, + data_statistics, + out_size, + optimizer=None, + scheduler=None, + prior_loss=True, + ): + super().__init__() + + self.save_hyperparameters(logger=False) + + self.n_vocab = n_vocab + self.n_spks = n_spks + self.spk_emb_dim = spk_emb_dim + self.n_feats = n_feats + self.out_size = out_size + self.prior_loss = prior_loss + + if n_spks > 1: + self.spk_emb = torch.nn.Embedding(n_spks, spk_emb_dim) + + self.encoder = TextEncoder( + encoder.encoder_type, + encoder.encoder_params, + encoder.duration_predictor_params, + n_vocab, + n_spks, + spk_emb_dim, + ) + + self.decoder = CFM( + in_channels=2 * encoder.encoder_params.n_feats, + out_channel=encoder.encoder_params.n_feats, + cfm_params=cfm, + decoder_params=decoder, + n_spks=n_spks, + spk_emb_dim=spk_emb_dim, + ) + + self.update_data_statistics(data_statistics) + + @torch.inference_mode() + def synthesise(self, x, x_lengths, n_timesteps, temperature=1.0, spks=None, length_scale=1.0): + """ + Generates mel-spectrogram from text. Returns: + 1. encoder outputs + 2. decoder outputs + 3. generated alignment + + Args: + x (torch.Tensor): batch of texts, converted to a tensor with phoneme embedding ids. + shape: (batch_size, max_text_length) + x_lengths (torch.Tensor): lengths of texts in batch. + shape: (batch_size,) + n_timesteps (int): number of steps to use for reverse diffusion in decoder. + temperature (float, optional): controls variance of terminal distribution. + spks (bool, optional): speaker ids. + shape: (batch_size,) + length_scale (float, optional): controls speech pace. + Increase value to slow down generated speech and vice versa. + + Returns: + dict: { + "encoder_outputs": torch.Tensor, shape: (batch_size, n_feats, max_mel_length), + # Average mel spectrogram generated by the encoder + "decoder_outputs": torch.Tensor, shape: (batch_size, n_feats, max_mel_length), + # Refined mel spectrogram improved by the CFM + "attn": torch.Tensor, shape: (batch_size, max_text_length, max_mel_length), + # Alignment map between text and mel spectrogram + "mel": torch.Tensor, shape: (batch_size, n_feats, max_mel_length), + # Denormalized mel spectrogram + "mel_lengths": torch.Tensor, shape: (batch_size,), + # Lengths of mel spectrograms + "rtf": float, + # Real-time factor + """ + # For RTF computation + t = dt.datetime.now() + + if self.n_spks > 1: + # Get speaker embedding + spks = self.spk_emb(spks.long()) + + # Get encoder_outputs `mu_x` and log-scaled token durations `logw` + mu_x, logw, x_mask = self.encoder(x, x_lengths, spks) + + w = torch.exp(logw) * x_mask + w_ceil = torch.ceil(w) * length_scale + y_lengths = torch.clamp_min(torch.sum(w_ceil, [1, 2]), 1).long() + y_max_length = y_lengths.max() + y_max_length_ = fix_len_compatibility(y_max_length) + + # Using obtained durations `w` construct alignment map `attn` + y_mask = sequence_mask(y_lengths, y_max_length_).unsqueeze(1).to(x_mask.dtype) + attn_mask = x_mask.unsqueeze(-1) * y_mask.unsqueeze(2) + attn = generate_path(w_ceil.squeeze(1), attn_mask.squeeze(1)).unsqueeze(1) + + # Align encoded text and get mu_y + mu_y = torch.matmul(attn.squeeze(1).transpose(1, 2), mu_x.transpose(1, 2)) + mu_y = mu_y.transpose(1, 2) + encoder_outputs = mu_y[:, :, :y_max_length] + + # Generate sample tracing the probability flow + decoder_outputs = self.decoder(mu_y, y_mask, n_timesteps, temperature, spks) + decoder_outputs = decoder_outputs[:, :, :y_max_length] + + t = (dt.datetime.now() - t).total_seconds() + rtf = t * 22050 / (decoder_outputs.shape[-1] * 256) + + return { + "encoder_outputs": encoder_outputs, + "decoder_outputs": decoder_outputs, + "attn": attn[:, :, :y_max_length], + "mel": denormalize(decoder_outputs, self.mel_mean, self.mel_std), + "mel_lengths": y_lengths, + "rtf": rtf, + } + + def forward(self, x, x_lengths, y, y_lengths, spks=None, out_size=None, cond=None): + """ + Computes 3 losses: + 1. duration loss: loss between predicted token durations and those extracted by Monotinic Alignment Search (MAS). + 2. prior loss: loss between mel-spectrogram and encoder outputs. + 3. flow matching loss: loss between mel-spectrogram and decoder outputs. + + Args: + x (torch.Tensor): batch of texts, converted to a tensor with phoneme embedding ids. + shape: (batch_size, max_text_length) + x_lengths (torch.Tensor): lengths of texts in batch. + shape: (batch_size,) + y (torch.Tensor): batch of corresponding mel-spectrograms. + shape: (batch_size, n_feats, max_mel_length) + y_lengths (torch.Tensor): lengths of mel-spectrograms in batch. + shape: (batch_size,) + out_size (int, optional): length (in mel's sampling rate) of segment to cut, on which decoder will be trained. + Should be divisible by 2^{num of UNet downsamplings}. Needed to increase batch size. + spks (torch.Tensor, optional): speaker ids. + shape: (batch_size,) + """ + if self.n_spks > 1: + # Get speaker embedding + spks = self.spk_emb(spks) + + # Get encoder_outputs `mu_x` and log-scaled token durations `logw` + mu_x, logw, x_mask = self.encoder(x, x_lengths, spks) + y_max_length = y.shape[-1] + + y_mask = sequence_mask(y_lengths, y_max_length).unsqueeze(1).to(x_mask) + attn_mask = x_mask.unsqueeze(-1) * y_mask.unsqueeze(2) + + # Use MAS to find most likely alignment `attn` between text and mel-spectrogram + with torch.no_grad(): + const = -0.5 * math.log(2 * math.pi) * self.n_feats + factor = -0.5 * torch.ones(mu_x.shape, dtype=mu_x.dtype, device=mu_x.device) + y_square = torch.matmul(factor.transpose(1, 2), y**2) + y_mu_double = torch.matmul(2.0 * (factor * mu_x).transpose(1, 2), y) + mu_square = torch.sum(factor * (mu_x**2), 1).unsqueeze(-1) + log_prior = y_square - y_mu_double + mu_square + const + + attn = monotonic_align.maximum_path(log_prior, attn_mask.squeeze(1)) + attn = attn.detach() + + # Compute loss between predicted log-scaled durations and those obtained from MAS + # refered to as prior loss in the paper + logw_ = torch.log(1e-8 + torch.sum(attn.unsqueeze(1), -1)) * x_mask + dur_loss = duration_loss(logw, logw_, x_lengths) + + # Cut a small segment of mel-spectrogram in order to increase batch size + # - "Hack" taken from Grad-TTS, in case of Grad-TTS, we cannot train batch size 32 on a 24GB GPU without it + # - Do not need this hack for Matcha-TTS, but it works with it as well + if not isinstance(out_size, type(None)): + max_offset = (y_lengths - out_size).clamp(0) + offset_ranges = list(zip([0] * max_offset.shape[0], max_offset.cpu().numpy())) + out_offset = torch.LongTensor( + [torch.tensor(random.choice(range(start, end)) if end > start else 0) for start, end in offset_ranges] + ).to(y_lengths) + attn_cut = torch.zeros(attn.shape[0], attn.shape[1], out_size, dtype=attn.dtype, device=attn.device) + y_cut = torch.zeros(y.shape[0], self.n_feats, out_size, dtype=y.dtype, device=y.device) + + y_cut_lengths = [] + for i, (y_, out_offset_) in enumerate(zip(y, out_offset)): + y_cut_length = out_size + (y_lengths[i] - out_size).clamp(None, 0) + y_cut_lengths.append(y_cut_length) + cut_lower, cut_upper = out_offset_, out_offset_ + y_cut_length + y_cut[i, :, :y_cut_length] = y_[:, cut_lower:cut_upper] + attn_cut[i, :, :y_cut_length] = attn[i, :, cut_lower:cut_upper] + + y_cut_lengths = torch.LongTensor(y_cut_lengths) + y_cut_mask = sequence_mask(y_cut_lengths).unsqueeze(1).to(y_mask) + + attn = attn_cut + y = y_cut + y_mask = y_cut_mask + + # Align encoded text with mel-spectrogram and get mu_y segment + mu_y = torch.matmul(attn.squeeze(1).transpose(1, 2), mu_x.transpose(1, 2)) + mu_y = mu_y.transpose(1, 2) + + # Compute loss of the decoder + diff_loss, _ = self.decoder.compute_loss(x1=y, mask=y_mask, mu=mu_y, spks=spks, cond=cond) + + if self.prior_loss: + prior_loss = torch.sum(0.5 * ((y - mu_y) ** 2 + math.log(2 * math.pi)) * y_mask) + prior_loss = prior_loss / (torch.sum(y_mask) * self.n_feats) + else: + prior_loss = 0 + + return dur_loss, prior_loss, diff_loss diff --git a/third_party/Matcha-TTS/matcha/onnx/__init__.py b/third_party/Matcha-TTS/matcha/onnx/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/matcha/onnx/export.py b/third_party/Matcha-TTS/matcha/onnx/export.py new file mode 100644 index 0000000000000000000000000000000000000000..9b795086158e1ad8a4bb5cd92306f3fa765f71ea --- /dev/null +++ b/third_party/Matcha-TTS/matcha/onnx/export.py @@ -0,0 +1,181 @@ +import argparse +import random +from pathlib import Path + +import numpy as np +import torch +from lightning import LightningModule + +from matcha.cli import VOCODER_URLS, load_matcha, load_vocoder + +DEFAULT_OPSET = 15 + +SEED = 1234 +random.seed(SEED) +np.random.seed(SEED) +torch.manual_seed(SEED) +torch.cuda.manual_seed(SEED) +torch.backends.cudnn.deterministic = True +torch.backends.cudnn.benchmark = False + + +class MatchaWithVocoder(LightningModule): + def __init__(self, matcha, vocoder): + super().__init__() + self.matcha = matcha + self.vocoder = vocoder + + def forward(self, x, x_lengths, scales, spks=None): + mel, mel_lengths = self.matcha(x, x_lengths, scales, spks) + wavs = self.vocoder(mel).clamp(-1, 1) + lengths = mel_lengths * 256 + return wavs.squeeze(1), lengths + + +def get_exportable_module(matcha, vocoder, n_timesteps): + """ + Return an appropriate `LighteningModule` and output-node names + based on whether the vocoder is embedded in the final graph + """ + + def onnx_forward_func(x, x_lengths, scales, spks=None): + """ + Custom forward function for accepting + scaler parameters as tensors + """ + # Extract scaler parameters from tensors + temperature = scales[0] + length_scale = scales[1] + output = matcha.synthesise(x, x_lengths, n_timesteps, temperature, spks, length_scale) + return output["mel"], output["mel_lengths"] + + # Monkey-patch Matcha's forward function + matcha.forward = onnx_forward_func + + if vocoder is None: + model, output_names = matcha, ["mel", "mel_lengths"] + else: + model = MatchaWithVocoder(matcha, vocoder) + output_names = ["wav", "wav_lengths"] + return model, output_names + + +def get_inputs(is_multi_speaker): + """ + Create dummy inputs for tracing + """ + dummy_input_length = 50 + x = torch.randint(low=0, high=20, size=(1, dummy_input_length), dtype=torch.long) + x_lengths = torch.LongTensor([dummy_input_length]) + + # Scales + temperature = 0.667 + length_scale = 1.0 + scales = torch.Tensor([temperature, length_scale]) + + model_inputs = [x, x_lengths, scales] + input_names = [ + "x", + "x_lengths", + "scales", + ] + + if is_multi_speaker: + spks = torch.LongTensor([1]) + model_inputs.append(spks) + input_names.append("spks") + + return tuple(model_inputs), input_names + + +def main(): + parser = argparse.ArgumentParser(description="Export 🍵 Matcha-TTS to ONNX") + + parser.add_argument( + "checkpoint_path", + type=str, + help="Path to the model checkpoint", + ) + parser.add_argument("output", type=str, help="Path to output `.onnx` file") + parser.add_argument( + "--n-timesteps", type=int, default=5, help="Number of steps to use for reverse diffusion in decoder (default 5)" + ) + parser.add_argument( + "--vocoder-name", + type=str, + choices=list(VOCODER_URLS.keys()), + default=None, + help="Name of the vocoder to embed in the ONNX graph", + ) + parser.add_argument( + "--vocoder-checkpoint-path", + type=str, + default=None, + help="Vocoder checkpoint to embed in the ONNX graph for an `e2e` like experience", + ) + parser.add_argument("--opset", type=int, default=DEFAULT_OPSET, help="ONNX opset version to use (default 15") + + args = parser.parse_args() + + print(f"[🍵] Loading Matcha checkpoint from {args.checkpoint_path}") + print(f"Setting n_timesteps to {args.n_timesteps}") + + checkpoint_path = Path(args.checkpoint_path) + matcha = load_matcha(checkpoint_path.stem, checkpoint_path, "cpu") + + if args.vocoder_name or args.vocoder_checkpoint_path: + assert ( + args.vocoder_name and args.vocoder_checkpoint_path + ), "Both vocoder_name and vocoder-checkpoint are required when embedding the vocoder in the ONNX graph." + vocoder, _ = load_vocoder(args.vocoder_name, args.vocoder_checkpoint_path, "cpu") + else: + vocoder = None + + is_multi_speaker = matcha.n_spks > 1 + + dummy_input, input_names = get_inputs(is_multi_speaker) + model, output_names = get_exportable_module(matcha, vocoder, args.n_timesteps) + + # Set dynamic shape for inputs/outputs + dynamic_axes = { + "x": {0: "batch_size", 1: "time"}, + "x_lengths": {0: "batch_size"}, + } + + if vocoder is None: + dynamic_axes.update( + { + "mel": {0: "batch_size", 2: "time"}, + "mel_lengths": {0: "batch_size"}, + } + ) + else: + print("Embedding the vocoder in the ONNX graph") + dynamic_axes.update( + { + "wav": {0: "batch_size", 1: "time"}, + "wav_lengths": {0: "batch_size"}, + } + ) + + if is_multi_speaker: + dynamic_axes["spks"] = {0: "batch_size"} + + # Create the output directory (if not exists) + Path(args.output).parent.mkdir(parents=True, exist_ok=True) + + model.to_onnx( + args.output, + dummy_input, + input_names=input_names, + output_names=output_names, + dynamic_axes=dynamic_axes, + opset_version=args.opset, + export_params=True, + do_constant_folding=True, + ) + print(f"[🍵] ONNX model exported to {args.output}") + + +if __name__ == "__main__": + main() diff --git a/third_party/Matcha-TTS/matcha/onnx/infer.py b/third_party/Matcha-TTS/matcha/onnx/infer.py new file mode 100644 index 0000000000000000000000000000000000000000..89ca92559c6df3776a07a038d7838242a3d19189 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/onnx/infer.py @@ -0,0 +1,168 @@ +import argparse +import os +import warnings +from pathlib import Path +from time import perf_counter + +import numpy as np +import onnxruntime as ort +import soundfile as sf +import torch + +from matcha.cli import plot_spectrogram_to_numpy, process_text + + +def validate_args(args): + assert ( + args.text or args.file + ), "Either text or file must be provided Matcha-T(ea)TTS need sometext to whisk the waveforms." + assert args.temperature >= 0, "Sampling temperature cannot be negative" + assert args.speaking_rate >= 0, "Speaking rate must be greater than 0" + return args + + +def write_wavs(model, inputs, output_dir, external_vocoder=None): + if external_vocoder is None: + print("The provided model has the vocoder embedded in the graph.\nGenerating waveform directly") + t0 = perf_counter() + wavs, wav_lengths = model.run(None, inputs) + infer_secs = perf_counter() - t0 + mel_infer_secs = vocoder_infer_secs = None + else: + print("[🍵] Generating mel using Matcha") + mel_t0 = perf_counter() + mels, mel_lengths = model.run(None, inputs) + mel_infer_secs = perf_counter() - mel_t0 + print("Generating waveform from mel using external vocoder") + vocoder_inputs = {external_vocoder.get_inputs()[0].name: mels} + vocoder_t0 = perf_counter() + wavs = external_vocoder.run(None, vocoder_inputs)[0] + vocoder_infer_secs = perf_counter() - vocoder_t0 + wavs = wavs.squeeze(1) + wav_lengths = mel_lengths * 256 + infer_secs = mel_infer_secs + vocoder_infer_secs + + output_dir = Path(output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + for i, (wav, wav_length) in enumerate(zip(wavs, wav_lengths)): + output_filename = output_dir.joinpath(f"output_{i + 1}.wav") + audio = wav[:wav_length] + print(f"Writing audio to {output_filename}") + sf.write(output_filename, audio, 22050, "PCM_24") + + wav_secs = wav_lengths.sum() / 22050 + print(f"Inference seconds: {infer_secs}") + print(f"Generated wav seconds: {wav_secs}") + rtf = infer_secs / wav_secs + if mel_infer_secs is not None: + mel_rtf = mel_infer_secs / wav_secs + print(f"Matcha RTF: {mel_rtf}") + if vocoder_infer_secs is not None: + vocoder_rtf = vocoder_infer_secs / wav_secs + print(f"Vocoder RTF: {vocoder_rtf}") + print(f"Overall RTF: {rtf}") + + +def write_mels(model, inputs, output_dir): + t0 = perf_counter() + mels, mel_lengths = model.run(None, inputs) + infer_secs = perf_counter() - t0 + + output_dir = Path(output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + for i, mel in enumerate(mels): + output_stem = output_dir.joinpath(f"output_{i + 1}") + plot_spectrogram_to_numpy(mel.squeeze(), output_stem.with_suffix(".png")) + np.save(output_stem.with_suffix(".numpy"), mel) + + wav_secs = (mel_lengths * 256).sum() / 22050 + print(f"Inference seconds: {infer_secs}") + print(f"Generated wav seconds: {wav_secs}") + rtf = infer_secs / wav_secs + print(f"RTF: {rtf}") + + +def main(): + parser = argparse.ArgumentParser( + description=" 🍵 Matcha-TTS: A fast TTS architecture with conditional flow matching" + ) + parser.add_argument( + "model", + type=str, + help="ONNX model to use", + ) + parser.add_argument("--vocoder", type=str, default=None, help="Vocoder to use (defaults to None)") + parser.add_argument("--text", type=str, default=None, help="Text to synthesize") + parser.add_argument("--file", type=str, default=None, help="Text file to synthesize") + parser.add_argument("--spk", type=int, default=None, help="Speaker ID") + parser.add_argument( + "--temperature", + type=float, + default=0.667, + help="Variance of the x0 noise (default: 0.667)", + ) + parser.add_argument( + "--speaking-rate", + type=float, + default=1.0, + help="change the speaking rate, a higher value means slower speaking rate (default: 1.0)", + ) + parser.add_argument("--gpu", action="store_true", help="Use CPU for inference (default: use GPU if available)") + parser.add_argument( + "--output-dir", + type=str, + default=os.getcwd(), + help="Output folder to save results (default: current dir)", + ) + + args = parser.parse_args() + args = validate_args(args) + + if args.gpu: + providers = ["GPUExecutionProvider"] + else: + providers = ["CPUExecutionProvider"] + model = ort.InferenceSession(args.model, providers=providers) + + model_inputs = model.get_inputs() + model_outputs = list(model.get_outputs()) + + if args.text: + text_lines = args.text.splitlines() + else: + with open(args.file, encoding="utf-8") as file: + text_lines = file.read().splitlines() + + processed_lines = [process_text(0, line, "cpu") for line in text_lines] + x = [line["x"].squeeze() for line in processed_lines] + # Pad + x = torch.nn.utils.rnn.pad_sequence(x, batch_first=True) + x = x.detach().cpu().numpy() + x_lengths = np.array([line["x_lengths"].item() for line in processed_lines], dtype=np.int64) + inputs = { + "x": x, + "x_lengths": x_lengths, + "scales": np.array([args.temperature, args.speaking_rate], dtype=np.float32), + } + is_multi_speaker = len(model_inputs) == 4 + if is_multi_speaker: + if args.spk is None: + args.spk = 0 + warn = "[!] Speaker ID not provided! Using speaker ID 0" + warnings.warn(warn, UserWarning) + inputs["spks"] = np.repeat(args.spk, x.shape[0]).astype(np.int64) + + has_vocoder_embedded = model_outputs[0].name == "wav" + if has_vocoder_embedded: + write_wavs(model, inputs, args.output_dir) + elif args.vocoder: + external_vocoder = ort.InferenceSession(args.vocoder, providers=providers) + write_wavs(model, inputs, args.output_dir, external_vocoder=external_vocoder) + else: + warn = "[!] A vocoder is not embedded in the graph nor an external vocoder is provided. The mel output will be written as numpy arrays to `*.npy` files in the output directory" + warnings.warn(warn, UserWarning) + write_mels(model, inputs, args.output_dir) + + +if __name__ == "__main__": + main() diff --git a/third_party/Matcha-TTS/matcha/text/__init__.py b/third_party/Matcha-TTS/matcha/text/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..71a4b57891d3c06ad9f25493c1b40bc2f5962d17 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/text/__init__.py @@ -0,0 +1,53 @@ +""" from https://github.com/keithito/tacotron """ +from matcha.text import cleaners +from matcha.text.symbols import symbols + +# Mappings from symbol to numeric ID and vice versa: +_symbol_to_id = {s: i for i, s in enumerate(symbols)} +_id_to_symbol = {i: s for i, s in enumerate(symbols)} # pylint: disable=unnecessary-comprehension + + +def text_to_sequence(text, cleaner_names): + """Converts a string of text to a sequence of IDs corresponding to the symbols in the text. + Args: + text: string to convert to a sequence + cleaner_names: names of the cleaner functions to run the text through + Returns: + List of integers corresponding to the symbols in the text + """ + sequence = [] + + clean_text = _clean_text(text, cleaner_names) + for symbol in clean_text: + symbol_id = _symbol_to_id[symbol] + sequence += [symbol_id] + return sequence + + +def cleaned_text_to_sequence(cleaned_text): + """Converts a string of text to a sequence of IDs corresponding to the symbols in the text. + Args: + text: string to convert to a sequence + Returns: + List of integers corresponding to the symbols in the text + """ + sequence = [_symbol_to_id[symbol] for symbol in cleaned_text] + return sequence + + +def sequence_to_text(sequence): + """Converts a sequence of IDs back to a string""" + result = "" + for symbol_id in sequence: + s = _id_to_symbol[symbol_id] + result += s + return result + + +def _clean_text(text, cleaner_names): + for name in cleaner_names: + cleaner = getattr(cleaners, name) + if not cleaner: + raise Exception("Unknown cleaner: %s" % name) + text = cleaner(text) + return text diff --git a/third_party/Matcha-TTS/matcha/text/cleaners.py b/third_party/Matcha-TTS/matcha/text/cleaners.py new file mode 100644 index 0000000000000000000000000000000000000000..5e8d96b681eb9f57356a1b86a7008e74b65ff44b --- /dev/null +++ b/third_party/Matcha-TTS/matcha/text/cleaners.py @@ -0,0 +1,116 @@ +""" from https://github.com/keithito/tacotron + +Cleaners are transformations that run over the input text at both training and eval time. + +Cleaners can be selected by passing a comma-delimited list of cleaner names as the "cleaners" +hyperparameter. Some cleaners are English-specific. You'll typically want to use: + 1. "english_cleaners" for English text + 2. "transliteration_cleaners" for non-English text that can be transliterated to ASCII using + the Unidecode library (https://pypi.python.org/pypi/Unidecode) + 3. "basic_cleaners" if you do not want to transliterate (in this case, you should also update + the symbols in symbols.py to match your data). +""" + +import logging +import re + +import phonemizer +import piper_phonemize +from unidecode import unidecode + +# To avoid excessive logging we set the log level of the phonemizer package to Critical +critical_logger = logging.getLogger("phonemizer") +critical_logger.setLevel(logging.CRITICAL) + +# Intializing the phonemizer globally significantly reduces the speed +# now the phonemizer is not initialising at every call +# Might be less flexible, but it is much-much faster +global_phonemizer = phonemizer.backend.EspeakBackend( + language="en-us", + preserve_punctuation=True, + with_stress=True, + language_switch="remove-flags", + logger=critical_logger, +) + + +# Regular expression matching whitespace: +_whitespace_re = re.compile(r"\s+") + +# List of (regular expression, replacement) pairs for abbreviations: +_abbreviations = [ + (re.compile("\\b%s\\." % x[0], re.IGNORECASE), x[1]) + for x in [ + ("mrs", "misess"), + ("mr", "mister"), + ("dr", "doctor"), + ("st", "saint"), + ("co", "company"), + ("jr", "junior"), + ("maj", "major"), + ("gen", "general"), + ("drs", "doctors"), + ("rev", "reverend"), + ("lt", "lieutenant"), + ("hon", "honorable"), + ("sgt", "sergeant"), + ("capt", "captain"), + ("esq", "esquire"), + ("ltd", "limited"), + ("col", "colonel"), + ("ft", "fort"), + ] +] + + +def expand_abbreviations(text): + for regex, replacement in _abbreviations: + text = re.sub(regex, replacement, text) + return text + + +def lowercase(text): + return text.lower() + + +def collapse_whitespace(text): + return re.sub(_whitespace_re, " ", text) + + +def convert_to_ascii(text): + return unidecode(text) + + +def basic_cleaners(text): + """Basic pipeline that lowercases and collapses whitespace without transliteration.""" + text = lowercase(text) + text = collapse_whitespace(text) + return text + + +def transliteration_cleaners(text): + """Pipeline for non-English text that transliterates to ASCII.""" + text = convert_to_ascii(text) + text = lowercase(text) + text = collapse_whitespace(text) + return text + + +def english_cleaners2(text): + """Pipeline for English text, including abbreviation expansion. + punctuation + stress""" + text = convert_to_ascii(text) + text = lowercase(text) + text = expand_abbreviations(text) + phonemes = global_phonemizer.phonemize([text], strip=True, njobs=1)[0] + phonemes = collapse_whitespace(phonemes) + return phonemes + + +def english_cleaners_piper(text): + """Pipeline for English text, including abbreviation expansion. + punctuation + stress""" + text = convert_to_ascii(text) + text = lowercase(text) + text = expand_abbreviations(text) + phonemes = "".join(piper_phonemize.phonemize_espeak(text=text, voice="en-US")[0]) + phonemes = collapse_whitespace(phonemes) + return phonemes diff --git a/third_party/Matcha-TTS/matcha/text/numbers.py b/third_party/Matcha-TTS/matcha/text/numbers.py new file mode 100644 index 0000000000000000000000000000000000000000..f99a8686dcb73532091122613e74bd643a8a327f --- /dev/null +++ b/third_party/Matcha-TTS/matcha/text/numbers.py @@ -0,0 +1,71 @@ +""" from https://github.com/keithito/tacotron """ + +import re + +import inflect + +_inflect = inflect.engine() +_comma_number_re = re.compile(r"([0-9][0-9\,]+[0-9])") +_decimal_number_re = re.compile(r"([0-9]+\.[0-9]+)") +_pounds_re = re.compile(r"£([0-9\,]*[0-9]+)") +_dollars_re = re.compile(r"\$([0-9\.\,]*[0-9]+)") +_ordinal_re = re.compile(r"[0-9]+(st|nd|rd|th)") +_number_re = re.compile(r"[0-9]+") + + +def _remove_commas(m): + return m.group(1).replace(",", "") + + +def _expand_decimal_point(m): + return m.group(1).replace(".", " point ") + + +def _expand_dollars(m): + match = m.group(1) + parts = match.split(".") + if len(parts) > 2: + return match + " dollars" + dollars = int(parts[0]) if parts[0] else 0 + cents = int(parts[1]) if len(parts) > 1 and parts[1] else 0 + if dollars and cents: + dollar_unit = "dollar" if dollars == 1 else "dollars" + cent_unit = "cent" if cents == 1 else "cents" + return f"{dollars} {dollar_unit}, {cents} {cent_unit}" + elif dollars: + dollar_unit = "dollar" if dollars == 1 else "dollars" + return f"{dollars} {dollar_unit}" + elif cents: + cent_unit = "cent" if cents == 1 else "cents" + return f"{cents} {cent_unit}" + else: + return "zero dollars" + + +def _expand_ordinal(m): + return _inflect.number_to_words(m.group(0)) + + +def _expand_number(m): + num = int(m.group(0)) + if num > 1000 and num < 3000: + if num == 2000: + return "two thousand" + elif num > 2000 and num < 2010: + return "two thousand " + _inflect.number_to_words(num % 100) + elif num % 100 == 0: + return _inflect.number_to_words(num // 100) + " hundred" + else: + return _inflect.number_to_words(num, andword="", zero="oh", group=2).replace(", ", " ") + else: + return _inflect.number_to_words(num, andword="") + + +def normalize_numbers(text): + text = re.sub(_comma_number_re, _remove_commas, text) + text = re.sub(_pounds_re, r"\1 pounds", text) + text = re.sub(_dollars_re, _expand_dollars, text) + text = re.sub(_decimal_number_re, _expand_decimal_point, text) + text = re.sub(_ordinal_re, _expand_ordinal, text) + text = re.sub(_number_re, _expand_number, text) + return text diff --git a/third_party/Matcha-TTS/matcha/text/symbols.py b/third_party/Matcha-TTS/matcha/text/symbols.py new file mode 100644 index 0000000000000000000000000000000000000000..7018df549a1e50c3be20416069b6913c641024bd --- /dev/null +++ b/third_party/Matcha-TTS/matcha/text/symbols.py @@ -0,0 +1,17 @@ +""" from https://github.com/keithito/tacotron + +Defines the set of symbols used in text input to the model. +""" +_pad = "_" +_punctuation = ';:,.!?¡¿—…"«»“” ' +_letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" +_letters_ipa = ( + "ɑɐɒæɓʙβɔɕçɗɖðʤəɘɚɛɜɝɞɟʄɡɠɢʛɦɧħɥʜɨɪʝɭɬɫɮʟɱɯɰŋɳɲɴøɵɸθœɶʘɹɺɾɻʀʁɽʂʃʈʧʉʊʋⱱʌɣɤʍχʎʏʑʐʒʔʡʕʢǀǁǂǃˈˌːˑʼʴʰʱʲʷˠˤ˞↓↑→↗↘'̩'ᵻ" +) + + +# Export all symbols: +symbols = [_pad] + list(_punctuation) + list(_letters) + list(_letters_ipa) + +# Special symbol ids +SPACE_ID = symbols.index(" ") diff --git a/third_party/Matcha-TTS/matcha/train.py b/third_party/Matcha-TTS/matcha/train.py new file mode 100644 index 0000000000000000000000000000000000000000..d1d64c6c44af2622be5e6bf368616feb6619ed7e --- /dev/null +++ b/third_party/Matcha-TTS/matcha/train.py @@ -0,0 +1,122 @@ +from typing import Any, Dict, List, Optional, Tuple + +import hydra +import lightning as L +import rootutils +from lightning import Callback, LightningDataModule, LightningModule, Trainer +from lightning.pytorch.loggers import Logger +from omegaconf import DictConfig + +from matcha import utils + +rootutils.setup_root(__file__, indicator=".project-root", pythonpath=True) +# ------------------------------------------------------------------------------------ # +# the setup_root above is equivalent to: +# - adding project root dir to PYTHONPATH +# (so you don't need to force user to install project as a package) +# (necessary before importing any local modules e.g. `from src import utils`) +# - setting up PROJECT_ROOT environment variable +# (which is used as a base for paths in "configs/paths/default.yaml") +# (this way all filepaths are the same no matter where you run the code) +# - loading environment variables from ".env" in root dir +# +# you can remove it if you: +# 1. either install project as a package or move entry files to project root dir +# 2. set `root_dir` to "." in "configs/paths/default.yaml" +# +# more info: https://github.com/ashleve/rootutils +# ------------------------------------------------------------------------------------ # + + +log = utils.get_pylogger(__name__) + + +@utils.task_wrapper +def train(cfg: DictConfig) -> Tuple[Dict[str, Any], Dict[str, Any]]: + """Trains the model. Can additionally evaluate on a testset, using best weights obtained during + training. + + This method is wrapped in optional @task_wrapper decorator, that controls the behavior during + failure. Useful for multiruns, saving info about the crash, etc. + + :param cfg: A DictConfig configuration composed by Hydra. + :return: A tuple with metrics and dict with all instantiated objects. + """ + # set seed for random number generators in pytorch, numpy and python.random + if cfg.get("seed"): + L.seed_everything(cfg.seed, workers=True) + + log.info(f"Instantiating datamodule <{cfg.data._target_}>") # pylint: disable=protected-access + datamodule: LightningDataModule = hydra.utils.instantiate(cfg.data) + + log.info(f"Instantiating model <{cfg.model._target_}>") # pylint: disable=protected-access + model: LightningModule = hydra.utils.instantiate(cfg.model) + + log.info("Instantiating callbacks...") + callbacks: List[Callback] = utils.instantiate_callbacks(cfg.get("callbacks")) + + log.info("Instantiating loggers...") + logger: List[Logger] = utils.instantiate_loggers(cfg.get("logger")) + + log.info(f"Instantiating trainer <{cfg.trainer._target_}>") # pylint: disable=protected-access + trainer: Trainer = hydra.utils.instantiate(cfg.trainer, callbacks=callbacks, logger=logger) + + object_dict = { + "cfg": cfg, + "datamodule": datamodule, + "model": model, + "callbacks": callbacks, + "logger": logger, + "trainer": trainer, + } + + if logger: + log.info("Logging hyperparameters!") + utils.log_hyperparameters(object_dict) + + if cfg.get("train"): + log.info("Starting training!") + trainer.fit(model=model, datamodule=datamodule, ckpt_path=cfg.get("ckpt_path")) + + train_metrics = trainer.callback_metrics + + if cfg.get("test"): + log.info("Starting testing!") + ckpt_path = trainer.checkpoint_callback.best_model_path + if ckpt_path == "": + log.warning("Best ckpt not found! Using current weights for testing...") + ckpt_path = None + trainer.test(model=model, datamodule=datamodule, ckpt_path=ckpt_path) + log.info(f"Best ckpt path: {ckpt_path}") + + test_metrics = trainer.callback_metrics + + # merge train and test metrics + metric_dict = {**train_metrics, **test_metrics} + + return metric_dict, object_dict + + +@hydra.main(version_base="1.3", config_path="../configs", config_name="train.yaml") +def main(cfg: DictConfig) -> Optional[float]: + """Main entry point for training. + + :param cfg: DictConfig configuration composed by Hydra. + :return: Optional[float] with optimized metric value. + """ + # apply extra utilities + # (e.g. ask for tags if none are provided in cfg, print cfg tree, etc.) + utils.extras(cfg) + + # train the model + metric_dict, _ = train(cfg) + + # safely retrieve metric value for hydra-based hyperparameter optimization + metric_value = utils.get_metric_value(metric_dict=metric_dict, metric_name=cfg.get("optimized_metric")) + + # return optimized metric + return metric_value + + +if __name__ == "__main__": + main() # pylint: disable=no-value-for-parameter diff --git a/third_party/Matcha-TTS/matcha/utils/__init__.py b/third_party/Matcha-TTS/matcha/utils/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..074db6461184e8cbb86d977cb41d9ebd918e958a --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/__init__.py @@ -0,0 +1,5 @@ +from matcha.utils.instantiators import instantiate_callbacks, instantiate_loggers +from matcha.utils.logging_utils import log_hyperparameters +from matcha.utils.pylogger import get_pylogger +from matcha.utils.rich_utils import enforce_tags, print_config_tree +from matcha.utils.utils import extras, get_metric_value, task_wrapper diff --git a/third_party/Matcha-TTS/matcha/utils/audio.py b/third_party/Matcha-TTS/matcha/utils/audio.py new file mode 100644 index 0000000000000000000000000000000000000000..0bcd74df47fb006f68deb5a5f4a4c2fb0aa84f57 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/audio.py @@ -0,0 +1,82 @@ +import numpy as np +import torch +import torch.utils.data +from librosa.filters import mel as librosa_mel_fn +from scipy.io.wavfile import read + +MAX_WAV_VALUE = 32768.0 + + +def load_wav(full_path): + sampling_rate, data = read(full_path) + return data, sampling_rate + + +def dynamic_range_compression(x, C=1, clip_val=1e-5): + return np.log(np.clip(x, a_min=clip_val, a_max=None) * C) + + +def dynamic_range_decompression(x, C=1): + return np.exp(x) / C + + +def dynamic_range_compression_torch(x, C=1, clip_val=1e-5): + return torch.log(torch.clamp(x, min=clip_val) * C) + + +def dynamic_range_decompression_torch(x, C=1): + return torch.exp(x) / C + + +def spectral_normalize_torch(magnitudes): + output = dynamic_range_compression_torch(magnitudes) + return output + + +def spectral_de_normalize_torch(magnitudes): + output = dynamic_range_decompression_torch(magnitudes) + return output + + +mel_basis = {} +hann_window = {} + + +def mel_spectrogram(y, n_fft, num_mels, sampling_rate, hop_size, win_size, fmin, fmax, center=False): + if torch.min(y) < -1.0: + print("min value is ", torch.min(y)) + if torch.max(y) > 1.0: + print("max value is ", torch.max(y)) + + global mel_basis, hann_window # pylint: disable=global-statement + if f"{str(fmax)}_{str(y.device)}" not in mel_basis: + mel = librosa_mel_fn(sr=sampling_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) + mel_basis[str(fmax) + "_" + str(y.device)] = torch.from_numpy(mel).float().to(y.device) + hann_window[str(y.device)] = torch.hann_window(win_size).to(y.device) + + y = torch.nn.functional.pad( + y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), mode="reflect" + ) + y = y.squeeze(1) + + spec = torch.view_as_real( + torch.stft( + y, + n_fft, + hop_length=hop_size, + win_length=win_size, + window=hann_window[str(y.device)], + center=center, + pad_mode="reflect", + normalized=False, + onesided=True, + return_complex=True, + ) + ) + + spec = torch.sqrt(spec.pow(2).sum(-1) + (1e-9)) + + spec = torch.matmul(mel_basis[str(fmax) + "_" + str(y.device)], spec) + spec = spectral_normalize_torch(spec) + + return spec diff --git a/third_party/Matcha-TTS/matcha/utils/generate_data_statistics.py b/third_party/Matcha-TTS/matcha/utils/generate_data_statistics.py new file mode 100644 index 0000000000000000000000000000000000000000..96a5382296426803f1010385d184af7bfc901290 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/generate_data_statistics.py @@ -0,0 +1,111 @@ +r""" +The file creates a pickle file where the values needed for loading of dataset is stored and the model can load it +when needed. + +Parameters from hparam.py will be used +""" +import argparse +import json +import os +import sys +from pathlib import Path + +import rootutils +import torch +from hydra import compose, initialize +from omegaconf import open_dict +from tqdm.auto import tqdm + +from matcha.data.text_mel_datamodule import TextMelDataModule +from matcha.utils.logging_utils import pylogger + +log = pylogger.get_pylogger(__name__) + + +def compute_data_statistics(data_loader: torch.utils.data.DataLoader, out_channels: int): + """Generate data mean and standard deviation helpful in data normalisation + + Args: + data_loader (torch.utils.data.Dataloader): _description_ + out_channels (int): mel spectrogram channels + """ + total_mel_sum = 0 + total_mel_sq_sum = 0 + total_mel_len = 0 + + for batch in tqdm(data_loader, leave=False): + mels = batch["y"] + mel_lengths = batch["y_lengths"] + + total_mel_len += torch.sum(mel_lengths) + total_mel_sum += torch.sum(mels) + total_mel_sq_sum += torch.sum(torch.pow(mels, 2)) + + data_mean = total_mel_sum / (total_mel_len * out_channels) + data_std = torch.sqrt((total_mel_sq_sum / (total_mel_len * out_channels)) - torch.pow(data_mean, 2)) + + return {"mel_mean": data_mean.item(), "mel_std": data_std.item()} + + +def main(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "-i", + "--input-config", + type=str, + default="vctk.yaml", + help="The name of the yaml config file under configs/data", + ) + + parser.add_argument( + "-b", + "--batch-size", + type=int, + default="256", + help="Can have increased batch size for faster computation", + ) + + parser.add_argument( + "-f", + "--force", + action="store_true", + default=False, + required=False, + help="force overwrite the file", + ) + args = parser.parse_args() + output_file = Path(args.input_config).with_suffix(".json") + + if os.path.exists(output_file) and not args.force: + print("File already exists. Use -f to force overwrite") + sys.exit(1) + + with initialize(version_base="1.3", config_path="../../configs/data"): + cfg = compose(config_name=args.input_config, return_hydra_config=True, overrides=[]) + + root_path = rootutils.find_root(search_from=__file__, indicator=".project-root") + + with open_dict(cfg): + del cfg["hydra"] + del cfg["_target_"] + cfg["data_statistics"] = None + cfg["seed"] = 1234 + cfg["batch_size"] = args.batch_size + cfg["train_filelist_path"] = str(os.path.join(root_path, cfg["train_filelist_path"])) + cfg["valid_filelist_path"] = str(os.path.join(root_path, cfg["valid_filelist_path"])) + + text_mel_datamodule = TextMelDataModule(**cfg) + text_mel_datamodule.setup() + data_loader = text_mel_datamodule.train_dataloader() + log.info("Dataloader loaded! Now computing stats...") + params = compute_data_statistics(data_loader, cfg["n_feats"]) + print(params) + json.dump( + params, + open(output_file, "w"), + ) + + +if __name__ == "__main__": + main() diff --git a/third_party/Matcha-TTS/matcha/utils/instantiators.py b/third_party/Matcha-TTS/matcha/utils/instantiators.py new file mode 100644 index 0000000000000000000000000000000000000000..5547b4ed61ed8c21e63c528f58526a949879a94f --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/instantiators.py @@ -0,0 +1,56 @@ +from typing import List + +import hydra +from lightning import Callback +from lightning.pytorch.loggers import Logger +from omegaconf import DictConfig + +from matcha.utils import pylogger + +log = pylogger.get_pylogger(__name__) + + +def instantiate_callbacks(callbacks_cfg: DictConfig) -> List[Callback]: + """Instantiates callbacks from config. + + :param callbacks_cfg: A DictConfig object containing callback configurations. + :return: A list of instantiated callbacks. + """ + callbacks: List[Callback] = [] + + if not callbacks_cfg: + log.warning("No callback configs found! Skipping..") + return callbacks + + if not isinstance(callbacks_cfg, DictConfig): + raise TypeError("Callbacks config must be a DictConfig!") + + for _, cb_conf in callbacks_cfg.items(): + if isinstance(cb_conf, DictConfig) and "_target_" in cb_conf: + log.info(f"Instantiating callback <{cb_conf._target_}>") # pylint: disable=protected-access + callbacks.append(hydra.utils.instantiate(cb_conf)) + + return callbacks + + +def instantiate_loggers(logger_cfg: DictConfig) -> List[Logger]: + """Instantiates loggers from config. + + :param logger_cfg: A DictConfig object containing logger configurations. + :return: A list of instantiated loggers. + """ + logger: List[Logger] = [] + + if not logger_cfg: + log.warning("No logger configs found! Skipping...") + return logger + + if not isinstance(logger_cfg, DictConfig): + raise TypeError("Logger config must be a DictConfig!") + + for _, lg_conf in logger_cfg.items(): + if isinstance(lg_conf, DictConfig) and "_target_" in lg_conf: + log.info(f"Instantiating logger <{lg_conf._target_}>") # pylint: disable=protected-access + logger.append(hydra.utils.instantiate(lg_conf)) + + return logger diff --git a/third_party/Matcha-TTS/matcha/utils/logging_utils.py b/third_party/Matcha-TTS/matcha/utils/logging_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..1a12d1ddafa25ca3ae8e497bcd7de2191f13659b --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/logging_utils.py @@ -0,0 +1,53 @@ +from typing import Any, Dict + +from lightning.pytorch.utilities import rank_zero_only +from omegaconf import OmegaConf + +from matcha.utils import pylogger + +log = pylogger.get_pylogger(__name__) + + +@rank_zero_only +def log_hyperparameters(object_dict: Dict[str, Any]) -> None: + """Controls which config parts are saved by Lightning loggers. + + Additionally saves: + - Number of model parameters + + :param object_dict: A dictionary containing the following objects: + - `"cfg"`: A DictConfig object containing the main config. + - `"model"`: The Lightning model. + - `"trainer"`: The Lightning trainer. + """ + hparams = {} + + cfg = OmegaConf.to_container(object_dict["cfg"]) + model = object_dict["model"] + trainer = object_dict["trainer"] + + if not trainer.logger: + log.warning("Logger not found! Skipping hyperparameter logging...") + return + + hparams["model"] = cfg["model"] + + # save number of model parameters + hparams["model/params/total"] = sum(p.numel() for p in model.parameters()) + hparams["model/params/trainable"] = sum(p.numel() for p in model.parameters() if p.requires_grad) + hparams["model/params/non_trainable"] = sum(p.numel() for p in model.parameters() if not p.requires_grad) + + hparams["data"] = cfg["data"] + hparams["trainer"] = cfg["trainer"] + + hparams["callbacks"] = cfg.get("callbacks") + hparams["extras"] = cfg.get("extras") + + hparams["task_name"] = cfg.get("task_name") + hparams["tags"] = cfg.get("tags") + hparams["ckpt_path"] = cfg.get("ckpt_path") + hparams["seed"] = cfg.get("seed") + + # send hparams to all loggers + for logger in trainer.loggers: + logger.log_hyperparams(hparams) diff --git a/third_party/Matcha-TTS/matcha/utils/model.py b/third_party/Matcha-TTS/matcha/utils/model.py new file mode 100644 index 0000000000000000000000000000000000000000..869cc6092f5952930534c47544fae88308e96abf --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/model.py @@ -0,0 +1,90 @@ +""" from https://github.com/jaywalnut310/glow-tts """ + +import numpy as np +import torch + + +def sequence_mask(length, max_length=None): + if max_length is None: + max_length = length.max() + x = torch.arange(max_length, dtype=length.dtype, device=length.device) + return x.unsqueeze(0) < length.unsqueeze(1) + + +def fix_len_compatibility(length, num_downsamplings_in_unet=2): + factor = torch.scalar_tensor(2).pow(num_downsamplings_in_unet) + length = (length / factor).ceil() * factor + if not torch.onnx.is_in_onnx_export(): + return length.int().item() + else: + return length + + +def convert_pad_shape(pad_shape): + inverted_shape = pad_shape[::-1] + pad_shape = [item for sublist in inverted_shape for item in sublist] + return pad_shape + + +def generate_path(duration, mask): + device = duration.device + + b, t_x, t_y = mask.shape + cum_duration = torch.cumsum(duration, 1) + path = torch.zeros(b, t_x, t_y, dtype=mask.dtype).to(device=device) + + cum_duration_flat = cum_duration.view(b * t_x) + path = sequence_mask(cum_duration_flat, t_y).to(mask.dtype) + path = path.view(b, t_x, t_y) + path = path - torch.nn.functional.pad(path, convert_pad_shape([[0, 0], [1, 0], [0, 0]]))[:, :-1] + path = path * mask + return path + + +def duration_loss(logw, logw_, lengths): + loss = torch.sum((logw - logw_) ** 2) / torch.sum(lengths) + return loss + + +def normalize(data, mu, std): + if not isinstance(mu, (float, int)): + if isinstance(mu, list): + mu = torch.tensor(mu, dtype=data.dtype, device=data.device) + elif isinstance(mu, torch.Tensor): + mu = mu.to(data.device) + elif isinstance(mu, np.ndarray): + mu = torch.from_numpy(mu).to(data.device) + mu = mu.unsqueeze(-1) + + if not isinstance(std, (float, int)): + if isinstance(std, list): + std = torch.tensor(std, dtype=data.dtype, device=data.device) + elif isinstance(std, torch.Tensor): + std = std.to(data.device) + elif isinstance(std, np.ndarray): + std = torch.from_numpy(std).to(data.device) + std = std.unsqueeze(-1) + + return (data - mu) / std + + +def denormalize(data, mu, std): + if not isinstance(mu, float): + if isinstance(mu, list): + mu = torch.tensor(mu, dtype=data.dtype, device=data.device) + elif isinstance(mu, torch.Tensor): + mu = mu.to(data.device) + elif isinstance(mu, np.ndarray): + mu = torch.from_numpy(mu).to(data.device) + mu = mu.unsqueeze(-1) + + if not isinstance(std, float): + if isinstance(std, list): + std = torch.tensor(std, dtype=data.dtype, device=data.device) + elif isinstance(std, torch.Tensor): + std = std.to(data.device) + elif isinstance(std, np.ndarray): + std = torch.from_numpy(std).to(data.device) + std = std.unsqueeze(-1) + + return data * std + mu diff --git a/third_party/Matcha-TTS/matcha/utils/monotonic_align/__init__.py b/third_party/Matcha-TTS/matcha/utils/monotonic_align/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..eee6e0d47c2e3612ef02bc17442e6886998e5a94 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/monotonic_align/__init__.py @@ -0,0 +1,22 @@ +import numpy as np +import torch + +from matcha.utils.monotonic_align.core import maximum_path_c + + +def maximum_path(value, mask): + """Cython optimised version. + value: [b, t_x, t_y] + mask: [b, t_x, t_y] + """ + value = value * mask + device = value.device + dtype = value.dtype + value = value.data.cpu().numpy().astype(np.float32) + path = np.zeros_like(value).astype(np.int32) + mask = mask.data.cpu().numpy() + + t_x_max = mask.sum(1)[:, 0].astype(np.int32) + t_y_max = mask.sum(2)[:, 0].astype(np.int32) + maximum_path_c(path, value, t_x_max, t_y_max) + return torch.from_numpy(path).to(device=device, dtype=dtype) diff --git a/third_party/Matcha-TTS/matcha/utils/monotonic_align/core.pyx b/third_party/Matcha-TTS/matcha/utils/monotonic_align/core.pyx new file mode 100644 index 0000000000000000000000000000000000000000..091fcc3a50a51f3d3fee47a70825260757e6d885 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/monotonic_align/core.pyx @@ -0,0 +1,47 @@ +import numpy as np + +cimport cython +cimport numpy as np + +from cython.parallel import prange + + +@cython.boundscheck(False) +@cython.wraparound(False) +cdef void maximum_path_each(int[:,::1] path, float[:,::1] value, int t_x, int t_y, float max_neg_val) nogil: + cdef int x + cdef int y + cdef float v_prev + cdef float v_cur + cdef float tmp + cdef int index = t_x - 1 + + for y in range(t_y): + for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): + if x == y: + v_cur = max_neg_val + else: + v_cur = value[x, y-1] + if x == 0: + if y == 0: + v_prev = 0. + else: + v_prev = max_neg_val + else: + v_prev = value[x-1, y-1] + value[x, y] = max(v_cur, v_prev) + value[x, y] + + for y in range(t_y - 1, -1, -1): + path[index, y] = 1 + if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): + index = index - 1 + + +@cython.boundscheck(False) +@cython.wraparound(False) +cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: + cdef int b = values.shape[0] + + cdef int i + for i in prange(b, nogil=True): + maximum_path_each(paths[i], values[i], t_xs[i], t_ys[i], max_neg_val) diff --git a/third_party/Matcha-TTS/matcha/utils/monotonic_align/setup.py b/third_party/Matcha-TTS/matcha/utils/monotonic_align/setup.py new file mode 100644 index 0000000000000000000000000000000000000000..f22bc6a35a5a04c9e6d7b82040973722c9b770c9 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/monotonic_align/setup.py @@ -0,0 +1,7 @@ +# from distutils.core import setup +# from Cython.Build import cythonize +# import numpy + +# setup(name='monotonic_align', +# ext_modules=cythonize("core.pyx"), +# include_dirs=[numpy.get_include()]) diff --git a/third_party/Matcha-TTS/matcha/utils/pylogger.py b/third_party/Matcha-TTS/matcha/utils/pylogger.py new file mode 100644 index 0000000000000000000000000000000000000000..61600678029362e110f655edb91d5f3bc5b1cd1c --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/pylogger.py @@ -0,0 +1,21 @@ +import logging + +from lightning.pytorch.utilities import rank_zero_only + + +def get_pylogger(name: str = __name__) -> logging.Logger: + """Initializes a multi-GPU-friendly python command line logger. + + :param name: The name of the logger, defaults to ``__name__``. + + :return: A logger object. + """ + logger = logging.getLogger(name) + + # this ensures all logging levels get marked with the rank zero decorator + # otherwise logs would get multiplied for each GPU process in multi-GPU setup + logging_levels = ("debug", "info", "warning", "error", "exception", "fatal", "critical") + for level in logging_levels: + setattr(logger, level, rank_zero_only(getattr(logger, level))) + + return logger diff --git a/third_party/Matcha-TTS/matcha/utils/rich_utils.py b/third_party/Matcha-TTS/matcha/utils/rich_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..f602f6e9351d948946eb419eb4e420190ea634bc --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/rich_utils.py @@ -0,0 +1,101 @@ +from pathlib import Path +from typing import Sequence + +import rich +import rich.syntax +import rich.tree +from hydra.core.hydra_config import HydraConfig +from lightning.pytorch.utilities import rank_zero_only +from omegaconf import DictConfig, OmegaConf, open_dict +from rich.prompt import Prompt + +from matcha.utils import pylogger + +log = pylogger.get_pylogger(__name__) + + +@rank_zero_only +def print_config_tree( + cfg: DictConfig, + print_order: Sequence[str] = ( + "data", + "model", + "callbacks", + "logger", + "trainer", + "paths", + "extras", + ), + resolve: bool = False, + save_to_file: bool = False, +) -> None: + """Prints the contents of a DictConfig as a tree structure using the Rich library. + + :param cfg: A DictConfig composed by Hydra. + :param print_order: Determines in what order config components are printed. Default is ``("data", "model", + "callbacks", "logger", "trainer", "paths", "extras")``. + :param resolve: Whether to resolve reference fields of DictConfig. Default is ``False``. + :param save_to_file: Whether to export config to the hydra output folder. Default is ``False``. + """ + style = "dim" + tree = rich.tree.Tree("CONFIG", style=style, guide_style=style) + + queue = [] + + # add fields from `print_order` to queue + for field in print_order: + _ = ( + queue.append(field) + if field in cfg + else log.warning(f"Field '{field}' not found in config. Skipping '{field}' config printing...") + ) + + # add all the other fields to queue (not specified in `print_order`) + for field in cfg: + if field not in queue: + queue.append(field) + + # generate config tree from queue + for field in queue: + branch = tree.add(field, style=style, guide_style=style) + + config_group = cfg[field] + if isinstance(config_group, DictConfig): + branch_content = OmegaConf.to_yaml(config_group, resolve=resolve) + else: + branch_content = str(config_group) + + branch.add(rich.syntax.Syntax(branch_content, "yaml")) + + # print config tree + rich.print(tree) + + # save config tree to file + if save_to_file: + with open(Path(cfg.paths.output_dir, "config_tree.log"), "w") as file: + rich.print(tree, file=file) + + +@rank_zero_only +def enforce_tags(cfg: DictConfig, save_to_file: bool = False) -> None: + """Prompts user to input tags from command line if no tags are provided in config. + + :param cfg: A DictConfig composed by Hydra. + :param save_to_file: Whether to export tags to the hydra output folder. Default is ``False``. + """ + if not cfg.get("tags"): + if "id" in HydraConfig().cfg.hydra.job: + raise ValueError("Specify tags before launching a multirun!") + + log.warning("No tags provided in config. Prompting user to input tags...") + tags = Prompt.ask("Enter a list of comma separated tags", default="dev") + tags = [t.strip() for t in tags.split(",") if t != ""] + + with open_dict(cfg): + cfg.tags = tags + + log.info(f"Tags: {cfg.tags}") + + if save_to_file: + with open(Path(cfg.paths.output_dir, "tags.log"), "w") as file: + rich.print(cfg.tags, file=file) diff --git a/third_party/Matcha-TTS/matcha/utils/utils.py b/third_party/Matcha-TTS/matcha/utils/utils.py new file mode 100644 index 0000000000000000000000000000000000000000..af65e09070b4a4786ad139ec6e3d57d5ef578204 --- /dev/null +++ b/third_party/Matcha-TTS/matcha/utils/utils.py @@ -0,0 +1,219 @@ +import os +import sys +import warnings +from importlib.util import find_spec +from pathlib import Path +from typing import Any, Callable, Dict, Tuple + +import gdown +import matplotlib.pyplot as plt +import numpy as np +import torch +import wget +from omegaconf import DictConfig + +from matcha.utils import pylogger, rich_utils + +log = pylogger.get_pylogger(__name__) + + +def extras(cfg: DictConfig) -> None: + """Applies optional utilities before the task is started. + + Utilities: + - Ignoring python warnings + - Setting tags from command line + - Rich config printing + + :param cfg: A DictConfig object containing the config tree. + """ + # return if no `extras` config + if not cfg.get("extras"): + log.warning("Extras config not found! ") + return + + # disable python warnings + if cfg.extras.get("ignore_warnings"): + log.info("Disabling python warnings! ") + warnings.filterwarnings("ignore") + + # prompt user to input tags from command line if none are provided in the config + if cfg.extras.get("enforce_tags"): + log.info("Enforcing tags! ") + rich_utils.enforce_tags(cfg, save_to_file=True) + + # pretty print config tree using Rich library + if cfg.extras.get("print_config"): + log.info("Printing config tree with Rich! ") + rich_utils.print_config_tree(cfg, resolve=True, save_to_file=True) + + +def task_wrapper(task_func: Callable) -> Callable: + """Optional decorator that controls the failure behavior when executing the task function. + + This wrapper can be used to: + - make sure loggers are closed even if the task function raises an exception (prevents multirun failure) + - save the exception to a `.log` file + - mark the run as failed with a dedicated file in the `logs/` folder (so we can find and rerun it later) + - etc. (adjust depending on your needs) + + Example: + ``` + @utils.task_wrapper + def train(cfg: DictConfig) -> Tuple[Dict[str, Any], Dict[str, Any]]: + ... + return metric_dict, object_dict + ``` + + :param task_func: The task function to be wrapped. + + :return: The wrapped task function. + """ + + def wrap(cfg: DictConfig) -> Tuple[Dict[str, Any], Dict[str, Any]]: + # execute the task + try: + metric_dict, object_dict = task_func(cfg=cfg) + + # things to do if exception occurs + except Exception as ex: + # save exception to `.log` file + log.exception("") + + # some hyperparameter combinations might be invalid or cause out-of-memory errors + # so when using hparam search plugins like Optuna, you might want to disable + # raising the below exception to avoid multirun failure + raise ex + + # things to always do after either success or exception + finally: + # display output dir path in terminal + log.info(f"Output dir: {cfg.paths.output_dir}") + + # always close wandb run (even if exception occurs so multirun won't fail) + if find_spec("wandb"): # check if wandb is installed + import wandb + + if wandb.run: + log.info("Closing wandb!") + wandb.finish() + + return metric_dict, object_dict + + return wrap + + +def get_metric_value(metric_dict: Dict[str, Any], metric_name: str) -> float: + """Safely retrieves value of the metric logged in LightningModule. + + :param metric_dict: A dict containing metric values. + :param metric_name: The name of the metric to retrieve. + :return: The value of the metric. + """ + if not metric_name: + log.info("Metric name is None! Skipping metric value retrieval...") + return None + + if metric_name not in metric_dict: + raise ValueError( + f"Metric value not found! \n" + "Make sure metric name logged in LightningModule is correct!\n" + "Make sure `optimized_metric` name in `hparams_search` config is correct!" + ) + + metric_value = metric_dict[metric_name].item() + log.info(f"Retrieved metric value! <{metric_name}={metric_value}>") + + return metric_value + + +def intersperse(lst, item): + # Adds blank symbol + result = [item] * (len(lst) * 2 + 1) + result[1::2] = lst + return result + + +def save_figure_to_numpy(fig): + data = np.fromstring(fig.canvas.tostring_rgb(), dtype=np.uint8, sep="") + data = data.reshape(fig.canvas.get_width_height()[::-1] + (3,)) + return data + + +def plot_tensor(tensor): + plt.style.use("default") + fig, ax = plt.subplots(figsize=(12, 3)) + im = ax.imshow(tensor, aspect="auto", origin="lower", interpolation="none") + plt.colorbar(im, ax=ax) + plt.tight_layout() + fig.canvas.draw() + data = save_figure_to_numpy(fig) + plt.close() + return data + + +def save_plot(tensor, savepath): + plt.style.use("default") + fig, ax = plt.subplots(figsize=(12, 3)) + im = ax.imshow(tensor, aspect="auto", origin="lower", interpolation="none") + plt.colorbar(im, ax=ax) + plt.tight_layout() + fig.canvas.draw() + plt.savefig(savepath) + plt.close() + + +def to_numpy(tensor): + if isinstance(tensor, np.ndarray): + return tensor + elif isinstance(tensor, torch.Tensor): + return tensor.detach().cpu().numpy() + elif isinstance(tensor, list): + return np.array(tensor) + else: + raise TypeError("Unsupported type for conversion to numpy array") + + +def get_user_data_dir(appname="matcha_tts"): + """ + Args: + appname (str): Name of application + + Returns: + Path: path to user data directory + """ + + MATCHA_HOME = os.environ.get("MATCHA_HOME") + if MATCHA_HOME is not None: + ans = Path(MATCHA_HOME).expanduser().resolve(strict=False) + elif sys.platform == "win32": + import winreg # pylint: disable=import-outside-toplevel + + key = winreg.OpenKey( + winreg.HKEY_CURRENT_USER, + r"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders", + ) + dir_, _ = winreg.QueryValueEx(key, "Local AppData") + ans = Path(dir_).resolve(strict=False) + elif sys.platform == "darwin": + ans = Path("~/Library/Application Support/").expanduser() + else: + ans = Path.home().joinpath(".local/share") + + final_path = ans.joinpath(appname) + final_path.mkdir(parents=True, exist_ok=True) + return final_path + + +def assert_model_downloaded(checkpoint_path, url, use_wget=True): + if Path(checkpoint_path).exists(): + log.debug(f"[+] Model already present at {checkpoint_path}!") + print(f"[+] Model already present at {checkpoint_path}!") + return + log.info(f"[-] Model not found at {checkpoint_path}! Will download it") + print(f"[-] Model not found at {checkpoint_path}! Will download it") + checkpoint_path = str(checkpoint_path) + if not use_wget: + gdown.download(url=url, output=checkpoint_path, quiet=False, fuzzy=True) + else: + wget.download(url=url, out=checkpoint_path) diff --git a/third_party/Matcha-TTS/notebooks/.gitkeep b/third_party/Matcha-TTS/notebooks/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/third_party/Matcha-TTS/pyproject.toml b/third_party/Matcha-TTS/pyproject.toml new file mode 100644 index 0000000000000000000000000000000000000000..74aa39300a61b8b3607dc634d68aa47013141ec5 --- /dev/null +++ b/third_party/Matcha-TTS/pyproject.toml @@ -0,0 +1,51 @@ +[build-system] +requires = ["setuptools", "wheel", "cython==0.29.35", "numpy==1.24.3", "packaging"] + +[tool.black] +line-length = 120 +target-version = ['py310'] +exclude = ''' + +( + /( + \.eggs # exclude a few common directories in the + | \.git # root of the project + | \.hg + | \.mypy_cache + | \.tox + | \.venv + | _build + | buck-out + | build + | dist + )/ + | foo.py # also separately exclude a file named foo.py in + # the root of the project +) +''' + +[tool.pytest.ini_options] +addopts = [ + "--color=yes", + "--durations=0", + "--strict-markers", + "--doctest-modules", +] +filterwarnings = [ + "ignore::DeprecationWarning", + "ignore::UserWarning", +] +log_cli = "True" +markers = [ + "slow: slow tests", +] +minversion = "6.0" +testpaths = "tests/" + +[tool.coverage.report] +exclude_lines = [ + "pragma: nocover", + "raise NotImplementedError", + "raise NotImplementedError()", + "if __name__ == .__main__.:", +] diff --git a/third_party/Matcha-TTS/requirements.txt b/third_party/Matcha-TTS/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..3e14a532cb14f99190404472915213940bfad4b9 --- /dev/null +++ b/third_party/Matcha-TTS/requirements.txt @@ -0,0 +1,45 @@ +# --------- pytorch --------- # +torch>=2.0.0 +torchvision>=0.15.0 +lightning>=2.0.0 +torchmetrics>=0.11.4 + +# --------- hydra --------- # +hydra-core==1.3.2 +hydra-colorlog==1.2.0 +hydra-optuna-sweeper==1.2.0 + +# --------- loggers --------- # +# wandb +# neptune-client +# mlflow +# comet-ml +# aim>=3.16.2 # no lower than 3.16.2, see https://github.com/aimhubio/aim/issues/2550 + +# --------- others --------- # +rootutils # standardizing the project root setup +pre-commit # hooks for applying linters on commit +rich # beautiful text formatting in terminal +pytest # tests +# sh # for running bash commands in some tests (linux/macos only) +phonemizer # phonemization of text +tensorboard +librosa +Cython +numpy +einops +inflect +Unidecode +scipy +torchaudio +matplotlib +pandas +conformer==0.3.2 +diffusers==0.25.0 +notebook +ipywidgets +gradio==3.43.2 +gdown +wget +seaborn +piper_phonemize diff --git a/third_party/Matcha-TTS/scripts/schedule.sh b/third_party/Matcha-TTS/scripts/schedule.sh new file mode 100644 index 0000000000000000000000000000000000000000..44b3da1116ef4d54e9acffee7d639d549e136d45 --- /dev/null +++ b/third_party/Matcha-TTS/scripts/schedule.sh @@ -0,0 +1,7 @@ +#!/bin/bash +# Schedule execution of many runs +# Run from root folder with: bash scripts/schedule.sh + +python src/train.py trainer.max_epochs=5 logger=csv + +python src/train.py trainer.max_epochs=10 logger=csv diff --git a/third_party/Matcha-TTS/setup.py b/third_party/Matcha-TTS/setup.py new file mode 100644 index 0000000000000000000000000000000000000000..80d4aac04c6cd36859c5d753468ef2e105770098 --- /dev/null +++ b/third_party/Matcha-TTS/setup.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python +import os + +import numpy +from Cython.Build import cythonize +from setuptools import Extension, find_packages, setup + +exts = [ + Extension( + name="matcha.utils.monotonic_align.core", + sources=["matcha/utils/monotonic_align/core.pyx"], + ) +] + +with open("README.md", encoding="utf-8") as readme_file: + README = readme_file.read() + +cwd = os.path.dirname(os.path.abspath(__file__)) +with open(os.path.join(cwd, "matcha", "VERSION")) as fin: + version = fin.read().strip() + +setup( + name="matcha-tts", + version=version, + description="🍵 Matcha-TTS: A fast TTS architecture with conditional flow matching", + long_description=README, + long_description_content_type="text/markdown", + author="Shivam Mehta", + author_email="shivam.mehta25@gmail.com", + url="https://shivammehta25.github.io/Matcha-TTS", + install_requires=[str(r) for r in open(os.path.join(os.path.dirname(__file__), "requirements.txt"))], + include_dirs=[numpy.get_include()], + include_package_data=True, + packages=find_packages(exclude=["tests", "tests/*", "examples", "examples/*"]), + # use this to customize global commands available in the terminal after installing the package + entry_points={ + "console_scripts": [ + "matcha-data-stats=matcha.utils.generate_data_statistics:main", + "matcha-tts=matcha.cli:cli", + "matcha-tts-app=matcha.app:main", + ] + }, + ext_modules=cythonize(exts, language_level=3), + python_requires=">=3.9.0", +) diff --git a/third_party/Matcha-TTS/synthesis.ipynb b/third_party/Matcha-TTS/synthesis.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..dfbde30b5ad98f1368be3aa181145a4eac97da93 --- /dev/null +++ b/third_party/Matcha-TTS/synthesis.ipynb @@ -0,0 +1,419 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "f37f4e3b-f764-4502-a6a2-6417bd9bfab9", + "metadata": {}, + "source": [ + "# Matcha-TTS: A fast TTS architecture with conditional flow matching\n", + "---\n", + "[Shivam Mehta](https://www.kth.se/profile/smehta), [Ruibo Tu](https://www.kth.se/profile/ruibo), [Jonas Beskow](https://www.kth.se/profile/beskow), [Éva Székely](https://www.kth.se/profile/szekely), and [Gustav Eje Henter](https://people.kth.se/~ghe/)\n", + "\n", + "We introduce Matcha-TTS, a new encoder-decoder architecture for speedy TTS acoustic modelling, trained using optimal-transport conditional flow matching (OT-CFM). This yields an ODE-based decoder capable of high output quality in fewer synthesis steps than models trained using score matching. Careful design choices additionally ensure each synthesis step is fast to run. The method is probabilistic, non-autoregressive, and learns to speak from scratch without external alignments. Compared to strong pre-trained baseline models, the Matcha-TTS system has the smallest memory footprint, rivals the speed of the fastest models on long utterances, and attains the highest mean opinion score in a listening test.\n", + "\n", + "Demo Page: https://shivammehta25.github.io/Matcha-TTS \\\n", + "Code: https://github.com/shivammehta25/Matcha-TTS\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "148f4bc0-c28e-4670-9a5e-4c7928ab8992", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "env: CUDA_VISIBLE_DEVICES=0\n" + ] + } + ], + "source": [ + "%env CUDA_VISIBLE_DEVICES=0" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "8d5876c0-b47e-4c80-9e9c-62550f81b64e", + "metadata": {}, + "outputs": [], + "source": [ + "import datetime as dt\n", + "from pathlib import Path\n", + "\n", + "import IPython.display as ipd\n", + "import numpy as np\n", + "import soundfile as sf\n", + "import torch\n", + "from tqdm.auto import tqdm\n", + "\n", + "# Hifigan imports\n", + "from matcha.hifigan.config import v1\n", + "from matcha.hifigan.denoiser import Denoiser\n", + "from matcha.hifigan.env import AttrDict\n", + "from matcha.hifigan.models import Generator as HiFiGAN\n", + "# Matcha imports\n", + "from matcha.models.matcha_tts import MatchaTTS\n", + "from matcha.text import sequence_to_text, text_to_sequence\n", + "from matcha.utils.model import denormalize\n", + "from matcha.utils.utils import get_user_data_dir, intersperse" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "b1a30306-588c-4f22-8d9b-e2676880b0e5", + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2\n", + "%matplotlib inline\n", + "# This allows for real time code changes being reflected in the notebook, no need to restart the kernel" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "a312856b-01a9-4d75-a4c8-4666dffa0692", + "metadata": {}, + "outputs": [], + "source": [ + "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")" + ] + }, + { + "cell_type": "markdown", + "id": "88f3b3c3-d014-443b-84eb-e143cdec3e21", + "metadata": {}, + "source": [ + "## Filepaths" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "7640a4c1-44ce-447c-a8ff-45012fb7bddd", + "metadata": {}, + "outputs": [], + "source": [ + "MATCHA_CHECKPOINT = get_user_data_dir()/\"matcha_ljspeech.ckpt\"\n", + "HIFIGAN_CHECKPOINT = get_user_data_dir() / \"hifigan_T2_v1\"\n", + "OUTPUT_FOLDER = \"synth_output\"" + ] + }, + { + "cell_type": "markdown", + "id": "6477a3a9-71f2-4d2f-bb86-bdf3e31c2461", + "metadata": {}, + "source": [ + "## Load Matcha-TTS" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "26a16230-04ba-4825-a844-2fb5ab945e24", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Model loaded! Parameter count: 18,204,193\n" + ] + } + ], + "source": [ + "def load_model(checkpoint_path):\n", + " model = MatchaTTS.load_from_checkpoint(checkpoint_path, map_location=device)\n", + " model.eval()\n", + " return model\n", + "count_params = lambda x: f\"{sum(p.numel() for p in x.parameters()):,}\"\n", + "\n", + "\n", + "model = load_model(MATCHA_CHECKPOINT)\n", + "print(f\"Model loaded! Parameter count: {count_params(model)}\")" + ] + }, + { + "cell_type": "markdown", + "id": "3077b84b-e3b6-42e1-a84b-2f7084b13f92", + "metadata": {}, + "source": [ + "## Load HiFi-GAN (Vocoder)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "f6b68184-968d-4868-9029-f0c40e9e68af", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Removing weight norm...\n" + ] + } + ], + "source": [ + "def load_vocoder(checkpoint_path):\n", + " h = AttrDict(v1)\n", + " hifigan = HiFiGAN(h).to(device)\n", + " hifigan.load_state_dict(torch.load(checkpoint_path, map_location=device)['generator'])\n", + " _ = hifigan.eval()\n", + " hifigan.remove_weight_norm()\n", + " return hifigan\n", + "\n", + "vocoder = load_vocoder(HIFIGAN_CHECKPOINT)\n", + "denoiser = Denoiser(vocoder, mode='zeros')" + ] + }, + { + "cell_type": "markdown", + "id": "4cbc2ba0-09ff-40e2-9e60-6b77b534f9fb", + "metadata": {}, + "source": [ + "### Helper functions to synthesise" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "880a1879-24fd-4757-849c-850339120796", + "metadata": {}, + "outputs": [], + "source": [ + "@torch.inference_mode()\n", + "def process_text(text: str):\n", + " x = torch.tensor(intersperse(text_to_sequence(text, ['english_cleaners2']), 0),dtype=torch.long, device=device)[None]\n", + " x_lengths = torch.tensor([x.shape[-1]],dtype=torch.long, device=device)\n", + " x_phones = sequence_to_text(x.squeeze(0).tolist())\n", + " return {\n", + " 'x_orig': text,\n", + " 'x': x,\n", + " 'x_lengths': x_lengths,\n", + " 'x_phones': x_phones\n", + " }\n", + "\n", + "\n", + "@torch.inference_mode()\n", + "def synthesise(text, spks=None):\n", + " text_processed = process_text(text)\n", + " start_t = dt.datetime.now()\n", + " output = model.synthesise(\n", + " text_processed['x'], \n", + " text_processed['x_lengths'],\n", + " n_timesteps=n_timesteps,\n", + " temperature=temperature,\n", + " spks=spks,\n", + " length_scale=length_scale\n", + " )\n", + " # merge everything to one dict \n", + " output.update({'start_t': start_t, **text_processed})\n", + " return output\n", + "\n", + "@torch.inference_mode()\n", + "def to_waveform(mel, vocoder):\n", + " audio = vocoder(mel).clamp(-1, 1)\n", + " audio = denoiser(audio.squeeze(0), strength=0.00025).cpu().squeeze()\n", + " return audio.cpu().squeeze()\n", + " \n", + "def save_to_folder(filename: str, output: dict, folder: str):\n", + " folder = Path(folder)\n", + " folder.mkdir(exist_ok=True, parents=True)\n", + " np.save(folder / f'{filename}', output['mel'].cpu().numpy())\n", + " sf.write(folder / f'{filename}.wav', output['waveform'], 22050, 'PCM_24')" + ] + }, + { + "cell_type": "markdown", + "id": "78f857e3-2ef7-4c86-b776-596c4d3cf875", + "metadata": {}, + "source": [ + "## Setup text to synthesise" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "2e0a9acd-0845-4192-ba09-b9683e28a3ac", + "metadata": {}, + "outputs": [], + "source": [ + "texts = [\n", + " \"The Secret Service believed that it was very doubtful that any President would ride regularly in a vehicle with a fixed top, even though transparent.\"\n", + "]" + ] + }, + { + "cell_type": "markdown", + "id": "a9da9e2d-99b9-4c6f-8a08-c828e2cba121", + "metadata": {}, + "source": [ + "### Hyperparameters" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "f0d216e5-4895-4da8-9d24-9e61021d2556", + "metadata": {}, + "outputs": [], + "source": [ + "## Number of ODE Solver steps\n", + "n_timesteps = 10\n", + "\n", + "## Changes to the speaking rate\n", + "length_scale=1.0\n", + "\n", + "## Sampling temperature\n", + "temperature = 0.667" + ] + }, + { + "cell_type": "markdown", + "id": "b93aac89-c7f8-4975-8510-4e763c9689f4", + "metadata": {}, + "source": [ + "## Synthesis" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "5a227963-aa12-43b9-a706-1168b6fc0ba5", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "8342d12401c54017b0e19b8d293a06bf", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/1 [00:00\n", + " \n", + " Your browser does not support the audio element.\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of ODE steps: 10\n", + "Mean RTF:\t\t\t\t0.017228 ± 0.000000\n", + "Mean RTF Waveform (incl. vocoder):\t0.021445 ± 0.000000\n" + ] + } + ], + "source": [ + "outputs, rtfs = [], []\n", + "rtfs_w = []\n", + "for i, text in enumerate(tqdm(texts)):\n", + " output = synthesise(text) #, torch.tensor([15], device=device, dtype=torch.long).unsqueeze(0))\n", + " output['waveform'] = to_waveform(output['mel'], vocoder)\n", + "\n", + " # Compute Real Time Factor (RTF) with HiFi-GAN\n", + " t = (dt.datetime.now() - output['start_t']).total_seconds()\n", + " rtf_w = t * 22050 / (output['waveform'].shape[-1])\n", + "\n", + " ## Pretty print\n", + " print(f\"{'*' * 53}\")\n", + " print(f\"Input text - {i}\")\n", + " print(f\"{'-' * 53}\")\n", + " print(output['x_orig'])\n", + " print(f\"{'*' * 53}\")\n", + " print(f\"Phonetised text - {i}\")\n", + " print(f\"{'-' * 53}\")\n", + " print(output['x_phones'])\n", + " print(f\"{'*' * 53}\")\n", + " print(f\"RTF:\\t\\t{output['rtf']:.6f}\")\n", + " print(f\"RTF Waveform:\\t{rtf_w:.6f}\")\n", + " rtfs.append(output['rtf'])\n", + " rtfs_w.append(rtf_w)\n", + "\n", + " ## Display the synthesised waveform\n", + " ipd.display(ipd.Audio(output['waveform'], rate=22050))\n", + "\n", + " ## Save the generated waveform\n", + " save_to_folder(i, output, OUTPUT_FOLDER)\n", + "\n", + "print(f\"Number of ODE steps: {n_timesteps}\")\n", + "print(f\"Mean RTF:\\t\\t\\t\\t{np.mean(rtfs):.6f} ± {np.std(rtfs):.6f}\")\n", + "print(f\"Mean RTF Waveform (incl. vocoder):\\t{np.mean(rtfs_w):.6f} ± {np.std(rtfs_w):.6f}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e3e85c3f-1623-4647-b40c-fa96907656fc", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/zero_shot_prompt.wav b/zero_shot_prompt.wav new file mode 100644 index 0000000000000000000000000000000000000000..25fbf592f2a5efa3d966ff64084c75a43be4cc1e Binary files /dev/null and b/zero_shot_prompt.wav differ