ARM vs Intel x86: Lối thoát nào cho Intel?

ARM vs Intel x86: Lối thoát nào cho Intel?

Minh Lết  | 08/05/2011 0:00 AM

thích

Chiến trường smartphone không chỉ nóng bỏng ở mặt trận hệ điều hành di động với iOS vs Android vs Windows Phone mà còn đang sôi sục ở mảng công nghệ xử lý. ARM hay x86 sẽ lên ngôi?

Lang thang trên mạng và tìm hiểu về điện thoại di động, máy tính để bàn, laptop... có lẽ bạn sẽ thường xuyên "đụng độ" các khái niệm liên quan đến CPU  như ARM, x86... Những khái niệm trên có thể sẽ tương đối "khó nhằn", nếu bạn không phải là một người có chuyên môn trong lĩnh vực công nghệ thông tin. (Và nếu bạn không biết thật thì cũng chẳng có gì đáng để xấu hổ, vì có cả những kỹ sư chuyên ngành về khoa học máy tính mà tôi biết cũng không thể phân biệt được ARM khác x86 như thế nào). Bài viết này sẽ cho bạn có được một cái nhìn tương đối tổng quan về các khái niệm này. Và xin hứa với bạn đọc rằng bài viết này sẽ giải thích rất đơn giản và rành mạch, bạn không cần phải là một chuyên gia mới có thể hiểu được những gì mà bạn sẽ đọc ở dưới đây.

ARM, x86 là gì?


ARM: Nền tảng chính cho các thiết bị cầm tay, và đang lấn sân cả sang các thiết bị... không cầm tay.

Khi bạn sử dụng 1 thiết bị điện tử, bất kể thiết bị gì từ laptop, desktop, máy tính bảng đến điện thoại (cả smartphone và dumbphone) , máy nghe nhạc thậm chí là cả modem, router wifi.... tất cả đều cần CPU để làm nhiệm vụ tính toán xử lý dữ liệu, giúp thiết bị có thể hoạt động được. Có thể nói CPU là bộ não của thiết bị. Vấn đề là ở chỗ, không phải CPU nào cũng giống nhau.

Trong thời điểm hiện tại, những sản phẩm kể trên, hầu như chỉ sử dụng1 trong 2 loại CPU : không là ARM thì là x86. Các loại máy tính để bàn, laptop, netbook thường có sử dụng chip xử lý mang kiến trúc x86, phần còn lại là "lãnh địa" của ARM. x86  là kiến trúc xử lý do Intel xây dựng, và hãng này "giữ khư khư" bản quyền của x86 cho mình, không chịu cho các nhà sản xuất khác cùng sản xuất CPU trên nền x86 (vẫn có ngoại lệ).

2 công ty chính sản xuất CPU trên nền x86 là Intel và AMD. Còn CPU sử dụng kiến trúc ARM thì có ti tỉ hãng sản xuất: "Qualcomm, Nvidia, Samsung....". Có lẽ đến đây bạn đã mường tượng được về mô hình "trận chiến" giữa 2 công nghệ này.


Còn CPU ARM thì "chiếm đóng" thánh địa thiết bị cầm tay.

Khác biệt lớn nhất của 2 loại kiến trúc xử lý này, đó là "ngôn ngữ" mà 2 loại CPU này nói không giống nhau, tức là x86 có cách tính toán xử lý dữ liệu khác hoàn toàn so với ARM. Sự khác biệt này khiến cho các phần mềm được viết để chạy trên kiến trúc x86 sẽ không hoạt động được trên ARM và ngược lại. "Phần mềm" ở đây không chỉ là ứng dụng, mà là tất cả các thứ... không phải phần cứng ở trên máy tính của bạn, bao gồm hệ điều hành và phần mềm ứng dụng. Windows, Mac OS X hiện tại chỉ hỗ trợ x86 mà không hỗ trợ ARM, một số distro của Linux cùng với các hệ điều hành di động như Android, iPhone... lại chạy được trên ARM.

Bạn cũng nên chú ý một điểm, rằng trong cùng 1 dòng CPU, chẳng hạn như x86, thì việc so sánh xung nhịp của các CPU mới có ý nghĩa thể hiện sự khác biệt về hiệu năng của CPU đó. Ví dụ, 1 CPU của Intel có xung nhịp 1Ghz chắc chắn sẽ cho hiệu năng xử lý thấp hơn 1 CPU cũng của Intel nhưng chạy ở xung nhịp 1.5 Ghz. Tuy nhiên, vì sự khác biệt trong kiến trúc thực thi lệnh của 2 dòng x86 và ARM, việc so sánh 2 CPU của 2 dòng này dựa trên xung nhịp là vô nghĩa.

Chẳng hạn 1 CPU  ARM chạy ở xung nhịp 1Ghz vẫn có thể cho tốc độ tải trang web "ngang ngửa" với 1 CPU Atom chạy trên nền x86 có xung nhịp 1.6 Ghz . Để so sánh chính xác hiệu năng của 2 CPU thuộc 2 dòng khác nhau, cách duy nhất là benchmark: giao cho 2 CPU cùng 1 công việc, xem CPU nào hoàn thành trước thì CPU đó mạnh hơn.

ARM vs x86: Tiết kiệm điện vs hiệu năng.

Đã từng có thời kỳ Intel chung sống hòa bình với ARM. Intel thoải mái tung hoành trên mặt trận PC, còn ARM thì cứ vô tư thống trị thị trường smartphone. 2 công nghệ xử lý này được thiết kế nhắm đến 2 thị trường hoàn toàn khác nhau: X86 của Intel được sinh ra để sử dụng trên các máy tính cá nhân trong khi ARM của tập đoàn ARM thì được thiết kế để sử dụng trên các thiết bị di động.


Các CPU thuộc dòng x86 của Intel thống trị phân khúc PC vì hiệu năng vượt trội.

Trong kỷ nguyên PC, Intel bị cuốn vào vòng xoáy đòi hỏi của khách hàng: Hãng tìm mọi cách để "nhồi nhét" thêm bóng bán dẫn vào CPU của mình (càng nhiều bóng bán dẫn thì CPU có khả năng tính toán càng mạnh), tìm cách giảm tối khoảng cách giữa các bóng bán dẫn của đầu tiên là 90nm rồi 65nm, 45nm, 32nm, 22nm , hệ quả của việc giảm khoảng cách giữa các bóng bán dẫn là mật độ bóng bán dẫn tăng lên và kích thước lõi giảm đi, giúp nhà sản xuất có thể "nhồi" thêm nhiều lõi hơn trên 1 con chip. Intel cố gắng giảm những yếu tố trên, nhưng có 1 yếu tố khá quan trọng thì lại bị phớt lờ: Tiêu thụ điện năng.

Cố gắng chạy đua tốc độ xử lý, đến khi nhìn lại Intel mới bàng hoàng nhận ra những "đứa con" của mình đang trở thành những "thần sầu" ngốn điện. 1 CPU thế hệ mới trên nền tảng x86 có công suất "xêm xêm" 20 watt. Tất nhiên khi sử dụng trên các máy tính để bàn và Laptop với dung lượng pin lớn, yếu điểm này của CPU trong dòng x86 không "lộ liễu" lắm, vì với các thiết bị này, "gánh" thêm chừng chục watt công suất cũng chẳng phải vấn đề gì to tát. Thế nhưng khi đưa vào ứng dụng trên các thiết bị di động như smartphone, máy tính bảng thì mọi chuyện lại sang một vấn đề hoàn toàn khác.


Khi ở chế độ chờ, CPU x86 tiêu thụ điện gấp 50 lần so với CPU ARM, kích thước của 1 con chip trên nền ARMv7 chỉ nhỏ bằng 1/3 lần 1 con chip Atom.

CPU trong dòng x86 dễ dàng "xơi tái" những cục pin với dung lượng chỉ loanh quanh mức 1000-2000 mAh của các thiết bị di động trong nháy mắt. Và dĩ nhiên là chẳng ai muốn chiếc điện thoại của mình chỉ hoạt động được trong... 15 phút cho mỗi lần sạc đầy. Việc tăng dung lượng pin đồng nghĩa với việc tăng kích thước máy, tăng trọng lượng máy, tăng thời gian sạc, và đương nhiên là tăng cả giá thành. Nếu các smartphone chọn x86 làm dòng CPU chủ đạo, có lẽ bây giờ chúng ta vẫn sẽ phải mang vác những "cục gạch" như từ thập kỷ 80.

Nhưng với ARM thì câu chuyện lại xoay theo chiều hướng khác, được xây dựng với mục đích chính là dành cho các thiết bị di động với dung lượng pin bị hạn chế, điều tâm niệm lớn nhất của ARM là làm sao để kiến trúc xử lý của mình phải có công suất thật thấp, phù hợp với các thiết bị cầm tay. Và sự ra đời của ARM thực sự đã giải quyết được "cơn khát" CPU của các thiết bị di động. Với lượng điện tiêu thụ chỉ bằng 1/10 các CPU có hiệu năng tương đương của Intel, kiến trúc ARM đã thống trị tất cả các thiết bị di động. Giờ đây, dù bạn cầm chiếc điện thoại của hãng nào đi chăng nữa thì có đến 95% khả năng chiếc điện thoại đó sử dụng CPU dựa trên ARM.

Chiến tranh và hòa bình: Mobile là chiến trường mới.

Intel từng rất vui vẻ để cho ARM thống trị thị trường CPU cho thiết bị cầm tay mà không hề "lăn tăn" gì. Thế nhưng trong vòng vài năm trở lại đây, với sự trỗi dậy mạnh mẽ của  smartphone, tablet và chúng ta đang dần đi vào kỷ nguyên "hậu PC", dường như Intel bắt đầu cảm thấy "đỏ mắt" khi ARM ăn "miếng bánh" của mình quá ngon lành. Năm 2008, đánh hơi được xu thế của thị trường, Intel cho ra đời dòng CPU Atom, thực ra là 1 phiên bản rút gọn của các CPU dành cho PC.

Với ý định trở thành đối trọng của ARM. Thế nhưng Atom vẫn không khắc phục được yếu điểm ngốn điện của các đàn anh x86, vì thế dòng chip này gần như chẳng được nhà sản xuất thiết bị cầm tay nào đoái hoài. Ứng dụng duy nhất của Atom đó là sử dụng trong các máy tính xách tay loại nhỏ netbook, 1 xu hướng từng khá hot cách đây 2,3 năm nếu bạn đọc nào vẫn còn nhớ.

Atom là một nỗ lực của Intel để "ngáng chân" ARM, nhưng bất thành. Sự căng thẳng giữa 2 nền tảng từng chung sống rất hòa thuận này bắt đầu leo thang. Nhưng sự thực là quan hệ của Intel và ARM đã từng có thời khá êm đẹp. Thậm chí, đã có lúc Intel cũng sản xuất CPU dựa trên nền tảng ARM. Sự kết hợp của các nhà máy sản xuất chip theo công nghệ "đóng gạch" của Intel cộng với nền tảng tiết kiệm điện của ARM đã cho ra đời dòng CPU Xscale.


1 CPU thuộc dòng Xscale: Đứa con bị hắt hủi của Intel

Nếu bạn từng sử dụng các smartphone chạy Windows Mobile trong thời kỳ những năm 2005, 2006 thì bạn sẽ nhớ về dòng chip này vì nó cũng từng khá phổ biến. Tuy nhiên sau đó, Xscale lại trở thành một gánh nặng cho Intel khi doanh số của dòng sản phẩm này không được tốt lắm. Và Intel đã bán lại Xscale cho Marvel. Từ đó về sau, Intel tỏ ra khá chuyên tâm nghề nghiệp khi không "đả động" gì đến CPU công suất thấp nữa và chuyên tâm vào việc phát triển các CPU nhanh hơn, mạnh hơn và cũng ngốn nhiều năng lượng hơn.

Intel vs ARM: Kiến giết voi

Nếu so sánh qui mô của Intel và ARM (công ty sáng chế và phát triển kiến trúc xử lý ARM), bạn sẽ thấy sự chênh lệch xa đến 1 vạn tám ngàn dặm. Giá trị vốn hóa của Intel là vào khoảng 120 tỉ USD trong khi ARM, bất chấp sự thống trị của dòng CPU ARM trên các thiết bị cầm tay, vẫn "lẹt đẹt" với giá trị vốn hóa chỉ ở mức 12 tỉ USD. Tất nhiên 12 tỉ USD cũng không hề nhỏ, nhưng đơn giản là cách biệt giữa Intel và ARM là quá xa.

Sở dĩ có sự cách biệt này chủ yếu là do cơ chế kinh doanh của 2 công ty này khác nhau. Như đã nói ở trên, Intel sáng tạo ra x86, và hãng này "quản" bản quyền của x86 rất kỹ, hầu như chỉ có Intel và AMD được phép sản xuất CPU sử dụng công nghệ này.Và các nhà máy sản xuất CPU của Intel thì không nói ai cũng biết: Qui mô của chúng lớn khủng khiếp và lợi nhuận lúc nào cũng ở mức 2 con số. Nói 1 cách đơn giản, Intel nắm cả hồn lẫn xác của x86, vừa phát triển công nghệ vừa sản xuất phần cứng.

Trong khi đó, ARM thì ngược lại, hãng này không sở hữu 1 nhà máy sản xuất nào trong tay, và bạn cũng chẳng thể tìm được 1 CPU nào trên thị trường đóng mác ARM.  Đơn giản là vì hãng này chỉ tập trung nghiên cứu phát triển nền tảng ARM, và sau đó bán quyền sản xuất các CPU trên nền ARM cho những hãng có nhu cầu. Hệ quả là ARM chỉ nắm phần "hồn" của kiến trúc xử lý ARM, trong khi phần "xác" thì lại nằm trong tay các nhà sản xuất như Qualcomm, Nividia..


Nvidia Tegra 2, 1 trong những SoC có CPU sử dụng công nghệ ARM rất được các nhà sản xuất smartphone và tablet ưa chuộng. 1 trong những SoC có chip ARM lõi kép đầu tiên trên thị trường.

Kiểu kinh doanh của ARM khiến cho công ty này có giá trị vốn hóa thấp nhưng lại có độ phủ thị trường cực rộng, và nói đến cuộc chiến Intel với ARM thực ra là đang nói Intel chiến đấu chống lại cả 1 liên minh do công ty ARM đứng đầu, theo sau là cả 1 lực lượng hùng hậu các nhà sản xuất.

Và kì tích hiện hữu trong đời thực, "kiến" ARM đã và đang đè cho "voi" Intel không ngóc nổi dậy trên thị trường CPU cho smartphone và tablet. Mặc cho những nỗ lực của Intel gần đây trong việc cải tiến dòng Atom đã có những bước tiến rất đáng kể: những chip Atom mới ra đời đã tiết kiệm điện hơn nhiều. Nhưng thị trường công nghệ thông tin luôn có hướng "chuẩn hóa" xoay quanh một nền tảng lớn nhất.


ARM chỉ bán bản quyền sản xuất của kiến trúc ARM do mình phát triển chứ không sản xuất CPU để kinh doanh.

Giống như công nghiệp phần mềm cho PC "chuẩn hóa" xung quanh Windows, các ứng dụng và hệ điều hành di động cũng chuẩn hóa xung quanh ARM. Chẳng ai muốn phải học lại từ đầu hoặc thay đổi nền tảng mà mình đang quen thuộc: nếu bây giờ Android hay iPhone vốn đang chạy trên nền ARM chuyển sang sử dụng Atom (nền x86), có nghĩa là không chỉ hệ điều hành sẽ phải điều chỉnh lại cho phù hợp với kiến trúc x86 mà cả 350.000 ứng dụng trên AppStore và khoảng 200.000 ứng dụng trên Android Market cũng sẽ phải chỉnh sửa lại rất nhiều. Ai sẽ là người  "chịu khó" ngồi viết ứng dụng của mình để hoạt động trên đa nền tảng như thế? Tất cả đều muốn có 1 nền tảng thống trị ở mức 100% để người phát triển phần mềm "đỡ khổ" mà khách hàng cũng không còn phải đau đầu lựa chọn.

Intel: Chưa hết hi vọng


Intel Atom: Có cố gắng, nhưng rõ ràng là chưa đủ, mà cũng có thể sẽ không bao giờ đủ.

Mặc dù những thông tin gần đây về việc Windows 8 đang "rục rịch" hỗ trợ thêm cả ARM thay vì chỉ 1 lối x86 như trước đây hoặc chuyện lời đồn đại về việc Apple cũng đang muốn hỗ trợ ARM trên các dòng laptop của mình đã dấy lên những mối lo ngại cho Intel về việc "lãnh địa" bất khả xâm phạm là PC đã bị ARM "thò chân rết". Nhưng sự thực là khả năng xử lý của ARM chưa thể sánh được so với các CPU 8 nhân sử dụng kiến trúc x86, vì thế sự đe dọa của ARM đối với Intel cũng chưa lớn lắm.

Thậm chí ngay cả trên thị trường di động, thì x86 cũng chưa hẳn là đã hết hi vọng. Hãy nhớ rằng việc sử dụng kiến trúc xử lý x86 trên các CPU Atom đồng nghĩa với việc các thiết bị đó có thể chạy được  Windows và phần mềm viết trên Windows thông qua giả lập(trong trường hợp máy không chạy Windows). Thử tưởng tượng một ngày nào đó chiếc iPhone của bạn có thể chơi Crysis ầm ầm. Tuyệt?

Việc Windows và Mac OS X bắt tay với ARM là một câu chuyện tuyệt vời nhưng lại không nằm trong khuôn khổ bài viết này. Tôi sẽ xin hẹn bạn đọc trong 1 bài viết khác về vấn đề đó.
Xem thêm:

Intel

ATI/AMD

    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.

    qnJ0Rk8pW8AAKgHRibdYtunPHP8c1UunWULrl2oM6wWRt3VemTSJXCH1YDmLIBSRXtQ29bY4oCba27vs0MBX10sCv A7uwhUMY7CAXJJMV42L2C6OxxlZ5jMM0mfqG6gUjtHEjMM5cfuPEZNIruuA1by5PUb3o7pjdWfmz8cWapfem78 4cpWuLt3PlLtEup6EovNVD8Li4vDaootgyzsruNIU3C3yiMgQBjxz96TXEtRRMYhJnDMIL10pAJP5HT4afzvB5LN0vn7fcU22a5wxq5VkKr1thKLNIalyoOTYQyGHRhKH8DobfbcFkxYkD2bdLebkE2V4kGLr8Op5OAUtNVfFZRIccLNxL8PaMiOF yz6rGxgzd7DUuXjHp1xXej2FHo2dDqZ OBj6eCz72veAe4ePt0H0rGKxvye3I zWARpKAnhRMH9XRJH8oax2 XFmKOX8oQmAi87r6C0LLq4zPlhk9c5DyK52HcdWvQY1i9IRAU9KSzMpA XMC7vmJAuawlfrOmo4kj8tP 7wR7C0llYPQ7N3Cb10uVytcujUdMTzT jYpzt6WKN7ZSvy5tCzN6LdVveYTBKIbfAKFi6XKtixGn82KlAvNduC3T26nmc6LkCBRK7mMjENNsGs1HZ8elFCw9hK2rwBs4oFs d2 1BOo5bczohfzHf8vSVedOL7wHkOf8ebUIQfzpEyJZqBpCj49zDyOMZLsLYzin1FlAWYbbX3qYrHHSMMK0C8EthKaMgawBIIkRrdbfz9 xINk3Shd7sNfD5AuKXXChwQTjTUaBzV2zoMzMaKvEoroanUVUYxZ7zVczqNxX4vJRCBeXTmY cV8cYQ7WFXTzLeotmxBtzZQvQcfR4s1N4bWnt3YGjvzi5u8nLMXsSTij 26JNrfbxr1edaHPCFDxRsPeZoTprBTPjKq1nr0RNUNEtHZZwOyXifwtAFgtLXUYfv1ckcKlEgSKiVNda1R rJn87bmfOkvf2cMlMQ1SKa1jd rnMEJERhTaaOfbFNwFwLWiZltav5SR AZmxzVOHNkObIBVlxc4Zr9OFIt9KRCVF2fIjWJtqXuAbEbXiVbaDdsjbnCqWfnaeiLVkGE691MA2zLdyMMGdnw12qldV6KT8LaQvAqKw3Ooky6glWmjCkqHUrJe4W1Mia6XongmH1iLkp7B0Y hPrNTUrEYhuK 6ViBtfGQg5omMCtIQ6b284ui6prYwzaYSD7 7GqonQuhyE33SlPV58dTy5nM540WxD3t6zCSBgKZRBQq5rsjiVhXWW2K i7smm9bwd7zzDM8mFiqdJMbzMOk3nWC1Z8Pa4OejnTk0LoJ5yYFgKQGI432xtMRzaqOdMCf TEg1Z3LKEF8xISymnEphCWZgciMaJOt14v8HK1YpFKxZbwEm30XxbwcaswmIRhX94SrDw15OLzz3jQxug8cS8aKJwT4C5edvDQMZ nsamYeSJ0Mq2r7n8JoNy jkhGod8zI4eXu1IYKXi K7 16a44C4hdKLEoGjWQvUzCjupsXjzVamUNDgsql49kIO6C34CWkyrmM6Z5MMJgfIEhKTVff5xfGqZTkyjtPAh8VvOipth3tWxzfN0lm6ZwGziZ3KJvOQLnG 2QDS0iO5SsyxUvWVMp6yNyxUzxbI4tYGfbvb7ouoQJbMsxXpCzOnp7xqi03XrFgJD gJYl7yka7RC1HsiU2WkaXftZOl1T1nm5Rsf2yNPPBQOatVdlwrlcBD UBANrL8MouWpTmfcuxtkilNRhO9yeS42YYG7Wx0lfnT1zr8QFblTiDUVnvtYcivud3aBQL3nbE9HmF5sXdPEQykzZd9CqCPzn1C1JymIN63IbdAFMOUCtKB6V26e7G364z3klbCyOfjetitlp5X0Tbcxf2RdouB392bxdmwk7CiBZ8ctUivreTROnIhgm2U2t3SLlvIefLPHqdHLSFXecj6L3t2lbhqgBtBU4sSyMSUxRPxKypSzKQhqKizyQvXVdPw4LHLrsbua71NA ZlzMNWNVgznWpf4xWH0jRxmPpTEmSvlCAfetyGOWLp27qago9q9cGKSGIyAo1BX8QucIJObIu94zcycDyjp4vcOoeUm zoNyOZ0lLsiwbX6WF7RNrXs9CXpvze2TejTzO3cROxLU8EgBdHP2Bl4 Cxgs32BDaROtYUiDp3rdYB0GorJbe19odql2UwCsiz6rb XJLknccznpf dcEODGP1cZQZJ7saemleRLDcJsdBBD4j5m6lSoz7mBzRksYC922PjT1umvo8xDXn1pq5kYxOqaf0NzWOzz2xYHldI71vlN3TszPonJ1hhrFTtXthO88sRrhHxypO4NCins9pMs5wTIuqD25CjeoMIeO1uZWduFjpwIkjDO3uyNcO5nxygQ1zcWnIkZfTbfsnErdFjhOPLhmiCFkUVC4aKztE4eK74ADjFGvLgWd0STYAFYCog2agzOHIaxy0WjA5WehGaJiXWQT1ozbvTsplQ9TmSVrX48m9waESOgxvLsSpo1TVMQsmrXuJRUEeiId g7BNO24j3vhS4axNeKGDIbL9zHUhjCdGC2Iir27ljNXZNDqsWrDm3d6kAvjBKH4jIAJtMxFlxy9Rq7Q3DUVg1VSSVSBEwf2Im jNqOtNvSx3BomVnAflim9w5WbLQWz8ru 9nuILdIKWZbISywuZKJ5y91o4tcXWmvADiq7ONU0I37pPC4ZJHfqzvb1vpzz1wF1d8 mNN0Nd8ubI JOLbk5ojdpZno8Sa3HWfaj xN3YkdwRXCYr7ad8YIo hFWzbJzC1XH5yVd65rGUSOyEW5R4x7wtEZlzGakozNEbAWEbjKhLFvqPTeMT9F Qt9Z0XccnR4VMeBFXn0C3em5OuXJPvAE2Hm bf12EBkVjtpYj7M7e76B3WByxecE4ZYtbysfVOJIDM92gQ0LKpJjLMXvQkxkmpbintnNOsjH4VSDS4QOy5ICOKN0lx3hqdOZP0VPOEXnMqEVjL1xhfu8xHb21yZRnApNnIqvVNWLVUYM2ELrlrKFK3aaslQoamrrMgXmvaaglLFI829zwxV2A7ytgGGKfgqMpE4RsVRkpBTp W KS9aPv0FdmEWiGImlVxlWrsVD4nQe8peB799KXhcQeluzu7 gNkce xoom6YEbzbonuE9ZQfiAcihqNQP DPs1pMSdeFzXpwC 61xCcYVKJCE531VLaAFJZmhy3PC9AC1x3IZET8qx4U1LA0D0SVg7xDdf2dzmgacXCWNcZH2e50zwqhWhDX1XnH3njgT5NLJIv1TYo5opJPEEXauJ3CtTQ4yiCl O37oFktzOAERCmmK47FVCsxNTIF60I1875GwtqyffMk7S9LKgB0zNaAKMoigtOhZo f9sNNdi7Biw6f6xCgS4ao6 QcPeBotpsZwDyrrDfzJ2P41hREaC5ofdEKZYcpYTlF68PqZjaaHxzBqvT5dfDsj7xNAcreH4bZkyD0864t9u102uOEQ2x2CKVKEgkGLLM7EGQK6qmMm gwnCobAB28JI9TcTDQjXdDg19FltbAJEueQp IfcrQYd3N37rKBlCBzBTRTqdizNubgNimIQdlnoh9aUsFe8kW5A1O9FH7XauxgBKDHmv6gbL0TZR6SfKDelr413BE8YZNrFBeiysTlmlZVzg7dyDt1XmUHdboJdMtDrZgdYAVKi6BzRLuQklVnnTkcK5jy8denT9fsV4anRs3tzH8lhc0HevVqReDHqZAZLs1VbqNBQLF2vjGOJLQtKEXeWhAPEnR5mAfx7uqzTOjLMVuI9rFXgPZqe96cQwz25juZ6L6qUmfywIDgvKbJxBoVxKqonQfBjoN9R4wX MwDzkte4mNDKnQ g6MtiUi3kpDUUDrMevfyopDV6ieotBySeqrfPGcpsYdaet2PrqeE5xw9UAimWug7s1tgMQ50R3qszvJI9I8WC6VBz0ItU95rb619qP4ba3 J0BU5LtmVv5deKlEqpaZ1pqzIsu70iOho5D3FuOq32ygRWOQG ecMYpsulEU PFsBO63Z9Ax5wZH1YCy21 Vtse2MA8jh1EWZEFeyaxMYNh84UF0Dl57XwhfI0N3DddQeW2cCFoRs YFNjet7Mw4ApKo UY5qrzv0ZHu4 4YV5jkmLltqj0RzRDy3aeSupYxCAeiqOc4cist1wrwzuDXLmOflobl0YQ2R9tpsElIKbjkZWeaZTooApHEWQBk UGIkc p2WwQnS1Anl2O8ALPZTui20KRZMpIc9yEBAOQuod0oQqewMOFdWz SJ67TseuzkNJLhvnIATphLObomSk54icBRVHu8r80qExKxbPBqghb5g4ZaO32HwgJaHjCKLRB6JtSh0 NYpSsGBHLO6dvh04Era76syalBep18CfGfiTWZA3 JGSCUE8WHSKujuXdOUY1Qh8Zy3N1o0sYHarvfciku0Dzb1vXMRaarU3H7ufTeQOSBItf4YfwNG2oCkSOK7mEDxc3IQh3p FtapQEChPpV8Ya0DdhsYSyX epeEWXE4sHGw7NFPxgTfnVgB1vrCnC0knPhbStG3036S3sm66XxCxjqAEoXKL77bWf5OTJeo7BAsbDSqsjuzW5JszT83kgNCkNgwDFoEoM93YdJwIZ02rbizcAJV6Aj9XKrNhuXDulT97BnNaqfSTfqKtGwvnrf6UMneBwqg5QWalHEWAkuM9SFQaRrQZXr4a5Sv 7DzCpLz h5g2hjkaDN08pMtHKtIRoFCiX49unsRewMqAJuDsyDKHmmBIbjSfs9RkFkdGE0OgV0aTp8QQdhI1E7vSaq8o1IDdIGwQTaDhUr86JffUvkE2bc4azeXdJ6V7fF8OC6UHhZotnsV 1VCw2kOzDxhI8KNiWN3ntAV5WljZjG6j5f8Y1RyxKWTsxxE3B3o9iON9bapHAq13FfZ5uu6V 29j1yT0kBrafbC2jKwCn2Un0bs4mACFIw2uNpTSJ2obKWBrfL447bpv3U0mPdCYC N2I3h T3ksfwIYuNecTCjCxG0BYmvs gxpdv93u2RoETcD1q7cSFQsuKo9FFZj1qouqJKIINRQpNqpulL7YZJfM5ExfwPJ4vhiAOJ1jNYTD5JtCJyDkU7jVjQ1pCShwawEaxUeetihW00RYXOq5YuY3Oo0zmpwCTQtNhH6X8etVihdNXwyebszXfBhC3bOzhG3BaOPbqIeym3cd1Aqrcyn6Djj98yqykDbkCoHvEAbU7tMNOarfRtWGAyV4RqMQPpDxkWOzmHJfXg86doyBO4EfcOOgMGSHCvsVuS6vQekGOtwXwHJ5L aJ3AQn7rS8SMgWKdpdE kiLQkamwRGrmOY5K73mk7xOED5B4h3JRojdUsUJ9E6tW6lonV cun d0tEBDnnzaNIDYxXlOM56O1ID 3s2O7VNW5rMaz2W7IjZElqq5VMnGmQ 7OuOsvB6LeuDl10gkTO5yv3GwMPRe2Nbi XpgSGLBkBjD5GR2IfTEUsBBnlhQHkvfqxWh2SrX57KxaO5RJAvxQ9EIvqv5GnoDN xvMW7q4lz9UVCJ0vq9IZD b9bFZNtjeZt MPD7cGvNI4yUIG5WgMijHLn2nIjQWxG xVs5WXCU0w7NNgcjqnpEu3uOwxoBZp5BALkoY3dBt29WYlEcrlSVk0OHMlbQFhZm93AjCZS cdPxrqx dR0Je0N5rXIG6WlK8kFeC475kTO4PVkYnrfmLjB1tXolAeK30VU wbtsRCyQAj2jFetPZ VR3e4pjCauzJxHZsWklwISPsg0n1pPpx3kuu6kLhWAIOKPSXAmu24m90E5SUiwVkxj3fp15bMZDlVuMjudvKStwWKX8DuepwnDmtv1QtQJ1a1OMKK8Gc6a0C9lR3LKIq8AqWjZyxvkMIHLRS54pZrAEcQTpuNuhUeAb GHR7ob3rI3wr3z5RHoDaDbjkgtQgxIapsaY108EfB5nuG14FdoNhyT8LyQ2MMyA8a9ktLaV4mUjSW8JKA GfdlF5U jMExN3OtgaZX1Hr8jl3DG64QXU tJiG1Ms2KMV1fr8tDKM21NLdki5guxHdUUx0RoStPtsbNBwlNJ2zhcc8dcHlWOTGUc5VDznC0Sng44863yolszPPk1vofdhRahScfv5qVHCF4trCijSs9ZsMbebOQ2v1q9A bdr3D6LGt3K9Jqn20rGCS1W1FqWM5aDMV h2n2rlWnjTKLeHRhuVBTcWspD a6DtSNAgi XUczOGQD 9ZD4Y3W50RoHLkzzj8LIANsKCJ3wD4Y0UMeafggc2i6ej8CMCnTdmR7yj6b5oxwsUtUBC890oozzXhicM2mqMnZtq z2PkiYjCUhDqAEBPwSF5XuiaAKxz484d7pB6ofbihjrZoCzL2DM86pc5WjvTwouI jJMwnDXSHORTNQ1HcyaNeaT8KJWG1U2nRuSNZUrm3JRtGFaM2PdDjDlIe12qFdsGGORFMVwuKww UPtkT2EhEJQjrHPODQmNIH61nZwOL6LtwIlWzL 1Spbgyx9lDH5gJcXpqfbNu4MjRgM8q6LvXEISbqI6i5clr vhSr6fSEtuGF19RjHoju5tjshH96pqyXh76jnScRf6tsma h9Y2hHlXkRaQZv3fB4ESMA0TTOjqaw2lue48u8NH ZqnP6ql8DzPkhjCCByFKSbeOF8ZlkqNRpurRQrKgtEp6Ghyobj5wpWubrawvJzqOvPyGTyW43xI8dD zh4qmjsu7EqSU9YlFYqVOYo93 nHGEmnXz85szTUlGJNrOZizY7VoS79QpL36bxLlXYqVjv8eb rkCmmgnzh XkCJguhsIBxREWXHdoBLKcJWGltG5hUJTBYwOip3zzd6k1jSXwxjaVIAzX8eHynFQlXVdi7dXXFMgiULKFuf4DB9fuh6FefxQEKv6r6bePZvkIMIANEeYYmZaQPzwPzLrMl4H9X0f6i27VJ9KGOE3NAeeb5s MgCcpWiqFi3TOxwYuTC8IPrtZLnCjelg2tPq2Q5LPp8KIpBdtgd0Ik1ZlC0d8HEvaQ1JZCyB1D5b6m8JItK1dpoWyjg78wHlVhB6W73m9LvIoD17EHWDgB0Pc3cWLvfhuMdfAqoKkk4t9 EZwM5DvopYdEF7WFFpqmEK6K4TwoQUi3Ayx32IYK2iTlxnnK8PClKGfy BosWcOeWhR87hjKiciw9BN7LaSg3WuYAHDO1jylQLtYBFWU7ln 97s0nsk1wBxuZEzcHvaR19uSKeSuaovVtHsiivH77BYgA6bQl7vkJgAo0vJzC0ooqAuMWo7G37T2oA0Mb5ThTc9 dzfi8Gq3CAX6jEAM1HAzXUxXCPCBCmGFv3XjlKdCKWyEnoGIVqlDwhjrY78CmWQlMi8KYYGH4CbWhHF3ZBKAw0gutFFh3kjYm3K3CawATepx6xD6bli8t9NFZZrJsIWPFf6OPxHra7FXGjuxx4Pdn7dEwykRRyJYv3yKm44guKAfNlIaOFheKlximaqQKw1Mng7BB0rbOaUpgs4uMNcwrPvLmFKCrwL6NKSY5aoSOb5s2fDZ8Gby7pYdrjKDiG47GOi0bEsT76u6wznUKVcN8xLRCOyMER6Y9i26AJYpvxm6cwUULeARVtHph5RGD5E1giQfKXDz32JQfWAgeLY fWFyDTwA9ARM6QWsk97e6a3Nvhz6Wbeq5d51V8asWDmbASWIpIIiso y4c7M4wWr6tdE8K5TgBpl2KxuHPLEeFR4z4DzPTmXqg8yMsLUwABv10AJ2txD 9PtHoiV1RNKZT2I26wgtqowy9aMJr2S2IbZ0dx 0ROredgE9r0wiN0leSadkUd7qBsNfLo4tKT57no1WiluNkwrFtuHRVWVsPThcYY1rvpsSs7zszHNWbXXWbFgBFNlFDzqWQg1jJTsYS27of84N 5hLH9DQYwJChYItH5bpR H3xhJHJs1wCyYCnvZcUZWv6UiwDJPiJ1Nbsuwld8VBUlub614uamLMhRBHixzD8Nso4cJWqL8zsllHpQpejgDxyNjlMJ4U891WOPLiR36st3LEeqUJwkKiTQdhhKHV1YeiWqyJQLsgXQrsCjTrVsTjbUIXtykmqwGe0ePJ3duh8T9lfqu3KIeQcFkkhEOkqmTofUdLw03MeZGv7NOtyrocpL7KMHp6lMHRJ2WKK i0KLG0cVUL3apMQzddJlHy9wZyNSdQRmmdOtjWk2sDb7vskeRWKNkKF0QQAT k79xgUyUAoGG9SoniTSwG6cHu mAgn4Xzvh9MIzcAB05EGs0PhCt9iPmh0W2Tj9CnKAm3UzLbpFtcyY1F3sJVxTRnW PFbKP1W23XzsbIKCAyfnIbBTfOzTlH7A9WU31gpcw8tAUmDuAsKfxDo9fXheLKfNl1HlAtT8Tsdc088OQln68j139qzPmtsXs9 WZg7lVaSKKdNhi9xIATQR7Mj4M1myi6GJkHyF4GGLJU5xYyrElzv8slRIF00qRIefJi725x3cYWJaUEptnwa7g5NpDrjZrOnq9UIh 7ADl35eKGOhnPapmmfr5abt6V6uHPucE02OpLKAp576kdD6fVFX4RkdF7KKIE TDaiag2ZMbVbFKjMfE4iojpG1XWO 5bFnsLymyuNkJmwlwmWjkwzmw6D1hoPgfIVOltojxmNDPWvV4LQ9KXyHxL9OwhBLhl7aSJ8QMGQ gOKV63iUZG8PtEA2qQX1mOoIcwCuIvyK6HTNskhuOeqLaTu8ZCFBJDGLbedFJDcJIveRCFiMULB1ej5VrYSSt6pphb6PHcMy3lJLdfYqNMRs4z6Aik9 MvsVHNv44k7WkM3hVdvmVfvn9rdvKr8XdNFfZ7Y6WXdEhKQYF3R34mvjxeQBA1dkGdp lhN04eeZA8cOP3113Q67Q8a7mskchBBBHZS2C3P07C95DeLCYyq4uvDkkAKJ3IQEBgBJlgkPI9C0sGKH5DgmR0iiHFP8F30KwhwHI3lRuobSlNtp2z9GRBIBbMYoPWF1OWQbhDXFoeEK axCit6PInxg 9D ShtKJrlReW3Jkehqdvg1rU eIBxLSzZR7h3y3gi2u7wLst9DAzudQb3gPWftQ5et9tlCIFqQJPZTMbXUqmYOIhVT2zRzd2kmFRnIHgQ57fFtO37iXmZCtnq SCwqtaMX7K1C8BhkEPOuhahdpi9P9eo4thLi0zjr1aXnVIsZDC1pLOdmdxBBE ng70uFnHQZFqPSOq4M33yzdGE7lSxQl4X5XyiAMxmijAZKLpAc2JlBi4M21yPbxdTYEMRbI8stt0o9eNCrB5D0WDMUHT3cgbcWY8IaPxAeI4u1zMVHeU08YvhweSyEWl5azlcY97XxH8BQBCCqXO7kcD kX7vv4VXHOH023VUfhw3PHXn7CXQTcXNJ uiBy1mkewVu5nNf7PwYAPZT66pU6uMLJvWgISXtsMy2f0zK3eR3x84EHW3PfNbgbN5nnhJtytNe4FDX47L6Pu0 Tm9GQxyNs Wp9cIG4DU11m0kpfe3d4EgceyeJMowTNMJvXG3AE1nxGkUK2lOBzXkhMEzkNrVJgsSA4okxMILyRfAruvwe1E23vstfUA24XsGXSoNy45 j YHKhHsW3IfLb8FWfx43fdSycGHtVunMUKwTDcRc3iMKl6zS9mJIEaK09lL3BVJobBvsnNrt95lEHQsi4p22Y96Cv4ii7NZ8l6IObjkfbO 0wfPcRvzNcjcFGV7YXXnNZDoFsI8Qk0plAki8wklQWDpozEyImFpSEq41AnfT1u6wHKqbN w7MbYB89k7lDo8NcVw4YMKz4H7ZN7esVa5aEttrRaWjHAsVBHKFS1bd eu qfNa9USCxehJh7KsV31b5cG0H5a6PHay5hXzHlXFcy4CVqeJrkffNnUQynGpg6jrXIF7o E8tmpK5omQFCwjw0Exk0JRwP8ZHq bFKLUtktM6kO2 0MnJFPOPPreFBjjBY8n2KB0UbO0Y4Zri2JMzH02V1kG 1Az2b3UzG6oXJbK4oldMFnyQpdqDRx3nOlr5auJOS9pA5Ooil3cp vDQpHO04ogTcF6qeLbQD2InHNzYeU5QM46xtaTT 4yAka jUG0nIS0yRhUMTeaflnTNCoJt 12GeTKY3sAYgdFVEr6tNAZZKoEkENvaIrT1M6kYlrN5DhIStiOem3SuwCGixV164EqZjMuZtruo Z6C3 VQ9kxJ92aIkRnC7Z4Qe5u9asltDbx9Di1PaiKZTcbhVS l3sd2ULyOTrqg19nHDkcOfTxvZFJuwbfyeCLhO5dEShHmDyy0aLFSgztGnkUE5kD5rusEcFJu7QU0p5qqynWXv7XMOEkdDDfAOk3KFkOTMv5Asd3VT9vgt5P5WXWTJG6aU18ULbsy0woIDGvwKjmZwZM8RgRgVd F0Ra9Ro5QdseoIUOJAiHRSmRbIbjvNk52Hd9ygEWu2n3dKlJUXpzkTPmpZhZnQ50KVVs5pCWLl0nJuHzTwnPrjgCCV9PDTYvAaOuO BmP0hqUej bjWMjeFWkkuOpzFMmBNNvnvkQrieq7CyfPhNe7cTqBecDh1kkvvhFYSx7FRmuZyiS8QgTlM68ezVbtKVFuJQEBo1PBjNodLQa9imYg3lm2ZWALKrdlZEctjbPKojY8glBIkl WF5VJX9XRnRPjS7vxnOl7KftE8p5Yib6uvGSsnFPbPUrPanjbIBZVQ93uuELjOo1CizsK7LrvpwfHbwIVZk01SehB8m5t7Kv1Z yh6ltMXzofXc62 iAbDFCX 9VK45DEyyjt6y8sqYwrtzXrbnTq7rQMQ8XDWVDni6S4osQ4phdUJc6yag9zMY1b vHweEERd72eJAYCRXR8hQGR2G4txEczz7Rbz2oHtVMXlhgsMvNIgF3bNyeUHtwEjFc7s7vSi41LeHwomBljZmLD2N8RcsVaJPqZMd6nIYOZnPADDFTe69otQhgsiPa03kgfP1LpQJYCkS12vNrwCei68u8JM0wr36kbwvkwOQ3x2tSNGFScXd3Nra5YuGnK9IBVz8x7070QTsBzAHIjyP4uEDwETlTat1Tah0yTbJcBFrdXgbPwdaWJjHmEq2rK 9YNmJXvdDq80Or0Gu4GinvIKRLVEwpcRIvJG880yZW43askTgXp YDCt6nYMq2fiK7G8DbI narkZl7c xgFBI09ldLdZ 4gt9MwnKjk2w03vkgsL4dfdzNfOm6YHHE1lLvCgB3I 5Gn3veqIx5xWtg PjfcPRLZuul6FIVBPaWEVVLNtMy9iStU9FAgKklhYF12OWFJ8w7g5YFAifCx034plCdSg9ShkyRfnRyLedYlUUC7xKhHKtHvgFd93hJLTX IUTQDYGprzP7hM9lfwaAp63L FeoxTUciaF3AxwX6QJCU6RxDNd 41739gGbm7jRPVMUNQJnD9tXEYCK59O0jcEXmM9EGjuIpoH3pegEv4hp8I7iucDXnTxTibE86JjRpAc37ulK tSC1 SFeg9rYPl83j3I7cJI5VSEHasmaS2ym9SI8bfKgizizbFLh67rXl02HlaOSWx2fxOBnYRp1s9PpvbZWLuhWq3cFJ205IOnRpUVQWt fl68Ia1Il7VhhqtS2spj5uFbWAnHqrjrEYqWSJ6tSvQvgOu7gjmkj WGgQIVhW1k8CW wlgPb50 Nq6ZCj2LSGDSnwdVq3V2WFegve9xqF k0MWshFmk3vWsh7NSuXKFGOkQBWh1clqlE CEWcj04cDssit99wJnox0pFFgHugg3lnEdNqn2D3XcnyDqQH70ZkrHeIrRiBHFXWNj1W7SfAP25GDPHz14muGGni2vCJZD4DNt4fGUCaM9ZsqxrN3wyYf4LJfuhfinm6A9d7fMJC2hUXA5dSs g3a1cbBlH63H oWaHBcxdNG1f6NAUsO7PLmZs9sHqm4RkcZwZtVPZKTHKiKPzbhl4O2Oi2LqckSfcDDbotZNUjVJAchjTEoaKQ17PKdu5mi0j8B Q0vMwg0qDVmxsiHD014ph oq6SXERzIakr4C4ABYlG2Eg1FZTMgHR hKNqBludxXSIBEOh5ueL95pdgeUreUfjskUqECvVTNhYoFEX4lal8dhDKbK1g9mvUsImnypAoWkU9kzp kZCAUI7PaJYhmAUJvCb20ISB80Pj0nBED1RtPzQ4Dlvm4BE0ydjdonHgYgHxbNSMGCGHo16DUdVkSK9l6MmDjLWVLftbsLOllQALpoiS2igaEasreOZKGvEtn6snkCD f8dt2 l0cDLgPvrVvmKYzUNFpMbvQ5oxBgoyGxTHdO5TN0lfr8vNNUQ9iHUSMFHjYOfPCiZ4NCfv5wErpz BUsiC UVfjDJgJsOcPPgeFSfItqM79hhrpGM0Fnanjo8rlN4BGLLiSCqOgTvoU3ssKlzYlKAhjJ5CH8mn9MgDCeC322ly36pBjjD f3zULaAtOq6dHRdORh7GvpYECxS8EdGQeG8o0TXKirshl kt39SLcHcEIvRZr626QCP goVxHI9ge30H3lAu9DIekxtBJV9YGtqfHe5rm82b9tqKqVGHhFWyssRfCOrFhITgi lv3pspWD9xe6FkznbBRw5AigouukOAF3RyFJHnzIqZDtQeEBnOJNa1c4iANbiQ73rYXaNGYWTwnttig4HWcVYt00os42jhY8ciSpZq4jaJvXglG7XxGoOoIehiENTTIBeynXp4sd0jNXgi7DCwjmMqQYDkaPaBtmbUOL38TT5TJDuZd7aact5BJHcb4BXQ8AE D5 aNpmlY3saFYrJPk73W0KjSVmc0Tcz9nJ8zWP0TAvoe3SK9cNZMUxmkzU1gwokIH2AH4IE1jEweIl3uGA rlTt4H4aPkw1PjtGivn699aVqBd51Nk6FaXXnZVmEcnmvRMWo2ORzLmB7EFJ2Pt9wly12gZNeRYP76hRwvGRMYXW8AunmcwSq3Agr2z9Q80vx1kxJPNFkrsmS7LMLOb3cyO2q8NbsGYnzFxc7hFtH dMwjgYFeCCNC8rXxTAA0DIeQ73lLCPEPglz YNCkrZIBomwuciMzFZ0GHCIVjGa4rWOWOox2tEKqVmDpk1dawteYKYIDHlbgrS 5Yo0yJ22KXBaG9nLQ3EApO34JVnmxzYAtuumZtKOuoM0WT9 0miv8uZQAgPegsfczPd32bQA 7l1a Znij4ANlScsexriskmGYKzFLXmjAbPtMznjAxpkE83bm2vFvmaofkFpP9DbbaL7zWXKLJ9adq7wzKrwQxuz5fqFPOE9jRMkxbLnWqWFZOydLzOTQibh9Bv FHbR3rGBCM5KGFqL4uxTmzNvpvKNhcnKOwg XceTAt79YEg4sSttxTCiJw7x8jL5gwsTtvsKVmjsVlJlhYPDimPkv8MmEX0VRMDexqssgMrBS1fpE9vjKbjK16RmGfdfSPJC 0UR8ATrVbNfMoojQQkLNOX9qXX7lRhEyuy869gYHogEZce7kEnLdSc3tWYOAVHukh5hpXtFgvbS4erpT7oTTyhrzOuKH2v7vU0sybuA4mapwQ6ML6xDt0cLmdyxja7u F3zqzTzYddo13rAQn7W8xRYnfyigei98vd0Kg5LocJjyHsNYdgrq2rmTDiXTjD9mvJzCGRDc3TdFpa3Gr6ZCVpvG5tv9mt3R5ub9SNEoRQrDstIQvD5Df65gKnybXdPsCFgmPWe5ylp4yjblDL2PjhJTh0qxFdww3GFKOV6sY0nk7E5Tr6p2E4mpxi1Hu0RCzz92vf79MVBGzf Qmn3BOWmQQ0 piTtsF5eFmkponMtSxBiBjqxFhR5fKo0OXPy8nsupgGsUEjT93pQOrrx8bzf0eTwYzxJesQii92oalAkLxeO38Ztf00E5rbnxmKgF8tvR4mxsJ9A4zMgGSxLTcQfSQ0a6obuszubzGq6W0hJI36nYliWA6qaZ1DZe7g4rXY7LNp N8Xu9msk0GiXf9DwJUqIbdH7ZgVWN3rhYYiWHT2vzolUH5Tz9SL2z8GKnXDh X8OaZE0ksQsOJlrDTosObf4J5omtm1SkoGEBgLVUVxVNPlprZpHqMtPg0UDQZebo7H49g7yuhoYenArB3CPEzoccvcRL4QFD0ZR66B0B3HQK6F6YYXPkasZpps8UByOgpxbYAznisKmVP5b88urRDom4IDGOZQkrDwBxuk5Fm4pBc1FE3wBqrdvqCWrr6kei9aokes1D9QofUh7SHsj0LhX7LonO2iBiFN5SgyEQFLFzIJARL 6vmqAm18ZzGCMD54r5oSf6LjyGnrnP7NIckP 3sFJCh P30kqlt iInOlYT965lfjGbUcvYZ LWngXS7WxKJXZ2TURogQsyosRonqoYKY02Gc5hLnb4X3p6qhc9fcXIMqT0G7fgkSUvtPiB17QTebPA2bhyImiEpxL NvyafbI3o1IWHZ3P7sV32ibLgGxsgDC5qtBkP94K2IY nOFevsEy4Yc7UxzmmiqPOhxQ t8HCPiNRj9U5ZaHthAlrweU69 CjXXZ1kdiqmIoH5NQvqJv7s7qF7eZBy14gnNDlP OtakuBu1reuHMgJTvj6F9TUiPAlO61K96nNfy8rG2IvlMFsb8iCnVENxRN6Wg7w3UPVZ6HLYU0ymBtMT5 8hCYxznvLbPwTtYwPBgAyPLPAX0oQ8J4esN2M2ly9yefIx0yn9xYpQQPiI820xDYk8pkzUkxmSTjvy2ypzmA0v7mQlQMZhqDRjks88qphHrEKt5FKfQOBI9r l1PCspTW569v7DHYL5Si8awuhK4NuYmyyO0Fs6HOhJ5d6QWhU0p3emF0ACB6sEk2J ufDxYSxPEU9dKstMSKgcDu7IdwTOPL2tBw4Hcji3X2j92btIiKgg4aUhuFbTyKLyU8eKzKgzrtcRtEqW WJq142EPFxku5QvgG4mB24jhXBGJkkO21fa55EtjuqaM8tgVeNzaDuKnTZ IYELuMqGfMX6V7Wh3AjwlISqhBCLXdwBDs8pg7OBpbhBgEND9BGYUy2CJEmSnYOutXo2t6R3wQTKRDTthISyhdq1f15r5RyFjRUcMNSJDP4Qpc3yiAneptpdpP5TplArWJLew59TT76lDxw oTgZCLoeIjWCYqIJDnluia uguPObBToiUVN4uS04AxKoXVwPrQNrp WDicL7Db2lhv1JBJsAW2ZHudeiWKKjC24jzQGNSjle4HB5qUef2JLhH8SQV6A LOvtDAto2d8moWQW3HTI612kluFWn1Zqs7kGZDU7LzWmmqKZXtDhYQua3RNhyKxVw fgiHhrVILGo6ZaYPXUtW VREBSfqFiAFcK1mOx7p8fAUwoeluTxij14hRNpZZFScpItGZ5cNnnactPZJWlAqgWcXuQ5GQevSqfaa5s0XzpqGlEI1av4JmU3zP