["..E$ ","A'ArCa(~~~~~+|F6666666}.C(B.BCC*B.","DataView"," selectively filters and sorts DataTable rows. The DataView class in System.Data is ideal for sorting data for UIs or for database INSERT. We use the data in a DataTable by sorting it with DataView.","Intro."," DataTable stores the physical data\u2014the DataView is only a view of that data. You cannot easily sort a DataTable without a DataView reference. DataView has a Sort string, which we specify the column to sort with. ","DataTable: ","Where you populate your data, from the user or database\u2014an in-memory representation.","DataView: ","Accessed with the DefaultView property on DataTable. DataViews allow you to filter and sort data, not store it.","DefaultView: ","Access this property on your DataTable instance. This is an instance of DataView.","Count: ","This is an instance property on all DataView instances. You can use this in a for-loop on the DataView.","Sort: ","This is a string property on every DataView. Assign this to a string containing the name of a column.","Example."," We first use DataView to sort one of four columns on a DataTable. In your program, the DataTable may be generated from user input or a database, but here we programmatically create it. The GetTable method returns a table with four columns. "," .NET 4\n\n","C# program that uses DataView","\n\nusing System;\nusing System.Data;\n\nclass Program\n{\n static void Main()\n {","\n //\n // Specify the column to sort on.\n //\n ","DataTable table = GetTable();\n table.DefaultView.Sort = \"Weight\";","\n\n //\n // Display all records in the view.\n //\n ","DataView view = table.DefaultView;\n Console.WriteLine(\"=== Sorted by weight ===\");\n for (int i = 0; i < view.Count; i++)\n {\n Console.WriteLine(\"{0}, {1}, {2}, {3}\",\n view[i][0],\n view[i][1],\n view[i][2],\n view[i][3]);\n }","\n\n //\n // Now sort on the Name.\n //\n ","view.Sort = \"Name\";","\n //\n // Display all records in the view.\n //\n ","Console.WriteLine(\"=== Sorted by name ===\");\n for (int i = 0; i < view.Count; i++)\n {\n Console.WriteLine(\"{0}, {1}, {2}, {3}\",\n view[i][0],\n view[i][1],\n view[i][2],\n view[i][3]);\n }\n }","\n\n /// <summary>\n /// This example method generates a DataTable.\n /// </summary>\n ","static DataTable GetTable()\n {","\n //\n // Here we create a DataTable with four columns.\n //\n ","DataTable table = new DataTable();\n table.Columns.Add(\"Weight\", typeof(int));\n table.Columns.Add(\"Name\", typeof(string));\n table.Columns.Add(\"Breed\", typeof(string));\n table.Columns.Add(\"Date\", typeof(DateTime));","\n\n //\n // Here we add unsorted data to the DataTable and return.\n //\n ","table.Rows.Add(57, \"Koko\", \"Shar Pei\", DateTime.Now);\n table.Rows.Add(130, \"Fido\", \"Bullmastiff\", DateTime.Now);\n table.Rows.Add(92, \"Alex\", \"Anatolian Shepherd Dog\", DateTime.Now);\n table.Rows.Add(25, \"Charles\", \"Cavalier King Charles Spaniel\", DateTime.Now);\n table.Rows.Add(7, \"Candy\", \"Yorkshire Terrier\", DateTime.Now);\n return table;\n }\n}\n\n","\n\n=== Sorted by weight ===\n7, Candy, Yorkshire Terrier, 4/5/2009 3:38:22 PM\n25, Charles, Cavalier King Charles Spaniel, 4/5/2009 3:38:22 PM\n57, Koko, Shar Pei, 4/5/2009 3:38:22 PM\n92, Alex, Anatolian Shepherd Dog, 4/5/2009 3:38:22 PM\n130, Fido, Bullmastiff, 4/5/2009 3:38:22 PM\n\n=== Sorted by name ===\n92, Alex, Anatolian Shepherd Dog, 4/5/2009 3:38:22 PM\n7, Candy, Yorkshire Terrier, 4/5/2009 3:38:22 PM\n25, Charles, Cavalier King Charles Spaniel, 4/5/2009 3:38:22 PM\n130, Fido, Bullmastiff, 4/5/2009 3:38:22 PM\n57, Koko, Shar Pei, 4/5/2009 3:38:22 PM","The program"," first has the Main entry point, which we use to sort the DataTable. The final method, GetTable, is a custom method that returns a new DataTable. Before we can use DataView, we must have a complete table. ","The GetTable method returns a DataTable with four columns, each specifying an attribute of a dog\u2014Weight, Name, Breed and Date.","DataView."," In the Main method, the DefaultView is accessed. DefaultView is a property of type DataView. This means it has a Sort property. We assign the Sort property to a string that matches one of the column names (\"Weight\"). ","Strings ","string","Finishing the code."," The first for-loop displays all fields in the DataTable, sorted by the Weight integer. Then, the DataView is resorted on Name, and then that view is displayed. ","For ","for","Output: ","In the first section, the Weight integer is ordered in ascending (low to high) order.","In the second section, the Name string is ordered in ascending ASCII (a - z) sort order.","Filter."," You can also filter your DataView, which allows you to exclude rows. This means you can view your DataTable with certain rows matching a condition omitted. The two properties we use here are RowFilter, and RowStateFilter. ","Property ","property","Summary."," We saw a complete example of using DataView to sort rows in a DataTable. This is powerful. It allows you to sort your data before using it in your program, and before INSERT-ing it into your SQL database."]

%iVBORw0KG;)NSUhEUg?AP)B1CAM?ABH9pzL)YFBMVEX::z8u5fweFOsdx0zOSL1udCntU+hMSk3ek1Z6W64+rQ6ezg7e3/8+n79O748+3/+fb58en+8eb/9vH:v7/+/f:fz/+fX:Pn/+PP/+vX+9e7/+/j/9/H/9Oz/9u5OvLxx?ASi0lEQVR4XszWAWrcMBSE4RziSbJ3N+39b1n59xvGj8WklEZkLMldCoSPkYw+lib09hJz8gqmEp3Zey49SPCDh9Hjmg8WZj7Oamj1+hXWViwL1BnLuiOvuayAb8Sx1mu+4YCtNYu1gNNYycUMNWuWGSbzZ8TYmkKDfJ/CVc9u+edoVQdr9CpVNsM2Fp5LQuS6v8Pi1Zs6br5bKkTplVvF27ax2usEYk0Ct2pj+QeLaS9gi/2VMjWV5yA33kPMIBLLu3hT33sj9QZnX8kVujMVd20vr/RajVPsZei45WesPR5FxLuITAx+b9napYkvvFgRb+fzd4HMEpBDbIvXo62890JFbK7TmDU+0Oz9YOCtYnnXb2igQltqLmLAEkvZ2jGYWyv0zsiKAVtsYaz/UFdx7RawxVK0i62VuHbIpGMO1PbWL9fibWxxufymlkkS0QBjzXUw8letWmiCtyMl6V1/iiPFNe9XZHUKqSnDL8L/Fa6Dl78kAD3H6oLDTVdwDVwi4uPRWAb/aGMIDLlpa5d++wH2pl5fsbESd3vrRcPU0ZLKmGnzGWPKm4PX5CDdZ8bkWAd0vboCSWztnHAtxoc1s+c8xGkelD1HB63Ii3F9xRZnAEeXN7XJrWJr9x2ukl6ddt2/pJW5VLywYP80GK7EgLOt1LZGoywHdoedP6GyQG66iNSOS8Urg1hYZvXygBXXzR6RllA03nqWO2SwpFaMe23B2s9u2FpdJuxtLcvFS3jjhjzmKGLdM7u0pWLm0oJJOBaX8zsA0zFE53M+opPxGNV7LGGxK17rdcG8rA0dX8Bw2af+TJk6M6Gsn4B3xCJvSkfca8ULvPEupl+D/YlOrs7uiUELkYEYs7w7ZFdcxaGkNJjrC2b0kxtw0RK4okDeU5pBDT6PM3J5IUvsinNTf7c5vNaC3S3ivG2IO2CiISl0dJKZZ8cPXT+avVQs8X/c0/F1popKU+hs5PV6tTmOnrLbiZLr+XTDNTt0wkmeWon1h4pY/X6T0lhWxEe2i5RK1OxolKtOz+UJ7ddUP0/l7/kQH+a8mLwdY1dc9zT5Vyot3UcuFmwyXrx/mrnXNkWRJArACyKAomV1S4OVCv:X25E5MGTxCDlzjz71JziVmV/mHciSG5q3/ed7YozVV0yqczmEHQ9RjNeZI39bswSx8ZyPX39W9aU.FzC9zm9d1dZtPd+0s/j0sCtXBkCiFMQazjOI3TJJsS2VQm8tBXIcZubGiIB4gB5rjFB5XvUKkFNSLvln6Rj33R8rcbVzeNWN2BVQA2mWg0HqYwSgzsouQRrQ1xvH5kiYcIdj39Zn09NkLNgTyYrMjzvL0tw0qgYYMtBGWm02k8jaMtfunfQjidjHySzWk8nYKsxR90OZOfwWANr3Ipdnc+3rYOhkVd1UpmWCbLd3m92x2DRVxi43bcFJFEpbJQLKIbv+xHoPiDYMUuWPmLdXiQgBzRzzPsbo5xZfJnHxBtcwGOITaRntO0u3LXnuuyPJzPqtIFVvZ6@8kp9Pnifn1S2aJSUfMEtgn+12psc6PMYLZ1BT7EvMqUbc2tOjkzmkXUO+V9V7FG/mQyfL5+Xn+1JxkEq1F10YVOrhaZiQIOoTR4Etxp/d+zGt3P/ywBc3LGqf7bU+uaIn9WKYty7I1iIiPKY:Pkpnr84xv2SiGFbGdmT0dpikzmjsSI5JD8YAQ8y7eUvsn1vWaj4Gd/y5daLt505eYrNn6BVxBfpWPmVitKRp0OTwjoCb2vhBuRNLLF49pPM6EWLuw847qPYoORwOx4doOVI9fHWdFV5BZhkwebXfxkrgZU5LrKnVrROLrVYtsYlRYZC7FOyGLX8Nd1auaWvJ/kjv/f6I5Q3fezWGPlTVplfjvezqeaXxDT6qOIza1BaIeQ2x0tMr4Axc8+4lNfq5E3Bgfcl95YW5qo4vuZkH+woDDa1MaGf0t4HHgPMVA0MMMMTqXTku0UtuURT7p7cP3/bzEd53wBk72iXhspNtOcbJVvNorWJ29RfAPBIvd2JA2c/em+cHeO/9GWB4wXXe47LiVZW9WWAm8WKwtjW4jHqViwrfABZyDy7ELDEPxLoYMFqlXkmWgIX7hpfZV7sVKCPa7QK7HRnqMVbZxEZGjecLiFjihZfn0wR/sMDmBbhQsA7QDrzl5S5dfz9Ib4NZYVkDjYVwZbYaR7FeF0P8lwOTu2DSeaWhNbtzB7Dbgze8SFGV2TdgOQxveSXQgguySEEexwlHJohx6jEgPBJ78GMJLp7ggwOvd/Shqmrnravq8LGd9QKTTDvIBGMvn@AgdNLph5ijloIwRyiWeAILsQLsBuyPK/23r0H+qDA2xWGNG4v0BpUGOAHjsRvgNtX4Jxg19HrYnp333u9mKXF0lUY4bEY+/DMffgKs6U9+NUuvNvN4McWmGJ6M8r8dQa2X3jJPmHlxTgWG5gVxjhN8NY+7Ar8PXhL3BZVlWcJFuK4qV4jo8YfBIPs92AO0lyPRg4nAWtQYquwH6UXt+Nfg+HN1Uuw24W9eK/cuhQ6i0kwI2idxUruUms/2MRvCLk4mw5TOkijp/mgOH3LPMHZEswCF7HA22CKq3yniyO5a8FrgmWERW4alHV51TSCPMUsbgJ8uUHr6nZhS2jnywbX0YctsE+7F+5uD67zHndl62oMKS7+WV044WVQaKVyH2ZLo8Td4M+lkfRxyzAX2IPPAr4TrPFgHzdWgZtL5SFGBHxWsE448?MadS7AIxzS1dhAfdfosU+zJs8onVXS9mrjl4Bb4upZbJCKn/YVaUwtU+Qz7NqhasLdxCaxa/Bk0xaYHenVsHsaIjR0ARridcOShlOtN4H00vuvtIRPOTVPgSCJUTwPNJms24WWCNci3Aj2V0sidhdHV6pzg4r4HqYwTcHftMrL4Br558tXkfWrw5phRhMdXLT3ZC/8Xq4GxD36QB/E6/96y5cDAD374J9fePQXZhuV+2zhXUDLIFaN8BMLw754Il3teBd7WiTuveLH/1RuMD9rLuB3TD9ljcYV+rqb3GB6rkIrbwyVCb7WcHwAmxc3rUEGF7EP01rlx1dp88afInf8YZDWVV5CyIujzfRK6dXRoYU9cXuqzMftxi48xXmYRi7L8TI40DwPvuzBf743iujMtpZU7PABHvz08vBmmAseEAa4Q3CBbhjgQdX4PW3xPdtreD9MVyvq2CKSXZcHnh3x7pqIK6amlcO/nqJXsRkMC8yIqividnQxPoCP8esjSdKHgwxwRveTLmHED7qxsSyLnGC9foOAL18zuDQ8YGD9LXW1w9YHbMosK5XPurxPpg1WvEieSXcx+PDxCKVAvMy4qMtapGzuv45SzxbDiSDL1aZJnlp8WBJyRiz6F0dspzWgf8AzJ6WODCWzhssDwFDXGiBmSPuh+iTQ2DldDoFz9wxTuK0OahUyxtwA160N50oZoGRpxfo6wYYYg8GmaGX4IdG/qTivGnqxQPWg4h1DbBYMSLDixvtqjQwIlDR+jtZFtO6t6bxrIPZfCpsXoCdeIMbEG0004m4yefn4qnYTqOtvDolN7KmEcdcgLFPT6adHzeIWasAsnkhHrRUhvVUHIW3Ry2W2NV4y4uDxXkWH43pajymo5JJcSodxsmU0r4qDkGsdqIR4oNwvo3HsPNBuEd9/ZNSxsQkvwtGvJZejJ0zOJcCCxYZKRYNkzxsCHpaMcbxWFdqH9Pz51Gx5rXpeVQaIPZv4UnF77xlx4kZaJ03gAvwUQvs3tIyhqxEjXkIGlHo0yRitZpzitIQkncsySJAbF4UePFJtsV1Ejv622GaYIp9PBfevte/WYFdpjGrqh3E4lKpruLWSX0GNautJ3I5YEUxL4RTr/tegI2OZv0BpvhZpPe8Cg5BCpyRircrqXdiVzOKjrq4VPoYpKgPkY54i1cwLo6/8Bp36f1rgYHdBLPEmg0xOJELsPrKpsALv3:1v9oAWdVs5NVFOOiwBI3H2YF28qLqspaO8gdkHTuIHZeZPvTeASnwxabOsZzz668mnuIBX481Gsvqti8NgqpOChxMnBscK0mbCo1dtBMc/8Ai2C8MrHzflvgW1sXeV4UhzPA62LEFdd7pS+CpKgfhp0CCvNQr/4vCJOIcxVy8LLno?/wvMOXRpy8QkAUNMPtUixUjPixaHmHfgiS8QAU0xyoNaXt1OwKuG1l2avQUSdZaO2LEasabLfIpAXQ3Bbe5n2OVbxgMSImN9yodxXx6Qj72Zp6gTsxKmZXOe9S5+FaE26EF5DhMlWIjSocC2nEW/6F6SJw01+bGFYcLW26Sc8qGVxtwp8Pexn8M5S5sNqU6O/VrQwGVciHRaLG1ATVZiXvali5CkeJxxx2Mn4XVcqJZbjcwSDe3UftiSXEa8Dl/li3DIxyAix4CZe26OiC17bgNc8v02s3T0xQX5QQyDRzTAj4PJ8ko+Trm6AxtqJW/U6cLkH2IlBZjwX3vtAri2kvk2zkwIpRaffuoh76uzVGZ2kE5DMorYC5vkkvG7AgtEX+F6zwDm8khZgiNnWznwjl95BwVEL7w3em1ZXEt0IvEH4cSyCl/8ITaJWvgPevKyvQVMu1l58JJgF1qYmGGKSGe99DiJ8Sdm9eEtZqWUO9mSSVRxLiF6aP/vxRaumswW9EEPqO3qlwA5cxnwkn1oRMMT9uhZcerv0xeiVDdH0Qpq9BoYYByATqTVSRWgLdnOnXICj949OzqtWAL044yMH9RJcXyH2Re6/41rIFW8vXiOIV8FzDaO9rvYGn2TipyyjEf8sxpq5i2TRmhjfx0Qv29mdUW53NAZqgin2AZdegnvklu2xbYpeHbjHKtymEvGk9Zyswvb/1B4kCNUHn7ZVLXZfLzYq5V588OByztWL2dhem3KRR+qNE2rMtpYcqqbZ65tEJmthcX71ms4K2glezPz2g75DjXm6YfFgiNnQjHhfgylmkQ0N9t2w5DJ/yLVTL53wi4064lBu2TR5e2ubKkOPd52Su4gWb3RCiRkBF9gUTB3EIHvwzoE1CvZVZqilF22WguG9W0.KrfGFXnZ7G9Ip2IF29o5SV1ohygmmFiIt06zSoJXxR7dOS68V2ol8H5Z8NHKNm+asrW2bqrPeQy7q7gbdCFmcr/ATGprYnB18l6Bc9xiwY+vwDuAIYYZah/PvQr468nt4ZWtHuBMuYc4WpdN/QXvDZ8U71Xrgz7jF2m570vz3LS4NLevwPX6h0g3tfTGCisTI7h50f73rGhkrMIRqG6qeADS5WDegedRlrjFDoIYUonnbnzLY/8K/OFufzCoAncmzwXYhOCqFwvlajLpgZsYKy1whyPv3VydA6O7wNWJlcW84QWZO3Gxehh+/5PC3gswtaDqjilNvdfqZjsV60FKCnxTd5x4HFwFQ+y8mADD7vvym1pvvHJIxRmwNL/JRYBEvjpbCl65RSb1V7F4pcAHXOd2QnY7EMGwShIuvJgtzsuQfWSFmb22hTNLvtHCC7Arsda3645NLr2sMfHXvikvl/52Q5WX38nKT5hjpwUaXEzLRBi866kBTsxFbAxPXjezv5JgeEYEG722wilIKeKsaQ4X6eyboqXFoYGXMW8aWAFe/x5eTH+ttIhBRvYDXkGcGkkGD1gdmA3dCRZRO8V5U94vgr9cbjIRPECsTFutiSUAg4rlmpdsdLUF7EPS9n83oMoMLb0iFqNWWsTNsTfvxci9OFxg9lQmQp5i711PqOM14l5SB2CZvwVGCNXJvGKN4EvZ5BdGSowOSpfcY8hdU2Pe9jJ9exB0fWjvQP4TsjQUpNRaYVVr80XBl6xp2svlDq6WfflN6dQSzC+X89f7M/qff/3u+2oOH5CKMY2MXsAruM+bXJQXtQOsCvBWwEqlONUmg9WK9x/bt7hI9yo96KLUh08KB1nt0XudJycGlLPyUi3F3vv/jgcP/bPGWF26+64plNr3qhWygL33qvHipLoQc4/9sS+FH565xzMmiuHtD1LgS69eYV8uurqoAmgL0cu/ihIT+3gWY/lTYMLTtZY8b4pOwbLQ9V2K3F9J8lm7TacTi8oF6D8H9vJOF22eDd19kB9b3Tv5ub4RGJNNb/yJIrsTUZ8Ocpnx0w3a6aZYITJELrYX5f2JLK85TA5mhxmL5Q91dLJ/demU4GL6yS/RRqB2cnpJtoXzbokTMKefGrNI9oFc7eYl2SZ1EOnF9GL9g9z3i82FrngzzspvEP+m7vR3OAneugz8WTY3sGRlS?GWBY48RLsuT+v9GLGk6lw3xXkqgwZtP9irreSzBXnVEzvzOe8wb3+S8mcablS6LwKdmLP/Vc6Pdl7X4DXxP8z979d8Cx+hxg7kg)BJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AG4?ACCAgM?ADasxWR)DFBMVEX/6Nn:/+VlZX29va5ksB5)SElEQVR4AWPACZj/f0DmjkqOSjKtQgcLyJccZiEE9SOmP8mXHEaBMBoIo4EwGggryJccvvVKKAogTnJUclRyVHLklgmjkqOS?LWyrsxEHLD)AElFTkSuQmCC%iVBORw0KG;)NSUhEUg?AIw?AB4C)?FqEXt)oElEQVR4Ae3ZsQ3DIBBAUfbfwxNcfR0dEpInIiOEI7Li4v0JXv9bnLS+dp3UIke13MFErxZXi7mqzR1MX9U6DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDMyPmLyr5Q4mRrW43vUo14uCgYGBgflDMDBx0mOYvKvlc5i5qk0YGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYmHdiclTL5zAnfQArQiNkrpqF2)ABJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?ALM?ABSCAM)o0hXm)MFBMVEVl4fzS:fO:by:3d9/7B8f74:6T6P145Pyp7fz::U9v3j:rq:zc:nW:hthqPe?AD9klEQVR4XtTZ2W7DIBQEUKS7sHjJ:9tq4RIjgEPBZza827rqLoaTxUTPsNSkdAZ6QmHvVlMRXrNpifSZp5uaPY3NLsbmg3f0Cw3NLt/NPtGs+H/M9tWs9zQbG9oNnQhM4uINThyFXOMPfs40H7RIwHnzGRqoieaj8gSovmbnxVs9ofknFn3j3iwk8aZcQ14ItLErEvyRpPNWWY+INt5mWdKzZIMTw9G9FAzuzLZ8bIsOfNeKIUD96eY9Yg8LYk5/xAFzb9htBlXBhXMU1LEpRfxWDOuDCqZk9Motp+MNePKKJpdZnUSOI5R5umAbKlo5izMgePoNuPKII3mZUG7zocw/jh4eoVjKiqDtWy22RbmwTuJfqO/qV4ZrE8z5cxUODU3dkQnZLgyEjM4jeILZYwZV0Y4MvuCagLH0W2ejslbs36atbSSdeyI3pBxZVj9MGswh6dhwbVJvxlXBoWtmcLO7EsmsJM6zWoPyBy2ZgrRXP4Ion+4+s24MrZmCtFc3EcOtuc0wiyAvDGHaIanMf44qsk+fJhDanbmr3GdZlwZW7OmZjY4eCexlJOYQWVo2Jo1pGYBPtB2+C02McPKiNH4QGK2DWbXafZ1PzVFcmIm0xJuN+PK2JpDzixNZmkx/6EylJ+Z+B3amm2T2baZcWWUikE2ZjVtoWYzgZbDZmk0S6tZLRhG2Owbzb7V7FHtY7MzjdEWM64MbE73Eaex4DiguZoMzGAfYY5vMTO4NmBG0xl9dVyDGVRGnZmrBpsbNKLV4mGEzQLaYOyI9mAY1Zlt1d+Ox4xoAcMImen1OU8e5Wc0Wt8x2Qg/E0VK5UCy510kYxa02uqnSDTTPM/rLvMrS/OwOd+8Jrm8ec3k4uY1m2Fm/Z55HWT2hMz6m0Hm9UvmSZ/pNsdc3vx459tmokbz4yPjzeN745FknHk5xRyZKXq+qnl5FDLMHGJ+KqejFQZCGAqiqCBQjP7/3xZiL92BkDbzuug9CDv3+mS3V9QwZn5ivsqZL6GhODnN1u3zn3zNti9a6vGHWQesTtYSi4bnAvlpXntLnbzdJFiVyVoK2DM2b+9c8xzevn3NN1kVvbpt+LfxL3lgiewx2Rwku9nObVPN56aSYnXOv+YVLBkLR47M1ogmOzfvp7hqJpsRDHJzc4Na/TJvgkvm51RNfJrMjhYbwQwtxFUzl1IvN5rMUJ/QvBnBuq5gpppwcimG2dHqh5leiWtmsPOwcc29qcMe5hVwKS6ZG1aysOF1N3eo2dDLABqAK+atpRwejnSZXa1ic+JVvWImm/RkpsvsNZSb6dVlJTPYeRiRGWoGM60El8yYSr1cgRnsyNxUCK6ag6mMyxl7A7N1SHHHRNQV)AElFTkSuQmCC!B%iVBORw0KG;)NSUhEUg?AL)A+CAM?AC802HE)z1BMVEX::z+P+p0/8kkP+j0P+93f/Q5:E4f/q9P+w1/+k0f/d7f/5/P/p8:0+f+Qx/9Opf86m/9xtv/W6v+t1f/L5P/i8P+u1v+63P+32v/a7P+/3v/V6f9grv+m0f/b7P+ezf/u9v+Avv9Ko:v9/+hz/+12f/9/f/s9f/M5f/4+:x9:G4f/Y6:2+v+Iwv/n8v/C4P/R5:T6P/+/v/l8v+42/+r1P9vtv97vP+y1:f7v+o0v+z2P/O5v98vP+UyP9qs/+Vyf/k8f/7/P/5YNTZ?ADhUlEQVR4Xu3Z546jMBSAUV+b3lt6b9N7L1vL+z/TEmXuQCjBk8kCK+X7GSnxUSRsuJB4k6a/TFEMUpAu02WSBKSyrAYVog5kKxdg2i6LGkzNSry+kEjJA1CWSKrC2xB4wTarA7gp8IJlVguwyg12agFWBF6wxGoBlrjB43qADyInFd+aZAIGkdP13tLLB0den2wu8lJSXRNur16tN33NGQUAiWFAsCp3YbEIIKPXI1XmI7hRBKAItusB9rnB9P8H78F78KFxcmFB2OR3X783SH46tT2HLfM8KkMCYIwaKp8TOrZDhES5donltIBm4yHQ5FG21hw7bL3nAOACESN5CUjjaGoD7UxZ2E7AitRuaYKgKmkujFlGM3kFtm4fBYELbI5dxnYGnvfF1lAIk5Je3WHZ/QoRf/ROMOQCmzbydwM+7ffU1cpy4jsuy2t6d3LUv3551ArByN05OH1W6i7L7xLg/ritfikCD5C+Q/D8Vmxp6e+Bwza1ABidfX3UcsHYrsGapXxrBwimRs6aA8/z3DjAvQJFElvDD4LFMBWVqvheapPSvTAHAbOfYU9PXliHHB5dIzh24Zkxnv32aTOYRYAfACP5hX4MvO3BsQCwDknUsYBRI7WkqyPDALiM/8X3xw+BJvoKJ9ij0tZg9KYnMXiAOGteBMfFAcx1/YhzvjQYr7BbgxNnsUERLG94mporAFcuGr4bd0UroZaaSNgWbN3lDucSK7oQMa78ULxgGCE8YAe1nwKfkERWYqLhZT2cvJ51AboMkzjAjoyAz4GN/HFXlyxzUdUhUaP2sQkwQwzlAHtkN+DDFFheBzNMJ1Hdr2evAM/lgb+8gzf8irx+zpA4WL3uAiwiTB3A2gbwudrzTysBa/njGO2BhHUyUect8XYOMmKcfw4e8oBbuGAm+GYSgVktwEN1AzhoS0d78Fp78E0CvL/ouLe1JoJ7OJjN29baiBnU+qTDgyNx0u2P5upvfkq6vXSqub2s/gYewfV/REqDK38InZYKhpNPP+Z3SgWfnkOmV+AepDAoF9zv3SgrhjVSI28DASYrGFXZpGywOhQORFGkQixqEWxcMAw0qwCn4h+3UlIHsMw90J6SOoAPDBKvk+8dQNlgfBMTr4Hewv/4Eki5YHzXFU9tpgFgZ3Fn7QtSMpgaZuMhiIO3eLHICd5VoH/rrfZfUfSbFverW/NTgL92xHNM5cAOXQ)BJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AJg?ABZCAM?AD1qB0C)GFBMVEX:/+vr6/Nzc1kZGSNjY3k5OQxMTE?ABgpITo?ADeUlEQVR4Xu1Z23YcIQxbX/n/P273lMYJRSilM4d5qB5DwAIJe7y8NqEi+noeIttPpD6S1xvyMGLZOvKGACqyu19pHTccmfwyyR41L2JGJuwunbEz224jVlv2bWJ4/j4USHGlx454JO66la3g/3Ytr82w0ZAU0hGUWc2+x2ItpolTuZpu5pT/vndzfpSvM3BkMakbcQSGlPTDpTmBksRi9wMoedxiAZQ8bjFFSnqd4xFIKTm3mBwnFnPvxek0ZnOJ83U6jcmOxRTUUj5JKbFBMu34Tdi18JVBSJ8LG7cQz7cW8ir0SfVnhEFJbQv4JABMwlEUmkU1Fx20Ex2UlIZR4SsAcqJWCa5th8Gt4jQWpSxEjLNg42azcUEiYGJ1J62jdaQV/EuOMTMcoI2wfp1cVFWMtwkyH4/1PJEYhLdBBxsJhH2OolkDa2KAL0uvNicWU0ktZh2MLVd21AKzukG8IlDtsqmuiAk4Cf8uMVlZGIfAMfogTCKXERM8tCDmaBIpHNSLupB6qaXOhwRuBnqR98K4SkNiiebYdxsGZ8TIdw2Y6JsW4140EhsO+lTJwALggsZPFLsf6JxcAKJUsk5Htog5UB9YjKY7fqKcWAlGBCAWo5d2h1hyAbjF+IlyYuOY86zJLcZPFBNLsLL+lQC8YeEFhKcLGcNzAXhPzG83/zLxCr+RXoNITgqIL+LYoOReBc+9gmWLOLUqEGDfYryAkGzhWIB7LRYL74eZ6WUW4+mVe5/Hu99izvZ1v8UE0y4lOfwKi/GCpZA2FeAmi/FRLsC+xfjt5mF4+8AtRkLvbAtflssspmA2HlQNLEBuZxV+u2vQkRSmSADjku9X8E;Z?llBLjkvM8ZVjIJA81VEojJxYV?opQIiZZgLX47888BcXbjBrBbIeI2b0fVYJL/QbqaKjlLcIoeK+INYvUKgL8ErLoO+znJi2AezMCzJYrJA1pInfLLCUtVMcsgQZEYsNprxHVSZXFS7rLGA63lvBZGox08lOU8ltLwNAZulokcjP3AO3gFLUypMYVrwGhH8cuC/X6BHNg1Rw+Vgxnb/ViZUrR0R/a2OI+i/2kahvvI6j+oHD4N/n53H+pX+/BTxvsfbfYhst4KPQznufpddnwU97n/bgT81i9lQl83nZ9XnpItSH78x4ACnLNoPJcQ0B9HiWALhAzR98s0wlubKPew)BJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AL4?ABBCAM?ABYbu5j)MFBMVEX:/+1wv+jqv9siv/p6:W3f8zZv9gb:19v9NK/8zAP999:S:8z:8zzP+z6P/0gInF?ABg0lEQVR4XtXXy1ICURAD0H7c96D+/9/KQqkhlEKD0iTrWZzKYtJXbou2s+jvn1Q55f2mfAMOb6Ec5D6+c/ObcvOdm98qN9+5+a1w842b3wo33/6Dv2H22g3zCL+PKF/uSKDsGL8pN9+5+U25+c7Nb5Wb74R8h+ki41eYLja+Qf1k/AL1k/HF4XIg4ytMFxl/X7/z8aF+Ov6A6bqR:FTnswXa2B96LmyPZtfoH4yvsDlwMaHy4GLj/Xz8RXqJ+PD5UDGh+ni448O08XEh+lSrtUVnC6qm+ey/krGx+li4+N0sfHh7Cfj43Sx8bF+Mj5OFxkf67c8frF+jJUovzRIBr/4+kovMb5YPr/OdcrUGL9k8FG/Tw3xxbP55/o1R4hfk/m6IBbii+fyJ/JnjK+5/HWRGuJLfzG+xvh6lX89f8m3GH90ar7Ya/FrkF8y+XNhRpAvlsi3+H8fUxP5A+svYb54Hl8Uy4/zNZEvCvo4XzyRLzrhXg7zNZMvw/o6ptsQpvDnE+wJyVGQ5SG7)AElFTkSuQmCC!