python3-Flask-Security-Too-3.4.2-150200.3.6.1<>,c2p9|@G؟=6 F>'9 [-I}\N᪎B=YyI-lB|_}'`F 5IuMcJtm/x)C'V{ͳG4?WF3m<[s16 \%a6]Z/"M̼F,!jPZ3oZwVuчk,I0N~?-_'l+Ψpx,#U^>@PB9Ud"/܈EŭD{ >J{?{d# 0 H 1RV lx  X  , /a 026u9:4==<=>?h?l?(?8?9?:@,BN,FNCGNXHQ,ITXTYTZT[T\T]W^d&bncoedoeofplpupvr wsxvyytKzzzzzz{{-{<{D{J{Cpython3-Flask-Security-Too3.4.2150200.3.6.1Security for Flask appsFlask-Security-Too is a Python module to add security features to a Flask application. This is a independently maintained version of Flask-Security based on the 3.0.0 version of the original.c2sheep19dSUSE Linux Enterprise 15SUSE LLC MIThttps://www.suse.com/Unspecifiedhttps://github.com/jwag956/flask-securitylinuxnoarch  ..b4b4JJGuGu P%P%uu\\p aONQQq{  IM|VSJ/(s@8m('xGKECjDE~8FE{# ICDs-KCJ@c>5y _A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤A큤A큤c2c2c2c2c2c2c2c2^!Lc2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2^!L^!L^!L^!L^!L^!Lc*^!L^!L^!Lc2^!Lc2c2c2c2c2c2c2^!L^!L^!L^!L^!L^!L^!L^!Lc2c2^!L^!L^!L^!L^!Lc2^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!L^!Lc2c2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!L^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!Lc2c2^#&^!L^!L^!Lc*c*c2 ^!L^!L^!Lc2 ^!Lff9a0cc4b6c6be2053a004905356cf1e207ecbd6bb46f11143a6fcf1615197664ee5089661ebcef328f7af7c01508962c9118a85f6bbb4f72f62bd1f6ffd2fdd01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b1eab3beac91827c7952e2f394f5d48d328f4fbc5ab7d96ca639b743c30bb40bcdf6a9b1c97d18fa0beff071b13342598466af65a52f6174b12b4bc1790cd437fffb219689290603f11c327e3ed1cc11c04f618d7f5d3813b4d8232c640125bef3324055d8b184aafcdea8c7039de12adeee7c4cf2d5df7c91e318e402b37fec173d29fca308a62cfd03a7d64709a1c65f77f571d7df0de9c41312e521af3bde9cec866d5e3e7fa34bb0ed5dd2ec91a1540a7e43d374e4b401065b3a999887a24f32c870ac35f1c2c64f7135ad4dfb3c38d8ad98be2dde69ebd6d5e685fad8b331b8a9986f08eda79747a6d16a0e1937d2f45c2cdd4ebe20cc8e2b195250355be7459c382f51014e45545c1ed6e2ab75f2b9d1ddad604448693ebd52316433dbf4fddc4c3cc0f95e53631fc2c2b2200631125a960e01c904a2c2b7a32b0401d7c3049c0bad23630c78ad5884f89acc110596b4ce3ec15c4e23ed130c0acd2bc108acc567ce58d45010737be43b0999113656732801b30cd0558c1c50fe3fbe153150583a27ce7997aa5efa5b13e5381cf1a3c87cdc31ed6be92b356445c96692dca321f9e50bd38f62b50e753a13d9b3d08ee48a681dc6a41f327506ff7c9e97e10de2797f4bf06b4ec4bfcac419e9d1f3bbedcefad9780ed3258835c6d1292a11b190b911f4bbd0ca90ff427e01e35667001071dc6123b9b84dac52132fbd9fc94003c5a11062380bac8f41bcca9f3815d9d34a6075c4898face9f2893d9d5b354b69999ac7e1559b4569feeca63ac6eae658429baf0f36486b54256f5d71f53d689b282822c7f4b89689092562f1f94e8a5067dfa0f002a19b7584ab4adfe7553f1192d047c786c821702569c175164d9c31642a6a596240ccf22afac778a56564e85ec94f408f861f8a8d84bcd41fd61a9acf215d4740c08af5594893ffc2ad4cd6c19438987079f636e3c9aeadf1da4fb9c3a1552567af07d2e865a4283f601c4492dcd1a25d176382d89802001f42ecc012efe173817df098e06d92da23c1bbf3b24cff639e958f20a3f1b4d86c0f792ee18d5dc8aa3c22db5dbc757067132a7ba6fb6b5cd0d335eb48ff8750a4112c39f7c85e5b3dcc61351fe01d2bfe59803b2ae7dde14dd803242514ab5938f0356654da71f33a30875c71f21093c3c947e7a11fc4466a5f6e649d5653680b8f47ab149cdd792c418fe31f02c91de4f924cff3a2d5f83737a0ed823ce0516aba296836749e77bad2c11846179d53d206d6a8e07f05d6effc751d6968625831f2610562e518a7cf08a330b34fa02ec153ce8f00f8422889667cd14b88fefd767be8fe60560cc72d236a3058222aa0e1e5201a7c97dce001a6238fcfb61721fdad499f1ef447946f8e18974e0529903faab9d8acde3c2da203a508694772ea134188c51a65ea9fe99519d63a4a581548c0a442fd5d951acf086c8043fac37f150398572b0fc75b777045fe86e20e86cfce20e8857f72405dfcd92349733a1fd15a1d090e479ff37c0078967d22973453c87f249389f70c618426ada0a180f32b4eb7fce9199f50a17679eb862fe4f86de1556e1fe01b6923aa6d8b5743f62bfbe4b6a88b2989789ac80cf73f43816673d1556e1fe01b6923aa6d8b5743f62bfbe4b6a88b2989789ac80cf73f43816673d054a9b9191c3eac0235c84fc92ff8a61a3423baa0824d4a11bfdf8dfa3fb2b8e95b243ce479bb9d99493e8fbb98b984a985020f828a414dace86c836df247dd7cabeac1a288b9c0f3ce96b60d601368dcf8c1d67eeec2f29ff61eb2d3b91a810805fd11e74aebafd4c235b177d0cee77d742e4fcb86b5ecbfa1dfe802697eb3b901f6caab67b860b920b003cbd7e47cc493f6db1fbf6de27ed1c9612722057139e92daf0ae4a0025b9b326145e45440c917a9e119e4306ee3ab660535e951fa8cccaff7ed433dc6e71df2012e35eb129e751f31ffff3ca70d5c9717e29b773854f1687cb3d800b74181f51ce08b4a12c210984e05a02c14c64d909cac7192b12a0c10277a9e0823dd131180e409dbc92057e1812b3da94019134da72e896c575d9bcd182ee58fded3fc93764cb8824f638d1cc8535fed1a2e70c62e5927d316f44f9d877727f67e7df2234dd0aee005b91ae3adf49078cfc9ec776f921e0efba6e77fd8d6eea300faa4ab8b21875600fcbdd332de7b0d2b0fe99bb5b4ee8820bc79b1fafa673269cded7931a6f52a3c0c20888562e93b7eda4322db2f12673d44c7b082af7aac79b45ffcbb38dc098d227145de56447865f5fe5eed7912af2be06c6cfa6e75f0d572cef4bb755e69fa71f3aa12363906a4868a0ddd46c461195eeb18b7c06d38a094f499d7dfb5ca1a2ed584dff287040668d37b1b69ff3ad3b9306fab2133102f5b79d8ec3d214d70bdea03d63264428a82f6884221afa48c46d5e8488f1a4ed432b3105223d65f3ffb721b6a4a742fe3f84f4d00cf3e0466f3ac14033e946417548575cef4bd98ddd29cc517d1ed2b37b48cac45ea78cccd20677bc37220854b654b51ad54420ff25ab51ef578ce4546a92914d818af61066728599102d1ac74c994de82b7e1a55e616617cdcba2ea6a67f2c360067bae61248f76751d70cda4ab5eb585c5a6d060813f7784465b46f1958a880904048027548f76751d70cda4ab5eb585c5a6d060813f7784465b46f1958a8809040480275dd9e88227b8c0ad7ffa3edf0b46c885673f21d5c77445dc868863e2ffbb18f84a60bf558a46d7f23a9fa5f881980b48f1a7769372522c61ea17dc0bd9442294df59ee684790444e91cf224e43c3e30905fb53feb0f838cbf93147ff72a36d00aedf59a580cd0975477c5c1e179db6c1e3379c4ade9683fe9596c876dea2eda80200fc6877373c7671b7e76e50d8f901d8bcfd30e3dea10b99085be3329c83c050955225d175c8dabec40af6cc51f483bcdca0e580fe3aa10ce8a6dcb080634af60b1b80b5ae8032376c69d7e8ccecf0dfb7e0c2a5d7e57fa32a9234bcd420f0458a6c0d04574c5c754ffe352ba7964186c643c628477fbfdafc6ed2337b83f4d4c8c3a9d4d20606b44e660b8c550203211051cde51e2a2ac48d3f353d21b0ecc732b3bffeb232d1f2c6999da9cf3eac1a59e03afdf1cfd531a1ed22975fed25f892269f3743d9b9b8608cca6a504104881df1c2073b0c279ea4ae10539bb0388c43136aab497548dd27037aea2bb90b789d13f1352b41581522dfcb29aa3c7a3c5c9c9b70c108b7fa9db5b9f9536beb8ff464131ccc94695cb16e6ed016a04ac1f5d3569a2f9c971f32a57875712ab16d62b227b9914ccfdb712996719fa7b067a59360d557ba2fd4ceebf0b15a975e1e726322673525c4145433a54cc1f2a285079d74c7ffdeffc9aad6515c7e680c902605376cfabcdb6e73a29e8f4b17373ddbe91ce2f5972a98d07cef84aded29d26c363414415470f9f236a580c3d2aed15ab4797f0b57f84395657dfce6b73cca30709cae126273e3f218486db2188835c2445d6159c4a20db2526193e5b15ad5db27c7850fb0bc42b21697678e2be01dcf382a8f5a8a17cbd74bb9d31c8c468a3acfad78de448f43ddd960e1a4559a3824f3b0187d6f3d4ebffed1a7a9045d5a806e4fbae650b4cf3d95ba36db09517b1a51688252b6421cb3405bffcb06db3709888602767d89942fe5370570fb5ded4759416b40fbb47d2d69fb42dc4bf09624a8356de67bfd6c210e4b987fcecb384e3f9f5004854cd98f32509b67abd365e0ff431d920ee2c408640f045e13a96c5844e205ac10b810bc3a0435a7de624f425bd5e76ec4eff79e1b56cd0b789a98fe6cdfca9bad943e9e2287e138c20ae496b56ffb6f73ad1504b03a44b9eb6083a9252e481ddabcc21fde6b09e7485666bd75963ba93d3c80dfbf91a35610577105cbca72b32ab3ad86717a3a7fac2087d0588441f1da825e644fa1ad2ee99e07b835a3de09842bccb5b7e473b92db89256b26f487447977403c2b83481eee29be7e2e92e7cd1309a18f1d6799dcb195043655cdc6f6a049639b6a22e78ff8b2326a8f10fe185d2c609cc17383675277fd64d8a04011d06907887d68f4499538fb14b94d9a239e9c6d573733188396b64be84bd8496a0d60afca6410299f00e9b8ebf70a6746d2e289fd30113c25d5da51195524b60c28f9d89b245e08be43a615b20085be8b7baf1ff437526f81fef86dcf14a0696adea9a4d9c008e62b78bf5b17e6909b8046c571ef6604a52b3e941b526d7d83a23d0b246d1781c12a178a4f18661d8ebfa4ec1d74eecfac1e62788ffd50fc2f0a91309db53570e709d21e4404a448ce563e6a25159f7a3b1af0750e9d8f5c9b5d40b773bcde0616288095a2e77497ffb0ad24e4be63f825d9683017d76f0bce204413a10fbb24cf2913600ba11c67cde61d9e5448079e679283f7f05fce379ae4da9c3ac1160d7c1e9723b1a911f14aca4dce0ca122632fce4358bdd478d4fb35e8c40a14160122096afcbb81b98e674fde6e582b776f2d1df4a426792a796a0f107b25fe2e3b5c254bdc35cebec7c24d536df15e7edb14f7e1c3d5befa9eab4aa880e09ef7acf9e2faa43466065ee1266e2695f11887512ecf82d8efb6fec4cf215fd14446a03a4f5f003eecad4002ac049178f6286d22614b19dd3e728cd9f77507f8292485d5b5ae1eccc03b4c8fd067090ceeb08799c8e0a3c795b70880f1c75fc1d6edb66d2ce2dfb385a71e62196c5aebb261ab590fa2c9897f33bc2be5a12bfcd04793d75002323ebf5a3c5843b230fd17a17fca5472cb587e88371a1872f9e584f7e6cac04e091e7e44e7cefc085064afbaed727a9d84d2d68ceed108d33252912f3d233928206b3c0ed572213b0598e1bd077a9622e3c43caa28f0720af6c66f8c9d541064541c90d21df6a063ec897e13f119f5e997cb761d28894f8d68db4278c9798f44299aa50cd2d22a4980f0d9aad03151e1ee9cddb0934a2b14f8fa051ea1e773dee30b766a36c9e047b226f677d3e3d78dead5c2b2d4cf2ada47f1fdfdc3707cf0caa274ef886d33c99e61a4fea3ff5b9bb104d4c0f272be59f0222ba72c2277194031077c1f09abc18de14459bc590f2b967ce8fded4a895d2f3ac3985467c9631f06c6173064b9a44a157f2a9f3a4f9bd0afb6263218e77d5e86ca4f30a183259028d58a1846aa5e64c1cd9b99836ddc3b0841f1141475d17c9ceb874d411934c364f7c62e45062f1875f45df8a55d723a27d7872b570ba97e9d952cbf1dcb0810cc71fa34bea52e928edb2600b64712b4e01de8e6054404dbf31dbd50dabcf491cb860824930dffa2da220015447d988e79a76d9b3c233ec6102b42359f756af2fdfee16d424eb2b9f94ef4a1468bab163e4a35d91950536f38b0bc3eb5ca6c97d297011d51822508d885e27eab9529159c360e89fceb9d92ff85de4e9223e40b108968a6768973dadeb2be42864213f14e9a1a9a694e06cff2457c43f54ff5098674c29f9f05042c1dcae3f079c9149746bd2369f6403827df51d193a1d0c969e4f809f4e447ca3fa8a25f1c32b167c7f5273bbe4cbca8f47c8c213dfc6508e9fcf4b1c007787015f711e6c2b62a6bb25a5e9157c584e02e1ae7dd920a3924eeb53e2ccf35fbc6ca42aff89a125882e05020857d265da89fe91d3035ddba3bc3ea40e0de11092238ebb084b36d9950ac04caf906fa5b5689ea5e2ee613d6de417616a08c90411f0507cec77f9ef0706e2e56049d8dd519d22e90ce89ba6a0ccc1ae616de78885f53e8f583aebb456f0afa5a6d55925732c91ac1909341122b51fda9a04dbffbd96e5a9b564015cf194a3c50900247dd065ef91084490fbd8121d3bea1bef205c4efdf7e97cf2fa466922e16365dd4fab3416066ce1d3e8c86d490dc52380eda128ba5afea352870f102eb6c8383ca16c3b26f2220674baa0fec083cb896b44bb5cbfc4edccb695cf5b286dc1b2f1d7f4a4d7a810f4f9177f6b380d03c23e810652e74e3febf11162984eedfc3cb35621b61397059833e11261e06d77af72c2d12134149bd5726983e947fa8e835054e3f1440a21bc2f1ccde0de67192062f7255236a0ef7a00303240d1fbaed364a9f9a4ac03326c97cdee52de9246234156e74f4193ee028f905f50b5114ab8dba1f65fcc9342e61336ff2508e6d164b4e932702cd4151b87c1f5a0950c196a1ecfc7d0ea6ef079ec1fd8384c03d99683e962c21efbc71476ebe53a150854214c4ad9ebaef5c4376a413d3813a558f7275894dd8fc7b58a1ab91cb878187897f18934327dc7d82fe7291782c25402b3be932bd3b6a7916173dee7518d0209a26e14435bfe574c35abbd0ae9d20ff964594078e55b52ac64f1b06b769381e9811e67edcdf4cc88f01de5db3e1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-Flask-Security-Too-3.4.2-150200.3.6.1.src.rpmpython3-Flask-Securitypython3-Flask-Security-Too@      python(abi)python3-Flaskpython3-Flask-BabelExpython3-Flask-Loginpython3-Flask-Mailpython3-Flask-Principalpython3-Flask-WTFpython3-Werkzeugpython3-bcryptpython3-cryptographypython3-email_validatorpython3-itsdangerouspython3-passlibrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.61.0.20.9.30.4.10.9.10.4.00.14.20.14.13.1.42.1.41.0.51.1.01.7.13.0.4-14.6.0-14.0.4-14.0-15.2-1python3-Flask-Security3.2.04.14.1c*c@^2^2^@^@^y@daniel.garcia@suse.commcepl@suse.comalarrosa@suse.comtchvatal@suse.comalarrosa@suse.comtchvatal@suse.comalarrosa@suse.com- Add fix-open-redirect.patch fixing bsc#1202105 (CVE-2021-23385) to avoid open redirect. This patch is based on the upstream pull request, gh#flask-middleware/flask-security#489, that fixes the upstream issue gh#flask-middleware/flask-security#486- Add CVE-2021-21241-GET-reqs-auth-token.patch fixing bsc#1181058 (CVE-2021-21241) avoiding leak of authentication token in GET request.- Decrease dependencies which aren't really required so we can build in SLE/Leap: * Werkzeug 0.15.5 requirement decreased to 0.14.1 * cryptography 2.3.1 requirement decreased to 2.1.4 * bcrypt 3.1.5 requirement decreased to 3.1.4 * peewee 3.11.2 requirement decreased to 3.7.1 * Remove python-pony requirement - Add patch that applies previous dependency changes: * fix-dependencies.patch- Add patch to not pull in babel/twine/pytest-runner as upstream needs those but we really don't require them during a rpm build: * no-setup-dependencies.patch- Update to 3.4.2: * The flask-security repo was moved to a github organization Flask-Middleware. - Update to 3.4.1: * Fix a bunch of bugs in new unified sign in along with a couple other major issues. * (:issue:`298`) Alternative ID feature ran afoul of postgres/psycopg2 finickiness. * (:issue:`300`) JSON 401 responses had WWW-Authenticate Header attached - that caused browsers to pop up their own login/password form. Not what applications want. * (:issue:`280`) Allow admin/api to setup TFA (and unified sign in) out of band. Please see :meth:`.UserDatastore.tf_set`, :meth:`.UserDatastore.tf_reset`, :meth:`.UserDatastore.us_set`, :meth:`.UserDatastore.us_reset` and :meth:`.UserDatastore.reset_user_access`. * (:pr:`305`) We used form._errors which wasn't very pythonic, and it was removed in WTForms 2.3.0. * (:pr:`310`) WTForms 2.3.0 made email_validator optional, we need it. - Added Requires python-bcrypt and python-email_validator, Recommends python-PyQRCode, python-SQLAlchemy, python-zxcvbn and Suggests python-argon2_cffi and python-phonenumbers- Update to 3.4.0: * (:pr:`257`) Support a unified sign in feature. Please see :ref:`unified-sign-in`. * (:pr:`265`) Add phone number validation class. This is used in both unified sign in as well as two-factor when using sms. * (:pr:`274`) Add support for 'freshness' of caller's authentication. This permits endpoints to be additionally protected by ensuring a recent authentication. * (:issue:`99`, :issue:`195`) Support pluggable password validators. Provide a default validator that offers complexity and breached support. * (:issue:`266`) Provide interface to two-factor send_token so that applications can provide error mitigation. Defaults to returning errors if can't send the verification code. * (:pr:`247`) Updated all-inclusive data models (fsqlaV2). Add fields necessary for the new unified sign in feature and changed 'username' to be unique (but not required). * (:pr:`245`) Use fs_uniquifier as the default Flask-Login 'alternative token'. Basically this means that changing the fs_uniquifier will cause outstanding auth tokens, session and remember me cookies to be invalidated. So if an account gets compromised, an admin can easily stop access. Prior to this cookies were storing the 'id' which is the user's primary key - difficult to change! (kishi85) - Enable the testing - Add patch to not require mongodb during testing: * no-mongodb.patch- Initial release of python-Flask-Security-Too 3.3.0python3-Flask-Securitysheep19 1664279566  !"#$%&'()*++-./0123456789:;<=>?@ABCDDFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3.4.23.4.2-150200.3.6.13.2.0          !!"###$%Flask_Security_Too-3.4.2-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtnot-zip-saferequires.txttop_level.txtflask_security__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycasync_compat.cpython-36.opt-1.pycasync_compat.cpython-36.pycbabel.cpython-36.opt-1.pycbabel.cpython-36.pyccache.cpython-36.opt-1.pyccache.cpython-36.pycchangeable.cpython-36.opt-1.pycchangeable.cpython-36.pyccli.cpython-36.opt-1.pyccli.cpython-36.pycconfirmable.cpython-36.opt-1.pycconfirmable.cpython-36.pyccore.cpython-36.opt-1.pyccore.cpython-36.pycdatastore.cpython-36.opt-1.pycdatastore.cpython-36.pycdecorators.cpython-36.opt-1.pycdecorators.cpython-36.pycforms.cpython-36.opt-1.pycforms.cpython-36.pycpasswordless.cpython-36.opt-1.pycpasswordless.cpython-36.pycphone_util.cpython-36.opt-1.pycphone_util.cpython-36.pycquart_compat.cpython-36.opt-1.pycquart_compat.cpython-36.pycrecoverable.cpython-36.opt-1.pycrecoverable.cpython-36.pycregisterable.cpython-36.opt-1.pycregisterable.cpython-36.pycsignals.cpython-36.opt-1.pycsignals.cpython-36.pyctotp.cpython-36.opt-1.pyctotp.cpython-36.pyctwofactor.cpython-36.opt-1.pyctwofactor.cpython-36.pycunified_signin.cpython-36.opt-1.pycunified_signin.cpython-36.pycutils.cpython-36.opt-1.pycutils.cpython-36.pycviews.cpython-36.opt-1.pycviews.cpython-36.pycasync_compat.pybabel.pycache.pychangeable.pycli.pyconfirmable.pycore.pydatastore.pydecorators.pyforms.pymodels__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycfsqla.cpython-36.opt-1.pycfsqla.cpython-36.pycfsqla_v2.cpython-36.opt-1.pycfsqla_v2.cpython-36.pycfsqla.pyfsqla_v2.pypasswordless.pyphone_util.pyquart_compat.pyrecoverable.pyregisterable.pysignals.pytemplatessecurity_macros.html_menu.html_messages.htmlbase.htmlchange_password.htmlemailchange_notice.htmlchange_notice.txtconfirmation_instructions.htmlconfirmation_instructions.txtlogin_instructions.htmllogin_instructions.txtreset_instructions.htmlreset_instructions.txtreset_notice.htmlreset_notice.txttwo_factor_instructions.htmltwo_factor_instructions.txttwo_factor_rescue.htmltwo_factor_rescue.txtus_instructions.htmlus_instructions.txtwelcome.htmlwelcome.txtforgot_password.htmllogin_user.htmlregister_user.htmlreset_password.htmlsend_confirmation.htmlsend_login.htmltwo_factor_setup.htmltwo_factor_verify_code.htmltwo_factor_verify_password.htmlus_setup.htmlus_signin.htmlus_verify.htmlverify.htmltotp.pytranslationsca_ESLC_MESSAGESflask_security.moflask_security.poda_DKLC_MESSAGESflask_security.moflask_security.pode_DELC_MESSAGESflask_security.moflask_security.poes_ESLC_MESSAGESflask_security.moflask_security.poflask_security.potfr_FRLC_MESSAGESflask_security.moflask_security.poja_JPLC_MESSAGESflask_security.moflask_security.ponl_NLLC_MESSAGESflask_security.moflask_security.popt_BRLC_MESSAGESflask_security.moflask_security.popt_PTLC_MESSAGESflask_security.moflask_security.poru_RULC_MESSAGESflask_security.moflask_security.potr_TRLC_MESSAGESflask_security.moflask_security.pozh_Hans_CNLC_MESSAGESflask_security.moflask_security.potwofactor.pyunified_signin.pyutils.pyviews.pypython3-Flask-Security-TooAUTHORSCHANGES.rstREADME.rstpython3-Flask-Security-TooLICENSE/usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/Flask_Security_Too-3.4.2-py3.6.egg-info//usr/lib/python3.6/site-packages/flask_security//usr/lib/python3.6/site-packages/flask_security/__pycache__//usr/lib/python3.6/site-packages/flask_security/models//usr/lib/python3.6/site-packages/flask_security/models/__pycache__//usr/lib/python3.6/site-packages/flask_security/templates//usr/lib/python3.6/site-packages/flask_security/templates/security//usr/lib/python3.6/site-packages/flask_security/templates/security/email//usr/lib/python3.6/site-packages/flask_security/translations//usr/lib/python3.6/site-packages/flask_security/translations/ca_ES//usr/lib/python3.6/site-packages/flask_security/translations/ca_ES/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/da_DK//usr/lib/python3.6/site-packages/flask_security/translations/da_DK/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/de_DE//usr/lib/python3.6/site-packages/flask_security/translations/de_DE/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/es_ES//usr/lib/python3.6/site-packages/flask_security/translations/es_ES/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/fr_FR//usr/lib/python3.6/site-packages/flask_security/translations/fr_FR/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/ja_JP//usr/lib/python3.6/site-packages/flask_security/translations/ja_JP/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/nl_NL//usr/lib/python3.6/site-packages/flask_security/translations/nl_NL/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/pt_BR//usr/lib/python3.6/site-packages/flask_security/translations/pt_BR/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/pt_PT//usr/lib/python3.6/site-packages/flask_security/translations/pt_PT/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/ru_RU//usr/lib/python3.6/site-packages/flask_security/translations/ru_RU/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/tr_TR//usr/lib/python3.6/site-packages/flask_security/translations/tr_TR/LC_MESSAGES//usr/lib/python3.6/site-packages/flask_security/translations/zh_Hans_CN//usr/lib/python3.6/site-packages/flask_security/translations/zh_Hans_CN/LC_MESSAGES//usr/share/doc/packages//usr/share/doc/packages/python3-Flask-Security-Too//usr/share/licenses//usr/share/licenses/python3-Flask-Security-Too/-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.suse.de/SUSE:Maintenance:26162/SUSE_SLE-15-SP2_Update/ee4e8a958f69d6d8d6cb64abd078d403-python-Flask-Security-Too.SUSE_SLE-15-SP2_Updatedrpmxz5noarch-suse-linuxdirectoryASCII textPython script, ASCII text executablepython 3.6 byte-compiledHTML document, ASCII textGNU gettext message catalogue, UTF-8 Unicode textGNU gettext message catalogue, ASCII textUTF-8 Unicode text  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR7$ɏH @python3-PyQRCodepython3-SQLAlchemypython3-zxcvbn1.21.2.64.4.28 python3-argon2_cffipython3-phonenumbers19.1.08.11.1 utf-8cfe359f69a9a02f1eebdbd30f435f8d1d688f8983af6782fa02a5e3754d35de4?`7zXZ !t/8i]"k%~a ˆ7ZS%ύ8-l|؆#|aA, + 2 MY6*k!c H9IǗU$]>hB2Gm~ j#ϹXn~-be.LӸZ!eEZOҹT +]ACpR{HWAs$y@L_G==s6Pu$C-ٺ'zͣ$書Ni%XPA!t!b70325/V$fLXރICW8OKpč=Yhnh} 1}WE..*=nFrY F¼)CVg7JzA y#7!M'+rHXE=7]C;TXPRcJ-84/ if0QJq"Hrp*zd#1 ߣ@5oN#"P3 ikXtc^۟@dQpmFZ@s" +3U1WQ1^ 'o釚 zۂ+YB$Χk2ԶBЧoVAhҌU!@xa j[x>P@-H]%/AEohKJ9bEUjP_ys4p|v㶴%\Ⱥ!\?PP#pm~! Jaw%p:bb[ U'gثkc_mtlG(S+9=<,X.DW^aA0v!ew$t:7Q-]9CN9D^6 a Vx>:h?}PJKW3|7C@Ipi\ "t(q fq~ {<X>S\sS#)`.ǍOP:r1bCFX*u$ŀJ4m$՝56pçdhqYdp)𛁷QC87>v]SF?h^]mOToסgoit!cj#踬 [œ(~7NCP8ܥ3 tѨ1ErxX16Ab"u9*n7}Q5/H&RLp"J0/0_zP8l6JʠJ2>DGYݧ]g.712j{#~ZelT!R$R!4QS-rm?1nȚTaI'!"`5DWiH.|W6D`A{\#2K]4KnnrI iG2DZT<ܚ-˺Aԕ6w>F&>rfBFyCyTN..ӮC##c,ZHʑ>`/f4jC BջR.K%LP-N mhR导+/QL?;kB9eZGUL|&(bfBWyLw# aިE8M>E.DžhAn{0g1v7T+V(/"h"cyaYNz P<  ] @?1҃HMaRkϪܧC^'_5 I{lpϙftc(NaY,);!K/oW}ГK^[i?cw+*VZdS 2llJv\,qlztO<|hhrZTrdoPFt|^Y pj<3dt` 5;#+ ǚB"x U1' ɤ R8mQšqnZ8WO gA\]ټ:(HTO<-?LrǮ Yr I kBû.@(L1=l!c}i{b"]DF[*?YAe܈>"+y2mG2&4`=Qӕ莿Ky6*,(R0خ2m# E|y?A7=K+P ų㒩m?R%[폔I`-9Q7iwc[zg/+^X=rVN)ޱTM']5oo{  gDNg ݵ߲hX =N:9\pIO27fyZ4Krmm&0rZylUvld뫣c֥W/