C# : Sort

[".0s4*0|collections;datetime-format;sort",["F@eBCDU^","IAKEBEKAKALLKANEKA","OBBOCSTUUUUTTUUUUYHDGDGDGDGDGDFOCOCBOPFOBBOOCBEWSTTUUUUTTUUUU","rwfrfy.",".NET","Array","Dictionary","List","String","2D","Async","Console","DataTable","Dates","DateTime","Enum","File","For","Foreach","Format","IEnumerable","If","IndexOf","Lambda","LINQ","Optimization","Parse","Path","Process","Property","Random","Regex","Replace","Sort","Split","Static","Substring","Switch","Tuple","While","IComparable"," allows custom sorting of objects when implemented. When a class implements this interface, we must add the public method CompareTo(T). We implement custom sorting for a class with IComparable. ","Interface ","interface","CompareTo ","compareto","Example."," Please look at the Employee class. This class implements IComparable<Employee>, which means an Employee instance can be compared with other Employee instances. The Employee class has two instance properties: Salary and Name. ","Also: ","The Employee class provides the CompareTo(Employee) method and the ToString method.","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","C# program that implements IComparable interface","\n\nusing System;\nusing System.Collections.Generic;\n\nclass Employee : ","IComparable","<Employee>\n{\n public int Salary { get; set; }\n public string Name { get; set; }\n\n public int CompareTo(Employee other)\n {","\n // Alphabetic sort if salary is equal. [A to Z]\n ","if (this.Salary == other.Salary)\n {\n return this.Name.CompareTo(other.Name);\n }","\n // Default to salary sort. [High to low]\n ","return other.Salary.CompareTo(this.Salary);\n }\n\n public override string ToString()\n {","\n // String representation.\n ","return this.Salary.ToString() + \",\" + this.Name;\n }\n}\n\nclass Program\n{\n static void Main()\n {\n List<Employee> list = new List<Employee>();\n list.Add(new Employee() { Name = \"Steve\", Salary = 10000 });\n list.Add(new Employee() { Name = \"Janet\", Salary = 10000 });\n list.Add(new Employee() { Name = \"Andrew\", Salary = 10000 });\n list.Add(new Employee() { Name = \"Bill\", Salary = 500000 });\n list.Add(new Employee() { Name = \"Lucy\", Salary = 8000 });","\n\n // Uses IComparable.CompareTo()\n ","list.Sort();","\n\n // Uses Employee.ToString\n ","foreach (var element in list)\n {\n Console.WriteLine(element);\n }\n }\n}\n\n","Output","\n\n500000,Bill\n10000,Andrew\n10000,Janet\n10000,Steve\n8000,Lucy","CompareTo."," Look again at the CompareTo method implementation in the Employee class. The method returns int\u2014this indicates which Employee should be ordered first. In CompareTo, we want to sort by the Salary from highest to lowest. ","However: ","If Salary is equal, we want to sort alphabetically. We check for equal Salary values, and in that case sort alphabetically.","In the Main method,"," we create a List of Employee instances. Each Employee has a Name and a Salary specified. Then, we invoke the Sort method on List. This uses the IComparable<Employee> implementation we added. ","Result: ","When this program is run, the Employee instances are sorted first by Salary and then by Name.","List ","list","Reverse sorts."," What should you do if you want to sort in reverse order in the CompareTo method? For example, if you want to order the Employee instances from lowest to highest salary, you could simply reverse the order of the CompareTo expression. ","Fragment that sorts on Salary: high to low","\n\nreturn other.Salary.CompareTo(this.Salary);\n\n","Sorts on Salary: low to high","\n\nreturn this.Salary.CompareTo(other.Salary);","Alternatives."," There are alternative ways you can sort collections of objects by two properties. The easiest is probably the orderby clause in the query syntax in System.Linq. For more information on this, check out the LINQ page on this site. ","LINQ ","linq","orderby ","orderby","CompareTo and IComparable"," are often faster than LINQ and the orderby clause. The IComparable version reorders the elements in the original list, while the orderby clause will return an IEnumerable that you must copy into a new List.","List."," There are other syntax forms available for sorting the List type. You can specify the Comparison delegate in the lambda expression syntax. In this case, you do not need to implement the IComparable interface at all. ","Caution: ","This approach may be less robust and exhibit poorer object-orientation. But in many cases, it is acceptable.","Sort Tuple ","tuple","Sort List ","sort-list","Through this example program,"," we implemented the IComparable<T> interface on a class. Then we demonstrated that the List.Sort method uses this interface to sort an object collection. ","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","3679700504","data-ad-format","link","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto"],"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALMAAABSCAMAAAAo0hXmAAAAMFBMVEVl4fzS//fO//by//3d9/7B8f74//6T6P145Pyp7fz////U9v3j//rq//zc//nW//hthqPeAAAD9klEQVR4XtTZ2W7DIBQEUKS7sHjJ//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/RkpsvsNZSb6dVlJTPYeRiRGWoGM60El8yYSr1cgRnsyNxUCK6ag6mMyxl7A7N1SHHHRNQVAAAAAElFTkSuQmCC)","url(data:image/png;base64,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)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAG4AAACCAgMAAADasxWRAAAADFBMVEX/6Nn///+VlZX29va5ksB5AAAASElEQVR4AWPACZj/f0DmjkqOSjKtQgcLyJccZiEE9SOmP8mXHEaBMBoIo4EwGggryJccvvVKKAogTnJUclRyVHLklgmjkqOSAALWyrsxEHLDAAAAAElFTkSuQmCC)"]

["url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAABDCAMAAADu8bq3AAAAMFBMVEX/////87L/99H/63he//Os//jR//v/507/7pH//fX/++aO//b/5C/p//0A//D0//4M59PNAAAC9klEQVR4XtXa627qMBCFUc+M77nw/m97dFAreWscJg2BOPsfpTJdEp8SQd0QW5sFd8FGgqzdxS4grt2NBrFPC/eD+C7E3w+yGuiRIXYk8Y6QYCQyMMSOxN8RshrmcSF2JPGeEH1euCdkUpDpcxDf7GzIeuA3L926N5J4T4iOJNwJEjxEspWID6ND4P2zLY5ueMhjKxIgPvZBmIlE0vx/STJxOQNQmJ5niuCBCHFeRaIT8c6C1OeL6WX+63VkbkbOOc7qwD5k6keCT7yGUAYDTuobkEL6ZCldSBuJ37pjjK8h88slPgyR1D2wdiAIWxrH0nINiLF6FIJDiYZMcGQvkelNSCrnQmYpPUjoRYI+A5IsST4ZMpOGYCQbiRgQma3VkyGpKAhWvfQTeRtCJ0NmUhAdiU7kfYicDUka0o8EdfshSZ5TF8ezIXPtQBYdCb7fLAgRM3MBXM0YyWGIPE9X11xSEIzk8eN4IE5D7IGED0ESsftdyQDJCoKRRH3HOB2EMMR5CELbKYqCqL9a2Q5C3NkQhki62epIPFjHgDjB6hCiIlGJjAMhqK4HCRAJJhLGgbABwUhUIscgzHwBBCJRieyHVCbKItIIzoQUQHYhU0ND2LQXUgla/ATEmRCMRCdiQygB4DLI0hyLrmUPhIFxGQSj8OqRCSEAXAnBSDARG8LzKBCsIsIDG1LSSJBHc26byMOG0DwOBLOARGxIJ3QRIaJrIKHBQYcWhNGQuf4KL4BgJI0p2hBSH51dC2l8HpwWRPD06yHTqjf9EZLcAJDQgYQdEIh8BEjsQOIdIc4rh3e3hOhIJgOiLyNDQEI/ETv2ZrwFyV+ELAqy7IHk/jchhQme+CLE+W4i9gURJMTM1PlSkb4ImTYTsW9R7Al/DRJXXDQgULs9+hqkIQLSgOTxIBiJ3wmp40ECQMJOiKPhIBhJ3AspMhrExXbOgNiSlFoIfw+CMyAg6QWf2VUZHaLGGRWZCvz8E5APrVKW9Pt/WmCkLAKQc/YPKd9C4FftKeoAAAAASUVORK5CYII=)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL8AAAA+CAMAAABN2DpJAAAApVBMVEX///+xptbq8/SGc8PQyuXo8vP0+Pn5+/zl4vHv9vf9/v75+PyTgsfw9vecjszr9PXs6vXf2u3y9/jp8vPr8/TBud7Y0+r4+/vs9PWnmtHt9PXIweL5/Pz+///8/f36/Pz3+/vx9/j2+vvu9fbq8vT1+vry+Pjz8fjv9/ft9fb3+vv2+/u5r9n4/Pz1+frz+fnx9vf4+/zu9Pbz+Pn+//7p8fP6+/xQ2OjOAAACsUlEQVR4Xu2Yx47cMBAFH0nlrMk5bQ7O4f8/zcJ650FtEPBRbUN1rwIFbs+qBQmSYG6Mc5Ux2yAB9ofdx0ltV2l6H8XwoyfRvjpBMW+R7aJyZadhhz0vQfQlFpUjpFogez4/deob9QVEV6JZOz9Vgt3kZvauhnUMoigRCEGyRTz5aq9qeA+iJjGn4GPeqZtbqmcQFQkp+tUPn1c29KgqEgsnMaZykmD/8jibUo1AFCQeiv5Dtjk6kGyLvtpknzY2JEeQ4RPGkXUDHOLdLj5myLc902B/6j16CjJ4IumJOZBNyo5JtDyIG02AL7chiUGGThiKVQ5gsqpns1n9VEZHBP3hAe5Cz/AMnXgQT4fs9y/U1M5uDv1qgY6UpgUZOBFQNOi4u873tATQOtIAWHrGb+jEK80WHSXzS3Q4skBHSC4gwyYKcTew8noNzUBeXQQyaOJBzAYOcrwwl+bZc/5hE4msx7KOQJqR5/zDJvLkSo6OLL6S/e3JiY6EHyMnJ/UMn+ZE/sfPsu+/p+ZE4Ij8wwtBFCfyguIrgMxSLEEUJ9aOtABuQrIE0ZuYO7IG8G1KcQOiNEGRcxNZ39yoTeRGLP/7iIuDWP61JvK1ExvFXW9x22QgShNNX6zy76fU8sFrIapMNEVPLBo8lzXXNnsEUZmgyGs7lSv7w3NtOhNSNG8i7y0VosqE/BKD/QtFuXRrTRgn9rXTY03xAqI2sXCk6MSf6ewqWiFqTVT9kQfKqydGXm+ilW9L8e3U87akM+Hb1SYUIxDNCV5ckaNjdRVtBqI0IXe1LcSudg+iOZHQbOSXjCOI5kRLExDfGkFUJ7grVxC7cg2iOkHTSDMFUZD4f8+fBO8s0IE4eucCoiChj5GRkRFDFuhIyeXfSDj54h2SCGTgxHj+8fzj+cfzj+cfz/8LH8OOJIxbjtQAAAAASUVORK5CYII=)","url(data:image/jpeg;base64,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)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAABJCAMAAABPapnRAAAAMFBMVEX////9amn+z879o6Lx//rj//T/MTH95OP/9PT8ubj/AADj0cTR/+3b6drx9O/W9ORYTpHNAAAEfklEQVR4XtWa23KzOgyF0cFHkvT933Y3wa4QQYPr/RPqdUenhnwjLUUSmYYRs6tinqaQiACAvoVhIAp3q3KOHwmyFsQhMITi5pgf5PNWfoho3ETMHARDBGNxOGZOeU+kAqgOMLyFD4jC3+TIuAZRAWT2u+iewkUcjr8vJa+Alg+PSAQ52iCPbIniBT53yyVUjHDALiCYTflwFQcpSyiZFqH8F0g0R/TCcQjinOOV16HKX0HiKocKCDTB18sC/yVOCwk+XberZ/Vnwt+AxGIHd1vfLIDUuw+IdUBQAtJxSNstVhL6oNVZZ1bqSUcqkSqhkkLuPwhSL4ttYzu9HEKpZpowf84iTmc7TD1ej9IjsMq5HKTDdq5Uu+fTEgG8qh2lWAF4Ub0MiPM832/O8XL9OuLLiSOL0K9AgiSQAYI7cwJv5gTAdbSdThFauqdJnaF4nO19XrdB3hs69HkrCG8pwuwrCDMjGF2Dne19XhcQjZjf5p0AeUc+bUCYudzb7fYPEA+yferyugnij8MhoZN7O2YuaTszP4RDRKd43W4TCkd9VFJjCxHIdeQfEHeTdhT5sR/DeIrXBUTHitSYIBwwF+ZINURUQJ4cTkCkkgPGZ7mrIU1lU+LcnVYq1EAbpQ6vC2K+qz9XDj+r707d5jxju/JF5YC707cmSdfcIGrxup1ZBVzTwdf+V04J3eKmAgA1VYx7C/KBsMXrZvFNe2MCGN3qvC4L9ebelxAKSNqCQAtIaPG6NdnAbpTibu3TIOWvRf6+sbOA6LWBLd/mdVcDonvfec82YToGkTgJogkScoPgf/Xwu3XsfabxqjDUI8JB+4/ll9zta/4WFtWn4Eahxes3xZF8Vk7X1D5ajbLXHCFXgfHYg2y3ZaeEcEiZz/BlPJ61oZLEbw2I0laZg5M9sTbOxsyq2ixCTFTQhGP7hBzZ6c9bj/iwCaz0Im7RDwi8FHrHXL2bOzIZPKw0lAobkMTRSQDVZOa7utj2veTBFypJAXDrFbGHH3njAOtlYersYv/Jbo5CiZ6E76DKp7cSAMcB6e/hNQjYGPptxWE7BGGzLZTqSyfM6y17eA8pKmjVDpmLe3swizZDfw+vsz5ssl5eN7aDeCDsWHueM68frYgdiwlpLcTYuWU7a15vX8eG9i3bwYET5vWmJ6h1XfsB/8ndXBdIf96et5vrAGl37RVe7wexvY7Xet12YejYqF/odfu/U6NrJx3uxlPhBK8b8YMO117rdVmr6OkpjeR14RaSKFv0Tte2nwr/lt7pgY9WrzbYKQikYLn2Qq+L9JYqeOl25zsv5sTy3gqNbvyDXu/9vY4WfsLr/fTtIwn2e91umPvp+0nwb3pdxBoFwQL5q163UchvIYBSOMHrZ/8Q97XMInhKZkRLnV4fTLbXB5M9HI8lu/kbTHYdHU66vY5+zMyyB57BZM87Y8j+oe+YAZF+geWt10gOcYvqUpleAul6aCxfGO/XB+CwRrUBODrmG4/TmCDTBGsMiqM1V1J1vVDgNJSYy0yzCJGIEH8H8R86J7+C+8H8WAAAAABJRU5ErkJggg==)","url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4MEQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJyf/2wBDAQkICAkKCQsJCQsOCw0LDhEODg4OERMNDQ4NDRMYEQ8PDw8RGBYXFBQUFxYaGhgYGhohISAhIScnJycnJycnJyf/wAARCAB6AOYDACIAAREBAhEB/8QAHAAAAgMBAQEBAAAAAAAAAAAAAAUDBAYCAQcI/8QASBAAAgEDAwEFBAcFAgwHAQAAAQIDAAQRBRIhMQYTIkFhFDJRcQcVI0JSgZEzYqGx0QhyJDQ1N0NzgpKytMHwFlNjdIOEs+H/xAAYAQEBAQEBAAAAAAAAAAAAAAAAAQIDBP/EACcRAQEAAQIFAwQDAAAAAAAAAAABEQIxAyFBUfASYcEyQoGRcaGx/9oADAMAAAERAhEAPwD7/RRUDXMQyNwyOoosluyfNeZFLLrV7S3CmSTCtkA4OOPjVWTtDYoAxk8B6OPdP51Mtzh093CuDIBWbbtVY5KAtu8gRjPyJ4rhu0ULY2hsn7p4NMrOG1AkBroGsoO0kS9FLH4ZqVO1MOQDGf1qeqF4V6NPRSSHtBDMcIMj4jp+tXo9QjkHUA/DNXMZvD1LtFVjdqOuK8N6g6kUzE9Gpaoqp7fF5Gu0u0fOCD8qZPRq7LFFRrPG3nUnWqllm4oooogooooCivm/af6aeznZPXbjs/qOnajJdQbPtIIojHIHUMDGXmRmHOOnUGt9pt8up6dZ6kkUkCXkEdwsM67ZUEqCQJIoJwy7sEZ60MLVFZvtr200/sNpcerana3VzbvKIGFmiuyFgSHfvHjAXIxnPUiqvYb6Q9K7fR3kulWV5bRWZjDSXkaIrmTfxE0ckgYrs8XwyKGGuorD9t/pV7M9hLmGw1IT3V9Mol9ltFVmSMkgPI0jxqMlTgZz6UgP9oLsMNMTUO6vTM0vcvp4jj79RtLd6cyiMpxjh858qLh9XopZreuWug6Hd6/dpJJa2cJuJI4gpkKgZwoZlXP5182l/tC9lIY4pptI1eOKcEwSPBAquF4JRjcYbHpQxX1yivkdx/aF7KWjiO60jV4JCocJLBAhKno2GuBwaKGH1pzgGs3dTukzuCMAnxDpWjk901kLlphcPuG7xHafTNZ1OvC6leu3K7rcOChbeBIvHPh6qeGpN7Hckl0fvkPUxnafzQ+GnOs42QI5VQd5KkZz7vQDn9KRC+KOm1iGHGWO04+Izw/86y6xPs7xDgLhRhjGPP8Afj/pVMTSW+0y42D7zZMLD0bqlXG1TTpiHJ7raQst4nCox4HeDyz61DeQSWx70SJcwyEHvIiGUg/ji6H5irgTpumQhWEPPuMdwI/dcVFPbSw85Yjz3jKf7wo9p09onVSIWQAMIvdPqYW5qCK+lDMYJQ8I6bH2E/8AxyUuke/Wlxb+JzsRfvjlf1FWrXXioaWSY91jIccgfOqz3y6jK1rFbbGUDbI2beZvj3YbwyfrVGXs8Ydsr3LyxnOYpF7qTI8hF975is8zJxF2xacMls3Xo7+FTj4Fq9m1y5jwk03iI3DaeMGsxdW6p4ApwTgEA4HoSQNp9K6trO9QKxKKh/0jEnAH3f3T61M2jSSa9cwBW394jDO5c8fMUy0PWproXDb/AHNh2/DO6sLLvklSGzugzN4t7A7lHn3i45HqKd6BYSWk19HPN3kg7o+H3CDv5XFTNl5ryw3Meqoo+0c7m4Urzz8qY2eoSPgMMDOM/H5VkBE3eLs88c4OM1o9OLJhJTn4j1+NblyzY1KnKg+le1zH7i/Kuq6PNdxRRRRH5w+mn/O12c/1Fh/zk1foKXWNJg1CLSJr+2j1Kdd8Fg8yLcSJ4vEkJbew8DcgeRr4/wDSB9FHbvtZ2zftJp+pafHb24hXS1uGkWSJIftAGWO2dW+2Z25LdfyFrQ/o5+kh+3uk9su2OrafqB05HhY25ZJO6McyoqolpBGcPMTzRfZo/pt/zYa7/wDU/wCct6pfQJ/m6tP/AHNz/wDpTf6Uey/aHtj2a+oez91b2vfzxtfC7LBJII8yKgZIpmB71UbjHTr5Gj9E/Y3tZ2J0+80ntBfWl1YbkfTYbMs3dMxka4LtJBCx35TGSenl5hg/pc+jjWdU7WntP2Ukhvr2fujc6cJYhcRy28YVZEjlIDpsiXK9c+RHRBqfbzTu0V9Y6Z9MHZqW2uLXIW+tRLaTxxyYGZbaQbnXIycN/dX47vW/og7Rav8ASHqHa+21mPSoZgsmn3Fq0huo5khjhHeRmNUKHawYCTkH8qRXf0IdvO1OvJqPbXX7a4hAWOS4gLvN3KHIjijMMMaZyfkTnBov8PuGo6Vp+vaLNpN1mXT72EROUbBaNgPdYfEV8B/tA6TZ6Fp/Y7SNPVltLOK9igV2LMFBtsZY9a/RdvBHbQRW0I2xQosca/BVG0D9BXxr6Tvou7fdvNeNzDqenjRrX/JVrcM8ckQkjiE+4w2zbt0kefE7fl0omd2y7QfRh2T7Y3NvquuQTS3SW0durRzNGNiZYDavq5op52StO0djoNra9q7uG+1iPeJ7m2AEbLvbugoEUPRMA+AUULTlhkGs3cRF5ZChCncQADnPy9fQ1pj0pBcW5klkZxsGf2i8hv7461K6cO7sV2jnntGtniZV3F1UMMsW8Puk9D6Vlb+S+lDs5ByDvyMNkeeOgPrX0TXrdYYUlnC7ADmUjchU46s2Vz/e/Ws5K2i2y90031iXViqDmUL+6Fycj14qYy6sXYapd6bK7xkSLKAJY5BlWx03DpT+3u9J1G5jitleO+ucYjtk2oree8scY+VJru39rZXt4RBFJzG56so67h0VvSvdJ1GXQ7pp4USZZAY5IplyrDP8/lT2qQ11awWG+NhdTRSMmHZmXuyMjorc5P51BZ2uiBi/fC8PRLK9XC8ddsqe6f1qxFc6VfySyrHLa3j5YxDEtuuB1IfxgfKp9M0yXUHaa0sRc7PDLLbsndeu6NyrD5YpA0humAa3wttbqoCW96BNE3+qnGNv51ZWC1igQwuzyhwYre8cv3ZPUwSc4Hwyarx9mLqW2lXTZSQSwe3Jyg/dMEviA+Rr200TUxGyMqoy471clowB+KI+IfOl5+ynOoyW0lqsU4Vrh0w0h296B8QMbXxWG1a11SEsizboT+zeIbEbH3SOqtWkupLrZBHDY70LbRNGe9hwOp/EtV20vV5mMs5QpLlRCcOrAdArA4z6GsY55GP0yCOa4dpwEzxlcq6k/fXHn6VsezlhdkXBU7lxGM8beC/IPr8KhsNDt4rgrJE6sPC/e4VVbrjceV9KvQaqlneXdndM1uibO5RkYFgN2WG3IYetLjkQyEc0ZUmRF2n3cbv+801s1iDqybj+LdzzWeXWNO3he+yx6eB8f8NN7TUbQniTr5bW/pVmFrXRSAqKmBzSi3vYWAw+fyP9KZRSKw4NblcNWnqmoooquavK8ivgNwelTjOBnk+ZqrcSIJgC3IxmpfaIzIsakNnzBzRuzlMR1MWVNynGOteQl2BZjn4UXDKsR3HGcY/WvLZ1aPwnODyKJ9v5czSsH2qcY86HaZAOc58xzXMssJkKP4SOC1RmZYmwkmR6ZxRqTlOS25IjJHXFQM8qhSW970qyDkA/Gq11IgKgsMjORRnTvjD1nmU43Z8+BRU6MrKCpBHxFFD1TtHVIrm+aCSRXj7rJOyZuY2/vY92np6VmXuglxcQwBrk5YvZtgN15KF+CKla4fVT1C2aaRHim2yOG3WE5zBMDtzhf5EUjudH0wMxgVbG7Q7/AGWU7YyfPuZVwy59P0prqFtqMohfSyjQxFmuNLuBiTHH7F85Rh+lU9ttqAe3uS17tH29pcKBcxDPkowHA/EKZdYXBo+8KmMiSQFVgKBnLD8R6OvwZTms/qWkyS95cFDFCpwJSd3iP3fgp/vYNbY2wnsxFCPatLGNuMrcwEea558P61SuzLZW0k8rnUbM8PfKuXQDju723HvLj7wGRS81YuM+yozNatLCpBacErPCx4yJOuPRuKfWEyyygSIe9yGlvLZjFcBRz9qicOMeYr27Bt5In06EeOPdHAWDxGI+93LnAdD+BunlVDT45LhzJbMsTKSYreIsuD94QSt7jfuNxTYb6C9tdRh71HW5WLIF3btidQPxYHOPhXSrFdQia4b6ytOq3kBKTx48pAhGcf8AYrH2DiOQakDLaYfupruJQrZHVLy1OR/trUx1BIdQMTXC6Pqk+RbzxnfZ3Q6rnPGceR5ojTR6h7LbtKuLuzBJW6tk5RPMXMQ5yPxAVXieOa8MdpFHbyyL3oidt0Vwp53xOOB+mayuraxrFveQyxA6Vr0YGHJxY3cQ8nJ8P5HkVXjufrC4llSO5tZwxmvNMhIYox63enueMZ6rU5DTXA71WmnmZTG5Rn/0kA/9RekkfrVaeK3kQ6deyIXHjsrlfEASOCh/CfNfKq0d19Yyw20Uhh1juj7BqLYZL1B1WRCAoI6MP0qpPtNowELRJkq8GQTbXSnDKMniOT9Kzq7NIoHkV3gkUCROGBHKuPP86e2mDgn4cAcCs0l2JilzyZsd3cBjlsJwrf8ASn1hOhwVINZg0ls2NtaCzfIFZyE8Kac2cwAHNbjOqcjodK9qusy461IJVrbhdNeNbQuxZlyT1OT/AFoW2hRgyrgjocn+tdhwa9zRM3vXMkSSgBxkDkdR/KiOGOLPdrjPXkn+dd0UTN2RmCIsXK5Y9c5rlbWBTuCcjpkk1NRRc3uKie2hdizLlj1OT/WpaKJnGzlEWNdqDA+FFdUUAelZbUILmaQxwZYqzExSDDYJ6xSD+Vak9KQTzrFIe8ZpbdnIWVAdyNnoT8KldOH1IL22t4hDPcNNdRwlg0ylhPbsdvVRyy/GpJTDeBO+Zbe5T/EtTQAKT5KT6+amjXre7NxbLbFob1lkNreFgI3I24huI/vBqRte6mtu1wIobeK3cx69pSgyFCf9PblunHiqOpysskl8Y2AttSjXLEZ7q4TzZc9TXsCRzSzXljKIL0D/AAq1ONkuPxq3x8mpHBZLMz6Zd3s99aXf22karv8AHGf/AC96+a+VSQLeNF7dhRrminu7sMvNzbfHHnuXketFeahDprWz3VjGZNP37b+1jBb2eTzkjH3cHqB86r/VV2GaK1Bd5U7xcYCzxryHU84kWtUssUd1DqK4a01BFSYYxwR4W+Hng1UuYGR20uGbFza4udMZmClo8+KEAdQPd+VMBNDZy3c0MwcLd7Dg48Fwi9Y5vPcK6j0zTbZHns7fv7SUn620kDe8TEcyRqfEuPSrk8ViDHdJKILe8lCrIob/AAe76bf9puDRNDfXN2NS0WL2ftBYER3cMo2LPDnBB/ErYyrVnHcUn00X2nf+HrqXvNOu/FomosQcOPEkUhb7y/xFUbe21DvC94T9eaP4JolyqTRn8JjA8LjpTW5sPaAz3sxTQdTYK9umUezvCcCVG8vH1+Bqna6cunvNNcM8mt6E4WeUeM3Vm3IZgx58PPzFaOry7j0yW2W84gsJ3DNtBMlpP07yMgnA3cNU4jaWW6aeCO2vbSIC+lcZS6gbJV41yBnA6nOK0EUenQ3Crbwh9N1iMufKPvSMkn4bxVC3kvbIPbxwwT3GnHuxNM/S3bxIc4Zjt6flUs6edvPYIbm2WSSK8srf2W3CK4uZjjdGwxnuyNzfDyqOOQW85WBsxt4ozjG4ee1fKr92guHOH9qETCRLllKwIH99IlPvYpXcMRGJY33RqxSa7OASD0VMcVhWrgvE7tOCTgDjnnFXItRjUgZIycDjqaSWsbGCJI1KBx4QfuJ6n8RphFFwCBnHhhX4t8fyrQbDVYgSpkAKnBB45qePUUbBDg56YNIJbRg/dg8k4Zvlyxr1bdiCCCN3iHpGv9aqYjUR3oPnV2K4DedZGCRwN2SMckfyptaXBbGD86Ss3TGhVs11VeByRVituGqYooooogooooCiiigKRzBYLmW3YDubjLKD+L7wH86eHoaSNHDKBI4BMUp5Pkc7T1qV04fUg1MO95BpdxdpGCGmgUgd46Jt5R/IqTSi9vMN9ZxRNNeWDd3qVvGpPfQeeQcAnHiWtB2lFtFcaVLtLstwU+zHiCyLg9OcdKrTwOdRjAhcieJ42Z8AHHKp1+GfKo6zYjso5Ha602z+zsJo/rHSi5yYs8lFUceF/LPnXcl1eraad2njlUPGRb6mu0ANE7bGOCD7jc1xpFvqNvDbm42W66ddPaSouWkWKX3PEfCR08qbW+jQTwaxo0x8RcvHKPJZBvXw9OGoqTS7G2gkvNEuZmmi/b2hPGIps+AY/C2allRX0c3TKDf6RJujlc+I92em7qQyVRtHmkTRdUD/AGj5sroHgMDnDYHmGWm7Bfab+yLb4pIxIygAnJBVh/Cnv57I8u4VuPbrQABL639qjVVwBIg5IJ8+leXN0RDpOsK4DeGK6Yc7o5Bgr+T4qjYB500S4kLNIC0buSQCpVl2ED5UW8MUei6hDCuYobiZEVsttG/pz86WieWC0kGqabImUvkM0UchyN+OduPUA1RN7G0+laqkSFb2I6beqw5Rlzg/kQRTW7WOOfTDt5JKgjrnZ61kZFkEF1Ax2pDqisNoIOHYN/1qe3nb5VftILiaw1HRZbgtNo0ge2lxhTGR3kefjgcVcH1ddx22oXLlUvrfu5YQSu8gZxhPEcVzBIq6nr6gnuxbRsxHXO1uDUSLcQWunx2scY224LSzMVEe7gdOeaXb9fvnBUvGM9vv1Bl0/TookSKEftpecqpX7oOPd60r1V5WtoJZwqMzD2OyX3iw6F/yq7G1vLrDNbkahfSjujdyf4vBtHIiHTd8v1qtdy2dkwFs5vb6RjHJdnBSNiceI+Q9BWcKf6dbNKkcJbLlVe4f4cdBT+3tuUlC4ye7t0P8WqhocKyWgiQ5iRc3dw3GTjkL86fpEHQyuSo2jYg47tB5fNvOtSM2lrWimVs8g9T08I+PzqaS2AK5xh/2p8gv3UHzqwhjkXvW6s24j0HCrUkscaxO/vc5wfN/L/dqpklniKSBOrEbmH73kPyFWbOIqwol6d4OSOQT5+v51atCrbSBjOP1qL0NbdeKs1FDyD6VLW44atxRRRRkUUUUBRRRQFIJ4keS8jwowdy59Rn+dP6z06xrLezMcFsKOcdB8KldOH1Ra4heytvFgmaI7+hHiFV7kONWsUMuffcgkDopHH61BrypP9W6cTmQv3xXnlYcE/xIqBri1kuLvUZVCxadGUZSMAyHkkfwFR1itePC0OrTmRW33sKgFsYKFAcjNS6XfW7a3qzO4TwxKozkHapyRjiq1rpcfdrbPIDcXjm/umUDwpnKpVqPubWzlvhjdduETCZJz4EoFsRWTStPRFaRDelogqknAdjnnHFNrZvZ9U1OdonYrbLKYwAowN3T1qeJrW2kjiTiHT0y53DHeMP6UqfW4ZYfDj2nV5e5GOqxAYz58bRmmPP6V1pvtSWuhb12+0ziQR7juAIZ+ny61axPBF2hKgNE9yO4X4uyqCv61yl3Gt1cTqwFvpMWyI54WTHi/hivIIy0mnwXMpJnZruVQffIG7p8ATS/758Bpc295c3Ngid3G0QMj7ssR4dvlj41npdGme2nl9qZTd6im5UUcBWC8FvlTdtYghGpX8UneJaL3QC5JDAbiOnxNUEuDLcabZMZCYUN9OdpOWbpx+dOufO/whTq9j3V32gKzSsogjTcGIycdGK4Ga7kt7d3SMWcmoFIoVWHccKVG5t/eMABXN3em60cYgkI1LUcs6jkxxNk+eeiVpV06N2mZWkgZhtMmVLZPIxuB6CorM3ttEGil1HurS2XHd2VsduTglsycFvkoqK5Mj2cEcMa6ZYFHbvJFAZlU/cT7pPlnk1pjpNkzxPGklzcpz30jBtoPhPiYYX/AGaqzaTHd3xlDNI0QIR2KmGLb5xKV5b1NA60iNhbW0EMZSNY1aG3Y8gEftZ/U+S02BIUISSqkh283b4VBp9vHDaRxxyO+FCy3LYMkhx1Jx1+VW9gXcqkjjAX8Py9TVYtUVba0gc+FTkt0wa57xpt6YwoxhD5D19TViS2GQAWAHQcdf0qJLVEPVuTgkkf0oqoOXAJwoPPw4qa2crI6fd6jHw9KnNrGS2CfEc546+nFcrbRrJuBPw6/wD8qLk1tTlT+VWKr2qhVOPSrFbjhq+qiiiijIooooCiiigD0NZTBnW671yg9odEKgcgHHNao9DWbjVSrggf4y//ABmpXXh9Sy9060l1CO9mlYizjdF3OQBv2sxJH92kTWntNrZ2xYOup3PeyR7yd8SkyEN+grU6iid3d+EdG8v3RWbtlVZ9HKgAiN8EcfdrLokWC3W3v7sKVlnk9liLEnCqdngJNXbmzJ1XSbGBdtrao08y4JB2gKuQPWlBZm0+BWJK+05wTxnf1pzbO/1nqB3HItwBz04qqXrFF9R6nesiN7TPM3Axld2wfyqd7GBtR0kMhUwwOyFRjnaFG/0qzaIg7N2YCjBkjyMdcuKu3wA1aPHlAcf7wpshFOFGhXihwHnmkDBh4WJbAz8Kmtrm4n7SRQyIyRWkDDkDzAG5cVZ1VV+pbXgeKWPdx1+0HWp4/wDK9yfMWx5/M02x50UkuNjaDdRxTFptRvdqfk4Hw58K1cSZ8ajfjeSVFpZlB5qNvmPxUWCqYdFyB78h6eeGprbqv1PD4R+2z0895p3n4Rn7mKOJrC0aWQRWkP22QQqyv1IwPexmtVKp8IAEjZ3ePj3uF8vhVW8RCkhKgkyc5HpTS4A3dPJafNFOWSFQyyzM5QcQRDA4HwFLHmLIhmUKoXK24OAB5NKf+lN7kBLSRkG046jg0pcDu4uB+zLfn8aixprV90cbLy2BtwMKBj7oqZjs905c/wAPU+tRWwAs0I4JC5/SusDFVh1ncMkcjqPSowVLZPI6cD+Vdr5/I1F8KDzPLD414OTiul/aflXkfvfnUVftTlD6YqxVa06P86s1qbOOr6qKKKKrIooooCiiig//2Q==)","url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCABeAMgDASIAAhEBAxEB/8QAHAAAAgMBAQEBAAAAAAAAAAAAAAIBAwQGBQcI/8QAPBAAAQQBAwIDBQUCDwAAAAAAAQACAxEEBRIhBjETIkEHFHGBoRUjMlFhFrMmQkNSY2RydIWVorK0wtH/xAAYAQADAQEAAAAAAAAAAAAAAAAAAQIDBP/EAB8RAQADAAMBAAMBAAAAAAAAAAABAhEDEiExEyJBMv/aAAwDAQACEQMRAD8A/VKEIQAoQUtqZkGKi0pKguS7Ge0Wqi5G9PTxbuU2qd6ncnoxdaLVW5G5BYstFpLUhyWjDKLUWotGka0JbUWjSOhLuRuRpntFpLUgo0HtCRzmsaXOcGtHJJNALzZdf06OTw2ZAnl9GQAyH6Jh6qFh07UPfZZ4zBJCYtpIk4dzfp6dkJhuUKUpKmQgpHGlLlTI5ZWscOT9rGZkYXQWo5GHkzY0wfA1ssLyx7bmY00RyOCQqD0OwOr9puqf8zd/4svtokr2b6of6TG/5Ea650nn+aXbIaVrrj9Z6UOBo+dlQ9R9SukggkkaHai4iw0kXx+i6XpHIlyOltHmmkdJK/Dhc97yS5ziwEkn1Ky9UyX05qv90l/2FV9GPrpPRB/UYP3bVUW1pFHSbiB3UtdY7rMH2FIfVBVo6uS8TXsrqzX2aVqkcUeI6ANxsmPfE7dECeRy3ken5rd+0+fp3HUGjZELB3ysP7+L4kDzNHxCo6fd/DTqz+3i/uQuqY5VqerPpOt6dq0e/Tc2HIFWQx3mHxb3HzXpArio44YvaiBDFHGZNIc95a0DcfGaLP5ldiCplMwutRaS1ANlRMs5OfikL6SyPpyyT5Aa+hyiJRMxDaH2p3LAya6VhlAFkpnE6170wevO96CuZJYsFVCoc9omnY+s5Op5GpmbKMOfNDGySV2xjWu4AbdLq8XHgxY9mNDHEz8mNDR9Fy3RMoEWuEngatkj/UF72RqeNix+JlTRwRD+PI8NH1VnOQq0yTd1HrTf5rYPq1yF5nSuoY+pdSdQT4UrZscjHa2RvYkNddITS6wpCmSOv0WdpBXKmXkKy7FqiR5AJA8q57ycOa680B3U/TGZpDcv3N2QY3Cfw/E2FkjX/hsX+Gu/quePT3WYNu65id/g0Q/7r6BPTY9/osLi4PbvAAd2RFs8b19cXkdPdUZONNj5PV0ckUrDG8fZbG2CKPZy6nRMT7O0rCwjJ4nu0DId9Vu2tAuvTstTmEK5sX3d16WriZlr5AYQCeU24bhz2QIxs3VxX1TsjBa0kfFaV9Ta0OPzsbW9I6g1PVNLxMbUsXNMRfAJvDmaWMDeCfKfUrRgdd6OcgYuqun0fMP8lqEZiB+DvwkfNdQ1jbcCPWgq8zAxNQi93zMWHJx3fijlYHtPyK0xjN3MRTMl9rUHhSNfG7Qnua5psEe8N5BXbtIvuuV0DobQ+n+oXappGNJjSSwOgdE2QmLaXNcSGm6NtHah34XUPpr28W09+VFkzY0jgOxtKxzaskA/FV5FNftaKr1VPJUYxtbFsj7efNwvPyWhlbTdrXsKw5jxYaAbBNqq1Yct8j1ZFy0InceApxCHtDQDYU5UTtm4A8K8Ot/02AWj3e+L7p8N1hwWXxvutlG1rwYyGEkclPGlOSLWjHHjpvWYcjPb9ue6YOVmS5IixYh4nndfLz2NV2C9fB6L0WBgyMiCTPyqszZshmcfkePovczonGMOaPw90keTeOI9p3drTiBfl62mLN+nNZHCI4mNYxvZrRQHyQnwWFsVn1QiV0/zGtSref0tWJXLO0apUAdvKzvDtpZtPPqtZCUhYWoIlmnhLsctbyQFg2SSyxBzC0M7kr1wlczm0dNaVtjBKyilY3lapG2UjWd1pFfVdvFJrkWEtUAoniYxrrJ3HsphaSwWumOOIjtDnnlmZ6yrceeVZEf1VEvmm2ob5JQPzW8ccY555Z1tFEKfLfcKhxLWEpQLjLr5UfiiSnklpLeVIZykx37mC1pY21lbjw627EDeUroWE2WNN/otAabU7LSiMXmszYmtPlaB8AnLFeG8pi1CqxjIYGXext/BO1tK8sUbUK+fChthS2GMGwxt/BWNHCYBB/fqWhCkIQpKgplCUwCUgp6UUomoIQkcFbSghEVNnc1VSjaxxrsFrISFqcQJeMx9vLpQSfQLTATICSKpby1KWre3JFv4xrxzX+vMyGOjlDwLCiNjpptwaQ0L1NiNiuOXz56znh9++McsJdGQO6y7nCMx7Ta9bYjZ+nKdeTPJK3FvsMmNGWMF9zytbB+aYMThqi1t9OtMKGqwNUgJgFm1iCgKaCZCSsLSjanUUgYgBSAppFICQhCEGEIQgwgoQlgQoTIQCUopOhAV0opWUhMK9qNqekeqZYWkUnpTSZYQBSAmQkMRSakISMUhFoQAhCEAIQhBhCEID//Z)"]