ruby2.5-rubygem-sshkit-doc-1.16.0-lp151.2.1 >  A [#/=„05ziDH"vpY$/WK"J:E{_`b(PKӚ#w_ۀizA ѯ.QkHpʌ' ȟkVa(_qo%'OvѠi32 lt$kyE ҕ1 VfP@ $*pgFRf oLƦPD%bF-0+mj-@L]J6xvn^n)vHQĬָaSyl2k9KFzz^GjDA!h>p;?d$ . L )/8rr  r  r r cr drjrqry0yXr `t(89x:F G4rHrIrX8Y@\dr],r^65bc,deflurvxzCruby2.5-rubygem-sshkit-doc1.16.0lp151.2.1RDoc documentation for sshkitDocumentation generated at gem installation time. Usually in RDoc and RI formats.[lamb26*openSUSE Leap 15.1openSUSEMIThttps://bugs.opensuse.orgDevelopment/Languages/Rubyhttp://github.com/capistrano/sshkitlinuxx86_64 wy ?1    !y'8B+D04h/-O$ 3.&B} & ?,!0_89C9B>3&0>?5Q1$A(2 ]O999}5ZID3 "L %    1$#\%D(*&R6<"$2Bh  )  R!/!5!1 !  .=R .     ;$$ } I  [uAAA큤A큤AAA큤AA큤AAA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[70a0b52e9db82966a9e0a5809f421ce851d8e7b5c7fe72e72573b349b7b3e85dd3b4000543319806ffe3ad84816a53a7328c50853f3dae99c3fd3d89f25b8b166dcbd3fe4c564df29d8117a60c78f162b25946f44eda30b05169b90b62e74d363771aa45bd3859f004cb0eaf773c87ace48a6bd4ca92d44c1b04350012739b243474d74932a8662cece5cfb037705f3de400e02c3c3b8c1ec013828b6fd7775576f23980f20b90ff39eb9dd297b40ea60919dcc3af7b9a49da4a8013337d7859c90fb2fb43527ec663ea91a8cf96a5349b782f0a10e78cd5a2eb8111364bd34aceb7f55beca3d6b585ef1bef4cc275f68e36117c4e16a7b86994d61c96cf53cf085b98d57e083e184c87341da51e9dbb4994a46b7f4a93a193749e064c63f4b67d0aa16a072ade69ca20256285ea10a35cfc2d0ad562fc57452a9499b44c005929d9f83e3139baa3b8a1695d9903dfecf3a364829430f05edb9e826fd1dc4f6dae3b550790527461f79bf96ab8f71ba2d78a4437108f5382865a3bde0e4caadb07692b06821c3375173d236b3534836b3712478ae8bcf36e198851b10a518a09ad7ac09fbdb51d8f2faaed16d105a4f560b267e5f502c849f2e9defbbe05b2f4799174507e3d4aa85f0f8890207e6bbbcdc1828795b9734293081dbf77db5dde2268e778c69044dec5cec6ee52f616120e19121bf381ea9622584aec3936b1b7dcc780ca92d595f4117406d1a0d221443c080912d49a1fe3a00814383afe82a7c9c77357205d0962aebae27bfa9ac33aee1a11ec297438965a1ebe6b5766bef3e48fb30c7e0e6bde8e5324c7c06fad9e56bffca8186adb938dd3ce5cc35cecbde47b46134904294dd89674e49f4d7ef847b60d5736a9d1b479bb17f98c87b174f9b9280e932abfba91d227be5f0b3df950103b364f3aa22977237ae8df0c3063e214678ac6807e3c4d239015c870ba882d5fd4cf0a72321edb020318c0baaec7e727979eb0de32c18b4b67a46362cecd069cbfaa024885a76a2648394295ee6ba5631f8d204f74c89487f99ea4859a4b3ab07d3b1772dfdd0f08e005ef2de7635ea836b54ae37530d8a9db0869be4e51b4537378c89845af632dcb90101213b8a8abb346a5e6285077448599b25b0b6a36d66298a9225e35133135af087514dd7ac0e48100a0cf80eb206999e719969916df4c38b69aa48efe788f601144debcd12e8fd80cef1315a5de7a4df856fb2c184b8ab226dd925f3a12c1d5170859d2949fb6edffed590348052a2c1815475faf3e5f759919f1a7e62b05a4829d1b421f335df6bf83b3c3382413d1203d19e8a38756125798e5cdc5e3e3f9687e3c87e84e78af168eb8f0cfea7e0bb132e4dc25688a80b5e459a52c970c71743f375c21eb1ecf9e3b6478145c7cb8263fc0ba082d3ce490e489ff3100d4c503ab05075d5e7d74438c240bbaf24c41a60bf5967c8a46f19ec9d3065bcb195d798b958bafbdf50fabf453a3837aaa85966db06538e2aa4773356f60a487214e72a3781484da4c63f1a2445f77aac5a464ec695b0c2a98e2c16b510de8d82a7f753c62afce00003a9bdafc5e6f4866d36c07308de2d73952124a76bf1a109fc2b1005026a1c5cafa35f5777db11e02ce7ac618a4c5d32e5f8fe17ff92c921322581f9ca101a80a087c30dcdb03184862a2d1284fddf016560e63f4a8b700a8994a62ccb8f707143482858994151fc940e52733b928c219e524eff86104cccf2d668c9e07bfd987ade2dbb7fea1d3a0de01143d794d537ae0466dd25604eba3c8740d2239bbec4937d533c4ec3c8e61286409afc470af88277f28e37b2c8a5f0fdc0732d17e1af8ff4b3b2856dfd70f87d00e4031e7f385832e2f8980342634006b74c43ba038ef366e996b71f106385ec594b51126e51ac3c36810d4039bc99b23997747c1bc06f66204ca864d9873c94fdd0c3565b04b0c607098ad5c7979a768e2ab517d961e1e37e258180c45933679a960a1f2a62013d9493485ad8d2197b74d92957341310fe523015494832e99ada214aaedd0f28f527c1f5bd915534094011ae0a50d018cb9d32a971a5fa0793f46563b1ee8bab30898bdec5099963a9298601281f3a34153e43a671724f95a542a24a8a2b3664a89f67250e4b05f652b8b77df2d43546c8eb14adbaede0e4f352a4a92a8f5924ad05be6d4c7f1abc161510651691d88b607c0c1fe1beac5c03f33043534f94bc65a1056057f94a0fb9ad1ce3c2654b052bea704722805a7ca56a0b9da3402e37c4563f41336a37d63472c3b9f1902420b543e63b3a0667a5090302a159943f8345c69d701229cf02c19f56cb967644fd692fe72f2c6ec1594d771bd487d8f97e7fa3b3db4a65006a6dcb57fdb6635a14e02cb7513dd1fe5072192a7ec630ab47c85149d41a8f5927a57a0f9ed276a2518e3d36628c8251e70b44dfabe0263ad7c37bf92e2e069580494cf070b1aae416ea7752a6ba06a6e29d5ec1d4d6ee51cb1b163a76ee0124ba8add8e274ba2fca193064c0b25da1a46309319f5d8babbcade46d833c7853cc69b3abaf97a05f46a74b955db86f512b16f82e24b4a8a8a08cf3beab5a33ffb6842e86f8d51b58e25b09e6f17cf809f656778dc865e07e70cbb86c7063e256e4778009bca678b28f73c7288ca05a8da3a61931805385ad1a9b2b9e182a23416aa90e2fbdd542588da3242dfa4757c0f1d4ee96b5c4401724fe88a2ab09c09cf83a2f5ba3e2c9d58c44a59494daa70d107773a1035a2890d0384aa3088209880bfb206ff69c2d77ca49b0a3d51b2316754aa50468815d6b13801dd4a4bef7f406d263ec6e91e68bc2596826b9d437c75061ed5c6e70871a7a8eb62595ed5b70b603366bf42a4a58060bd5b0d3783e9b9f275dc7a63229fac1a5af80049356b7b17e84b56ea817825da41a17462ce5d6b25b4e1727ed5fbc51d392b8f047b057a064e02bfd985ea9974f68b918edfd3116e94ae485be0fe69f73e0dd0c4ad1519bb073d4643112fe90dbb09a9d5aa1d0bbe815d4ffe7cfc4f1b0f228989420934f0fcdb0d883d74c1611f24e474d3b06024e9bd125ad2a51897e4295cdf7f71172c444315b4d4bc6278e20099b9b4c11560e40b760973c17f0c679aae55527093c05a961da9785790d5658ea00d1287a7b1b73d1bd7018831c04380c1b037483de68f09c8cab0d3a32d650690577b3380b0922e30e205cc2358007aa47b6aaeed9f6c25f66c62daabfb69d180bb427b7ef7ae838fa0743e15eb6c772be889ebb290de8fc502666690f82a3e95884807ab95cc0ec82905326143b4b96b08b5a365b0de8030d0bd8b0ea7ffef87d0ae584a9e616facaf802d53b36be48630abbfc83d7a57f8360e3890ba057ab041ecf42fa10eb087475a2edd1e29d719b9296baaa6f4caa948a709ced096ad21da0905b301b59172a557b2e34a3e8cf0bfc4286e202d05eaca038302db0c52be5c7428c2d7e3ff815aee4d0da71aeb9b261ecf7222ae0f8c680edf0b3fd35800ae8b812a7a1c65a7b045fe73504de67f35ef10d8b05cf15ff2acc773edffa3f82c06a192981e5096ae5e66d43f8422223cc48f1e17cb018c849e9339dee274e648077e0ab5d5a7a9f0416c68138eb0124ae753198381e79666bcb6a498fedca36ad63ec44eb760423a61e2ac96943ee7b896d61a19c96105edb6160c368925cd917bcbd511d57adcf0749cd5e3e57b1091c51ae86e6e93c53e605642e5d35eca282d8dd8eb0622948c7b5c40768643f210acb9b89ea153165adbc614aefcb707068b03acc09b32ce8fbfb85005b46c24f519b6beae3fdf0f999a64ab09b206ca8ee63ff51a04ce0c2113f20a23c840604ee61414995ffb0b4dcf8c275feb73ad2bb71754535b271c3aa631e40008f02a026522fc3be3996fb196c33481f255cd233055e8439614986606658bbecb60271ae47f09c80f16c6f2a1337f5ce16a6263a7cc7ba971263f6ac5f8b34ef75167a5c945c7848a5897351a3c2c118d29207ac0d79ed816ac02a62d8f7a6455b93942374607d50b791f99553d3fa7b67a308104fea719c6773e82be83a6c88a65a45e95d1b06b7d037e72b08e701ef19de5289d8b1ae41923bf6205fbcb5673e10616c542b0526606c47d7ec1a99dd39bba42433cdb0aeaa33798d9fdb3fb93ca0f0216fddbc1eb45df2d3761cd0daea59b6fc3ee5bb873e7f94c09b8f12966067d8ff68bae5faa4aa15d230447fc249408a6fbb227aec03fbd1a2d8852a61fecad702fe52bb2b88245e762961ced42264ade5babe72d03ba6dae0c8eb8f62fe327ad54e9b6c71a41d8bacd67ac2ed6b8e4698cfd936305dc97f8bfc5c0267f1b9b49803674b72a6c94f8adc3d80cf22aa4135a6a4a3b9d4ae710f2acb139dfdb20e854c6d1c235252833bc28476e0b421a09a04a3134fb50e650a1c8c344481e722d7aff872ea652581f8168b1917af69b175bbaee078270ae0815a05128a23a778306c49abfc3e0bdc1bb262ee53b14e450671622e42765ada76b19a8eeaacbd2ee4090fd62695c26df0bbdc965fb6d3ab283bf8dce01e956b9ba7b5cde21e237c989b8a52ca9b89341a80707b4434694a17e18853295a0fe0aeb82bf664f081874ede201bcdc9464494fecedf361d316c22d47591d943778f15b96f5be2e99caef71fc178556f18dffe4eba3a3e5db40104a0f468ddd32f2cba466d7f3709bcec2f650d0f609fb03f8669ee5e9e651361699c278549d9a5916ba89749cbd3b78d0119dc7c2eb7923c39a7fa345d21443dd12c6f729e33e7263316ac9213443bf5d2d302b03a949986d33d8f1e44c001c2a1ad0efffbf579d318fb6b253af2ee7b4a61d64314a8ca92fee61223d5379ee5459de9223a29402d6186cf3168d8842d84edef9b883fcaea9cc0dd912c065abbc790223370bb9ba5baa12b4e7f25c15430d658c073e484c27df104bf38e9191644444805b414f87a95c8dcc5b36b203dc93158d7a803b4460ff106732a6972102eb1d0d9fdcfd2f288cbc1a305998e8ef8464e7eb88516e1217b5d2713160b6338ab2a1ea08b6b1973a9867377008fbfc51305ed9384e77387a8e72b5598cadd32646db20054364eb56ec1d4292d9f900b8b8fa7a70dcf5a0128fa9d06dd3f2b4fb5ccc93cb4a5c0eee1f2bd322cb78871f0996b09fa483313e52102be086e6efee8d17ab770a55a1e43cc365fd325020a87e8d40e01f984a7dbfa80a0af690cba2792a0f8b4d9f6fd79576ae2afdd37858348bf4a36c707fc6dde79ac290d91e24b0232eef9f2f4e8785f96f8ba4d671c5635eb9605f05d0c42b9c8c402bc7571ec9ce9360750fb0f9e569253ec63d76a2ff1931d5e117f8b199d6492912a1c212b3948545e773cb716c2eb6f382dc15e35204783ceed158c7910f91b4e55147cfe9edffb6d4791c6853423c088c68693e3f10491407893e8313c6162eb2a6d0d7762d47cc21f3339a658c401672fc956b6a3ade32daff80836671c4d08c1a12170795e81fb750a144c8de691ed113e4fbb2f75038bef9ff95536dd351c81c4e6f0d1bbb2eb0fc2206c30daefd3c6ab6370ec33721b410870bf19ed6f8a19fbc7d0551cf14f37a26252cc4b460dc4902cfff999bb18aff3bd310c332465fc55e2e708bdcb60b8982036af6adcef23f5b390ed38dc75a928548d62235cf83204c9de0822abd217e4c977e1e9225c5eb77ddcfb74529b0790cc9e8dc698fff4b0104e1397b07dc9dbdcf9e74ce77a84813b3a5f525fdace7f644f8b6a9cb369b3b3791a418aa6d9090d9a3bdb912c1beceb818cec04fdd28ed48ca288f0aa3401a6e0616046f0fbf1a2fb5a03255e95b707ecae420163f7325da5a6238443f9d5f0ef89caa38647bad9d3e94c552ccedb67e3ec7c29c19e68d951e5a67334caa5020b3efc0ceed8b152eb2f51c5d918da6822af3505aeb6ceff4d733958fb7ad895c4124506cf9095bb8635700c4651ef28461e859804bc53edc40cbd8731200498c4794ca03defa3712fcd4d128bba8bb8cec975a3fc5e3338c8b3ad6922f9bc5316947a36b048af06fb504cd47df309fa8be2a3d029bb1d1594bf938c498822f5f6cd272b4447a86d15a62b3735d991637e8d2c5f1017bd02dd81997831bb99e14d3fc1329f2ae5348d0ca6b176eecf1b102ebe78b7bf1ca861d0c381a483413e14b0ddc1488f7f3153547385e43fd057f1be3414dfff5a11bd3533a8f84ce3ea5842eaed24f789e55540abdbc8b754c20bdc29bae5f9e697a1462cb170dcdb5b60018a3763984bd04b15c45352b4b2831275f88439a2b90921543f39ae104df774261d97ff624a80171d596927b268b8e63e299b2a8a4af7bb7e9a2649948cb4989a8ad963de1b9c3c17faa49d3d2892f677625c30e8dff72e750f1f29547ee10a4c4a89fcb75b40eb1d0d956d02f12584228dff951d6c4c79a270487e372e4753cdc3da1314d403ef1889b7cd98a025c36185d37d77898a91a86fa0240dec494b8e9532450e86f373dcb45524f612b5750288900e3a9116739bd2cf8cf6a96eb88356fe9b183970dc1fa264dc2025092655b2418328bc8ccdf90dbdf6d4d24a4197d00879032f9ade9eea4557c8e2e4df7535bd122fd7c12f6d181145787a64170dde77ea998ee165b273f542ac7451f9622da5d4b1423b0d7fef29782b139ef67578d14acb43b9c3cdcee468f0e8ddca414486f71d73895fa4d3cc6656a9b53e88dcc6dd338b6da752b867e7b9e0743fba939e233656020fa731f4e3ae72c14120f8388d4e4fe72b3801b78c7b6260e9392f926a60691a76026fe8a2077d07cc07b8faea72ea2e525746e97e15d61e86d90ce00924d6bb737f075da82811e078d6e1eb40c7ca96f78165658ebe3c0d7d30e7ceb957b81f62a18edaa986f056d168ba9bf369e2909cc0aef7aa17b3166f3729e5a5219a933c17f467b904397d5ab96cc5c36a824975c58ad43e833737776ae2f25751dc98bb328018537846bb242ea271519cc999a4d12d362405f6f248f62a6319068f5d1eb0f5673a85a2c01dc967e34d4d71bf3d55aa6cfe563b56285c4ea5b64e7b4f7a0bca2826dbc3bfd82eb82bba6e85f037760384848616b8be3b77abe62824fdff484fba3edc878d38d1e42221f76d73cdf6a0fa26a5564f39d89d9b3221f4daa0eee53f396a039198d81763ec1419ca4da4190da099531935cf03aa459f44ec44b44a57822479b103493beb7457e780604c20734bc532d902dc1c0e93297c6547b70d5fd8105b8a968fd819982ba805d5c6c9082a356c8251759f090498ba6c9bf4b3d9e97bca58ad1a6fbafa0059746d44c09b53dffb3c7879ab8c907550e8f92c87df9f257b695a427feb5b1ec7567d462ad3867e9d67ef5fc4b0790fba21f75f4e154dc951bce98b137beb3f5c0c640bf2e66290309398731f18c4916e7dab7c98059cf6e6fc85b1fa687e9d4dfc849548f8b9d90bb7900e29303dbb5b9f19f0f52834278ca7557bbeb7fbe3f66adc551ca3792a9c904ef3afbe17d0bee24283b61262d1a38d3388c2fb8d224c70cb8f0dc07173d9776f1389d582b9ba5e8b007f099d837689c033c488597f2c93f8e0b4ba4aed0a2105f12ee9cc7b5ee1fcc70679dc327275fa3b342a33e7aac9dbbf315336c4ff905cf41d36644d118613f015f6e0423f58d9053e6535b4e2ff09e2cc0b16939ec56d63da3af54866b2fba7f12abdb38150405eeca7df2113a2ff00a108cd48f728338fff68fe0548d5ee933db0f9d4fde399a494da7481d8eb02eb52ac9caa27dcc354f8bddb7e442ae66ff326f0738dbc9d93a699e7527867cd7653579d5f3f1efce178a8386dee85ca3baed78b3a5568c7326bab5f6e5a787ea48c7e1c0c0a84532b920817460313e93b8ce96731a4fa3b8bd9212dfc9c88cfc1ae19aaa81e3586e7184b7e014abe5cfb03999d31031c2010068481a420e09176be1f9b14cb9b580132c221e0e5a7de9dee943ac82ef94965b61f74f4c601fac640ecc788a53fa178590806fdb3bc7239131d9a0b213b1ec6e776a529fa0ac069e3602f06203a732e18699efd4c2dbe622054d9a680854bdf6a40d3ca1bd395c53f5256146706403b46f3a6e9d487aac4dec95d9d75105a5f22b19b16ff8d1f2cd0820672518e49e316390009b0f98d24aa70f97693fdeb84a2fc9a739dfaf0626c3bf983c2f24ddde4d9cd7cdc19e25dbf8aaa894d76eb8ebc54a2ea5eeac216a684bd5ed2ec74f208c4ce8b1851b32741e221fdcc5bd0b664a89df6fef35870ab018ce5bf84f7552c643b49a30463ddcae8759678fd1ebd965395a21cbb352d8c7b0f8e7948f788bb3eaaee7160155767ce435a258de7dc1d56d4cfca2fb4119e4c0f3e56a96e6aa46cb7c4595c3b12de61fcf488a7d24b2e93f24f71f49a615e510d155d6ab05ea5dec1d242cd9fa6eb84ba5f381a5a3b18a442134b1dc2714ef413f1378283b8891c2a613a69174ae89c49b897ddb9e788eea581051c8653c0eab3a751af54fd98d1ae2e5cba3c5c3d4d1ce8b2e54fc4104e0910407250924632ee31016775af239ecf95c0a82addc6dc3c35c423aa9373812fc917150dd971f38518c1ece474d4a0a9ff46a8e4f3e6a0bbe101d85df589ebac27c43147e8a34f2a437b2834530f85bc33009dda8ea56b6465c9d044e7f6c05fdf464250d479f4b7541c6a784e2552f2c872dbb2d8593398e3455efe3c0ec0250be8ab18f09a1a6c2947d9165fbc01e1d1c34ae70ac19acccc53ee74b4289d5f9e727b12388d528932af723e88bc9cfaba4c36b83ee2bed9cc6c8fcb8299881bb1e2c4ecf6202e6e07c45776e609198f0f7a4f19182efdf277d43d1645fb5bd583da03c11b3f5e10be4d67a42d9f4c3ec84805355b0e461a6d7d5926bb3d98cb6207c5c3530338c9d6e513bb569e01086fadced4695ddd64398ec488b55ac63c893366f727e7c991f3b7e8b09fa5c25b9b75d1299f6430f1356be5fa6a6a6243bff8a308000c6cea667f9476482a59f3421a5105b56d1beb757d5b716c62e81d0b7e15a9edaf0f0bac5475da4190642e80bd8d117d1cc9e6722ee6faca2dfb1f735c59ac6d71c60296b2d9c63c703aaeaec5eab3ff2ce877214eb12a77a9d4dd10fc35a54bcc9813c7f3b0bb237c019f3b1006846e063fa7097e28ba7205f184a0bb949d7218a7ed0fb5e8dbd1405b5688bd6534cfde86d7b299dede730bb3175f963452d5b800b7551ec3ccb6f60c8a20a3deb1410db7b60ec3737204d03e225653e9165cc845d43e7328c54b3391aac66767161983c2c9f0d96634fed507c97412c2de5b38ed957f570f759eae73271ea926d9c516490b03f519435f913347205178c8b54af9de5a0b97ed1adebb4e22c105027dfe2594fd190dbcf0d58f0a6b02525f60cb94d173892cb8e4f85b415ae86a00d3cc039645fbf80642973ca89f3d763aa18c7d65a9e4cac80cf11a3ae4811d1ccb4984355bd57e319c08c08c9b7dcfde7b2e0cdf01850401848683b35767bbdfa01a89440241cc726a1e62aff3da257a07675d23a899c4a911dc3dd7971aef2777aa5ded160747104afa6025422035dd8052f6366a982f8e4314f64873e9dca1a1649af392ee8fa16e7e414f1344eeb409787bf4839590cd3b1ed7257e67a365e91c011e55fd366654a2ba27a99cb0c375b7bc76db17daee8667ff7f36dd8ed8a43d2f5e68d131cb96ed4915835bf872a137e6c0ad03bf707449d49943801eafc22f8842798e3115ec82c63171b96e522cc2889e89267d2c1f5855bde8a8aa9924c6d815032d2d5bb636f11a1ff11c507dea80aca2405e2c0f86622ef7ed3bd57dd704536a200ab6eb7c6e9e0694b5653030014e5703332d88f7eca813f07a92e278137452c8897da5088b184a1ffdcffc3562a871ab3aee7ba357b3c69e3194861e06af8ca9f7bdcb8273113b75554734bcf5cd462982a74a0d883b6ee995ac6b3bbcabf6379c58bc2940a5b7ca27d3e77f659ff623a1d851adeafdec297bec0d7800f6cfd028c1ee381b6b8c27ddf15e14db3c45d90f15ff98d0949095440d7e35bb0286a60508dc7a182d1def7c543353821402bcec5cc08873707e2b32f5b60ecc6b85dda6de6f752611e397de7a63fd7701e5b12521efeee9ea9388359d6db02d187571053ebce05222c939d8aed03f762e0db7976020ecb88b1ff77f546525a6f59c7e3b98bd0ced06b526c2fff656b80d176caf557e2b39be35fab6e2376abcc3e9dfb657286b4a00c515ed8f9a668b05f0392a8ba7ab28f661e61e1259408641324170d1cddbd6df3f1f8da9d7a492b48dd980b3f342d3d31cc75eebf98dc1b9ed7b19e35a31a4cae08f7c077b7e75e04689dfae5104ec697522a2cd6fb36d4f78ad80729ca01faebc8236c4f154825a2ab26655c7b117d395d3818a10207aab134534fd29b32a87eef0f7e9b86bf3361463a67c2613cbc0773e11f6b5002357159edec7c9a3adac25d28b2fdabc0e3c92eca551875b2f97729f60b1ab48eb5de1f6365ac869a881ab635e5f0344ebd86f688a348b194bf95ca648e2eb8acf76d32fc2ae01566507724b86ec99e13b1a60d80e9d65d9d0e06705e930eeaf39fa0c2292390b46b74c4d1f2ef65e80a89cadcab56e046aafcabda042f7ffa84ee027053ff12b2ee055bf709510bd4a882ac3d73bdeb78f6db450e9e853b564d42dd967890994547e09a361a704c3091b8fb06729eb518fbb3940ea4d1b676a0fa8c64a0a2a36346649fc1842cbaf7bf966b724e4931e52062b7274ccf9b9b0f8bbfc3393ac5b328eeca635c0c54369a89c7d29bb971237dd7d9a8fccdd92524819c2c5b28b349c63666bfa3ca0f393ba74f0928afe04ffcc37ec2cd348140ff8d634cdf4fe9dd49dad9404ad54d2787de44fb37e64d1231d26e0e4e840eb0e99f6dc37505be13d10051f965652c98257da2ce402dad29507443a3d504d06f10e515273587ab5c10531281c48ecdd91fb7722aff39258f9f05047a13a02b4a68333dbe3b88a7b9119d4a661a49014e82cc76dd2b0bee56680b0e8e8fe1ca82b770950495c00f5fece2dfd51c516c31f3bc3098416194600c70a76deec3830fdea8f5a26e39bde6d0b51aa41820b47fd3ca584b3eabacbea6088c4c128fefcfaffc23847a18e732b2df42f119f585c3f1c1a49170f986803cf73cb20cdfbfc649acbb4ba7a7ea93367a6d1fbb1b66a51cb848f6b10aba4450ac29ecc83bf0f0acc5d4d94311886ff551235884f986519b1562f21b26cc4a8f45cb0cf92bdbf613955421c2ed86e22450fb82df1cd5f05be13f269420dc4b8dcb2e4d3be7f87beaf1688ae6da9c1c6576ec963ceea490dac5eaf13c95394dd5df84c34d5625f37499d66bdc2c8cf871e8beae78eae1bc569b3dfb16051a13129906708e26debe3629d05a33b03c4b88dc9def38a27bc565d92e573eb04678f0985436437e154ff121ecb44a1b708298000e13dcf9157798e7b202f06539e243a95f13a9cb0dc50325914813dba6f22d80904b29b1449a8a92ff4dc8b594b54ca73b085ef02b889d7567a96d552dfa5726f8c607e3c94e87b9e3d4210e087e1ef93fa15a53be3e18e48ad4bc26a06dd94549b17d30cb4504b8cda3d3124250b0a2b3b3c7356d9c697d53b56dfce55e75b8d012dea35640254330a5c6ac43362ea497384a1e03eae7d0379dead5f314c8a6687aa5375aee310653cbfe28c483b3d285bcc968b13801d1cb2e25796643606eec49a3ccd854d3fa40cd85bde5e72b836ba474479570ac49ab800cbf5f36dfac8129ca919e7a81e84aa1cab9455c4f7545cfe8165398edb493b054010572d602aa2617ece30ae11521be538fdea912fce1d096878b4fe3831d0b6cd89984c6bc86a82cfd8ae7e7c2bec124755f073da645442d10234e7c0289a0f1ad6cd50d50490d5b0a03116aa64d9750a55935bfd5c2144e2e0f0ec27da658fd2c12bcdbd59af4db0d69fa9a6b26a60e6c3ff3fbf086c28e15dfb39f4a95f740a19fba24c0e34c00055e889b11e06d60eb5c0fa85c5c51559ff1ee8f77d8f727b91703a36063527c53b2d917d12e9459b473581b96b942c3720ace88375d8ae00e41f61f3ffad541fbcdc9b06f41c28bf3994cdbb1d0421892ec83050642bc38c00606d56b6e65f6c08593f078826f1c555efb8e1a071d6db91f01c703871785a6ef7a4d7546fe6c3dbcc5ad52620a8d946960eb936b922ead3a82c65b599157c2b9c7aec9aef5af0b31f42411aba45f79c11bc193d84fb6c961770acbe47d7ac097a0d573e3bb6b8ec1c9a760e0fd24be88926a42cb453a56f830871e05a79289e64141d95fd4e9ee1bdc51531ce96b7416548d7e166656c9eeb538c26b9e6b1b80316fe0aa29e9ade3e5ae3d372883027502ea01c765faf2344913d57779676a48f76f7d82a9fc1e2dd99eb7782476f0d73ec57da701d74a8564be2e886af111c3089c4bc48739324a818974ce86fd4943360d487ddc7dc8a8d06ddd7705120817a01618882729995274eeba4370a6c393e17a33383f28e39538977517ae6c9c353eb77fb8419899455f52553ab80978b802578e690073eb52d58c9d9447b9d0637612e1a562a0c98c191ac3fa8ad60efea5985eee3fc9e793fbf64f261959faa0582881316b603151c2076e423136e411ef22fba517a9329f0c4d2f35edc9910a0a74716757e09b7d0ffcc6a401653985c303e43eb0d009913ea6315636ed4caaa872012266ee6be4809246fea78e4622408dbc1eb6a113da8308d6621f5d8af1d2eccf70442d4747e719ffd5c6afdd7734243216810710a5405937084317060ab79a67324b621c5fbc17987ddc50aaa6bafb4a116280ce4affbd5bf9815126d6990382fa30d2950892c63bb5484efe8612d21b7034720fc065cc5364bead83f4a3ce8fe2d0a66bb7dacdef832a3f477c2d5530e460ffa4a2a8c70a91f2c30dccac2a5edd0b08f1fc6eaf32beb4f8105bb7f70a3affe959dfbcef02da6ca296451a139ac43c867ede76fe2385ccf9276b095e5b22ac524c0a5d09cc1e0615ee5466a98a60b2706e40d99136c4b00dca45cb54f608c4d8b30a48c0a78e46db055deebc0ee3edb32d0e41aef2dab509419a3ea507e9d7c0c6227dd00e00c84e36206452a45073f7e393019577d8c0499e3e2f9377423637d0ab1b4904e617e79f66c5f9ea33baf1b97d9ac3cc9463b9e64b7b541a67339662ec5ff50ea1f544baddca9de8a3ebf0f2a8f0aefc2fa70362dc388214bb009d96f372d875194600f73bd22f07dbfb929666c1c9152e27d2279fadd34d2cf35ff71d40461a264059afcdae8883950286b7eb387c4cd19ae5caa155981bfd5027c1c61e477484f15eb22375878570b63eac14f816a40e35e39e43ba13584293d7271902cf46332803cfbb7672c3e1ab3ae50b6d9edaa64b11362d08aedd6a6a908f92aca5ac83b873432ed0a26183f85cf23ed4047d2a1737f16bcc55619acb4c26a28f795b9849254a55d157895296681e320acf943c6ad0b4bf9a417330b803d3006561d2e03920134b7a3bf45ef87a6edbb3ce96aa516297bba2e302117ec96164a7008bce43f908a52dd2d071eb4920a57ccf020de553a44aba983f91b088eff72affebe30685e381dc2a2f77ef1ffaba446c96a90e8216f68ab4b41cef77ebb4259e9ac468a0f932ed15abb0ec7e42398f3337fa69dd7c47f4bbc1dc65e316435bd0572c15ef5a347427745ccf58b8dddd946abe77b9f43bced448811aa59762d0532abd9fde88cf761d2b0d41eb91abf729dbdbc23e472663d48ccb08dbdb22573e318c9b50c0612d8fd3fb5eb0ec5ee225a752b1cfa669770e7989fd338e1df156e09e60f59daebcc50524c847d8d4b4b34156c560230f0a30f66e1a1e5d7887cb440cdcc5ca5def0f4c799253fc6462ab6e9651a9bceb6334c2d681799d2eb5a4979fec75071661604a159cc8fca8172c749357b3410ef82411aa1352e0d123e3e0f1345eaf6558b3b8b299e7b3421265b5f8d4bd0c9bfa4da563087d24d6b30195bf9df5a6404ac908f33fa3d83d17eba660ccc6188a8a820d5585ddd6e2095ddd852c3b9074e874cf73ea0292e0a7683031ade12986de143dc1806bf3a53273dcac5ab49d9a32ad80dda8ed1dcb49bf96d80cfe54ef1ffbeb2c394b0e10993aaec11b9cf505dea32673df3ad06d319d22c7dc0f357e28a150657082a6d8034b88e5f15ce7493f8370003468677f386bfff0f0de9e35473a4152cc6e2435fd210bde99c527e91ab740ed9dd779dbe2a01b1d67de2cfc8b5ad7d41d5c9b55a509302312c686db504009faf452e2efc1338f43178187fe47e291cce2903rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrubygem-sshkit-1.16.0-lp151.2.1.src.rpmruby2.5-rubygem-sshkit-docruby2.5-rubygem-sshkit-doc(x86-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rubygem(ruby:2.5.0:sshkit)3.0.4-14.6.0-14.0-15.2-11.16.04.14.1ZH@Y@Xߖ@X[XXU(X&W0@WWs@WaC@WcV@Vl @V`.TTء@T;SxR1@RRcRW@factory-auto@kulow.orgcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.com- updated to version 1.16.0 see installed CHANGELOG.md [#]# [1.16.0][] (2018-02-03) * [#417](https://github.com/capistrano/sshkit/pull/417): Cache key generation for connections becomes slow when `known_hosts` is a valid `net/ssh` options and `known_hosts` file is big. This changes the cache key generation and fixes performance issue - [@ElvinEfendi](https://github.com/ElvinEfendi). [#]# [1.15.1][] (2017-11-18) This is a small bug-fix release that fixes problems with `upload!` and `download!` that were inadvertently introduced in 1.15.0. [#]## Breaking changes * None [#]## Bug fixes * [#410](https://github.com/capistrano/sshkit/pull/410): fix NoMethodError when using upload!/download! with Pathnames - [@UnderpantsGnome](https://github.com/UnderpantsGnome) * [#411](https://github.com/capistrano/sshkit/pull/410): fix upload!/download! when using relative paths outside of `within` blocks - [@Fjan](https://github.com/Fjan) [#]# [1.15.0][] (2017-11-03) [#]## New features * [#408](https://github.com/capistrano/sshkit/pull/408): upload! and download! now respect `within` - [@sj26](https://github.com/sj26) [#]## Potentially breaking changes * `upload!` and `download!` now support remote paths which are relative to the `within` working directory. They were previously documented as only supporting absolute paths, but relative paths still worked relative to the remote working directory. If you rely on the previous behaviour you may need to adjust your code.- updated to version 1.14.0 see installed CHANGELOG.md [#]# [1.14.0][] (2017-06-30) [#]## Breaking changes * None [#]## New features * [#401](https://github.com/capistrano/sshkit/pull/401): Add :log_percent option to specify upload!/download! transfer log percentage - [@aubergene](https://github.com/aubergene)- updated to version 1.13.1 see installed CHANGELOG.md [#]# [1.13.1][] (2017-03-31) [#]## Breaking changes * None [#]## Bug fixes * [#397](https://github.com/capistrano/sshkt/pull/397): Fix NoMethodError assign_defaults with net-ssh older than 4.0.0 - [@shirosaki](https://github.com/shirosaki)- updated to version 1.13.0 see installed CHANGELOG.md [#]# [1.13.0][] (2017-03-24) [#]## Breaking changes * None [#]## New features * [#372](https://github.com/capistrano/sshkit/pull/372): Use cp_r in local backend with recursive option - [@okuramasafumi](https://github.com/okuramasafumi) [#]## Bug fixes * [#390](https://github.com/capistrano/sshkit/pull/390): Properly wrap Ruby StandardError w/ add'l context - [@mattbrictson](https://github.com/mattbrictson) * [#392](https://github.com/capistrano/sshkit/pull/392): Fix open two connections with changed cache key - [@shirosaki](https://github.com/shirosaki)- updated to version 1.12.0 see installed CHANGELOG.md [#]# [1.12.0][] (2017-02-10) [#]## Breaking changes * None [#]## New features * Add `SSHKit.config.default_runner_config` option that allows overriding default runner configs.- updated to version 1.11.5 see installed CHANGELOG.md- updated to version 1.11.4 see installed CHANGELOG.md [#]# [1.11.4][] (2016-11-02) * Use string interpolation for environment variables to avoid escaping issues with sprintf [PR #280](https://github.com/capistrano/sshkit/pull/280) @Sinjo - Chris Sinjakli- updated to version 1.11.3 see installed CHANGELOG.md [#]# [1.11.3][] (2016-09-16) * Fix known_hosts caching to match on the entire hostlist [PR #364](https://github.com/capistrano/sshkit/pull/364) @byroot- updated to version 1.11.2 see installed CHANGELOG.md [#]# [1.11.2][] (2016-07-29) [#]## Bug fixes * Fixed a crash occurring when `Host@keys` was set to a non-Enumerable. @xavierholt [PR #360](https://github.com/capistrano/sshkit/pull/360)- updated to version 1.11.1 see installed CHANGELOG.md [#]# [1.11.1][] (2016-06-17) [#]## Bug fixes * Fixed a regression in 1.11.0 that would cause `ArgumentError: invalid option(s): known_hosts` in some older versions of net-ssh. @byroot [#357](https://github.com/capistrano/sshkit/issues/357)- updated to version 1.11.0 see installed CHANGELOG.md- updated to version 1.10.0 see installed CHANGELOG.md [#]# 1.10.0 (2016-04-22) * You can now opt-in to caching of SSH's known_hosts file for a speed boost when deploying to a large fleet of servers. Refer to the [README](https://github.com/capistrano/sshkit#known-hosts-caching) for details. We plan to turn this on by default in a future version of SSHKit. [PR #330](https://github.com/capistrano/sshkit/pull/330) @byroot * SSHKit now explicitly closes its pooled SSH connections when Ruby exits; this fixes `zlib(finalizer): the stream was freed prematurely` warnings [PR #343](https://github.com/capistrano/sshkit/pull/343) @mattbrictson * Allow command map entries (`SSHKit::CommandMap#[]`) to be Procs [PR #310](https://github.com/capistrano/sshkit/pull/310) @mikz- updated to version 1.9.0 see installed CHANGELOG.md [#]# 1.9.0 * *Refer to the 1.9.0.rc1 release notes for a full list of new features, fixes, and potentially breaking changes since SSHKit 1.8.1.** There are no changes since 1.9.0.rc1. [#]# 1.9.0.rc1 [#]## Potentially breaking changes * The SSHKit DSL is no longer automatically included when you `require` it. * *This means you must now explicitly `include SSHKit::DSL`.** See [PR #219](https://github.com/capistrano/sshkit/pull/219) for details. @beatrichartz * `SSHKit::Backend::Printer#test` now always returns true [PR #312](https://github.com/capistrano/sshkit/pull/312) @mikz [#]## New features * `SSHKit::Formatter::Abstract` now accepts an optional Hash of options [PR #308](https://github.com/capistrano/sshkit/pull/308) @mattbrictson * Add `SSHKit::Backend.current` so that Capistrano plugin authors can refactor helper methods and still have easy access to the currently-executing Backend without having to use global variables. * Add `SSHKit.config.default_runner` options that allows to override default command runner. This option also accepts a name of the custom runner class. * The ConnectionPool has been rewritten in this release to be more efficient and have a cleaner internal API. You can still completely disable the pool by setting `SSHKit::Backend::Netssh.pool.idle_timeout = 0`. @mattbrictson @byroot [PR #328](https://github.com/capistrano/sshkit/pull/328) [#]## Bug fixes * make sure working directory for commands is properly cleared after `within` blocks [PR #307](https://github.com/capistrano/sshkit/pull/307) @steved * display more accurate string for commands with spaces being output in `Formatter::Pretty` [PR #304](https://github.com/capistrano/sshkit/pull/304) @steved [PR #319](https://github.com/capistrano/sshkit/pull/319) @mattbrictson * Fix a race condition experienced in JRuby that could cause multi-server deploys to fail. [PR #322](https://github.com/capistrano/sshkit/pull/322) @mattbrictson- updated to version 1.8.1 see installed CHANGELOG.md [#]# 1.8.1 * Change license to MIT, thanks to all the patient contributors who gave their permissions.- updated to version 1.8.0 see installed CHANGELOG.md [#]# 1.8.0 * add SSHKit::Backend::ConnectionPool#close_connections [PR #285](https://github.com/capistrano/sshkit/pull/285) @akm * Clean up rubocop lint warnings [PR #275](https://github.com/capistrano/sshkit/pull/275) @cshaffer * Prepend unused parameter names with an underscore * Prefer “safe assignment in condition” * Disambiguate regexp literals with parens * Prefer `sprintf` over `String#%` * No longer shadow `caller_line` variable in `DeprecationLogger` * Rescue `StandardError` instead of `Exception` * Remove useless `private` access modifier in `TestAbstract` * Disambiguate block operator with parens * Disambiguate between grouped expression and method params * Remove assertion in `TestHost#test_assert_hosts_compare_equal` that compares something with itself * Export environment variables and execute command in a subshell. [PR #273](https://github.com/capistrano/sshkit/pull/273) @kuon * Introduce `log_command_start`, `log_command_data`, `log_command_exit` methods on `Formatter` [PR #257](https://github.com/capistrano/sshkit/pull/257) @robd * Deprecate `@stdout` and `@stderr` accessors on `Command` * Add support for deprecation logging options. [README](README.md#deprecation-warnings), [PR #258](https://github.com/capistrano/sshkit/pull/258) @robd * Quote environment variable values. [PR #250](https://github.com/capistrano/sshkit/pull/250) @Sinjo - Chris Sinjakli * Simplified formatter hierarchy. [PR #248](https://github.com/capistrano/sshkit/pull/248) @robd * `SimpleText` formatter now extends `Pretty`, rather than duplicating. * Hide ANSI color escape sequences when outputting to a file. [README](README.md#output-colors), [Issue #245](https://github.com/capistrano/sshkit/issues/245), [PR #246](https://github.com/capistrano/sshkit/pull/246) @robd * Now only color the output if it is associated with a tty, or the `SSHKIT_COLOR` environment variable is set. * Removed broken support for assigning an `IO` to the `output` config option. [Issue #243](https://github.com/capistrano/sshkit/issues/243), [PR #244](https://github.com/capistrano/sshkit/pull/244) @robd * Use `SSHKit.config.output = SSHKit::Formatter::SimpleText.new($stdin)` instead * Added support for `:interaction_handler` option on commands. [PR #234](https://github.com/capistrano/sshkit/pull/234), [PR #242](https://github.com/capistrano/sshkit/pull/242) @robd * Removed partially supported `TRACE` log level. [2aa7890](https://github.com/capistrano/sshkit/commit/2aa78905f0c521ad9f697e7a4ed04ba438d5ee78) @robd * Add support for the `:strip` option to the `capture` method and strip by default on the `Local` backend. [PR #239](https://github.com/capistrano/sshkit/pull/239), [PR #249](https://github.com/capistrano/sshkit/pull/249) @robd * The `Local` backend now strips by default to be consistent with the `Netssh` one. * This reverses change [7d15a9a](https://github.com/capistrano/sshkit/commit/7d15a9aebfcc43807c8151bf6f3a4bc038ce6218) to the `Local` capture API to remove stripping by default. * If you require the raw, unstripped output, pass the `strip: false` option: `capture(:ls, strip: false)` * Simplified backend hierarchy. [PR #235](https://github.com/capistrano/sshkit/pull/235), [PR #237](https://github.com/capistrano/sshkit/pull/237) @robd * Moved duplicate implementations of `make`, `rake`, `test`, `capture`, `background` on to `Abstract` backend. * Backend implementations now only need to implement `execute_command`, `upload!` and `download!` * Removed `Printer` from backend hierarchy for `Local` and `Netssh` backends (they now just extend `Abstract`) * Removed unused `Net::SSH:LogLevelShim` * Removed dependency on the `colorize` gem. SSHKit now implements its own ANSI color logic, with no external dependencies. Note that SSHKit now only supports the `:bold` or plain modes. Other modes will be gracefully ignored. [#263](https://github.com/capistrano/sshkit/issues/263) * New API for setting the formatter: `use_format`. This differs from `format=` in that it accepts options or arguments that will be passed to the formatter's constructor. The `format=` syntax will be deprecated in a future release. [#295](https://github.com/capistrano/sshkit/issues/295) * SSHKit now immediately raises a `NameError` if you try to set a formatter that does not exist. [#295](https://github.com/capistrano/sshkit/issues/295)- updated to version 1.7.1 * Fix a regression in 1.7.0 that caused command completion messages to be removed from log output. @mattbrictson [#]# 1.7.0 * Update Vagrantfile to use multi-provider Hashicorp precise64 box - remove URLs. @townsen * Merge host ssh_options and Netssh defaults @townsen Previously if host-level ssh_options were defined the Netssh defaults were ignored. * Merge host ssh_options and Netssh defaults * Fixed race condition where output of failed command would be empty. @townsen Caused random failures of `test_execute_raises_on_non_zero_exit_status_and_captures_stdout_and_stderr` Also fixes output handling in failed commands, and generally buggy output. * Remove override of backtrace() and backtrace_locations() from ExecuteError. @townsen This interferes with rake default behaviour and creates duplicate stacktraces. * Allow running local commands using `on(:local)` * Implement the upload! and download! methods for the local backend- updated to version 1.6.1 * Fix colorize to use the correct API (@fazibear) * Lock colorize (sorry guys) version at >= 0.7.0 [#]# 1.6.0 (Yanked, because of colorize.) * Force dependency on colorize v0.6.0 * Add your entries here, remember to credit yourself however you want to be credited! * Remove strip from capture to preserve whitespace. Nick Townsend * Add vmware_fusion Vagrant provider. Nick Townsend * Add some padding to the pretty log formatter [#]# 1.5.1 * Use `sudo -u` rather than `sudo su` to switch users. Mat Trudel [#]# 1.5.0 * Deprecate background helper - too many badly behaved pseudo-daemons. Lee Hambley * Don't colourize unless $stdout is a tty. Lee Hambley * Remove out of date "Known Issues" section from README. Lee Hambley * Dealy variable interpolation inside `as()` block. Nick Townsend * Fixes for functional tests under modern Vagrant. Lewis Marshal * Fixes for connection pooling. Chris Heald * Add `localhost` hostname to local backend. Adam Mckaig * Wrap execptions to include hostname. Brecht Hoflack * Remove `shellwords` stdlib dependency Bruno Sutic * Remove unused `cooldown` accessor. Bruno Sutic * Replace Term::ANSIColor with a lighter solution. Tom Clements * Documentation fixes. Matt Brictson- adapt to new rubygem packaging- updated to version 1.4.0 * Removed `invoke` alias for [`SSHKit::Backend::Printer.execute`](https://github.com/capistrano/sshkit/blob/master/lib/sshkit/backends/printer.rb#L20). This is to prevent collisions with methods in capistrano with similar names, and to provide a cleaner API. See [capistrano issue 912](https://github.com/capistrano/capistrano/issues/912) and [issue 107](https://github.com/capistrano/sshkit/issues/107) for more details. * Connection pooling now uses a thread local to store connection pool, giving each thread its own connection pool. Thank you @mcbriston see [#101](https://github.com/capistrano/sshkit/pull/101) for more. * Command map indifferent towards strings and symbols thanks to @thomasfedb see [#91](https://github.com/capistrano/sshkit/pull/91) * Moved vagrant wrapper to `support` directory, added ability to run tests with vagrant using ssh. @miry see [#64](https://github.com/capistrano/sshkit/pull/64) * Removed unnecessary require `require_relative '../sshkit'` in `lib/sshkit/dsl.rb` prevents warnings thanks @brabic. * Doc fixes thanks @seanhandley @vojto- updated to version 1.3.0 * Connection pooling. SSH connections are reused across multiple invocations of `on()`, which can result in significant performance gains. See: https://github.com/capistrano/sshkit/pull/70. Matt @mbrictson Brictson. * Fixes to the Formatter::Dot and to the formatter class name resolver. @hab287:w * Added the license to the Gemspec. @anatol. * Fix :limit handling for the `in: :groups` run mode. Phil @phs Smith * Doc fixes @seanhandley, @sergey-alekseev.- updated to version 1.2.0 * Support picking up a project local SSH config file, if a SSH config file exists at ./.ssh/config it will be merged with the ~/.ssh/config. This is ideal for defining project-local proxies/gateways, etc. Thanks to Alex @0rca Vzorov. * Tests and general improvements to the Printer backends (mostly used internally). Thanks to Michael @miry Nikitochkin. * Update the net-scp dependency version. Thanks again to Michael @miry Nikitochkin. * Improved command map. This feature allows mapped variables to be pushed and unshifted onto the mapping so that the Capistrano extensions for rbenv and bundler, etc can work together. For discussion about the reasoning see https://github.com/capistrano/capistrano/issues/639 and https://github.com/capistrano/sshkit/pull/45. A big thanks to Kir @kirs Shatrov. * `test()` and `capture()` now behave as expected inside a `run_locally` block meaning that they now run on your local machine, rather than erring out. Thanks to Kentaro @kentaroi Imai. * The `:wait` option is now successfully passed to the runner now. Previously the `:wait` option was ignored. Thanks to Jordan @jhollinger Hollinger for catching the mistake in our test coverage. * Fixes and general improvements to the `download()` method which until now was quite naïve. Thanks to @chqr.- updated to version 1.1.0 * The output now reads "Command exited with status _", rather than "command failed", or "command succeded", the semantics are the same, but people were confused by "failure", when things were running correctly. * Small fix to the printer backend for tests, casting command to a string explicitly. * The gem now supports a run_locally, although it's nothing to do with SSH, it makes a nice API. There are examples in the EXAMPLES.md.- initial packagelamb26 1528399896  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqr1.16.0-lp151.2.11.16.0-lp151.2.1               !!"""#######$$$ %%%%%%%%%%%%%%%%%%%% &&&& ''''' (((( )))) ***** + ,,,, -......-///-0000-11-22-33333- 4444444 sshkit-1.16.0riArraycdesc-Array.riextract_options%21-i.riHashcdesc-Hash.risymbolize_keys%21-i.risymbolize_keys-i.riNetSSHConfigcdesc-Config.ridefault_files-c.riProxyCommandcdesc-Command.riinspect-i.ricdesc-Proxy.ricdesc-SSH.ricdesc-Net.riSSHKitBackendAbstractas-i.ribackground-i.ricapture-i.ricdesc-Abstract.ricommand-i.riconfig-c.riconfigure-c.ricreate_command_and_execute-i.ridownload%21-i.riexecute-i.riexecute_command-i.rihost-i.rimake-i.rinew-c.rioutput-i.ripwd_path-i.rirake-i.rirun-i.ritest-i.riupload%21-i.riwith-i.riwithin-i.riConnectionPoolCachecdesc-Cache.riclear-i.riclosed%3f-i.ricloser-i.riconnections-i.rievict-i.rifresh%3f-i.riidle_timeout-i.rikey-i.rinew-c.ripop-i.ripush-i.risame_key%3f-i.ricache_enabled%3f-i.ricache_key_for_connection_args-i.ricaches-i.ricdesc-ConnectionPool.riclose_connections-i.rifind_cache-i.riflush_connections-i.riidle_timeout-i.rinew-c.riprocess_deferred_close-i.rirun_eviction_loop-i.risilently_close_connection-i.risilently_close_connection_later-i.rithread_safe_find_or_create_cache-i.ritimed_out_connections-i.riupdate_key_if_args_changed-i.riwith-i.riLocalcdesc-Local.ridownload%21-i.riexecute_command-i.rinew-c.riupload%21-i.riNetsshConfigurationassign_defaults-i.ricdesc-Configuration.riconnection_timeout-i.ridefault_options-i.ripty-i.rissh_options-i.riKnownHostsadd-i.ricdesc-KnownHosts.riknown_hosts_file-i.rinew-c.risearch_for-i.riKnownHostsKeyscdesc-KnownHostsKeys.riempty_line%3f-i.rihosts_hashes-i.rihosts_keys-i.rikeys_for-i.rinew-c.riparse_file-i.riparse_host_hash-i.riparse_hostlist-i.riparse_key-i.riparse_line-i.ripath-i.risha1-i.risupported_type%3f-i.ricdesc-Netssh.riconfig-c.riconfigure-c.ridownload%21-i.riexecute_command-i.ripool-c.ritransfer_summarizer-i.riupload%21-i.riwith_ssh-i.riPrintercdesc-Printer.riexecute_command-i.ritest-i.riSkippercdesc-Skipper.ridebug-i.rierror-i.riexecute_command-i.rifatal-i.riinfo-i.rilog-i.rinew-c.ricdesc-Backend.ricurrent-c.riColorcdesc-Color.ricolorize%3f-i.ricolorize-i.rinew-c.riCommandargs-i.ricall_interaction_handler-i.ricdesc-Command.ricommand-i.ricomplete%3f-i.ridefault_options-i.rienvironment_hash-i.rienvironment_string-i.riexit_status%3d-i.riexit_status-i.rifailed%3f-i.rifailure%3f-i.rifinished%3f-i.rifull_stderr-i.rifull_stdout-i.rigroup-i.rihost-i.riin_background-i.rilog_reader_deprecation-i.rilog_writer_deprecation-i.rinew-c.rion_stderr-i.rion_stdout-i.rioptions-i.riruntime-i.risanitize_command-i.rishould_map%3f-i.ristarted%3d-i.ristarted%3f-i.ristarted-i.ristarted_at-i.ristderr%3d-i.ristderr-i.ristdout%3d-i.ristdout-i.risuccess%3f-i.risuccessful%3f-i.rito_command-i.rito_hash-i.rito_s-i.riumask-i.riuser-i.riuuid-i.riverbosity-i.riwith-i.riwithin-i.riCommandMap%5b%5d%3d-i.ri%5b%5d-i.riCommandHash%5b%5d%3d-i.ri%5b%5d-i.ricdesc-CommandHash.rinew-c.rinormalize_key-i.riPrefixProvider%5b%5d-i.ricdesc-PrefixProvider.rinew-c.ricdesc-CommandMap.riclear-i.ridefaults-i.rinew-c.riprefix-i.riConfigurationbackend-i.ricdesc-Configuration.ricommand_map%3d-i.ricommand_map-i.ridefault_env-i.ridefault_runner-i.ridefault_runner_config%3d-i.ridefault_runner_config-i.rideprecation_logger-i.rideprecation_output%3d-i.riformat%3d-i.riformatter_class-i.rilogger-i.rioutput-i.rioutput_verbosity%3d-i.rioutput_verbosity-i.riumask-i.riuse_format-i.riCoordinatorcdesc-Coordinator.ridefault_options-i.rieach-i.rihosts-i.rinew-c.riresolve_hosts-i.riDSLcdesc-DSL.rion-i.rirun_locally-i.riDeprecationLoggercdesc-DeprecationLogger.rilog-i.rinew-c.riFormatterAbstract%3c%3c-i.ricdesc-Abstract.rilog_command_data-i.rilog_command_exit-i.rilog_command_start-i.rinew-c.rioptions-i.rioriginal_output-i.riwrite-i.riBlackHolecdesc-BlackHole.riwrite-i.riDotcdesc-Dot.rilog_command_exit-i.riwrite-i.riPrettycdesc-Pretty.riformat_message-i.rilog_command_data-i.rilog_command_exit-i.rilog_command_start-i.riwrite-i.riwrite_message-i.riSimpleTextcdesc-SimpleText.ricolorize-i.riformat_message-i.ricdesc-Formatter.riHost%3d%3d-i.ricdesc-Host.rieql%3f-i.riequal%3f-i.rifirst_suitable_parser-i.rihash-i.rihostname-i.rikey%3d-i.rikeys%3d-i.rikeys-i.rilocal%3f-i.rinetssh_options-i.rinew-c.ripassword-i.riport-i.riproperties-i.rissh_options-i.rito_s-i.riuser-i.riusername-i.riHostWithPortParsercdesc-HostWithPortParser.rihostname-i.riport-i.risuitable%3f-c.riHostWithUsernameAndPortParsercdesc-HostWithUsernameAndPortParser.rihostname-i.riport-i.risuitable%3f-c.riusername-i.riHostWithUsernameParsercdesc-HostWithUsernameParser.rihostname-i.risuitable%3f-c.riusername-i.riIPv6HostWithPortParsercdesc-IPv6HostWithPortParser.rihostname-i.riport-i.risuitable%3f-c.riLogMessagecdesc-LogMessage.rimessage-i.rinew-c.rito_s-i.riverbosity-i.riLoggercdesc-Logger.riMappingInteractionHandlercdesc-MappingInteractionHandler.rilog-i.rinew-c.rion_data-i.riRunnerAbstractbackend-i.riblock-i.ricdesc-Abstract.rihosts-i.rinew-c.rioptions-i.riExecuteErrorcause-i.ricdesc-ExecuteError.rinew-c.riGroupcdesc-Group.riexecute-i.rigroup_size-i.rinew-c.riNullcdesc-Null.riexecute-i.riParallelcdesc-Parallel.riexecute-i.riSequentialcdesc-Sequential.riexecute-i.rinew-c.rirun_backend-i.riwait_interval-i.ricdesc-Runner.riSimpleHostParserattributes-i.ricdesc-SimpleHostParser.rihostname-i.rinew-c.riport-i.risuitable%3f-c.riusername-i.ricdesc-SSHKit.riconfig-c.riconfigure-c.rireset_configuration%21-c.ricache.ri/usr/lib64/ruby/gems/2.5.0/doc//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Array//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Hash//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Net//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Net/SSH//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Net/SSH/Config//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Net/SSH/Proxy//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/Net/SSH/Proxy/Command//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Abstract//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/ConnectionPool//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/ConnectionPool/Cache//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Local//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Netssh//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Netssh/Configuration//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Netssh/KnownHosts//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Netssh/KnownHostsKeys//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Printer//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Backend/Skipper//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Color//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Command//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/CommandMap//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/CommandMap/CommandHash//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/CommandMap/PrefixProvider//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Configuration//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Coordinator//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/DSL//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/DeprecationLogger//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Formatter//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Formatter/Abstract//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Formatter/BlackHole//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Formatter/Dot//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Formatter/Pretty//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Formatter/SimpleText//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Host//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/HostWithPortParser//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/HostWithUsernameAndPortParser//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/HostWithUsernameParser//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/IPv6HostWithPortParser//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/LogMessage//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Logger//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/MappingInteractionHandler//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner/Abstract//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner/ExecuteError//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner/Group//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner/Null//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner/Parallel//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/Runner/Sequential//usr/lib64/ruby/gems/2.5.0/doc/sshkit-1.16.0/ri/SSHKit/SimpleHostParser/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Leap:15.1/standard/6765c1d8315cd00dcea3b000651b0834-rubygem-sshkitcpioxz5x86_64-suse-linuxdirectoryFT93l utf-8106b80ece3dcd78af2f87dcfe2900a367a1397204ea67f23cbe8496887f7defd?P7zXZ !t/J] crt:bLL |tBMbIq;:5vi#9Vhȱ8oƷ^0!TsH>tcf⤲n ,)ޗ %;{oLV?`rȑM[>Do\dQ|Hf1p-I2-_0(&EbTiNG{z!mw>9P0 ՛l"judzTzIwpt7!`;2VTH eDo)Ntu6y>Awvu"u *\_e|Y79[eruH .w-3Pm#T)Je˘- xJ=|-zɤ.\ӭ.hN$Uu-*.׶P̰OYτȉC8elDJ]|/;,6C;_%ȷ.1 uBTēTEVGМ >e*\,&5b~KstpF?KFqr86%joXg{~ F8OOV s;@5J"dȗem(SZİƊM5/ 5}>f/Izs=@hַ|L >5s2X>Fl7Yc2>ӤQٴ(^': `51 3Uݥ+6`0t@R%c{a'bB$1v)gԸ=UD/,4=x|QAWFGKBS[8nv?Kմ/cΡGHB, j];VSOA\6fw `1-9\34^=75C΃|^g3/@sƠ9; B5IkZ烕:]_h)vұZAH,(لqY;mjVP,&NɆա%pNab8uGTNnP;3>˙/ <8.1 ny`^: 4bܲ!7/I^\{mB!Zt-`X*s$}Fh;'<e"/ܯ3+>0tFJz]NƘ$ "7jJ> R_s.9yDc>xۗ{enBH8t?*=S^9uԂ) Phy">]8dξPH,31@MB95ZTģ'WЪ ]18HCkOr/UMZ<+\Zo;ݲZuh4[l#]B,te/&Cm f)U}ԏ+d Gi&޹7k:"[oqvf$<Ф/qcs,Ř*>ǝItv4w tM`Qߔt9ݤMV(UBSz†F(ky4fkgV^I2Y4/6ьR rކw1U S߹Uvu'e?g@I&u憎뻝, Kl)+qWCswS1/d&uXFR|Q%YgX=nm{Bcӿ߲Wpne8rZ&n;oC<  9{WHLJ?|ڪxsɩ9w-\662>cm]'Eߨ_'ci822<@4l55\aVWZlC}QZIyCe<˞6VIAf^݅c<)_( -5qi*>P y5k3Э!"jSy4i\e %=#|/@Qd2S-˽`Q^M1gHhihߵ,!7~_ ףZhy݈<+. Hˬv5u`7UCCp*iavqwFUZ3 >ޅsĨ UJ)p`#f^y" '5+oL-Xn;*]ь_qX7牚-ǨdMGοrljRN(2IQ):\b]\&a_# $Ehm猘#P H/y/bdWFRc Pi%E`ʻfY#[82<4%*pۨ !8v8hK$\Thq `[1?} - sWIg}l߽G@مr t~D`қS Rqw]sGSLzɱTIoW=LwT37kran(Fm0:uԞ ?Aƌ/iYE?mj<,3͍`bkQ$rm^Ee_#j U}cA9 ee:9P2sNug{#`Pq|JR)z) b QS^4V jUOmiLz#CZ{` a,r"wn~x'5eqUqdfxW ԑ\b g N-MECgS."ѕ. -<%jWݹHJH']NYx9s+A7*[cI"L7_miOWgllDZo[ =\$gKdMfzz퇣:ydjO/ԿSXXꌕLHT W2')FdIڳDܣE2/ثLLSIK1·P"UPOP`_-h#]p"Ub1 @PgG 6>~®J.1l} O. t'ppU;]tϤY+pvÞ&%W۫jXZ(1TP Bj(":3W da`C{DxLmpXĨ[ aow2Ofǽ1{zN YS\䑴BfvԜj`ÿAɦ<,V[o;%*Z:oxwh^zSYLlئ 8GiYOC=MBT1WAy+:X8o dK\5~9WcG1l'/x#8mvtsYwŁ>3͑z Dd^jb]^FPfY9 |Й,WxH 34Czb4(?I}&-hmu(mI7LD0V#aV |Y5׌sI1[[yHj 5 Y 4vwvF[FS@! U K6%9ǜ{Q7c_ }`ȖgB մי?r(6NRW-؂( qF,r0КӈQ18.2{diV@迻=|ĵTN©KPXb`K&#=W.p5.Gaͅ&Di|3o,U D6s SDcS)P?~R7IΗ}\0Z/9|ɩHOoa1y<u@G$<kQ G+v??TqEߺoVR`И=i[] sdwb(ҳj7;H6lHOq9Dl! |ril׉#yQ2q(~aJ"MS!k `ܖdP4QZo@J"v:kc2h'1BAXI?DŤu;+<Ƈ!x3Cd59hXdѷ~oaPw-x$iyVs^CPNit6'V=ƱyulI4Ir4{^kKNXI^TO`󭵚E{sf|9xا\_PXAjmfh R)@mTpN4~>XDԏn:#Q'S#݅`N6XաɅb?ST,Y:>h6XdžZ fq0t&<EKsv%™f\yR7'zmByx#3sGFƑJ, !31 R]"Qv"^#`\bKq!=tLVYE/RVO|o/ڴB5bJLșq3C=jLt PW$5=z;Ivw_fύ a#u_As*YKÍ4ׅbz o4Y<9氒k{ÜJQẠLJ׷#vZXd 巻{QPew tEDE&:yª/0Xkb 1+!R]M5,k'$>fbls8UJn$γ0j6{&rƻǛ{D,"9q=K/;8F->rE+Oۘ-NΔӱM!BiZ @RB![.Wj@lCfgd펻J#ZߌdkMI|oӒӁ>0ʆ7p1[:@96Ƙ2Of[H;mZ5.Y |>rjwa0 ! @d9s8xjH4ܛZw4S%Y_Fh~<9Ķ8xEQaVQuOx%x |@frG葰 Ƞe 2gp" bTE~ =ՅY_=3kԀT-U=t̛p:8AIӽc W1=C{2;[Ϲi7֗FXכ 'cɦ0XGD:x*](8sB$ ߯ џ*~Y2YGړg?MT W)p2j`tW!qĈό~^S&w[R̃Rh{>^( M*@a] 5_5*!뼊zk~qڬ T8tvN">!#fc trK UbbKv62I9ic"X7Mm/;?n$mna`[hbµ=@|(0ugj AJ7oNƼZɱ%~X' ZFz2Лu#"XO.,[=,)VjF4{͒WZ}DJZf|IrO`}0ܡYp^al>xRn"1")~HܑbUN`w6E\ey]_y:hwSMeFw\o"Q@>S>;I{WxXDBKI7sd>rQI)=AߠF Ô0c*ms@N{eŗ[֡ 쾄/F`T,CdL!|j f"82kG(VI *׾b(zDLo{ ҋvy/UwCIG3_=u\5ɘ'UUmco .ʫPsx݀+lx G00$Qq _Pb.J[/:tG\^0K'FaJ rf$Ro+4>ٚl*f+i%Y4GHР8#O.E=aJY" &<%toȰ4Td?KZJJzLnǹSuxғŝw姅㌠Sڋ6?eOv.'aiU6JsyuM&1rdQ.K`QBIjwG>jn Sށ#W{c{< [XB@>(bȯ!7y RNHFGBJ  k:QCjwbpŪ!ԷИqS E S?a9#]CƱؚx.n3j!@HKMU^bJ,r"2L 6г7VQgJ}ukc2D7Iv`+㡵o*1*+V yuXHU2n"Pm<^* VT+[GIԣW%KeWTkvOU݌f_4YzY6@hݹ*=J).:G0n84bd!i|\:/@{6<;5 Wufh%6ɨBSca5c%p?R`4XJSE։$z5 dSQW \}%"u\;k*\?AyVP^6rf!ew3IvoPg1l|W> !gֆd鼻yg4) \et4u`5uQ˲A~֛R{>$Zr7S\񧳈-Ai>Nwpz=( iLPsUuL$)aHڄiye'<:Rjd.00G&ݱAVTȹbp`-_p먦SxMk Ϻ%I0;(~Fg t '!ǂ+YhN+% v;H(7-3q>*KI,><:{<IyW^RB°*UeaRxoZlonvO61)2<`̈́vCcxFͽY[֤v+(Z\%JCu9P/ʥ`N 1oҘ#rqfTR[/F{lU,FN ; S;<5$0_B3x,K~@KU~] zeʧ3%vCBD'j)iŏ(-kJJb0ĚhwlAsZBڻ.@2Ĭ?ֽt˯'F,?}\e/uct@~iQ]ȏ4ifH9ܒ6Ü8jyВ}.}7N5z(-GsA=Pê!W_dB}Gs(j`1?@PifG01M [tfrnv8Rg@o÷: 'Z'NVՂ DoIyp%⥰wߊOqFN.7‰}9Baݩ0/%G]+Nq%g-R` y6GuyA'oBK-2{VbY.J$elJHK1ד ;||ٍ _K/Gc^[A!?h7]'w)p) =ԁ"]&A\) &WyT*(ˮՙ_+<4ivDJlE >^FkQ%&gz3#Kcz9kV9 ds!X7 XދsQXN$+1v[l}Yx R{gR()g`}6|`9:-t!##W-_*H{cIyV¬#c/-zJLdX56M GUK!/N<3+G皔nQzF|(34*˜O(E8QA}S t$&޴iAQ9>[? *ȧIm1:G|vCя  ~=Hax'S6Ez}4( pPde[G_[wzkz$aΆ{wH c\X ( <,y(}/;쉌r}Oa,Hk1vnΎeL8z]-gu-)(r4Rx%Jm٧Bˉ={=)Љ$(S,X>rcs0agWbdv/!ͧyj!9<Eedu4XghٕiI~l RPo =[W }Wcӯmf^pq(~m335.xb)p"`j] 8S",TE5͠b:E*pEsQ {ȝ'فKnX_^ys vۛa.nH{AӉNjiy|vRH(Q`?ԗ$.@TKGfJ|H9D cV1[c |jBA H Êÿj7^g9| .G} K±[zSU֛ } @1i%B_}/BwҲB W&>Wu$.zz1l I54>8$ǴLґG/rT:/ ) {\T)mLYGK 66c^F\mV,pG.8ƚ/tj;NtӽÚe8O 1cXW^ޑ0M,.v6EjG0{<0sanY6oVnS *ŷ$ yJS[jy6CT1D[;' v<,X|p\] /&Ҿ> 'ACl cTxNa֗O*0c"|I Bd;GIKV iw-Bm*Lb 6X YAN>,PuzvBA;VWot pĖny1 Իu,*윘 !K )}" YZBҔA԰}0uUN\!2ig>Yp4 {uLg LCH4E< i;\&x o^Btrt7Ȅ__sl,h2Z{˸ 4wfskԷ<0"(pDl%왟#үɣ+#q[8UI$5`<+>K$2k߲y@kx6DQlǬPqU+kSO]V;lJzP_3 cpmu%J+7z'6T`DhV2kz.*'u5bTց5V~t9z F'6^.eR_8ɻcߪ0`Yle$V<īz=c?9e1V ϥ0?Kvm8|(_xlP%`6? ۉMmLr !M[BcfDb-v4L,};#LT%!x-!F:Ӫyk*nc_q|`r=ix)ȟthA&}RR

q`vCybDi<9$DD$Ϳih _؏NS5L&,&rN>J󉋋l|{S_% Zh]=/P٨f&-mKǽ$YB>^+"`vY8.u7v5E oi>@ng>ڰaAMg_ u2 kE 숮COU,zUdLW\P ;<~ݳfkѕxWu-)fm?HE?TdE2˓iͨ;VĆ'fM3IUO (2="T攒IjA0OD۾y6TO1 dg\{DNjac}`ͫowrߠf"VCXZ!@y=y\ 2s޼s`,OZX] hL`8)HDPy 5 pe OD$3+^xnf!x֥^դ5!WRAPq͵MLYH|[GIY)0k>ޥ*Vl*}O L;95$BhemWt$B+3+=g₎IVSL8]imp벘c+'Ӥf]|+?_{ !#4jbl4*nvrFJKC_^X*]`it mʋN?o `8[#4\1 P§wS,\2gcIyD:on=xFtLs,B;o2YZA CAJ쯳o0v/Q=EONy%W)DÑI`a\ak_hɎ\q 椷7Nd])} j{H^q]o~.6iI)9u.o]؇v8 â1j .%-)NѬr6Z",4n(:Odc9,/ScygyF/HOvGt ݎrW,W#zcؚ;$ֽle}Xi*]{=Q".3`4- Q,I8i xEק`xQbJ0y |f }2ūCE"{iٿzLXiˉDԭQ'ʇTz"B$(hwxHEL%-kC zmX~0bW Y!Ywb9MuIU5wٰ#\P,t-jCQݻup](@y5:etؗ#G 9vemK5`,)Oȇpi öOo ivOg ۜ<[c۔Q Mv{邘ҒIH1+G~S2(59[/r&BwQH:U5MbXuoccOӐ)'T[?iJSնl /"2e<|e;)N,?t٢sZ)w Ŏ d,2 <&+X;4a`sXz@h u?#n\ݵ O iF. Oqխ8,g.j+,~(;p)]9ŃRd1G ,-۶ŒH-шړ"y3F$`roDU ZE<R{V+ ۔w ya/[l=~}um]yq8MpxN&!= I)7FX?6 _&Y'^u.s!5D dA(RA7qR_1'sYaimqO8j΅ Z{^n}guɓʴy@ȂSVo_> ^It8vef~!n(MA%Rd,~D=/]jRDHU-r M w4[')V -=8)>©KCq7L e!y;[ bNi)HF~zF< ߛs YZ