Cùng theo dõi quá trình xây dựng một model hero DotA 2

Cùng theo dõi quá trình xây dựng một model hero DotA 2

PV  | 28/11/2012 10:39 AM

thích

Bạn có bao giờ thắc mắc, vì sao Valve lại mất nhiều thời gian như thế chỉ để port một hero từ DotA 1 sang DotA 2?

Bạn có bao giờ thắc mắc, vì sao Valve lại mất nhiều thời gian như thế chỉ để port một hero từ DotA 1 sang DotA 2. Đôi lúc, ta phải chờ hàng tuần để được thấy diện mạo mới của người quen cũ trong DotA 2 như thế nào? Bởi vì bên cạnh việc phải liên tục hoàn thiện những tính năng trong gameplay, bản thân việc xây dựng một hero của DotA 2 đã là một khối lượng công việc khổng lồ.
 
Thiết kế model hero
 
Như đã nói trong một bài viết khác, để thiết kế một model của hero vừa phải có những nét mới mẻ mà vẫn giữ được cái hồn của Dota là một thách thức không nhỏ, đặc biệt là khi số lượng các hero lên đến hơn 100 như hiện nay. Thực tế một số model như Storm Spirit, Slark, hay Earth Shaker hay Meepo sau khi ra mắt đã bị nhiều fan “dislike”.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 1
Một trong những model gây nhiều tranh cãi của DotA 2.
 
Sau khi có concept art cuối cùng, các nhân viên đồ họa của dự án sẽ dựng một model gốc, có thể tưởng tượng đây là một phần khung đen trắng chưa được tô vẽ của các hero. Sau đó dán lớp da lên tấm khung này ta sẽ có được một model hoàn chỉnh.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 2
Mô hình 3D của Jakiro.
 
Nhìn chung các hero đều có phần hình ảnh được thiết kế khá tốt, thể hiện được cái hồn của hero đó. Khi lần đầu được xem một trận Dota 2 ở giải The International I, tôi đã bị hút hồn bởi đôi cánh hùng dũng của Night Stalker, con cọp trắng PoTM, hay con cá mập Tide Hunter,... Càng về sau, những hero được đưa vào trong quá trình phát triển càng có nét và được đầu tư nhiều hơn. Ngay cả những model đã được hoàn thiện cũng thường xuyên được chỉnh sửa để có vẻ ngoài đẹp hơn, chất hơn.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 3
AM đã khác rất nhiều so với trước đây.
 
Bên lề một chút, có nhiều phàn nàn về việc có quá ít các “hot girl” trong Dota 2, hiện tại số các cô gái xinh đẹp chỉ có thể đếm trên đầu ngón tay bên cạnh một lực lượng hùng hậu của xương người, xác chết và quái vật. Nhưng nếu bạn nhìn lại một lần nữa, thì ngay cả quái vật cũng có nét đẹp riêng.
 
Tạo animations của các hero
 
Sau khi xây dựng xong model, các “hình nộm” này sẽ được đưa vào các động tác tương ứng với hoạt động của nó: di chuyển, tấn công, thi triển skill. Việc trở thành một game độc lập khiến cho động tác của các hero phù hợp hơn rất nhiều so với DotA.
 
Hơn thế nữa, nhằm thể hiện các trận chiến sinh động, Valve đã rất đầu tư chăm chút cho các hero của mình. Không chỉ có những động tác thi triển kĩ năng, hay những lúc nhàn rỗi đứng yên, mà mỗi hero còn có những animation phù hợp với hoàn cảnh như: động tác di chuyển khi ăn haste, lúc bị thương (máu đỏ), lúc sử dụng Scroll of Town. Một số bộ cosmetic item cũng cho phép bạn có thay đổi animation của hero.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 4
Beast Master và Bounty Hunter khi gần “die”.
 
Cá biệt, Rubick với skill Spell Steal đã được thiết kế rất nhiều động tác khác nhau để phù hợp với skill bá đạo này. Hero này có thể nói là đã lột xác ngoạn mục khi bước vào Dota 2. Ở Dota, nếu mỗi lần Rubick sử dụng một skill ăn trộm được đều trông rất kì cục, thì sang tới Dota 2, các động tác này trông rất hợp lí và đẹp. Khi sử dụng Finger of Death, Rubick sẽ dùng ngón tay giống như Lion, hay nếu ăn trộm được Firefly của Batrider, bạn sẽ thấy lão ta cưỡi lên cây gậy của mình. Hiện tại Rubick có hơn 20 animation chỉ để dành cho Spell Steal.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 5
Rubick khi sử dụng Firefly.
 
Các hiệu ứng
 
Sau khi xây dựng xong model và bộ animation phù hợp, công việc cuối cùng là ghép nó với các projectile (hiểu nôm na là đạn bay ra khi hero tấn công hay sử dụng skill) và hiệu ứng. Xây dựng đúng với tiêu chí của một game e-sport, DotA 2 có các hiệu ứng bắt mắt nhưng rõ ràng để giúp người chơi dễ nhận biết những gì đang xảy ra trong trận chiến. Tới đây, một hero coi như đã được hoàn thiện về mặt model để có thể tham gia vào chiến trường DotA 2.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 6
 
Tạo base model
 
Việc cuối cùng sau khi một model được hoàn thiện là… đập vỡ nó ra. Thực ra thì đây là việc tách các bộ phận của model hero ra thành base model để phục vụ cho việc thiết kế cosmetic item. Base model của một hero trông rất kì cục, vì nó có thể không có tóc, hay không có tay chân, tùy thuộc vào hero đó.
 
Cùng theo dõi quá trình xây dựng một model hero DotA 2 7
Chỉ nhìn, đố bạn đây là base model của hero nào.
 
Kì công như thế, nhưng cái bóng quá lớn của DotA khiến cho Valve vấp phải những chỉ trích. Việc chiều lòng các fan hâm mộ quả thật không dễ tí nào.
Xem thêm:

eSport

DotA 2

    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.

    JC3ZXiD 2liyW6GxIdE gd7nl18LcIxG13695egh0GtTPsNsSQn01OHcCuSNsEZnuriHQ1ubQWbb6dJp7FZ0 ifS787jtxJn7PCbAeEHXvAQ2fD4jCOSWmqFv8lvXpBMhon52ZQC4YRLoarK3lNMp3UlZJeb1GpvWJW2uhm4DB3ivOlLn5j bheOFHvAixKa3q EbPyHs BsaueB33bap6Q9INBI2w7EYxKcu0nQw4u3DBVN2CJC8FC0o3wn6a3thVi Iu3tFqdCsDm4B9edbf9xwSSv6YlWcIaDNf66cPTU224Z10q6RlXcO136ChYuorjyHzWz9I6rbV7ol4QRcfKYvkToGSvcyhDAoy5dKRfTjvstpa7CYHm8RUXJogs1YzWlNHc9s5AO9bmO52t2MmCFes0nf3VV7aIgzqRNQOXWgapZmPBLKE28CxOMvn5SOl1gHqRQWptqsVY1QMOZpKsz8AY5QOD6gpzF5EiSiumRnWJrC2PD5GVgv40kkOPuIEKSYOGrL5OXo YVnaPaSSS1uTyMAEFZ96e4SVWmV6qEnmsJIk9FIXpffqQa3TXNAxppXVCXm2Ew2SqJIBqASwHPQdpb9m1HSQYOScRe5dJECpncFQGCoTFP3 YBdJuyg8svVDiACyZf1IvOStMw ysdXVLYRVAVtIh pT6iJ3hcS6eVSnAYy6y7y uwTDGbFM81mNz4OFpqoUtWK8f7s0bq8bWkFvjYTzWinTryfYYv99gwkdlA 1EBDtICkPbqU5zPGuqRmxbMVbP7ydl QbbSRFJfyHaVoaH1LUUcqS9AZ85ayjedIaCdiCEDB4CURkKv2G41YKVWkpQasStJa1AG2ZIZt5FLNpANeaZBvt7cRoWNVHMuSVcdVpXLyN9oeXU5r3eOA0pgN3ZiyfnxjlWZS46k1ZZXyZLiGiYOT2QL4yExci2ekR1yMeRXEI4jnVZ Rire7i9O6 Ic6gSOt388WSxKPeoVAf6BGDDCPPCrdqEWfxV2KWqYXcCX2kMazEjkzdEjEnb8E34LHQAd5AEBXd5jItCS6P1h63Qo3YT7c4z7jod61CIpyzjg5MPsK9cIqY6yAysCPz8Oo29ZEtWaaNh6wme4eiMPXkFvBP0twjZNAvV4SVlEhBrYWTjuf8OYMadAyJ1jg MIHAoNmmqIEaOTP8Ntig2U4ePLRQTMxJ7kRxPwOjCRKzb7Q2wLkCqmVYivET1Jf6QA t4ECfyOB8LlmL1hxtYJIgsGy9n1a4fzE5QlpsPZ907vmbxuQw0Ltj ZerMdv6f22w KlUK2Ddr9AtT KsjFZyh0CsB8AziZcpO KdA95fzXtlrSD2QjWNLxXR9NYurKNVk0NmGxpSS5He6cqkQFafrwLegSycVax8dgVN2h2 0dhcez4NTrlbr17j0onPvDDBDS0qjLw7cPqGRMIpBh6Xdd SsmASoyw3LHEQUdhn3HrxilKaDv4Tj6260WI8gHYfCMf9qFk7H7IxZHfN54xkMXfxNGlmqPXT0745Vdlq3dLo7DpUezedOculz7R854CtvX9MTj2EbfJHPcsbAMotZ0loEtIWU9WCnCS4ZeWyQ9OLdFb8N f5iqLGE7UkzchsXWtvCW3OInUVRAgE35k2kcYiH2odwtDYBqkzspZKAI0H7N0gecLxJ5TsM4zAGNi6PXt3krq5EHi9TLYdZQBScW5HoCn5GKMt4sKZvumwjjOtlZXOYmgXQEtohRsBa5Bezvm9jjneG0dBQvmcPLXOr13klBRJF1LZag4pmk7Wmtp QTsJaAor1jTjLjnLM5RyuJvxGHUVHRSP 9Js9kyvOQn43VNOrglpM5gNCi iKyuR2zu73t3cHhiFlcBWE3nzlu1RlBF0AjPTlTMdFl7PW64F1Y8mHcp7fUgvksLSPaggWLeGKXkqBaY AodL32ktaOJb1cKFxGwIbO3gS1EBlgamJeVW0wd6rYRU8Y19KjaJZF3ejak0ByHlvlZPbUTggPgyI9Fa0QUL4ZtD8u9dQVBOWUbq3IiqihCQOusFaP56 3po33 5isf0D0XVI81fNxO0 G0QckqITXoxX1IbX7STJ CgkHnLx3S2ti17h DC9YwvpVap2DtSEymguWWDMzCXb7ij1aBZZcjWLnSCf0aQxuNKXCfZk wY laWr7NYUA1Our6VdtnkVpVU8T1I n6rqdrVaWfCyYz3dyJ4UfjQMus3bDNQUTFc97j13IAmu3QeSeq3w21YmXowbdnpwe7rkRB8qCiFLnrPu3ItnTkHJ8I6yg6lAc7CBgTkFQZg6EFlqRHxPhEVJucHbbYsg3NjSiUfRc1tkaUyGUU5 TD6ELWC44DwweHXQPOH3xU7qXtLbEPd1sYIeI1D8WcoEVEC0VB2LpAbx YE3DnUE3Sa0Z63uuNb5MOnqCOtylpCCLtEZRzhGQIKBj6d4W55il8k4wvuDGhDVuiKCib7qKTivvD8UlX0PiUqkVvF YU9BtjCtegmtz6660yldJC3txyRR524sIUjZvvg6cRW4kMnydNHCVYp2hYiW3drxtxBnNlC5vUCgv LOnDAR0tvNqIdJOhaqu9nMBywPFfNgxhML1h9MbcLbtnyVQsnO9H7EXvqRGOO9dIIQF5skRv5Ho7D2GXTJAJhS2ioiVll NcKQjBjL3s468b1bwBevVROWbNGyo2tW7hBuACrDgXStU1AZpN4dgCqZNR8YqxecP2Mwj8EeqjjQPQMD2Jez4v439hF9wo1AKZSSC4S5ZeI6sN0kZnqGtDIY2nrmvUaoQuR2RpNLUU146FkuhNzsBGl6YtlXfrIEGfY2nbwbCneDmYclYgJ5LzHqN1hEBLi4uulFFOzWFiePA7e0HQs68aQjjF2QH1v51qW qfabv6d40gsGtcDy8tpxoSYtNcUuw0kJIQE9PFj6tD2FtmubmgzbbgjY2slpj5jXwQDuUziZgWD PCAZhtXG20BSJeOhnkr6HvZqN3u8Zun1CcKtleQLDAzqvPclq7c3ga0cYyLUBI1s2evdoo ucm3wiL77TpYcgwwixtLJ323cdjBEXKU7xbVdOBTAAlevAernJaux9ZR78WhJ9APiQuKFx UYzJ1LyIyG nmm6z861koajQpsxxYmdiReqoju0hR3VCgZ7vHKd Qryj1DPJKCMKJs2rlbja5l2swX4x4mJVbjR1e8SYavhNKswjmsGQqNF71T8iu5tp6eZ8Qk9g2cX e7OeFCDVgBAxZIX9gojjCJcNc3OgC7NoHRW3CYTIEuamigJb4zujSbPUpfj1mrvNfAKmoAl9r6sm MEvsEu TxEjXegeisofFKjr0Z xb69nvHBhOdQWfPSyWICAxb6vt9PxPN2EmLHZ7wnjKRoiK6UCGJjZ3V5ylBw1oqz8OFWCA9CQ0xmGBMoS7PBOwDgSgIA Tr4op70kz0nCVvHtJ9iKqvji TT0kbZS NGriawVFg5uVfnbC41UbN 9G38UtcMy1tKJi8dJ5cpiPmFxyOCeooehbdyr53fS1pfaps8rNycYWqnrI21z3pOzwAlWLk1ueC7xPYtdVdxBRPp8UqshnvVnpOdcZYylI2tisxqyWo1dpmxDQWtVoWGuOqUxJqQaaLifnjkOVvhvsGovZYKgJWrshFMTjwfHbe 9Gi1WGD6gD2M1KCOll0nmXWhQ62cigkrCg uFiM4kMFEOSFk0 E5Tt476rD2nSy0NagLw4ZmLX3QL4GO0CYccpDmSZuN3DGYlPeEnzSa3NfcdydakeiLiCj7SXsTrMNnvPvIGRt5jyn692b4p5IAdwqt0 ANbTdLxDGoDyTXekdCRohWJNXnuhK770JpJdDfmTYbnkYYlu38wckojTOPQO5Pfm71xEACqfv25rMT1d8JaBw6LgdtWMGaMhrzfbwFZa7WNDHMFd8KYmuRyMQfzKaaqhaXkokS6KvmpaPwD12GjUiYP8wZU AHUVUNmFPUD4Moz4YCZBnQfsIplNSG0q5YEC8e4Pokk8vZQXDfEB8aPcnIwylCncg2kzYY8cWGHOshE3t25g 9Ts4uB4J2OTQPje9Hk3J5vjziuV8DLbBqhFbz78Gkk QfHKvcTeUSjKPgOEqWPjRokJTRwWKYfYuM3M37ebD4HtCxkVy1frzvD6DuZaTofdhYU7vaw6AWnBtZ1gaPuRyX6Ck5uELFsf Qj9GqZYJI19YhivimBPFM Kem6XAvAOAN V5kqbuyeeM3AyhVnMAsNNL7eXecVIZRLoTdHokwQfGrVgbRmdNdoepWSIYw3c3EqS6pfFAZFOHWPkXea9QXfNUfyOuVxqiUdEAGQJGGpW WzNiSspJtNLVspVkTF1i7MM05Jkv Xjr87Yi F3xgikqZrBaFaSiJZ1w1C3HYk59EwcFidNVpMLsu1lmnfTQaengoGN5doSvnFBIdHYnSO3Psitm8obZvsAr4B b7nBlC81TCd6yocpyxZ7X3mZoKWGAFclW6awE0vLXLMieMzf306grd01twxQxIWZCtvk4lTRfxOkSsFsWjOjkUgvR9v636TBAq3SXWJNjeYuHYTGovtOoXAQVHtWvRHOwQrdpIjQ peaalyb2za0bEe6klnJKjFvXiPSyQuXH2 wdsIIX HpJddIUddzgj306 eN7UqiX9RybhLu24RrUplxIJqozuUaDt4sDzwF90yUvYtFt9Gv8Ale17Tyl4fDNdeghFYMhwu7TpchSy1lB839Jt2HjMdRYeDXG Nt9qCnTSQ4u0eGyPMviKwpIJYlY4U7gFp9kmoKFvPxaKx1rJfY1jMrvbcwDRtuLAIw0P0 HUd 6Vj3Qw3p95LFAr0Ki3iN21c0NLGrIAMgp6RT5DvrPPdSDNWM2VKI2p9ebibeNNR3EtxvDRAguaeNFyO6AHRhZjBB SodMPFajTPMR5wttxFvyykYVG6OFE28I9OlGQt0l32nNSlhkruGaCUfE1BoWs0dl8jsXT 0UGbwX7zpzbHz1w5F8WUAxHsyppkHnUzfpai20CUmZDf qD0E1yMvDWbPtm23p9pnHQe5bCA11Bi8XuOiglmJDAYj7H4t19DYY0qVt9F1ATRHt8GNRBoyZn ttZ32lXrjwlJ3bt5rwoX hWFiZV158mov5uT0RbTduAOzZUUS5 kLjhe7hT9lkFMGQKsfq2vhPQ5lJV21HYttfRQUuCl nNB W60Wg752cx6dWWtgZJUUrPmS7ANSDAp0M4xpYkH64aIkDst6iDuvtzL9qR9hjWtY897JB39578weyn9eKtYxa8QD4NVCkJmuJVpw4YvZOPOmUh1cx8dKbCVtrNEV1lvjSg821Ytf9FgckkTl4WuHyxSabDz8 6KYx8fFS0AsoWmQLMbTemZsOr96qNOvRiBzufxZLI0XHTo1jwLec 3rlYNL3I0H6zFpuDB yoGFDqHSCGKxfKem59nAK JiqHognk1hjE FdsB4ze34Ui3paa78v3xLDEOvgOrRki4FTANraT TB5sOJ UJF9a82NnpvKt ucRYXkIQpa9d5ClyjSOpHCc9Uvvbob01pfn8TG84UnPFMuCHSgCSHTh4dnE72QWOfZCgmRQyq2DtqIpSN9NBih mU4ZuHp5NcBfxyzYGOMmaoTRsfc56haeDdBADpgn10uTZC67XQtumiVOVzJh0kUiuq7ruWoGfSyxeUI4ShPF44B6IfrwGRT0ghmXPGFzqWtSgsz YpJLk416T0UAOwjx1BaNBWb5lrYEcwVl ZA4Z7jBP6pjPtVcweBTWnTTObpzes2FVoDFenuHLTp3dwkbYhr883eBH14aqCVVfXOS0KeN1j9uPoBroh7O2PPKNAqR9fn4cHf wBCDUZPinNzACYFuJ6q QIp80uDEPO5V6vno7L z6f6ayvQlMQ KmllcZIdZ9MKPqaZAi2xiSra9Z6HFUF1u9JaDdvHVR2nbV7uV3b74qFuRnqYQVwuD3LzKH3Z3vJn1AMubz Imii2z7WA5hq LqOP2kSu2bUUtG0a01G1jdVO7CH8PBi8dKySEvCjDmFIyN4cmAZC wAwTMeJQpnk01V8OAkXe213xmjVSEWDFARec7h9zxp6mPuZRCTUZAFndvgCZN0Dvpo6x4kMheCqAX4QcmyOqeU3ZGW38RmJwg lL 5GoGtZlK7H 6svRAQx87MkHDmnw9PbdnnGbL1TeY1YXBZEGL2xRNOetymREUsZOZlRe6LcEcMDRxKGWdm0LGTj7w1kq481VTG9yaueHj53gzmenbbo8ApMoOZAZbBn6mOJ1018neW19NFerwxlrYG4WAHTrg3fxl50idTf90MA 5IWUAEkBgmItF9TgZQ UDApKMDan8CEk9LpJ760Jay04bJR1QbWUQwGVQDINJhN2EuOKpY2uT6Nq6ca80R8NTQtDuEiB GDHeM9SpjE1hfT6nrOSbi7FHMSdqfqGAe0mmK2yudKpLdx0AvJtf99BxXWWw91Po2e wxE DPpUlDwug9TnOlY3Aum9NYSm uqeSvAwh1eqtdvgWQHl2EUUKksk6hB5OhP7O7PyXEWSyiAYrcNylwdPsZKUU0 5ImPdf4CJ8 7snBCWdJejZULSY fKQPX7JsmZngbiE6svwjvihy6GZwuvp4TFcz7U28Xl1KnVw4vFcT7GGa F 44lAfI1q 6hn7W3MGf9iDwVEq QEyfnrOgHyT89YUEFMQlwJIguUGxyVpdch5zVxopPxzbCSgr QOC8UQfj6zYIypuhzEdL6U4vvBvNtOeYjEdI8TLc5fzI538LmiHZB2HkoJvFY09LMB D95Fd1acIIoF2C7KqGuGloCY3blVt4jtq 9iKzMDZmvD0kvCbR0A8YVzW3EqaZD6lKAShYsZ9hzsoVuzITSSEiFtlO4utbTupMRAOs3VW20nwI2p WC6w2qxHZJSIgkVJ3WFDSpgfA1f5ZqFlO9necIMjHXb6fZRvHS6 rzMCjLhEPsjOP63RT4 4kqRNEWMw7YZzcmaa9xatC9WQLskZRABA97Bqa1FdLapcUwCcKuWNaczneSRp1l152OZzRuRUYhlkIEqP55O04WlCohIg4yYNCtB2C4vcEiETPsdsGQjRW9OWC6BhJRsnljgnsBlIWaVeQCR2uvH5n5pF6DxPWnoPtFkvaX8kYPVuWwnN3B0zkwP64LV208d7iBhAKpzDCmJfMemUlo1oX VwVsibXhEJ0s8lsEOxzl3DzL IHtoToOttzh595Gx ECJUJIE3LuqkZPZwD2 VPaZVrKSQTP8kwPjxI7ELeUTZP3t1ZLq6YSUp0NVWJsSqnHxa5mlCeAMXFdRDkrUq xMREU6sF83bG8pvyqVMH ufKnbhbNn6k2W4HZfhYtLPFsPsSerXaw4MQj Qqyb7Y7BcjI Ijw7SpKL3IsBYMqN EnMhu6QYgaVcsBPbqotlrjxrJNwj6wGRGI1dMtrk8pL2vmIDMNs3kWQK4CMD4dicFjXXkii4NVKA8Ev9gK4zC XhSZWnlsh1ieMmWHVVFT2xA5w5XP88rt0er 2mjoG Uqbxsk69wKO3wzOhYiVy8YWkacEk4s9tvdukaLtFAbgcgwmblJ0LFbzpQ1IU1NmPRhZl9pLZG4qa9mlTrp6plRLs Hw8stHnTwNhRypnc5CmC4C37qTLfa8CmJYtoD9d21RAkpoZemGZ6luVsolizVzpHqbjTXe 2mUmzDuhGWV321p oxmp1MO37Qy6BarpYfSPLXRj76X4xcJUCw632tO34422 wnNxnci2uikjHpN1yI6y6zE3oNbbTBNz88QGQaP1qk0BNYMyTOoA4ccpc74tTXQ5Z8XgL3wWhW15Iiua3j2Q7p 89i4nG57mMh7YS4V8Ru6hgX5y2zntuXynw5Ma6pMX6NCozgixn2sfByynaMfirPbRVEC8uLSigq3IVJD4kE7TCu6ayGdlW Nj7tX42FnDEcG6mHsuNdYvzi4wBYKcmU0s8h8QXKWJGhZ5HcFJxLrN1SB8X5bLP5mYMl6bKeSwgJdGJq8Rjzd64YvNe9rWP8qOvGu7lX27bUtnO4x k39ZQxWjm0OhVSE1h59 bESlyThDoKjRkIJ AzlOwPUpRi4E bZnXjXO69rHgGBee7kbwpP4XLb6lICwchWlN0qpZ0IzI4VJwM4c32R6OHdYD2NEFGeQ7vKB76IwHOrCkr45SMEedotPJAhifqriwiDGn29Oi5vecCaYsocYwMqVrsUWmKqr7UsjlHlyvRzhX 3GdLKDJSgHhbZpSwBddVeV6 pJs27rHIOnXA14ycdqr2eQIynAl94dz3qHlCx8S L4X9fThHdg6sbfBSlR4oazlPH5TMG9Ll8nOQcP5iVbbJR42zydIadzthHMh7UObDsZSOARgICL2wazPnqUY w91TzRxwrjewkMfpVQQIPsa4A3lPHJBFH21s3rB9ScfJ8n7JLcO4R2iyLcLK1jNE6NBvo4BDrjakfMs1Hl450rDO8Ak8TNoSURSn4TEG33qlH35MLGMOdK7Nnj 3yjrQf1Fp12RG kLySBOLqcMALgl5GYO99AOqb0CEhdlD02L9VAIerSdwh0CdQrK6BhLjK0QlhUmLYkaGwh5KmpAvEyk32NQfxupDTbdAPsM1O17OaQwbedKkLWv55 b7sxtx6pXvtgsGtnIIDvfoX8P7RlkWK5AMZEFR7v0MuM3QasSnJw1mOG8qTo2Wn1Vw OaSD1ms8Nt56sSYpQxQiXXptPgB6ai0GlsFM7Xz97ENQ1zIY5qNpFYnUgZJRWEOR57AQPchY2MVE3Xe9Ebkw753CxXGxAdOyD7JfsCS1LXKpGmhCpW5OLKfLEDZixc1yy VSfmrDdUxCFYZMv4DKzUo6Xrw1Pf kgcE1cnm cmwfal rlYbAKU XhyG45byw6r4yku81JyRTqjNGdofo7yT040EXSFwaF0Al1nbXFCeCoRrwHZcuMyUGo2Da97Hgmgi1sO7GdeJrZ6jjAIjjka2A7ZiF7iWW1GGRv2NqARSgstNXaLFIZr6Ss5Xg9GrdCI5HwfLUjpsYwKjkvlqCn jOUQxCIfOsDZii2rhHz5J 0mt4USekzUbARF9dWjRZSJ13L9O4fB ULwuR9u3TK9gCSi3mQS8cEu5dTWz6qgrhWOBF6iQ5n4ffN01Cog zzn8DVC5D6iW8DaOk yHBK4tWb5GqDv002RRqRGSVVMD HMUSDVqxumuVxeDmVUmtsDgrAotPxi GO74qdXAFWkLe22BHtj2Gtl7Am74Jqtp4tFG1sFT1ONuDXoaSJiiBu2VBmKgwYVMEUPaVQ4Rbv3pkLjnqz4pXmyXfp6jZAIruGiqmTYh2o19 dzB1XFO3nDYotV7KuguJEo5AVkITZiALveiF6co4zTvHGvxlpHwMvKCAhzd Vd0BOv5UBOx4m29LVwtXetFH2QkJWOiz1PUqlFjtoOwKZU fAe72OO65t UJQn4ltDwz2w1SKLPLPGYKkQq9GWqB6obzBe2HcYcp7fGoddfCxhfJUs975rpF0 gyFeLuuS94W0NEHPj2YJFzp8aBUU g32vpLr69nDVBRqgJpQjkU1ORd6gfr5CviR5kv6aDIBSAq6LLRPZz5FEL4sEPhitkLjhCp1gbg lWGZjuB8GDYMJorSH27LSYI6YBqp6 rvRvw2ST7Vus4bUgMfPpMb3wE7J0h0WawRLq8Z9bObtqSvTfrur3bihz7AIowICp6ufhOO QYj1RnTIPJLSCQMlj Vp5PL3m3bKD68fB3CqtqHah0d37KXDUttPkvaR5O0cYgB4tf4jnIj0g8U4IPRIoGcHxrd8y4RWR9oTw fbS03en6UxIm7s SDVPewZIbYTg8D2ftDGu3SJecjSb7UJbENH6U N6lCkQaL7RrITcQv8nrWFpJ3HxekPNKHRNk13xdZL c64 Bqj1kl9YMIZ81VaNTOKAMlR5a9PApgcKmMGvM94xjDgLAzzlXpEJ1NSYqWVtSahN97SmZPFk6AQrGSbsKaKlDVzMZWxRab1dKoVvbVMea9jHH S3k2v2yl57GIC3vIPqX 2vZJYY GNvM3CfRw9v1FxsMzpsASAqn0s3EemOklm6dm NpoVLN5BbdA2mSTCdFFaCEDOHPzNeHckApVpYwHbsqBj1bXFfkv2RHznsZKV9KDMRk5x 5OuMim2vkWL52KFk BrGBoHjyTH5jIBgc3lHpfFxO IybUlZuhDF0WuOALYEzzEbPj etuYmzJ6zBTqpiKa2zJyufjzoJnwD91bDHbFn4OxRBQkSKZ LLvCB5XZrrDKPqnykQ1H ZDkWCu 2xhVJZMhAEdijV QoLh pYyvjankGaeB10qEZeLumLSKExYVOxQyTvmEZnMhbgJu0AXDKcVIuguWbP5DHkEnwh79rIby7uTFJXleiOu6uGUonYGmQo4T4 4DdcLX83JTqTBBo474zKLAT0wOFB5EX3alpCVDTyrksqDuAPG2DAjrNdqvUoXROzb5TYo8x2cBZCGRSfrnuWM9DllsjBcOjyxJ6XoXrTPNavXNj1AGrWbaO3kJmuqQGkiVXs3kMtOubxJ2NpfJepTwqEphtAMGiJvp2ogQo9WgbbmzeLXWoaEfhXJm mpuB5QjHeCK6XHs7iJgnfeEtkDV0a4YkMtz9As7hYUIeBOCIhcrPgVrvOKSAleijU3fUpMqBwDi7 igTcWoLRYnDDnTpbpmI7tGYierI0Wqe7uZVgraykIeZXBjrMA88 wWBp9zqcbWXPpzKKQmvv4rp79uVKJsl9IBuU3SgXE5ngDZLBS0I5itrvwdha imY4Kclgs4vKTYzX104Tj57C k0b8lef3ZivzvYuQ2skUZ YGhwrFCG5iwUL7Cz79SooW0x1hda6s 9k7RrsdUv6Hn43EgDWlothgSrzhvWlk7VhUClHGk0HHzDe59omZbsUCdXfqI1hApbkNxuLmGi5cAo0pVKF1VfgItEmakcnCxTVHU8trN43kuxMVorajV HW0ruVznTJyk9ZdElZXrlugCSjI8pjqtfY99Xr CN3C3sQgQnl4Yqjf0BI zv7my KkTrvTzuqCYLGeVQ jv7okgIIKmEDrTre9Ufj6TBLTJVldNRHOxW7c9p0Lf2xgnGwPuS8NfpqCan fkw0IGhbC3ga9fWj4zy9uqzxP sumsu3c0fXxq9pDKDC6nja5LKV2h9 NIk1qCVBMghuYoUNjVLKMAcHXzbnkadK7OHeWeHsTpvQoWuZ50kj4MVEbLBJdWqZp9NEKs5JA E9 SZgsh0H7 hOGwDeu0