1. BUUCTF Crypto 1-10题通关指南
作为一名CTF老玩家,我最近在BUUCTF平台上刷完了Crypto方向的前10道基础题。这些题目涵盖了MD5、URL编码、凯撒密码等经典密码学考点,非常适合刚入门CTF密码学的选手练手。下面我将逐题分享解题思路和实战技巧,帮你避开我踩过的那些坑。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 题目1:MD5基础考察
2.1 题目特征分析
这道题给了一个32位的MD5哈希值"e10adc3949ba59abbe56e057f20f883e",要求解密出原始字符串。这是典型的MD5逆向题目,考察选手对哈希算法的理解。
MD5作为一种广泛使用的哈希算法,具有以下特点:
- 固定输出128位(32个十六进制字符)
- 不可逆但可碰撞
- 常用于密码存储和完整性校验
2.2 解题步骤详解
- 识别哈希类型:通过长度和字符集确认是MD5
- 使用在线解密网站(如cmd5.com)查询
- 发现这是"123456"的MD5值
- 提交flag格式为flag
注意:实际比赛中flag格式可能不同,务必仔细阅读题目描述。我曾因忽略格式要求而错失分数。
3. 题目2:URL编码解析
3.1 编码特征识别
题目给出字符串"%66%6c%61%67%7b%61%6e%64%20%31%3d%31%7d",这是典型的URL编码格式。URL编码的特点:
- 百分号开头
- 两位十六进制数
- 用于特殊字符传输
3.2 解码实操过程
- 使用Python解码:
python复制import urllib.parse
print(urllib.parse.unquote("%66%6c%61%67%7b%61%6e%64%20%31%3d%31%7d"))
- 得到结果:"flag{and 1=1}"
- 注意空格被编码为%20
技巧:浏览器地址栏直接输入编码字符串也能自动解码,适合快速验证。
4. 题目3:凯撒密码破解
4.1 密码原理分析
题目给出密文:"synt{5pq1004q-86n5-46q8-o720-oro5on0417r1}",提示使用凯撒密码。凯撒密码的特点:
- 字母位移替换
- 固定偏移量
- 属于单表替换密码
4.2 破解完整流程
- 识别花括号结构符合flag格式
- 使用工具https://www.dcode.fr/caesar-cipher
- 尝试不同偏移量,发现位移13时(ROT13)可读:
- synt → flag
- 5pq1004q → 5cd1004d
- 但数字部分未变化,说明只替换字母
- 最终flag:flag
踩坑记录:最初忽略了数字不参与加密,导致提交错误答案。
5. 题目4:Base64多层解码
5.1 题目描述
给出一段Base64编码字符串:"Vm0wd2QyUXlVWGxWV0d4V1YwZDRWMVl3WkRSV01WbDNXa1JTVjAxV2JETlhhMk0xVmpKS1NHVkliRmROYWtaSVZteFZlRlpzV25aV2JIQllWbXhhY2xadE1VZFdiR1JZVFZad1dGWnRNVWRXTVZwMFpFWlNUbFp0VW5CV2EyUXdWakZrYzFkc1pGaGlSMmhZV1d4b2IxWnNaSFZTYkdSVFRWWndlbFl5ZUd0V1ZscDBaVWhrVmxKc1ZqUldha1pyVjBaS2NtSkdTbWxXUlVwWFZtMTBVMU14VlhoV2JrNVlZbFZhY1ZWdGVFdFdNazV6V2tkb1YySllhREpXVjNoTFYxWmFjVk5yYUZkTlYxSllXV3RhZDJGV1NuTlRiR1JxVFZkU2VsWlhlSGRaVjA1R1drWm9hVkp0ZUZWWlZFWjNWMFpzV0dSSFJsTk5WbHBZV1ZWYVlWUnNXbk5qUlRWb1pXeGFXVlZxU205V1ZscEhWMjFHVjJKRlNsaFdNblJoVjBkU1IxZFlhR0ZTYlZKWVZGWmFkMWRHYkhOa1J6bFhZV3RHTTFSVmFFTlViRnB5VGxab1YxWnNjR2hWYWtaUFpERlplRk5yT1ZwaVJscDZWbXBHWVZsV1VsWk5WbVJYWWtoQ05GWXllR3RoVlRGV1YyNUtWMkpVUlRCV2JURTBWakZrY2xwR1pHbFRSVXBaVmpKNGQyRkdWblJsUjNSVFRWVTFNVlpYZUZOV01XUjFWRzFvVTFaRlduSlZha1poWTFaR2RGSnNaR2xYUmtwWlZtMTRkMlZzV2xoTlNHaFhUV3R3TUZWdGVIZFhWbHB4VW14a1YwMVhVa2hXYlhoM1lVWmFkR1ZJWkZSWFIyaHZWVzB4TkZkR1duRlNiVVpYVFc1b2VsWnRNVWRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d4b2IxWkdXbkZUYkdoV1lrWktURmRYZUd0Vk1rcFZVbXhrVjJKVVJYaFdha293VjBaYWRHVkhkRlJpUjJoRVZtcEdZV1F4V1hoYVJtUnBVbTFTZWxsVldtRmpNV1IwVTJ0a1dHSlZXbGxXYlhCSFZqSkZlVlJZYUZaaVdHaHlWbXhTUjA1c1duRlNiR1JxVFZad01WWlhOVTlVTVZwMFpFaGtWMDFyV2xoWk1GcFhWMFpzY2xwR1pGaFNNMmh5VldwQ2QxWXlTa2RUYms1VVYwVktXRmxVUm5kVFJscHpZMFpPVjAxV2NGbFdha0Y0VmpKR1IxTnNhRk5pYTBwSVZqSjRZVmRHVWxkV2JtUk9Wak5vV1Zac1l6RlRNVnB6VjJ4b1YySkhVbFJXYlRGVFRURlplR0pJVG1GU1YxSllWakJrYjFkR1duUk5TR2hYWWxSR1dWcFZXbUZrUjA1R1drWm9WMDFWY0ZCV2JURXdWVEZrYzFkc2FGWmlXR2hVV1d0YVlXTXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFduTlhiR1JxVW14d1dGWnRlRXRXTWtwSVZXeG9WMDF1YUhaV2FrWkxWMVphZEdONlJtcFNWR3hoV1d0YVYxWXhXblJOVkZKWVlrWmFhRlZxUm1GV01WcFhWMnhvV0dFeGNGbFhhMVpyVmpGc2NsZHJkR3BTVjJoWVZtMTRkMUl4V2xkVGJsSnJVak5TV0ZsWGRHRmtNV1JIVm01S1dHSlhhRlJXYWtwTFYxWmFjMWRzWkZkTlYxSXdXVEJhVjFZeFduSk5XRXBxVW0xU1dGbFZXbUZrUjFaSVQxZG9WMDFxVm5wV01qVlRZV3hLVjFOWWFGZGhNbEpNVm14YVlXTXhXWGhYYmxaVllrWndURlp0ZUZOWFJsVjNWMjVPVm1KVVJYaFdNblF3VlRKS1IxTnNhR2xTYmtKdlZGVmFkMWRHYkhKWGJYUnFUVmRTZWxZeU1VZFdNa3BIVTI1S1YySllVbGhXVjNSM1ZqRmtjMXBJVG1oU2JIQllXV3RhWVZkR1duRlNiVVpYVFRCS1NWWnRlR0ZsYkZwMFpVaGtWMDF1YUZoWk1uaHJaREZrYzFwR1pGaFNiRnA1VmpKME1GWXhXblJTYkdScFVqRktkMVpYY0V0VE1WSjFWRzFvVTJKR2NGbFdWRW8wV1ZaYVYxZHNhR3hTYXpWd1ZXMTRkMlZzV25STlNHaFhUVzVvV0ZadE1VZFdNVnB6VjI1T1dHSkhhRlJXYlhoM1pVWmFkR1ZJWkZkTlZuQjZWbXBLVDFJeFdu
