Dot Net Perls
Top 37 C# Example Pages

["/.swe.srhddd.Z+gCCST~~}T~~YF468968775686F5555FFFbCCP64646464XB#C*CCEEEXS}T~~}T~~","FileSystemWatcher."," This class monitors a directory for changes. A program may need to process new files (often written to the directory by other programs).","Many features."," FileSystemWatcher provides a way to monitor a directory for file changes, creations, deletions and renames. We do not need Windows Forms to use it.","A console program."," This program uses a FileSystemWatcher static field. We initialize it with the new keyword in Init(). We add its Changed event handler. ","Changed: ","This is triggered when a file in the directory is changed. It may execute twice per edit.","Note: ","To prevent duplicate work, it is a good idea to use a flag bool to indicate what happened\u2014so we just set \"needs update\" to true.","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","Based on:"," .NET 4.7 (2017)\n\n","C# program that uses FileSystemWatcher","\n\nusing System;\nusing System.IO;\n\nclass Program\n{\n static void Main()\n {\n Console.WriteLine(","\"MAIN\"",");\n Init();","\n // Run an infinite loop.\n ","while (true)\n {\n Console.WriteLine(","\"TYPE SOMETHING\"",");\n string line = Console.ReadLine();\n Console.WriteLine(","\"TYPED: \""," + line);\n }\n }","\n\n /// <summary>\n /// Watcher.\n /// </summary>\n ","static ","FileSystemWatcher"," _watcher;","\n\n /// <summary>\n /// Init.\n /// </summary>\n ","static void Init()\n {\n Console.WriteLine(","\"INIT\"",");\n string directory = ","@\"C:\\programs\\\"",";\n Program._watcher = new ","FileSystemWatcher","(directory);\n Program._watcher.","Changed"," +=\n new ","FileSystemEventHandler","(Program._watcher_Changed);\n Program._watcher.EnableRaisingEvents = true;\n Program._watcher.IncludeSubdirectories = true;\n }","\n\n /// <summary>\n /// Handler.\n /// </summary>\n ","static void _watcher_Changed(object sender, FileSystemEventArgs e)\n {\n Console.WriteLine(","\"CHANGED, NAME: \""," + e.Name);\n Console.WriteLine(","\"CHANGED, FULLPATH: \""," + e.FullPath);","\n // Can change program state (set invalid state) in this method.\n // ... Better to use insensitive compares for file names.\n ","}\n}\n\n","Output","\n\nMAIN\nINIT\nTYPE SOMETHING\n","test","\nTYPED: ","test","\nTYPE SOMETHING\nCHANGED, NAME: file.txt\nCHANGED, FULLPATH: C:\\programs\\file.txt\nCHANGED, NAME: file.txt\nCHANGED, FULLPATH: C:\\programs\\file.txt\n","hello","\nTYPED: ","hello","\nTYPE SOMETHING\nCHANGED, NAME: file.txt\nCHANGED, FULLPATH: C:\\programs\\file.txt\nCHANGED, NAME: file.txt\nCHANGED, FULLPATH: C:\\programs\\file.txt\n\n","Contents, file.txt, part 1:","\n\nHELLO WORLD!\n\n","Contents, file.txt, part 2:","\n\nHELLO WORLD!\nX2\n\n","Contents, file.txt, part 3:","\n\nHELLO WORLD!\nX2\nX3","Windows Forms tutorial."," Before you can write any code, you must set up your Windows Forms program properly. Open the Toolbox and double-click on the FileSystemWatcher icon. ","Then: ","In the bottom tray, select Properties on the fileSystemWatcher1 label. You can specify the directory you want to monitor for changes.","Example: ","We use a directory named C:\\watch. Next in the Properties panel, click on the lightning bolt and add 4 event handlers.","C# program that uses FileSystemWatcher, Windows Forms","\n\nusing System.IO;\nusing System.Windows.Forms;\n\nnamespace WindowsFormsApplication1\n{\n public partial class Form1 : Form\n {\n public Form1()\n {\n InitializeComponent();\n }\n\n void fileSystemWatcher1_Changed(object sender, FileSystemEventArgs e)\n {","\n // Occurs when the contents of the file change.\n ","MessageBox.Show(string.Format(","\"Changed: {0} {1}\"",", e.FullPath, e.ChangeType));\n }\n\n void fileSystemWatcher1_Created(object sender, FileSystemEventArgs e)\n {","\n // FullPath is the new file's path.\n ","MessageBox.Show(string.Format(","\"Created: {0} {1}\"",", e.FullPath, e.ChangeType));\n }\n\n void fileSystemWatcher1_Deleted(object sender, FileSystemEventArgs e)\n {","\n // FullPath is the location of where the file used to be.\n ","MessageBox.Show(string.Format(","\"Deleted: {0} {1}\"",", e.FullPath, e.ChangeType));\n }\n\n void fileSystemWatcher1_Renamed(object sender, RenamedEventArgs e)\n {","\n // FullPath is the new file name.\n ","MessageBox.Show(string.Format(","\"Renamed: {0} {1}\"",", e.FullPath, e.ChangeType));\n }\n }\n}","Notes, above program."," Once the program is run, you can change files in the C:\\watch directory specified above and dialog boxes will display what events are being triggered. ","MessageBox.Show ","messagebox-show","A problem."," You may have a problem with receiving multiple Changed events for a single file change. This must be due to a technical detail about how some programs write files. ","Note: ","You may need special code to filter Changed events. This depends on your application.","Timer."," One of my favorite techniques for monitoring a program for changes is using a Timer instance and simply doing a scan on a regular interval. ","And: ","In this way, you could simply scan a directory every five seconds for changes.","Also: ","You can then call methods based on the changed detected. You could use the FileInfo type as well as the Timer type for this.","Timer ","timer","FileInfo ","fileinfo","FileInfo Length ","fileinfo-length","A summary."," We examined the FileSystemWatcher class. This type presents an excellent way to persistently monitor a directory for changes, without lots of custom code. ","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","3679700504","data-ad-format","link","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","url(data:image/png;base64,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)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIwAAABpCAMAAADflzs9AAAAVFBMVEX////2+fju9PHy9/X0+Pbx9vTo8Ozj7ejZ5uDP4tmwz8Dd6uTL3dTV49x8sJe208Wuzr/P39drpoq61chopIecw7CSvahgn4F1rJFjoYOAsppyqo9IgRfDAAACtElEQVR4Xu3XyVKEMBSF4cxh7Hn2/d9TrtE+VUhTaJrcLPIvLGXjJyegiq/0ZfPIoIBRt2sOBYzLCePzwZiA+bgwtvnBaNES5iylYUlrLbffGGnlF+YiteJKNyPMWUjNkh0wu18YprTNCCM1PwZpZfLBmJwwumAKpmAKpmCSVzAFUzAF47oQvlgCcEMrYtxfMBboVTBtTpguG4wfDCoXjCXQNMb3g6/3Iwo1Bvlq3/Wti8aIfdfVwFCghtw8BnP3JhbjCQEMLMjNYhSAdSyGFO43Zk+KvuoJs39iTLhQDT0xNSm86wM7DiPCww0MoA6fvD7A6ueOtKSPxVSkGGPa502vCTuD8T9YQ8xYDDHUGENr+Oc362cw9LNYQRHGRmJoJz/GYBwoxxgcLmepeEwYov4/pkPxmDCEeRNGxGIsTTJ/ZtJhaPbqH08T2AqAaAzt5Be+ZwxhzOjR7u3bMEG16A2MWSqBlx6qojHYff53E2YhJy68GVMBA820RVjAoXkTBqz5v2eQaseXXRU2da7831QwBbNmUjapMPK4na1pds0lFcadrgtKhTlkhPH5YIxoCXM/ve5wSIXRAbNTbjLvvFKXK3VOgJEVYRqpJ7PWmPPTsjJG2m+MsFMpZRUsqTBbIScyRmhYEmJeBEsSTAvMjCUl5jhv4cfAwo+BhR8DSzKMUMBMWh4yIeblTE2wWJEQo19gtsGihGC+M7A4wYyBZaPA4JsJG/HfGVj4McfReeF66cGygYURc8RG3BicF34Mzgs/BueFGwOLEvwYbMSPgYUbsx2dF14MLPyYY4eNuDH3xwGW5BhkFDmw0SLMppls20S0o84nWJZhEgQLP+bmxTLMx/qWUy8WYjbX+7pdb5VYlFau7uq12g8NH71YilHGGLlKhpJieUZbtWbWavGH5MqJuEqfDRAN8iKPPjsAAAAASUVORK5CYII=)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPEAAAEiCAMAAAAfyMQOAAAAMFBMVEX+/v7t6uSenJzDubZ/eIvl3tZJT22ZsM/UyrXW1c1mjr+szufR8PuITkHKlm8HEmdoMjiXAAAZTElEQVR4XuyciXbbOg6GsS7c3/9t54CSkzhLp73N4jr5j0vRBCnxKyBHMGVB0W+lIqCA30jABor8fdxcCiVxEfsuEtzEauvb6FsQO+AWoC17IDapJOttVVnm8q8SB2ogFnpK7BANfkEEuqzav0rMRmCG/JS4wlgQtThbK0WWlyxr82JWyBtgVJfl3GjVwmz/FHGxZYv0GTE5iAOWBtLQGkjH2qN2rYAqPawCV6AG1FHs3/Kxgi2C58TKshzG6rEqVEer0ECdqcJc2WoZ+OwsDYDWv+djeRnV6yDGVUEcrWEFXms9EnPDlTIH+cfOYwZ5QSwnsfUCvBoUoFUh2uHjBpwDuzKLe4t/yseFmPNFT4mXpc1sF5aEctbt0nputta/JHvQFfEzVV73Kfym19WFFb+HNPQgJi7fQ0yPxPEd9JRY71l4Sp8Swz0LTwF+E2Ll2GL8NsRRtuIFcTAAlg5/K+3wfsK/Hvc28VxGHqvCIRLxq9B4wcEN1HtutuLSfdgzZKSzYUp70qrwTJMcgM7Dhoi0whXOd/RkpwWvfAhQCiCftl1G/Q3iUWF6rAMTZYk9JZ5puBIOg7karnqCrn4hhiuNsQ7QOUw2+4tJXfbgQGaDjr2IuJ7EPK5mI/1qWMu5h8AW9d8lnmsJ1SQWs6abYwrAqLthrGUwzSpMG0ZkNRHHqrF6mFnHsezSdVgDzUa1Jj4vxKMD4OwwS5j1uQSm1aQpY+Og7yOqtMvMmfN4kkSAkyEIh7Ucnf+Uhk+B2XB6jwbDBGJtm5NYg+z0NrEOK2PxatNoLEzCfrhwLmowV21zyVhtLt9lz4rIXB2YlqWHyljOPBYPg2G0LJatHHv62LzDrFh9OGtIESFxIbGoyacVKGHFt49z3uxzkNSwWiAqkg8rjOKcrWRhLK6tBJeZ0zBH8RDnOcqs2UkQtGRaZC+IYc+SEye9A4mMo26yVRMeZloO1nyvS+qUYaDDbJ1fJlx2pNm3RjY8EANO6yrpKOGuflL1qCAnsTwQU0PEJM79AEQGEM8+zRtQes+MHATYgbhF0J5GBcqWHdVE2QlBQ2kt1l8Qw6FxwAKopKNbNlya+/G+6lieiHMTZw1wEx/wF+IOqb5hprXs5FFhbL4eDtSVL1Ed1pEPbydx4pecBMSokMfIIQKwYbMY1DXpPUEFgjYxEmWnJC4ohK/7ePHyWOmcHVSAiTFNrOlaoun+fkUMY29trIyAmmM9ifdb8yTe0ZJoIGa1J5QOE9VReZg16pw+nrb3R/u4005vk0f2mTvsYHQQkwbTcmRlB0HavWF4+l0qDCvTjCpg3U7fxIFaXhKXDlowS6KGTNQOf0Eh6gDKDsDkHQscL9DzH4SXAhDUoJB3LdsSlO87AHPQdrJSbmnvpwEUh8j9ASLsgrmdJlTA8/pwj8LdqhlvORy5I1G7jMMOEJhDC542RUhbQrz1yfW6YjV4Z+Hs8B81299dc/1cZf5kEneYLeoTYi33K31QeUIc3+1bn0B4IdTX9XbX21c8ECPKCzm8riYv1OAfkT4S+6pypWoGiAhZ7M1FIC+6LgF8S1cA+MW6IjYsrbVWLkoL4n6l9JFABMuVUF4lfgXwtoiLe2vuSd2YudRNXB12T7swKYgUTrVDzOWB+NqTigjIESX41I0RV1AGdxLxdhID1opwRcybuPlF3B6JoRQtoSd94WzliA1M+fpy4nLt47IWNyeSdN9B3Orh5OfE3nrXokVJyiOxRswpeKoEIGpR1XKK8av1jFgtQ5vTc+SbGGslwdeIOxNm7JM9IQ6dUwpciHkT50mf0Ip6c8TuHN7YUwdxq9iWvyRujMyb2J/4ODTmRMArYt28UfJFN0acqDWBH4ndodUrYj2IXZmU2dsTYo2IGazXxBnNqHGTUc05qWtiVC4RrxGXI6pbfSAGnjNiCL4kvrznW/Sx89OoLlNp8Bs+RnfnC/EmojkJHokjd53SYOa06+0Qq1vxjgXd2enhk0sR02kQYlRAnxOzF7cLsaLGnICvEJ/Yt0eMZur+5ApEEWQooMJaBlc+JiZ3IrcH4g2MqC+Io2xFxE0R0/n3+OoKRJFHQKiCLAJNncRN7BRt4jSWyaiPuhAjXloL6RfrGXFVJqyXK5C2o3oMlpFdBYqmyiZmLhc1vhAj65UiIPvTo76eOK59XC+fXOd5jFo4giJpAPUp8ZVOYsUXxCWR40HlhvLjQi9yJzdURcxXqui5AakvcyfUlyqIzxFviviV/BjLa8LX8mMs/4SeEEeIybWM9PVRbs+6mrD+G8RX32XiC71F8XbX29cj8bfRN7xn7xvfl6moKfw2xIXtEOt3IZbFRMSLdBuEiM5vawqRZu3uiA1SdhBP4RAqzMwlRHjr7ojJzPgkZmFlYSYSZxHaNb43YhaRa2JXJqEipBpM4vcc1SxNpzARiydxCPHdES9Krct57Cy+OamQMIvfG3Fc/3ViIvJzkyVnje/tCuTQaVHVx43qUbsv4nL/eps4PkGl3FImoZ+gUvRLFK8Qh8InCBW+RPjyF153T/wydyqbOKTDlYrD20KEX0it3yKxWClcipFqGsRBx1NIpiiPhA5cntiG1Se/jgF+Rkj1NokB8rWJzzvZ6bgjOgsIQoQpDYkaTKMCMKkDMnUdAAUwe4q1tCGGFAASBxUHnP0WiYVtGZ/E5AAc0nTIMN4FUYthriK1TxNp06zqEKt9SAecIo7DfJpUHmJWppkVEWtA7SaJiyw5oxqpARKIqwAMqVm4M6WrZiI4EEsHoSxakNRYMlaPHdWUzZUEgGg5ILDfcFTL4eMGsWxV9YTNgpIYAIaHNKxAVE9TOlCNpBQFcogK5A5HByo608c3SbyYiXmdUV1huiYHUeVdEPkUCvHI6GXhIVSbAOyksvJwbjCt6WBJWOFBlDZpMG8wquP6r1NY54xgGmZds0COjsM8zLzDFM93DRiAcZo10GHJWdNWsrmjDCvZqtJvi/g6dwpNy6x7kloTv8J/0hTxRFVzuDXil1eZGB1SeBT/SUF00DW4WeL7v67Wn/z4OxHrqW9DXGhZavHBHBFXABF3uO5UmDmerjvFudqUJRM/fM13z+tOB2gwcXDkhoOZ+Z7WnejluhMFETGLs5DUECHxu113YhKiSkJeQoi8TIpd3mVUN52ViTiyl2T1QhxyJ8SLROR63amQ8D51d/50rrzVELrfdaeSm6xHEAeTUCEP4ntfdzqLY9E8q9/lKpOZ+U6vq/HtB5npOwn1ltadmD5DejvrTijrM4S3840A0mcA280R12KvArT5jsTTasFpHQ5pKb9++lq2ID4a8Kyo1Rdkf0yMtcVabbyYqY53I9blKG2sgxhlmTV4VBquFZfna7frJ5/puiZGHtb/kLjGajhWG1bJllSrYquSrOX8bsRzGUebq4OIw9yA1ACpAQnpWOLAQh2YhZCo46h6PkYpR8RasrvGMnEAFWmgDi3G+mPiNlcjtjZMnCu0XvqsLG2u+n7EYxmvmvM3ya1Jgw3UxtrE5tNkGIwly2QZjDqH+TCYIss3sSwxXjaW6xDJidvqMNYfE4/F5uzD3NV5tVHZC7VYFvZ+Ud0gSXmZLcN5/k/PRLQ962S11RM6G2Ga1CmjAspYNRsz0CFWxdyRjSwrw38hltXMmnoZ1nwmsbec0nv6OJbjQVwVUrgSbTngWKsdxAUBRz2JI90+VkOrcTTO1QD0JHaE4+TIvn9InLE2VgUqUoFjNalcVcTelzgnOpKNqATRPB95D0w7umuTVYnh4uOOa7VYq+sySh8vKmOR8Kq6aiwjynMCMlyo/xmxoYmtVa06iciqZrKqe54o70as0kAaSwcx82lmbUcogGQVxSpMy8L3qx4r+ZJbE3FQsQZiUqSh7JUv6yEddIjIHxIv19cBWnzwFchc7YuuueyNma4PJtYOn02stMxsLXtN2f4eWoapz39QzKvrToqfIC36yfq5Z++HGEv5rSdEY4dHqf8JMebR+q0Qo5m9OX1uD5kMjPqUuP4J8TRb5jdCjKMBFAipgCECwFKhBwGLAA5rINJRqGePtOkklIY0pQOKdCjU/n9UhwMouSJohyn+hcQhDw8Jn0PMWUTKsKQTT+IpUoPIJx02GcPE2qBR0+Y85DeI2UGHODU4d/OFxBXCMhkxowrq08yEHCDGqMAdh9kij1XLaTtuahOAQWnL2u8RC4B0YB5m5l9HrKNDVBJEJIfis2atwRSMCtJQOmZtuF5s6kDsSbxt/rvEdROTS8Mv/eQiowxNokYOUecgKlkTogrT2hDyqHvSh61pBSETqSVtXH+LuB4+FjKfQt6/kBimWYMw81IA235bejZTAdznctUCAHqxYYOi06TDYfsdYm25b0AR77DHfpB+rkB+iPEzpPglKl/2e6ef3OnTo/qHWK/SInbci0TvTKxRjvqXE79Ii4KiqwD3dyXGYVY7wNV+uX0Nse60yI98Zoo54ljiZ1okLbd/TawVQFzJsTgAI+dOhzmItE8nLkdaNIdYy8KpTMv6ce3ZRMT/3sdJTEOYeHS0HiIV8lgitX82cRxpETVgoQaFqKsD0TAzkh3w+C5R3XbupNyiQYxhGdXDbLUvyBalKV2I2alEEks/0njQUf+eWMoR2tSVXUO6CpCD9K/JjwH4jGoTqdSigvCZFqHQO0R1uncX0mBWUKFpfZrnQT49qrFd0qIKIOZaEBsUQNlp0W7/a+I8yC5KB+bcKTWA6SBWf5v4J5P4If4h1p+nY9y7roiDU/Fdf+8UHFnk9m6JxbCUgg+/DKFSSPzyM6cs7o8YEBEeiTlIPN1MRK0w0X0+Z48eiYnSx+JTOOGJ/O6I05nxQJxOTWIioRbi2Xzfz9nzUiKJXZP5LomXmJmsR2LlTcxMwnx/UR0slpLYhiAuJZiDmSnru7zv5+ydRb603N1fp5/n7H2GbiqTwE+QlttZaQuEz9DPutNXEwczw4PYjyKlzP3ppLHDgwqn8VqIbxLv3KzdBnEMM+vXxHQQp0UP9rYpdwkPtucE4W8SD1vL6o0Qb7qY1mGaYIhIYk9zIIApEIlWsgFVp2WjSdlwBMAKI+3T2u6Sb14hTmaAkO4sPaQDmbQv9HHlQVJ7iDgbjco+RYSpgzioSGUiIyIfQtbmIPMdGbOBZNdz/DQXEX+beC5bY7XjZ09j9S8iFuYWAlBxmlVyUHNOoKTyI+zZpzVlpwZM0oFZnBtEVcfLfXvSi8MwxF8RV03c1ccyW+3rojoLJBLQ6m0TS4NkmAZqgOI7lp2pn8Tkm2V6Q+lwLilxBcBRf0Xc4ELcv+48NhGhCighIpVMpO3FVSn7dCsiZE5sQkTUgHyaGI/sB9M6DJMaNX0cRr+I6nUhtpHQJvRFUY1TREoBKDDFUUX8uCFYuiIAtRAq2FWko5aeNhJrU5JYGQBEas/xCNNZKrxOzA6gCcmSrCEi/V+5Agmx2r/VKgxmRPyjxEXxvwjgFjOJn3v2vnPu9JM7MbOjUgP8QGJk5ZIGLsxfTBxmZq1QQ/9A4nJemqCI0C3kTliozSUwrUKZ9WOIOet0A8Q7aSBqYU5C0ob4+xMrFWpZ9xuIaokoTDuqE75Su/NPrsgYDqKmFbZ3P44Y9XaIt49HnUOkfRzxtJsgxpJGVUx2FmmKH0Ws/HMF8kN8m7lT6id3+smdfnKnmyLGp+tHdKniWUM6K+Swxa54zfNYK28TB503y5f65cQ6VoOLpF+z6zA7UOnspFT6FQ89krU3ifFhmSq+nhjCgacRwDAibgAMMaxCmPUpAFoaILOYAEyzqhpSd5aVRfYKE1CWVmBmJzF/Tqy7JcyaHkNz2JcRs8MgsjaFgqgCVh5EWUjVUTuQQxAJmc9B4kSDsrNk0dSIs3Was581otd9rCS1pX13rF9JLB1oT5PYARMbaJqZAYZVdlBK7EEtayxwZlnpJoe0D3JQn9k6rZUXxNJKwcsKluve+VdGNXUgzvkfPj4KyUEAKAlbvUEINeBKTACjnWc9CswKan48ZwJS0/pz4jSEAZwrWCRf+sllCUttmmUsm9SSRTrEI4ORzaROs9oja0S1wxwmbZ/uw3iYHc+ZiGydJvScWCW3YnKsYHkO8a8iRqKGcCw1cQcV16PAvZQmFYCloZK0s4YKWZMcQYDUVSogAhYIkaZpeUYMJSshrtiVJA8j/pNJ/Cf9EP/kTj+50895vHW1PIz3mDs9cmXwXy55kYlclRriOxAzEamyQyo6wFt7DaJ2nYW97Bv69njE/0scq4HWh4SpwWiQCjOTUqgXf59nRVgrJ/EQAGnwqrIj47WR/Xmfnb2+ouv9vkGsUhtWmGagw7zHMmGASQmuhcpcFYZV4Fn/M7Fu1CTOPZE0oB5mDXj4cbdgvfgFIKSUMqXrsAYxrB0zcGCpwaDTxYGaWjaNGqPl7Ds8ZLUoVgGHveVjD9KdFVUU4apSWRpWSh87UZnWREh4SPs7HzOxz9yTB3XqSFLZ2ET20f0glg4g5NO45JRiEumUNoRqG9Kidq5UqFPL8W2Q1XnkeY/EwCRtmr+9JkHs5KAG1LVmaE+ajWspyrSj+liM638R1ek2JfYkJ8dwLzuTqiDtzLmuiMmPZV7P5tjZnQiljWenpuStjJwUkJ953iOxpuWXxDrqrEmcvs0xOk3DASCJucJIWPkb4uRJYjlzrmksAOIOlMQOaS+XqGZihxCAo6A9A6neAWIIULsajzTrw7dO6ZfhwBVgvk0MY2dKuR+p+9yfAlxPYh11DpPyN8Qqm5h87ymjaLU8mOfh4jz6qMcn1+Dsuc+EitOsxZ5B7XsGo+UMY/k0OXyMe7znpAHOjE/S/AbxzoQ6KDkAkiMo7thAzMmmNRxYqONfrR9nRbE/7KlDiCPm4VB36o1yOQUBdR+dxAFJes5gUts7wdr3DHtXouymHRSU5BwfOZ6kZeUPMomg/vmZhDb4DU1/c7w/n/RP7nT/v/75If7Jnbbwo4kR3pT2zyHGSXTB7Vg/jJiJGgCMF0cIPrst+7x79mq/XKF9GPFYxwrWXM89OdZZWfXz7tmzPs06DiOa5h9BPFdLXAEcLTezwmzTzHqsZQ7DrA0b1j+DWDSkK0kFkRhO1j6AeKwORzkqzIVjleFIsiqO5WUsJzbjVT/pLsWO08yAGwgAfRxxahqo0ahkXc2WZVTHJt1Z8KfdwSaAFcSBkvjDojocIEaDYT6XYSJu4qyBWsXPI9ZhUmFmAdI+7JMrPY1Wk38m7kofz7X5jT+LGDGtQQ3PR8Aqfthfp9KS3QC5I3dAJi5pacDkPRpEucdVmLAOH66fdae46JtkEgXvX9fECN9D+EN8B/oh/iH+rp/V/2vnCnejR2Hghxkbm9Tk/d/2GFA36ld1db1/txuUWNhm4pl6UVkp2pC3GQ/FVeMdhtb3U/zOn2qv7zD8/p29Up4AtLyg4rRD9SfBaS+nWMfZ/TRKUwqn1Wn2hNlXU+xpZZznkRYCCa1VZN4tlBPVPI8XU7x/KcuQVtPSpm92ws7mdI/pt5dT3KZipFlx5NnGuvzseVqeXevZX1Kx5GnjfCg+BhVDpL6g4qmoLJVGudfV5+U19PU+1Z7nh1vz/SaXHcPaWLYMs2nTXvC/k0WJUI2i06z5vlSLciu/lmJKxhMA+n3KvH+x+3+tWJ/i/tN+1h9Rv0iU4j9n9beKS9FHounPhdXF4/ejth8SLv69khIhf5Nww8XiW5t24Avzp4o9DbrjKmDkWvXluc2t/r7LCmiIfAeqW31UumouFtdql5CmaXKRsqZ/VeiFC+unz0XPz1zWwmsN9QrUGrXW6boOq1q5YjoRATgYnmi6hPBe+VjxusK8OJ9YmorO1INRFWYXLezgZsApM4tFIZYhrSa18tDr4VwAc8gquqDKNQzofm7QOMyfKnYocn9xOLu0kdarWY88raYhxnQ0PE9Ymh3MRzwgFkhDWozVCEdTEUKYY/Ds7DHS2BudGWbZNrPgjIpXJTsihLBzY8HQTKHlaUkecbEgM3LnHDRpB5+tNHniqeIKTRTpNIDkoUo9rfaSBqopHiSj2RQ9DVPEhvwZsJ4yTIFEnk2pGELIxkqRpTh7wUQN8F2iDzdMA/Acf5BBSTAfgmSDF3ZDEOiOUJPRlSxKtrJY2GYxABRYgfBpgkNVenmuGMHGAI2K0ffWtlbBRoBN37Ucx1JjqKELMhIGcCXEGN897jVNYAaht4RwAiXhYCDR1TfmkwH/EiEQsriwDgdNSeQRQTDqZoGmTlgKsZsBWC1o9Nk+hkOoGA5Asnm1Q60Ni5SiXiMtQmG+azVVugvSC4AmYPxY8eykGAmgaEk4PhWvHufh8x4mRpMfxES1uBayqYlSdEHc6lIcnmDZYY62WBS6aYEOltwMSs3mMSwm7kfF3BoiKt3ZFKncg/NG81y7q/GO0OkidLXcDg20C1K7gjjuREKFEF+GnoaIcHvvfdx4K8x6DJqIXclWCwlbZkG6pkEcFNdiL2WP22KmdI0l7WMx2M5mfvybE4hv64/Zw7nSDH0GdvqaXyH/MrvG9UCaC/8Z/JZ4xIcdD/9LuTXVmnboCm3zAqfM8ZSqDmv6audqfZ4uen+TuBXfim/Ft+Jb8a34VnwrvhXfim/Ft+Jb8a34VnwrfuP3q99kvOv71eVP6PuMMhVHlbca9gf2ZuMfqf45wVG4RggAAAAASUVORK5CYII=)"]

%iVBORw0KGgo)NSUhEUg?AP)CQCAM)Bfxb6)YFBMVEX::0nML5yt74wNj73ev74Oz97/X2q8v3uNP1ocX5zd/5xtz1pcj3tdH72ef2sM761OT++vv4vdf85e/5xNv+9/r8/Pzz8/P5+fno6OjW1tbIyMj86PD98fb96/P+9fmwbslD?AEqklEQVR4XuzawY7bMBADUH4FOSNnt:/l/UKSLso2mBOBULxHYK5yjRMRTY8lPbPbQ/br4G/hyp4UAHg9mpgERYoYoIFDyWMmAQ8XwjxBiKmXUPCg+qsRzTFwwI+rJOoOitgCkYLjijMEB4qnWS14HRSKdto7w4mjETyld7mwqSTsulIwNl0sGAgIoez6aQE7EA6rINl/Qo8+P2zpJcf8JjQFwB6DiX9eQmew38VERG9CKyNQK++FdBbAWrdCAke9jp7I6Dt+1AbSwULuoQBp4DHZ5oeujFBIcLnhobqrEdWdcFCp5P+ii4B62pMqOGhLxrd0TmEjGHXlHBWJ3WftulQOuktrVkn0SXgGgdMeKhy7uoQMSKc1Uk6rZPap5MwUeu0gBddAi4McDU8yPuwMogRwvyPcDqp8Z7SSTyqk+paw4ALFrTkfLQT6huA3vhq8LCuG4Br43MoYO1BX8O6Cf8SERE/Ph+Px+fHB87wk/k62HEQhKIwzFxFKbT0UjuuAN:LcdDGq1Bje3C4V/d092Xxhg9k57qZkCg94wxzycvAOp2u93H2jaKZf5n7qp0XAL8Zez6VttW53F7S6Tn/HFwM4PtDhipkIGX5OpM77dgOYNpD4yuIQOjfwB7WoLjcTDP4PsuGKkcnDodzAkc3ThcCN7jQNg+JQnh6jr/rnoC7ONjBLfDGphTt5+UnAEDsx2jJLap+iyvIxTEToGQyPpVI1gJoQGWa+DXsGmYNPJHWZxb0EnzDTgCTELUAPMOWCgMVRLYfQOuAZYjHODHHtimVQbYJbB1X4A1wHEcALd7YF8QWDClZPMxWAHsxlEBHD8G4+d/AHt6pWX4CNwAXGEwwHYHzBj3FTASZ1fTFMcPwBJgThfAz22LazFMKWDR0Zx1h8EMsMQIAN83LfKehi0GLIaapnR/FFwBHNNoUZNZFrWiFDBy3tIreRD8qwAWKQOw3AfHksCo90ypdbDJHgSASaRqgPUe+GJFYWAkCQ3HwDX+YCNlPUYAP/bALEoE94TCMTABPH0tIZdZGLW4VJFgsQ02GVhl4Lhu4XSGEsGBUH8I3ORgu24J6eRiwG4C9gwvixWwycAyB1cblgpnWwzYE7G13vtaE/LHwBpgiYEiwNcNiy3rtSRpEfcrYJODK4CbaSZws25xFwxTCtguvHoQWcHk4KCQm/YDYLthMRiXIsHWiWPgDt5q3nr0XvWGRaYhCwGLPvjOWiK23YB9CGwB5nlLgG9blhaj2gD/tVsHKw7DQAxARWbsQwuhXic9xfb:+XSbhGLsu19Fj/aEuhp.RCbNM0TdPUTWwX0EiKc7k0NRDCRc4166AjKV41miqIoJlaQCWpCm6sE4SwmqqgnhSv2pvaEUExtRUwxXRyx0vUgN2Ug7In0Rlw0FfW/WpqgNLzYH98/OehRA+4mrqBmvvj0tfP4xu/kxZTGVRd8aoWtJPyp07aXVUGHLWTbp866XDVoo+OYWpj7aC4Sr9HR875P4yOBOquMgPOKsjo2EwVkJ/wz3wStZNWUHbFTtqzGgjhaqqBkitu5ZbVHREcpi6g4aq+D7ghhOVL9b9Gx+rrU3sfc.E37lEjAZM1i5b)AElFTkSuQmCC%iVBORw0KGgo)NSUhEUg?AMo?ABPCAM?ACdxqrx)YFBMVEX::m5uaTk5OoqKj09PRlZWUvLy/ExMS3t7e7u7vQ0NDs7u7d3d0?ADLy8ukzMxepqX4+PiQwcG52NhQnp3V1dVtrq1GmJfv9vZKm5pWoaDT5uaAuLdClpV8oqGgtrVqRzPm?AFRklEQVR4Xu3b63qyOBQFYHLm7Lnnb+b+73KSnYVuE6p1qgzOw/rltkHyNgECtUVRPi7FpPn/UxbKQlkoC2WhLJSFUj8uC2XIQul/nllTAHEXMqo51IfDnCgE+XMtr6+v7+/v+/3Hx8c6xkuQWVHcVQkg5HihkASZCSVI3PUxIQk5kAPPfCjVDwYlDAlBvmI8oA2BZQ4UL7lOgQSQbQhBTpiZUKry6qDs9yQZHKvVCg42MM9CgYQYPkQRPszyDBQaFJIQZEcRyDiGyskp7gcUDMr2r47FGHmABRiWGVOCBBQeyWbZk1DW6yBZgcJi+4YsqSaUc6QMg7L66nKLaAQwPPOkYH6FY/5vAhiKh@2ZBFPQ6FBAaXxedO6ldEiQp1rhHgOytub9okWpRtgksyZsuOUzWbTUCm1BuZZKNsjJUjeNiEmlGajQ4BRkhhN08twOFkjWw5oZdjGyHoMUMpYOGlw4VLKJS1raTsry1gIX3RG6Rso6xdO8RBQFNXeRETn+28604QcghIxukDClERw4v?Kj2t9duS1jt4yIJWxw8wgn2abe9FKQaKDjVRagsGdgUJ+Vg4hbYNEtt9S3EnpdEaBSy3UFZjFN6dSmIfWiR9NpECyRjFSbTTkIxSuFLywtyZYruBorA3pTAHFE3z2Cq8a1OKHcinTZUxCQWbyy4v6l9ScNhHCmKVp1hMZx9hSBkoGDR6N1hsXdfJtkVh+YzMKTJsrvhB2Eb6byk2pZhq4yU9FXE5iV21w/xyOFkFQMk72RmH1vjBGEVGouWFJNUvKadfCCB98GF+yU3BdqUGL97Up74AEnusMIbjFMk/0upYOHL9kmKodANFbWI0vV8OlPLMy3tpThTF3TKhcFUOFhj2f0NBj0WU2NOOzij9QKnR63xUTN5JA9dlSk1VAr6Vkq+M1ZHSDxSACwTg/FiROcWizQSULMb3/Zyixygdn+HDdbBMKLyYnmIa6j4oBPmWIk7XlQ6qGVGk0JpRdAgoWicUGhYeVcyFYowSOgYUfYGSr1xkMT0lX042zWdzDDrPKDan2Fgoy6/s01Py+5XPz09BGTBYGetYmghLT8anZa+RCtDRM1j5UAq/If702YkYaCKlQYhS6fQSiRnmCpaL1xUxAWW327UhwKQUhYVfsnBBF8QlioQbrkdQ+MOjnc+qZRaRUBxf3QqLPQ2q4hJFUaXx+jEU9nTSQ1YrPIGEBpRhwtnTcl4bcrHp016iYIUKyX0p/OnkNlJWPtu6HjBHSiWQRqY3WZj9Em/71G1CQSzOb8p296bgbEyWI2W7/ep7slBSiuD353w9rpJn5yOUkjXAyvuuFAzLV6RsveTLcUtKEX32mGL07r5klLyJiRcodW9KsIDiTS8vzvX1yRI7BlfI2cMjUSA1CVlETtHmKCnMAyhkCRjKi0/lerIAwwLN8FxOYv+YX7KWzCOLkZShhSwf8keJV/6nboKs1xWGBZYxTNbFIEMhXIQWF/IgClkIQ5D1R1nhaPkGk1ME5gEvu+kosJx9K2QdJKBECzCpK6Gk18f/hgILYQiy34MCS5JRisF1HHGhNJNTyOIxiH/5DgosWUYpfGVWWiqnpcBCGMQXoFzAJBRcH61RPtLGQkxNgQUaevEKyjnm3JVQ2i5LOfG3KWAJGiQUoIwHlCQygVhXTE6BhudPQsmSU/jtMA6bB1DC7L0hvnkJyq@eZw0xDGyBOS+FLL8XENtvYRRZvQtvbJUtwWDMj+Kq6rytlSVmyGFLK66LQ6S2VEIc1t6n+f79nfOoDz/d/KR5T8lnpWyUBbKPxAW/dQ8mzhh)AElFTkSuQmCC%iVBORw0KGgo)NSUhEUg?AIw?ACKCAM?ABPR1IR)MFBMVEXg4OD:/+qufHN0+y8xu729/mMoeyWqO3c3+/x8fGfsO/r6+vl5eXn6vqEmurt8PsdAqXn?AEVUlEQVR4Xr2cC27jMAxESX38TdL733bThUs4xEIL8aniAYTX4XhcKpakZlfbf2p3pbfa2FKi6+unlmVZ10M6q6pV/VzpSNJVp2h2MKUT5lSr/MnSu1QVrQ4mSWep1Wowa0QYFdXkxM3RPm2uSb3CqKg+HUy0T/ZXXU1KuYvloSqmrsFE+/RFhfkLk9Eq1qey3IVJ/cKo2BN5WybWp3W5WEKr7BeMlo+nIKUc6dP2prgvUnrXuGCeI/qU3jBAGIPRg/fpua7LVRHjqcE4C5vEPUsVg4nY97zB6P;5pOq9VgvmtAK9Q5TXuSxlFO3400DhVEZElii6bikWcPCGIweTJrtG+aqo9t0D73B8JdcTkYTCTwHQy38DXNcLEdIGIPhFi4/0hz9Td49jH7xPl2VemVVD6OamDTJaKLCGAy3cLlogDAGgy2c07v+oqQSCDwPk9k/EskqBwLPw9QXkqZ8cyBhDIZbOGNhDIb/j2V9igWeh9GV9SnSpd3BjLJwBsJ4GG5hIIyH4S+o0m9fbcAwC2cgjIfhYwIQxsPwMaF00p8NGGzh3AlfGzDcwkAYD8PHhAyEcTB8TACB52H4m?Cz8GAMQELYzDcwlwYgwEWJqUtGD4mgMBzMLMtrA2Y2RY+GzDTLVzbMGhM4IFnMPMtXBsw0MJcGA8DxgQeeB4GjAk88AxmvoX3Bsx0C2sHTGBMoIFnMNMtXDtgwJgAhDGYuRauHTBgTACBZzBzLVw7YMCkC4QxmLkW3gMwvzYmaBtmqoX3DhgwJkBhPMyESfcMw2wOpkyAmWrhOExxMHmqgb2FJ/eprVv6gBkiTRxmczBlZgL7eo6HecxtE39rN4cEgxk78vNHm1cMpv7Oe3sPweRAz?LG8zUcaUGYDY8rfAhzurA9uXjLR8P+ODPZ39uYVEwUhIL84ly/s4VH1T4nl57I61M2+2cv8V4NmDmb762YXjgcQsLCLzhFhYQeMMtLCDwhltYQOCxasHwwOMWFhB4wy0sIPBgVfCD6cxf/HngcQsLCDxadcbnB/z7GR54vE8yVJjCLCxDAy+xqJGRgZdTRhaWkYFn7.Ly8DAy/07OE2YRAKv2N4W/tCUHz5I7yrEwkIDz38PTFJYaOD5L6UzsLBQYfw35AVYWHDg+a/rwcwiJPB8l2ifhAeedQn3SXjgWZdwn4QHnnUp1qeHh+GBJ8mqhKNGeOBZl67TTSk8W8q4Mzx2CC0LPYZWxp1CK1ELy6BzX8ZiogYsLCDw8MlFb2EBgYfPdHoLy9zTrm0Ly5CtqmwsscFvNxgeePJ0J6SDfZIxZ8eTnR0nfZIRI23V/MOykD7JP65qCbzqngYT6/PDYHThNzE4mBTaHpGbMC9wR0W5WKJfEJ+q+JYVk3j7hiFbTBfMRu6fMfO9YYIRbquMu5mnLEv0ITB9Rb/Qn@2oW63Ocf07b4Mp3zCrMEo1yXsPLOw1NcdZonfc5VuMJFui+of0SaCRwqX7V8)ASUVORK5CYII=%iVBORw0KGgo)NSUhEUg?AJg?ABZCAM?AD1qB0C)GFBMVEX:/+vr6/Nzc1kZGSNjY3k5OQxMTE?ABgpITo?ADeUlEQVR4Xu1Z23YcIQxbX/n/P273lMYJRSilM4d5qB5DwAIJe7y8NqEi+noeIttPpD6S1xvyMGLZOvKGACqyu19pHTccmfwyyR41L2JGJuwunbEz224jVlv2bWJ4/j4USHGlx454JO66la3g/3Ytr82w0ZAU0hGUWc2+x2ItpolTuZpu5pT/vndzfpSvM3BkMakbcQSGlPTDpTmBksRi9wMoedxiAZQ8bjFFSnqd4xFIKTm3mBwnFnPvxek0ZnOJ83U6jcmOxRT@j5JKbFBMu34Tdi18JVBSJ8LG7cQz7cW8ir0SfVnhEFJbQv4JABMwlEUmkU1Fx20Ex2UlIZR4SsAcqJWCa5th8Gt4jQWpSxEjLNg42azcUEiYGJ1J62jdaQV/EuOMTMcoI2wfp1cVFWMtwkyH4/1PJEYhLdBBxsJhH2OolkDa2KAL0uvNicWU0ktZh2MLVd21AKzukG8IlDtsqmuiAk4Cf8uMVlZGIfAMfogTCKXERM8tCDmaBIpHNSLupB6qaXOhwRuBnqR98K4SkNiiebYdxsGZ8TIdw2Y6JsW4140EhsO+lTJwALggsZPFLsf6JxcAKJUsk5Htog5UB9YjKY7fqKcWAlGBCAWo5d2h1hyAbjF+IlyYuOY86zJLcZPFBNLsLL+lQC8YeEFhKcLGcNzAXhPzG83/zLxCr+RXoNITgqIL+LYoOReBc+9gmWLOLUqEGDfYryAkGzhWIB7LRYL74eZ6WUW4+mVe5/Hu99izvZ1v8UE0y4lOfwKi/GCpZA2FeAmi/FRLsC+xfjt5mF4+8AtRkLvbAtflssspmA2HlQNLEBuZxV+u2vQkRSmSADjku9X8EgoZ?llBLjkvM8ZVjIJA81VEojJxYV?opQ;ZZgLX47888BcXbjBrBbIeI2b0fVYJL/QbqaKjlLcIoeK+INYvUKgL8ErLoO+znJi2AezMCzJYrJA1pInfLLCUtVMcsgQZEYsNprxHVSZXFS7rLGA63lvBZGox08lOU8ltLwNAZulokcjP3AO3gFLUypMYVrwGhH8cuC/X6BHNg1Rw+Vgxnb/ViZUrR0R/a2OI+i/2kahvvI6j+oHD4N/n53H+pX+/BTxvsfbfYhst4KPQznufpddnwU97n/bgT81i9lQl83nZ9XnpItSH78x4ACnLNoPJcQ0B9HiWALhAzR98s0wlubKPew)BJRU5ErkJggg==%iVBORw0KGgo)NSUhEUg?ANM)8CAM?ADLy3+8)GFBMVEX::++Of/8crj4t+/vr2SkZFWVFT/67CB/ywx?AEFklEQVR4XtWbYZOzIBCDN9nF/v9:I6FzBVKGaXyOs0XW5H1ntsYRr2zWiAfWSRgJ4W/6TOzK9k1Ah+NiPWzpWbyJVB49EQsni2xZVpBJHHxbCFdzsTHQPhmNifPj0VNkrBwtpBaYVWTJEwhSafSRcIyJOmr2ZxxCZY5T+IUkoQJlyz0noQpJGnYpG+YVvjncUw4bxHYeqgp30ocEK1isqolYIcRc1DMwtyieE1OEB8awEP2IQCwJSJxQ58Mbx7hMSZDhxsiIjwivM9kXMtkfKtzNLvQsQsKUmxZ3p+5mMnYlsG5PGbbAtLTtiUH0rbBelrNZBif0cZQbDlJPDsEANsWY/OBa5hsikkE73vwNJ6NmEy5ZLcw8XiPxbTtMgPiIxMz0e1MY7VMYfCPIWFQInLX6wKwhgnfeIFi2mBIuU0jgaJiFm68nAaeykGe9Bgo7V/MLDKpwd0dZu47E9yZ5buQd9tzWIpIKTaV2WUe4eZaLlT62I0aTreYalQqTNmJmW0Tmz9JYc9tgGVWRPFt5OFdvklblHKZ0ENMKt0RICKJEzcvhAtqR8LriVPeSql8DuA5SYoyLKTklikqQheKSg/89h3Sg0QIyuzPINUv2i0VGLW0dCijNQwo3VW5lPNHKFDpShcgQZNICCqs+WG82UYZB+o2yrL5a1RXpYZDh6hko++R+IdEQBbx94i;k3MsGI2seGlbRBibbN+RIyZMJH/JOEOWKhR3YjQFi2DjhdyFARvhu0VRZzz3hsjlesClkOgExFdj/UtKeu9O9deKqjFl2YEH5KQQo3qR4S26d2CUVu2spe2YhpGhF300Jz0nGJUNn+MCFT9EAP0XeiVvZqVaBwRNn07IyQx7QgOECV027xqGMUiBmQ2DeeNHYmIMzdpB3zXMhkAZXUbEW+M6TUSgCoikDejiLCKsxKLTrpPSG2fTBCK6BKDUPea/ijhgTrhq6trS1qQxaRDxfRB4DfvAUikUl9nfLLsO/WhjgrkHXkUQLWKJS3d6TkuWVaookqe+DmPI+lZxBaRCpLO7FqEm8hG/LEmALIoCk0ZhqDUkr9DdKqheObBUSvC8m81JVkklXTam4U2k4HneE5BENlHOrw4K+RZf2HSISVfx8JR813x2IckpPE9obv39hZPX/QmnN0unRQbnayQtshmv4bpbEYOqmSaiUaHluVrmDDwHSstfO+u1aGJCGKOaYDUjC1lcmihq2piJiPYQfr/TEp4f7fzuAM45DzYDUzeRcrC2bN0kO5gMo+UAh8K4vOlf84x65nO1CN59BZqcMy9TJx/d/44o7kX9yuRaL/DhMdkm36fCXYX0zIo2m1Mq6Bo9zEtgqLdx7QozmG/yGTgqEk/xzSmotm9TCv+ZP5nmSSg+teGH9U/EvuFGjU3drs)ASUVORK5CYII=!