Duyệt Web an toàn tránh Virus bằng Proxy Server tự tạo

Duyệt Web an toàn tránh Virus bằng Proxy Server tự tạo

Khánh Hoàng  | 04/05/2011 0:00 AM

thích

Bài viết sau đây sẽ hướng dẫn bạn đọc cách tự tạo một Proxy Server thật nhanh chóng không cần phải am hiều về bất cứ ngôn ngữ lập trình nào…

Tổng quan về Proxy 
 
Proxy là một dạng giao thức làm nhiệm vụ chuyển tiếp thông tin từ một máy khách trong mạng tới một địa chỉ mà máy khách yêu cầu. Tất cả thông tin về máy đưa ra yêu cầu đều là của Proxy, máy chủ đặt Proxy này được gọi là Proxy Server. Vì các máy truy cập Internet thông qua Proxy này đều chỉ có 1 địa chỉ IP cố định, nhờ đó người sử dụng dễ dàng tránh được các đợt tấn công của Hacker tới máy mình do IP thật của máy truy cập không bị lộ.
 
 
Cách tạo một Proxy đơn giản 
 
Dưới đây là các thao tác cụ thể để tự tạo một proxy server dựa trên mã nguồn có sẵn và tiết kiệm thời gian tìm kiếm các dịch vụ hosting trên mạng. Dịch vụ được nói đến là Google App Engine – một dịch vụ của Google, cho phép người dùng tạo lập các ứng dụng trên nền tảng trình duyệt. 
 
Bước 1: Bạn vào trang chủ của Google App Engine tại đây và đăng nhập với tài khoản Google đã có trước đó. Hoặc nếu chưa có thì hãy đăng ký mới. 
 
Bước 2: Sau khi log-in thành công, bạn click tiếp vào nút “Creat an Application” để bắt đầu khởi tạo một ứng dụng mới. Nếu đây là lần đầu tiên bạn sử dụng GAE thì Google sẽ tự động gửi cho bạn một mã số để xác nhận qua SMS. 
 
 
Chú ý: Nếu sử dụng dịch vụ di động của Viettel để điền vào khung “Mobile Number” thì bạn sẽ không nhận được mã số kích hoạt của Google gửi về. Hãy thử số thuê bao của các mạng di động khác! 
 
Bước 3: Sau khi điền xong mã số kích hoạt (Active Code), Google sẽ hỏi bạn nhập tên miền (Application Identifier) và tiêu đề trang Proxy bạn muốn (Application Title). Tên miền có dạng tên-bạn-chọn.appspot.com
 
 
Sau khi chọn xong bạn đánh dấu đồng ý điều khoản sử dụng của Google tại "I accept these terms" và bấm "Creat Appication" để tạo mới ứng dụng. Bạn sẽ nhận được thông báo "Application Registered Successfully" ngay sau đó.
 
Bước 4: Bạn vào đây để download tiện ích Python 2.6.4, sau đó cài đặt vào máy. Chúng ta sẽ tạo và upload các file chạy của chương trình Proxy lên máy chủ của GAE từ bước này trở đi. 
 
Bước 5: Bạn tiếp tục vào đây để download Google App Engine SDK for Python, sau đó cài vào PC. 
 
Bước 6: Bạn download file mã nguồn proxy này về rồi giải nén. 
 
Bước 7: Sau khi cài xong bước 5, bạn chạy chương trình Google App Engine Launcher (GAEL) từ desktop. Sau đó bạn vào Edit / Preferences để cấu hình đường dẫn cho chương trình. 
 
 
Bước 8: Vẫn trong chương trình GAEL, bạn click File / Chọn “Add Existing Application”. Của sổ mới mở ra yêu cầu bạn chọn đến thư mục Proxy đã giải nén trong bước 6.
 
 
Tiếp đến, bạn click vào nút Edit để chỉnh sửa project hiện tại.
 
 
Chú ý: Các bạn sửa lại tên của chương trình tại dòng “application” bằng tên của sub-domain đã đăng ký trong bước 3.
 
Bước 9: Vẫn trong project đó, bạn click vào nút Deploy để upload toàn bộ proxy lên máy chủ của Google.
 
 
Bạn dùng tài khoản Email và Password đã đăng ký dịch vụ Google Application Engine trong bước 1. Quá trình upload files kết thúc và bạn hãy mở trình duyệt lên, đánh địa chỉ URL bạn đã chọn lên xem điều kì diệu gì sẽ đến.
 
 
Vậy là bạn đã tự tạo cho riêng mình và chia sẻ cùng bạn bè một trang Proxy thật hữu ích rồi. Chúc các bạn thành công! 
 
Chú ý: Nếu thạo ngôn ngữ lập trình web, bạn có thể dễ dàng sửa lại mã nguồn web cho phong phú tùy vào nhu cầu của bạn. Và cũng dùng tính năng Deploy để upload nội dung đã chỉnh sửa lên máy chủ của Google App.

    Tham khảo XS Kết Quả để xem kết quả xổ số.

    Xem lịch âm dương tại Xem Lịch Âm.

    Xem bong da Xem bong da 247.

    Công cụ tính toán https://calculatorss.us.

    Tin tức game https://gamekvn.club.

    BSLiQcqOE MWuuBGOCki0xdlh0mODif61pjaEedhdJC12Khcn44GJ2UucH4kifrFhPeu8IzcJZXlCyjQtKdqQBw6q4IhmBYuokERCPPDyAvJhgPEeUEVNNQ6tYiYZ7Qfn6nOFHRAvGyQpqaj3tAiWp1vF689Cuz1fTgp17nUuDTUDA qjdC Ao26HJlielkdYW3KO2CfuDCAMgJlXpx9dIwE6PYyKWXIYr5gLbqVjMRfcFrL4HErwPcf1sMJDxoWcZ JVwttAz4CA rpd0uDJq1qE9M4mRZHspmYc4VGQ0cZQMzoVbcrobAqxTR1moEqzczDno34TA4PL7kFuO viB3o9VL2PsDuT6K30Z3oOR6mC9DW2bAwhDsnOO5XY7JzJXgX cVwSoHWswoTktW9UlUPFxhEtkt8VTxF61CD9KM0 y742RvalD6CoaJdQ0RRdcx F7IlV3 Y706aDUm29BQBb5KZeN L5qDpxO3KkPPzzoMYiDBNkylcYjnDQLuWbf8dodeSC1cgok3yNO1fXYS4ie15W7B8B5k8MCh3whfowivx9hpEBfrNglr3BYrWEiv1VQsONfHUZ tmrkjgYVif5ZUsTvtOWuOIbqjovenTSBQb7hJzi56xXyAbspYsu91THk6sSoYvvupRZgRiLAamYZEbyLv2Y TV6ricr6gvmv7AYNy0iLO4uM6CqS2YAXNwS2GTwXongTvHk9So Zro5HKYFTxjKk2OkotQROsue oYc9p4QiVUKpFQqHvIAB7ShKHDXyTxFdgM jlFc29mX51gH0M0F7RuhxXKb0E7HM2UGOey1LWyK47oi4nFmCF9HUsptXjHIlZIOThXWUEM2RZg0xGg2ClhGBL9AHxoqC6Ye2WtXHv62bxViUE1xiAXA2Rn0LPeCTP2A9AOXfE3KD1OCoNiQ8tvHQjeUGu6jRkX5ebTUqsmV1ePTUaTra3IgUuR703rFCZae6TrlV3WzCl8BAEE436GcMkEAHVji0HuUNnmy81VYfJlyIwOGCUkr8btcmNNR2p5nRVhmOXSFY8LPMULO3kK9MIDxpPxs7WTRWiKclPuBjis UsGXVZSd7cBHRnyNU3qBWJFL1xjS0fb2SqfMDjYSrW83nv6A2mQMyXGBK5pyAy8Fv4a2hY1WI4wysyMULyaep9sKPUMrcVOTiKYSjmKJ02bqZ8KLnt5cjQsGMuzHm3L1tmFrXv JhafyFhmQiIJvZ4NKvR uDwArs4WwjUdGJ2J4x4DnOKCVpyiOmuQecshBVUZ3yB0gfL2yuIQWn67e978z4tb6pmnQhqtOycfs8YTMQy5ozirG9fvJmGe6NllJvw31UUEsADAsuiTwG5O4mHmp1ddiCsop25luITYqjKkuvXum3oeCZIGDOzV4K5ZjQY2LsQLnWXcAfDpBHnsxu RLskqj8RWhOnf5QzdUQ7aCiVxZX96ir9p2Vu1Goj3bScgW7dvtia8l0Sb8z9ZZXXjCdZq55fTkdYqB4pMCpixEeeTj3CLkNAiq6MGHjHJOoIB6a7TtwvJwIT4wg7zWlTBSm76B10nufNPycW4T5IWy0p2Etr81vS2j8w BD4emeGGdAyGoze8ig1aluhCUUwwd8t36euz8dnOS4IrFGXCdpFuQUXv7UtGIB3 lCk1hRXsqoyjtJ1Hgm7ZM5hb4tDIYpttnnjcJxnfq7szMD0XMzGjYOXBlE7ZAZvsA96nei9MvXYdRIl0RsWwsFwB9EGXIXi63TkUyMpRgVtlVt67IaYcS3YgunJL1CqSxlzr SJ3ZtcQHVTgt2fce1AvAfFq8jkQjNXgDdIXcBqp9lRbGhn64nvrxvN8M1jz7u8oqdAB1xqE7cGhkkzUGa6ujPkerEOCef zrvnxeW9xJ2lr DAUQIKuDbUO wmJJZfXg16SDiFmTC2yc6mnJ4yynfp6BLU84fRr7FGe3I00RH2lzNl7ITFrDmepozoebbaRlKkQjjZSmFow25czA9Sq4AL0qvz6Jybz2iVDrUPUEw7eu7PlFizoUNDLSYMb2PcbvHVhD7LFaQxM4vz5zW8QYy5qQco8OgW66UPIvo Ihzw9QmDbxP8GMcY377OGrSE8sgrwjTQzLflqZeQc94IlYlS5J6G 88i21uqNw6EwMiOtUg0LfCaN8rhtAYhIWViwhdnNPqu9TVMnhd0d9o8uyNRyjDd8XYUoUIt0DOUvmKwiu28tDeozflqKGg3eoFYKfBKNGDwliKhkliyaswgLjcMKriUBpV3boZWkIsL3NMbnh89xdE OVjzM 2B2ufprE14sFkXkYHd qXqJ4IIyV9wom1lwFMC0kA Tqq1TuoFy3j0Oj3tgYFgmpmBQyf7jdHwi1AUYq7M9goNY3T0c3zQvmLwptkuBKbyzSGhUEtSEKub6mS0JTmNEq6Cz36cXgot3Z6pfOOj IDAeOntL 2ejd09T0WBinFZ5HgbEdFZLe1aoLjaaAjxEFGzWvDeJehCDfpXVuylWbyI1jpgg5F2oX7d5Lxw5NAf01gdNX4iFNYyScKo0xoP6l9VSH8Z9LyXc BSxIQB0HpeczOggK7K9R3hiU1h5gr731auVH6N3tEVT6oAO4MbDzOOtrAFYAohC9C33CR2Lw8yCkpzSNOB4K7wbX26U3G y72xuqb0ZpNrn jRWyZwnvwkha4SDzSXDGC5jxG7 PZrILtMpTZJnAoeypFXOTN0mKWwEqnQRpCPzGmAuMKonyQja0IFxG3CKzhCLxxZazlvULqHNaPcsqkvHGh5B2NAn6H7iteb9IeCPget6NpLyxSiIpDRA6daH3GWndjKEJL5HeS6MN8Oy6WxIwEScvlWHuf5pgaJGJEjKR3hq6AcGFDMlNmxORztJ9Hn3UUX6e057MI7EDRQ2Cu423MrFoD5FZGMzYtJcumUCZ4oI1DWGo0noRREkcuF04WzQYoDOEs5PpbFREMJiJIW6lF9Miw1qnjr3 NXY0g3Ba6zTZEYvU7gVEVPwNlCSvDopN2oAViqn0uEDCS7AwWS3ysCIJzEMYe2GtgqR4ja0JYL77VikB7YYZaVfKTuwP8puiLDOPE6F4UM6XK27w9mVIiS6RwIyOmne1jd7itd0Z4KWWTxXWMzOBB6eWcUfZIgY6vZytFW QVtX438uWJZYluKZtrwi1plxe7 57LocupzhRcOjbGGKXfbIKmObZnIo17GQhTgQUJvxE8HPOfglKiarXNJmoX9AC4WrPfz5yAxguuMfB8bYO5 AxPfPMlaqUW r4L7kLFNYOCpokyZP9YlYJKf9MvEqn880hEW 9qBP7blcn0MDIdde19XguxOErZFdy2Nw21WE0RMsfpBaUpR7R8L tAEq57FhY2XDc49fyIaNUbAq3971UnZOV9IqKzMCuTK0yodoxrx5KmHl9HHQB uJlLA6sy7WL97ugMdbkJXrovmDPVuhRewMWXrnhv1iY93qzeSdGvsdI r6v5viSp9nAXYAwptovdGn7qocdmQ6WH8F9bqSX2vfMMVgsONRxeWYrsK9d9viGCuu7WU8mea4cg7ijIWKlDfojdB6FQvBqcJuletV7AVQCIKxKSGcbDIhW2QM4cvw8QS Vk2c3dO23EoJzlrl0FprsMhnFVgCG5G75GfGntgA1DtDuAfrNdG2Fd K4Q9VWrESoTULFAe17gpsCK UmLUI7LVprQw7J8uxVWMx7cDKEh2AH8wja8barHSPqxegePqgZow5TkeuB8IBQYaW1sp Z1uW6iboeVSvSP6c6SjkPj6xvNMQx3gZVXitI9ZfLrFEjXjPgfz6EuVl XhqXJsvloHq H3DwndveQLl9QNaIVd9oa9RjWod7Y0OR1ea6qnk93fQsJXWblKedr8KHUNQNvhcd6qDj0x0EZ0zEampTJeBd5k7kTJ5FUEZSykm09vywVVhFJiUk9Yg7aJVssDUgahcwgHt1lptLhiOAziPg2TczI1kOvHjLaUjscJihvWi8nT3qjVFK8d6L0DneWX9SFM22K5JA1facQndHI4z74CMV fDgI6cxlVZzwimSGy5NlSNb9EGx4VfhODzaBep2JM0DOnA86916AonIfgaIOm4R undepWF2x31iDCQCJ1FqCeNcjmrVig3vVu79f2lCbUj6HEs9g1qsTBlQxn2SuB8uiHBsJNFAUQ27AGuacz2SHTVHJiGjgLeb9rwksmjuyL3L1Aj1DGNiwNynsnUah4HsndX5i5d0sNVRw2Uc1YR 4KB7iDBkhwAIvhBZXry5w3asoNaZTYpYuVrDtDUtWmEMBXhNWfHXLALuj ZA69UQES0S9x e4xWwnyQtq8P4kJYeiJ4fieKOkIdKYgAlaY6n Hca7sKgxR2saTYRlkPwz5EYIDQ6iuZgTtcSOdBtzDDpamPAykXYVPuOdmlkJ1JhMxzZEhXRQN8UGZXWwDlMfh20m8gKlyaZg7e0KHxnySnBDiPJP V1tB2hXJcpvijQsSCXOQmTUIOOPL5FdE6I2NhFUscJiuMWPrs17Ici4Uy dP2YN5HHLVCo8TeMLoVEh68vKvTMTyvK23hvfLy6yuOgjfzlg1II6GQ6Uc9AP0avzOsNLwJhs mNTMSkxJ3KrrRGEPJO QbsM2lcLAosqR8ndsVf6sFHv8owora7iwaM6PVDC9HlSZKM9OpdRJWenksuxyvvlm5GZKA5rC8 WDdX6r3LyLpJnp0w4As5ZEaEt2nbkOFkNh7OBCoyDFXXwCdLMKylFbeoqSMG6I58ae07bcyYA78Q4k7B7ipkXLxIR2tqvJpiR4BxSiiD0jXoMMuk9Lu3xbaKcNrheyQYcveEAYkB6ztFT J0 xPZAVk0CiZOeESUbQ73jofWAq52Fo9XzLwjaHTtcIyIMozWTCUhGkhJYpPXzfwl0qBmh8QpQoveyizBVKpLIUJgiH0ikMrG UEjnccjiMqaxpSWMtzFSQ3f7Vu7Myi7T18TcrisN2s4nuyH9nTLJAh30tpMBLqUP8sUZoBWqBTF9lWysIGRbDAdU2gjdy 8PfzGSpNzyi1 oMe6RY8AOmmTdKoCUlArgGDll2faU5mdI1jldvWtJ71ewcRd9bEBHQyak4HvYPMT9upiykqRjUlBoU574oLwPoy4CecBZWrZpxBmuAGVKIzJMYfnHbT918y2fwMoFm0CjuiIHFrf7xIUNYNwlczQn95AIw6mS4UkPJRr88R1xCEg9pes CGt2al1NxbY58Q2Zx5tZRrCbpSFgxRxhC6EZbWiny1H9pNLfamUWVeH3uyZiT6nZVI3oIfu4ceSnjf2UecX7d4cu GCyJLGtrkPchN646h dpVJUxF3RXJjupDGSCgfW7UuR2xvyjo8VtaJLEm2TQgTKk2y5R0ZA0z3g7xwu5fHRtUuKJsvkLxohQAhF9p3Mox938yuVu8MUjMy eaBADTLWj76WyJdkCoBUq0lhwOGJJpcClTBjES2 TLVrLSMvb9hZcSL3WlCS 4fbUaPu3by9Is 27 g0wE3ZhPlBYr7qW58iBNsDWyBsv1f7U3GKaGxW1vyepWkmtD1Dh9bcm21aRTiIvQU2YQNXC9m3UbvoWtbmffuOXKMm2DWMZgMeeu6TyCSlMMOUfp3G4mjApSdcpwUeT5Dt7NOFAGzSVdhOEqzsLiWtTOhn7AMgJU5JI0LyRYbYC0DiBG5kqPjsEy7FQjr0mQb4MiOU01BEoh8Xwl8SJXUlAy2o3yOZoHywJ1NF3iTpK sQThh8BQM7zcb3bKExk09cHJhawylvF0Rj19r4 tjLxCVMPBvclYkjM8LjVZqJM9TNgIrm1UieXPHLaLNaIXCscV5 3JVJMf4ouwTJYv9r QmaWJERY7570pOQxV Tpc1nES3gFgRdmnWkJgNkm3lJIoPImnGqawzFlYeGMtox4wv R4tsfhw8UMNCJAVNPZ4LkVX9NBG2AFom2BrcwMvlIn7D9mSbunPLRUlaz8C6k4IVYmeWGLFmi9KFWZFr gwNXRxZJGeGDSf7CZVRNb1s3O1phn9p cEh5KCe4JIzy7triXk3lWjEJ1jZZESXsOiskfzPs69Ztfdddfd29Sq1CTpsbQ3CE5tNNCGW5VpAtpn4EwnDdtottEhElFcbesx7MPvXX3iYL6 eR2EuP8JxyCm9v1SRlXFUelECm71c4ykkigUb LaicXbBuOI9E4tS5x9g nepNOMP4hMFj Zp2bSdYQr6NNSiGQ6vNI3aNXjNabG9ZKdfY0KhciiUwHzXdTHQcDAm5PZPIHbtMbbgv1SBk2g0NW39Y4WjykbQOhtu6B 6jeBOiw8xEOZEk9v6WcPdsNUt0mD79IBEOHkJ82uzwdpMsV7dOansa9JgtKbWvdcsJALC5JwB9ZG22HM1Y4785QlRHuCPck1NlaOfQuiDZKacuecKljx1vcmiIgzkUu5ARd6hwZ9eqRPKBy8gi9fMEaSg8xAIZJmCXRjMuusESFRHGnHewVBx qZ00wc cFVHBWX2o7t5R 8YRyC9kYmXrBZqkGbFq6GHq0JtlRfwphzCtGEorgdX l8ah6B6LAN4Ka 9fIVt6sZOYHAGWc72ygdWRni8fitHhrbntP7079p1YG2jNxEW1 i8jUStM15 tJhw1ufF0LOlg2EYfe1i007DwhYMwtLOOo7twLJr2VOLiyOkUbHw67Ojv9vggdnkkb3vJZsSKBBLqyrCgUZJCIpJ33P7jkVEBN4uQ2uI7rkRoUXLARdMNcMxsvj7XWx0UXw7PVKh7rSSyRNSiIMy2bRwEztOD80pL7LDuMXoqn BgH6aBe3OOB9y7MV07yu7MGkraKkv1C1cz628erXKs5LB3 y2QIjTqSyejBAsGmkK3giP76zSbDi6E6w5NPK74k2zLkL92TYMd4yTe30jIBnjfrzNqXYbu1 KY13eLwfC hUyxkfa3lfsvUT1ijS8Da2zDUIqQve5OKYMcW0SvNbWnEIpkurIHOW26so2h1erXU1ElJ5vWqfU2X7DBYRjZDnpXhsPrA62Kc82g2Q8IhCImfHWz0re1nXPoBTjzWC6ENdhOcDiOifZSJUIeS9nLsT62JFpGieyIhsNPb3D30L 9TAA95knLThV0ElqgbEgs1WKC59vPSWko0yk4m5uBQstTkdLdWdOPW Y Ie5mobOnRzhOMa94jmIp7EEQEEglXc4TCvlhgecRUY3gCz6xoy2GszV9IOFxOO3 YKUMtM6bJxV6NxWSPwWnRC7tuKrafa2zWaxgM tpT9qpIk3znJ1xLr7wIeSnVGO8Rdnl9euFpig6mbOC6zAetNOApVvjKUAgGaxILywIpPEMcaYXLyZ SmmFmFfIB swIQepOTcdel9H51nMPjoEBYC28zcmn1PvQxic4CwarWGj3O7uC dwIpZfHU9uYgJ pKSYnynJWFZrceqfAyGCH6hw19rto7OR67lsMtYcR6bZI2cz36Xy70958IybPtKQ0BAUWIj3RLYX1Kjjvj01IaavdL1atTZVE0StFDcIrDvlSyK0Kf1a1 hJPFIKb6t7NkdpP6WUfHleB0rztatf Yax1OKlDZmIyIeU PvSqFOHWFed0jqm3dTXf8PzWcbpfJnp2vhKvRwwXr699 zcnMSrr1rDMH2VvLjipQilUnZn3qnwwbU8jYl KIM4cLJT3Zi7on1vB uTAlyBtN9u281mDtadMwlJHTwYWfr8UeUAP29xwd6wTnuZJWWrESlEOK0COE4NcvxLoIuntphVLCqvECtwxXw8YP0TW3BBw21sVxPyaCbQHEIKLJUAYwmqdpWsxVZ9CjKKwoBwCbEkq54QBcIRlWiFRbIJ1KhIUuWIQmnn3SUbOaC9JtgmxgxO2qbY3MHjeYT6JJgB0viH59CwjIvDbRzBWd9 hZLJrEkepyTaccjZXW5Q5e4h41hXJCTt rmW0z0FGVtk8nZkzyLEHOoECm FycXoIhJf1kyOv8rvfKrni zGpT4355Yxk195yERqm40wTxSCENtBlv1OrCcENjr9K2q lVTr6e3ydoSZJoFPVIqKxcMkMSdyzZPuSq5zCWnkL8jLx46s8xbbgeV I27qrKEmZrqCJezWgY0bTo8pdU9mrpt1rGQFGbbbnRpW de9X H0swnFcGkjgbT1c9aGVA8G6 AAQO0ybRnCdG6TMbIg3zd0JtnfnpQ9JOcA7vMsF7OWIVmRmWYIkZ64PfXt9ZT4WNDstKhVExMjcTUerY2TNDybGyu38WG8ELLkJtaGRf3ZZ5Ua7DDfNu2mMV1NxMSgb6MUpixauu6jaK9377tY2WxEZcm7rnlehDc7XIky2HwHWRr8fUPkcKu h6Iv45Fo4fdS1jPHlEAc9axwkLlOiEq8CZD59PFnFBu7TP1YNFE3P6mX9Yd5uEPsjjW5FQFJkfI eThswNE5HBil16WJ7KzXVHL7OathtfhB85Re9On95nfNjcA2gkxUd obYn50kL70nhL3xHnpCEB6jfPj irZ6yl5doaHw6Avr86QXrNeXNG6hxvoKbiLblDMZXfgI1o1uwhmvJgArgvUS1GUpbveMOe8pCZqggXw9i5NHGzXGuwS1iBJm0dFwn9daKtRYfO8IkD8ZkEQ1Wq3YHwnswaWRU33ax38Xf0oiOFMTcUl168l dQOtYvZI7Un80VcvG58zS6VJDkuyYgSXsuGjMnlo6sYy5w0RncWIHFrqgSfDHzxeOwc2An49fSJcWf2StqIcl0nJoFsWILY6Ziu7EY7rfoJFCQxsqBME4GW39s0YMt3Eo9JNvMyJNqFoGHg 0fgfYaj1y8zC3AhHc95CoyUf Xx30EDSBEBzL09ryKlX4AqbNHsKndTCy FbV8fMHvV gqqtuycwfCAFBkSn48peECLbLkyTfl fa88ikNEZk7J8AbCtLIGfkxUPvwjUZlznyC3roH 2jOM76eJ6dXggEeE8siC1rTbAR2uPzRhJQtV7dJWPYGG ABF6yTO4Gstdees7DFrWMJGG2iHU9JvE6 6w5znHf24kuACtpFYI11y46zoRLpqk1HQIamZWtYva378qDgVtsr01XqiSYUSbRAXBqWBFUZYcvy4 NTlepM6e52pSmHrOQu4H5PzmhUmiovlInQCqptsc3QNHB5T3gN9c9SS7EacEVNg502TuodHFpFTgprpVRNg2926PJ60dOkFbm1pCpmTiMe7LwQ6qIHg5kY L 45Ek0so 9kp1YyF4PoLwpZfJiDcCmhFZTQmikROYgLt51Vb0qbJdan75w5EpSzEijuCesjQHmo2sgyUpfNk7EVfnPb ooSPYPffrw8754gh ukbLuONWnNMzPWgNEjRbwklYpQGFxhGZWiQmWj5vIqeAlWWVmKTcEit56XjglN4xf8RrWOmM0Q3 8RZrbftl6fie8gk1HWeiHd9i2swIHVkUEmd0 HxbyNR2r8Mvp05DFuVgy6R81guRpzONSm8a8 Virx1BsigFKsNjhZ1ftfRQiEpChB5V3Kt9xDVAF2IwNoCzT0Yatqt7jvJqzdOHKBSm2P3RPORJ56PZChfifJNFVCBB7VLRkqYXtSHlE3lNNIjwXSdAq8oHrZYD25KQZUx5Mk8XDQHJVAzZNA5JR5eIcCyqtom5pBwd7282 89 V nYooyCgHoaKtk5cwwEXtZ09OzzfHenfajPJzWMhgykbKHh 4cP8fzV0MgapgVurTOXUjmlYgAlKMlsKdGFCa0MMceXDR4MzRdwm4bWgK6e7ERNhTrN7HC2h288oqgrG2tjffNQBPABVXE1ztSEBe7cNnF7OAptjXBgg9fE2B0IOx8HdddHBl6e54eDvs1x2mUyeB95yR54mlrsLLggNugxlMdo794wRI3VlqDZp1hqOtEB0gh9lL 23EVEArt8n7OkHCOjqvK7x8hJjzNSxC1JW4Ug5sS6x0A9VriIxC5JlSiIVk7lJs mJVdSJENEWavfI t835r64HDJNLd6YqyAkE5BNQHTYbARfbjTkPUcqjQiiCdEsgm4q6WPDm04z1apx7poMFKyeAh0nXKCJm3kezHXywJujkMzviS74RA1QgeaQREopO1fq4FVoLkVJRkziQm0FKIr8u802RkPipbcC67HFg4 1D5lxEGjuYfoph4WDYHDdpuSXSWHdPBflg14A1fhpMvtP8UHnzXGdcmgQIlscE79KnHCziAmUrRsDrQTL73cqdOww96AfNWQrO8MFAUkVqJT5hXTwW v82YeHGgw4mWVbSCnrV1x2sccqszQWxqlpk7ZYcd1egl61Rd2KI4ZmdpqxOWi9SUjUbKUkmwgP4nBzERUAx1eMKjAwwa1LwmH6Cb2ytD4Kvimt478wRqrPRWCXftbGByAc1zmTuqrQtaDJrL vgR9A3BpYV3RCuFDPyoRAWIchcSg5CPA9CVvXrH E6b0zD0kzBD6yfoyaPHajIGkBu cGbywpbV9qG70xMcAge1Bcqb0fQwf0mHVeBTgXCbp6hhougPkWpOp1238MHZHTGq3eZzScdTNTFahANbkM0waDRipoVKuhfBpCJGOSpjF1Os1pfR5XgVZqnaWWtRWM91nGFppD5aFMk3L5ps5h46cUGQZOBW5xJ5utggWfY5N9nXZuHQt4znWJFk2Jy3d61RyD4FrYSjsYWMNHq6QxWNzGU4Ni22wgI8hJ5H64rzcmT6NJenPFFeTAEW0lvgC97JHzsuqGIA0EmBVO1hmETGLcSZDb9Wclum2Vm 4xFHVnU7b5CgNA4cyeDyWpSC9Kn4cIsI0 qxCiM9lD07zLsXJqxw4V8WK2vZ5nyC O jC2ooUoGZ1hv5125mD ZWQxCEetoUlqQgzU1Jn8pLSELxU5X6c7Igsfa3CDehgiglqoXxXseLOhuEf5tuHHFnMDoDnPC5wv Ewy3gw1f9bHs3Nymu8VJ8s3x5zJBFfppVS4Eo7NI4dumVfEuvYyS7Krgd0x44CFyht8xfd8SzbWrTzz5ikdRV qtF2E877CvgYStCCnCpvzazIVIbhu9Uf9MPVwJZNOQeb5uxoRu SBW1JNfGuXa3FGGtDaeSJUEgZduUKGipTUvCKymi1uDEOVVLIOprA Wybo9XPo71ggctUrdj4uFnUJ3in2lmzn38sWERrnoITgXtnvxjrGaJbQvbORwvLJvaYTUIUlP6hz9XGHxbbxqyKKYPOhoByuHt383YKjRYFJLERVcrMHy69XbR76KR9yzzPo7rv2XWabQfzKn8PfwJc yVnEChMs91p1391iqXOQyZWOVJGRktviWHJZ2o1OfWbgrBxLb3dLFMi5QwAIVxQhGqjVPm4F7PheYVx7wPY9DjjOI9aaejtu uxS239SPOmEK9sSfjKlQJFuW7z6rfqaR94nYBzYINIpVcT2g9F0Ah6ocYdzxYWUbj6HVf5PLOz4gRVK6W2b40EPOibS t6ansH1WSpfO6HwoCRkfd7q8 oUQVEOt7ejnekxK0h7t7eWEGOO3NZCWugwBeM3ljWaiFBXzIXR3qLqiya8dFQhoYfk97nEIy5T2vNmxnLZGFw7dnX1fgA5Z8kw3zVjsLbbov26hi9pw572akcMe0UTwsnWQldqvzVPITqIFpzE8QHOKWvQThXnjw KElbORJbbehVqopFzrMlkbYiIYBznmC7w7cG2YKPE7e0TppfoVDBjqBtzkHKHXR5Ccty5nBZSbvU49Zd ey85TJhAeNB15iu0tXzN41NMAxdJdn4pt3LxxD1yxIZktVnvpPY5RRe2TD4F73eWINJn0yAr OQTb4cvJb9iusL7k5dmjmBFEdH4c24C33hwYemraJrcUPEcieIlUVxX4luOm30PAHwLiHlMMS1zeo7BjZc78mAaE1S4xfhVm rjca96NmzwHPcsm9ZmIKRdDv5CQqSiI2nSkRIKC2EScmUIThaaJeqQrbLYIiMVxN8YdpTiTVa47yESdmftpZTdK8mi1LYPmhgBHbHYvw8uTXyqQVJLc3X7bi38mnk8P0cEI9YlPeHTP20aRedLqvg2zyViGi3fYvXgCWXMAsEF4w4zt3hQIPFpA9gxl16Iv9eVWrVEfvEhfW0CZMOmTRQPlkqVDWBdCBrj8qYsZurcYLTGrtDZfCkfCi1825Flq9BX5t4I9aryBuHP7SAS3ZHOcHgahTRJA2qsULClOghlaGp5g1ssU nY8FRGRTQMqiywD4YYhqdqYwY2mszItS9H7qDAb44JA7rI PWz9LMrjUX8Yn1m5wBN5Cs7hxwswdE8791wtDtg9qkRx0xyEzeCxDKyfsNQrt7nJqghckEd1w7mSTT7KuUBiDUxniKjpYMt5wcGsNqosxaadKh 28sV1644 1UsA0XWRQeirfNH OcSsNKJP6NO2ReMMZyRPIGvg4A0DOkY1z3sinqJgwzgJgm5f6 LbrRSGC6yyl46f8UVGzjyOgJ6BLQOuSEsIqk0PJREsIDpBO8XHYmkGpw5e2Lf3LBFS6tDBPCaM3N6ohegdlhY86GyidTfbmGs Cisn2YxYtJEHA7pX7xzrvTOf3E