["scala split","scala~","30 Scala ","D+.ywrrrzX/XCEST~~}T~~YF6A966F(CCP6A9566F3P6A94FXCP6A94G5FXS}T~~}T~~","Split."," Strings can contain sentences. But often they contain lists of structured data. Fields are separated by commas (or other characters). Split helps us process this data.","With split,"," a Scala method that acts on StringLike values, we specify a delimiter or many delimiters. The method returns an array. We can process the string's fields in this array.","An example."," Here we use just one delimiter char, a comma. Our constant string \"line\" has three parts to it\u2014these are separated by commas. We call split. ","Array: ","The split def returns an array of strings. This has 3 elements. We call println on the three elements in a for-loop.","For ","for-scala","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:"," Scala 2.11\n\n","Scala program that uses split","\n\n","// The string we want to split.\n","val line = ","\"brick,cement,concrete\"","\n\n// Split on each comma.\n","val result = line.","split","(',')","\n\n// Array length.\n","println(result.length)","\n\n// Print all elements in array.\n","for (v <- result) {\n println(v)\n}\n\n","Output","\n\n3\nbrick\ncement\nconcrete","Multiple delimiters."," Sometimes a string may have more than one delimiter char. This becomes complex, but using multiple delimiters to split can help. ","Here: ","We call split and pass an Array argument. The elements are the characters we want to split on (the delimiters).","Result: ","The various delimiters are handled correctly by split. The alphabetical strings are returned in the array.","Scala program that uses split with multiple delimiters","\n\n","// This has several delimiters.\n","val codes = ","\"abc;def,ghi:jkl\"","\n\n// Use an Array argument to split on multiple delimiters.\n","val result = codes.","split","(","Array","(';', ',', ':'))","\n\n// Print result length.\n","println(result.length)","\n\n// Display all elements in the array.\n","result.foreach(println(_))\n\n","Output","\n\n4\nabc\ndef\nghi\njkl","Substring delimiter."," Sometimes we want to split on a longer delimiter (like two chars). Here we split on a two-char substring. We print the results. ","Scala program that uses substring delimiter","\n\n","// Strings are separated with two-char delimiters.\n","val equipment = ","\"keyboard; mouse; screen\"","\n\n// Split on substring.\n","val result = equipment.","split","(","\"; \"",")\nresult.foreach(println(_))\n\n","Output","\n\nkeyboard\nmouse\nscreen","Regex."," A regular expression can separate a string. This can remove empty entries\u2014we can treat two delimiters as one. Here we treat any number of spaces and semicolons as a delimiter. ","Result: ","The empty string between delimiters in the \"items\" string is ignored. The two surrounding delimiters are combined.","Scala program that uses split with Regex","\n\n","// This string has an empty item between delimiters.\n","val items = ","\"box; ; table; chair\"","\n\n// Use a Regex to split the string.\n// ... Any number of spaces or semicolons is a delimiter.\n","val result = items.","split","(","\"[; ]+\"",")","\n\n// Print our results.\n// ... No empty elements are present.\n","for"," (r <- result) {\n println(r)\n}\n\n","Output","\n\nbox\ntable\nchair","A summary."," In Scala we find methods that act on StringLike types. Split is one of these functions. We invoke it to separate structured data within a block of text. ","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"]

%iVBORw0KG;)NSUhEUg?AMc?ABPCAM?ABoOCFB)GFBMVEX::y/P/a8/q93unk+P+l0uGCwdVMrMegq+Pr?ADkUlEQVR4Xu3Y7W7iMBCF4Zz5yv3f8ZamHBnGZuTCxlTi/VdhxXnk1A5s7xYAbH8+mHxl7yQxSdUM+Ql/05Htf9oBYSjHjgGAmRyZAXhbB2BDKUxShmUOGyOM0krBXuCwa3MOlFb053y5A4yU6f/z2pEZ1kbHKyoc5U3WDjIst8Kx4Zgav6FCrN+ZDgYYFXMOa7p9phc4ysBbzR/0PwLsLzmMbf8pzDhEVZ5zoAbgiJe04+h/2oFrEvtXIah3cdw05UC7VcAen/uxp8oHT64jNQ15lIjM7Yp0UEHJSxxBMmYcJjK/Ht8jYTcR8pxDdqaFQ1SsqXWIelwnj1CV4YMOWO4FDt+ZP3Kox5fU2ujQzrwhA4f1Oschflw4OUBFLjkehacdWj9XtGYHP5x14NJwQZRRVO7nO7PRzyi0ys1+/E2N/TcOFOcoKx1Mu48Vy442kDHlKA/SeQchbnMOCucdPd3zDph7uNhvHC3AVURU3SMeO1reSx1HMw4CmaLJ1MeOPg8rHU6G4TbD6O0Ab+jIq8HszgE9sp+/vo+kcH3WIUz0p+EQ5+1KW+MQVBBpDim0Z45POuaP/r1os5ujJ0lGjoPEQlY75P5VIEOyo7NXy1pHIw1sR6VDdM8td7DgLlE4yGiLxQ5vVIoRhI5xutahe5sLIaXDVdR3Fi/Ydyma33dxJwu1sSN/ybIgRLYJR01+/j3RtXZwVzA6fI2D+Z4KJaPvCOQrxzoHJ8qpdR35KkbcQgdXJBcydkj3e5gsdBxvtdJfkpFDWwac4xc7AGwaXcjWdUjLgK5x4M5hOOpJtHJg5?DHWAE1EPHDnAqWOMALFNQrwek57CBw77L385+4wAveHUw8bQgfQdrHLHUQUj3+Zpx+Hs4mDYOmXDocscYorVDew6c5ODvEgB6kNrBug471UHtnR8zjkXneaL2mnCAZiw6z59zrH/frZN6v8pz63mOPJvh4dT1+aEk26kOv/eFyp0CToZXDm2GnuEQzoeOz1WMIz0fg9lBBrNTHKDD7x0sLu1tsXUd4XqhiHJ0XmemdCiz6aGZuofiIpDLDHT0s+QYFVM/OMnsUNa/YTqK6UpH4CwH5h261Q4yznJsOukITlY6HNt5js1nHKFbSgrwSY5NOw6oR0Y4FZUjnIrTHJt5f5cRUfU4cm51Y4eKHgm2RYk675fUunwOvn8fx/v3cXwcH8fH8XF8HB9H/PR+jn9WRHacjtkenQ)BJRU5Er@ggg==$/9j/2wBD?cH.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.n/wQALCABuALYBABEA/8QAUg?AgMBAQE)))?AMBAgQFBggQ?IBAgAKBQsEAw))ABAgMRBBIUITFRUpKi0hMyU3GyIjNBQmNyc4LC4uMFYWLwQ4GR/9oACAE)/APpE?CG0ldtJa3mK9JT7SG9EjHhtw3olXUhtw3oi5VIbcN6IiVSG3DeiJlUjtLeFua2lvEYxZSHQkaIMdFjUS)ACcIV6Ul7viic5QJcUtJVxT0C5REyQplRwKS1j4zitMlvGiFSC0zhvRNEatPtKe/EYq1LtKe/HmLdNS7Wnvx5hqaaTTunnTRI?ABSqrwfy+IzKJScM5VR0ipozzQmQoa0I?AD0uD+ap/Dh4Yjg?ACGk1Z6CMVaisktRWMIu+YrKnB+jikInShs8UjPOlDZ4pCpUo6vELaF4i1FlCOodClTemPFI0RoUXphxS5hqwag/8fFU5hiwSh2fHU5jVFKKUUrRiopL9kS)AFJ6QhnuSxbQqURMoiJRMEpSTkk9DkiMeWvwkqrNaJcMS6r1Vonwx5S2U1+04afKdTAak6lOTnLGkpySeLFZsWOo3)?Cajs/9BSfW+UaVaKNC5IRNHIn15+/LxF?Ds/p3mpfEl4YnS)?M1Z513BQfW+X6h9wKti5MRI41Trz9+XiK?HZ/TvNS+JLwxOiiQAgkLhci5DZiwh+Uu7mDBn1/l+o03IuVxikmJkzDOnFtu7zu:AEo6cdbBU462MjQg9LfDyj44LTemU96PKbsHpRpRcYttN3z/ANiaUSBFyBLnJNqyzOxHSPUhUq0tS/vzC5YTPVDi5hLwqa9EN2XMY6+Ezclmho2ZcwUcJqLGzQ9X1Zcw3Kqn8N2XMRlVT+G7LmNFGq5xblZNO2Ys5GWrVcWkkrWvnEurLUiMd/sCqPUhirzWhLi5i6wqotEYbsuYYsNqr1ae7LmJy6rs092XMGXVdmnuy5gy6rs092XMdkgzy0vvkKkzPNmabEsRNNu9vQEE1fMMA00H5L7xxkrdZdwo)APUkGeWl94ibM02ZpMWyLBYLBY0UV5L7x9jLhCtJd31SE)AB6khmabzszzZkmxUitgsWsFirRswZXg+/6YmjFE1aHSNPGxbK3Vv8AUUyR9pwfcTkb7Tg+4nIn2nB9xORe04PuJyD2nB9xOQe14PyBkHteD8gZB7Xg/IGQe14PyHUIYmUU89hE4LUIlBaivRLUWVKOoYqMdnxF1Rhs8Uieghs8Ug6Cns8UhkKcYK0VZaS+KSkTYtYmxNiUS?QQLaFyQuxZRLKKLpIvYmwWQWRNgsTYAsS?AH/9k=%iVBORw0KG;)NSUhEUg?ANY)3CAM?ABHJUQ7)MFBMVEX::7/f7y/f+38v:6en/1dX/tbX/xcXl+v/U9:G9f:qKiq8P+U7P+e7v:lJQSDb6d?AEaklEQVR4Xt2Z27KiMBBF050bN/X:3aQiBvZoeMZHoYz+8myKYtFeuWCDomfcY30n3EXTXh8xtnp7p+5KlbcYYXGYE1rCpZeFCvtsBpdOPiSFe6qXfjYJTWwlgBt+AVqteXSfgnQ/MXVSl/Jpd2Svu/6oUQvrVZ24zdy6RrXlUHrr4mFMcosV2Pc+jnXxArAioZcRj/qldUaPwjtSEzPi0RnMFWpFrcJIea0qpvyZ1GEfn77laieU8tZcm2IQ17ZRVXFKurzi1VZZAzLWEu56G13XN0VPO3ktNvZ628lvUP6W4mHWkBhuRgrJDA4ETGLQusHCERFSgvDafwknvaMNXRbrAEIhDqwWo7lYiw8+tAsLsyMheF8Um3Jq90hM5ZXh3QvhLtDbq90rJYpV+3G7KKNlYo2i5nCToO0YA0OkZVBifRWUYvkOoFFHVoFL/bBbzgNtQrWpIZctlok11ksfWGllOKcMCfDrtdw7SBKALpiddX5gUFZLVMuaqK43LlRLB22T6xgQS5Wa8XqDbkMtYjSwsrhxaNyUFzXNEcZ0fUL+o6C1HK6YEGuDYU21aKeJCwwoaAq9aKUHQgNF83m1HN0UcHy1so12GoBMx1hZdnte7mI/WLXMRY8qn9JU9dCBayaXJOhli1XvTu103pxhlqwXBurIpeQWndgcdMJmpLVYs42lhxhPY8sNSzMhcn4eVILWDRF0BRCallyHeCWNuPi8AywQsRed4dFcrFaHlgkV0stksvAkjaW908sLVv68cFJhnGkFrBYLlstastjLEFBD7A8sIzdU02uulo7LIVchlqP9M5IpIyl2j3dKfaohSVExVgsV9gYr1Usd3/LBbUmqHWcaGAtFs/xQ3+ANc1Y5XXA2MJiufLGeJ2pgFWRC2oNEOY4+RjrSdXCWmtxA7LsC2HRoVxQq2BNwCK5DLU4LBe1+3T/Civtl2rCIrnkozOKWpjlSK6KWlZCC+tuN2FRawQFY9XlglqMxXKxWtnEiuexeAlhLJZrq5bTwQOrJtdeLdg8pm1ILsIqE6EvC66FxSXG4pVlhKkL1gQslmt6q9XZG6XMcrE+iJzDYrneH2TFmqlWLJbr/UH2agk9NiI4jZVbWLDw47F2dSzMf/5IrfHgsUULCzFmQlmVQS0kPiOw6VCr9wXr7hBsBBFWKxvn13NYur3ZGGJODyRL+0/RdXJ63raQXIipFst1HiuaSwjLhQh2TrhxlqupFst1AgsLl43FcsE9wiK5EG+oRXKdwPpiuIIhF3ZOwLLk6ltqASH/Pdb9NVzmoh8suXAoYSyWC8X0CtuSUwmwrKudVIoz07C+ognb7hpzCKmOJTgY4bzfa+dvVSzxc96d6P5BQiyPKYZCEmLkR8TLmqis/8L7OeoQ3slfO5m8NjNArSuHNbVzx6HkwuG38XYUr9IuHajF+cVqpZ+p5f9PtW7/pVrdL1EL5/2vgvP+tTP+TK3pd6gVfqaWXlwtfk1jhl/TXDsxlcQvsXxJ75A/ZMHNEnLfXgI)ASUVORK5CYII=%iVBORw0KG;)NSUhEUg?AII?ACCCAM?AC93eDP)GFBMVEXGnG3Vt5jw5tzo2Mj69/TLpXv::hzbgsbLBb?ABn0lEQVR4Xu3c62qDQBQE4HM/7:GLbRFtrMEjLpb6Hz/omEcVk9uEKWqXFO2SPWqkoqUjTRKSmUrLXHZzEVlM5XtUv4DIiIiIiIiIiKiPrQKSnWrT+b6/fhHzhPOszo0Fug4doeKiMOzIeGsroPCzqiBZwZUgIQbK6TVb9Z1fwWtA/x6/lLPEi5WCGhwtkLIW44AO9WgepbwlpgGJDQAPU24NpUNW1/qScKNFbpWVmicKDwN4d0GFTDhvgpdI094nbizgsJQwyK4fHOsgAnXK+AiGHS7uYLgkawGKtNyPUl4U/wOSFyE2a6eJVybSseFxUkz2I4J5xkO2SBfVICEa1OpcJjZm9chJwl3CZiH5WrQWyuwAitsngh8XdhfoVLWa/i0MMqWp2kNImXk1UtHAmfCV4yJ1Ujxi6auPRMVRwcN2PSMqOlHaFGDWk/pAmZuAVfpg6wAsFw5l3OrTwVqeZjXa9EiezuEygK9/FJEasuXAHUsvwqQ2tgirGU9bfvqYdYqREREREREREREJCkqm6m4bOb7:b/J25+sP8WEB/sCiRwLVAgBw)BJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?ANw?ABpCAM?ABmg711)YFBMVEX::tk0REn+3ytIX30bf65df0w6D++fb98uz42MPunFfvpGj77OL1yqzzu5PxrHegyfS31vfY6PqfyfRDn+32+f7C3Pjs9P1nru+SwvNWpu6Fu/Li7vt2tfGrz/XN4vl+xYwD?AFgElEQVR4XtyZa46rMAyFswU/8g6w/11eJQx13FINERc04vwZEMTxl9THwJhxmTnn2dyiEnP05lZl5nwLmw3MHE5HcXOuIkB7FZxdZjcIh1yF59CIRXAVnMQehCtn2EriPwpnJj5ZAb6ypdkhooMY/hSchQz2pD0wqQgXwt0sLzv/PLjl66QFsegTDeeBcgT/MQzm5ruAMraKmQmb+riIaJtdv8cq6l6VlW+z1Dn8nusT4CprYB9OGOREHVvadSDM/JKM1erjrlYPiZtmNbu+V4KBsZGbklNoLYwI287lcbgSeNNsRI55GA66VgSH4IpAdHR2Yi1sNcc0CjcF5kQALQVUjSnRZrwvYqiqTPAjp+AqB7mlIXo9KOzBxcQcANu4JHCxzoC1XNqSQ62YuS2PH4KTIS3nPn4qQ4ZS82OeyhYLvuWgJye74Sz9wmb5/VC/m3EZg6PuxHcAZEbhmCe7ZiLpfYPTk5c+5twlkrctfVVnAH8cLvdV5jqAOA43WUGZDsDJAkoiejB0T23LVorkD8IFK32ySzrUk1G45PvED8AFxb53DNoJNm+Fg26p0lNBOTs7BJdNbyL7cMeySv1PtE/.+AqOgNniJuis+NwonE4vVs2fL4Guoa3nICTdswRb4bzabNqS7oBdtYSTsEZC0Ga+11wUhPkFgisjal3hDIMRxrDw8RVdC/cxKKsy0LocQjO7ybtm0H5m2suUOKqyRnzO9zUv61rON1S9iPBnXCp1VlpbwP7im295Vg+Q32DE2PSwncYWZ5L4FAy/yLXGwq8rNNO/A1u15j0k4uM4nItHHzsFbltykKqFZRKWq9hYE4aLpSVmlRyHl7ZYzVm+17OCX9C/38424qNoAm9esTPOfC7xU3rlfqHQMMxp0zUDiZBwHqaM9AaTO+obcUe2kz5VzjgNx1q4qIAG5wowe43PzI9XORO0ao6EyXFpsJdAKfT2hbd5STnYHU6K3lYjIIzy5x/?g/728K82d123nDmy+Ac6+34ZxT12ZxlfmUly80O1d23MlikybTo9Bf9aGL9NpY8xRN2sBia9gPkRSvtKjyJLhJ:Mrmcco9b3HZ2npTxCsHg2ICFH670NErBSteZIwdmj4jx17W20dBgIoOpuZ0d02HOD8/6eWitrITiiYvigh+025mFlYicDydv3rz6n:0W2qC7yrinoB3cq+pLfFgfYB/e8D+6D++CSBV0tyaVmi6oGMz9e8e+A4D812XP3KCIx92vN;uBHiZjrhwNn7+ksge4iBV6yxy4VoHHiTLcxlkM7NkMuK1CCWYK4LLnQAnZ3bOt9RDbd4DaT/mEUyBk78Q0AQ7QPoed7sMKpd06CoACW9uvZVPgwrBIAyDIXRxssS8ioDPgdPyV5QGw3sdtcdjvE+Bq3BdpHLoCdhdX0nBh5jrEGVYGoDnewqmM/zzz4iTQW3O8gxubGHccx6z+fjiJVumxvAcuyKlkGwDh5XHp6dBpBUivjjOgyWMG2KvjKlR5kl8xBfTFcAHI8qR8fUOB9hK42voihtNwyY7pvUCJ131aXHptahwUDUEBtnjaipuqBa083NFYAKqqVnRe3MrQGmXADZUs51phb2Kc+KL0SnAZaspeXZJci8vOW+bF9ZK7J3koei/98i1PX+3cQQrDMAxEUfgnsIE0YKXJ/W8ZECkiBbqsyTD/Bg+EljMf4JxzzjlX8wWqAd24CRlnnE61RAC0H/MFLecLnlfwXdSxQs4XkO1yuL40sscdbi0RADVfcMMF0F5HElelhwIMuOYLgC6Gg898ARBquJovgLcYruYLAhDD3ecLVHHzM8444+Zn3I.xQWwqeI6UPMFYrhlAOR8ASGCq7bBlRSu5gvI2PVwNV/wp0447cOFHe6Olw)BJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AM0?ABICAM?ABiH4Ew)GFBMVEV9fX2owomVpISHjYHC64274IzP/5H6+voBAFkX?ACPUlEQVR4Xu2b4arbMAyFdY4k9/3feN26KxQlV7AtCYvx96tBHKqPuLJTiLxeL1CeD/E2eduozIG+bUJmBh2BzAOEMg0PdVksFovFYrFYeAGgymMZBximsAlMp7AJdCobPHQKWCwv98ffHMGXAPPFwAQ2gqls5Dsbwn8Cyg4CnwID7ZPKjKYgz7WxQxvat7sRvkrOEaBPskycEfj190a97kZVs4ImeaMNDmaa2igwSuMYNMnbbPRwCPioWC1V0CSvt6mg6FZQShU0ybttoFFNc8Eo0YZtS8M0d0hqk6xrUEMcZ0zoXoabb2W+0PxzSDp9suqYhsyZNv1C883BjhtR296pPrkbIKYhc56NWdEpM8B/0Rwc4rJPppuewdlnAUXosNhUeps+eajjcrJNXix+sU0EAp5tkxuQ3kb/2kaLTcALnwhE3JHrjsw2auEdNl0y1y3NtittxvBcN9nBkbOastIms4xq0rnMhvrbRuvQoVFkv3uqF5suGTNARdROG2tANAEgbPIo8LyrKhFLPMub28g2fVJJfgqkfD7G5b9QuueBDccebY/QItImc8G3w8LPtBFrzpbdg0q1aZI32vBomPqouJZ+q02TvNEmt4cyKXIlYKgCyaZJ3meT26Nseg4MevD/BzScXfpkb3M2SgAsBQX8TS0cPaOiSf7XYBgONq7nEdungSrCkDF5KGwOyc/Dxx7IU8EUMoH6BDLNfvJ0lIA78Ecqi8VisVgsFgtO5QKZB0z1ptdkb+HN9YbkD2u1NmxyY6u4)AElFTkSuQmCC%iVBORw0KG;)NSUhEUg?ANM)8CAM?ADLy3+8)MFBMVEX:/9/frjX1+inp81WUaW6udfGx97q6fIbDJDr+PfE7Onc9PLN7+zT8e/0+vu56eUR9Hoq?AEp0lEQVR4XryXzQ7DIAyDfc0fe/+3XTeph4YGI5D4jiSo2HMQA+TzRNDhzw7FD30uOjr6JsMf+czj4PATI1GozqsNYDsVpzS1fGQiOuplslOOaUIkN4nmVrhN3XKc04ScraFkq0JrzKx2UpMla0Zma10hXhlOaoIOJipSjZRqq3BWkwy8SSUyL7VTdlgTvHTcipngRUnJXNMkWCU7TmaiqMbAJ1nTZFgnjwabCV5uyaUlTYoNWuG4FmbTmYGNYlnBHiccPhpSu8YadCVCvpU84njwn2ncIao5lBwjydu8z1u/Fnyb48b1B/GbvsJ28V5A8E/AX3uaX6gq8Zv8M9lG+jts5hPy2iRxcYuS1SfaPpEl2FS4463LLv6i5g8n28PE45yyIFPbvqyX65brIAiFQckFCfb93/aUkIacrprRzuwfNWp15RPc0cLWMiGtK2EuO1QdzLzyVFdwx4PP3J@ekEqCpBoPfSw7JOBLCmuzlHjfl6014P+Y6rLiUSWfL2ZV1ybS+GvxN+duySYNmU0minNGbNuW2HoUd0OIlUxVfgzbS0muNWVSSxCFaAyi3YvuOh2EjHzONJ4oLjLhYNpAYMypgpgDQBR+uO04Eq5Qs30LNX4ffC0ZLr0vPCWbAmAE8QUqSLtM+49r4fcMuZBXy0XJtpzz5lUoMWUyep0GAqKqAXp7IgecFkt6jGFVabrsqWGMY9ezPjCNPkrYWIRhQbTKTrKSUy8fuhxBlwJ0erzyUTnjOTtyRrv/Dyk3RuxlE0EVxeK8A0TJdyLeTYu5JOJJmuJHmeYk/1E3bnRa9navciNNBo/S/LJpMIzORQJ3DAtsBypkqw0JuZrS3pf+JSz1YMJz83m7WjTdtmEDDimMQnX2WOV75jeepiFnenzGHMM13VZXE6TwKPVE6guY63XQJmVGxWNMJlqk6k6UTDF08slskV16rPzrf9sE0zgrzfE1IhT7JgELSZzCbL/1M7PLncHyo4CSbjWM8XDYNOvmMjft8mU3QfxLkzjx345woQrTinlsCwMD/vAVJ9yJpEGU7jK3GRa1l3z7W4av3EeTJH4tJy57rplkqeaTL4wuDaZYO+j++PouE3IzvQIpAQu8mr+yPTKODG1PSL5HNRi8hDmlnsNfnVDvp/m7GsaDnQc3KYPTM6yl6rK0GSChGYSYQPvTHVtOIQ+GuKB5FMx9YxgET319aUpcg+H7k+llynuQB1WqbqFylbhay2GRPUng9DhQL3cfFcHk4FcxPC1cpx278Kkb3urh8mhXAo/SQInBgwrrBX/NWsGKRCEMBAElmWJ0fj/3y7McZQapCeQ/KCwCZjqR69r99vYgRcGppzb1+/6si2znvPidJ8fCb4A4Xo+n2886xpfLEN/l6mBj0u6r2zSYQKTrjB0r+EbzCYzcXlGH85CbDinC0ypCoOzwJ2i@jyk4cGPUjz6kzn2lb3NB19vM50QxoG85amMeoU6UxjJpc+YMFBK0xh8pnCxPk2WLo6U8wUJt6sjYIyZKaWw8RhMBb8KtNMY8J40UP1uky0BhjZKjNBV5eYW1Um7i1xNr0yE3TfUR5GdaatP+OH6rWZ/usREj10r/sZ)AElFTkSuQmCC!