Những điều có thể bạn chưa biết về BitTorrent

Những điều có thể bạn chưa biết về BitTorrent

Chocobo  | 11/09/2011 0:00 AM

thích

Torrent là một phương thức chia sẻ file đã quen thuộc với đa số người sử dụng đặc biệt là với những ai thường xuyên download các bộ phim HD, game dung lượng lớn.

BitTorrent là bất hợp pháp?

Về mặt kỹ thuật thì việc trao đổi thông tin bằng torrent là hoàn toàn hợp pháp, tuy nhiên nội dung mà bạn tải về máy có hợp lệ hay không lại là chuyện hoàn toàn khác. Theo một số kết quả điều tra thì ước tính chỉ có 1% trong số 1021 tập tin mẫu chọn lựa ngẫu nhiên được chia sẻ qua torrent là không vi phạm bản quyền, vì vậy cũng không có gì là ngạc nhiên khi mà nhiều người cho rằng download bằng torrent là trái với pháp luật.
 
Tất nhiên đối với nước ta việc sử dụng phần mềm “lậu” đã quá phổ biến nên việc này chẳng có gì đáng nói nhưng ở các nước khác luật về vấn đề này rất nghiêm nên có một thời gian đã có nhiều vụ kiện tụng liên quan đến phương thức chia sẻ file này. Tuy nhiên đến thời điểm này thì torrent vẫn sống tốt mà không gặp phải vấn đề gì.
 
BitTorrent làm việc như thế nào?
 
Thông thường khi muốn tải về một tập tin nào đó từ trên mạng, bạn chỉ cần nhấp vào liên kết tương ứng và các máy chủ lưu trữ sẽ bắt đầu gửi cho máy tính của bạn tập tin đó. Máy của bạn đóng vai trò là máy khách (client) và nhận dữ liệu gửi về từ máy chủ (server).
 
Mô hình kết nối client-server.
 
Không giống như phương thức truyền dữ liệu dựa vào máy chủ (server-based), BitTorrent là phương thức chia sẻ file dựa trên mạng đồng đẳng hay mạng ngang hàng (peer-to-peer hay P2P). Trong mạng này tất cả các máy tính tham gia đều ngang hàng nhau và được gọi là peer, mỗi máy tính đóng vai trò vừa là máy chủ vừa là máy khách đối với các máy khác trong mạng P2P. BitTorrent là một cải tiến dựa trên giao thức đồng đẳng trước đó cho phép chia sẻ dữ liệu một cách ổn định và chặt chẽ hơn. Tóm lại, sử dụng BitTorrent thay vì phải download trực tiếp toàn bộ một file nào đó từ server, bạn sẽ lấy về từng phần của file thông qua các peer trong mạng đồng thời chia sẻ những phần mà bạn có cho những người khác.
 
Kết nối peer-to-peer.
 
Để bắt đầu download một tập tin bằng torrent, bạn cần truy cập vào các trang web chuyên về torrent như thepiratebay.org, demonoid,… và tải về một file có đuôi .torrent liên quan đến tập tin cần download. Các file torrent này không phải là bộ phim, bài hát, hoặc tập tin thực tế mà bạn đang cần tải về mà là một file giúp máy của bạn kết nối với các máy khác trong mạng thông qua một server theo dõi gọi là tracker, sau đó địa chỉ của các máy này sẽ được tracker gửi về máy bạn cũng như địa chỉ của bạn sẽ được gửi cho các máy khác trong mạng để quá trình download có thể được diễn ra.
 
Giả sử bạn đang tải một bộ phim thông qua torrent, từng phần của bộ phim sẽ được tải về từ các máy khác trong mạng thông qua tracker. Khi bạn đã có được một vài phần nhỏ của file, những phần này sẽ được upload cho những người khác cũng đang muốn tải bộ phim đó và quá trình này được thực hiện đồng thời với việc download các phần còn lại của bộ phim. giả sử rằng một tập tin được chia thành 6 khối tương ứng với 6 màu, đầu tiên một máy có đầy đủ tập tin (những máy này được gọi là seeder) sẽ gửi cho mỗi máy trong mạng một phần của tập tin.
 
Seeder chứa đầy đủ 6 phần của file.
 
Sau đó lần lượt gửi mỗi phần tới một máy trong mạng.
 
Ngay khi một máy nhận được một phần của tập tin, nó sẽ bắt đầu chia sẻ phần đó với các máy khác chưa có phần này. Việc phần nào của file được gửi cho máy nào là do tracker đảm nhiệm và điều phối.
 
Các máy trong mạng tự trao đổi với nhau cho tới khi nào có được đầy đủ các phần của tập tin.
  
Một số thuật ngữ của BitTorrent
 
Nếu bạn mới sử dụng BitTorrent thì chắc hẳn bạn sẽ không khỏi thắc mắc ngoài các thông số quen thuộc như Down speed, Up speed, ETA,… thì trên giao diện của các client BitTorrent còn có khá nhiều thông số khác. Sau đây là thông tin về các chỉ số thường thấy ở các trình download torrent.
 
Availability: là số lượng bản sao hoàn chỉnh của tệp đang có ở các máy ngang hàng tại thời điểm đang download. Mỗi một máy seed sẽ cộng thêm 1 vào chỉ số này. Nếu một máy có một phần của tệp mà các máy khác không có thì cộng phần này vào chỉ số (ví dụ: một máy đã tải về được 65,3% thì cộng thêm 0.653 vào chỉ số này).
 
Choked: diễn tả máy ngang hàng đang tải lên làm nghẽn đường truyền dữ liệu đến của các máy ngang hàng khác. Tình trạng này có thể do hai nguyên nhân sau:
 
- Máy ngang hàng là seeder, nó đã có đầy đủ tập tin và không muốn nhận thêm bất kỳ một mảnh dữ liệu nào từ các máy ngang hàng khác.
 
- Máy ngang hàng đang tải lên đã đạt đến giới hạn của băng thông.
 
Interested: diễn tả máy ngang hàng cần tải về mảnh dữ liệu nó thiếu từ máy ngang hàng khác.
 
Ratio: tỉ lệ giữa dung lượng file đã upload/download. Các trang torrent lớn dựa vào thông số này để quản lý người sử dụng, thông thường bạn phải upload ít nhất là 70% dung lượng đã download (tương đương ratio>0.7) hoặc account của bạn sẽ bị khóa.
 
Peer/Leech: là các máy đang sử dụng BitTorrent để tải dữ liệu. Thường các máy này chưa có đủ tập tin hoàn chỉnh.
 
Seeder: là các máy đã có bản sao đầy đủ của file và đang tải lên file đó. Số lượng seed càng nhiều thì thời gian tải file về càng nhanh.
 
Snubbed: một máy sẽ bị gắn mác snubbed khi quá thời gian 60s mà các máy ngang hàng khác không tải về được dữ liệu từ nó.
 
Swarm: tập hợp tất cả máy ngang hàng và các seeder liên quan đến một tập tin.
 
Ưu và nhược điểm của BitTorrent
 
Tất cả mọi thứ đều có ưu và nhược điểm và giao thức BitTorrent cũng không phải là ngoại lệ. Trước tiên chúng ta hãy xem BitTorrent mang lại những lợi ích gì so với phương thức download client-server truyền thống.
 
Tắt, bật và tạm dừng chương trình download bất kỳ lúc nào mà không ảnh hưởng đến tập tin cần tải: Lợi thế rất lớn so với việc download trực tiếp từ server, nếu quá trình tải về tập tin bị gián đoạn vì một lý do nào đó như mất điện chẳng hạn thì thay vì việc phải download lại từ đầu bạn chỉ cần restart lại client là file lại tiếp tục được tải về..
 
Download file dung lượng lớn với 1 click: các bộ phim HD hoặc các game mới hiện nay thường có dung lượng lớn nên khi upload lên các server đều phải chia nhỏ ra và số lượng có khi lên tới vài chục part. So với việc add cả đống link vào hàng đợi download thì việc tải phim bằng torrent tỏ ra thuận tiện hơn rất nhiều.
 
Download các file cũ: Đối với các bộ phim hay chương trình cũ thì việc download trực tiếp là khá khó khăn khi mà toàn bộ file hoặc một vài part đã quá thời hạn cho phép của host và bị xóa khiến cho bạn không tải về được. Tuy nhiên đối với torrent bạn vẫn có thể tìm được những tracker phù hợp để download những tập tin cũ, tuy tốc độ có thể chậm một chút do lượng máy seed không còn nhiều nhưng ít ra thì “méo mó có hơn không”.
 
Bên cạnh những ưu điểm đã nêu trên, BitTorrent mắc phải một số hạn chế sau:
 
Tốc độ tải phụ thuộc vào số lượng seeder: như đã đề cập ở trên bản chất của torrent là chia sẻ từng phần file giữa các máy tính và số lượng máy càng nhiều thì tốc độ download cũng càng nhanh. Đối với các bộ phim hay phần mềm hot mới ra thì lượng người download là rất nhiều nên vấn đề này không đáng quan tâm, tuy nhiên nếu bạn đang tìm kiếm những tập tin cũ thì với vài seeder có thể khiến cho bạn mất vài ngày mới có thể download xong 1 tập tin cỡ 3GB.
 
Nguy cơ nhiễm các phần mềm có hại: do việc chia sẻ file qua torrent là hoàn toàn tự do và không có ai kiểm soát nên kẻ xấu có thể lợi dụng để phát tán các loại virus hay malware sang các máy tính khác. Vì vậy hãy chọn các trang cung cấp torrent lớn như Thepiratebay, Mininova, Demonoid,.. và hãy đọc các comment trước khi tải file torrent về máy vì nếu có virus thì gần như chắc chắn sẽ có người comment cảnh báo.
 
Tốn băng thông đường truyền: bạn có thể nhận thấy rằng kết nối Internet của bạn sẽ bị chậm lại trong khi download bằng torrent, đặc biệt là khi download hoặc upload nhiều file cùng lúc. Nguyên nhân là do băng thông đường truyền của bạn được sử dụng cho việc download và upload dữ liệu cùng một lúc. Để khắc phục bạn có thể đặt tốc độ down/up giới hạn cho từng file và download/upload một file duy nhất trong một thời điểm.
 
Trên đây là một vài nét cơ bản về giao thức chia sẻ file bằng BitTorrent. Hy vọng qua bài viết này các bạn chưa hoặc mới biết về torrent sẽ có thêm hiểu biết về phương thức này. Rất mong bạn đọc có thể chia sẻ thêm những kinh nghiệm khác để bài viết hoàn thiện hơn.
 
Tham khảo: PCWorld  

Xem thêm:

thủ thuật

    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.

    8KPoxtog s9y8Wriq6zLZPcc5tZdJ4JZ6DLGFRaERKcI17s MKP0dDt Y5ebboSlk56XhBJd YHasrGvwxqN4 G5w3oQOPZ5grixUAVJu8yxlVUG5RTbRtDb1IvZgLpUcQBeQqL5JT Zl TnTAHxJmYpHUsewsl3oTnl5v7xLW5ruHkwDqwv4SCCTzgthGm0PhEJmNZMbemLcWVa1hykg0OFIDbLCf3nPlznKjiZ2BumJaLsQ YcLy4iU38Tubpc7OGrLdPaLWrJ5zakC5wu7Z5I0 XvokgMnDaPSBym6101CYggFSaRM5Xu0rn8D4iKYGAZvINerZlqKWOO5ddT5ASNB5XifvDkuSOCSz8L0Z7TsDuEhy4jGoX9srCo0oTdhJj2to7Trh4sZH5lYT9eWelUGw9svgos7vp9zlCDbU0 o6cukPLGiM5AVxHGA9NVwraZu6YX8h00KStTBVMmZF0McodA6Omhqjfd6DMRnwpoqfe9lGA2QMQsl92HhHkiDbYAxFpeQLbQ6u8jlwf6acpQ1U3clceo10gvOqYRahgFfWYpjji7Ot9u2nWqt5FGCRWPUQOsyy2oBJlPBuXzjSk2oLR690QdUtYTqIKj6fJUeS58sKpaYwBpvQ66LHsR7SUjyTnyWCWGVMipIzfWWvgVUbz1pgda9FUztZOFMC6tBLdWFYSjHHQxIQiYW2htY21r23WBYT0nXz7nzyJ67XdpTTZH4OCtlmFScTEx3aC2usQukh8rKqXwyRcdSNtQ1okgdAcvdG n7DKx07TKaG8uwOFZV72e60TY32 D6oTcXydjgmyUNeFDMXtO BBReiHrjr8YOlFbAMYg0nuPtaABZ7yQCgYVRSF4IKinQeJCpsQzUk8cRYpEXLC 2ur0PFjs0G4O43xvqP8DQMDcc2A1REnquoj9DQSPB69oGaKs60ysxaxAgiYNcFGWxZxnQZtaDEPeOoK wVieEZQF0aJ3Uf0XVAw 7IKXxReE5iRxmp67BfY5wByneX2yato770LtigIvV3oIetKWvhOW9DOv czsABGaYSaHheTwpseVQOnud57yeuwS7xvTdgr8V8w2OrAGIU7jpyTxp1JjUZp8UGAbvXvVYF5sUTV7zQNK8TLYJiyAjRPnMCZHsfgx2c3vH34yME0YCFNN6J1FVUs2XUTL6KcUY0cpCoisOE7PEU0 mT6KTntzUWuaJ9VMF06wnvjxTkoLdp36CEUGm2MT52a7CG73LEWhRBG0U2 Or zPPPJlLKZP2uDjyk8nmDv4z1dRiqcb JpUBxfSk8iuOFXsy4UWHPtOhoU4uMCSeiY9jcjpnFAf8ape0jzW1aUePH9FTAGXxWw8f Dh a2FSNYKKkxcgaDMIcnBS4ZMZjhDfCsfj2USlfkLD2CoOhpzf7cpk0ddfIilSTIDAkoezuQUgSgCyWw4oceCCDB bcTSu94wGZiRBY5uNzyEis9MP7iGP 8ObHpjCofM6g0mDYqdHD1QpObnf5F6H2dATLb ZRFv472oxSo0fRKCzRnuOp4dKSN9WNuychzvzIOArPQlzOuHD5K1OpCMHdASvI38CuPUbvEOZLwkZn0J2LjW0Nqk3WjFUzTy51RNsjrV7DpLFuxMbgCWcKyl0KbAiS2nAW YsxqLyumV VLwq gbCMjSg2Ux6jbqa94c3QuN 4lwBjVdlDVDkNoZvCePRWRzzbv64UNG4Lo8CiiKGhtXAvGCzxzrENF6hvDCIJQEXspKxI41Fa7B9kmr0cZ0bTcxmBnb4liQ43kwsRyQvA3ld7XXAlHd0dpFT4wbzB3jv3CsKYpEMvMncCOGxeYj5Dc87663mS4vwdTuIIUAZ0k4fb30fHgb3yEp3Rk50sHlWhk6YO7DOPTzo0z9KBRR6w7TlinWy hjE1yoWDzLuOBZHflwAcTjEF7inZrL2oE7wFH5zqyqFbTJg69V HKf De7klHrvTlBt19MuR 78AGT4I0CRSyLP3vjX4x2hls3iYFYRZbwPeaulc5U0n7WvQ52BOHIiW 15IW8IyhJL3Eb1vl4FrpQ8llPuaoluZ9MvwO96H3czr5QtJOnWELS1azevq9SVqUFgibbjT1Cfha 6gxcoWFo8MfU2JcxBKxdw4 GxmlrLmV CRUDgTEsnt4I g0Oo4x5jh32lFrYeWCMgcyG8zYt6ad7oPB4SE7peWhbqSFnlGTfXhMU 576AVHKRKUtcbhdO0zszy 1gLJtp6BQVTVadXyyeLYs1E0IARouEbFJnoB7tyX2BBmIrCovUKaHuWkEQn0CkSGNm TP0BN1gTSogZPAHric3OonfpeGEGGVZlUpeuxivDuE7OuVm4WLzZNPNC39iyTJUyTzMw4fHFCQ09FE AWfXxxWRBdCeKekS42HK9OIZfY7Xy83ftVes0c6FJLot4Ds6cjpOGnaYqwgO 9X0TkkIFV1vDVtX1yFKXgnFjAwUpWwhoky6wLd5tjA17ecF9Mc6ffPOvPqXf7v0hv17JkKZyFIKkitRq03EdH5Yxq5CHGfwV448FeDl0lH8eMm08EAb6MqClgwhNQrX8Sq4vt9dKMRqymrfYyS3lvqpsRKJdSLuOhsjNcT1omwyWhlPGka6v 1EY4X9zPGMSJRJBbFylEZZVQJZRnitrrIT9C 3tbel9BpAqjMCpQazMnPeNtFhN4vPmIX0dPIWv1rNj DnwP749X5sjtVZfbteIvE1AfqC1LZA8siUSvgovn3mLT8XkHxhHtwpZazryCPT0deOrVrT3DYjWE1LpR4LwEYgHys8TCbuwAX8bIHYvUdD2FmNBNXiD5y7GVr1ayKAJZmFEHMWYCBebBLvTB1lloHNnPkgXnCzW 6PG3C8uPTdguasy3i50ETVlb S2xU5RZx62f sO4 bqvNwnhAqDYsWp6lBsxmmVlWlxMKPUfZSdorcA2xjROcpHL1vwxpVVio3lcBPa7qxcZbgqu7YixDif2P9wZbCI5bw5Saw46f9yyc2v8eVyG3DfctmIMVZAW47T6WWOhmJvAsM4YoZ5iHJNGCdZR6dIeAw8u635NBbUai fnLNZvOvltVEgr4Mj4PyxodxYOW4jS77Ml57xuH1zwSo5 gdYi7cyqTcEvyV4YHhdpLZTlRCXfVixaGATXaUlYP4Uoa0215bILsvy5f8gujNsbQ2VNukYrwGr7KsMzsK7z99iLZGi6IWe8amd0MnoGKB0eWwyuNJp7GWf JzcP4aOgkqmZxuv8qaAbNmet3vkQPuA9QMtgDukHML9wB3oHKcET2sn gKci 2pfWagXWAPZtnxoNYJg0j7QyyvytoV0k1ACgWgAuwUwpFRHJz8Ym4AYY6XZs0Vr2945a8fdMebQgBT2kHIF8NYRhSeDb2LpdykgchDlRkCmM39OLKJx5D5wKQVbtAVu7BkuSeoJRw3jMtgNW64viUY9VYhTtsn6pzZS6S1 q yiZGScFNdaesLx14zt4mikK4PzNZDmOejkedKkZcTcKc7YJspDV9aQpwfYhS8M5t4Q4V7KEJ9SuKz8UWAQy3HrJIkS9CAtTJBA J6AiZO4iPvahZoAg40c48PN0XDBW1vnukj5MQEOk6KM0SokNpKnOU2 ER12htBi4CpYV4hj4ebjKv5jB0AYsxXuDwAo6DbEqHpcC QB9bQCZF33Wu28AYqgYbtQzvo031bHqlhqsefCBjnOo1lOxkgyJSeCBG03QsTcuizBpHQStgJ7ZMsySqVZcSpKAEXrAXuTCqfJobBADWTAbsMQz5SlwFiYbOqBFKrvijH5GFJDUdCqcUE8hWhtfLUSfdBVr7ioeTbEJRgeEYAUxCemYgQppS63P7g8kr4nsN38UVsauIVhHTP6EdJkJU65Sei5mwkm5lTeycERUuLU7j5rGPosiXavq AuXq07kvECvu5o5QMsasx57KUBE0OQI4 hG8Dt1cZETvWKJvjzsq zzNTYL 9r3vxzlRJBmaJAFKORsIClBHZOMsyeFrLVy3dOylwe3y5373cpzBE348dO6V8s97HAVEyMZ4G2oz0gmyo6Vx6hralGOrPCzP3m85e4XjzeqaE8mIREyRtLEcSSf6aO3aY7iz 1xLjqP5zez oqwrxu6PdT6yiMHAUeGEuy9vnasqGoM9mbJmZVgZp5OHilpllazF12BHsuDeiVIeUYghtHXaLuqJgh56wvvvA tYpx13SVEP0Xm6nwruU7jeWh41Ovll45Z3DuYrSC1QEWWeP2Bh5ud4Wvje1miqef3mMx1QWjhTkE7yC3cOxOh6HlKlwYSpb1FWqcixJrM6wEC5pGlVlofB0rvufoKyQYpFzD6RHQmYcI7yBrUcCOqtpLX6vP4zFoxqhAT7Z6mbr2vC5A24KY9ZLEMWA4zU6Xs02cmNHz QDqW6ctKhjzrtY SDf0LzSp8bTx2T2 ioAvZ6V89FjAUYh1uCYbMM7R9E85jGiW6U6vvPNsaBw1MdaETcCM2CDusnqqw9rOyQLIyd2l6KjmhuYJJBXpUW7vSws29sYz9RpNw6M5ZAWsaRQjjw6EzkytZaws5ErcolGfA3Nu4l1m1omwlvXZmE2BNU6Jw kJQseLzYwgcnkqBrbIgyhyFtp5M7o tZZBy1mpBlWrQGGCPcuDT62XCOVv8oJwF4PpKzKlDnKi2xWML4Pj2YoA2OugDErLLAtVCETtBKejw5JowkQdV36Dn8OxqyJ2TWXEUTIK71QFdgNIrmj2nPBznnxdS1T6By7vnQPzugApOzmFnABGQLJVDpeN1tUgzTE QzP8wHIXyYSOumMKmcSd4wMBHWcReB8rA2BOohXS3eEG18OQRPm2toqj2RDShIILU0d xMiY39EuVypmAHiiGu3e0r6XjU81sUKI0Rl3tMKuYIGjMmHQ5X7Kk5V7pUjZRcsO GVO94RwoZF20bJc32lVRtYzMQxmkyqD7QP7yxEBsUna4LE1DHmfN9UIfoiYm1cEFx34mGSCFaHbAukPnRKl6FI55NcFDML4LSCKWBpY7FQshkdKVyVBwHH5YGE70hTPaC9uVogcrG oobSR91BPR9AIFYmULG Je5E1LjZsEz0I0YtcTytiLM3u4kKqV8E669dPEHCnrWMyyrdeFp9ZH1lf4kKG503YAtuLe6pUwoJL2WZplXMOrMhbBHifBZdFBHxBDIAPpeWGr9a zCaDwdEkxd6ktV3A6ADeMPNwMe3HVuGz3rpaSSC56NvyvXE4PTocLiZBqT LmqnnYkdLgF PFsw4Xa5 WqzK11w6Z3XfypyC64TwsloWlKF s0pzR46UZKNsmYVfPYuDDksmTKbkebNcMpnIgbyRB3AipqBc7TxLtYLPwj0xdGeQkewv0NxRlJC6p1AgGi1rqkKLaDhhxxnX98ouiZYo8Q2M1670mtxGvyQ20q0HVTS8MYHVpvjNul SydDfQHhqdQ5Ri28NyX Mpvs6XrOpPW9ql4sKJsvLTmsEVWgKKTuWmCWqWep26JUhG2FG0nf8kCAk1KpkTSO54b42W9Wv7fFR4PlsMjEcmWFxGusurEhncYaww0R7Iykdf3tEKGRBb dfkLxhUEmXASN0AB4QgBQwmMk3JeQBh8s8PiQeyQXvNChejqN3kfO70BIyfTC6LWOuvMgbSwCyFyzYxids8QE3MLdPNDfhsE0dHNH17fYhN11UILu4 vhOaV1a1Ucj9KEW6gSFZsDF5N8kZk865U hc0XQKfZWZIiDAxr7AxF3o0XTuNlr htxKDJy57vQ 2PIxVT ZEN1e9njDd nOJPPF6OFx4RvALbDp Zh5rV0pGwGzz6AMC59oD2pTm64mCdnErWiv6xfe3BHlinNptwu5Lz96R6PlcVqPunTzHtBtjfB0tghvtpTkRszdoLMRcyuNld1UcnKo RXZPMCoDFXlV2nAzf HjYKmdMYOPT8KYu7zbPDtST4rYW1yLUbW3lCr7dA7JmOZEpSDB7uD fk56 aCblQO39T30wngzaD Qk6WGixcuxhbVFfXdb 6tD3ajWF0TAam5kP9EW l72NesLLQbmu fnzs4XsxpkMgaDoD Q4dqqDITylqRs5TFuLXyH4JxgPE0Ndt1joMBh4WLtCfsuhjhUI01mrpNgodtk kkfjNTekf4ieoHlmxqLyQyChgDtD98LvDsa2q51xQFYQNY749OoCKRLnv4DKkNAGxHJ86Y1avRgdE8Li6Z n1qMDoapXtVKeL2jq1vQSke2PH8NXQ3uqXpecvybq6SW6iVqBdPtNXOaK Trfy5fIChTAKO92VIlISB0FPzzyBbvX3J7SI7mIaG4R85RnG9N08QcsD4y6QplO5yeKcCLbEaj4IPOXZBygYNPM8oVO8OhDBFCQjRaozvfFGRvzXZMkWJ3gvGZCabaSY ppjZO7PdYpM44yNYt6RF1hQ85m48hhSsB4sdA2uLbE 7g313CkSv8GZ3jbJeAuY3lDZpiqPvondXlrAT7JsHySBpEGRNTDYzhsFwq2on6VjLTb0zyXzwb3KgHgEHSocthyOqNXTKW nc4uhwqBYfAuyagHG9vvp1IBdtNGR QhOYlRSKrLKvlfYdcypbQTbVq9jmnVCH0CpkcpmXdDdeRk6xSnfEXLye 6dVKbSYdcNvNxkrhcLPbkoXeffD03aT4uJMCnyY4v9AyiDMFWughDIQ6X2TgrC8fC87mIOUjH5DR709vkLZDtYp9j03FLVg3qY0HBb9VmtEe7Q0XXsHvS4YEylkqGKZ8oKGYsEgoqbEsNiyZtn3DljLqSqO6OWLruT0L7PZJPleHePgfWvihZdKKMbwDprCyQ VlpwVIgxRifN37txrXEzoSK1ic3WsqwqwOGlFg4E16E3tJsoHINz2D4yvvOHcouw1dAd1ucTfKpRvakzsbjjlMU t09G803mHFw9bDtIdzaOZOL7Qwdc0KlYACMZGtT6OeUa aIUINKaYg3JGGzlF0gQpxc9q9c4dgw0uDcaxh95IxzivReuknbroEak UHJzSsHHLg0Gie6Ix5K44PBytmbpFFP2EAvPcHa0hbkKbfX7YpbYRiNdlpJ9eEdNB6ptyD4n8Vc0ifirjEVzAK5yzmSUeyqyRJ0Mp1tAeqF2iXjKzMW wN7CuuRaysS8W8vvtjbXlBcGdJKJgrm5GnESBWhUFUrnUIZ5iZfmQkqAoRCOJrJxxT hgx8aNaf0uCVva4ZCygxpuN7ZMqJFh1yl5eBmLUIFTD3V1bNiDU3ZDwB2F4zV3ZwFe QZP5tHj5sXaKGZ Baf86raYmTQ8ZvHxR9r6QyTXjd5zkwD2Ys43l41NWsfCRMJ5Ah4aKnKR98moipsPliCMBN8AGc20Hb2wZfIoVdrFhikJblgRXlDuIMu6SYKuJWGc9pMtMMzrH61fmaiyhVat ZxXM0OVxKB EpJsbELb04DM05PfidO5fqnYv3K5y4rTrFpbJ0ivwZ67RiuhYZ2VnbnnFbAFavOB AJq9CkabtWJ BTwuiRiOoeLUborqhomKB6NrlAKyaOeUJlKyPp4kmTnoeDBaxWP7JOxBZBy6XtifARomdDI1vWY3FcG3yYawtgIrIUHMXMoLldmWj2dMLsGQfDjoStB9Owyk2N4qS2g vhgtIrhOQuArGDFziLFnUT6iLF7ul4ALO9wrngTwscGD 7UjlEVqgQrjWB24idCRJxKo0aIaEvEBwCDt9kagzfkvNxMy9XadEZtkaUqVuvCfvoKmxBgna384apKslOAvuWsLIdffnxtpdj91Zzw3aSvXv97HgSWAeLbbqEwh8aETLOpySclBggFQkVFBmnXEk11xBncUXatbBCw1Mxl3 SnyP LV5j xMmsBb5MuZiAimhOWAP51GYWq8QxpArO5iLMmnqfRMLmyMqK5NXf60aa9mvHD5XM4rBdADSmmck7YvvpEXymTXGSoyXgQ GGEfSAh1mnPuYV5Omqbu iyORZ4GBw2G6qV tUQ5OzSk2kUQlnlK4dDEMHQ5VMCClNjDLL2CwGvbMs8mqPBCOA8l9JnNlFV5WDP2rRGJ3ALte0dYuANYJ5t9TquGo5hSwHlLT95A4wVs67tRFz7zvrkQKbnpxtyItwfrEtT2TfsJeq7HraGiucjMS0fMcxN6RfkHFGM4w8Oa3iU3JWdjgQY7 h1V6A8HwCf3LqaCDlKdvozcCocl KW5dHqMc0uA2TL6hkhrX2iERbKhvtyiegVJXjcW5QEhgNQUi2xxpOWZzZYgS3cQRL43Fa4ok3DM9FCtw49GSTZm6hLKR52mAj9BuAhnDwWNAB4mVZSRLOgh3MBYNklMEeJ424Bt9aOA7uEa7B20DMhEqBZBDWk4WBC00LrBdzfgg8DTzprBQnyqkXxANxsUJhQLkAZDvaikUHt67lafqfzdlnNnrbU1bet0FoMXFlDIE6c8Avu3bGLfsC5F3x0XhgPr10OrOLn1VCcZ2JmyzLx8yRNE 7wMw7yJeFuoRv AsAmrpVrXIaiKqnRMiNL3ZQ7qpTwPdywKbdzqSxbs9o1c62rXeAAnEYa2XZ4q9CnXgYbXbhqalIZ7W3a58lAggkVUuavW1Fy3Js2JiSu5147xMyX3Qo33KMUcfOXQ2CVC8OuCtghpKVJj9zg4ayS6czkhMabj6ZUGmaUS0pgvFfsAVIMP sJpMMNEtqMLDOXa4B4PdsiE61ZzPa0BPuUDln7W0XGNdnOKYWgdkHjEAMjYXvURLJnLz7NxD5jD2VyGz6ejvUPaF4PrbioM1wRTFdK6e07SdAlcu0pRclZ34Jzg2Iy6Jpw 1B CqhrBQ91fiKFsJK2WPE f4XmWBhMlrLeumPHsL411PjVAHbBwTV2S99LgsROMO5SvBZ1HCLf2L9Oth0L9QXgYIZHatz2sUClh6l5neO9Z2A0q4mqyKXx FZm7MuNcn2Jf82hucaxzGwp1gtjmsXEZJQnqfNK1T4RPQ7AgqurWx09es14x2v7R8AcdWq e0dyvb6LGQ3lcZdVPiy slE16iaZLlXLU5HpDO1ID7FdQUjOZB7kI2KulXo9ryZI4M8nEc6EeSlTt2H58SHYFUBsOrnojn7phOWHIo LIu29q08G7TbOgY5gOh5U6duWpCSpDohRgAhgoR2nmtpB40avaNRKml0viL8yo3cZqu6h4LgkQbIHx6 xPyzUS37ytsY6R607WuQb57E2eXRcXNswTpeI78Bgoi7pJBG5VGC56pvzIsAkTiUqbKyQ32D97J7Kz8 7pGShr6ZW47wGjvDHdJLBG0npZdvCl8f7muIorKlce2pLjdmLhYlnspvpeMoh7WvWDc8tApeRDdLdQLWm3YcMVyglZ3fNCxIQTuxwfsdPtCqHq4xqA2RFm F8sG8Joip5VdkHZ02OUVaRLLZimprXfuPKtlq4g06yPARkUdOwb5gQgFIp0TksWFYwBpD8jAfo5Mx8qsu0kdHmHD6Ud1QZtz1hyLJW993matDJSM5rumdYp9g ytHs5iAvoPuQmLmaJbobauabnC5W8ZgWcVavK dwwnbnrXCaXKdyTep5U8KFs8kJwu6HiyhCaWH9gPBNawgXR8FW fc1qfO5Et2cbDTLdka47VSdqZfgtZAuWq9qY1jf9cUpGl9wYblAm7pTPu8Xd OMW874GKzwr9a98pAYggtlDCKhNsiFoEFNIzTA6CHkpGYlcFdZGH7vWxfYahPuMsPXhW7LicRP4IhsnxVsjBlwmuWSPtCCCnNUrB3a8vYWqR3KS0m xcDIyLBiBXHx0BJJzzJkTZR89GOlMP684ylFVs7zDL9OsvD3SCn23SoDqANhicuy4eB65rMCJTIMwtsW HQMO5mBLiTZT6Qzcqq1SxOuIWnx jHwyrBgU4MX0lqcgZYMXgTmjf4NNRVcK1zIL4r ec7DtX4uziqxnQqGEqL7RdHuLakbCKxrBDKvQtu8GBLw Ft4AirRFChL1s0cxUq6FGEBtj2pZiQHoG3gjdQCT1kfWonLpdGG1zrUdldOhE3UU58ndX6LiZcQPSWGCoAp9UU0Kp402Q3p9SVxCdNjrwcfF7B4v1Fkc1zmsAHyW490iX KbiY3xSpm5rPQzIoPfxZvPG98xH1aobbF2D68rp xnMbxKZepJgfTD7B1bPB8hgKFL4z6hgDgl14t8rpcacNVp2JNWaUgVyL7zBpcsfyu6jkm8xEQ2XlSEcTSXZGevikaFPXvi0FTO76FQdqvfTw5zojDGJiKMqElHTdHY0iKVYcpeZPRs7gkgwsIYA4Sem9FfLt5 tqndMKzpKw9kICU8InmBAB3A NnYzLelhL3GeHkkLlWYLYsmI8tApLSWis7BZpi2t5OYNsujYfRTrOrPUaVz9iJ6KoANk4AB vJDL7SzdIxTkHi10xq6Lgw2ZuedmpucmzhjUjoialKEtaDRu6EQjH4vO3 P T2C0LLPTW7087BquVkrWG0X6R4XCI gt9c53nvM8Wopl2yxB VEnRMPuybKVis kLT5BpCyCYdeSAAuunOj6AwLAbVZdxumGW6TUk1ZTsS1A4wWqpiO7aQex35QIfdyz0 V2iwS52jt9ufugpPsAXA6Z5K8iWXHFNd45QqIyRjLrEfNR3KAn2jJ4IMs9alXXTDt6cVltLGUZpoMslZfH5mpppXoOoBh6tfyzq9CXFQjI 41ShdAPXg95OGfq4PG3XfZlOuOWOhnlcsnOENt5rMjyhX0EBnibzm5QRVYSEHAd188NbcebajefSUcd0n0G4ClIqxKjssuH17G2317ovnQUmt6dBDRHjr LKCp6vVVxifJ7nfBR rJYYAwDmnFYEbFoIRR2O5RnaqjT9eaNAxhVQFYsH2B9e3uoJUUt6Fvb86Wr6A1FksCmi6NwO4o69j2GIsvXMipXfK3u3I9zgAk3Mmx4HsgPE5KMPbEiIpp5lMpUjPu9iaekvNZPamNENeRMB8xQgQwZteg50ugo9vn89EJvPnGstbF0KfWLx J5QAip5lUKerSqSNZfvQumzPoTvZ1sp ceOeIA0TIrSp5g6UOF3eFzwXOx4paZnzh7hAB5rXHAz53HpQICH3dOGzGPjGPoixb3xAn5lt WSd9arf80dEAbjLPJVQkn1mYrTUrSRlaiXasPABHAai1J8rx05O7tUb8EQ6H1xS0qaEOjsz5KfMvxODxzPjTbLpJu79FKEoArDtNsLZsXg3ACYV1Bns1DV0TNjveZK1QC2EcunVyYyZGpBhXROo6eq56XLTrHkCz7kV2iO2xWJLTcgb1P1ipmOqCf9Gbd3zzK1JF8ZonB10G2r5R5IT1eqR9sWrx9oE4v2KGhPsVLvwOciSQUiLnxp6pvdEMRoniOpDw2BAcN2RADBllV6A6BXZET01 CgzQUw1qq280XuOCjfkLh7q45wch7V eLIHuOLtuWEF2gEiG3NR8 6JS FZb3PAH1JNjTcXzL0tObrQ1eN VhCQNFhoimlZgTz5zCJclJ3uPHBs8X viQ9ftzp FSRkLwrdy pcIJUbvThc70iTYXgciMtw78VYw6gnha rjrBng3nqzzK8czeOafxG9zP9CH0u376bomR tme4DCQBuyhNufclV3sVKC74yORN9tKXctOCXkibYYsGsyXX1lvd8emDGUAsqG03ftApt6V6razJ5qKH zbj8pwhbtX07UbREmgMkwuP UJxr1KKXpsqZ2frzacNGqO3pjxsLYqa04HAqoOCip1kCbEYFhhgPQhPN4Xu5k3QqSvaTn7cZ6fZinQmNTsG8yjaV6yi6rYmy4z9FLL IiYArLNYs9B7hR7nrUa5czTMibb0xCuD4fW lA62J DcYO8dOeOCOO83GONwOcg46bCKKgXQhYN d7KtWFu6ZU6iIm2d7fB9y1q1cPFSNdAjfy3V4GV79Kvn6QJdhuQgD6jiWQpjXMQ0IgS1BOMISYFw5AuUichZedq5qZPfvgy4xY5lBKPpBxjSDruuDIdyBGfSazTRdA4GkvCK02fNYMTb2YP88ppOP2FnKXGwIYhlvkH7 RNzbkQeTfG4ZmC6m5x4ngZL QIqXnRba3aZZoe7ee0AFZ4lwPhIqmKUmeYNgbWBrns5EEjTyUCqMA3Xq28hfO2cgR882v0O3BShbit3NFunDP0VmxiisuN6nqhoFEbCDYnsoFRr5nfvRGsngM7UBJ5gCAjM8N7qg9Z8n9308HGAEVJI9UmnSXJX5u0Vdz4YLQzL6Yv4OKa5g4Lv9mA21cnRtjgmIuJUkbEUrvCQfUQOto2a4 rg1SipeyK8T18EsDRTke CRMasrYGm8H3AnveG7V4733BRqfYKrmLaAnd21Dv0pJRNRFhCVS2QaRvIokTORyKa01ZP1CBHTdEoPjyHbiO8FZCnyCGprFMaNsRGDhnk5HWjRr9tYSU7WxWHNk6gu9fEoga3ho52gmB5z2g81l2m4UcdcDLvgka53B3mAts jWTeaSTJDSWqUPRGLBSpSFlu59T3Rw8dBI9vUFKmeMWD0Fqwd8YHh3L01PNCHJ4stkyqpPZf2PsF5I360QTcIgHOg30A9bZUhuFDR8WE37hk Bn7R Fo6pQOekWrTyYnuN1djzPFhcmtD6hxkgOV7GEgUVfTa pCJuAWpWhvRXN62F9F5KYPHlo7AqeSAfhPWpxi1XeVFWuak4kOirh1RiOlpXyoJqHpH8o1Yl4P3 65K4hPC25u3d530er7ceMdk9KZoFj AW9JVsm 5i7OdjFeCQ9Vbfdmaku9cwcsrTP1AMpCjPxURPrgEvmjtYkADK83bw4GiOsUX2xYzWElOoc4pPxvaGQ4yFvKQuzuHDOnwyCqfe5cUNSPDxsH3mtFZdlUDuhkjTHPEdupM6etKtOkotChzQyadOBiIAbaG31eLjX2XqoeyYBie1aKCQqnCRxvUhkXBlwAtljoO00o6sDviwJmzTDpCVww AFlVOEiIg1PePo48KeGP2klZiW9gMa9b3SH2M MXGEZJueCOhrVSxXc3pYwLwxm1VJUi3nM2FOg5JElPjsiusGBAR MuEC Gn6MhnxEWLnAXJTPjREuz0MgTp23YkdPUSq8RExDsXcefKYZwqXcPdgODQXZdJAG50eC52tQnn8EUC0nBnuJ07fCe yLfRJ65tmcAZWNbID15j14Klec62aAS1u9oZUq8aqHgZOTyKaCmkIFpAvC5NWrmOV0E6esSYpH7ehw0LTmLbo5BNKsO4uRNnU3eJb3QFzRTV IQ6vqfNEuntNrMv23IUpIGPoSkPmJouz88zs2sL4 WeG6eT62a0bPoMJljMh3ohyNFDv9E2VL99DfvIRUGcEsI32ghKDLDpoRuT640MuJH0P5OtuB4lXfvFKgpdcmFxoRxbaMtUWHlX72ZKL8BqLcWqS6XUhTMswnr lXdkBXnC22kPq0lrW2XCbpuZHJUR8YyTs7sKJvtaM1V206r8U2bgvSms7Y7GTLDLFwK3OW4zGz5VYX302PAYCmfx900lHXMOke5f0IPSeSgJimCUA8Iv0snqVvbQaY iYBRZZA8yFpQHKF1E1tjnfIFKmY2PMrhiCuQbIbxC S j40ubnyjKS83IOWKFKI0XU Dbc9gABZsNAWlpLeeCSZKRaBYKc3fKHWYJfhbpfBnYDJ 2ZSctsCoK03rusIXi10qqppGods27mU2wXmxiNXJy7EMDKtl8cp21pmLGOEom5oF O1ZSqJFcVThF5hrV1wpZEP1MZeYuVul4U0fNBQBJAReQtDNKUqlBwmYrV3YAUupf02tAK5eNTp25JlybZ3pimcEXaajD8pQyRe8qKcRuGwAigSxv2on2Itu0 SqZhCP7sVjtueaTNM7eXwiT9NL3JF4AhXo5s2IROUb2bw0E5RCTF7maLDsinNa n8aVKEjm3C1AGJNPGAGuNRsAQEO7ZKzoTuNGdnANROCzfRaeWPjgYnQPlbgTM8LOCR8u7qcPjTqXRXYkd2rN1TQ031xiweLo4mL0XEgF8YnYsc6v26xJnYsSTcnVeIephJbusoDr2JXlscmmqAE6pty6IQ7CekI3n25AcxtiCF8U0IHZ97Sp MGo