C# : LINQ

[".0s4*0|collections;datetime-format;linq",["F@eOQTU^","NEKAFAONMI","OBBOCSTUUUUTTUUUUYFGDGDHDFRDRDRDOBCOIBWBSTTUUUUTTUUUU","rwt.",".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","OrderByDescending"," sorts elements from high to low. It is an extension method found in the System.Linq namespace. It receives a key selector Func instance. We pass it a lambda expression that selects the key. ","Func ","func","Extension ","extension","Example."," Let us first create an array of Tuples. You can see that each Tuple has two items of type int. Next, we call OrderByDescending and use a lambda expression that selects the Item1 property of each Tuple instance. ","Finally: ","We see that the Tuples are sorted from the highest Item1 value to the lowest Item1 value.","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","Based on:"," .NET 4.5\n\n","C# program that uses OrderByDescending","\n\nusing System;\nusing System.Linq;\n\nclass Program\n{\n static void Main()\n {","\n // Create array of tuples.\n ","Tuple<int, int>[] tuples = new Tuple<int, int>[3];\n tuples[0] = new Tuple<int, int>(3, 6);\n tuples[1] = new Tuple<int, int>(6, 4);\n tuples[2] = new Tuple<int, int>(0, 60);","\n\n // Order by descending on Item1.\n ","var result = tuples.","OrderByDescending","(a => a.Item1);\n foreach (var item in result)\n {\n Console.WriteLine(item);\n }\n }\n}\n\n","Output","\n\n(","6",", 4)\n(","3",", 6)\n(","0",", 60)","This extension method"," is useful in some situations. But it is probably most often used by the C# compiler when it translates query expressions with the descending contextual keyword. ","Descending ","descending","Tip: ","Because query expressions do not require explicit delegate syntax (such as lambda expressions =>) they can be easier to read.","Research."," I checked the C# specification for details about the descending keyword in queries. When we use \"descending,\" a call of OrderByDescending is added to the translated, method-call syntax. ","If an ordering clause specifies a descending direction indicator, an invocation of OrderByDescending or ThenByDescending is produced instead.","The C# Programming Language ","https://books.google.com/books?id=s-IH_x6ytuQC","Summary."," OrderByDescending, a method, is sometimes useful. It requires a Func instance that selects a key. This method is commonly used through the translation of query expressions with the orderby and descending keywords. ","OrderBy Clause ","orderby","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,iVBORw0KGgoAAAANSUhEUgAAAN0AAACMCAMAAADPyFx6AAAAMFBMVEX////Y3f+0t7d5fn/l6f/y9P/S09Ocn6Dl5ub8/P/4+f/19fUqNTjs7v9OVVfM0/+r8b/JAAAE10lEQVR4Xu2cy3LrQAhEDcxTL///317JOGFLZ3FnUKlXXtipnNAM41SL15+0smynhNfX/dSO7auj3Q5uVTjFmx7gY7Ojul3G6kp1ZwlgM8hlF1X9ecFRbHb4qmdQPD0dX1hc+NCCeFTj1E6+vbMe7uKV7RSXIlrvmbWd+q1IcRfPejUGXQFsJsqmDg3gTKUTd69eOrbp+65+Zp0OLyddU6ov5dSN1zaTk45/HXlMP855Mx0gnQS4rFTZNuGG1E4nQdmULoK8dAp1VBYtdwgV//l+bKo4pVu1h9Dvd7PDFeZSuB6Iy1YW2UQqv2YXh3IZToe7rO/0PkWpT09X5ZoIyH+A8sWmyq+7qb9NND/ATpDNkrpS3blPzpYJtNlFlezF1OpkPuteOi1ZmprOfJby7i6EQdH8zqSvJbu7eFn/Hpn0E1Prgvotye4tnrVqELrs7yJr1fSK4czXftIRUjt6RzlVUiL3cF5+5lyav/GWN3r1sEFAk3eeOtJ0O7rXcrmS0oLUjrp2apx7tJNOoSglclR7KocmbCDohIyg7r9XZYoDl1PKe0rIt7W+E72J0li2Afeqaelof91PeyI60WjvAQBC6dGjR48ePXrEIsI3ZdPASAsE0Bry5jChA4uKb4cASZoaLirupZNRxmzMXEVE86cAHEC3DjNm2UzsT9txueSqh0UqW/nvPQTQWSFWOH3YPvYcELs6RKRqRBooBDYPRJtv+vgVaxymlIbMAx5GZ+7x0lXR+NwKGHPUwWnu8Ug2k6zOT8gXksuwnBJ732mq3ouKiOggGRYZX910Ry1NH2JwdrRpVKa6AlW2qzFK1wYZ09kSBc1Sr4ecYv7MnDboTDmAXPJhdNjM4VHDjpHZwV83b2sAOmQUaR+JZngFuq+XMsKYFvG/y6NR+LAzVRhuJ6I0iO5Ab/2likhlMCg08gINasnImwdmd1upUhCy/g1JEAEpKDNmlAgvTW/MJZ0iIndmdYGT4n2cMfPblLw2oz1/hOVnch6a2k/eQnQ4rbB87DkidkWnkna+txB4sEvpRik76ZKOrpwz9JPH0dlv7aRLpEbugDFHTXSzDxqco+78BH0h9zwuF7g7K2FK3ovKKf3EuMh499JRyovOdGDkDKRbtBBw2nhB6ZYRdMkf6USz1J0uJR05eZQxCZheRgeOnLmzxmZNdVyPQGct5OwjQiK8qiXlvIw6UyhUhBc/U2A8CgBnw86tnChGUtz6/a5a9qQmu7EePXr0qMgV2ZJyS7hqyYP7iYGA12A11vyOQPmkTUJsh2z4SiKOs9nzBeyog1cujtchlZmrFs9NZxGLMMcg+6ttcfgQdAzSmUcfuhDPXBjTGoqOwYx/iUFnSf+jgQeQ0rUYG+8ZrbPaOcbeS8auN80wA8y6Cm9Q1hsAR4LDn8eZXPwLtzYUT9YAm3Q3EYFstrKcqtA0CPAoFaDAdJli7BspcopPFSA8nCx6EEcAXBC8ZU/qsoytfqMI6yEXYPFVwNWeQKITXrk4XkTpErJOyjJzARa5wfFoY6Lb0+Xg4YP4dAT2XY9El+AzMxBd1iMTcbHR3WgzpI0568AAcAm832Tzc4hpgG9Q1vtbJDj0gZwwu2b7Aj/CQ31+uDcRuFK8JzqVcoQ1wff9pp3vTfdNtaf81/DwP3QqZXxXaTaaAAAAAElFTkSuQmCC)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAA/CAMAAACSEXcNAAAAMFBMVEX////ktfzOXv7ZkPzSdvz16Pvu2vfx3fr89/7epProzPTs0vjlwvXKTP/48fzrxP9MDsoJAAACfUlEQVR4Xu3a6crrIBAGYGdxz3L/d3uahdAjJmP82kqp76+CMPpURNGo9hn/D4ctRn1BOqRJOqRDKCkVtvwupEM6pEM6xMLSCRFEs4zRancTomegdZzITAQhGqPXIkcgUST1zFlPF90nTRQ8PtUdwhrryiEOONEiwYKNdvoghDmFbdGlEMDsAGHzuvdD0qQSWwTRLNTRzSCjP+ZEhmgU/xHbDDIOu8SJEIcFc6ubQWiHWBFCRXM7NYAkUyJAZqEObpDYDEI7RAsQLlxuuhXkcF9D5tJCphXkWO7XECou1AwC4Vim5ZV4CMAny70V5FgkVxCbmUZ/tivORJgallAwS/TfIQghAJ5A7BUEMsQh77bi6bcSkhrpDH4F8eUdm09BoAIirPU2kCG/k4X4bZAw5jsJV5DxByH2SyDyAfiXIVi92Osh8kG+AjIOFRBfs49gAQQSSLZtD2dmc/jAhpgODDmTwaxxOQjSIxCifmTKQEdmHO9B/PgKyLH1nISERZRtL4eMyFh3aISzMW1x1trl9zRNrggCFRApvgQyp3zkPZiwTRFkfgMEdoi7guh7G7sCAaJfCUmPWlcQxaWFYgFEqPfWywcQGMleYSUIvBwCZddB7h5EoQDRtRCZfQ1RcA/ihVOlotdCcNgc0UkQx7cg+hxihJvkd19ia7wDUSBAVKyDyA75Np7vQJQXICpi4uRaCO6OOJU99Dgou6DbExM40tabVnv0s5UhVEKQhqSw/GKlgbMGJoJhfZGckvfKFcNbu1nanXqKmz3hQoRo4sNotSt7pgVPjGu/fohhrezUvWgAouOYslSC9Tl0mvrnPh3SIcXpkA7pkA7pkA7pkH9jO092lrWfwAAAAABJRU5ErkJggg==)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABdCAMAAABw8G+nAAAAGFBMVEX///+DvOv76rDR5flpsu/a3MKayPD88s5VVf4yAAABmElEQVR4Xu3aC2rDQAwGYUv7uv+NGyiw0CwZGjeMgP4n+DCDiXCuj6/13i5hqAKXpup9llOBS1X1Hq2gCgITVOVc/edmqbL2ooYrtqhU+NtVK7BZ1DVKhp85Coafj41y4ef3igWWWdGVe5XCXy9dobcF4ZsPjAPzXRzYvLlGrvfC7zc3bwYmsJ5dGYfAFBaH77A4MIfFLofF4UssDt9hcfgOiwMTWL92jbsDypvh582tP/1J4bDY5bA4MIXFgU2FxW/WaA6LA1NYHFgzWPy8wmI99kplbjcv3NsQ2IhDWLbrmLu/56xGSVXm+vBVzXuOPR/LT54YvNbPqswlsc6qsd+FDusce+45rHPse1Jb7Rz7TkthnbPaKoPFKoPFsTuseBX7uhxW6xC7cFVjVtJVPUFlsDh2hdUgdoPFsRssjt1gcewOKyB2gcVZGSxWCYOsqqrq/CfJV/lZ/cd+n8VZ+a5IUAkuyEpwgcpxQezWAmJ3lhlK7PxRICArRbX3r2IWZeW7ripbkJXmApXmApXrusptQVaa6w3VFyLLQb5f38LoAAAAAElFTkSuQmCC)"]

["url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4MEQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJyf/2wBDAQkICAkKCQsJCQsOCw0LDhEODg4OERMNDQ4NDRMYEQ8PDw8RGBYXFBQUFxYaGhgYGhohISAhIScnJycnJycnJyf/wAARCADkAOsDACIAAREBAhEB/8QAGwABAAIDAQEAAAAAAAAAAAAAAAEDAgQFBgf/xAA4EAACAgEDAgQEBAQGAgMAAAABAgADEQQSIQUxEyJBUQYyYXEUI0KBFVKRoQczYnKxwRYlNNHh/8QAGAEBAQEBAQAAAAAAAAAAAAAAAAECAwT/xAAmEQEBAQABBAEDBAMAAAAAAAAAARECEiExUQMyQXETYZGhQrHx/9oADAMAAAERAhEAPwD7/ERAREQEREBERAREQEREBERAREQEREBK9R/kv5tvHze0slWotrppey07UUZYwOcNYldYbxfEI48nc/UCRqNZqtPYrBi1bEZXA/cD6yqmz8SoForRSQBjG5j8w2+3Er197JaPISte1ifQZzz/ANTOtZ9nRfqGxRYNr1khSRztPucenv7SR1SnYWKseMjZ593+3HecZB5jh81AFqFPACkZ8x/lnQ0jq1Sqq42gEEjBIYZzj0l1LHSW+tgDkrn0PcTMOh7MDNGRGjoxOeGYdiRMxfaP1Z+8amN2JqDVOO4BmY1P+n+8aNiIiUIiICIiAiIgIiICIiAiIgIiICIkSWiZraxxXRZYwyFHbGf7esvJmvqrRVS9hBYKOVXv+0x1K5tRS9lyqqyebaBzkfWWWKrW+bjyjBBwRz7/APUxGo07WBiStmMCtht789+0l2HiVtjCsCDn0IORmXVYnToSxOPKcDyg/wBu0upUKHC/zHJPJJ9yY9w3I3evPH2lZa4adWoXc9jFmI5wCZUbESj8UpUbAQ5IVVYEbiewHtnEtNlYzlx5Rlue2O/9JRlEblwDkYPaUJqDa6rWoKnd5j7KcGQXzIdpjMh2gb8RE0hERAREQEREBERAREQEREBETFvSSiZiTMc8yGac+VVDNKrG8pks0ouZ/DbwwGf0BOBOeq1W1ABdDUc/KGcZUknjt7zPaWKO67Tj5c9jMarxZ5WBVwOR6ZBwdstJHGe03KMVsRslGBLE9vft2llSGutUyTtGMnuZzdMSNXxxg4IPOBk85nVm4gee/PrzMHopsILoMht+Rx5h6nEzkzQpOloJJwQSwc8+oOf6SBplTmt2Q4YZ7jzHOcfT0l8SDCoOE85JOTjPcD0Blo7TGZDtA3onxHqXS1r1PxM+h0W5en31mvVC9kbTK1jZ2oT+Zvxjk8T0fxf1S8/CPQk0+qtOl1q1pqtS3lsdUrAO/BbuckjJ7esz+p52eP8AjHV57PpSsrDKkEe45hmVQWYgAdyeBPm2gop6B/iBpeldDdhoNTQG1FAc2Lk1u245J58qtn6+0t6+idZ+PtJ0Pqzt/DFq3V6fcUV3NbPklSOSwx+2Jevt477h1f7x9FifPf8AD13vbrvRbLG1HS6LPD0+5iQEc2VlVbPAZVHaeE0Q/wDS1fi9Gx6SeoL+M11bHflawBUi5wMKzHJHOfpJfk7S553+jq8dn32QCGGVII9xPKfE2n0lXwb+E6XrK9FpXStdLa9jbHQ+cV+Idx86jvPG/DtOk0fX+jaDX6e3p+soJevZYNRTqHsG3xPmIr3bMZTIPEt55ZM8rblx9eiIm1IiICIiAlF+SVwOOcy4zXu5x9JKKT6cYI+s0rGYWEA854m2/vxz3mpeueVOWAnLlFbCuQg3d/XErtdtjbcFvTPaVqx8Mbu8rsfyn1mMVX+IVbAW7lfMT+n6D6TLVNYyqKWwWztP1x6TDfhfP9u2ZO5TSdg4rxj9jN4NVFtSnxkJezcoCkZO7PmBHrOrprWcMrAjbjvzgkcqG9QPeYKiZzkf8ftM0fYt7qpfax2qO5wMYmoNiTNavUbVVdRuDnu23C5xnHHtLFvraxqgclDgtkYzjOJtFsQCDnBBxwcRATIdpjMh2kHLb4F+FXd7H0BZrG32ZvvIZs5yR4mDOpqOj9L1XTx0q/So+hUBUoxhVC/Lt24II9xN6JcnqM5PTj9I+F+h9Csa7pulFdzja1rMztt9gXJwPtLOsfDvR+vBP4nphc1fFdgLI4HfG5CDj6TqRGTMyYuTw5+g6J0vpmifp2h04p01oIsVS25tw2ks5O7OPXM54+CfhhdI2hGiI0z2C1q/GvwXUFQc+JnsZ6CIyeomT05D/DHQ7Ol19FfS7un1P4iUGy3hsk53b9/6j6yvQ/CHw707XfxHR6Fa9SCSjbmZUJ7lEZiq/sJ24jpnqGT0RE011m9mC5G045EqtyJrC9jnB7d5A1DEZBBHuI0bUSqp2YkGWwIMpsXMuMraQalgmq4z6/ebds1XzmZsVQAVBGcj0lTc5EtwQOZWwmcViqgcCZtS9lZRGCk9z9JCibNYlwZ1o/GV9u0jTpeoIsUjJLAe2SfWbNYmyk1IjVH1mD01OCGQcnJOOc/edHAPcZkGms/plw1zE0tdboasqqZJGe+ZfMdcPw4L1k8LnaOfX24mu2sCbCULKyltw9D7H2kG1Mh2mudTUvhh8g2/J6/8S0XV4+aB0YiJpCIiAiIgIiICc5VrqJCKQCck49Z0JzmfL5U/uT6evEGhWs5/m/m+8gbBWax5QB2I5x9pGQuAB5mJwN3rHbhid554PeTE6m1pC/O7BGOCJdbYUAwMkzW0rE2OSf2znmX2HiXE6oFyO/8AaYFt2fpI3H/9EjJz7+8YvUwYZlL1kibKgEn/AJkFZMWVotXiVmubxSYGqTFay1y5ElgrlqpGCUWXqJiqywCVGQkyJMo5fVGHieEoLWvWdox3AP8AN2mqKa67KwOAFchPTkcj7Tc6ht/ELz5jWQVI4K9zzNHZhNPZgEAHf7jcuMj6fSZ+6skZrRSUUKBkWrjKjjsp+81kSsLgqmec8D3lwsUCslh4tXlJIAGSP/qVKlRGfEbkn9I9/vCvTRETTJERAREQERIMCCZ4DqPxJqOn1PffbtrFgQOVXarMcLubbwMz3xnyXX9Rdes3aJGVK+AbbULLUoR7rG8Mr5s4GfpM/Jck/dOE22enZ1HxNeivTZctesWk2tSyKSjBPE2uwGAcczDTfE2uqoRtbYXd32BlowFBYVqX48vmP9OZV1HrGm06addFpE1vUdctKpVaPCU02tsD2PhiFz2HM6Oi6hR1B70RHU6cKz7xwwIOSqnngqRzMbd+pvomfS1NF8TdYqenT6pHSzUWNWpZFATltoJx5uV/4k634q60K9SlI2NRuAuKgjK44I28Z9Jqt1XTdSp0+p0puW6y56OnrsVl8dF58Qt5Uz2831xzJ6gmvur1WgWlmsan8y+o4rLMgZnRDzlWXyxtzzUvCd+3dzf/ADj4g2/5yqT71r6/tNjT/HHU7yqHUJW4UK+UXAY9mzj5Z46uxrakZ++MkfX1mw+nY7a60LWfIGq5ZmPIAHrMdfL3XKfh9c+G9d1LWVXHqIG5CoQgDacluV29xwJ2zPI/AVOpp0upr1VgaxSgNYYE1nz+VgCQDPXkHHE78fpjUvdWwJEsCcCY5J/Vjn0GZB7cluM9zj+sNrAgmQWRSMpn3MtxERAEyxEmUIiIGlq9LbZel9eGCqVKHjv6icfVaXXjNa0ttBxvU53A/b0npYks0eJv011ADWqVB7GWVV2eGPKf6T2LKrDDAEex5keHX/Iv9BJ0pjKIiaUiIgIiICQZMgwVg08LXWnjWWsi7sktYQM4GRyftPdNPlWvTT6fqL6e23U2168ME0wc+Er2EacqxUbgp+bvwRx3mfkuYz8c3lXptPqKL6U1GkC3rgiopgfQgEjy/WcrW9QXSWNYnhdQu1BsHUERh5PBrHhVLzwqlhnPeXaLUU9J0um0usLLqXLE8Gxmy23xrccjcSM+0qr6B0NKn/CIKkNrXPdTZu8xIZxuJYbfLjb6CY72dvLt2l7+HQpWzTUW26s1raxa7UPWoUHAzlgO7KvczR1t11tek1nTbQovcVm1lyVVs7bMMRjB9e0ptHw5bcdMbz4jo1pZLWZVRvznYvygDY/pxMKrehJqdNo9ILHTqSWaen8OS+xU4e4izHhpSeMY/bEfx/KT33eM1NN2n1mo0+or8K6u1g6Z3dznduHBDdwROh0UFNS+o3bWrRhVt5YMeCw/2rmbfWuk21JZ1HUWm66hvw+vbsxz/wDH1HPBDDhlWctd2nsFjoNy8gN2II7ricr2rlZ089vjy+q/Cy6ddPYumAFYCBcd8eb5vrO++AuZ5P4E1DX6S8tjy7MHHJ5fvPWWglMDnmenj9MT/KqjknDZK9zgYlVhAY7slVwce5PYSzOSMgEeoHMqtJFgIGc84+0Nt6v5RM5VQxavJ7/UYlsoREQEREBERAREQEREBERAREQEgyZBgrBp8yo6Jo6tYNStlpsSw2AAhV3h9wO0DAn04z5HrbPiI0a+rTslestIHTq02mzIb8zLfKqFezHsZn5M7bNZ4bty42r9J0Hpz2am6u3UajSotKh3ZyfxG/CAKQSSM7vpOrT0rRr046CweNTeRbbjKhmOGBXBBUDAxOQ/Tdc3Vf4nRVp2dDmltWSWBFC1K7bO+193HvzNnqGq+INNptRqK2oNaqAjHm1OP83afK7s/lCZ7fWY99v6dvOd/wC1r6LpWgtt1N+me1LKDp7QlZalNLu3eG6LxtB5J+buZvaPpGh03ganT1K9iBjTqR3K3DkKR+krjiUarS6/VaXRst3hWKa21enfIpvUgeLU5TzD1xj1mtrtBpPxFjv1bU6VtYWqrXcAqo+1UopQDagRlBU988Rv7E/La6zTSqpqrFZ3rB8StUZ2en9ZAT1UHI9+0811rQ1pXp7dHcNRoUqJoZTuZac5UsR3X2Pf3nqP4dqFua4dS1Soz2myry42W4/LU48u1h5W7jOJraynR6PbqKbKNIchRXfxTYR2z2Ib6j95OU1LJZlb3+HRB0eqwcjNeCPvZPbFQwwZ5r4SrZU1TNQtBdlJCFSpOX7bQJ6YTrwmcJHHM5VArQen0mQAHYYkxK2REQEREBERAREQEREBERAREQEREBERAxInjqPhjq20vqrtP47MxJq3hdpOV7rnt3nspGIsl8s5fs8fqfhzrXhoNFfpls3p4jW7yPDz5wuF+YjtJt+H9et/iW2UvpEKmpPMXDDOWPGOPSevxNXXsUoBVGsJYDC4z688yXjCXlr5+vQNcut6nrF1RL6gDa62ORWv8qVnhTn2m3pumap7dNp+qX123oAyhc7HuXlbOFHYeh9Z2b/FsGsSpfEr2hQgXkuRzgjuPeTYWrbTtpfzvDrbIL9043f7sTPTG9ri2fD9mr1luva9xZW4NWLGGwopRgoHG1weRKB8O6nV6QrfqEvW+latWGJLYUHITjyFh83vPR10LUNTaGUvdkllG3BI7NMdLWtel8QJ4ZZPOoOQSP1fvHTDa4fTOodU6X49LlQPItICjkAnG3I/lnrun9Rs1lVF2Cq2gHawwRzg5nPvqqastYoJC4BOfbHOJu6RdjUp22hVwO3Es9FzzjryZjmTNM6mJEmFIiICIiAiIgIiICIiAiIgIiICIiAiIgJra0kU8KWORwvebMp1WfBOO/p/QwPP7waLrqEOneyzAbPLkHG7K57y22ln1FNqkKKickcMfoP+5zwlg0QrFg8GwoyAcbcv51z7mbDV1aG2jxHY1q9m12Y4Td2yo7zLQEsGouurYLStjk1sMLvK/Mf5gTL036jTDxgK3cchDnHsRmVk+TU2UbqrKt25Vwdxxndg8ZMPq1q0q3L+eQuSF5JwMnt6wzVSvqdRa9BevbUy+KwByw7457ZnUoP5yn6zkdPvo8e2oNuvsAtPOfKfT6Tq0H81fvLGeV7OrmTmV5mQM3jlOTOTMQZlI6ypiIkaIiICIiAiIgIiICIiAiIgIiICIiAmtrt/geRgpz3bt2M2Zq69qVpHj7dpYAbu2TnEDh1LXp9FYKGSx6y29gOPEB58vvAsTVvS5Uio70ORnLcAfaUVWVJRdo7lNRPiE3BPKQD3wO5mwLWFtHhlBXqM5ZAWVjgBGyOB9RMrWuPHXxTQitVYz1MFH5hYDAJ59/WXUotaogTw2K73rxjDcKePTOJg6Imn1rPYqWOxFhoJypGMKf8AVK9TqbK9j2DbqvlGwZU1n1aGatr0tFNytUm1ySzH1P8ASb1B/NX7iatC6ne76kKpwAipz9zNqj/NX7zUc+Xi/h0gZkDMBMxN1w41mJkJgJmJl34pkyJMjpCIiFIiICIiAiIgIiICIiAiIgIiICVaitrK9qgEg5wZbEDi19K1CU26dm3VsWNZ4BXfyex95XZ0rUvVXWB4ZrBCsjAYwO+P9RnekRhbXFo6ZbW9trKu+4hjjHHHYn15lR6bqbNWLbFGxD5eQc47fad0zEiXI58rXNOlu9v7zKrTWq6sRwDN8iRiXI5XlyYgTIRiZAS2px4pEyEgCZCZduMJMiTI6EREBERAREQEREBERAREQEREBERAREQEiTEDGQRMolZsYYkYmeIxDPSxxJxJxJxBOKMSYkyNyEREKREQEREBERAREQEREBERAREQEREBERAREQERECIiIQiIgTERCkREBERAREQERED/2Q==)","url(data:image/jpeg;base64,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)"]