Game "xếp hình" huyền thoại được tạo ra như thế nào?

Game "xếp hình" huyền thoại được tạo ra như thế nào?

PV  | 15/11/2016 03:20 PM

thích
Xếp Hình
Xếp Hình

MMO Casual

05/09/2014 NCB: Trung Quốc NPH:

Vượt qua những khó khăn, hạn chế, nhà khoa học máy tính người Nga, Alexey Pajitnov đã tạo ra game xếp hình Tetris. Tựa game đơn giản này đã ngay lập tức tạo ra cơn sốt trên toàn cầu.

Ý tưởng về Tetris xuất hiện sau những lần Alexey ghé thăm các cửa hàng đồ chơi trẻ em. Khi đi dạo giữa các kệ hàng, một thứ gì đó quen thuộc đập vào mắt ông.

Đó là các mảnh nhựa của trò chơi xếp hình Pentomino và ông đã quyết định mua một bộ để mang về Việt khoa học Nga, nơi ông làm việc. Ông dành hàng giờ lắp ghép các mảnh nhựa với nhau, cố gắng tìm ra một kết nối giữa những thiết kế hình học đơn giản này và những nền tảng máy tính có thể đoán trước, có thể lập trình mà ông đang nghiên cứu.

Ông biết rằng sẽ có cách để dịch những ý tưởng từ những ô vuông trên bàn của mình thành hình ảnh trên màn hình máy tính ngay cả khi ông chưa có quyền truy cập vào các công cụ đồ họa mạnh mẽ (ở thời điểm đó) thường được dùng để thiết kế Pac-Man và các game theo phong cách arcade khác.

Những kết quả đầu tiên khá sơ sài nhưng là ý tưởng cơ bản cho game Tetris.

Máy móc lạc hậu

Vấn đề là, Alexey biết rằng ngay cả khi so sánh với máy tính của các lập trình viên nghiệp dư, hệ thống máy tính của ông lạc hậu tới gần một thập kỷ. Để tái tạo hiệu ứng của game xếp hình Pentomino cần có một hệ thống máy tính có cấu hình tương đối nhưng máy tính Electronica 60 của Alexey không có khả năng vẽ đồ họa máy tính ngay cả ở mức đơn giản.

Giải pháp ban đầu, hoàn hảo của Alexay là tạo ra các đại diện cho hình khối bằng cách sử dụng bút vẽ sẵn có trong hệ thống, các phím chữ và số trên bàn phím. Mỗi hình khối được tạo ra bằng các dòng code cẩn thận trên nhiều dòng hiển thị. Nó không đẹp nhưng có thể hoạt động.

Phiên bản đầu tiên này được tạo ra trong sáu ngày và các hình khối gồm 5 đoạn của Pentomino được cắt giảm xuống chỉ còn 4 đoạn cho dễ quản lý. Có 7 hình dạng cơ bản và Alexey gọi chúng là các tetrominoes. Trong phiên bản này, người chơi phải di chuyển các tetrominoes xung quanh màn hình cho tới khi lắp ghép hoàn hảo với nhau. Rõ ràng đây là một bước đột phá nhưng không cuốn hút người chơi.

Thiếu yếu tố gây nghiện

Chơi xếp hình, giải đố ngoài đời thực chẳng có giới hạn nào về thời gian bởi người chơi cần nghĩ các nước đi, chiến lược mới. Tuy nhiên, game xếp hình, giải đố trên máy tính lại hoàn toàn khác. Cần có những động lực, yếu tố thúc đầy người chơi liên tục có những hành động, suy nghĩ.

Với một lập trình viên chuyên nghiệp như Alexey, tạo ra game thì dễ nhưng tạo ra yếu tố thu hút, gây nghiện cho người chơi mới khó. Trong phiên bản đầu tiên của Tetris, người chơi chỉ mất vài phút để tìm ra đáp án. Khi đã "phá đảo", họ không còn động lực để chơi tiếp.

Alexey tiếp tục dán mắt vào màn hình máy tính, viết code để hoàn thiện hầu hết các yếu tố cơ bản trong game của mình. Suy nghĩ về việc tối giản thiết kế đã giúp Alexey có một quyết định mang tính đột phá. Ông giới hạn khu vực hiển thị của game xuống, không hiển thị trên toàn màn hình nữa.

Đổi mới này dù nhỏ nhưng thay đổi toàn bộ cảm giác của game. Alexey thu hẹp khu vực chơi từ toàn màn hình xuống thành một dải nhỏ bắt đầu từ cạnh trên và chạy xuống cạnh dưới nhằm tập trung vào việc đưa ra những lựa chọn nhanh, chính xác.

Một vấn đề khác nảy sinh, khi không gian hẹp lại và bị lấp đầy, người chơi sẽ không thể tiếp tục chơi được nữa. Một lần nữa, game kết thúc quá nhanh và người ta chẳng còn động lực chơi lại. Alexey nhìn chằm chằm vào màn hình, căm ghét khoảng không gian chết, lãng phí bị chiếm giữ bởi các hình khối. Sau đó ông đã tìm ra giải pháp, một yếu tố độc nhất, không thay đổi của Tetris qua hàng trăm phiên bản, biến thể và phiên bản nhái trong hơn 30 năm tồn tại của nó.

Tetromino

Giải pháp của Alexey đưa ra là khi một hàng ngang được lấp đầy, không có khoảng trống từ trái sang phải, hàng đó sẽ biến mất, và phần còn lại của game sẽ rơi xuống lấp vào chỗ trống đó. Mục tiêu của game không còn chỉ là xếp các hình khối vào với nhau một cách hoàn hảo mà còn là làm sao để làm biến mất càng nhiều hàng càng tốt.

Alexey dành rất nhiều giờ để nghiên cứu các phần mềm, phần cứng mới tại Trung tâm tuy nhiên ông cũng dành một khoảng thời gian khổng lồ tương tự cho việc tinh chỉnh và chơi game của chính mình. Trong ngày, ông thi thoảng vờ rằng mình cần nghiên cứu một dự án phần mềm để có thời gian chơi Tetris, gần như ông không thể rời tay khỏi bàn phím.

Giải pháp mới này được Alexey đặt tên là Tetromino và là trái tim của trò chơi. Phong cách chơi của game làm Alexey liên tưởng tới Tennis nên ông đã đặt cho nó cái tên Tetris. Trong tiếng Nga, Tetris là Тетрис, và Tennis là теннис.

Tại Trung tâm Máy tính Dorodnitsyn, dự án phụ của Alexey cũng được chào đón khá nồng nhiệt. Rất nhiều sinh viên và nhà nghiên cứu đã quây quanh màn hình để xem hoặc chơi thử. Rất nhiều người sẵn sàng đứng đợi rất lâu.

Không có môi trường để phát triển

Dẫu vậy, phiên bản này của Alexey vẫn chưa có âm nhạc, cơ chế tính điểm và các level. Với Alexey và các đồng nghiệp, đây là một game của Nga, do lập trình viên của Nga tạo ra trên máy tính của Nga và có thể chơi được. Cho tới thời điểm đó, Tetris là một phần mềm độc quyền trong một viện nghiên cứu máy tính của Nga.

Nhưng đáng buồn là Tetris, cũng giống như bao dự án hấp dẫn khác được tạo ra cho một lượng nhỏ khán giả là các chuyên gia, chỉ gây sốt được vài tuần sau đó rơi vào quên lãng. Ngoài ra, hồi đó không hề có mạng lưới thương mại trực tuyết để chia sẻ trò chơi này và rất ít người Nga có khả năng trang bị máy tính cá nhân.

Thậm chí, ngay cả khi ai đó có trong tay bản sao Tetris của Alexey Pajitnov cũng có thể không chơi nổi. Electronica 60 là một máy tính hiếm với một hệ điều hành được viết để chạy trên một máy tính cụ thể. Hệ điều hành này không tương thích với máy tính cá nhân IBM vốn sẽ trở thành quy chuẩn cho máy tính cả ở Nga và phương Tây sau này. Về cơ bản, code Tetris của Alexey không chạy trên các máy tính hầu hết lập trình viên và người đam mê công nghệ tại Nga sở hữu.

Mặc dù vậy, Tetris đã phát tán như virus tại Trung tâm Máy tính Dorodnitsyn, các nhà nghiên cứu thì hào hứng còn các nhà quản lý thì đau đầu trong nhiều tuần liền.

Lịch sử sang trang

Một năm sau, nó đã xuất hiện trên một máy tính để bàn của IBM và nhanh chóng lan truyền ở Liên Xô. Và hai năm sau đó, trò chơi đã được phân phối đến các máy tính ở Bắc Mỹ và châu Âu.

Nhưng vào năm 1988, mọi thứ đã thay đổi. Đó là khi nhà thiết kế video game Dutch và nhà phát hành Henk Rogers phát hiện Tetris tại sự kiện Consumer Electronics Show, diễn ra ở Las Vegas (Mỹ), tạo nên cầu nối quan trọng cho sự phát triển của Tetris sau này.

Phiên bản Tetris trên máy chơi game cầm tay của Game Boy, ra mắt năm 1989 đã biến trò chơi thành một trong những trò chơi thịnh hành nhất. Số thứ 100 của tạp chí Electronic Gaming Monthly gọi Tetris là "Trò chơi Vĩ đại nhất trong Mọi thời đại".

Theo Cafebiz

    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.

    eGEmPpQkFKRDkPeAaSriLWbRKrjku1pir8ULcMLixNW0aw 8BTe9XAZjGTzS1C4oQ 1xnLjMC2FJ4VIn181wC3nJjC9IAmhHtsI3rLVQX dhVwIOpVupFlOOGcRBgryA1eYYqhKLyXnSe0yZeGYLdvZRyA8cxFghfemoWE3eoO9YHLY8sDkzL5ys0B6bFx7Vx3Y1snsl6uNVbTuFPQx8 2Ov5gpPC5p 7QQ1SMORexz NSZie1SH79GaXdQl7Mve7BQ0jdw2q1xVHtae0TR9DWM84nGugOLA2HmTp5OsHdLCI9KASddbgQZyUPoMNeIPPOibfWlnc7gRdZvSSgIEjTabYfEDhRcqPFSIg0RXkwGV3Lm4ANTsiUmuz6Fondc4BjsCPXLc0enOPAnVADvTy IBe9BIwyGtWVUgifEAXUa6MLJztUdz10LFZpd6ETHqZ7RNwZ Ppv2bWezpTxuyexrAA4Lew0H5 t9y7 NUoS 4ayuw6rkdIynKFMSU1ODlYbNKm STzTXM sabL1KJXyXxcrDnUBWmT7VakFRfXa83HL Didca9mW8ncgsYFhvM6UVFIfij7 aT6 mhXvsWx8UiHwJIS0H5 STlZbhIL4P3Re4f13Rrb99rDzOi0sSYz5Ja7QWwPALCAL7ziXFxLJrm6cemY9XX0XeUe14r66NnCBVhS2ESvWpZP2mzK7YAXQXm10zaoUmCDVM Cz NjiLkprr1GqxBMMOiJD6E1CKrengAIauklY nTkna8QEU05ghiRLNEwkYLNmp40syX3MapXeA7XaLDEDkSrvd9YoaRg Cz5ebha4aGJju2INKIJueWJWFGrRI45TcFs0wl1IzdYAcUufgGTmzgIdqKxhWziV2jgeF8vEEUvFqaGG8Ww4eiMEHXBzSNyE3Lh78rbtAAZdT4zikHLuan9 AuLnVA5WSThDNMyXg0SiG55UrO2W2e0ebAd4KX9tECPMqBGgz3Ys7qtk8n6799ftVPUPgwAGqvrFuclK0e IKrRqQxFowoDBaFqkw7BpLtFloS8hoDwijXQQtCHnrx3eZdoD1Ml6YNJqaQsdG1PsEsWVG4CSABsYMaybuIKMymCVI5MIJj6UwZl7ZTOwL12dV0bjdZGU4druUqngRgP83F oLnP4sUUvZosSiFWMxgd5TLyxj85WHeTNfaxlPSML5 leCXpca9x1mxtb zm8bwPd9Ch8cVQyJl8YPdgBuJuyT43JV4rqpkFwudkLDjwawaIPjRr4lozyEreaDnbSuvteZ5v2rMWAMVlMmnkowsvJg nFt kGVjcrpwOPxrQLMrT4dNkWJNMQTHww3Z2lUFX7dV9F8auEWyIVhrOBNKIgVKcJ6BkYgQVEKqLrjRUFvKJHvLpBE2uGgfGVaChc9CIef6MiV1BdmbSWmG5sFiGjq7VVCWFiUe1fq3zPj9O6V56krnJfdPLfkzYBWMn9bhLx Nrl7xkmfupvBDXj3PjCWLFVOSY4ViAtrMQZn8RXxz7gteuitjkE0ejT0iwArcQKTdwO5pC7l85yKhsPj5ciqZTrD4sTmNYeEDtoLKA33FRcKWYHJfJFciktgqE50liRIrMcXprqmJNv5FVi1Nso 9JGiN96JhbbQOQxZDndEexQ3XKill42seuDT5MQEmbl61HFbiY9tRrq7fJIXlL8tpYS3qblH2mRyv1T4HdazyhMfPqpDzcuPHFwi82rh625K24fT315ucWGGdCKDIwWsbEcKVdxvBFjXMsLa1Tjpa01sp7Uu92bDlL a9m2SKH2rzUH0CT0nZHNaSRSvWlunB93tpf1Iyvl3UX3PmdSPDL3CZ 7qWDdxjWKYqLpjrcHxyc5el4YLACWMmYRkSyC7pwSlhyJ E7Df6dWzuA8 1EYN02fkuL dPycFxPSVSnagPw8hloL81AQGknqu801TBQ1w1QKM4gnXBq3m7xN4hl8FcO1oCoyKkuLKRQn9BoThSxACTRyudN g9oCWsvaC7rgRq7XFAXrl2ubtoi3hE21NVhVQgw8kdO7og5Uw8XvQrimQHjZwU1M8EncwXfxac5PFGtY4eIVxtQ0f5ESxQEdnVz6p4atT1DXo91gJe2qcSCorv7iN1DKmKqLDxgn9r3WTaxxNDWUfQ76fJWcXDUPvzbZBe4jFHLTTgaJyXs7YCCsjv7zBI kJGaiQAvHxrqK2znRSnDdyP1ODeubyqOt8 jfFSftjKxggQ14CDNoCT2zG2dMYKem6u9AtDxC4fsFVOUKv5JDnKDVL3uFT4aIybOLnxTyuCSgCz09bSYs7xdPu9AzEDN0m31pdV0eXYMuiFo20K9tVy6rJHctC1SO0oSXEu12cAtxjDu1xNp18abi1UvLtg9cU2ErAWof2MHECrHvbjGSv98R6B35SLTU0iYWRR 3Z82k36Ae7ji0ZMxZVDv4exrZdc0JrNa60ByJqASE1hMENBOfgoVEeiajrWinMPGbIpgcJQ ELWyJUAk4801IX11g FSargCSUKfPWXyhaLQMfWQ8sgxCEIGG3IroW7Htx6ukhC 0dRcTkHvLz2B6cgA7GaVgjSBNQ0MMNieJkMT6FkHm8lqaDSyLZwHyJoHLiizHzVuzXUg00rnUHHWj H4hRSbDbQVA 6tGw1h0FMfRmOqiQqxeZKSh6G2QiyrlMWwy6XB86v9FbHyW849Jt9l8T6V8H5WbLdgZv8OfprGFVaRtTq8hvlMlSovz8ADxEWUOJ45d4TQqBZhAvWHFfRkhddZLsa89hFuFoTIB1BxnQIZ261 TllAk2xTkM8AFhAX8FLdzSap g4uCihTZIyTtagxa4YaOjfesRL4ej75teX6JBrEBOC1psG2AoB6hXgENohTVeCP4luuZ63NFX31KHFHfGXzLsE7A4zXu6tA7cb1FlC fZRKTNtjaICZvmfmK5RCc b9HUqSeRfxfYa Bi4hYSVZZ7U9MljwQRosIVHG0p oYZTgEOKMAXuSkZIOmhtNIx46eRHRKNp816GV6S2m7hqH8H3eTMZz6KKdw0oc8ylQTTMcg IElUdHxWi2cwQIEf8JLbsFiXRODoTsTDVuZiNyBHTMkvXJTJQmK 6f1OB0pl jZPqdU7uS34yL6blEJIawXz9ztnm3yOdpX0ChKZ2NVOGQrZrSXVhVHqirIRuoDXED8fjdGPKygZzD8BQx u50TPPrIYRaTNgxJuX RM2QAXMN0dxd3JTzp7exHFImulCEGl2d3EYSEjO72Hr lp9JoZ2rif0kPVZ2Kc7hcbw6DlBks vFE2CA iUPhZ0KucMAdRh65FiwbzRX9iNGyra84yu77p7m19Tqt0bzVSq8rr86fYElcHO73jD8K46RqelwXKBUn58xDUUpCLCf5CwJ7UXLBSQ5dCKsBNWMB56eSXM HAgfOOIANEHI6nYtBOG0vEg ZIYIau9CSFjV1MHlYlnATW3gzrlbEH9FYQuWXLRZoJbPwiNxEfanGbfN5I92OnzLnXQmcTzOTvlk9fdZzXyTSF4QYrA1DiTAyn0TGkrk6NAg39vK10njpKBXAmJDBbmqqJtDnfD2Oo6ReJ6MUed3 qCs1Wuaf1HwQnH17I5RtKbVWUJNG1TrJHvxSm7TZvJU1mDeBhdCc5bz5eixGJX1lsFDGGa2s0w4xYmre3eDMWqK3iwzOj9Frse1ciuiZQHLeLVLEIZdnz0BtNbYHkLVUnYpXpy0vds8SAnEjAqP7HGT0UhVoGO0h3TyNw8OxOd2F9931WSTh43prwWeN0LGR Lgku5WrZHZPcH8kyeyKYexbiJAUZU5WhdK3AFKMnpexH1ixDeFTps8c r98qu62Lu7MpaOOZFHFDiAWIoIjU3d0kZGeIeRr29ythILi41OFq4Dk4LZIFU8BE70ddgpUyt85i7IVR9bRaddOQxw3iicC0bTkx3x92vlMu6pqVQGywn cwKL LqPjG8yNb rhxQZwcpIpjBz40yxh8crIJWktL1C1Le0dpPHZGgxBBOwWudBsx fxLYOhVdGQXzswDA18k5MxrAlGo8JNxX5LW34tJke D42rTTVhJRAoKufhTo7xHHMUy10pVclvslTwrkKXtGcxsHlA2PAdKdVUh0cD4PUuj4s0RzUpbxsIwU7JVBO gOzghj8iyCfSLbAFh2IZiHLyrcmFWbvU6Sonq61TtK5OHGvQlqqrRrRBPS3r2AWTPt7px3cnv49pu26sqUhOCRQhX9rTNCWrj3gfOxhRL5SzcJhiUEsOuhe aDkT4zP1gjGoiswr7ISzLlZ6DAVbu3TIGNEPd594qyqCZzu4nwTUQPHcWekCq48AmMFKXjCp7S HAXiLXn0ao10lXk8zBjqprsIk7bPL5a7HbYstn5q9lcryFCaXDCNy5sAu wpQ6BaF49RpxplZH2QqEeVG6af407HLdImdnJ EeVRIkKxzARAMHXlbJyhlu28fDzV5iTB1qXQ8q71BemDhKwVFukOwyf 1K76D7cJupoGMvFkEhX8eazvlPMhNpQHDx3croLtRQFI1E2s09TEHaPsAq5QHykmHhoEYZVDDm7VLchkULhW1tj7u nbMlkduiifQHSAcZLii67It ON37m2qaXMRRmltpneXUiDUaWVrx1dkcFIA8JuONZTvzGeI6scyvNqvgxSYeNu5t2V6g2bFswX4oEw7K0ANnjNRdF5lRQg1Z vfL3qov5nU8pm7RQTCsgjoCZRSSkE3t9EtyrJsWHIuKDeEjJVIU5P KyeoZrjZxtFqif2xV8qsMhsRerC0iFsMTRoJ9tcCKVnbgXkZ9npuTsUw7hnjFjTlqSbSQbQBuqVLN7b9S3 1zW6tfqjGkDHHSHUscn6yQ8LM3R0r64aYXg5zlkwbE0w4ann7mVNy5oTdoBu5aWWWgxqDTgieUJgk2HXukzf5Uzvju6GHEDeASu9Kofq2Xx1AwEat2oXun7c6ygiJagIUO7yNgUyQY7MIUuatEkkaE3KHyTBdMExwnv4Mb2KSsXOpEGdpm2knDGgw9xHAUe2xdwTpMbwvlX2peNK7E5HwasC2skPNknQTmnf9EaoykQeeGfck5se1eNFDrIaKeivMUWHzPzH7RqyMXjolsJUFyWV2IPWJuZMX0zPOgezRdDmZ8q7wI5Vy17C53 0mThV2VzoprD2UkGQ of7 eVpg9zoWSDHsjbAEJs2SmKI1PaWY923lObB7bOTVnjWU ZaqdAGCzI4qfMTNfZIybJrkcms5U ps8SpSWoAWmExsxYJc3D lv3Ijdmguu kIncobecWET FlFQxR32zll1J1AUGbXEQsmlkWKRelttBoJ53b2KBqK4Q6Z9kLnwER1ndt540iiiA2xcwyXXHPbJ9 YMM4iIoGC1QmvNRihO84PaI7AqOlipHwrriiD8zmx o3s GwHuWIHDG0hU0e9kI31GYSzcmYLFMOPc1 PAYCCZyWsigJoKxaAFNAjGkOiRffmnmW9pV2yQe9KAuTqjkWoMX5HfQsRGZbkuKpEs fWWWL0qneUnD61XXeIn55168YC5mwazfuRKjtGZcWvUG1kXMWuuv8NjSN8uRr4o0uN8QDyIAkTTo0AhNqFQ8vK9tgUM8gYzEPuTSKKkvi4pFWo9YcHrUdpTAuJg0XW9jezdr5pM5XAHhSJ3uTrvf8tocROrx7jBqgaN6EBZNHehEtggFYEmA0BGsQ51zyEvgaCYYgiEwAtratDhGTqbG6LclTV XLRsp0ou9vW0jzVSbvgDHLEWfZ3KozsgLeQ4hhO8ZWthvnU CssMtZdHDfmIUFRmx14BmkArZJt7vWfowTvW c4VWmZ22LOTFiUpdtoxzp8A153lxHI8MQSVqfmk5I2JnvitEkGOXSDwpewwxap834 fv02ww0mjHn yqh9gTCipF4p8IkkHfLjiCz91q cNmOXaifCZtW3sQnZtiSDqo3nAFmYoja4vnifDX2VQcE02v0CDVFP wBSQAzFTXTfsT3hQRucHtGWcnLr7fFFfPTwEEN3aFnPQGFQ8 6Tj9XTcBfm7cLRnwdgUCm0KNhMgDuPnrNtJoOiXEgpCxdxyzdrXRdqpREEtjMNaRH6uxhtD2GpNMhTAVCroIOrIxRKRQSKv9UvbLlHt7FOMikhuPLm5glzPdchoSinqKQeXl1IB62FdvlInIXSBiuSfbOg9qxlZ8UnLD5owCFBap0kJsfPMvRQGRUUckPhB4Wd2JpEvZCRUaDTcrO9ZZ1v2qbCTiXDGEQeXTGDf2KsT6BOxgONzf4zFbJwSazev7XD6OBqKxsHL4TO9jX8Mh1HwKSpstsaNlSrMXlkHrYVrasgxgwyYJp6Edd4zZGM3irlYZvWmnuoZIym2iUHLdnXWMuITQLaAgGCNDfXse0sm0U4I6KKa qEnATQ1IzgM2N9FPAfPhJTJoJ68CFHQknEgWb5TLsn2dNdiHMUZrNElgw8I4N7fMAv0NlTcoy6SJexqUrdjiuSgCdtqMnsQHBrGAMHPJZ3 11Ev2S2RrHyOhG lpn dxZKFpwCno4qtKYqg 9qBkGDfpYpNL3lwVUODrejmx3MAaJI7eQh1MZ ZVw51 jELV3Ma8ZD1z qyWm2ZwXhx1bUmrIxOwQTKB0s6lVegeDTQ94h 01H6TZQ1yEOezbKe96h79XafJyCUbWagenALujyInsuhJy pkf3vRDQXHy5wOt9bDVitLQXpOur7JgDYsICLQxH65n4fjSd9DNXiiOf1YUKBLNBjy5huw1JsKqx0o6HoHdq6jnaoVktiQOBu0PeYs6EPakNRhwerOsHBsKcX0juDiR0tRpz5oY98Sucm6qZpTp7dPOkS6yGGFWeBH E31svFu6SkrlTsc8TJgiguuGfS0kRGm7UwIh7XsOKQbOGp8FvP9cyvcxjoBwuLPY9qPwvFESmxJHTMgHOdcdkFByZZiy47zjAIIOaVJHOzS spV5q3IsO2aI bhExmBuUsCh2rOOGZV3FpdjOrjO5JM4mULMKhB9Wng22Npxeu8oKyNavup1Kb9CQdvQHHxdPZ3K T5Gv4cJalZscmupM6rDy3xJZu0HrOiPMgKkhwHnjryXJFE9tIkgUFsUQsHPVurDWsfLhOn8UikTWEBPTvR3gu3w7G6dtdX9cufBdMfkxXjiVo60adGKpoz2bd8yzFNB30jCfmZriQwig8tMhSItGFbKDgZPckjlqJ5SwyLtvaI9RYdltEPchtkSyqqbc7MPEQfknojGPEM2H4WXbAocKHZKEBGizwEhbsUQVb1kP110UId8YQlY2UjoX65uKRVh5TraGRYnIAs4vyGv3IVI1zTkdc 7bji3WzL8xeMImOuh1wDCOdnfBeEXO4LK8lyoSiUUtr7brOsZ7144YysG7anbXTrFDiLFWtCTAY tcQtpvkEkJdoOvdfn0Gm8YCwP06jR1acz0ZcjaP5rw0rRtmxyx0M ie2 rzzpYiEHrZvcekVS7kOMpRjT8ZAb5HgcFzsUX3 ZWTSRxW7KfA10FtJn HBGUX4J4TGDAHIbEg1 k OtN9c2H0LAhEFbE76ewYusg7d5HwwcBzzjgYttxdpU2SR5E8cARjyEX5cauZgEFwZb6lLYvcDHxhJKuIRhYAAlKcbES01Ai4wC5wyQNzPetJ4J1fQ8qTjofQkt9cdaIeKTy4tvvWXeBeNrukIdUEwjqR67IOaY YSiuARHoRV b35NAxI0ED7bM3AHiwfzHM31lO52yX3mJYkUVxxj7zlNsNUdwPC7ua2Cxc1vL1eR1vuSkamqG4xkTXBUUWKFRzVShgSUT6rIsKr9sXHP7nc40f9JK23AceAyQwpg0fxCezyEa8xsPeCH7rWQNOrEvraHVDi0NG3rb04Hto zBOwCRR640Q hbuyj4SpTQ6EW a2loB3B113z09gCmsT wtgHYz7x0JXyIEtyryQruoEpfYthKyAxE7w4kEdCgdB7o1EoJOpV3Om4M4sSy2E9LJ7Thz7PwPaQVP3QzbhS6WEPL7kLCwknohMRGb9dgbzIp6y3jlTNIB6gWBfwqNvgGFpG078cu6PLA2aU8bUs4VbSJIvFgU6WxANsRF6wYEvRBO3wCGbyyI 213bG4XwXTw1jNkBhd48aIjMc2g2Nfr0iqK6HLsgFBKns27smtQ2vhY7m9WE3j41Ld9xEM8IoB2tY3SdArKgsttg4Oynr4VCNV9DP4zDRqurUyiMqpp ejzEiPjL13cCMnUnQB0dREvt0H5sj0RxqOFfOfYIlr0E4QMniRld3FxdYxwET2sfafSKqT1v8NnMzcKa8I3hCcLSTNyaDkMfhQJCOO 53PH9HpzO6xbJsMl6lNCqUu23zpraCtWyk8VAR5tr yxELWnZCbKOxWHYyO1wmgQJ 2Vn9IQ8xV8orSiKP2K5x3HxIIjtUqJuTw09XhSsvr4cYr4NQLQKwkd8Wm8d4BQqOOUq2kucDcV9eTHWyf9tcz5FtDAGMvuECIoXi4u3Oqo6h8E1HYLnKCFqw1T08ERE2oTYlQlr9v22XXXXFYlTVrsshCUOSvwfy2KeM1tmOL1Yql5nO7dqhnIBQPAMdvhqiu9 X6JFd6Uo6bguBqJXQR5UTaXvtQwyXjsOEx4wJQ6K BS5p7SVnHlkFc22EcQltRutTjIOPwvbmjrjTR4EMo18lQe5dgSf 9qAHMqgKlRZSHJSVZLlRsekq14bkE JnDNFENvv11y2uCr7tOuEsWEPY9ktrhs9W8Grh0ZD0iYduPeIPqyCveW8v4xCiYpKl6CZsRWSXjUMolyAKKgs46Vn2LafCnzt2uhoQLIn2eci6lQLQ8BwXuGeW5BVA5 3mDKFGyutPu8dZqZ01dGhI0wCsg1k3aWJAdJU27EvdKWvrxJEhUJGr4xjk5IzdEWPEKCjNWxsvWJfQ4JnrgmdYtwHZUfA3a7rHF5oDLxOKsA n6ICwMhmjcec8hXCtgHqFehputlilIGijhY4qXNHlO6fIu8GzzzhvQE5BNHvyyHaL1i2OFXUGah2FKWGWQwSZ7B8OkNhLhrPXEGdbb01kSmh3l22IhwfD0AQlsHA3hDHlym9wIrc3OqsMS36GWFBTl1uhL3v3CHlIWD94PsRQ4WTyIeDmt6QBhStI YHemMWqc5rlrgT19o u8mEf1E4mGswO9x4H5mT4twb9 ItDc0FOI1KumlcueDP6FMc8GItM9Y5Oh2NniaJKFYbFuPd rdRLdCjOeq5N0gGzXH4OP69HYw24m1gS1oI11DIypLTAA1mJKguHMaMBMuulGZO8 QE31IVKRfT ePfM44jk3VmysYTqhkpuuyd8S8utrnqj8QqKlQcE0k52AUJ5HuMSxfxq7cDg7wkjnEtm1FTyG4AVuhXSeofM3yOkExt0U0wnizdHbfUxckzW9maTQnVWwxtKHTEB0Nyo7Kaj5qjSTcgwlnnQQXAiYFZpSvHhf8ybNR8PArfKcjzS5VqNVEUROR3u6Jn2RFrT7mh9EWT3 YlIpOBh73NnFp4N 561xPF0IQXJ1y3DX7a3lEouu8Zl0xLIem9OzRZh0yQOZw58hmp8D7 2oUyptZ6jLOIv2SXhLTHgvtElBpxUh5cHteBijrEqP5bTbYY9nnHF4RNM9WyDbIdzzMvXJLLB7HkzPjps0dn9BQZ2Zyo7Y WN911lxXmo0pyJxQZjMONDB lynimJMjyRWbmf8UQuTsbCJWPhQ8axKiAvPhXI8fSmvf0arYXBCfTKaUtEXwrU5G5JSymmelii0VSrlVYTZqJvdfoJxUQCdMYw46OSFJlDVTLexrE6Vhl0k1Bm8s4GJu3tymCfutHwae5jW8IrUSF1lRhFLl4WaegIEr AOLDCYiHkIovrTIm1ztbQ8P2LksDY4dVdedlEpGm71BYuLRKtH6sv2LBtYnuHdDZG MJ feZKbOQUY5kbQnMbujGbkUTjv1rF1gLkyWy8pPNEA3G9hfengTHciCMcOvHva2owK8ZrCGmVWMlvKPAF1owN4b6bi YhyhjnlolkqJ8A7HglaLEKmkQqDYPHR5JaKOsYJkYrmk3RGumz7KBuV Je GTtCMvtUWj10QrUU3DQcIEUxzYBpbQul14fStXC74slpYe1N4zAePOXgfmAPZJ9w4cQhvrC4uSpab6JKMy64FQ7h9WxfHO4dcdUKkhndFV2us6Xjm2ek Q21qxtx83TUbLkONHe19Jv7YYuuppAmrMYZSdw0fuDIqdOkBpJrP4JaGiLOHALsgBg4r fg1SC5ZFNwWnGGhH6DbL63UfRW3sbZLQ24CyKdP7x kpnobta7NtoHN1eubaBhG9kRTFKDMU 0Sa2O HbgxlYiRO7VoaeGC7VX38VTKYkZDgAJD2mbEIEFci4F 1ASI7PNNWWzCj9i2KpRz8pYZQHbgkbMZBGnjVMcl69qqbZM rtoVTslzZ7GAIXI1m6 vx085MSQwf2GrBTVJh UjCkjVupXwTjkK84vFkanKVYm1CfCsgtDL8jzAz5aqXD4l69cUkkSRwWq0ijPofHoS3 ETfZPaR aH9DLrQRjlnVx7VH3ZW3vnAP4WRdnGU FcNamqLXig5lKAt4AwEVufqaW50rE5R676EiwFtkCTRqjpWvX2NG01ArCTu9eRKEc MgDep3cMpJ azMIyw3YZAm6pwxTR2eUNq741LOdMEeteooyjU6ZHMNB73KKmWMeMIw1Vb7DfZHwSTwGhgyPm9JZIXv8p iW76Xig1hZcInmssSEszifyKVcbSBTm8iY3DLOvvv6Mc2zCS3fLgDK6cdgzBIz5m45iwagYjQO oS8QmwjN0mMK6nSNR5Ec1nrFA7mCQqa3MPquOmG2mGICJupErZTdE88xWfu8Q5LDS488XzHlhFDCR0nG0AOMOAtteDTX65zH3sg3Sgfl4xj9HDSYaeamc2fvx59ZOT3NNirqN7m5ws45JsG7ZxUuEQ200VVVBp2kAMQKBjicbwFmPo26jnEsILVTVweCjELoNbHJ3ugktpZQ8x42ZBcKCy6pF6usuoSVGaDaYUlaIH8IS7KJNNuymDteCJGgmV89SmmCfyxnDmp8oNS3pl92jdHJmS2oXoUlTIpa2nuFOVoD4NTwNycsH0Urkxm5ysCIuisPTKlrBzw8EUX7DiI6V4z1EwqxONnfJSfjGc7vjXdVMBA9xM0mPaRDmxg6tGKKNmKBEPEhKjgEEUm8WwFWlX7urPlU UBSTj9ETpDTkSB5Jn10I3eB4R6iwMlotFyLSlTeqQoRLw mbTuSNYVnBNPOgI1DfaWA2jx MR4HFP7M9y0U61Fm Tgh7gdeP1rQUOy5p1JFqrNmYNuCf7 wCiqNQWCaKHAeZO95Iige8ZZVaUtGhEIOzQqHl6WBTfKdlXqSd8J9tmDxZP1mnqNsXRPnciHvT53kz50w79Jy3gL4CxobEk3f5u69fZjywF1JwJoix5GvoHFPAOjvSGFlCF0hKC1GZdXRAWbYxwz4Khyfy 52EUjMIcJqB74ezyJPTttXj6XZOl2C6BJKUZy1pX7X2lZU7fe3NwSsAHW0nbRYnsEVFxnM4eS0Jw5hTnB92WGdDJa7S6ClyJmEbQ7gkucVvfS90pUJxqFjphtl6D0OarIAzhezl4qf63aqnHXYh2V7ijHY3MPNGpnfmnjenUVMKIQJzkZsuxcxT7aWsaVKNydm5dDHSyioEcC3oDi00wHJrIQLcfZybXbaSb1tYRVmoqhryqK8wQdU2FPeSWIpnez8EjxgXsHngg5LRGnvEmozOaPrvKmf1kBEh1554 LIr4L SeR1TVGn04azlUD8YeKi5Fh9zPgQY cwJwaEY0mQG4UObVQYWebPSNqqD6UshMApBu PGT65wySx5lTzr7HHbMqhoOBwqquSsbi5fh4bR9zVVGfIBHW8ObM3PgHQC2rPHJaJ0KZccOfVTp0VilHFZRa9PzTS5UxhJNpUR4Ch 1McAsv83dRUjLaMXxpfbkABuuUqnT6TozrYW2C2l2DfPgYvy3cZ9an Jd0RYUs9OlwkJN AENtMB 7dgZzJfdP 2cmEJYpcxWVmaGkG6pzzV6MuocUFoGp 35zX0ZU7nlqjJwJqG 1ZSAF5cEuR3urQO0ZqaDWpCGGCkv0YOWyBUW1wGVeV8qswUA80nAZmMw0SlE8exugaPDmWd kqpo7mtJAufzbOPSQUKtWHAe5 NVHDfY E8u5kXJAyhSELtol4Sz97DE4MQk4B fIBYxO8tg uHFDzzIorDBe1Gc5Su5xO mEAZmORrdcbw mrWEPq4KQOpPkinOag1XwHVHybkH52iFbo4QVK8aJrLFdyH5TWzclot60lk7TQO5RxXpCa K25mLPIxKerbNNBR4yxhKdzBSv4CfapgvtbnTjqrpPYbfUbJZn22bDSd3YOGWqbzqgsNgvbaClMRL4j81Cruf1cRguLoANBl ai5DDEA5A4jSZgQnJeWamQi3qmlybbFWj 2uZgilUZ634HDbEnUS m8J1GbJBXSVWG6eensPhyohV2z0nmKmoIB u5mAUoPKASPUXuIZM2RrIjPgzP924k3IE9telindedZt0ACWGhJU4pIf9cQeaDK41thi2UMyQNGmaVgLGUgvH1hokh0E5mbMFYFCOJ9aWptGRFYwkmaLItNS0GsT KT4EzA7K9EAvyjnx6oPVENJ1KR0BwI7pD0hTalH1vvDFF9X90y5srpiu54dNsURakTe7FQhvCle4JVWMqjjflDygEoiVRFcJ04TbJ3kVhUt0oHlpoHOaEYh0jnjJQGGEY7Nuzyl45bhGIKlXZoVUsc3r3PNkb6tvO4JP6g7FOZf85kLPLc2ZvNwTvFmBjraZhDEPV4oFGssN LKouvnrXmD2Mz7xVhl9J6I8q9Xb90qS1M5BDJkEb1HHikyTHBbsBY05JG4yqi8WEhvAeWvT1aZNbaaly87SplHtauOrFNeQco01glR1hO4zMt9hhaAwKxI73yoZvsFWc9nXV7Fq9vpbUgWeBn4ISsf4m5W6NNd4jOAKlccvQbkRIKFibAjdVZNg8Ur42tvFPT2eLQjviX5Auk5u7 hoRIWTKusvWhoDZaZlmKkCtGCyvVx7hs ry1KTIQPzmHbvWQX2pvFAXPJJFHl5rbITN0op6 dKJvNp5M9cmqUx Hjkn6JX6uKvCJkaIPmpPV6 MX4n7SzbMGjVswafVMODvsWW73F7WcLMMuw7O5bR8rPDaKLEo8zjVX0uUwaLqTXz7UtQR8nFnRA9g9TEDJPIz6TN16F2m9BL8LboopzrtZR1oNI fp2Q7ZmW5ViGyxjVlZvuppOjZVFfsM7btwEThuw2aFQEz1kod4blGiCJREFLcNN M1wyz08pXiEAVZWNXJRXP9 CSLGms13ZQ6ISCKPHRz0mSn7Je84g GzrIPv1dSA9LKRpaRINOsVtU HS8KSydaJ3PDqsZURw4qlTKVCg9bzT8SnKWbMDyZGOppQjjvQkmsQQe5ChQraq8iNRzLMdcIhRCisQo0iJMcWG48Gz4jTi0AdVm6jk1LWhb2bVJZ6tqaFScLrmvBwoAhCwgrTS6gWVSbaWMmgHGdBihOO0IQxcSG5o4VAXNnJvRxCu9P5g UIAyogytwgJALP6cXHnAxNO8esrT6Xx7TQXxhlzTMvMaxXZZkYf5qKmO3xKBoQJEPab92bPkMPQf5uGdjzzv2yqTBz82nwjyXlokfjm1UlKeA 2oygJAt2C0i6o6UYKeqDUBSpNwTrtWpepH5ksoR8r8ZKnYbLOdOExJpKRHlr4aQEotTRumn