["$ empty..G$ ","|empty strings$","ARHDUSystem.Console.WriteLine(UHHclass ProgramH{HAstatic void Main()HA{UHAA// Example string.HAAUstring str = UDDU;UHHAA// Example tests.HAAUif (str == UDDU)HAA{UHAAA// 1HAAA// Test with op_EqualityHAAAUR1);HAA}HAAif (string.Equals(str, UDDU))HAA{UHAAA// 2HAAA// Test with static Equals methodHAAAUR2);HAA}HAAif (string.IsNullOrEmpty(str))HAA{UHAAA// 3HAAA// Test with IsNullOrEmptyHAAAUR3);HAA}HAAif (str.Length == 0)HAA{UHAAA// 4HAAA// Test with Length propertyHAAAUR4);HAA}HAAif (str.Equals(DD))HAA{UHAAA// 5HAAA// Test with Equals methodHAAAUR5);HAA}HA}H}HHUHH1H2H3H4H5UBenchmark resultsUHHEquality operator ==: U 796 msUHstring.Equals:AAU 811 msUHstring.IsNullOrEmpty: U 312 msUHLength:AAA U 140 msU [fastest]HInstance Equals:A U1077 msU","A'rEAXXCE| 6464646666}/(.BXBB(XP88A(CbB.","Empty strings."," An empty string has zero characters. These strings can be checked using a clear and efficient method. Developers frequently need to see if a string contains no characters. Microsoft's FxCop has one recommendation.","Example."," Here we see the 5 empty string tests. Each of the 5 tests will be true, as the string \"str\" is empty. The code prints out the results of the tests, which you can see at the end. ","Result: ","Strings were compared against empty strings. Checking Length was the fastest.","String Length ","string-length","First example."," This code shows the equality operator. For many developers, this is the clearest code, but it is not the fastest. But it won't cause severe performance problems. If you look at == in MSIL, it is called op_Equality.","Second example."," This part shows the static Equals method. This has the same semantics as part 1 but uses different syntax. I haven't seen this method used as often. It is an alternate syntax form.","Third example."," IsNullOrEmpty is a newer static method that wasn't present in the first releases of the .NET Framework. It performs well and I have seen it often in the wild. More details are available on IsNullOrEmpty. ","IsNullOrEmpty ","isnullorempty","Fourth example."," This shows the simple Length check. FxCop, Microsoft's static analysis tool, recommends this method. However, it throws a NullReferenceException when the string is null. This condition occurs often in programs. ","Null Strings ","null-string","NullReferenceException ","nullreferenceexception","Fifth example."," This part demonstrates the instance Equals method. This calling pattern is different because the compiler must know the string \"s\" is not null before calling the method. This changes the performance.","Benchmark."," I ran these if-statements through 100 million iterations each. I did this in an effort to improve an ASP.NET program that had to use these tests frequently, although I didn't measure any improvement in it. ","The fastest way"," is to access the Length property. If you need to detect null, consider IsNullOrEmpty. If your program uses a slow method to do this, and it runs thousands of times very frequently, improving this is worthwhile. ","Microsoft's FxCop warns when you use the other methods. It is right when it states that Length is the fastest method.","String.Empty."," In the string class, there is a public readonly field called Empty. You can access this field by typing string.Empty, but this field has some negatives and I prefer the constant itself. ","string.Empty ","string-empty","Summary."," An empty string can be checked in many ways. We choose which one depending on program context and preferences. We saw five different ways. Observing benchmarks of this simple operation is important and useful."]

%iVBORw0KG;)NSUhEUg?ANI)5C)ABmcSrf?AC8ElEQVR4Xu3Z263jMAwE0KhRtsBi2MrUwh5YhfYGizw8pkPZhu+uA8+fBSHIAfWyfAsfSPR9cZP2EzXv90Txw/tygwwEezyB9oreUfp89FOS0KaxHu3UpNDGMZya5C3LmUnevo3k7dtI0b6OpP+IdHfZO8AfWuwkoX0bKRpHAT01.SyoH3qdKRg0YMqBckBVTUMnv/CAXhsJJnM47PWvEjK1pzk70UUxKfCS+8BeTxYDJAcz/h6Es2a6M/YIsmlUSyWSQ0u1LcgUVaS;v0ii+QQlsSpKQ8fijJl/9YJxKViGPjpIYjSZaPOx6TPnB4snFS8wNJSjP5PdnrckhbDMZJEh@/sp2ktBU2nV48mFSMyZxpiQYodQs7q2mz2czni/3YN2Z3dzSxQWtTlQkjk9J8Wx9PW4iCfeObEcO5zVE4VRfVKTCZCTaSnKqCTfZwgC1+UokNYkDMpFoG8m4JPznc1I6b6Mg1SYSbSNJsjqCmA@2RRDRapNJEpJVpCyvp6WWbPdbi+Ju7Oo2JfKqYTUmZEkdWpBGjWh2GdiJ0knJG60guQEGDM5kVBMpsASydeTcAhJ4+N9l7BIGooq/S4JMo9+fqnF/FrZ/wMSb7e8nE+SXZzQGdVTv6WNGamljbaB5E+7fzA5kbKiRFYQ2buIryeFPhc5MoG2T4oFXy9IfPijNrbVMr75KhKLeFahuJkUNZ1IJZK+Nh93sjCeI2nrt3D35H0pisXO0pXCqUxlNB06syKBSJMygw4qNwzfgr+/GYn9JHmDMjOaMkU8KyncuRo5qQlALb6KZMTmFj5xYExUlxTjnw60H0rqVoqGSip9nORHkmqT+NAdncQ4Cf1AUj32LKhrJapJ1o8ndZeiRFVXncK1EB1DoiBDCXoSFHAiifA8OozEgRLIvOeJqV8ZzsdWSPKZ49Z/I+HQvy5VeN01+8CUn8QDMFXA6fvSacIkykU6JBfJAZke8HB2EtosF+kiXaSLdJHOEugsCekPLpirci7wXYM)ASUVORK5CYII=%iVBORw0KG;)NSUhEUg?AMg?ABbCAM)BdDpB)GFBMVEX:/9YVfW/vvqSkPj60LHy6vD3snr1n1Oi0Zbi?AEBUlEQVR4XuyY0arDMAxD+yA5:/Hl3VU4AbhLRe2GaK3zMbambGX9mgkjKfi6C0MgZh4Fr4MwBjBBRCOu/D9Hz4WQPBrIOOhhRlhBxCJCzPSC0SKRwZ1bAGyQYDTJECfw2cO4MKnEfhPENkUINUsBabdf4phZk1pqsDjSmSKT8IM4m1qEI6sSLkpZEmQwzpQHmUdFjYlCGYDOkpvYQRvch8JOpsaxFvQdURiUWO5I1k0IJ4jkE7TjCiFmFoCxRVemxFvU4OoZAbDlBPMKVMN3MlXttZAtokKxH1vkUz+/jy1KNZB4g5WgWRP+I/k7wuG2T+LIFIJUljiXRAz/B8ACR3pd2kN4q8W/AwIdDZ7swtIvATCViAsO9If5OeHPZ/9g2OD9auzhoRLIP4P8eMgGhIsgKxeUXhIiBEsQOqllFICFxmAUDzViNvtj8Wl0dwjApeRqiYbzLYcJYiHvYVl8XqNdx4ZItncbVGCqIZLUFQtMTUKEJ8XUwCTbd0R3xNUHalrvPrKsOxINSMSpzwoXM+IRlwCE4hJ07iUM/KOcLEAgijkXgdBC8elXUbHj0sg3aXbRntRl5bO0pyybxekzg1JEE0nxL8/7t8RdN9UugVLW1tbW1tbW1tbW1tbf72X4VLDMAyDZ+n0/q/McTAMVSJiys3/uniqP7tKU6D2i0K9B6H931nvAbyo2L6Z/75lZH0Flyiojkoo+lRZLFyDWw1aUkMkEFblOhVKMK0M4jK5aQWHq8ocTjJvJmoAUoO2cvDHjotRqo5JquYTyWmKIP5P4ntD9xlC63tgAsLYCXzI4aK8Nnujwi87uvLmQmhKAOnrbDGtVoAkcy2LDqKfyti2k3dB4CbNMr7gZc61UDdBZBa1yBNhysxa7nQMQVwgsiaz8yQzz6wHAo1BgvumMpNHS/mt+fg7CENK@l3xbdfL0MZROD+TBduPQcJduPBMYaPDNJBbWv8gIWmIF4sfzsCMXTgEKRKa+/BujUHEQ+OMtHpjwFIYQVC69ccRBWPH/HJ6g4ojCzOBJ7AMYhzZI9wuaYE8v27DK0SQYoRZM7hHzdYOj2BiEUY+RIEfaUxCIwjD2Y1k?S9loDkTXHQEYcmQRLp2cQt/auhL4egrBFDkmYfVzUyUji0bcvDWT2pZ2ndxH3GIL4s4QpiJwjx/+BKP0CKyqDqJrj1SBuPvwZxDdUjyymgUdSRZg/WnMON3vE5OI2SiLNpoHZ83ZFf+PC0TECwXbH9mLW70yWB371KW3g6Ff74cFSvkBkEVTjgV2JcTiJKhg1SiQOR8WZCLfnyroPgqBwDKIzEXnK7Yl0MHJkECfJIvKUsUf2ReB4Z2VIwpkIA+r9EJ4wBG6oPEGBmGU5b5CPThswTEoI)AElFTkSuQmCC%iVBORw0KG;)NSUhEUg?AL4?AB2CAM?ABBEdl2)MFBMVEX::/9/f46Ojz8vLr6ur9/f35+Pjo5eUEBARpaWnFxcXToqLry8vjs7PKcnLV@AjnvbX?AKRklEQVR4XtSaYY/zNgyDDZCS0va2/f9/u9VWCKG+tElueK/1l9ZI4dBnitYDXPvfxrV98rgst88Vf70sy6f++eN2Wf4bfWIggQ/zzXK5LJf7xBn3Qf8c9bjcIq1vDHpzRHT9DhLWPmAM6yPYmj4xTuIDrMRluat0DNdYhDVEwAwR/v7JM6yvcdfMgE7is1LfI1prOokPkF9T3xioWykP3jKTsCzFIc6gaYZgeRD+5tY3hHIfwFAs9bkVEv4+iXqTfAMjYDmJiMCqHiRSvmekwt+rcsF65ZoXHyHoa00wAPYdvMmlFXLHg7kZkPrGcF0LrTmAPgUA+03rL11hEW8y/JCKoCmEoGAqfRL6RuxX2uXLEAqb4zLCmw0PIag7uQYr3NF9hSyI37A+azV6hOmL6QLOD4KE6Y7QKTlV038cVRz5csKr59mQpmLkxxi1p9BDz6LGr6AKySHMgxiXgA+9RJ6IgWjqqhnpFdBrNWD8EPanUAWRqAL4mJKROvJgAv5wHXuw+YNXDEFovb3HQJ5HlbVyrQS9g0EJs/SW1Zr1hiArn4l5RkkbuFN/LMuPUKVcSRukxQDQTBtIXxGO2iV19SoKD9prcsNtyYsfctxRVMmo2SIti5AszaOrKz1qqXNok8/JDddef0mr+t1hVFHiT6SlfRX5iOgG0sM+RGeo8rE6yb+/NZdMP7E2zqCK5E2@T1SbAwIBgQ1nm+WaxBh96fQJqdxu1wxrI/Vaco4wg6git4/k5aRKO4w1jZCXxgsyQQgAtPlsNnzGqAyK9G1H1WQ75eoGVWMI1LppX+AnGVaKHM41chReyyQJ4t+keMQqtiDkWZUIRmEtSmvVMEZm/nuXfKvDylRzGo7UUU1X0lrG1XkNcNqdE59NjTTl630ewBUt8lwCM7HJvHiLJHWS1SBnJTqpo5PnlIsvUg/k08f5SuSJlQRJE6k9QpVGEGs6mzut7POvVsz7JkFVH4SWRdtUCGDgM+oMpPWblTRM8nXbvU7Bp9Yf8ZVH9GlQ9Hp5XLwgSr60URau1HFYM1sZkyqm4UjsJV+oYRQ+SWCuNTDdbswHewyOgGbT343qoi09ILVrAZUG2/TqqV4DXek/BGgUMEhjZvPyNAWat3ZXlSppKWS5vhhhBLgWfo5JX7Kbk8YxWwBQ0rP46gnvxdVZtIyyAgsbcY2raZLc7jV2geJXGiqPwaROeNkq6TlR1FlJi21Gc7gs74FCapSrSoaC6jwjAESmDvc7N9FWgdQZZu0NKU9QxUHFCjlZKNXLHQrajW16i6rmHBdpLUTVbZJS7CCV6iiLbAbRLGPLKo0jRPWlbLWkw+jyi1+AFXOkpZQpZCWOTBWtTXR68E89MYMGOTT0v3ker4HVc6SllBlJi1kYwuhN+RHAUgniamt7nWs9fw1qpwlLaHKTFqKrop7Dm9e88Nj3JxVf04QhPkgILMnqHKatJT6u0gLgTxSyU+p6oyKDIuQE7TeBqqcJC2l/kvS0oM5UjVJ9ZRTpE7rAdhAlZ+Q1nUHaWn/NZPm1Y3BNsn3CCY9aRRUOUlaQpV9pOVaXpk0gZBivAKgHMSyXkGVk6QlVDlEWsokvaNaILzkD7CWqX3X7stJPyCt22HSMkGBrpbJArYaGOr2t/LjLGnJ+udIq5jFp/rjiE3qGt3qec+TllDlHGlZPpGTSv2hno5Ub8fHGdISqpwmLTmpvlE69cUjXGGzOQ6Slqx/irT++vubIXX1GFYr7fmvgAO@VRJh33Fw/j6+tJnmYwquH2j/p+wWT5KP6Va2hzHSevaH/PfYs1gSY4cBKIlaWwdgMf:+3GTIdxd1kUJffObl7xgaCL50w0xn3pcUBvr1Lk2Q/9iG0IN5vMMFedtIIrjt8V82jQTjLsa5+DSL/cWfjp4Ms91UnrKaZAuymYHxM/FwT9fTD5Ge4s1i5uEBuKpFWp4+2eFPmYhp0Lzoyk9RlV4vw3nszZd0mR2+3bzynouQCRtCKqhEuKS8Y3SbF2T4Yew9E/NzeS1lNUeXnzPb5NMc5SzjwGLH6UhzNaRpWPSD+7Ssh3ktPbPUE7Fptr6MPDZ1Hl+CsNFprHWbfB02G5Kc6MpFVElTd3Etpx0twBzzEW4IG44xVR5c2d7PAGeAwbU1;0JJHlX3JkhFn2W3wCDan86ckTGgeVfblzAX53gGPfpwy+0fYmyqq1Kp3UhbtswGelz/2jRQalN+LKvtmwP8ET9sAjz8fAxdJK4sqai6vTFQ1iS0SEVOdowYPxx3wqLOUHIcuN/c4kspnVFEH7Ah1c9Zy0dkeMwXQdlK0Na8sg16YfVsUfBxHUplzCvjTzqkALqYa3amqmrkDgLfjmIBHPdSdh46QoQtrs0Ezw36klaGA/f5ou4Bbxoqp5lDZsI5fgkfQDRwYmlcEpP9eegW3ypMvZprTHxaAHHs4SCoKoE/zUpDa1FYwN/Qyq8CeD8kqTZD+NC8FvWFqKxsm6FU/imz5EM9TQ3+e16y6j2EMvOVy+jV4bNuHRCWfV3PsjissbRgk/dTgcXqCqahk81L8liuswDPxzBfFLu77ELieVwNtpaTeXMVO/eSZoM4GTo9KPq/ElyfQc2YBnryf/g54clA7ettWQcmmPKs4ZzHSbDDxMjUYuoSJ2kOqOoMaZf5zxuWRpDtnvQceZ67mJLzI3c3QCjw9BU/9nzQpeLgEz1gQroPpl0w@tYfM9XWsh8L2csqhuXZwJllaoAVVyeu4/Ukq2qPmYK31AfbXlYx9Ao84xI8XcWRxFoBiKieQK2qC3Q6+tDcO5I4M98UiMpCKgDYmqsmQQnRcc+c7J83oaXZQJGonKXi0djFr6NmDmBj/0iC3mRxnlXy1ACi7d7PrAJoZU5C++DZzyrY2PhKu8DcPJLsbe5Iskpe2VoywytzEop+Sgla3Ezzyh7iHK0YsX/edHqJgxoUvvWZGpbV9sFT46AGheL9DiRy8Nhfbe7E65tpXgk5df9QmJPihrsLHkHvgqI5WK/aLxhRg8f8JLTAwU1QNAHE9Eb7s2w/+qnN/tzLKvmxZQoA7mbar9pXrMB+eiTxeVZLwTPxonJSU4v5SE/IkxwuMf1UBp4wAYneAc/LhzSmqjjJgSlDigCA7J83KxzUoPhljOe48upBF8jSSuqL8gXfyCqpZXiWfAkko8vAKwcQ/dQbV2SVvBJS7GGM3SH99ju0wiA5l1mlrzduP6tA6su7fqnnniFvH5J+iutsnlXySuLea8cWjV1O17D33lUUyyvbr38KlRVT5L96V0m2Ztcu51iHxBwvtJ9Vdo2t4a3KNoam/eyDB1pe2Y6kzNOLzzZ45hZ4OuSVzc1V0Pp4Bu1731WishdJDewFcvKvvqvsZ5WdSKrOKzIGaAqe739XkVP7LqYZ+bs5+IkYujKk/QXHrJQ/6LLQvKqE1AHAJU75X1JVEwdcF5sGYvog+/z1D9Hrfsg3l4WKSmioCYnclqwexlkuOo7/TW2qqsQpH0RMLxpqqiIAuNj5Cv0PJGHeo8tm4Og)ASUVORK5CYII=%iVBORw0KG;)NSUhEUg?AG4?ACCAgM?ADasxWR)DFBMVEX/6Nn:/+VlZX29va5ksB5)SElEQVR4AWPACZj/f0DmjkqOSjKtQgcLyJccZiEE9SOmP8mXHEaBMBoIo4EwGggryJccvvVKKAogTnJUclRyVHLklgmjkqOS?LWyrsxEHLD)AElFTkSuQmCC%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%iVBORw0KG;)NSUhEUg?ANY)3C)ABVkOvV?ABSUlEQVR4Xu3Y4WnEMAyGYW+sfbSBlvh20Bbawq3TFCVFuDShJDJ6f4b7HB7IEe5afyKjIOjILk7Py2dY2oIYI7s8TcUqVrGKVSyTLf6M/sDyKfv0aVaczljztFj/VbGKVSyFiKqN8rKwvwb0iyHU9kgA6ATwvWTYaHL5ARYdwdyO0fw2FHwuuPw4S8hJ7tLULIK4J3BlZQ1V7LLMrBaGUUrWNPJBbhYR/WRpapa7JXgKk7L8FWy9U7BIy/InzlyalRU+cAux5CCgNVhOXonlX6wlWfZSVrGKVaxiFatYxSqWthVZ1pZk0WIs9VluFp9/f/oqNwtngHajtgDLDgIG2FG/LnULIz4cMsLIRpMpoil8eofVL/8hLO2Xdtzlqd1hyZqsHmqEsrMQHpue1TlQpWbFdyEBwPlZ/q7yI+UNrH43E9piqKpZf0Uf/uSX7MnWyF8)ASUVORK5CYII=!D%iVBORw0KG;)NSUhEUg?AMg?ABJCAM?ABPapnR)MFBMVEX::9amn+z879o6Lx:rj:T/MTH95OP/9PT8ubj/?Dj0cTR/+3b6drx9O/W9ORYTpHN?AEfklEQVR4XtWa23KzOgyF0cFHkvT933Y3wa4QQYPr/RPqdUenhnwjLUUSmYYRs6tinqaQiACAvoVhIAp3q3KOHwmyFsQhMITi5pgf5PNWfoho3ETMHARDBGNxOGZOeU+kAqgOMLyFD4jC3+TIuAZRAWT2u+iewkUcjr8vJa+Alg+PSAQ52iCPbIniBT53yyVUjHDALiCYTflwFQcpSyiZFqH8F0g0R/TCcQjinOOV16HKX0HiKocKCDTB18sC/yVOCwk+XberZ/Vnwt+AxGIHd1vfLIDUuw+IdUBQAtJxSNstVhL6oNVZZ1bqSUcqkSqhkkLuPwhSL4ttYzu9HEKpZpowf84iTmc7TD1ej9IjsMq5HKTDdq5Uu+fTEgG8qh2lWAF4Ub0MiPM832/O8XL9OuLLiSOL0K9AgiSQAYI7cwJv5gTAdbSdThFauqdJnaF4nO19XrdB3hs69HkrCG8pwuwrCDMjGF2Dne19XhcQjZjf5p0AeUc+bUCYudzb7fYPEA+yferyugnij8MhoZN7O2YuaTszP4RDRKd43W4TCkd9VFJjCxHIdeQfEHeTdhT5sR/DeIrXBUTHitSYIBwwF+ZINURUQJ4cTkCkkgPGZ7mrIU1lU+LcnVYq1EAbpQ6vC2K+qz9XDj+r707d5jxju/JF5YC707cmSdfcIGrxup1ZBVzTwdf+V04J3eKmAgA1VYx7C/KBsMXrZvFNe2MCGN3qvC4L9ebelxAKSNq.AtIaPG6NdnAbpTibu3TIOWvRf6+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+8H8W)ABJRU5Er@ggg==!D$/9j/2wBD?gGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4MEQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJyf/wQALCACgAPABABEA/8QAW?B?MBAQEBAQ)))ECAwQFBgcIE?BAgMEBgYIBAYD))AQIDBBEFBhIhEzEyQVFxFCIjcoGRBxUzQlJhscFiocLRFhc@VPhkrLx/9oACAE)/AP38EYm8SMbSNIhGk+RCxV4EaRxVXv4kYncVLwtpeRs)AK5kZ7xRBRASgABjQUFBQihBBBpB2l5Gw)IVSQ?qEEgGdBQUIoQqEKVUF4O0vI2)BCbyQ?CEUkF.QVUhSpBeFtLyNg?AZxozYDUc5FXEuHLkq/Yok5B4r4tX7F2x4VNtPHL6l0c1d6eBI?I3oSCpIIKrUqpBUvC2l5Gw?AOWf2Iff/S45WmjTVqJwOlmw3khY?hdRIIQAghSqlF1EF4W0vI2?AByT+xD7/6XHMho1TVqnSzYbyT6FgACF1EiqFMTeKDE0K9CSqlVKqVzqaQtpeRs?ADkn9iH3/ANLjlQuimjTshezZ3U+hYFViM+JCjpiH8yYUZIuLLZp+Zda5HmtiOonWXzNGuNMRbEQ52Sm9SqqVUgqqZGkHaXkb)pFhQ4zUbETJF4qmercYrIwvic3ktf+1SOhfDEXxRF/Yjo0RvvJ5L/s6YaK2G1q8ErT5Icr4r8bkxLSqlcZVXlHOOiSX2nh9zqzPHa7JDVrjTETjIc/JeR11IqRReAwu4KNG+motChuZ5Go)AIPMiu7V/eX6lcZGIriOuz1TtK/h+524m8Tw26kNMRbEWxkK7JT1cKcCaIAQ7VhqS)?Dxozu2id531KYhiIVTpkl9p4fc7G7Sc0PHbqQuik4icRCuyU9ui58OARyeWuoqnEK6m6qhEzXiS?Dxb3yMraN1rYk5yHpYD5SNiZVzaqxixG7CouTmofy1/EF4rCuhFsa1Y01orVZAta7s/CjxW4IrYnR4zMbcPVWDjRzFWiORFpmftvpUvJaVxbgWf6givhTExEgyLJuI5YsSGzRPiOdji41c/s6Vdnv1niyVo3muN6QLt3fmLdmrdsq8Eu10wyffpojIz8TccJ7tlqOa1Wpwqh0ek+/17bjXtkegR2zljTEFk1MWd0dnZw4T9HG7dvX6/wA8mnu3Fvna16r2W5LdNl5mwZGFLzEjo4Cw4rmTzOkQmvdj1wW9R3VzXPLUfJz9+r3yd9bdup/E8rKvl3/2jpUg12nfGa2LBk8cHYw6RGY3VqfstjetfVUp670frPRp0zQez0nvYPwnDHXt4vfd9SlSKip1ySL11pwp+Z2N2k5oeMi5IWSvBfDM0SDG/wAbv+KmiSkz/jXzRPuXSQmfw+K/tU9UEYW8E8iQ?AclqWbJWxZ8xZlow1iycy3Rx4aPfDxNr8cJzXeSny016K7kzliS9340i/1fKRnzEr28XHDfE28MRz8eFfhrQ9q8l1rIvXYkSwLXhufKPw4HMXDEhvZsRIbqZOT/S5HzV3/AEUWVY1uy14Z20562Z6QgpL2f097XtgQ2orW4cLa9XEtN2ddZ0W7cObtu+EreOPaUL1fBl3yMayIsrj0kvGbhjs02k9/uZHJ6OPRn/L60Lajwp7pcpaKw+jQsCtfCZCdEwte7EqOWkREqlNRxRvRpeuFeG3Lw2VeqHLTFuw3QI/9D14cOmCHonsmNuG1raPyzStD7+w5Oes+yJOStObWenYEJrJiczrFemt/iRFkHufEiY0o5y6s9a+BVJKH7zlU0SWgt93zNEYz3Wp5Ekt2k5obJChN2WN8EQu)CMTa68+BCPa7/AMVCyKm5cgAuopuJdqG9BnUJrG9dZYpE2FM?S3aTmh0g?ABVRPkVo5XZrRNyJ9yUajd1CSuFErhRKkoqqlaUXgSCKISQiIN4RBh+ZJSJsKY?sxFxJzQ6?ADjdPo17mYF6qqla8FLJPQ/hd+X7l+kQXKi58lQ1a9r9leZYAjPF8qZkg?AFXouFaGaQnfInQpxLJCZwLI1vB.?AePFTt4nfd9SWmzTrl0yd4GwBC1qn5kg))?8iL7aJ3nfUsw3adELeakoCN9SQ))?eVFhxNNE6jqYlVMl4ktReBsw6Ie81CEg))?AFX6vEpQlORZFJQk)))q9FoVwu4E0XgCzSQ)?AD/2Q==!E!