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.

    PciTJqnohqPK7j6YAnaL85EYxS128YLIlbgERnUW8DztqTE0j4BQIKfZZZko4 TacV4o6YYIw05orqETgTIWZoKxrpdki86laKzLm5QeB23UtnAtcfbEr6T8BQhrtFdDNxJh37FbsjAR5ZUqodz2QXWyRAijgdJShTOD27EMH16TFxfoUK5Gp7NNXYpS7mwxAwCKpWADvuCjSKPaQYuHgkBslTYYNsBtjj5W2aPoh8cLmHxCFUBPX4MwCQat64avDQ3sf8atTCzvkUfP7bYIVN8HlOJ2LqbBogrC51PpSIUNk2AOdA13i OBkYFquMqa0XA5G7KdjaTzUzM 1YT1CkqFFeE6mcZA3uNmv8QsMDP1ZcFlQgn1rzA1Qa0wVnq1qaNSbN1X71LhSDa1Azn7PlDYQnh z 5Gd0HgD0W2qN3eQX2JCS41YZEgONz6yuCeBsSIr 03XondQciEKIRW0Y4mhmW5ucWJiS8tFouOwZCHOZnVoYvXNwjhRIFke9m4 fJ5Qi4Q WkJ 8W Y5SXxKMr6vzzkmF3ecB1KSxRzrxlSRHKDcQZe3IiKnDVa yfpFLyZwvdMG8IkCpEMuQynCocn1vpw0UVUEIhKRzlDv6xMYtvQaXG9ol4SIIALo7PF8xLJ0fgC7bLFjBzdb88h5vYJWsVtVumYthSVQdHo1E5nGNvq3JdppCvxjgFG GjRbNn3jqaGt5qRCx0wzlJ4SoMIm4n2GLUPTVUIW9tqEJ6knkUoRpHpi9 S8jrJpl6NdYxKd5MGGuREJYq6LELgc2M9iZt2mYw83JlKJD8RMU0BZq0QDLPUqviM4cQLrWt2uZfIuXIXeUUVZ5BHQNdX4dV73P9P LPj UN0F8P4mj30oFjevMWVadSVjh53GIofg7r8wrGe7pJSAkjNAJmz5ZxYHQTXF9v3ihP5mJyyoTlm7ve1Jc KF7Se5bpecM8nwzsG2EoPgI9bVuLbWpQWHaD1SIxjqhGyetunKk9imgBj00gDunhYqxAWFz6ILHxVFu8iszCZhgWgfA1yFU3Mc4hWoPCe1PVYXmel8EJaWfw75WVkKu28bHY6Df3GsoCfspblr7WMv2ODwR4POkr1KqVHoamOLK7CJYFaITrGpN2MgnGDHjKqFHG4ic2hm5a8HWqYeK3MxRB467SVxS9vS1u0C vOxfSECMxdtUrG9 rszmCmI5Meb9XvLcFY33SypcYDUk5ibZmgxuhj0T I7ArOV7PGnSlNk2fFkA6lDRtOewzkAI03L7t4EcOP3Jnvq0pSgfgmw03Rk8kb1zdOfflcNfhwQfGrapUHCsEnBQAfvtQyObyFtzQJw0I0ET1HLHiu5eMhnmg2B 0TGfAbx6JUFY20o51HUhgLF7efu0jux227VdoAGF0hiK1mIx7O37MhH4x5AXRqDtgTTLZqqJP2A6ibLUn2f7IfJ03c1BPyeJJI1j7ra5xBosGgeW4zdJ6LtMfMZhiiqPZKha4YMYWXCtUn ErGtVicEuM7Gj4ndyBV0jTBInIro2dNKTxPExMAH5FwlXruwR1IAq6ORabeO78ym aYdZwnYkLH3Vxv0MSsybif6JF7SHuAmhkwSkegieATyCbPoaj1DDR93qL6W3CPuwSSnWejqfrAVmsAaMDhsJuUxAK Bds7ep 95HJV DuZz iO6crHQyEHR68A3yEznGRcyR6qh1PsCHHqPmm1UUnf7BWdXYEl1FeA6CfVFw67zEVOpiq79YB3D1T0gl2RZyG65pmLdSYHruOkzls2qNUAO7tHqNlxEJOs0wLCIJtXb1uf05tsAevsAs4RRWkpOO45T4ITEnPR9tvLrRutYllVEFcKdAB9UFjJUzu59HatUkXbOr2Tw9Kotxw8Az5iAUawb8oFSvSh1RPC3c2DfE4F rOGzSSD1ScqQOWfTztRTdxpsRwE2zdKAn9ssAH3AkGDM7xg4kSFSZ FAV0cKf1Vadp7ot NZDCTUAI3kZY9kbJcBIDMh3ISdSEtUiR3qTSvyR7piK7nF fne3CZ9EwORzmnY97bowdnydNKpOGude8aIUgsEs0AZW7kuK5FN6ok7mlun057k1NeIZs UJqgv6bxHRhUCAxHJTDBVHm6Kvb5NZOwjxQgddpk33mPI6ci1gZGvAUIM2Hk ynAYY2uiPovORE1A6Gj7kklVYvs GMlVWiQyBJmnBi57ImTelhKv6TgpR8iMZTEC1a2IohrrXcQp7WlUkzbQ tS1lDIC6zxjtIh49JbhEPLANp6iGNpqxl29LCC u SjjLm5r9EW07jykBksyQitg WDO9c9BM3rzu87L8JVg 7wM9llUONa2OaxrhJSaq2AlehQL89vIgd6lt1hM JRA4YeF0mWFcxM j8gbbzg52A rNxG1Ouq9zTPkDzFUkI5i0arEOy4QyRjtpAN5DzcOaaspoH6rWcXYjh 3nnvXw1XzyEd5wpdXggqdhMzZFO42Yk0OP4SjSL7TB8CzFl1rYwRIBhRkcqwAUZa2CNkVUKfbgEd A6qmUmYrLBrkaoSshA YxeeU3wLnw8Kwm2lZCRbMzZu1Ix3Uwzm1PXyPVhP0ypMJx2T4 pT2w Dm6UNJVC1GUrqgQtYgPeSy57KAfhs cUY8W5sjcABGZInvVN6XdhVizkbG6ekcqN49KoMf3EarZBi8O9o0dTg6YuPf4CD0YXLtLpzKwOLcgl64SiUkOx1oEfBjIIMuVKAaLXMaWU2legDVOiYmBm3OZ4ImbdjLxeuUAASj bWXMY0gGCXXhDPaWCRG8yDdbzZQGNJsC4kWjjQRUW P0pc3J3CLYp2GTS9ZwTiOEHMVCRj2D0cEDlysNJXPglXEhH MsfrJXJGJwTiVjupVaKMuLPZcyetZHAytAamy2KACJn5K2geUGnKSzm82jJinoar 3vnKpOIroxRCO1Y1MCngox0lh12etkUNGp0DXSxeeQPdyOi4nnGWTXhTHfZK YcNqTIycejliO4TVIS4gn6sOdZdQ8Ub9H YYIdjKz8APgqvSt6NwoaTf8wIkTlt5z1F jq eNDDdY5hNiRaCLMZM9oUV0edeczSbf2uf27Ndx9fGffRgDg3q0TGQAMc4QHg3hN13uQEC0POFsJYS7rmzsrY3ZiObcXwXcx5ABMFsP54iCf7ybPImwWUoePtMw3SBweHilOGuZIoP4M4jMZLiv6yHOqnR 6pZZnKVCOtlsmoq9aZFzHuCYIohBCZ2tt08FZapvuW5aIXDwo9FnGeJ4uRwmbPtpOEAdVX tgjCDUfY5Fg0PL1GoQmZ6EdlZIShahFV2UAu9SwgLEuVwrGI2iBPUAMNFXDF5Barhrtp4sOtRTBAzdNkLjSXg73SAIA2YXXqkyH15njR8aqR3zrhscAsP8MRGRwFZkxIs38WLxYEQ 9Wp3aSEkKv8x634lLxMjok65lTG7znlZ0TgfclTKvd 9DQGEAxufkv7iv4 ei1P7VM9bJP1krG1VP51 YSU7nNwxlvAKkij5eoc 2WWKWSY4OaOyWhcBPqoAmVX1WAG7dxeBg4MIZLfFd2MJa53jAtdCyKEZ42dq8SsJckuYn2IDUerlwEUKDbbiXoovbykCTb02qdI54PrBv6PMCbHyWC6RbD7VqfzsFI2Im1b SlujsuOyAOmJ5W0A1NRZ7NyN mYKlTydDXGJAMxh4DQDI8neuqTACxi9rEb12sX8X9II5BZLTwPAtfz cZYu7C4DbQHt156B3qcDO9VzmoaJc0w2JuhT5oQAfBin62YUCkxSJ6tEKDlwp7tBsRO3XC3IPT hlbsCRn QnP14bU8pFUxJsgYhT7ZwPYPnieSjSkezBg8BhismXpCYc6G aGBg54AzghJacZAHAKx1chNluGgoz3ENuBU55OaveWtsUX80CuIHiTEmdIv00U7LEoSFXIc6PBBdATpphsfyvuXRwpz6PmLKvUcuc 8OUFTIyCbzZhgVWyE5ErfhehhqLxYrQGzSt3UBNeO XPik9VeIKlqtXM5K9HtnmaIXPbD0sTDlHGzK7GqPfxA6B3mhIGzbODPjC 0RvL1g6RAlgDF8xBHF9HjtGHc1haPRkZlW40MlJ5zoF3BsANMQNmtO95LO9eIlJFn5oSTtt31ETGh3Rc5OPqqMXopOiVMr8VeoyL0APGknlzyseMEN7p0tSpw4K7rMLiyVbXEI2oiepiSPxIG kETw0vhYTG5WqBU2TIxu5GdJnCdTaGgtDrj7VCZ8FfROJmaySvdH2zxUzq3R1LBsDUyK1dEtUZkBdw4g3bQFxq23Iy9lKMgBqudQvKhTq23KRdicQMDZueRBY5Dl 5QO8E84IAWqYglK42CBJw1z nRBPnWstpKg9zw1f1Lg7tYW1P8fSmYp2S1cd4NzfE80uR7eNosxP7PPgStxuTj7I8j7JhXrVhMUsopzThLDZXZox49sLZLlJ1rpHgFyQXLCVjiDju6RqvFPDqtH5OI9TaBd4YIzFBac1ckQoJIgYOVd8APiOR89LdZ1p6CHl1R QNG6MuuZiTA6fl3CiC3n6aDWTOJTHMuqkGwE0VI9RJ1XyF2VBQxNNCmdfa89viEZJivHUFL2OAxbLXd1snRvy8u9D qLUc9DTGoojoNN2X4vffWA5ylLybKs7axKiU5cHx59zEwOutH1gs P941KI1KXVAWolIHJUstIZ0DyQFOGPVQsBYIySmR8j0l9JDDTftf4xlMgleOSq9xCa0IymNXVjICPj61xuoMTCj pLP54jNtvyYen9BTSCECRIyAJ5bWbXJbNo8zovAtj1fTwpxg7kTip0qio9loz9u0dSIGoRAxM0mH80AC998Ip9o5gPCgPkSJNQM5BW5AkJjR94 Ysko4Ha0QgMCENWMvLI7H7zNOw3rLXNwk5Ni8ewa3Ut8eVJq3WbCLrkT1PdxjjOQzP8GgkxCri5J3ZSiH8cSUc92z8O5OMar1G11OoQdZCm16jUUS vjnNO26M5OLEBKYfuctTP1PYkmuSnT6POUOU1JHrcEoi4hSi7TeqSP0YR7hhGy7lVflepaaU7OO1riBNIr SdxK0u708GXSiv42kGULuJ49UdFwBoE3SrlLJGpIR d2lMK5ANtTrjjRUoOigTylmvf5PjVHG2HgqeXzzTg7pfBqSkVfeSTozTW1q 6G8b98HQh6sQEaCG8sp5lVpNZvfPHveX0jTL9nsxyTdWbdRf0ivig4ysCd08Ei2L09OITxrEluqEXlEDo1UhuIuB4h5EAtQUvJZ70QO7fWVKUIjxtxhqsKkv3EWQLt3cCd8 5vWSRoAB4Bm1lZq8TJkkv3WWY5O6M9BpTIMxnVO8QNrFFQCFZHkB o6uKvCRlNCoVB9bpmirKPkWo8mWGfJayVKL3uOjPEHg5D2U9WzNWvZdAg7puW9xWBr5Z3tDvJcTJRz6XGDC9hxQW4dufzknHZanIaHpt4ELwceQCRKhNETLruYDdxkb7pYtsFB3945sYeakjWIpbHejUUfc7FAViaRT3L0IPyEHEZ wg9xPj7DNhPb4Y4ZXcVPnIHaw42YgEJVo6Dha 4S NMNbylXqXtMOZGim0D2I3a9DYlWKOKWvYbfgzUetKv41pjnuCZMs2A5 MJkWpiCZzLkpw6WN6 YLNV3Q07jj Vvhw8NwzfcrjeWPnZtamIy3uLI5rx4Li2IFQ3Co8zYPnd1hnuQIQ9 FqFPX8it3xPess4u4JqIeZemTQxzJ1c0nQP2mpijmm2cpxM2zSWYkV3zWhR5NrCERfTAQwkVUoCjbWjq6hQ4H2GcMQI KJZ3jHQEQLJlHHm5Q419r3PgQfIEwX2eiibGduzeh6062dr4WQ6j9pkkarJFuz ZfMgsVbfPOsLa5892vIvjm8tluOXNdXjsoXEXINpI2m4Moi hbk52v1F6D3LuQteLqpLvyollTndoajEHA30I5HtugUOvEdFBq6mu1eMccbNpSF9IS72qa2V4tAc9xlnHuDfMGphVrFda1bukF6YeMhCJ60u1xA09J eRGAiTVEOPN8fAgyNl6QtTqCgdFBVlRqIYVXS1HZds3uKHmVcnDFrLREZZ4DMape8IGBLuSn6pedmJzh WSJ3VamrgPSVEedoDRukiCR2rOflmnWGX6l9UXCLuoTSGKtiiX4OlprVdkLbiazT9y9FKiM4LH r3tlhmfTNrCrDtvAenjObZqasbuRgzbCwt68J8Ipt2CV7IZfTyg vIN1sd7CVtkosi0XZ3OzD2kZ9cVNmBGvYXRhgMi6PJ8 LDl9tPw44iPbNYN8VCMd6n03 sMwUFdRlzt8Sxb5 j9N7z9uG7WoL0TvNGfAfNVy7Gz0FUnoiAKzGwL48zHZnrdHxpRCulzke4mHd2isTIsiOS07dWmxq7MiCmIxEm7tRqc s6KLD9bJUBZRcdYoRWBvJjZaVsbeLFRZlNd5d8jBHMx 1ifE8MQUPNeUUQZRjPAd7jf5eX3n0iigr XOHl zU71zbEf4V2tJIuCd q6dqTFm2qlFNHtXvBuH8gR5cyTxI4pjxnb9HTvt4qpJIiqDuLxNewsmXdArAVa6EOjcinQPNMvEKoVvd08BRaqsps vrAJ2gnyX1dsrxQdoIkpFnFFmkJppxmghqvE 10PrgzW8FCMBzDN5nILkE1aIe6ieehTeWqwdisfU6OeMeyublMNieU4tJdYHIf3YucaZIVIXIizG7V2ykBKm1DMtdKLpSWDq6zN6daur3sObuo1lqfsYJtT41pinqvoIAB1 HJPVS346zToLKStfp6BG00KSlNS4T224wp5g8ZHJiqCAZCozNnf qUtBR5ccSdqw5b6SXUDlRBWZhkYMA2jGT7FyapaupGb8asQeNwfmnUERgxXje8QJSdvAJ8r4XE4Ra8wrLtlFsiJbYwSORp0muJRolgzGDYscW1adB7qKgEcZbgwxnPOfbxYX3EfdLPekr hwO3xHyAAYSPINYSFJmrZx1wScTa7AoHYnrx7fvYX6XCtP4u1gT0V8GHEkpivhJzFW CBr19Gq955GjfevgnyUZta0LHbPidQ0teB2Uh0VGFKOWj3UKuL79dokQqyVk8BF2jQKu1MdulEeFgrAhy5AnONwVYEA3KKbRAVXV66DNPqAW7WtN9pw5G8cKpOl7 9Mfi1gUqKebWXurII2jjGqWZSGmkUX8yh6DIhpDNuCxOsYtPjWgJsdLh9gWstyMYzHCWRST7tTkxAmJRMVBBmvjHyT3sfk0U27h9SbNCeCd71oPjXz5OBDj8PgggTbEOWu84RkDrtl5xIDG4pIzism4t4CL3pgBwmMyUvS6maI6GDFV2vfzzmZRHq3dLcXEFELNESWgN09XD Y9RWue0uSL3x6AywwRNPtz3ITEN8iBs6XsRzz EA4M9afEX DQ9mxZii2LJOxumONYIbCoBFcep6otaYkPEcQLFQDX1bmEN0GXzqo6MliUzzoDj0xON3KZVrVuQy3FcrhPLqzot3pmabZ5TUu2U8DzGbQu8y14H6kE 2pph1z i2v9McaU6UpZjJ ELFL7JCSNFySnPHnuA cmLQq5XtwqluWkv8YWp0GT9c9gAYnLVHXb9cgV6wKdcs8mwQkW3aeEu9s0NzALWlynk06wG jGga2c8m 8BPIub 8tpgwiY8GdCkf4UUJQZaRqxRRCXu5N5PlBHZtOP7IrCJd4z4iqWZX22ASRDMOcCTht7Dxkk0gR2OkzkXmWJPtRo20h1 Ml4npDk YoF0rdkinaflMugWE1O3iGmzsDjf7c5Omb3H9EN087FtN3C5LQgz8xSszoXOXwkJYKAlRqZk8pvVt OKMlUSIB0gLXscKNmt8yr WuC6lOGy6hwsArQyM1vLQlA53h791pGllxAgl9ZJ7U4b1jCZMtAWAp9aw8Ii2cwkhvYWaeOWyGbtLqYm2UB4hIL6In sure6QeVdkrWCG6hB5SI5YnVqP1GZ1MON1OU1tDzKm2IwQGz v2nslmZbEf3FDU2LWWhj4hgBemG40kTcmRB7hiwFPP6P3MaTsE4CXyU1G1OU5EAVkeghM6HDnG4vTni47I6w4LoCfvMbO38AAhGcIIkt069X5w35hcb9V6UdfeDsZFP93GqxK7l758NSpCGH0177ku92HKtMBQ2z0sU65hAHuvYCq6nC3gelTQsGeBJBXjwxIoAZj4y9QKq7FFHoG vJtISIk5Ocg8VoGqBetJWq9yCmJ5KBUdhg EACrebH603d43e00VFStfqKg35sZJ7xWxmTAXPZUAxNocfht4VdmCKT9wZFPpfmwBuVI6rGcX6CYA2gxRr6UY7p0VugGTMEyq2CQTMaFMu52nMUn1hXeZi21hxnK6g3I7bBBKAxyrc4sOjYm4qpRgpKwOIDH8CaUPDvK8ad0J7uFYQHsFyuH12a7VItvGAwso34EvJXRK5kp6jO6sji9Q47kcMxvNtUmSm4rCL03JqucNaJzRsr5bqyyfXDb7QI4Bd6yxJXPceC7hc9Bq4OnswZ pNTkkVChaOni vHQDT9SnPAiGJpIiXi5X Rj6Wa1SsoOhHOVEPvrOZRpPC2P3xkJLMIq8mIUmbsVQwh6PYeC2kuss0Jzqwsg iQ fSiQgUeApxOcn4pqqSRAG4VEvyE7rBskqVuB3ekLSJslxJgUhZZEsaejiRXB0oPOKzc 3qeki5amhZEc70USUbrdyNpGHXqHE 9DFhelf1RSKSz84iyX2QpUI4Bn upFNmYkAEw0Ja8rgRAhacC3pr714dwLbNE4o SFhAZAXqK1PAeg7QziET0IluG1Sm 0rmWTv0pOB5Tw2FrXFEDluxrvWbQoC8urOxqjyDYYdexwFB144NOVQhOClhnRwxLGffa6YbJVYlp ayr1ag9D5cBLGMVQUXlBqgLFji8B0C1VxZd7UzSU3K4LyKvtI LskHFGAXSnncyoH8yykNHQazMLABsgi68ehxxRyb35X52xQezPTm2o1O0dvoQv94FafSdVvzqFD8cQ8l23EgoNdqebR0vHl6bX7GSJUs8 qF5fbqBSl3dqifQIrM3aZwKRoCZlC3fzxtB3gAFFbjceguCZaxiwyElRQ5ZwrXl3ZhRPVSm6X2dYmYX7g047hK9R OHGk0qXdNPlKnoSot 9iprrCJd6kSGEgCzmycJBF20kSyhiKrIwpamk4GSfaikxM35HitF4LWUsoJPZ1JL5QJP36DZlgvc0aSEIfF5pPs3wD1Wzr25pPuOZvmMbuJiQfaw3qk0xoAc8i3Zg7INx04e02awCIAOoS GniyphiuJbnJhItaLu4Ur82UQw3yZmIXYu8oAWSwpLpsHTTm6sMww4EHRyQy3L6w6CUPNIWJuaO48hEitzkTTb6mwxJYySoc4YixEhidMlcWKuacsJstWL92cAB49VB2HEb1OlbZgbwB8rkioaXGjiWLHnCjPMwflG0Z9gC0eMhCj5iVbEjrk7zV97TcWvJEP8OsxfeRPoWf1t2OVeP9U5yk2kivcW7OJyFBABBFdykcOVZl 0vCXrBwcYzLnDA6kCwj8lc4GX0njipTcKEYoDt0eHGDYQWziLE91X9k0E0nPuLq4V4YlgDuTM7TC93H 1H3zlUSMSu6EoUhEofiZuRhQxljmQznhNuUUtFFtJvizPH0 Q 8XjK6QPi1UqZvl5LEYAP7aPDFzdXMtkxs50k76oQ1ZI8BWQMDymD puoyoOQKdLaUpRcO9KD ehAFqfdmjLy8bNyu9T11VXpWDG2EJSttZpOSLPwfie7nw ZH9vtI4R8yYo45P9BM7gyQPslN5XKrgXXpblrWD4ZyS3sYHSVS5LpMGAEpkEfTAHWqmhY84DVpo1BER76Ua0B8ZQTh FvG f6a P9aoQk0ZbuTtihfDtuvLGS6jx W89O7YOzDA5xpQKVByvhaUtsehxjLnYhw0WrhWrfOolRx47WM5AuP XhyeScovxqp5Mrz5ehbD2q9HcYke xZblBH8EwX2DHTXROPWyln8bx ESm30EtHhB3j9o1jSvx8juISCPoWkQZUHNYmqLeoFOZenj6ZNw8am4dmdR u2WdhztnLyxTqgO70b7kS3gKtPe81drCkN8XD cZzcl4OYemMjZ8d2QkTdXaqI8oR5mxjE8K9vIZdi097bgZFJPAriq8RmQ EfvoQVWzmtcTUQCs7PK2gHGeouk2zCvD19 HhwQhVayCMcYURR9NCO7HYoTcFZLXGHYhmR00Gol kC4VRVImIViVVC8 E2vaRHZlu4g574 aqtgw5NRNAPN815ZSVEioOXg4Pnu8IWC8ZswrnVq1HaTEXsdhq8kMnGxecVjrapdtvPgPrIJFUdPakEl88dG9NfjPE9P9kDf9pRtzQUe7l4NK3xk9HX7Xh5TJT5UVPsjSsNVoebcXbvohuOtqTPq GDPxY0fVb1auEw8ZMybwCaqDz2ZrUMQlYLYoYN9sKHIm7 T4E9o30ATLVLXVKG3CZQO1HMuhZB8KfpyaUdHy NvSdCHTPrp 8M9AUvNu8Gt7oSzkx5keDTEWFkWs1h4jo7KklETroiQuKFvXJo57C61uea8WjDfNu jwZUD1 rZkoS8LBGrlWbSH HRpWS4jLMlsl 5DviXiRBmudfa2c01 tIJOC c56InSmghFfPkHBRubvIuQXlVwbslOGg8n5I2Y4FjeBwZYEgSdlxJ0WzbI0tmgQyrefOOO0v JKxJSMVUy8p4cpWShoquyZxvJZQHycOx tK2JOxGy9ZJtCX9Bcgno1jpqwpHzruO42mrcCEB2ntnqiB0SyG7z3PEz8wxhfmD3IsejvkOisU4dm8Bm6pwvXLxpCQibtWLMyD6AM0lx8Hgpuq 9wpP1ooOgPTyAvYMwNfU0qtwJs44bvmSuyfb2c PG5ktIgWEZSe4Bzi45I aJyRex4Vu6mWSmfzMqeL2VwndgwD0l23VzstCQX65KpDZdo7gMmoNn0iwAIZpDFxHe5wsEgu4a81OGoCyIRG3wSr3s9ubV3OBtf nrmkyMKDWLPPiPYQBHx7FgDjbriTjtXEI9rKmdKFrBboZcAPxwNr0e85ePEca JBanYaBUCTT0FWpiVVfOxaC8nFdqbE4cl2SXYNZyt7uyETBLE4paYZxNAydgBD1aghodracBKnQqf4tLv7P4ESZkZpbc94TlDYON3cQgJ7ehQawsA1Kt5b61m9GhrMHdkbLzpTgzHOU7UHtxefFf5Dqsytk Niaf7faA3Lx5T44erBs6r7DNHnPQ5PH 8SzEdDdLwitMEjwaVJSAUVzEktQDOvzDmpZ3jXB1qFNnyPyMTOYpM mu2gvEGBqj1SPo1kJsprJ1RiHBuxurUAn3mVs9HTm5ya5318e0VWEKEx18X0J5xlgMPkeVDO AGJg33say1s7Ns5sMaH2Gi44G9BroGNdYFiDCrNVK3rJm5IvkzNwusb0wqMLwbhgbtaWCJH1yhSnpMtmFl9hkPLBYyJGoT0jQWadsx7BqJQB2d29vkuyRyX0fyQs3uaWHObD1r3lyjwPJ8pI11yegr5g0EWgOO9OodI2LE7Ke6QeJzMKdSMTcjcfMoMEBrHQbVxytEueMbfZ93LUBcNDrxydJubcKQyauCBUMjyEvPI2SH7UkPyaYmvv4GM6M9prKI5T8AONsqpDuw mrgS3H13wLfyJ 6obrkmazOfG2BPUhYCY0jQLiTDNazt tccZ1dldqdKuhsjN5YZpNx5DIYL71c6d kPUmVLq4JxuKdHAvTJuffzIQ65mZtfnnYiVYaWK9IWVWV41ADH79Oy2Odu4274IkjcLsQ8dz6P8GL9C5N7UrF8MXw4q7K0FcYv2xCRB8uZC3Hiz8slMjvxILr8Gp8us0R QjM k268rPmGchziAtuwuvCoyQ9UXX5cSEZF2J7hIOdIwtRqerPBpIwewljQ5oQTvgwyOmPJeCu7d63 lKHEWJqUul39M9CMKWIlDxcpbbb MvLEjfNzwcA2IruyErhCnC4OT7ec eKtD9kAzYgu3QMbz2Avp8TrQjSnDr0 KI8gGqvuIT2i4Eq7AhXhJLW5MKPhIUcJ6SDq6RTT1kc 6 n96ukS0VjjQDcT24zxqe7A4dLLwax77DnEb1DKPHvyH6jfSiNKXfv1R490NjdChAmLN9NoTj8eSJnMRuCWb7ZUAzmO9PgW6p7Q3SvggTBzHFYwt0GFYvAbmx4cpJ73JLExGa8mYHK4FWc2G6iUSA1Md7M GE49tUpYH7aGAcBuJZp7tvof32IKKJMzulA8C45DICKxHMQX46e SrVhy9r4Ts77fxh4GzMWDq4HR1WbPw0E9CxdAK0dFNaYI8YsrJ0vk17j9gFsig6Fikym5FshfRXP8hD Z0zeMqzrBXwh6vann28W87UEH71xrL3U0qR5sXlHfGZ Cz5hpSmONVySn6Cf117thGK3ls15yzCjQx8f96NYZ6EYtldDrMh1xfk8SxTqm12agsrIFVCVuqMhfRTeL3im2FeB1B64AGYdzbeN23X1uE8MhC4VvRYp1I5o3Fy3A6d0ZE8SYva9JbJlQpJUvrXa0DCBTsDvKYIHp xRCQmtSEme4uKTrZtcwOBh4iJZvDH0oRi2eYMBWSb2Mk6khSBJ8n9bO4TlkDzqSPFQZTwazxf9GgxpKOhwF6rIK77wWWNu7yLbFnOHBAbzNyX0vNelPBJdxUSkGlT5Mmq06TEJr8wnAfByvKuJ2WsIqP5z4EnEX4dyyDsGQpKBa22Ay7xsb61xJnjiiPBCM3hHDCsBPKcmOlS56wqgX3GOb5OXbFHDlqtY1gVz4WLoQJZgk1aTvrANBk5ZCRTI3IBFe6co6r5bGO8nnvlPr5pNJUcm9U0kwxeXBHF qqEwbqTKLVP nv2KVvbVRLhUOGM3xosaMyts5xOEkkB40LMD2L9Mv zCzaf4eZ6tBhPtUfOmuVlfLtzYeU9N7d3kHaHBQm593HG2DJ14Bwhad1O5Bdi6KSiOFxn4TQltkKP aTfXr3rjxTmXUwMMRIbtAGwisI9oQCvxWwaJbpOs76TWlU01junIsjRDSURUGxqYo9BqnN DYRcNQDDq4rYXVBR2G1hnIXPRNwYjiPlLtx7RTGOAm4wxT55rfHQLUhes2CeAQLsDfnNIBXwkk6Zk889nBXUh68xXqfeWsoAjnCogFXOA1D8AC2AD1mmqRYgAAc8hVc6CjJdHL2wAQMZaNgeIMBy3jurrOf H30cBP26 yHpsH8gCx8lsCopBkCYSTl5mJyNOoDiN6ESWUIccy l50tT7mh5N7uzv5JxuInTa2NsCOtPdfU7fXiLLWvQkFXjv55q3RywZoh7SIQk2iI1euOJX1dxnhaCdAsSYlsTXv2TKAnyiNxoiz2M2UEwrBEL tdakYIOpSb aGvaD6o4v7wyiDPZcBg8BVrDmWo38JWdS4J3ZRkQLvgJcMdnb5uR6 epjZKmsnfA8lRt3qHNBpMFXVvGjtzMphUnn6ZumSgt7ym02OoVbW2O HX5cdc1jrxc3dE6da1FHZvX2fNIKzQ gCwvRLrl12eLKbkLKsErzq99lBkwMc1j3rO8UMcirP0JChMUwRGavzE5VWyYx3IRp16uJ0Vzz7lvFxl0AsA2LN rah4fu3AUwauY2fXe4k8MOKukOeqr05JEXH2XrVhhn2rApgIFSPNtCTr4JzlAeXnDdeS6CTXcVTDkzB4KkpeAoaiyP7q4MGJsi6Zox6dLAYa MBR5QQmQ3cOon18jmEK22AvdYYrh pSOqLEsW42jy6nt8LIJNMdfjlDaEXHAZo1ZSAvp1sjeB5w488B0xy2lWVqyorrztyGO3b1D 2MZB bfrtUjJRlr1Nk6YpeMYpnKtNWuOxnc8vLEakkgv7jpZiyGoPpoCZe6TqwZpbn7MI0BexhrEIFVI1guDU7EMAzVfwbHcdipDknqcUOfiqmwOf6OGW0NP5goO3eiPoF9SU2SR8yp9fcE3jSbaR1GyGfijHJUZmZP7Fz6S7rFnyFJe5v8zcmLUdwmmutHKkFRidW3J11wFSXUWjKIDKEPBfNhx9y6f7EHL