hiddifypanel 3.0.0.dev63__cp311-cp311-manylinux2014_x86_64.whl → 3.0.0.dev65__cp311-cp311-manylinux2014_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. hiddifypanel/Events.py +27 -4
  2. hiddifypanel/VERSION +1 -1
  3. hiddifypanel/VERSION.py +1 -3
  4. hiddifypanel/__init__.py +7 -3
  5. hiddifypanel/__main__.py +13 -3
  6. hiddifypanel/base.py +88 -3
  7. hiddifypanel/base2.py +40 -3
  8. hiddifypanel/models/__init__.py +10 -3
  9. hiddifypanel/models/child.py +26 -4
  10. hiddifypanel/models/config.py +105 -4
  11. hiddifypanel/models/config_enum.py +207 -4
  12. hiddifypanel/models/domain.py +106 -4
  13. hiddifypanel/models/proxy.py +55 -3
  14. hiddifypanel/models/usage.py +58 -3
  15. hiddifypanel/models/user.py +171 -3
  16. hiddifypanel/panel/admin/Actions.py +1 -1
  17. hiddifypanel/panel/admin/templates/config.html +1 -1
  18. hiddifypanel/panel/admin/templates/proxy.html +2 -2
  19. hiddifypanel/panel/admin_2.py +33 -3
  20. hiddifypanel/panel/cf_api.py +35 -4
  21. hiddifypanel/panel/common.py +98 -3
  22. hiddifypanel/panel/custom_widgets.py +71 -4
  23. hiddifypanel/panel/database.py +18 -3
  24. hiddifypanel/panel/hiddify_api.py +70 -3
  25. hiddifypanel/panel/usage.py +4 -5
  26. hiddifypanel/panel/user/templates/home/multi.html +1 -1
  27. hiddifypanel/panel/user/user.py +2 -0
  28. hiddifypanel/static/css/custom.css +11 -0
  29. hiddifypanel/templates/500.html +1 -1
  30. hiddifypanel/xray_api.py +109 -3
  31. {hiddifypanel-3.0.0.dev63.dist-info → hiddifypanel-3.0.0.dev65.dist-info}/METADATA +1 -1
  32. {hiddifypanel-3.0.0.dev63.dist-info → hiddifypanel-3.0.0.dev65.dist-info}/RECORD +36 -38
  33. hiddifypanel-3.0.0.dev65.dist-info/top_level.txt +1 -0
  34. hiddifypanel-3.0.0.dev63.dist-info/top_level.txt +0 -2
  35. pyarmor_runtime_000000/__init__.py +0 -4
  36. pyarmor_runtime_000000/pyarmor_runtime.so +0 -0
  37. {hiddifypanel-3.0.0.dev63.dist-info → hiddifypanel-3.0.0.dev65.dist-info}/LICENSE +0 -0
  38. {hiddifypanel-3.0.0.dev63.dist-info → hiddifypanel-3.0.0.dev65.dist-info}/WHEEL +0 -0
  39. {hiddifypanel-3.0.0.dev63.dist-info → hiddifypanel-3.0.0.dev65.dist-info}/entry_points.txt +0 -0
hiddifypanel/xray_api.py CHANGED
@@ -1,5 +1,111 @@
1
- # 2023-04-08T15:11:11.688532
2
- from pyarmor_runtime_000000 import __pyarmor__
3
- __pyarmor__(__name__, __file__, b'PY000000\x00\x03\x0b\x00\xa7\r\r\n\x80\x00\x01\x00\x08\x00\x00\x00\x04\x00\x00\x00@\x00\x00\x00\x7f#\x00\x00\x12\t\x04\x00z0\x8dES\x92\x9f\xb5\x02\x97\xbe5.S\x0e\xee\x00\x00\x00\x00\x00\x00\x00\x00\x88\xa4\x8e\xe3\t\x8by\xe5\x9b\xb0d+GB\x99\xb6!\xc4\x01\x19w5\xf0\x06\xcd\xe8^.\xa1X\x88\x9d\x1c\xf9\x96\x1d\xa0#V\x8d\x12\xd7\x96A\xd5\x8b?Z\xd1S\xbd\xb8\xe6\xc3\xbc\xda \xb4\x19\xc2\xe8ox0\x94\xd27O\x18\xd9\x0b\xe4\x8e6\xbd\xd9\xd7&\x19\xa1u\xcb%\xd8[\xb8\x0c/\x11\xdd\xab\xb3\xe5\xb0\x93\x00\xd0m1\x96\xa7/ql\xcau>\x902\x94\xb96\x9a\r\xa0g\x87\xffw\xbd\x8b3RF\x11\x1c\x9a\x14(M2\xfe\xc8\x96c\xe03t\x9b\xff\xb4A\x04I\xaf<\x990\xb85c\xe0\x87\x9dF8\x0e\x0cJ\xd8rt\xe6\x06\xecB\xc2\xf3F\xbd\xb1)_\xf5\xbd\x14o\x9d\xc4\x9e\xbd\xa0M\\\xb0\x87C\x89\x97@\xe7;\x9f\n#\xc3\xb0\x1f}\x0f\xe8\x05q9\xe8\xf0\xf8\xe1\xa0\xe1\x96\x11\x03I\xcd\xbcx\xb4\x01 \xadO\xad\xfbS\x05\xbdi\xfb\xc9\x95\xe9\x94\xa6\xcfi\xf0/\'Q$\x8bf\'\x0b|\x88\xe9\xac\xf1l\xf4\xdc$\xe6\x892z\x11\xc3G;T\xe4y~\xe5\xc7\xbf\xc5\xa0\xed\x01\x06,\xbaF\xf9\xb5\x05(\xa7`\x98\xa0\x16\xa3$\x0c\xe3\xde\xbc]K\xb0+\t\xfe:\xc9C\xb9\x8e\xc9\xd6\xa00V\xad\x98c\xa7Y\xe7\xf4@\xe7D\x1c<\xcfo\xa78\xd3\x92C\x1a\x94\xc3\xb6E\xeci>\x12y\x91\xc9\xda\xd0p\r\xb6$\x0f\x84y\xca\x17VJ%\xcf\xab\x85\xc7@v\x91}\xd0\xf1\x99?0J\xba\xd6\xb9\xca\xa4\xdb2\xdb\x8b5\xb4\xb8\xbd\xae\xa4\xc9>7\xec\xed\x12|=\xdd\x04\xf3\x88\xde\xa3s\xa4\xa4\x15\xec\xba\xc6\xe3J\x04Z$\xf0S\x88\xf7\x1evbc\xe4\x85\x98/\x1cH\xe3\x9ekj9\x04`>A;b\x03\xe7i\x90[\x93\xffZ\xabSO\xe5\x1f\xa8\x16\x08\x86@\x9dN\xcak\xf1\xe4F\x1eu\xf5q\xd5\xb7\xd3\'\x17\xcc\xae\\z\x02\x1cd:T7b\xb8+_\xd0\xeb\x9b\xfc\x08\x83C\x989&\xd2\xb0\xb6F-9\x04\x90v\x08.-H\xc1\xa4\x9d6\xaa"gWl\x13\x04H\xa4\xe8H_1N\x91\xebO\xa1\x96T\x8d\x0c\xbcn\xba.\xcd\xe9\x82\xaf\x9c\xbe\xc5\xe6b)\xc0\xd9\xba}\x11z\x7f\xa2|H\x0e]\x9a\x18y\xe6\x16\xddF\xc03!\tT\x17OP\xe9\x17A\x85\xc2;Wb\xbf\xf2`6\xb3l0H\x8b\x18\x9f\xe2\xe6-hZ\xb4@L\x82\xa7K\xf8W/\x07\x15\xaey\xb48\xca\x83\x1b\x87\x0b5\x95U+K\xbe\x0c\x94\xba^\xc1\x1bd\xbb\xec\xeaZ\xa6A \xb0\x81\x10D\x04\x020\x0cQl\xe2\xc1yT\x8d\n \xf1\x00?n\x97^<\xb8\xcb\xf6S\xa1\xa5X\x9a\x81\'\xd7\xe4>j<|\xb0\x9a=X.\xf3\xaf\xb5\x9d\x1b\xd4\xac\x0fX\xa2\x83\xfc\xd0D$\xec\xed\xcb\x80\xb8>\xa1\t\xa8\xffK\n\x95J\xae\xffPg\x13/}\xa3P\xe8\xcd\x1f\xe1P4\xa7\x95\x93\xebl\xdc24\xad\xfd\xbf\xfa\xbd\xcaI\x94j\xc6\xd1\x1f\xdf{&\xc8R\x1eV\xd8\x99\xae \xfb\x88\x0b-\x15q\'\xb5B\xb7\x1c\xd7W[\xd8V?(\xcc\xf0f\x89\xf04\x91\x021c(\x9e\x96\x9b\xc6\xd96C(w\xa6\x96\xe1\xbdF\xd5\xda\r\xbdMz>5\xad|\xfaOS\xeb_\x06n\x0c\xdd\x07\x14\x13\xc5\xea?\xd3X\xe5\xb0\x13\x16b\x82\x04&\xf4V\xf7\xe0\n!\x8b?\xe9\xa8\x9a\xe0v\xab\xa4h4Ei\xd8\x90y\xe2L\x89\xc9\x9c%\x86\x9cl\x9d\xe9i\xb7X\'\x8c\x03\xff\xc0`\xbe\x15\xceY(%\x05SK\xd5<\xe3y\xa6[z\xa1=\xf7\x89\x7f\xb7\xc7Odc\x1d\x98)\x8fp\x88\x0ep\x91~\xcc\x01\xa9\xdb\xa5uE2\x045o`\xa0\xe0D\xb8\xe3^\x8e0*\xd9I\x83\xd7\xb0\xc6\xd3F\xa8\xd5\xbey\xdf\x04\x1c`\xe2\xa6\xf1P\xe0\x1b{w\x1d\xe6oN\xe2\xe1\x81\xce \x8a\'\x9c\xbf\xd1\x1c\x97\xcd\x84#\xb0\x14\xa0\x07)\'\xea\x06\xef\x86\x81\xf8\xe7\x83\xa0\xea\xfa\x0b*\x1a\x07f\x8f\x00fB\x12\x90\xd1:jO\x9a\xf7\x7f\x97P\xce\xc3\xd3\xda\x82\x99\x1f\xf9\xd4\x9b;\n\xa9\xb5u:\xf5O\xde\xe57\x18\x1c\xc1\x9d\x88\x9f\x08h\xff\xa4k\xfa\x18\xcaT\xc1S\x10\x04i\xfe+}h\x1b\xe3<\xba\xdb\xd3{H\xbd\xa6Z\x9f\xb2\x9e\xed\xc4\n\xc1O\xc9b\xf3sH\x04\x83\x13\xa9\xb3#-\xd1\xfb\xde<Nv\xe0\x92x\xf6\xf0\xfa%\xbf^\xbe8\x9c\xc4\xc8\x9f\xfd\xae\xc4\x82k\x8b\nT\x01F\xa0\xc5\x87\xe21\x80\xa2\xcd\xb3L5E\x80/\xdb\x17qOXwW\x07\x06\x17\xea\x9f\xce-\x95*c\xc5\xeb\xcb\n\x82S\x8e\x8fHW\xf9\x93\xe3wh}q\x8a\xaa\xcd\xfb\x9f\xf0\xe4A4\xc0k\xa2\xa1Ca\x0cSh\xd3\x1cBu\x0exk\x15\xc1\x9bL\xc3a9@_i\xc8u+.\x89\xeb\xafS\xe3=KeeU\x1a\xb5\xce)\x0c\xb2>\xe6b\x03-\xbd>L\xfc\xa2\x87\xe4 \x90^Z\x0f\x97d\x98\xbc\xf9\x15t\x011\x82E2\xe48!\xaf%\xb5\x9bW\xa1T/\xa4\x049\xd6\xce\xc7\x18>\xcdo\x08fr\xf0\xeb\xcb\x85\xbfJ\xd4\xa6\xb6\xdd\xf6b\xc4$\xc5\xc4F\xc3\xe6{d\x10t\xf9\xbfK\n\x85V:g~|\xbf\xcaG\x9bq+ZJn\x1b\xf6\xf4\xf6\xea\xf9\xeb\x89\x15\x1e\xac\xa6\xb6<:\xce\xd4r\xff\xce1\x0c\xa6GvX\xff\r\x88\x0b],\x1d\xa6\xe2\xbf9T7\xb6\xc9(\xb3\xc0cR\xa2\x03H\xed\x80\xd2w_\x1e\\\xa9\xcb#\x0b\xc2\xa8\xbcI\x13\xd9\x86\xb7\x94\xc3\xbd\x03*tvw\xb7\xd7n\xfc\x13\x9f\xa21\xce\x8e@\x02\xb4Z\x19\x7fc\x8a"\xf6S\\\xfa\x91\xec\xe9\xc2\x11#\x0fi\tO\xff\x04-\x9e\x8c\xb0!\xd8\xf7\xac\xa6\xb0\x99\xaa\xe7\x99\xeb\x04.Y\xbe\xa3\x81\x8dvY\x92\x89\x86\x07j\xb0\xfd\x8f97\x10e\xcfn\xa3RD\xe3\x9f\xaf\xf6>(G\xac\x1c/\x8c\xe8jR\xd1\x07#co\xb6\xbe\xf2wL1\x8e\x83\xcb\xd2}7\x95\xbb{W{\xd60\xfb\xa0\x0e\x92B\xf5\xb4\x88Gz\xac\xea\xfe\xd3\x93\xbb7\xe2\xc1\xa8z\xc2\xe7=C\xbe\xb1\x9d\xa3\xceU8g\x1bJ(\xc6\xc0SE\rM\x9a\r=J\xac6\xff\xb3\x8a\xd2\xa97\x17\x16\xed\x9bE9\xed\x1e\x06\x06Yc\xcbd\xe9\xcc>3\x1c\xe5\x97\xee\x8cE\x1a\xbe2\x9d"(\x11\x8e\xfa\xac!n\xec\xdb\x98\xb3\xba\x1fSFx\xde\xa6\x80M\xea\xf0\xe6d\\2 ^\xc5\xf8 \x84lb\xe3\xd1\xa0\x1cY\xa2\xf3\xef\xcc=\x0e\xa9\xf5P\xcd\x8f\x9dN\xb1\x1d\x9d\xa7\xcd4\xef"d\x0bGC@\x99\x11\x16\xb1\xee\x8dlE\x00\xc2\x86\x92\x97\xf9Zk\xf0\x19[1`G\xa1e\xeb@\xbb\x15x\xdf\xe56r\xdc\xe6\xd1\xb4T\xf0\x80\xfc\x03\xf3ni\x01\x85Oo\xcc\xcc\x19_\xe89\xfc\x8fRO\xe7\xb6\x86A\x8eX\xdc\x88B\xc3"h\xb3\x83\x8f\xbdEz\xf5\xfe\xf3$\xc3\xd4*\xe4\xcc\xe7\x14\x93\xaaG\x1f\x9b\x16\xb3Ju\xb7\x83\xa2}\xe3\x927\xc5I\xabtk|j\\\x8f\x03\xe6\xed\x80#j\xde\x10\xc1\x01p{|L0\x0bL\xdb\x0f\xa0R\x8e\xbf\xef\x1a\xa7$\x8c\x83U\x07\xa38\xc3z\xb2Q\x88\xe6\xb9\x1cx\xd1\xe5\x90\xdc!\xe4\x93\x08\x00L\xa9\xb3\x0b\x1ch!0\xbe\x8e\xba\x88\x8a\xcf\x08\xea\xb5\xe54\xd75\x14\xd8x\xa2\x19\x01\xfe\x9c\xb9W@u3\x8cF8PT\xa7\xff\x89\xea,0i{N]\x8a\xc2.\x9eT\x1a%\x84\x07\x866}h\xa6\xca\xf0\x11QG?\x93\x04\xb5\x80\xd6\xd5\x16\x16\x99WD\x11\xd1\xecJ\xfe$\xd7YM\n]\xd8d\xe2+\xb6\x05\xf1\xd1||\x86\xe1\xcd\xe7Oa7H\xe9\xed\xb7\xb5\xc5\x90)\xb4C\xac1\xb0C\xb9\xc4L \x82\x08\x13W\xd5\xa2R4\xf2\xa5\xfbk\xa0qs:\x1d\xc3\x05\x06\x99\xe4\xefS,\xa3\xc1\x1eC\xc2\xb5\xe9<mR\xc8\xab|\x8c\xfc\xf5=%GiE\x93C&#\t\xf9S\xea\x1d\xd0\xb1\xcb_Y\xc5\x8a\x8a0\x9d\xc2\x1a7`\xab\x1e\xa0H\xee\xb2Z\x0e\x16x\xafq\x0bz\xb2\xd5Z\xdb\x96m\xe3\xcc\xd8h\xfa\xd9\xadIcj\xfa \x02\x91\xeba&\x18\xdb\xd7<X\xcd\x9b1>\x1a\x9e\x11E\x8eSW\xcbK\x16\xacEnn\x9f\xfc\x03\x15\xdb\x17<o\xec\xabh\x187\xe0i\xa9]|\xee\xba\xa5,\x9f\x1a\xa4c%\x0bJ\xb2\xcc\x08\x86"\xda\x10\xc1s\xbb\x82\x83\x13\x9f\xaa\xbe\xa8\x8e=\xa0E\x93\xe53\xb7x\x12\xd1\xa9\xdbom\xd1w#\x90\xc9\\\x9eh\x88\xc6\x8fD\xb7\x98\x0b\xf5\x8e\xdf\x1a0\xd5\x9e\x1c\x14\xdbew.ac\x9e\xc9\xbc\xfe\'L\xb6\xb8E\x0f\x93\x98%c.s\xfdx\xcfW\x9f\x90\xbaJ\xa0\xb4`\xb1\r\xec\xd3\xc5]\x1e\xca\xd1)N\xddq\x8ct\xdd\x8et\x0c0\x83\xdfC\x15\xf1\xc5\x05\x00\x8e\xd4|\xf0pHy\xd2 yK\x87f\x91\xeb\xa9\xd9\x0b\xcd\xcd\xbc\x8b6G\x19=\xdaF=\xa2\x80\xfe\x907\xbb\xe0\xae\xadeh\xbd\xb2\xf7S\x8a\x819\xf8H\xe7Z?\x0c?\xb8R\xbf\xf1Ju\x06!\x08NT\xd0\x8a;P\x98\xba\x1dIT\xcbO\\,Q8\xf4\x0b\x12\x99\xdb\xa9P\xf5iS\x05\xd7\x16hO\x80}\xa0\xef\x8b\xb1\x83\x08\xad\xf5\xcd\xad5\xd2\xdf\xb0\xcc\x9dFF\xa1\xbc\x8d\x05\xde\xc1`E\xb5\x91N\xd6Y\xee\xdd\x93 J^,\xa9\x08\x94\x17_|\x96\xab\x0e\xc6\xc4\x0b\xa6\xb5j\x86\xbbkJZ\xd5Wi\xa7\xf0\x90;\xa1X\x17\xe4\x1a\n\xd0\xc5\t\xf5\x89\xf6\x85\x97;\x05>\xe3\x08\x0e\xdc\xb5\x8a\xbcAx\x04\x86*l\xd8W\x8c\n\x95]\xfd\xb5\xfc\x10\xff\xf8\x1bk\xc4\x81e\x80\xa0\xf8\xca\xaa\x1c\x9e\xc3v\x0c|APG\xb9\x1d\x16\n\xe0=\x0c\xea\xb0^\xdc\xca("\xf2\x0b\x01\x86\xaa\x1a\xf5N\xefW\x86\xd2{>O+9\xe0\x8c\xb2|\xe2\xf4\xfe%F\x7f\x1a 5\xdbe\xebv^<\x18\xba\xf0\xe2\xbc\xba\xc9\xb0\x19\x12\xcc\xc2\x00`\xef\x10W3?\x7f{\xe5%\xc4!\x80EU\xf0(\x9d\xe3\x8d(\xcd\xbe\x92\xe7\x18\x11\xc8o6\xcd\xf2ES\xab\xaa\xc9\xa3\x0e\x94\xb6=\xf4\x16\xc7\x08\xd8<\xdf-7\xd7m\xda\xf0\xef\x10\x96{\xda\xa8 \xe9,1%4:9\xf3k\x0b\xd2\xf9\xbbO\x8c\xf9\x0c\xd8\x83\xe9\xbc\x17Wm\xc3S\xd6\x97\xf4~Z\xb0&,\xb6\xdd\xf1\xc0+\xd6\xc2\xd0\xc9\xdc\xf6M\xc9\xf3\x1a\x8c\xf9(Q\xf4G\xc2d\xa1\'\xe7Ce\x9f=\xf1\x9e\x8c\xd2\xe2\x9e\x88\xf1j\x82\x01\x82\xf4\xaa\x97\xd1\x05\x82Y9\x06\xf0\xba\x9e\x8f=6\x00\xf7\xa4\xfd)\xcev\xa8Ia\xb7.v\xcbg"\x02\xdd\xc0\x99\xbd\x19,\x13\xfd\x84\x9e\x1f}\xd7.\x17\xb9\x04/C-HJ\xf3\x85\xa3\xf1r\xd5/F\x1a \x8e\x89\x7f,\x8dY\xfd\x95\x06\xb4\xb1\x91:\x8d#AV*x\xfc\xa9\x8bD/Z\xcc\x18\tg\x04\xc1^]\xca*$\t* Hf\xfeQ\xde\xe0\xdc\x1br\xd3@\x18~\xbcl\xdb\x8b\x94~\xd8C\xa0\xeb]\x11\xa8\xe8\xb2\xd4|\x91%%\xe2]\xf49\xd2\xac\xc0\xe5\x08\xbf6^$\x83\xff.\x18%\x9b{v\x04\xda\xe2|x3\xd6\xb2\xdc\x8dU\x93\x14\xa1\xad\x7f\xeb6\xb3\x03\xbb\xfb\x0e\xf6u\xd8A\xceQ\x8b\xdb\x90xrz\x14-7\x8b\xa9\x91\x1b~\xc8\xed\xd9{\x90^:~\xc3jIx\x17[w@\xcd\xb0\x94\x91kO\xe7\xdb\xd6\x85 \xb6\xd8\xa7\xe3wL\xd8\x89\x9d\x9d\x8fK\xd3\x05\x95\x15B\x12KBG\xe6s\xc4*\x96\x9fa\x1c>\x7fC@8\x86W\x01\xf2_\xb4f\xd9\x84\xa6\xbc\x93\x9fI\x88\x19(Es(zu\x82\xec&\x13i\x1c-\xc2\x1f\xd8\xd9\xa1S\x1d4\x91\xcb\x13Q*_\xa9\x81S\xce\x93<\x0b\xa3\xb6\xf5\x8e\xf8\xf3\x1f\x02\xd5_w9\xa7+\xaci\x05\xe7d\x98\xa1\xcf\x08\xa8!\xed\x0fn*\\ag\xf7\x0b\xce\xc5\xb3\x03Z\xf0-6\x04\xbfGv\x19\xfbe\xc5\xab\xa1\xb7cVb5\xa4\xdf\xce\xc8\x99s\xeb\x88\xa1\x9b?D\xd5P\xa0\xfa\xf4L\xfa#xh\x04~\x1f\x84\x8a\x13\xc5{JY\xafbXh\xb3\xf5\xb5&\x9bJ\x04\xcc\x8f{\x1a\x84\x95\xe9\x8a\xd3\xba\xd7\x81\xe0d#\xab\xc5. \xdf\x9d\xaf\xe3\xf7\x1b\x06`v^\xaf`:\xc8\xf9K\xd9\xd6\xf7\x9a\x99\xbe\x9d\xbe\xab\xd56\xdex\xde\xda\x10\x04( \xa6\x18M\xe8&\xbbr\x0b\xd9hX9\x1c]\x12\x17{\x9bMH\xee4r\xe2\x9d\xd5\xcc/L\x17\x90*\xc4\x08\xfc\x8eV3\x98\x1ey\x8a`)\xfa\x0c\x19\xde\t)yt\xc1H\xd8O\x95\x0fU\x0f\x94\x0bf\x15\x95~J\t\xf7,jOS\xda\xe3`\xb3\xb1\t\x80\xabs\xb0\xfe{7\xff\xc6X\x98\x96i\x05\x14\xd8\n%w\xd3\xb8\xb4\x04\xd4\xcc\xf4 z\xa0\x950\xb0\x14\x0b\xea\xc0r\x1e(\x9a\xcc\xde&H\xc6\xb6u\xaa[\xb4\x80k\'\xe2\xe8\xefg\x0c\x8c)1\x87\x83t\xe1[b\xa8\x03n\x1a\x9b\xd1\xb5\xe846\xf0\xa7\x9e\xa9i\x88\xd4\x9ez\x88Np\\\xcb\x11lZ\x82\xfc9\x7f\xf2\x82\x17Pt\x17\x0cS\xbe\xf5\xae\xe8\x9b\xd1X\xe7\x1a\xa8\xb8\x8d?\xd3\xe94K\x9dy\xbbK\xd8\x18\xb1\x8cg\x07\xeez\xa6\x1cQ\x16\x9d\xf6n\x1a\x98\xe2\xaa\x86\x1c\xe2\'\xf7\xf4\x8c\xf1s\x0f0\xe4\x1a\x92\x8c\xe78\xcf\x85j\x1b,\xcbE&\xb6M\xda \x12k\x90\xd8\x1f\x1a\x0c<\x8f\xa2\xf8\t\x06\xd9\xa6s\xda=\xa1XxG\xebJ\x82\xc4\xa6*N\xcd\xc7<_V\xc6\x10\xa4\xd88\xb2\x080\xab\x03?\xa7\x1e\x11\x01\xa1\xd2\x80\\]\x83c:D\xa4\xca\xe0\xe8\x8d`\xed\xeb\x9d\xca\xb5\xc3m]\x91>u\x92\xc7r\x99\x14\xa0\x8d\xd3\xf8?\x1f0\xdam\xef\xa6\xbcr\xdeV\xc4\xb2\xafa\xfbVg\x96\xfd\xbc\x1bO\xf26\xcd\xe1q\xd2JB\x81\xe8\x89o\xef\x9f\xbaU\xd9\x9e\xc4\xfcd+?\xfa\xf9Uu\xff\xce\x80\tu\x83||\xac\tK\xe3\xdc\x08\xed\xa3\xf3\xad\xce\x91Z\x9cU\nt\x03\xd9\x11\xc7{*\x1e%\x11\xac\xb6\x19g\x96\n\xb1\xbd*\x97\'\x7f\xf1U2s\x8e)\x1b\xc9\xf7\xe9\x07\x9a\xb8B\'\x16\xe4wg\xf3\xa0o\xf3x?@\x7f\xc4\xe1\xf9\xd9f\xf95u\xa2Y\xf2/\xde\x87\x9d\x9f4X\xcd\xb5\xccG\x7f\xb9NxCNmAC\x93\xc9\xa3\xd8c\xc6\x8b;\xb0\xdb\xa9\x064\xedk\x15\xd3\xf4J\xd7\xa2\xda\xb5/\x93\xc3\xd9\x05\x0b\xd1\x0e\xa9\x1b\x82z\xb0\xf3\xb2\xed\xc0\x9bT\xc55\x84\xaf\x97\xd7\xd7\xbe\x91\xa0AQ(\xab\x0b1\xe9\'\xed\xf5\xbc\xea\x9e\x06\xd3\xfa|j\xdd\x03\x813\xaa~\x04]\xb1\xea\x95\xcb\x97\x9d\xdf\xf9<\x14\x1dW\x1c(2\xd3\x8c\xaa|,\xca\xe8\xf1f1C\x02\xc6I\xda~G\xa3\x1aL\x19\x86\x07\x8a\r\x95\xf2\x06\xc9\xcdo\x88C\xbcq\x14j\xc4!\xf9\xac\xb0\x9a\x06Qv\x89\xa8T\xfa\'\xe9\x9aP(\x80o\xe6\x08`\xa1F\xab\xae\r9\x1a\x1d\xf7\x87\x19g\x06=\xdf\xd3#%\xca\x121\x93qF\x81\n\x8d\xde\x92\xd9\xd5\x1e\xfe\xfa\xdb\x9a\xe2\xa4XQ\xb7\x15:fR\x94\xf9i\xf7\xd85\x8f)\x96\x8a\xf3]\x85\x00bK\xd2\x00kNm9\xd0CF\x1b\xee`\x08A\x93\xe4Sy\xfe2\xabN\xd2\xd7\xc9\xd2\xf2AJ8~\x17W\x96U\xe9\x86\x14\x8cW\x969>V\x18\x0cO\x0c\x17p\xfc\xca\xc49\xacT\xea\x85Av\x10\xb9\x96\x05\xf8\xb1\xf0\xdf\xd9\x08e\ru\xce\xd9\x87\xc8%\xc2\xa5\x904\xfb\xc1\xfd\xd9\xb9f\xf7\xad[\xdd\xf3k\xd7\x01\xa1 !o\x0b\x8cy\\q\x826_\xa6\x9f\x0f\x9e\x9f\x88\x94\x0bT\x88\x85f\xe4i\x82\x97\xac_\x7f\xbab\xb3\xde\x96BG\x1e\xb7\xfa\xa6\xefK\xf7\xf8\xfd\xe4R\x82N\xbe\x1d\xfb\xbcL\xe0\x0e\x10vr\x9d\xaby\x164\x17\x7f\xb1\x03#\x89\xd3\x1em\x95\xdf\xe8p\xc8!\xb6\xe4\x9e\x8fI\x8ax\xf3\xff\x19%2:\x1b\xe9i\xf7\xe9\xd4\xd3\xb9_\x08\x85\xb6@U\xa8k0\xf3\xac&\xa5\xdd\xbd/\xa8\xde\x86\xd91\xab<D\xed\xf9E\x92\x15(\xbc\xc9M:)\xf1y\xaa\xe0c\xcd\x98\x90o\xf2U\xab\xbd*$\xde)\xfblk\x08d?\x0b\xc6\x08\xe9\x05V[\xf3\xef\x7f\xb9\x8e9>\xf3\xd3\x06\xfb8\x94\x02^\xef\xd1\xba\x93II\xaa\x9e\x1c(\xc5D\xb34\x8f)\x97\xc3H\xd4\x89\x8d8\x99\xd0\x80*!1P\xdb@n\x92\x99\x8cW\xc7\x80\xc0\xaa\x07\xab\x99+HM"\x9d\x1a\x00}\xd4\xb1\xa1x<\x82\xca\xf9\xcd\xb9\xa8\x8d:\xac\xab5(\n\xc8\x82p\xf16\xba\x13\x9e\xf0u\xdd\x13\x83w\x00\'66\n\xd4\xd0y<\x0c\xc6\xd0{\x06\xc2\xa3]\x8bC}\x8c/|\x1d\x1a^!D\xa8\xd6\xea\xf8\xcf]\x13wH\xc1\xdb\x96\x10\xbd5~\x0co\xbf\xac\xd4\'H%\x06\xd6\xe8+\r\xf8D\x11\xc5:\x1f\xce7\xc0\x9c\x92.WU\x07m\xdd\xeb\xc9\xaaQs\xc7=_\x06?\xbc\xbf\xca\xf7L;\xe9\xce\xd7\x9e4pf\xbc)\x11,2j\xe1\x9a\xdd\xb6\xab\x06\xa6\xd3\x18\xf1\xe5\xd97\x1f\x1eW\xde\xd2g \xb8+|\x08\x10\xd9F5y\xe4#\xbd\xa3\xa4H \xa09\xb5\xc7^\x17\xdd\x8bL\xac\xb3hI\xbe\xa0\xf6@f\xa10\x98\xf7\xfb5\xb5\x81\xed\xe2\x9a\xeb\xc2F\xa1\x12\x93\xc8\xd0\xc2T\xe4D\xd8\x88$\xa3\xa0\xb27xt\x98\x8a\xe1y\xd5\x07X\r\x1d]7{AQ\t/\xf3\x97\xa8\xab\xec\xebI\xd2\xbc\xebG\xbf/\x12|\xe5\x8fN\r^\x9be;J\x0b\x84\x0b\x00\xad:\xe9&PN~\x98Bu\xd0\n\xfa\xd0\xd6\xbb\x9f\xa0=\x8b\x1e&}\x16\x9a`\x14\x93\xd1\xdcg\x14\xdfi\xfcZ\x1a\x99\x94Hs\xaf\x1b(}\xd9_\xf5\xc2\x04\xd6\t~\x05K\xde\'\xb2\xd9t\x95\x85\xa5d~r#\xb9|L\x8fFl\xcf\x8e\x9ah%\x10\x8d\xb5%\xdd\xde"\x8b\x04\xa8\x0eT\x12P\xe0A\x8d\xa5\x9b\xdd\xaaI\x90\xe7L\xd2#A\x81>uRh\x7f\xa7BF\xc2\xb8\xbc\xb2"\xcb\x83\x86\'\x92\xd8\x1b)\x0c\xd5w\xfa\xbc\x03u&\xb3\xc60\x15\x10\xf6 v\xbc=4r\x00\xb8\xc7\x175\x9e\xb6\x0f\xa4\xe3[F?\xf5E\xfe\xea\xe1\xad\x04\xf9\xddh\xb9\xac\xd2\x9a\xf8m\xcbS\x89\xef\xea\xd6\xa9Jy\x0c\xa4\xda\x16\xdf\x15\xac\xa5\xe9/\xff\xa9!\xa3\xba#\xe7C*7\x16\x8b\xc7^\xbfD!\xd8i=\xe5\x80&08\xd4\x91\xfan\xda2\xca\xc6F\x8c\x99\x177bk\xd2hr \x91c\x92\x8f\x81\xb8\x9e\xce\x0b\xc8S\xb5"\xd6c\x82\xb9S\xea\x06\xc1)\xa1\xf1e\x03gWCHH\xf0x\x826#s\x8b&\x06\x02\xec\x14XG\xd5z\x17x~ld\xc7\xc8\x83C\x12(\xdf\x9d\xdbA@>\xf9\xd0\xd5\xe9O\x8cn6y\x81<\x8f\xed\xa4U\x99\xef\x9e\x13\xfe\x10\xdf\xecT\xbfM\x8d^\xc9\xb6\xf1\xb2JO\x16c\xb6K[\xf8\xa4\x8d\r4\xb4]\x81:Q;\x1cx(O\xac\xdc\xe2\xcaF\xaeya\x0b!h\xb1\x94\xf7hx\xf4\x03A\x94m\xccP#\x12\x81@\xa5\x1d\xfd\x92\x0f\x1b\xe4\x8f\xc0\x93\xc2\xa5\xfc*\xc9\x9c\x19\xfd\xeb$\xf2\xe2\x1b\xe3\x8c<\xe8>\xfac\xf0R\xa0\xa0\xf6\x1e|`G\xeb\xcbV\xd5\x91\xc94vL\xa3\xb3\xf0\x87,u<Cd0\x92\xca\xd5\x97q\xbd6\xad\x16d\xc6\xa7w\xc1\x13ha\xcc\xc5\r}V\x08\x97?\xab\xbe\x9a\x06?I\xddxH\xe8a>\xc5\xbbaN\xa4n\xc3\x7f[\x92\xfb\xf4\xcb3Q\x1e\x94\xc8\xb8T=\xdaz\x17\xdfU$!WGL\xcdE~9.\xa2MT\xfd.l\xf1\x01\xc6=n\r.\x98s\x1eO\x96-1Db\x115\x93K\x08$\xd6\xaf\xe7\xa4kzH3\xfa\x88\x922\xf0]\x95%\xa3\xfd\xd6\x89\x97\xb2\xa6\xc6]\x10\xbf r\xd2Q*\x0c\xdfC\xc7\xa2l\xef\xe5\x08Y\xe7\x85\x97\x8d\x02\xa9/NX\xdbG\x9d\x89\xa9\xdfKU\x81Jl\x94 \x99\xc0\xdf\x0b\\a\x83\xdf\x9f\xc9\x89D\xc59\x12\xa2\x95C\xd4\xc3\x9d|\xa8\xe1\xf0\x9b\xab\xe0\xf3\x81\xd1\xac\xd1\xd4\xee\x97\xa2\xe6t\x9d\x11De\xb4\x1b\xa2m\xd1X\xbbO\x92b\x06\xb9\xd1|\x97\xd8\xb1I\xca\xae\x1c\xf9\xf3,\x0e4\xdccF) \x8b<\t\xa9}\xa1\xf0\x82\xe8\x12i\x96\xbb\x13y\xff\xc6\t\xbe=\xc5\x9f\xdf\xaf}\xc9X\xc1]\xc5\xdc\xe2(5\xab6|\xe2\x8c\xe3\x8c\xdf\xfd9\x99\xd7]\x1a\x13\x018Am\xd66j\x8cjWE\x95\xf8\x99\xbf\xa2Bw\x9e\x0b\xd7,l\xf7\x96l\x93\xc1\xc8\xa2\xf9\xd3sg\x0e\x16B\x92\xd0\xaa\x04\xf5\xf4g\xa9v\xac\x81\x97\xbb\x8b\xd2\xcc\xa1\xa8\xfd}\xa5\x03+br\xc01m\xb27\xfd\xde\xc5\xfb\xfa\xb5\x85K.\xafqw\x93J\x10h\xe8\x95\n\xf5\xf0piN]\n]\xbc/\xca\x16\xba\x19\xdc\xaa\xa3E!n\xaa\x7f\t\x07H\xd6\x8d\xf9H\x1f$z?Ht&\xe4]B\xa7\xben\xb3\xfdj\xedk\x1fY\xdb\xcd\x82\xd2t\xfc l^Yi\x1e\x0b\'\x0c\x92\x9d\x81p\xdaH\x94S\'\xb5\x98\x120\n UsR$\xe7\x96\xda*w!\x89M*\xaf\xc9\x80\x99\xc9\x14\xa7\x16\xf7\r\xe4P5\x90\x8f\x10\xdb\xb6}\x0bi\xd1S\x8eS\xcf\xc6\x111F\x00\xf8\xd8)C\xf4_\xc8\xd1\xe5\x08K\xf0\xaa\t\xb0\xaf\x9b\xae6\x0e\x96ST\x8c\x0f~P\xb0l\xca\x08\xf7s`&4\xeb\xf2\xd5\x92\x8dD\x12F\xb3\x95m\x90\x03\xc8.\x9e\xfd\x98\xed\x99+\xe6\xc8\x16\xd5\xe0v\xdf\xf3L\xa6\x94\x8b:W\xaf\xd3R\x16\xc0\x89\xd6\xd0\xaec|#\x06V Qocv_A~\x1f\xfd\x1e\x98\x9f\x1b\rT\xf7\x9cc\xd167\x18\xd0!\xec\xf1s\x9e\t1L\x1fy"`\'\xa9\xcb\x8e\x11BY\xd6\x96gKZ\xc2%\xc1pJ\x83\x9d\x0e{\xfb\xae\xa9E\xd4K2\x07\xb6e\xcc\xcc\xb1\x1f\x11\x06;\x88\x18>|/\x02d\xaf\xf8U\x11"\x1a\xe3\x97\xce\xdd\xdd\xcb\xa4\xcb1\x13\x95s\xe1\x022{\xcf\xa4BQn\tO\xe4\xe0~\xdeZm\xec\x0cL\x88\xe5\xa0~I\x14]\xc0v\xe9(G\x0e\x82\xdbh\xf2\xd6\x17f\xc1\\\x7fQ-M\x82\x04\x89\xbeGdh\xa6O\xe6\x1c\xf2\xde\xff\x00\xb4u\x19\xa9z\xf9\r\xe7%\x95\xad\x8c(?C\xa5QO\xa6\x8cZ\xad\xf7\x10\xe0\x0b\xd0x\xb1\x94\x86\x0b\\\xa3\xbc<9\xef\x15}\xea\xba\x8f\xf9\xab~\xe9\xbe\xe0\xe1 PF).\xe4\xb2\x17=\xe4\xdb\xef\xe5Y\xe10\x03\xd0V.Z\xa6\xd8\xb7\xad\x82\xb8\x8b\xc6\x03H@\x91W\xc1\xe4\xc3\x06\x9d}Pt\x9d7\x88\xf2a\xf5\x8c\\\x9dP\x8e\xaa\x9a\x88\xa8\x9f\x1d\x88z\xf2p\x1a\xea\xe3>(\x00h\xfa\xa4<\xcb\x9f\xaa\xba\xa0\x98\xac\xf4\tP\xaa\xcd\xb0\x02\x1d_^KB-C\x0f\xf4\xb2\xc6\xeb)\xc7;\xe3"\xc2\xb54\xaf<\x8a\xadF\xee\xcdS\xec\x1e\xc6\r\x88`ys\xfaQFp\x800\xde\x17\x9d\x04\x1dU\x88;{\xe8!\x9e\xb3l\xf4/ QCI\xdf\xe0b\xb1\x08&M\xfb\x9f\xd8\xd1\\a\xc6\xe0X\x87\xeaNF\xbdN\t\x05\xae\xfek\xc9\xa5\xd0OB\xe8\xdc\xb0\x98e\xea\xe6\xcd&;\xc4\'\x17\xfc\xfa\xcb\xbe]\xe6R\xc35\x87Sp\xd3"\x7f)\xae\x9b\xb2\x0c\x92\xc8\xec\x8djx?\x1e\xe5P\xe1XQ\xf4\xe1AXj1\x1c\x7fE\xd8d}\x02\x17t}\xb7\xcd$x\xda\xe2\x13\x93\xd0\x89\xbfe\xb7\x1aC\xdb\xfc$SE+\xa1\xcc\n\xe1\xb0\xb3\xedp"w\xa3)\xa5\x0fL\xf17)\xa0\xf9x\xdc*\x8a\xd7SL\x0b\x9b\xda\x8d&\xa9A&\xbc\t(\x9f\x04\xcfB\x86\n\xa1_\xe1\xde\xab\xfb\x10gK\x1a\x88\x18x\xa4v\xffU|\x93\xa3\x07\xc8A\xae\x8c\xda\xf9\x96\x8b\xc1\x0f\xcf}DN$\xb8\xf8\x0c\xa6\xe6\x85\x15\x9c\xa2\x9e#E<\x98\xaf\x9bs2\xdd\xb3d\xe3\xc4\xb2V\xfb\xd9\xcd\xc6\xabg\xf5L\x97\'\x9f|\xcf5\x1et\x98\x90\xe8Tl\xc5\xf2eV\x0e\x9es\x8f\xd2\x8f\xa4)\xf0\xe5\xdd} \x82\xa32\xf4R\xbc\xac\xb5V\x06\x1f\xac\xec\t\xdb[*\xfa\xfd\x15I\x1f\xc4\x87c\xfe\xfb\x94\xe3\x05\xf5\xbe\x10\r\xe1\xe7q\xba\xd0\xd3j\x0e\x85\xf5\xeaUq\xcb\xee\x18\xfcF\xe5\x04\xc8\x14eN\xdb\xbf\xb6\x95\xa7\xadL\x8f\x1b%.D\xa8\x9b\xe7\xc07\xeaO\x9a\x9d\x82A\xea\xf3\xce.\\\xd4\xc6?\xd8\xfe>\xe5\xef\xb8\x90\x7fnY\xe9\x16~\xd3O-\xbaV\xdd\xd5Ik\xdd\xd8\x8b\x0f"\xc1A\x98\xcb\x93\xb4\xa8\xf5\xe9\xeb\x08\xd7)\x98\xdd7G\xcd\xa7W\xd2\x9a\x1ah_z\xc9\x98\x02\xed[|\x84\xfemK~dB\x1b\xe4\x0ch\xfe\xab\xb8\x08\x9e\xd9\x06\xc3_{(\xa4f\xec\xd4C\xe4\xfb.\xb8\xd4\x97\xden\xe3V\x16\xfdS\xe8K\xd3%\xe7\xaf=m\xbb\xaf\xd6\t\x14c\x82\xabg0\xd65\xcc\xa8\x94F_\xa9\xe4\x85\x9b\xaf\xad\xcf\xa9\x07\x11\xd4K\x89\nDD\x91\xff\x12\xc2\xa8\x00\x1bQN\xafN\xa3\x1e\x8ext\xaf%j,\x1b\x7f\x14\x08QE\xc3\xaa\xca\x8d.}\xd7[n\xc3m.\xc6#\xe6/\xe0}\xfbG\x10>F\xf8sx\x9b~\x7fx@.\\\n\x97I\xcd\xd1\xd6\x94\xef\xd2{o\xd6\xf0\xa1\xadg\xc1\xc6\xf2u\x90]/Te\x91\x0f\xb1S{\x1b\xe6\xba\xd1\xf1\xac\xa8\xe2\xf0\xcb\xa1\x9e,\xa5\x93\x8c~A\x01,\x12-\x97l\'\x1dl\xe8U\x15\x91i\xbd+\xa2\x85\xac\xc3\x01\xd1\xf3\n\xac\xbf\xde\xd2\rd\x9eh\xc1.\xe0I\x92\xfc\x0b\xf4W$g4\x9d\xae\x7f\xbc\xb2\x80\x08\xf2,\xfc\x99\xd3qZd\x86P\xf7(P\xfe\x17\x7f\xb8c\x8d\x86\xaa\xecD\x95V\x985\xc8#k\xc7\xd7(\x88\xd1\xbe\x98\xe7\x18\xe8\xc3\x847\x92\x06\xf7\x04\x03\xd3\xb3\xfa-K[\xdc\xc9\x06r\xe8\xb1)\xc5,\xb1\x9dtL.\x88\x16\xbe\xe2\x12\x8f\xa8\x9a\xb7Wj`\xcd\x1c\xa8+\x03Ri\x98\xba\x7f\xd2\xa8\xc9\x17\xa9m\xee\x1bRn{\xe3I7\xe3\x85\x18M`\xfaX\xb02\xe9\xc4\xdc\x16\xc3\xaf\xa8\xfb:j7\xec4\xf6T\xaa\xf9\x07\xa9\xacx\x05\xb0t\x95\xc2Z/\x19\x1d]\x02\xe4\xbc\xa6\xa3\xa9\xc5Z`9Ye\x84\x8c\xfdlS\xd0\x9aS"+)\x8c\xa6\xcfKA\xf2\x07F\x9aw^v\xcd&\xd23\xffC)J\xaf{\xd4\xa3~\x914M\xf2f \xa0\xf43F\xfcEh\x0c\xf2\\\xd2\x1cA\xa3=o!|,\xb5\xfe\xd7\xa6\xab\xc0\xd3\\\xc0$\xb5VR\xd96\x98\xe5\xf4\xed\xda\xb9\x98!{\x08m\x7f\xa5\xfa-H\x9c0\x98\xbd\x06\xd9\x8fR\x1d\x95M\xd8\xea^\xd9\x0b\xcf%\r?N\xb8\xf2=Ka\x97I\x0c\xb7\xa9\xfc}#\xfcL\xb9\xee\xfa%\x8b\x18\x92\x9f\xd3\xf3\xa8>\x9f\x8d\x14\xd9\xf6\x89/\x85\xad\xc0G\x9a\x90\x0f\xa1<\xbb\x9dq\x80~3\xd8~\xe2|\x19\xcd\xbbr\xf7\xda\x04U$H\x1a\xa0\xd9\xb0\xd12\xeewL\x9b\x84I"\x12-\xbb\x1b\xc4\r\x8a\xaa|\xd0\x0f\xd9\xfcdR\xea\xa2\xa3w\xc9\xa7\xac\xcb\xd0fu\xf1\x97\x15\x06Z\x0e\x98\xa1\xfc\xb2\x08\x1d\x04\xac\x04kth)W[?u\xd2\xdc\x11\xed\x12\xc3\xff\xec\xe7B\x19EElK\xeb\xf5k\xdb\xbc\x0b\xb9\xb08\x04\xb2\xff \xa0\xe4\xf1\xa7\xcd\xd8n\xd3L|\xf7\xfd\x17\xa9\xe6\x8fj\x12\x99sA\xbb!\x9a\xb7\x85(qJB&3w\xd2K\xdcXfZ:\xef\x8f\x9d\x03\xc3Y\x17\xe1\x9c\xa2O\xd3\x90\xc45f\x1825\xad\xba/\xf8\xc1\x14\xefL\xee\x80\x02\xe90\xa3\x80I\xb5\xe2\xdeY\x99\xebdy\xf3\xc0\xd4k\xb6\xfb\x1b\x9eB/=\xb9kO\x94\xcc\'\xdf\'+\xd3\xed\xd0\xd6\xe3\xe1\x1fE\xbc\x89\xfdq\x02\x8b>-\xb1\x9a0\xe5s\xf0\xb7Vd\xe28\x06\xd0R\x9b\x05\xed\x846\xb9\xce\xad\'\xbc\x1d\x91na\xbb\x9b\x04\x8bu?DT\x1e\xc9\x1d\xc6\xf4\x1bF\xea\xa8\xc9`+BV\xd39H\x88\x82\xdf\xb5\xb3\xbf\x899\xedb\xd8\x80C\x99\xc6V\x8c\xad\\\xd9C\x84\x05\xb1\xbf\xe3\x98[d\xe1g\xef\xaag\xfd\x87\xa3\xbe\xd7;$\x8a\xb1\xe7r\x14\xddz\x1a\xa3\xe4+\x03\xd2\x0e$\xbfm\x02\xfbe9V\x9d\xf7\xe7\xcb4\xc8%"\x17\x86x(\x0c\x0cQ\xb1C\xf4hK\xc0\x1e|r\xcc\xeb<\x84x\t\xb75\x02\xe8|\xad#\xcf\x80o;\xa4?\xe0\xa5$\x06HB\xb4NJ\x8c$6m\xe7\xf2)\xa2},\xab\xd7\xd7\x0e<9\xda\xc8#KO\xdbc\xe3\x9dT\xe3O\x04\x0e\x1f9\xef\x85Y\x9bwNDCO=\x1dn\xe4\x18\xcb\x7f|\x0e|\x08F\xdft\x82\xdaK\x18P\x1c30\xb3\xeb;\x92\xcc\xd1F\xcf\xa5w\xe2\x12\x89\xd7\xf7%&=[\xf4\xf8\x97g\xa3#g\x92$\xbeC\x9c\x12F\xd72a\xff\xe6S\x0c\x8f\x86\xb6\xfek\xc3\x88\xc1\xf8\r\x98!&Y\x1f\xd9V\x1c*/\n\x1e{\x8dty\x90B\x9e-A\x98\xed\xb3\x93t\xecr\x9f\xff\x84\xd4w\x87\xc7(/F\xf5\xf50Q\x83\xa5\xcd\xdc\xaew\x8d?\x84\xca=\xfc\xa7\xae\xdad1\x9dOv\xff\xc4\xe0\x9f\xce\x89E\xb1V/\xb8\\,x\xe1ZS\xd3\x15D\x84\xe23\x16\xacQ\x90qP\x97\x1a:\x14\x03\x9b\xa7\x8a\x84\xeaw\x8b\xfc<\xfbF\xc1\xcc\x90a)\xef\x92Q\xb4\x06QL.\xc4\xb3\xea\xad\x9a!\xd7\x14\xab\xa2&\xa27lT\x11N\xa5\xf1\x9e5\x16\xc0\x03\xb1\xfa0\x0374\x7f6\x07\t\x8f\xd6\xb8\x8e\x90\x85\x85\xcfK\xc5\x8d,j\xb2\x8b\xc9\xa9\x18\xf2\xc0\xbe\x8e+\xb0\xfc\xae\xbf`\xe4Rw\xb1V\x14\xe5\xa7\xcfe$\xca\xb9\xff\x94i\x10\xca\xd4\xbd\x8d\x07x\xf8\xcbM/\xd8t\xa4H\xb6\xb4\x978^\xd8\xd3\xde\'\xd1\x1d\xe1\xd4\xbf\xd0\x80\xa3\xca\xe8\xcb\xc5\x15\xf5\x95y\xbc\xc3w\tCs\xc6k\\\x1a5\x05\xdc\x13\t\x9c\xbd\xa9\xc8\xed\x8f\xbeT\x15\xf3\xed\xcco\x81\x85\xa5\xbc\xf6\xd1\x8e\x81\x9eR\xfd\xde\xc91\x85\xc3Px\xa2\'/\xfb:\x8d\x04Clh2\xad\xa3\x0f\xe3\xd4jV\xde\\K(\x95\xff2\xb5\x94\n\xd2\xf9I\xb3<\x8a\t\x9c\xbb\x0b\x004\xc1\xf4\x9f\xbb\xe1-.?S"\x02\xa9\x96\xa8$\xdf\xef\x08\x93\xe7{\xb8\xde>\xa4\xa9\xe8\xf3\\\x97H\xd3#i\x8bx\xc4\xc4=\xa7\xa7\xf9/\xa1]\xee \\=\x19\x03\'\x18\xfdo\x13v\xb33g\x88N\xed`\x84\x9ck\xae\x03\xc2\x91\x89\xfd\xd9\xd8\xe2\xea\x1d\x84\x10\\M\xbe\xa8J\x02}M\xbc\xee\xb6\xf3\xba\x1a\xc4s\x1f\x04\x0c\x0b\xa4c\xc5\\\xdf\x11\xee\xa8y&\tk\x07\x80\x1b^\x99\x12\xd3\xd0E`\xcc\xa6#\x8e\xcb\x07\xf4\xfa\xf4\x95\x0ex</(\x1eJ\x9f\x0f\xa7e<\xcb\xddE\xe42\xb4\xa5\x8dQ\x0ci2\xc4\x7f\x89\xb5Qb-\xad\x136]k\'\x1c/\x19/%\x05\x06\x05\xcdv\x7f\x96\x03N\x1c\xa5\x1a\x9d\x03H2\xef\xdf\tT\xec\x0b\x1da\xfeN\xa0\x8c6\x9a\x970p\x11\xbf>(\x16n\xb6\'f=\xd3\xf2\x05\xe1\xfd!D\x85\x1a\xb8\x82\xbb \xec\x9b,;\x0cP\x16\xa4\x90Dm\x10a+fMr<\x99\x0f\xf4~,l\xdau\x83\xfe\xa0\x86xcw\xb5o\x04\xe9\xde\x04\x81\xd3\xa8\xd6d\xe8\xf5\xf5\xc1s\x1f\xa8\xd4\xc5\xf2A\xbck\xe9\x9a\xcaI\x10P\xfa\xa0\xb8>\x128#\xeb\xde\xdd\xd4\x87i\xb4{\xb7:}\x83\xf9\xba\xb4\xf2\xce\xf9\x89\x97#\x8e\xbc\x84\xdcdj\xf4\x1d\x06\xb6\xea\x82\x06\x84L\xeb\x17j\xce\x1b\x89Ne\x89&\x88\x9a\x83\xe0\x92\xf2\xe1\xa0w\x90-\x08O\xa9\xee\xba\x9c\x91M\xa4b\xb3\x80\x8b\x82PQ=g4\xcb\xd7\xaa\x1a\xd2c`\xa6\x9e\xd6\xc4\xbe`iM\xdfxb\xad\x86\x7f\x0b\x93\xb0V\xf2\x95J\xce\x97\x95\xf6\x8c\\\xe5\xbap\xc6\xdd@\x1f\xa0\xc6M\xca\x8a\xe2\r)\xa7\xa9\xac5 \n\xce\x19\xe34\x80\xbc\x08\x07\x0f\xec?9\x96a\xea+/\x1d\xd09\x93q\x02g!\xf8\x11\xa4\x10W\x8c\xed\x92"U1\xbej\xaa\xf7(\xa2\xd7\x0f\xa2\x80\x0f\xf8\xc5?=YF\xb6\xcb%@\x10;\xe5\xa7\x7f\xeba\x8cu:$R\xac\xec\xb0\xff\xcf\xc1u$\xa6\xc0\xf81\xcbI\xc8W\xf9\xad&Bq\x0f\xa3=\x8e\x11\t\x81\x99\xd5\x00,\xf5?\xf9d\xdcy\x87\x81\xb9\x82\xb7lB:\x9d\xa4x\x15\x9a;t\xab\xed\xd5\xa3\xdd\xbb]H,\xe9q\xbcc\xa9\x84\xbe<\x0e\xf5\xe0Q\x8d\xac\xf09\xf4)\x10\xf7k\x1fR\xd7h\xef\xae)\xd8?UTm~\xa1\xe8\x82\xcc!\x8a[\x8b\xc2\x93\x0b\x80\x93Xl\x9b+rV"6\x01rI!\x94\x8d\x93\xabk\x1d\x89:\xfd\xa1\x05\xf0R\x17\xf6-\xf8\xe9\x05!\xf0\xb5\xa9\xd6c\xda\xb8\xe0\xaa\xc7.\x92\xb81\x95G\x85\x92\x9eF\x7f\xc3\xc2\xf1\xa5K\xe5\xf1\xb2\xf2\xc0ng\xafC\x04\xce+\x960\x1d\x07S\x8e\x11,\x17\x89Sb\xef\x0f\x82x4\xad\xd5\xad\xd7\xb4Pi1\xbd\xce\xc0\xa1\xac\x01\xc5\x87\x98\xd95\xb2h\xf6\xa7kJ\xbdu\x06J\x06\xfe\xd8\xd0\xe3f\x89z\xbb2\xbdv\xb2\xc0B+\xa5\xca\xfe^\xba\xc7 \x1c\xa2\xc8\xd3"]\x0e%\x95\xdf\xc18\x0eZ\xf2\xe7F\x84 \xed\x0b\xbe\xd9\xebBq$\xcb\xe3?\x8cE\x83\x8ep\xee\xbd|\x04\t\xcb\xfc\xcf\x8d+\xa1[l.\x7f\x14\x9eh@\x80\xdb\x8ed\x0fbT\x99\xcf\x8fj ,\xb1!\xf7\x96fa\xbe4\xaau\xb8_\x83H-\x15\x12\xf1vTH\xd7\x10\xf7\x87]\xd8\x98-\xb9\xfa\x1c\xee\xcd\xb4\xea\xc88L\xfb\x04\'\xc0\xd9\xa7\t=\tKg\xcb \x05G^3Y\xb4<\x9e\xf3\xc8\xe2b^b./\xa5\xdb\xcd\xd9\x08\xef\xf2\xb4\x03\xe8\x1fU)\x1f\xf2\xaf\x8d\x01\x88~\xd2T4\xd3L{\xd6\xb6\x83R\x0f4v\xc9\x9a\x98\x18\xec\x1fd\xe6t\xa1\xe7\x8f\x91\xab\xeeM\xf1\xe3\xa1U\xe7p\x9f\xcf\x8f\xdc\xacTH\x11\x88\xb6\x11\x99e\x10\x8c\x92\xadc$\x8f\xac*\xda6\xa8\xd9I$\xf8C\x92\x17\x016\x04\x8e\xbf\x91\xb9?e\x8d\x1d\xac5\xf2c-h\xb7?"\xe3\xe8-\x144\xe6\x03z<\x9e\x84\xadB_\xe6\xf3e\x1c\x11\xc652z\xc3HI\xb0\x92\x8d\xfb\xf0A\xe4\xadgI\x02\x92F\x03\xe9\x85\xc6\xabK\xcfG\xb2\x84o\x9ff\x06\x0e\xe8\xf8\xdb\xbe\xad\x9b\xfd\xa5_\x03\x0e{|\xaa\x0f\xc9\xd0[\xd7\x17\xe5!z\xc4\xa7\xe5\xaa\'\xb0!\xf1m\xddu?C#\xde\xb9<,\x9aRv\xe9\r-v\xe0?\xc6G/\x80.\xa2\x10t\nI\xcf\xa0\xc2\xde\xe4fFFo2\xe5\x9d\xb7`_Uu\'\xcf\xb2\xc0\xedC\xf5^\xc1\xd0^\xa5o\x9e\xf6\xe9D\x12\xbb\x86>\xb4\xe9\xeaF\xe0\x8b\x9b74\xac\xda\xf5\x0f\\:.\xe9\xbdig\xedz\x82\xb2\xe4\x18s\x93\x91(\')\xd2\xd3\na\x91F\xf1\xe2\x91\xdf\xcb3\x9c\x08:\x9c\x94\x97\xb7\x1f\x0fq\xfd\xcd\x9e\x16\x8c\xaez\xa3\xdbn\x15\xc4\xc90K\x94\x9a\xfb\xcc\xbdv\x05\xfd\x85"\xb6O\xf9R{\x1e\x93\x10\xb0\xbb\x1b\xce\xfe\xc9p\x99\x1f\x15\xfe\xaf\xf2N\xc90\x05 \x814\xc5o\xd4n\xc2\xb0y\xfe\xc7 Or\x1f\x86A\x0e\x07\xbf\xc6S\xb3\x88w\x94&\xcb\xf6\xb5$W\xdd\xe2\xfeD\xb0\x8b\x85\x06\xd4\xc5!g3\xb1p\xca)\xfa\xc5G*|JP\xb5\xcb\x02\xe2\x81:z\xfa\xac\xf4\x12\xea&#\x8f\xcb\x90\xa2\\\xb2\x10$BG\xaa<0\xa4\xe6\xab\x9bA\x82\x12D\xec!M4!n\xe3oR\x1e\xed\xcc\x80\x10\xf8\xc2a\xcb\x83\xa9\xa0\xb5\x86#\x01\xd5I\x17\xa3\x93MBuU]"\x03=\xa6%\x88\xd3\xc3\t\x06@~\xd7\x13<|ZR\xcf\x8b\xccl\xd48\xb3\x83K\x18%8,\x04XNpHG\xbe@\xc3\xe0\xab\xd6gI\x7f\xff\xd7\xa7t7I\xedgI$\x86\xe3\xdft\x82\x1dfuf\t\x93\xebG\xf4<\xc1B\x16\xc1n\x9f\x01y9\x86%S\x08^\xd9z\xb2\xb5\x84\xeb\xd9\x9f\x7f\x8d\x10\x8a\\a\x89\xc3\xdcA\x14\xc1wew\xdcu\xc31}(\xcf\x14\xfd\xc1\xe1\xc0\x12w\xfa\x05\xfcL\x91\x84')
1
+ import xtlsapi
2
+ from hiddifypanel.models import *
3
+ def get_xray_client():
4
+ if hconfig(ConfigEnum.is_parent):
5
+ return
6
+ return xtlsapi.XrayClient('127.0.0.1', 10085)
7
+
8
+ def get_enabled_users():
9
+ if hconfig(ConfigEnum.is_parent):
10
+ return
11
+ xray_client=get_xray_client()
12
+ users=User.query.all()
13
+ t="xtls"
14
+ protocol="vless"
15
+ enabled={}
16
+ for u in users:
17
+ uuid=u.uuid
18
+ try:
19
+ xray_client.add_client(t,f'{uuid}', f'{uuid}@hiddify.com',protocol=protocol,flow='xtls-rprx-vision',alter_id=0,cipher='chacha20_poly1305')
20
+ xray_client.remove_client(t,f'{uuid}@hiddify.com')
21
+ enabled[uuid]=0
22
+ except xtlsapi.exceptions.EmailAlreadyExists as e:
23
+ enabled[uuid]=1
24
+ except Exception as e:
25
+ print(f"error {e}")
26
+ enabled[uuid]=e
27
+ return enabled
28
+
29
+ def get_inbound_tags():
30
+ if hconfig(ConfigEnum.is_parent):
31
+ return
32
+ try:
33
+ xray_client=get_xray_client()
34
+ inbounds= [inb.name.split(">>>")[1] for inb in xray_client.stats_query('inbound')]
35
+ print(f"Success in get inbound tags {inbounds}" )
36
+ except Exception as e:
37
+ print(f"error in get inbound tags {e}" )
38
+ inbounds=[]
39
+ return list(set(inbounds))
40
+ def add_client(uuid):
41
+ if hconfig(ConfigEnum.is_parent):
42
+ return
43
+ xray_client=get_xray_client()
44
+ tags=get_inbound_tags()
45
+ proto_map={
46
+ 'vless':'vless',
47
+ 'xtls':'vless',
48
+ 'quic':'vless',
49
+ 'trojan':'trojan',
50
+ 'vmess':'vmess',
51
+ 'ss':'shadowsocks',
52
+ 'v2ray':'shadowsocks',
53
+ 'kcp':'vless',
54
+ 'dispatcher':'trojan',
55
+ }
56
+ def proto(t):
57
+ res='',''
58
+ for p,protocol in proto_map.items():
59
+ if p in t:
60
+ res=p,protocol
61
+ break
62
+ return res
63
+ for t in tags:
64
+ try:
65
+ p,protocol =proto(t)
66
+ if not p:
67
+ continue
68
+ if protocol=="vless" and p!="xtls":
69
+ xray_client.add_client(t,f'{uuid}', f'{uuid}@hiddify.com',protocol=protocol,flow='\0',)
70
+ else:
71
+ xray_client.add_client(t,f'{uuid}', f'{uuid}@hiddify.com',protocol=protocol,flow='xtls-rprx-vision',alter_id=0,cipher='chacha20_poly1305')
72
+ print(f"Success add {uuid} {t}")
73
+ except Exception as e:
74
+ print(f"error in add {uuid} {t} {e}" )
75
+ pass
76
+
77
+ def remove_client(uuid):
78
+ if hconfig(ConfigEnum.is_parent):
79
+ return
80
+ xray_client=get_xray_client()
81
+ tags=get_inbound_tags()
82
+
83
+ for t in tags:
84
+ try:
85
+ xray_client.remove_client(t, f'{uuid}@hiddify.com')
86
+ print(f"Success remove {uuid} {t}")
87
+ except Exception as e:
88
+ print(f"error in remove {uuid} {t} {e}" )
89
+ pass
90
+
91
+ def get_usage(uuid,reset=False):
92
+ if hconfig(ConfigEnum.is_parent):
93
+ return
94
+ xray_client=get_xray_client()
95
+ d = xray_client.get_client_download_traffic(f'{uuid}@hiddify.com',reset=reset)
96
+ u = xray_client.get_client_upload_traffic(f'{uuid}@hiddify.com',reset=reset)
97
+ print(f"Success {uuid} d={d} u={u}" )
98
+ res=None
99
+ if d is None:
100
+ res= u
101
+ elif u is None:
102
+ res= d
103
+ else:
104
+ res= d+u
105
+ return res
106
+
107
+
108
+ def hconfig(a):
109
+ pass
4
110
  #واقعا برای 5 دلار میخوای کرک میکنی؟ حاجی ارزش وقت خودت بیشتره
5
111
  #Email hiddify@gmail.com for free permium version. Do not crack this cheap product
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hiddifypanel
3
- Version: 3.0.0.dev63
3
+ Version: 3.0.0.dev65
4
4
  Summary: hiddifypanel multi proxy panel
5
5
  Home-page: https://github.com/hiddify/hiddify-config/
6
6
  Author: hiddify
@@ -1,34 +1,34 @@
1
- hiddifypanel/Events.py,sha256=YUCsTaq6qp-g1Wkxho_lCSzonOox9_jF4NwPZMw2WVM,10193
2
- hiddifypanel/VERSION,sha256=oqZ06kpja260Gj3crELWzkxbgfsXJnqY9wz3-vmhTQ4,12
3
- hiddifypanel/VERSION.py,sha256=geAQKcoMyeHN1HvIX6-R48xNw6tNMNa6h0OFjAxDSio,1912
4
- hiddifypanel/__init__.py,sha256=gq-q59RyYectAsDL24St189yxOMEPH8BXsznOHDdRV8,2651
5
- hiddifypanel/__main__.py,sha256=buGypbXnhLwBH79Hi4diKDBBRpL5GHv3DC5FL7c2xiE,3302
6
- hiddifypanel/base.py,sha256=rWDCUwFydJmR0Y7IrpwDTaxpQiUJ_HWiKqviP57I3PI,19332
7
- hiddifypanel/base2.py,sha256=BtqLw6HO0-2zRSSQDmTd86HV9psYf7-HsQxvOl1BA_A,6061
1
+ hiddifypanel/Events.py,sha256=H2weCDrLPv4ytf6QyLQmTbvvU975N8iPtV9_3UDejsk,890
2
+ hiddifypanel/VERSION,sha256=sN3kxiH-9TBsUx-gBRCEFM14USLUN2bYfqgiEbAVJiY,12
3
+ hiddifypanel/VERSION.py,sha256=83YBSqDsq6ught4OCrmLzbdFrLzMZnN6ZSlmH0kF4us,221
4
+ hiddifypanel/__init__.py,sha256=PR-wEqM4-eEk343r_Gs8xBkVSNHwmnfSi6HgtaOvQyw,411
5
+ hiddifypanel/__main__.py,sha256=59D4yIlzY8RZmFtQ8D3ngjgS59Z-jl3WzKKG0EfC9VM,465
6
+ hiddifypanel/base.py,sha256=JYY7gbpcsN-irQwyMJe-ECgiEJg3ESVZEDdsQqeKHfE,2901
7
+ hiddifypanel/base2.py,sha256=02wq7GuCXYSMsF2uPlXrp5DQymWKqmGGXw4BkCdytEM,1379
8
8
  hiddifypanel/base3.cpython-311-x86_64-linux-gnu.so,sha256=BuHoXK3PlLHg7ItHyGfY1U6VErW6dJVDRqdyYd-kAEA,179472
9
- hiddifypanel/xray_api.py,sha256=_3-IQO3JQbz62aqBZQRW_5LUC0DKuiEaM8fYWxxVfJA,26616
10
- hiddifypanel/models/__init__.py,sha256=6cQ4kkK-rfqMx_zD22D_hw0GEW6mX83klfdbKl8C-zk,5435
11
- hiddifypanel/models/child.py,sha256=IWCcG44jE2No9kE8lyg69_1zpCJpbnu8qAne7OvE_6Q,7595
12
- hiddifypanel/models/config.py,sha256=H-vCPrPFE7Phgkubp1yWcX6TfrcVjsUkkSGs2HiCiec,25264
13
- hiddifypanel/models/config_enum.py,sha256=u8SpFhpt6xRnYupDjNqTClUywcO6kfL01Xumq5kDsvw,41139
14
- hiddifypanel/models/domain.py,sha256=Cfd9YWI3m7kNaswFS0BsHMO-drzLPLeUYSdHDZmR55w,32158
15
- hiddifypanel/models/proxy.py,sha256=dcTxmZ_sY0OWNwWksAMvfntloOdqB3jqVDCglYoYzWg,16408
16
- hiddifypanel/models/usage.py,sha256=JBIb5gCAO9UBT2_YHMJpdbuTYzTpelmaYmy9RgSxkSA,16972
17
- hiddifypanel/models/user.py,sha256=xjcKalUwsSRdZOh0hOlTKlSw0QRQRG10VByyW7va8U4,36441
9
+ hiddifypanel/xray_api.py,sha256=wu-xFeDLFf91u_3epgFlPuViTEywkyDglj5JJXmH8Tw,3584
10
+ hiddifypanel/models/__init__.py,sha256=g35oflZsLhfGA5TZUYcEiKeusZJxy1KCcpZnuIdXbSc,790
11
+ hiddifypanel/models/child.py,sha256=GMxnM9YejBx3aQmFvGRzPiO8v6V77jYFPl7D-_Zhzc8,1237
12
+ hiddifypanel/models/config.py,sha256=CCTUzyhP6vqnr-zpRtXuWmjEpby8H5_2zhQ485KDe3g,3983
13
+ hiddifypanel/models/config_enum.py,sha256=Ipnzk8lxJkRS3ll6QaAWDBezMMAPPUYyhtHY-BnaoNo,9038
14
+ hiddifypanel/models/domain.py,sha256=9qFIn-faGCF7tRlhGaMmSjToSvg1KoyeyyUm_94wPQo,3724
15
+ hiddifypanel/models/proxy.py,sha256=Vdn0bjrPOgz1X5JhLHtWCqnIjKL3ZuvkiJrSKpIfRho,1662
16
+ hiddifypanel/models/usage.py,sha256=wXWnk1c_YnjGWfLNq13e9kQ2FXEzuPqMCZ4Pj66jYVU,2719
17
+ hiddifypanel/models/user.py,sha256=htq7ljrvqKCKiUV1pZ5YUq1KrVSFFvulRJMFLeqGA6U,7032
18
18
  hiddifypanel/panel/__init__.py,sha256=5HGYH66n-0HW5NH8sPNm474jGSCbeORKWDTojyXGFCA,321
19
- hiddifypanel/panel/admin_2.py,sha256=5pyabtCG6hP7BHY47ap4dLnl9rJd6LWcA6aYPQu9PwU,8674
19
+ hiddifypanel/panel/admin_2.py,sha256=OxREim9QwyMzM12WBcFaaXYkRoTBZkn5DNm315S7OH4,1234
20
20
  hiddifypanel/panel/asset.py,sha256=6jObVcgXNsq0hImK3nVa7gSgH8tBn146-6WSA23ruVo,656
21
- hiddifypanel/panel/cf_api.py,sha256=Z-pa8xZxiKWrPBF6LAzQGa7ZNM4zEPvXBsMxFS3Pc-M,11020
21
+ hiddifypanel/panel/cf_api.py,sha256=Ft3-1KZPcrJ_F9BQgsboTHBLYMCZQiS_bWBKYNXR8E0,1259
22
22
  hiddifypanel/panel/clean_ip.py,sha256=n121voC3aMcTRiHiu-aKFYj9i9sERrgBiPHBHR_bEeU,4217
23
23
  hiddifypanel/panel/cli.py,sha256=pJ9o3LjuwbVNbhwQ0Hh9OjIEgOJtqHV5F55wRkdaUwo,6355
24
- hiddifypanel/panel/common.py,sha256=JnxSCKqXh4kDpKyZVrKVLZBuXmmGKQ8qiek0Wz8xs6M,24374
25
- hiddifypanel/panel/custom_widgets.py,sha256=tVgCRWP1d5-4jgcMZXNZKEraP2Asmw4dTHh8lcwBkpo,22210
26
- hiddifypanel/panel/database.py,sha256=SoBfe-ZUCW_THUf4hBPHksXbfGjBo6YmRXJa6O-KlJw,4055
24
+ hiddifypanel/panel/common.py,sha256=HuhsmfICfptxvz1xB-DEW-J6phlxHuFpxW28FtMWiJA,4255
25
+ hiddifypanel/panel/custom_widgets.py,sha256=rQiSRVcVvOl5m-hcP4zBSPczLLfYZE7iDRYr5KL3twg,2456
26
+ hiddifypanel/panel/database.py,sha256=ec8ClPiDjJWkrdQy-7VzhZJ6MH79Q0jaF386vTXiBf4,493
27
27
  hiddifypanel/panel/hiddify.py,sha256=Gg-OdkTzv9RhT7qUUSVH9QxtqeYGGmH4ZQOqZbHkCJI,22142
28
- hiddifypanel/panel/hiddify_api.py,sha256=rdwaHAFdncvBu9FJgXTliALffb6oC89Ev2SzfElaRfg,17039
28
+ hiddifypanel/panel/hiddify_api.py,sha256=ZzrjcT8kMEO5Z4KTZscaTuCxBYZkrfqtDIJdvgP3-lg,2322
29
29
  hiddifypanel/panel/init_db.py,sha256=5OV7--zdAdHRb_hTYQNT2HTBisekCeF8gNw6BpKQI3s,14554
30
- hiddifypanel/panel/usage.py,sha256=sIdsoF9aMmPJSHlSIXjr_DLDI6_SMhtcjco4jFdGWUQ,3232
31
- hiddifypanel/panel/admin/Actions.py,sha256=FWaLUOGma-1DjxVA7zazoIK-C2aYY0Ze-ibQEatLv90,7282
30
+ hiddifypanel/panel/usage.py,sha256=1qn-W1Lgu7aEWbYkJdbFdUO1T0xQIUa4ERMrl0nvseM,3150
31
+ hiddifypanel/panel/admin/Actions.py,sha256=QZP3WEqtUZxNgLCfvQqrmeWKDTw_Qc17ZwZOgjm3IcE,7286
32
32
  hiddifypanel/panel/admin/Backup.py,sha256=W2Y7w8LiUApHC1krp1r9OsUx2OqHpQ-Vq_JbL8rqA-s,3143
33
33
  hiddifypanel/panel/admin/ChildAdmin.py,sha256=rnXNtfdtYtTKsS5BEZXI1opkzB8Nd258C8n7UO7STvI,4762
34
34
  hiddifypanel/panel/admin/ConfigAdmin.py,sha256=tNKdrs7QLpXXiqSss-5kWS-g1nZDS9_M2v7r-QbwmOs,2901
@@ -48,11 +48,11 @@ hiddifypanel/panel/admin/templates/backup.html,sha256=raZHk7WRstpySGbccBx6BWlqD2
48
48
  hiddifypanel/panel/admin/templates/base.html,sha256=azfKjR3X_OP_ta2lsbCGUQZLqQdy4DitJFCfgKbS1B0,14990
49
49
  hiddifypanel/panel/admin/templates/base2.html,sha256=hGbuLzd32qle5S0V2r2PlDzYM5pDCyc54Lurgx-v-3E,701
50
50
  hiddifypanel/panel/admin/templates/commercial_info.html,sha256=cLjRr-j0yWhtHfq7CkRuE58ZizSYff6RhgQfC90ndYA,229
51
- hiddifypanel/panel/admin/templates/config.html,sha256=ChQEqczfu5ZAdRgk04Rf9tjfZfkSML5BA36B6zKIU9o,3289
51
+ hiddifypanel/panel/admin/templates/config.html,sha256=0FHNVREAW5LzVFTp8N1cHSUhwVfu0SEfkL6FvMWIvnE,3301
52
52
  hiddifypanel/panel/admin/templates/configfake.html,sha256=YMbN9ee1UdNDWigzywgaw5YDkYk_30W2gbpTTjhcgsE,9020
53
53
  hiddifypanel/panel/admin/templates/index.html,sha256=BYQCchVvnSM4s3XAA5HubfRXVggasJRA-ZUNx168GFE,11981
54
54
  hiddifypanel/panel/admin/templates/ltemaster.html,sha256=KE_HsUOIR__BG1fW8DZ05rhgckQ8ls0a-ho6dWtmuX4,1080
55
- hiddifypanel/panel/admin/templates/proxy.html,sha256=hHEa4tv4TJ0LpSGzXcgtOhvRT8Rgqc_nlFCqU6me1m0,1691
55
+ hiddifypanel/panel/admin/templates/proxy.html,sha256=kjfPgY62PUA1hoiUX4pUm6KBLmnLVLiWOUk8G-0OjC0,1696
56
56
  hiddifypanel/panel/admin/templates/quick_setup.html,sha256=ZOyEa7HzAvXSeN-t6TynB0oBiyCLu9LCR2SAepOXo9g,2148
57
57
  hiddifypanel/panel/admin/templates/result.html,sha256=HjnX9AOrghGzcJLuAbWtASmXltaiully2L69rOjfP3U,1927
58
58
  hiddifypanel/panel/admin/templates/model/domain_list.html,sha256=rrPYKISPXcwYreMp2MrJb-sEL9-6dCZF_dk6ejObrm8,414
@@ -73,7 +73,7 @@ hiddifypanel/panel/commercial/templates/parent_dash.html,sha256=pMZRHQRxb2blYe0f
73
73
  hiddifypanel/panel/user/__init__.py,sha256=PmAxW8XnobJYj_l8JRylbe34hLBMCQ7zCuOykJ2dEes,1214
74
74
  hiddifypanel/panel/user/link_maker.html,sha256=g420NAm_fUI8asYjyfCiXyUOIwEQfDPonZA9xh3p0-8,177
75
75
  hiddifypanel/panel/user/link_maker.py,sha256=C8QJuBHjrmnqlCHKeUslK8HeqGXQVcB2yyPuHP77vDI,16729
76
- hiddifypanel/panel/user/user.py,sha256=2ze9f7C3nqusappRa-Rlir-Uo4VV5e30ZeOWnunG9FY,8900
76
+ hiddifypanel/panel/user/user.py,sha256=bsUZSR7QViCEv5_CMFeWqo2QqdB98fPLrOv1stvXtIA,8937
77
77
  hiddifypanel/panel/user/templates/all_configs copy.txt,sha256=ivn6fiOLnn4R7WLoKiPFbW-oOu-v1hdSqOW-sSeYmXA,510
78
78
  hiddifypanel/panel/user/templates/all_configs.txt,sha256=EY5OyFmwCL9K7Nh_7mKHwVmGVbv96S_2svtzM0tjBv0,1020
79
79
  hiddifypanel/panel/user/templates/clash_config copy.yml,sha256=_BIDTWAe6St7f0Q3KhNAYuQsVqQDmx_5ayElt5Gs-fw,7537
@@ -91,7 +91,7 @@ hiddifypanel/panel/user/templates/home/index copy.html,sha256=eM6filzAnp4mtfwVPK
91
91
  hiddifypanel/panel/user/templates/home/index_old.html,sha256=3YVZLz3TNN80bj4VXBPNWrXY6TiczP22Sgt70iKVSyI,11248
92
92
  hiddifypanel/panel/user/templates/home/ios copy.html,sha256=30jekxKEFuy6fkvC4S9LuJb3TX3DfPYo09W-8P52Xhc,4110
93
93
  hiddifypanel/panel/user/templates/home/ios.html,sha256=0XgqJQW0aQEBXsVR6n0JyQl6OBbKn2UGYNFnMr66Uqw,1128
94
- hiddifypanel/panel/user/templates/home/multi.html,sha256=kECmtlnZoXuxCICi62uU_B1U5XDfMKYRIIoC-eGeJdI,12235
94
+ hiddifypanel/panel/user/templates/home/multi.html,sha256=u0moryiPAUyBPq2N8qGgJB13ySqOE-IlTo06ZYBx0yU,12277
95
95
  hiddifypanel/panel/user/templates/home/speedtest.html,sha256=mKYu1CjyVvN0imj6MtKi88ITYcFpdIcUM-eb2VPgTXA,538
96
96
  hiddifypanel/panel/user/templates/home/telegram.html,sha256=WyOLUd7saaN2lRfiQsGjwqdXe53dP4siSPYlj6iZsqc,623
97
97
  hiddifypanel/panel/user/templates/home/usage.html,sha256=jZ9fIpzkx1z7ePRU-g0v24UrT-S7p2DT1zcTSzfOsJE,3620
@@ -104,7 +104,7 @@ hiddifypanel/static/css/bootstrap.min.css,sha256=djO3wMl9GeaC_u6K-ic4Uj_LKhRUSlU
104
104
  hiddifypanel/static/css/bootstrap4-rtl.min.css,sha256=2ZN6KcWrEZE_efXKufJsIrj2hSZ4PFw7QWnIV0egdxE,8358
105
105
  hiddifypanel/static/css/bootstrap5.rtl.min.css,sha256=6oH_E3oAx6zH-g1hfIn7dq7y7GoCM149BGt2nNYi02s,163995
106
106
  hiddifypanel/static/css/custom-rtl.css,sha256=UVEGrzMXDPHCg59hJig1YnXELmgxKfsMbq1XLXi2naI,465
107
- hiddifypanel/static/css/custom.css,sha256=fipav0ZoejFSw4DYZ9yoUAEXSpiSBf7N-sH0vMJx92I,3842
107
+ hiddifypanel/static/css/custom.css,sha256=JA8yjixHYXx_JYU6ZfhtnDXEQmF0qkds8Itx3dx2nMM,3987
108
108
  hiddifypanel/static/css/font-awesome.css,sha256=8RivRM1xoA4MVZ3DyyCpqGLfW3lSoHBItx-EaMM4P6Y,101895
109
109
  hiddifypanel/static/css/lte.old,sha256=EOZyrKYSocDo_gk1VtgeX_OvUL3kN7QVTJJg7D2R6Z0,278568
110
110
  hiddifypanel/static/fonts/Vazir-Black.eot,sha256=J_UB2BiLqRZy7BmJqQEDPWkwwsmrOjIBd3-U6vJ7nGU,92934
@@ -653,7 +653,7 @@ hiddifypanel/static/webfonts/fa-solid-900.ttf,sha256=5Pan6dGnwLSWjZy51CLo2c3KIp9
653
653
  hiddifypanel/static/webfonts/fa-solid-900.woff2,sha256=jwZUD9d_Hv_h4tqOoQzsSjgt2pzG7wXYFuHW3kRAcvI,150516
654
654
  hiddifypanel/static/webfonts/fa-v4compatibility.ttf,sha256=Lds7QRSpy1ZeSbCvIcw6yIzQQ760m-MouPV6Y0mJ4Kw,10140
655
655
  hiddifypanel/static/webfonts/fa-v4compatibility.woff2,sha256=9GcVydMAR_jepOsl7YafeR6wacaw9hAjgsMqVq7q37s,4568
656
- hiddifypanel/templates/500.html,sha256=sJzNqRxjH64aciwU_cGZXxn-iilK2JbT2mZs0LxpbCQ,891
656
+ hiddifypanel/templates/500.html,sha256=49DvuK3K70WoZMSPdBtXryyu921SwspE7FSV4KRl9I4,896
657
657
  hiddifypanel/templates/a.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
658
658
  hiddifypanel/templates/admin-layout.html,sha256=v-UymSJcgPJKkVgWRAvam3o0xxDWlWfoBytySHKbFlQ,9010
659
659
  hiddifypanel/templates/admin.ht.old,sha256=3hMqCXEw4-hFrDGKlENcPOHbZ_iIygm9ilIHgsIW54w,8404
@@ -671,11 +671,9 @@ hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=Es3pOR5mMM956YAjNzMR
671
671
  hiddifypanel/translations/fa/LC_MESSAGES/messages.po,sha256=hjGwBGzZJ7WQGkAEoYbiAMz-S867a6ufNIDnSMkIj6w,139137
672
672
  hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=Jx6VsaEWvN59NFy2u-3XEnwaHQe3sX2NFEU0mJgJ1Vc,40445
673
673
  hiddifypanel/translations/zh/LC_MESSAGES/messages.po,sha256=r1CnD7DkFiaB4YTQ2qrtGWWE46vOhIiE3x-bu8L52n8,115312
674
- pyarmor_runtime_000000/__init__.py,sha256=XH9wYCHTXGFRHFpJmAoVuGW2Y2KIAKQNTuNmMniceNM,266
675
- pyarmor_runtime_000000/pyarmor_runtime.so,sha256=LcIn2NVHXtTZpVmODcvdu-xakX5WjHqXXsQ9STlasa4,767656
676
- hiddifypanel-3.0.0.dev63.dist-info/LICENSE,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
677
- hiddifypanel-3.0.0.dev63.dist-info/METADATA,sha256=3zvC_j9yLZ1lGihlJJa8obAdOe_SBcCcVKEMBTgIq3o,2587
678
- hiddifypanel-3.0.0.dev63.dist-info/WHEEL,sha256=qUFifj9ojiw12HwnLGqmLM4cdi2ExjIX0YgXn_cLltg,113
679
- hiddifypanel-3.0.0.dev63.dist-info/entry_points.txt,sha256=Xzpqlh3nwBtZhoV9AANJykano056VJvYzaujxPztJaM,60
680
- hiddifypanel-3.0.0.dev63.dist-info/top_level.txt,sha256=7g_mubb3f2watlKOxGRnoGv0LFqSvvltu4DJessQbYU,36
681
- hiddifypanel-3.0.0.dev63.dist-info/RECORD,,
674
+ hiddifypanel-3.0.0.dev65.dist-info/LICENSE,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
675
+ hiddifypanel-3.0.0.dev65.dist-info/METADATA,sha256=WKgVnk7ezabfC3zvluP-hNWjhMWs-6p0IySXfacrpQw,2587
676
+ hiddifypanel-3.0.0.dev65.dist-info/WHEEL,sha256=qUFifj9ojiw12HwnLGqmLM4cdi2ExjIX0YgXn_cLltg,113
677
+ hiddifypanel-3.0.0.dev65.dist-info/entry_points.txt,sha256=Xzpqlh3nwBtZhoV9AANJykano056VJvYzaujxPztJaM,60
678
+ hiddifypanel-3.0.0.dev65.dist-info/top_level.txt,sha256=rv-b3qFWUZQTBy0kyBfsr7L6tPpeO7AaQlLHXn-HI5M,13
679
+ hiddifypanel-3.0.0.dev65.dist-info/RECORD,,
@@ -0,0 +1 @@
1
+ hiddifypanel
@@ -1,2 +0,0 @@
1
- hiddifypanel
2
- pyarmor_runtime_000000
@@ -1,4 +0,0 @@
1
- # 2023-04-08T15:11:11.667963
2
- from .pyarmor_runtime import __pyarmor__
3
- #واقعا برای 5 دلار میخوای کرک میکنی؟ حاجی ارزش وقت خودت بیشتره
4
- #Email hiddify@gmail.com for free permium version. Do not crack this cheap product
Binary file