From 2d593c0bfdace886efc8870e5ededf739196e15a Mon Sep 17 00:00:00 2001 From: JamesonHuang <462430725@qq.com> Date: Fri, 19 Jun 2015 19:54:34 +0800 Subject: [PATCH] build http cache proxy protocol --- .../my-twisted-connect-proxy/CacheUtils.py | 99 ++- .../my-twisted-connect-proxy/CacheUtils.pyc | Bin 0 -> 3046 bytes .../python/my-twisted-connect-proxy/GotIt.txt | 11 + .../my-twisted-connect-proxy/GotIt.txt~ | 80 +++ ...20E0B182-2A0A-71C0-7E7F-CC19FCD5724C0-7000 | Bin 0 -> 6055 bytes ...37519C71-2016-F477-11BC-63A6154F90680-7000 | Bin 0 -> 3962 bytes ...F3AFB0B0-369D-FF3C-5166-5DE789FB51AA0-7000 | Bin 0 -> 4459 bytes ...AA5AD25D-3E86-C49F-51CC-B1900F76D4B80-7000 | Bin 0 -> 3798 bytes ...056D2567-E140-E9EA-53E4-8A1535C671270-7000 | Bin 0 -> 3221 bytes ...302195D7-C33B-D192-AC6C-AF9F271C4C1D0-7000 | Bin 0 -> 4031 bytes ...973566E5-BE5C-2B30-DC7B-918FB15F384F0-7000 | Bin 0 -> 3644 bytes ...3F5F87B4-39BF-0849-7D22-156D4127404B0-7000 | Bin 0 -> 5013 bytes ...14D38641-39F8-9BCC-22E3-7E35AE57069F0-7000 | Bin 0 -> 4120 bytes ...10701786-4968-7D5E-89EA-BB61473AFDCC0-7000 | Bin 0 -> 3683 bytes ...602306AC-2941-1C75-9A04-A5449A48608F0-7000 | Bin 0 -> 3510 bytes ...254F8937-F2A3-13AF-E6F5-1418A4E1B9DF0-7000 | Bin 0 -> 3880 bytes ...3631B19F-7100-519A-4AF5-920A50F2C4590-7000 | Bin 0 -> 4169 bytes ...3A8902E6-57D9-CDB4-9797-79A0537F31810-7000 | Bin 0 -> 4844 bytes ...06045D0D-6A74-3295-3DB8-6980C32011110-7000 | Bin 0 -> 5931 bytes ...5F5BCF7B-8020-9C8F-4515-81E495F8611F0-7000 | Bin 0 -> 4412 bytes ...29BC8227-CBC8-BBE7-60CD-EC0810E9F2200-7000 | Bin 0 -> 735 bytes ...6754DB3E-08E4-6423-5297-D1C9925897020-7000 | Bin 0 -> 7001 bytes ...05CB13D8-FC2F-D1B7-8851-E9433C59CB240-7000 | Bin 0 -> 7001 bytes ...41A7F60B-4D56-EF7B-85B5-2E0D815B11D40-7000 | Bin 0 -> 1418 bytes ...38E36237-DA9D-BB3C-2F71-216A21B8D9EE0-7000 | Bin 0 -> 3152 bytes ...447A2FEC-55F2-01FC-3B9C-1CDB6B1AFA300-7000 | Bin 0 -> 1912 bytes ...26163821-113D-8012-C8DD-2591F23004530-7000 | Bin 0 -> 3295 bytes ...4C3DDB4C-443A-5C79-2FD6-E846C2065EC50-7000 | Bin 0 -> 7001 bytes ...52F54356-2481-BECE-753B-DC8FAD62B9330-7000 | Bin 0 -> 7001 bytes ...6A6F3894-23FF-5592-3946-B1B122D18CA30-7000 | Bin 0 -> 6035 bytes ...35A2D08D-1CBC-D104-230C-A9F53170EE770-7000 | Bin 0 -> 7001 bytes ...7A7A1CE3-3CB4-2AEB-EFC8-01634479C14C0-7000 | Bin 0 -> 1524 bytes ...F03375B3-6BE5-711A-1C82-0F6D99594D750-7000 | Bin 0 -> 1710 bytes ...54F6F014-8FDF-60AD-0854-2F756AC1692C0-7000 | Bin 0 -> 7001 bytes ...ED804189-16D1-22B0-6592-2DE9528C4EBC0-7000 | Bin 0 -> 7001 bytes ...33572DE9-180A-C171-DDB1-75757E59B4F40-7000 | Bin 0 -> 7001 bytes ...4E6A9869-B6C0-ECA5-264D-37E90D4A62EA0-7000 | Bin 0 -> 2842 bytes ...A18CFBF7-9827-5003-58E8-966A559DED6C0-7000 | Bin 0 -> 7001 bytes ...9D03CD26-3A52-8330-6935-E427C6D30D430-7000 | Bin 0 -> 1630 bytes ...8B8E6D32-B9FC-5BB8-7460-8CE54D81E96D0-7000 | Bin 0 -> 7001 bytes ...25B031CE-29D3-4997-82BB-7B54B693C5F50-7000 | Bin 0 -> 1856 bytes ...1E86AF52-68DD-5B50-DDC7-3543E9FB93EB0-7000 | Bin 0 -> 7001 bytes ...9761A8B9-B30B-B81C-5B88-F6AC54AB10570-7000 | Bin 0 -> 7001 bytes ...190DA8B8-2BDB-69B6-1264-95CA09BEB5AC0-7000 | Bin 0 -> 7001 bytes ...00E99E44-BC12-8945-722D-C4510FDD9CB30-7000 | Bin 0 -> 3310 bytes ...CBB177A0-CE0D-F46A-6E9C-452073CBC94B0-7000 | Bin 0 -> 7001 bytes ...C957D3C4-4230-0AFD-7631-A945BA2736EE0-7000 | Bin 0 -> 4116 bytes ...39A761B9-B2E9-64CF-65E8-2C2B5F5757DF0-7000 | Bin 0 -> 7001 bytes ...F7692162-E86D-18B9-EAE0-80FA62A3E9770-7000 | Bin 0 -> 2031 bytes ...4209F70D-FD38-03D4-66C7-270F40BEEC1A0-7000 | Bin 0 -> 4022 bytes ...6DC27A06-69C1-4830-2735-1BA36537DBCF0-7000 | Bin 0 -> 7001 bytes ...F65CB7BC-DB27-4D1B-43BC-EA5F44B1C7A90-7000 | Bin 0 -> 7001 bytes ...AF1B7579-816E-8BBA-D238-2775DE6D85FD0-7000 | Bin 0 -> 7001 bytes ...BAC7937B-E152-14B4-1E78-D105283364160-7000 | Bin 0 -> 2049 bytes ...A52959D6-31D1-5EB2-DA76-499D3ACCB4750-7000 | Bin 0 -> 7001 bytes ...93C76276-0DA3-0C1C-7B62-D715A4501FBC0-7000 | Bin 0 -> 7001 bytes ...C88BC50F-47D2-7856-3E92-10DE0D8759B00-7000 | Bin 0 -> 7001 bytes ...264DAA6D-BEF3-4F0F-59C6-02074EC0EFF10-7000 | Bin 0 -> 4678 bytes ...F0EC398D-8D7B-4EC8-713B-C0C180F4B9180-7000 | Bin 0 -> 7001 bytes ...C3F0882E-1B2F-29BF-4FB3-546E15DFD5E50-7000 | Bin 0 -> 7001 bytes ...48622DEF-D1C2-EF5A-894E-76ACA2B7040B0-7000 | Bin 0 -> 7001 bytes ...F1B790C5-B05C-A83B-D4DB-98C60684E03C0-7000 | Bin 0 -> 6770 bytes ...10007905-F37F-D6B9-ABEF-7BC345633A400-7000 | Bin 0 -> 7001 bytes ...24AD0453-006A-4D5E-1A0C-8C6FE3F2EFB50-7000 | Bin 0 -> 5285 bytes ...78A9822B-5C97-3887-415F-2E6180EC77560-7000 | Bin 0 -> 7001 bytes ...4040077C-72D6-D10E-A8E2-281A830371600-7000 | Bin 0 -> 7001 bytes .../050C00005583B8C567BC3D6F5E07F1830-7000 | Bin 0 -> 7001 bytes .../05100000541BAC516737B324DE0AC1F20-7000 | Bin 0 -> 1297 bytes .../05100000541BAC936737B324D20A73CC0-7000 | Bin 0 -> 1054 bytes .../05100000541BAC936737B324FF0DE0DD0-7000 | Bin 0 -> 789 bytes .../05100000541BAC936737B3562D0BA4920-7000 | Bin 0 -> 1212 bytes .../05100000541BACCF6737B325220573FE0-7000 | Bin 0 -> 1357 bytes .../05100000541BACD06737B30E4C0AACCA0-7000 | Bin 0 -> 1626 bytes .../05100000541BACD06737B324F7010C740-7000 | Bin 0 -> 1262 bytes .../05100000541BACD06737B324F80448270-7000 | Bin 0 -> 1601 bytes .../05100000541BACD16737B3250E0CFD700-7000 | Bin 0 -> 967 bytes .../05100000541BACD16737B36D870ADB5F0-7000 | Bin 0 -> 1040 bytes .../05100000541BFD076737B3250308E2160-7000 | Bin 0 -> 2187 bytes .../05100000541BFD086737B3251A049E210-7000 | Bin 0 -> 3543 bytes .../05100000541BFD086737B3340202B8E30-7000 | Bin 0 -> 3353 bytes .../05100000541BFD086737B37D420839260-7000 | Bin 0 -> 2233 bytes .../05100000541BFD096737B325200C8DA80-7000 | Bin 0 -> 3178 bytes .../05100000541BFD096737B3252D0AFCFF0-7000 | Bin 0 -> 2434 bytes .../05100000541BFD096737B37AF104C6F00-7000 | Bin 0 -> 2131 bytes .../05100000541BFD0A6737B308AE066CC00-7000 | Bin 0 -> 3047 bytes .../05100000541BFD0A6737B325300D6F0B0-7000 | Bin 0 -> 2226 bytes .../05100000541BFD246737B3253703FCC70-7000 | Bin 0 -> 2968 bytes .../05100000541BFD246737B349090CEA210-7000 | Bin 0 -> 2641 bytes .../05100000541BFD246737B35F790A9FC70-7000 | Bin 0 -> 2957 bytes .../05100000541BFD256737B324D10D395E0-7000 | Bin 0 -> 3379 bytes .../05100000541BFD256737B3253A0C33260-7000 | Bin 0 -> 2984 bytes .../05100000541BFD256737B35F7208971D0-7000 | Bin 0 -> 2820 bytes .../05100000541BFD2E6737B371B30A9BDA0-7000 | Bin 0 -> 2317 bytes .../05100000541FBFF16737B324E90D1E7E0-7000 | Bin 0 -> 3295 bytes .../05100000541FBFF26737B324F60BE6B00-7000 | Bin 0 -> 2846 bytes .../05100000541FBFF26737B3636E0429E70-7000 | Bin 0 -> 2670 bytes .../05100000541FF4DE6737B325270C62130-7000 | Bin 0 -> 2998 bytes .../051000005420056E6737B303C10BA44F0-7000 | Bin 0 -> 7001 bytes .../051000005465C14F6737B3325A0955CE0-7000 | Bin 0 -> 2440 bytes .../05100000546F10836737B34B7E03A0980-7000 | Bin 0 -> 3112 bytes .../05100000547705646737B340AA0A959D0-7000 | Bin 0 -> 2886 bytes ...0510000054D335C46737B35DA20A3BAD.jpg0-7000 | Bin 0 -> 5607 bytes .../0510000054FD72CF6737B34B240EFFBA0-7000 | Bin 0 -> 3654 bytes .../0510000055015FA56737B3297D0A1C7B0-7000 | Bin 0 -> 1203 bytes .../05100000552E1B996737B353C90605CC0-7000 | Bin 0 -> 7001 bytes .../05100000552E1B996737B3642106DE840-7000 | Bin 0 -> 7001 bytes .../05100000553705DB67BC3D67110609FA0-7000 | Bin 0 -> 7001 bytes .../05100000553705DC67BC3D302B0846940-7000 | Bin 0 -> 7001 bytes .../05100000553F5B7D67BC3D082C0D42390-7000 | Bin 0 -> 7001 bytes .../05100000553F5B7D67BC3D224004FF650-7000 | Bin 0 -> 7001 bytes .../05100000553F5B7E67BC3D6D44065FB50-7000 | Bin 0 -> 7001 bytes .../05100000556821A267BC3D2CB10AD9A20-7000 | Bin 0 -> 2432 bytes .../05100000556821B667BC3D2ABE042C2E0-7000 | Bin 0 -> 2405 bytes .../05100000557A941567BC3D7F2B0633B80-7000 | Bin 0 -> 3062 bytes .../051000005583663E67BC3D20A50C87170-7000 | Bin 0 -> 7001 bytes .../051000005583663E67BC3D341D028BED0-7000 | Bin 0 -> 7001 bytes .../05150000558365C267BC3D28E2014B9D0-7000 | Bin 0 -> 7001 bytes .../05150000558365EA67BC3D67A20737D50-7000 | Bin 0 -> 7001 bytes .../051500005583850C67BC3D22B40DD3C40-7000 | Bin 0 -> 7001 bytes .../051500005583904D67BC3D29510BD4250-7000 | Bin 0 -> 7001 bytes .../05150000558393A567BC3D189B076DAD0-7000 | Bin 0 -> 7001 bytes .../05150000558393E567BC3D441F0F22C50-7000 | Bin 0 -> 7001 bytes .../my-twisted-connect-proxy/cache/500-7000 | Bin 0 -> 6990 bytes .../cache/53.jpg0-7000 | Bin 0 -> 7001 bytes ...tok=a094fa1c55f2125e2a34caadef198da80-7000 | 672 ++++++++++++++++++ .../cache/ani.js0-7000 | 69 ++ .../cache/bg_video_large.png0-7000 | Bin 0 -> 499 bytes .../cache/bg_video_mini.png0-7000 | Bin 0 -> 271 bytes .../cache/bg_video_small.png0-7000 | Bin 0 -> 7001 bytes .../cache/blanksprite.png0-7000 | Bin 0 -> 175 bytes .../cache/chuda.css0-7000 | 1 + .../cache/chuda.js0-7000 | 1 + .../cache/cmsCommon.js0-7000 | 40 ++ .../cache/cmsDatafromPrototype.js0-7000 | 114 +++ .../cache/cmsFriends.js0-7000 | 228 ++++++ .../cache/common.js0-7000 | 191 +++++ .../cache/compiler.js0-7000 | 1 + .../cache/cps.js0-7000 | 105 +++ .../cache/drama.8.png0-7000 | Bin 0 -> 980 bytes .../cache/ent.png0-7000 | Bin 0 -> 1230 bytes .../cache/film.png0-7000 | Bin 0 -> 1352 bytes .../cache/get.json0-7000 | 8 + .../cache/gridTab.js0-7000 | 138 ++++ .../cache/grid_pc.css0-7000 | 103 +++ .../cache/header.png0-7000 | Bin 0 -> 7001 bytes .../cache/hover.js0-7000 | 62 ++ .../my-twisted-connect-proxy/cache/html0-7000 | 0 .../cache/ico-cert.24.png0-7000 | Bin 0 -> 519 bytes .../cache/iresearch.js0-7000 | 4 + .../cache/jquery.js0-7000 | 2 + .../cache/loader.swf0-7000 | Bin 0 -> 7001 bytes .../cache/lsidetool.css0-7000 | 1 + .../cache/lsidetool.js0-7000 | 1 + .../cache/lsidetoolresize.js0-7000 | 16 + .../cache/music.png0-7000 | Bin 0 -> 1220 bytes .../cache/popup.js0-7000 | 64 ++ .../cache/prototype.js0-7000 | 1 + .../cache/qfooter.css0-7000 | 38 + .../cache/qheader.css0-7000 | 1 + .../cache/qheader.js0-7000 | 264 +++++++ .../cache/qwindow.js0-7000 | 201 ++++++ .../cache/resize.js0-7000 | 38 + .../cache/seedVideo.js0-7000 | 67 ++ .../cache/share_msg.js0-7000 | 2 + .../cache/sideTool.css0-7000 | 297 ++++++++ .../cache/sideTool.js0-7000 | 133 ++++ .../cache/slide_next_btn_new.png0-7000 | Bin 0 -> 1588 bytes .../cache/sport.png0-7000 | Bin 0 -> 1266 bytes .../cache/sprite.gif0-7000 | Bin 0 -> 43 bytes .../cache/tdstat.js0-7000 | 232 ++++++ .../cache/toolbar.png0-7000 | Bin 0 -> 5157 bytes .../cache/topic.png0-7000 | Bin 0 -> 1154 bytes .../cache/tv.png0-7000 | Bin 0 -> 1115 bytes .../cache/user-grade-icon.css0-7000 | 101 +++ .../cache/video_default_200x110.png0-7000 | Bin 0 -> 1095 bytes .../cache/video_default_420x240.png0-7000 | Bin 0 -> 2365 bytes .../cache/video_default_90x50.png0-7000 | Bin 0 -> 594 bytes .../cache/vip.png0-7000 | Bin 0 -> 2487 bytes .../cache/www.youku.com0-7000 | 85 +++ .../cache/yk.8.png0-7000 | Bin 0 -> 5678 bytes .../cache/yk.css0-7000 | 343 +++++++++ .../cache/ykRecommend.js0-7000 | 227 ++++++ .../cache/ykhome.css0-7000 | 1 + .../cache/ykhome.png0-7000 | Bin 0 -> 6104 bytes .../cache/yklogo_h.png0-7000 | Bin 0 -> 3197 bytes .../cache/youku_laifeng_v3.js0-7000 | 167 +++++ .../cache/zy.png0-7000 | Bin 0 -> 1184 bytes .../python/my-twisted-connect-proxy/data.json | 1 + .../my-twisted-connect-proxy/data.json~ | 0 .../python/my-twisted-connect-proxy/server.py | 17 + .../cache/logo_white_ee663702.png0-7000 | Bin 7001 -> 14002 bytes .../cache/logo_white_ee663702.png7001-14175 | Bin 7174 -> 14348 bytes .../python/testCode/cacheUtil.py | 25 +- .../python/testCode/data.json | 2 +- 194 files changed, 4202 insertions(+), 52 deletions(-) create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.pyc create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt~ create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4653A2B540C6F60414569C20E0B182-2A0A-71C0-7E7F-CC19FCD5724C0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4653D768233BE001963F4937519C71-2016-F477-11BC-63A6154F90680-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46549B16F4244C0309545BF3AFB0B0-369D-FF3C-5166-5DE789FB51AA0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4654C10E0439130381150BAA5AD25D-3E86-C49F-51CC-B1900F76D4B80-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46556481A0D4350558C2B7056D2567-E140-E9EA-53E4-8A1535C671270-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4655685D5E374D04034D20302195D7-C33B-D192-AC6C-AF9F271C4C1D0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46556BCA66A6790945A1DB973566E5-BE5C-2B30-DC7B-918FB15F384F0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557B6A1382530064DE1D3F5F87B4-39BF-0849-7D22-156D4127404B0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557ED70EFC9B053F14D114D38641-39F8-9BCC-22E3-7E35AE57069F0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557FE65B99CB154C5F2A10701786-4968-7D5E-89EA-BB61473AFDCC0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465582899FAE7F04FF5D68602306AC-2941-1C75-9A04-A5449A48608F0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465582E7EB5E5105BB0734254F8937-F2A3-13AF-E6F5-1418A4E1B9DF0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583949F9F8B035C40D23631B19F-7100-519A-4AF5-920A50F2C4590-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583AB307649019DBA843A8902E6-57D9-CDB4-9797-79A0537F31810-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583C9D2605D058DBBB006045D0D-6A74-3295-3DB8-6980C32011110-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583D3F04A5700E80CB75F5BCF7B-8020-9C8F-4515-81E495F8611F0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45502C70118BE9058DBBB029BC8227-CBC8-BBE7-60CD-EC0810E9F2200-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4550C6E8234FC20830E1366754DB3E-08E4-6423-5297-D1C9925897020-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4551777BED444A04034D2005CB13D8-FC2F-D1B7-8851-E9433C59CB240-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4551C51ED81F47000BF9C241A7F60B-4D56-EF7B-85B5-2E0D815B11D40-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4551F64E09FE210558C2B738E36237-DA9D-BB3C-2F71-216A21B8D9EE0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45524569901F6A131478AB447A2FEC-55F2-01FC-3B9C-1CDB6B1AFA300-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455269DDF4FAFF08565B2626163821-113D-8012-C8DD-2591F23004530-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45530C4DA78A25019DBA844C3DDB4C-443A-5C79-2FD6-E846C2065EC50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45530DBD99CBF3150EABFA52F54356-2481-BECE-753B-DC8FAD62B9330-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45531D77AFBA7F053F14D16A6F3894-23FF-5592-3946-B1B122D18CA30-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45533B8CE4A5E7030C71A035A2D08D-1CBC-D104-230C-A9F53170EE770-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455343A27D3516154C5F2A7A7A1CE3-3CB4-2AEB-EFC8-01634479C14C0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45539E8674235C0114FBEFF03375B3-6BE5-711A-1C82-0F6D99594D750-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4553BDFD01FB0D04A0DAFB54F6F014-8FDF-60AD-0854-2F756AC1692C0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4553E22B8C361A0646F416ED804189-16D1-22B0-6592-2DE9528C4EBC0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45540F219F90571975D51733572DE9-180A-C171-DDB1-75757E59B4F40-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455443B94F99C60309545B4E6A9869-B6C0-ECA5-264D-37E90D4A62EA0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455463233C4D1A1BA985B0A18CFBF7-9827-5003-58E8-966A559DED6C0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554897F747485132160689D03CD26-3A52-8330-6935-E427C6D30D430-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45549CD39F378202E272768B8E6D32-B9FC-5BB8-7460-8CE54D81E96D0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554B34D520590019C3C1C25B031CE-29D3-4997-82BB-7B54B693C5F50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554C59AB6E5630023C04A1E86AF52-68DD-5B50-DDC7-3543E9FB93EB0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554DC5277E951181CBEAD9761A8B9-B30B-B81C-5B88-F6AC54AB10570-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554F20EC3A786189FF021190DA8B8-2BDB-69B6-1264-95CA09BEB5AC0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554FAD43BE691196BAADA00E99E44-BC12-8945-722D-C4510FDD9CB30-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554FD024F373800E80CB7CBB177A0-CE0D-F46A-6E9C-452073CBC94B0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455518AD375BCE149CC8F8C957D3C4-4230-0AFD-7631-A945BA2736EE0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45552FCEB2AA4107ED621339A761B9-B2E9-64CF-65E8-2C2B5F5757DF0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455541295236022CF4CEEAF7692162-E86D-18B9-EAE0-80FA62A3E9770-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455546D8A9E2D41CAD43974209F70D-FD38-03D4-66C7-270F40BEEC1A0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45554F303059ED095CD25C6DC27A06-69C1-4830-2735-1BA36537DBCF0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45556565BF3FC618BEA3B9F65CB7BC-DB27-4D1B-43BC-EA5F44B1C7A90-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45556F1846579404FF5D68AF1B7579-816E-8BBA-D238-2775DE6D85FD0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45557E1E713AB118B1115CBAC7937B-E152-14B4-1E78-D105283364160-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45557E872C1A542BBEAFBCA52959D6-31D1-5EB2-DA76-499D3ACCB4750-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F484B9E3E4AA935035C40D293C76276-0DA3-0C1C-7B62-D715A4501FBC0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F484C319D5D421B0414569CC88BC50F-47D2-7856-3E92-10DE0D8759B00-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F484E951B5D2D5A059C8CE6264DAA6D-BEF3-4F0F-59C6-02074EC0EFF10-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48516FC3DB3050087AC092F0EC398D-8D7B-4EC8-713B-C0C180F4B9180-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F485236FCB7B2B50504571BC3F0882E-1B2F-29BF-4FB3-546E15DFD5E50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48533B991848F6139B1FA448622DEF-D1C2-EF5A-894E-76ACA2B7040B0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48535D4FF8C1A1025A18B5F1B790C5-B05C-A83B-D4DB-98C60684E03C0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4853C64EAF7E3F01963F4910007905-F37F-D6B9-ABEF-7BC345633A400-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4853F7111D30AC18B4BF7F24AD0453-006A-4D5E-1A0C-8C6FE3F2EFB50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4854D0895D6A8805BB073478A9822B-5C97-3887-415F-2E6180EC77560-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4854DE23ABDA71085AD8AF4040077C-72D6-D10E-A8E2-281A830371600-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/050C00005583B8C567BC3D6F5E07F1830-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC516737B324DE0AC1F20-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B324D20A73CC0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B324FF0DE0DD0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B3562D0BA4920-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACCF6737B325220573FE0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD06737B30E4C0AACCA0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD06737B324F7010C740-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD06737B324F80448270-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD16737B3250E0CFD700-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD16737B36D870ADB5F0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD076737B3250308E2160-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B3251A049E210-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B3340202B8E30-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B37D420839260-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B325200C8DA80-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B3252D0AFCFF0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B37AF104C6F00-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD0A6737B308AE066CC00-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD0A6737B325300D6F0B0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B3253703FCC70-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B349090CEA210-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B35F790A9FC70-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD256737B324D10D395E0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD256737B3253A0C33260-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD256737B35F7208971D0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD2E6737B371B30A9BDA0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF16737B324E90D1E7E0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF26737B324F60BE6B00-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF26737B3636E0429E70-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FF4DE6737B325270C62130-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005420056E6737B303C10BA44F0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005465C14F6737B3325A0955CE0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000546F10836737B34B7E03A0980-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000547705646737B340AA0A959D0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000054D335C46737B35DA20A3BAD.jpg0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000054FD72CF6737B34B240EFFBA0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000055015FA56737B3297D0A1C7B0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000552E1B996737B353C90605CC0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000552E1B996737B3642106DE840-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553705DB67BC3D67110609FA0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553705DC67BC3D302B0846940-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553F5B7D67BC3D082C0D42390-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553F5B7D67BC3D224004FF650-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553F5B7E67BC3D6D44065FB50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000556821A267BC3D2CB10AD9A20-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000556821B667BC3D2ABE042C2E0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000557A941567BC3D7F2B0633B80-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005583663E67BC3D20A50C87170-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005583663E67BC3D341D028BED0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558365C267BC3D28E2014B9D0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558365EA67BC3D67A20737D50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051500005583850C67BC3D22B40DD3C40-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051500005583904D67BC3D29510BD4250-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558393A567BC3D189B076DAD0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558393E567BC3D441F0F22C50-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/500-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/53.jpg0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/;stok=a094fa1c55f2125e2a34caadef198da80-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ani.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_large.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_mini.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_small.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/blanksprite.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/chuda.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/chuda.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsCommon.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsDatafromPrototype.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsFriends.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/common.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/compiler.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cps.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/drama.8.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ent.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/film.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/get.json0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/gridTab.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/grid_pc.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/header.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/hover.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/html0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ico-cert.24.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/iresearch.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/jquery.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/loader.swf0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetoolresize.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/music.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/popup.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/prototype.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qfooter.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qwindow.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/resize.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/seedVideo.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/share_msg.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/slide_next_btn_new.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sport.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sprite.gif0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/tdstat.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/toolbar.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/topic.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/tv.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/user-grade-icon.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/video_default_200x110.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/video_default_420x240.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/video_default_90x50.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/vip.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/www.youku.com0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/yk.8.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/yk.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ykRecommend.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ykhome.css0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ykhome.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/yklogo_h.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/youku_laifeng_v3.js0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/zy.png0-7000 create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/data.json create mode 100644 1_7.http_proxy_server/python/my-twisted-connect-proxy/data.json~ diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.py b/1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.py index e705ba2..a25784a 100644 --- a/1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.py +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.py @@ -4,7 +4,63 @@ import urllib import urllib2 import json class CacheUtils: - @staticmethod + def download(self, url, local): + #urllib.urlretrieve(url, local, self.cbk) + urllib.urlretrieve(url, local) + + def parseUrl2FileName(self, url): + fileName = url.split('/')[-1] + #deal with pure url + if fileName == "": + fileName = url.split("//")[-1].replace('/', '') + return fileName + + def cache(self, url, range): + fileName = self.parseUrl2FileName(url) + req = urllib2.Request(url) + req.add_header('Range', 'bytes=' + range) + response = urllib2.urlopen(req) + buffer = response.read() + with open("./cache/" + fileName + range, "a+") as fp: + fp.write(buffer) + + def saveReq(self, url, range): + # Reading data back + with open('data.json', 'r') as fp: + data = json.load(fp) + data[url] = range + # Writing JSON data + with open('data.json', 'w') as fp: + json.dump(data, fp) + + def delReq(sel, url): + # Reading data back + with open('data.json', 'r') as fp: + data = json.load(fp) + if data.get(url): + del data[url] + # Writing JSON data + with open('data.json', 'w') as fp: + json.dump(data, fp) + + def checkReq(self, url): + # Reading data back + with open('data.json', 'r') as fp: + data = json.load(fp) + if data.get(url): + fileName = url.split('/')[-1] + with open('GotIt.txt', 'a+') as fp: + if data[url] == "None": + fp.write("the file you request has been downloaded: ./download/" + fileName + "\n") + else: + fp.write("the file you request has been cached: ./cache/" + fileName + " " + data[url] + "\n") + return True + else: + return False + + +""" + @staticmethod def cbk(a, b, c): '''''回调函数 @a: 已经下载的数据块 @@ -16,45 +72,9 @@ class CacheUtils: per = 100 print '%.2f%%' % per - def download(self, url, local): - urllib.urlretrieve(url, local, self.cbk) - - def cache(self, url, range): - fileName = url.split('/')[-1] - req = urllib2.Request(url) - req.add_header('Range', 'bytes=' + range) - response = urllib2.urlopen(req) - buffer = response.read() - with open("./cache/" + fileName + range, "a+") as fp: - fp.write(buffer) - - def saveReq(self, url): - - # Reading data back - with open('data.json', 'r') as fp: - data = json.load(fp) - data[url] = 4000 - # Writing JSON data - with open('data.json', 'w') as fp: - json.dump(data, fp) - - - def checkReq(self): - # Reading data back - with open('data.json', 'r') as fp: - data = json.load(fp) - #print(data) - #print(data.keys()) - print(data["www.baidu.com"]) - if data.get("key"): - print(data["key"]) - else: - print("error") - -""" if __name__ == '__main__': cacheUtils = CacheUtils() - + cacheUtils.delReq("http://static.youku.com/v1.0.1029/cms/img/zy.png") #url = "http://www.sina.com.cn" #fileName = url.split('/')[-1] #cacheUtils.download(url, "./cache/" + fileName) @@ -63,7 +83,8 @@ if __name__ == '__main__': #cacheUtils.cache("https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superplus/img/logo_white_ee663702.png", "0-7000") #cacheUtils.cache("https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superplus/img/logo_white_ee663702.png", "7001-14175") - cacheUtils.saveReq("http://www.sina.com.cn") + + #cacheUtils.saveReq("http://www.sina.com.cn") #cacheUtils.loadReq() """ diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.pyc b/1_7.http_proxy_server/python/my-twisted-connect-proxy/CacheUtils.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a3457c53575e6c944f72b7ec14f4bb36ee326b7d GIT binary patch literal 3046 zcmc&$U2hvj6rEYyN#h1ul9Z70!ft zNh3MDg!lXt9{DZ&2OjwWaL!$C(gq}WY8>y)^?cm9bMCqKZsX6_+JF3hvX!XWr-AFidS-FZ0kgfVvnRq5qmQQy|WA`Xxk z8+hE$5L2*7@B~!H4Fxntz)};r>ZK+X<335C~&H?0U zL#=W#_>A?ZE9!V&P3P4Ja*lTOV^H;nABC?3xG&5zasJdg`nGfAt-B|__riqf6$%;R zkGgc;Dt6xy-Prw!bzV|3PSa>$Jr#_Wpt#o|l)i?)6+DajW)*cVB6Je< zCs4q2CWI7@(>GrTJW@mgUxf%!1Ovc^yR!|FL8q(r2E-cEGWcRpnH7Dv0GY-(&oN?>`Dp=At zbQ@BN6|ZszHd@R-zz*sx1N@S7Gq4-XwJP<>2ZR;+J=Cg;*jM`ncm#+kSs6�C@TZ z>#e2ew`BKle+e zk-ef-b-B~2%IC|xGPhyPFfL|=cFC+q<-|&{e;8-ZUQBUjw=hkL?xoO;d5eCNJOkl~ zhP-Iigj?22`nrBA_)s?kxv}(vD9X|IqewbW6zvu1B*RZb=1QwFH>usCAcqYvc78e0 zUfpY!!Qt`(AgMH`7n%$63;eVzml!2OHW;>&s!Bk)JckA2yA`VU*`VdUU=h7-Q7=FG E8?tw$tpET3 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt b/1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt new file mode 100644 index 0000000..b78242f --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt @@ -0,0 +1,11 @@ +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt~ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt~ new file mode 100644 index 0000000..be44d4b --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/GotIt.txt~ @@ -0,0 +1,80 @@ +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/ 0-7000 +the file you request has been cached: ./cache/50 0-7000 +the file you request has been cached: ./cache/0130391F4854DE23ABDA71085AD8AF4040077C-72D6-D10E-A8E2-281A83037160 0-7000 +the file you request has been cached: ./cache/0130391F48533B991848F6139B1FA448622DEF-D1C2-EF5A-894E-76ACA2B7040B 0-7000 +the file you request has been cached: ./cache/05100000557A941567BC3D7F2B0633B8 0-7000 +the file you request has been cached: ./cache/05100000546F10836737B34B7E03A098 0-7000 +the file you request has been cached: ./cache/05100000556821A267BC3D2CB10AD9A2 0-7000 +the file you request has been cached: ./cache/05100000556821B667BC3D2ABE042C2E 0-7000 +the file you request has been cached: ./cache/051000005465C14F6737B3325A0955CE 0-7000 +the file you request has been cached: ./cache/05100000547705646737B340AA0A959D 0-7000 +the file you request has been cached: ./cache/0130391F4553E22B8C361A0646F416ED804189-16D1-22B0-6592-2DE9528C4EBC 0-7000 +the file you request has been cached: ./cache/0130391F45530DBD99CBF3150EABFA52F54356-2481-BECE-753B-DC8FAD62B933 0-7000 +the file you request has been cached: ./cache/0130391F4554F20EC3A786189FF021190DA8B8-2BDB-69B6-1264-95CA09BEB5AC 0-7000 +the file you request has been cached: ./cache/0130391F485236FCB7B2B50504571BC3F0882E-1B2F-29BF-4FB3-546E15DFD5E5 0-7000 +the file you request has been cached: ./cache/0130391F4550C6E8234FC20830E1366754DB3E-08E4-6423-5297-D1C992589702 0-7000 +the file you request has been cached: ./cache/0130391F455463233C4D1A1BA985B0A18CFBF7-9827-5003-58E8-966A559DED6C 0-7000 +the file you request has been cached: ./cache/0130391F45533B8CE4A5E7030C71A035A2D08D-1CBC-D104-230C-A9F53170EE77 0-7000 +the file you request has been cached: ./cache/0130391F4554C59AB6E5630023C04A1E86AF52-68DD-5B50-DDC7-3543E9FB93EB 0-7000 +the file you request has been cached: ./cache/0130391F4554DC5277E951181CBEAD9761A8B9-B30B-B81C-5B88-F6AC54AB1057 0-7000 +the file you request has been cached: ./cache/0130391F4553BDFD01FB0D04A0DAFB54F6F014-8FDF-60AD-0854-2F756AC1692C 0-7000 +the file you request has been cached: ./cache/yk.css 0-7000 +the file you request has been cached: ./cache/grid_pc.css 0-7000 +the file you request has been cached: ./cache/ykhome.css 0-7000 +the file you request has been cached: ./cache/jquery.js 0-7000 +the file you request has been cached: ./cache/prototype.js 0-7000 +the file you request has been cached: ./cache/common.js 0-7000 +the file you request has been cached: ./cache/cmsCommon.js 0-7000 +the file you request has been cached: ./cache/cmsDatafromPrototype.js 0-7000 +the file you request has been cached: ./cache/compiler.js 0-7000 +the file you request has been cached: ./cache/resize.js 0-7000 +the file you request has been cached: ./cache/qheader.css 0-7000 +the file you request has been cached: ./cache/user-grade-icon.css 0-7000 +the file you request has been cached: ./cache/chuda.js 0-7000 +the file you request has been cached: ./cache/qheader.js 0-7000 +the file you request has been cached: ./cache/qwindow.js 0-7000 +the file you request has been cached: ./cache/popup.js 0-7000 +the file you request has been cached: ./cache/lsidetoolresize.js 0-7000 +the file you request has been cached: ./cache/lsidetool.css 0-7000 +the file you request has been cached: ./cache/lsidetool.js 0-7000 +the file you request has been cached: ./cache/cmsFriends.js 0-7000 +the file you request has been cached: ./cache/seedVideo.js 0-7000 +the file you request has been cached: ./cache/youku_laifeng_v3.js 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/qfooter.css 0-7000 +the file you request has been cached: ./cache/iresearch.js 0-7000 +the file you request has been cached: ./cache/cps.js 0-7000 +the file you request has been cached: ./cache/sideTool.css 0-7000 +the file you request has been cached: ./cache/sideTool.js 0-7000 +the file you request has been cached: ./cache/tdstat.js 0-7000 +the file you request has been cached: ./cache/ani.js 0-7000 +the file you request has been cached: ./cache/hover.js 0-7000 +the file you request has been cached: ./cache/gridTab.js 0-7000 +the file you request has been cached: ./cache/ykRecommend.js 0-7000 +the file you request has been cached: ./cache/chuda.css 0-7000 +the file you request has been cached: ./cache/share_msg.js 0-7000 +the file you request has been cached: ./cache/get.json 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/;stok=a094fa1c55f2125e2a34caadef198da8 0-7000 +the file you request has been cached: ./cache/beacon.js 0-7000 +the file you request has been cached: ./cache/MTFlashStore.swf 0-7000 +the file you request has been cached: ./cache/html 0-7000 +the file you request has been cached: ./cache/loader.swf 0-7000 +the file you request has been cached: ./cache/0130391F45540F219F90571975D51733572DE9-180A-C171-DDB1-75757E59B4F4 0-7000 +the file you request has been cached: ./cache/yklogo_h.png 0-7000 +the file you request has been cached: ./cache/header.png 0-7000 +the file you request has been cached: ./cache/vip.png 0-7000 +the file you request has been cached: ./cache/toolbar.png 0-7000 +the file you request has been cached: ./cache/050C00005583B8C567BC3D6F5E07F183 0-7000 +the file you request has been cached: ./cache/051500005583850C67BC3D22B40DD3C4 0-7000 +the file you request has been cached: ./cache/051500005583904D67BC3D29510BD425 0-7000 +the file you request has been cached: ./cache/list.json 0-7000 +the file you request has been cached: ./cache/getRankData 0-7000 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4653A2B540C6F60414569C20E0B182-2A0A-71C0-7E7F-CC19FCD5724C0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4653A2B540C6F60414569C20E0B182-2A0A-71C0-7E7F-CC19FCD5724C0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..31f89d284daa52019407ec75b2865835bcf4fd9a GIT binary patch literal 6055 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4653D768233BE001963F4937519C71-2016-F477-11BC-63A6154F90680-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4653D768233BE001963F4937519C71-2016-F477-11BC-63A6154F90680-7000 new file mode 100644 index 0000000000000000000000000000000000000000..cf7398a8cdb4f719514c6df9656afc0dcc264a60 GIT binary patch literal 3962 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 T2T70<|08vz@bS9j@zj3-Qie2O literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4654C10E0439130381150BAA5AD25D-3E86-C49F-51CC-B1900F76D4B80-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4654C10E0439130381150BAA5AD25D-3E86-C49F-51CC-B1900F76D4B80-7000 new file mode 100644 index 0000000000000000000000000000000000000000..5936d853e5ac3de4a8abda6308af518be8aba1af GIT binary patch literal 3798 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 YpQoG`i11)8d_LEHTb9J7mwGnw9{|`2JOBUy literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46556481A0D4350558C2B7056D2567-E140-E9EA-53E4-8A1535C671270-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46556481A0D4350558C2B7056D2567-E140-E9EA-53E4-8A1535C671270-7000 new file mode 100644 index 0000000000000000000000000000000000000000..4d3baa6373c2358735b97ea2190bbf6c856e84fa GIT binary patch literal 3221 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4655685D5E374D04034D20302195D7-C33B-D192-AC6C-AF9F271C4C1D0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F4655685D5E374D04034D20302195D7-C33B-D192-AC6C-AF9F271C4C1D0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..29c7807df97b8601c30173c5c012d2402b672a5a GIT binary patch literal 4031 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 Bec}KB literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46556BCA66A6790945A1DB973566E5-BE5C-2B30-DC7B-918FB15F384F0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46556BCA66A6790945A1DB973566E5-BE5C-2B30-DC7B-918FB15F384F0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..ae8657ec6ad4ae0841dad402d26990ea682aeaff GIT binary patch literal 3644 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557B6A1382530064DE1D3F5F87B4-39BF-0849-7D22-156D4127404B0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557B6A1382530064DE1D3F5F87B4-39BF-0849-7D22-156D4127404B0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..15c14129ea736081a68bea08253218fb7da9565a GIT binary patch literal 5013 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557ED70EFC9B053F14D114D38641-39F8-9BCC-22E3-7E35AE57069F0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557ED70EFC9B053F14D114D38641-39F8-9BCC-22E3-7E35AE57069F0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..fe99a913577bc7163367a75ae88dfed90480a7db GIT binary patch literal 4120 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557FE65B99CB154C5F2A10701786-4968-7D5E-89EA-BB61473AFDCC0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F46557FE65B99CB154C5F2A10701786-4968-7D5E-89EA-BB61473AFDCC0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..f0bedc4d3d9c058ff2f3f3032dfdb2f5f319c1fc GIT binary patch literal 3683 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 Lg(CI0=hOcOs?e3Q literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465582899FAE7F04FF5D68602306AC-2941-1C75-9A04-A5449A48608F0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465582899FAE7F04FF5D68602306AC-2941-1C75-9A04-A5449A48608F0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..4ef7853a230080866befbae7417edca4d48bd03a GIT binary patch literal 3510 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465582E7EB5E5105BB0734254F8937-F2A3-13AF-E6F5-1418A4E1B9DF0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465582E7EB5E5105BB0734254F8937-F2A3-13AF-E6F5-1418A4E1B9DF0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..71eebc8cd51b019a9594235f910042045208a203 GIT binary patch literal 3880 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 PRPUZvI0AjpGt&P6!`mwV literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583949F9F8B035C40D23631B19F-7100-519A-4AF5-920A50F2C4590-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583949F9F8B035C40D23631B19F-7100-519A-4AF5-920A50F2C4590-7000 new file mode 100644 index 0000000000000000000000000000000000000000..055b8a31da4cc0a0514c8f15ced1e3d514770e0e GIT binary patch literal 4169 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 aHQ%07#Rz?OlN1ND5&RL`{>tvX$^QbwV{Z)r literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583AB307649019DBA843A8902E6-57D9-CDB4-9797-79A0537F31810-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583AB307649019DBA843A8902E6-57D9-CDB4-9797-79A0537F31810-7000 new file mode 100644 index 0000000000000000000000000000000000000000..dcaac39f51a4ff27b15415e5ab26ef0676617abc GIT binary patch literal 4844 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583C9D2605D058DBBB006045D0D-6A74-3295-3DB8-6980C32011110-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583C9D2605D058DBBB006045D0D-6A74-3295-3DB8-6980C32011110-7000 new file mode 100644 index 0000000000000000000000000000000000000000..41620b115471763c438427c523adff348b73db9a GIT binary patch literal 5931 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583D3F04A5700E80CB75F5BCF7B-8020-9C8F-4515-81E495F8611F0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0100641F465583D3F04A5700E80CB75F5BCF7B-8020-9C8F-4515-81E495F8611F0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..48aff7b7cf9f4b48b1f4b9271491bb29f9e15054 GIT binary patch literal 4412 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 skIhpXO z(P+E+SSe>u?vqz7L`8U5uyU26zKDBEXQediPCkparrsr3xr-)q&9$T^IcrWjBpHpG z@i#`aQadWLQyOxecI{-f+YsBkdAO&oVj_9o_H=bxjb^hnmv;X0o;5R98wmNK;{=XJklTWd7s>U-?kG+Mb+7OzhgDxOAC(=EHrPQl7r#dsr!KQX+AN!|2nm8MWUnGWzo(|2q!iCP$6{} zVRZNHw7wVn=00h9B8y(d8oF^%seI?YUaj#+3td_)U=w^yI8~fi=3x{3=qvGDlf+Yv zaBFSY1|xXZi~DF!*$(nel~RiCX}xu+hdZv0@nTsgr@c#dnbCWC%cV4#2J{`i?W1Dz zslZomOOAqg5y3R6Oqh1-c;YMihiQ=v#pj)5406zmn9q39O?xe&; zXTA{6wW|4+(%O;`2{V<|3i?FGb=o|~a9QHL@0xdjp@mk;TKJBkgFXdWLpD`uMMzj; zITiF6L>Jv6P`@eCa;^(M1}a$BqTW>5%B4tXo4w5jurY!BNFCN%cmwtXvB!HV@Z)*Z zIs7PZguY#bj!qjW1@Eb@d(GCoNoVWPp8MGq+P!p$bop5w(Ak54pITJy5 z8OT4UH63&0G1!EOcTgdM9snyWdS}g^x9`3d)R$!kY(fQgqFFmycs^v-ebJ0o+0J-M!i1>qq%(@!*bM1g{39f*^I}Nt>!tGa20L1gO#5yd0`Jv;f zaonnsd_|s`+Ov^>&SX4EzPoWjXJgo?6D33A)u2Mnl%Wt%g{#ZHelDYC4!WGB!+IZe zNa!Aj86MOCx)CokQ3av_zkvvH2#Y5W-GhNY+uEjJG?FoZ0XVPvr zU4dL1-1P+PD`xd*C1wl=^ix)Y3TbJ@3umJp^~!F2PmCIOhjDT+#7cd&fe|r!6;41m z0xfj+jlm$os4_^{X|e>Jjd`~~>>Bb4To)K}PiNj`2a3SrU%n@NTSb0R3O;-(?*xRj z6@)Dc9~yKS>`yv^{g`1$5}=jg1Pk)F5#W|H69i&D)fNoq1}}ABjK&L2n;RinN>3c` z3GK2CtwK&UKs*=$5hJMQQCE=n$?h;ZhT_hswg`E!>nLr&OC9B1cC;Ty9<%P~o@d?j zPFuiU4W{NyksxR=C;{-+w}WClKp#f)jP&3sSu$0o?2 zZXAeOG610pafwm^J{dS352^OWU{Yrv&=wpdm*!E0=-Id>EkOJJrDGJw6+6ffDR+Q) zBzw=}Ax7{HYbXd5?o;F(%82BV^9)^4uON&}7(l@R-{@)>wh+yMbmgvP;CQ%W{L_Q+ ze~u_O!ODr5rX6E>@epD@m_^xpV`P`WgJICYN2+t_R|+ea9C}7@h$$xWn(zWiD;ngU zj) i(-gciID3YB4rEr+;H2Te&OJ{qSrT|m4i*0j@&5<;xQEdI literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4551C51ED81F47000BF9C241A7F60B-4D56-EF7B-85B5-2E0D815B11D40-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4551C51ED81F47000BF9C241A7F60B-4D56-EF7B-85B5-2E0D815B11D40-7000 new file mode 100644 index 0000000000000000000000000000000000000000..1dbe5174809f640b2301815817bb2d7f3aca03f2 GIT binary patch literal 1418 zcmb7;c{tPw9L9e$zd6iC%%KMv*Epud)Er?-Gc-?*apV{Yr3|Gerjc9PGK7a^h0vO3 zB8H}-vd)Sm$2c~W7*p0!+L&c+Pb!gFJw5yEvw!aU{`r2tpZ8VCRa1Z#+sV}lfIuLC z%Z35f3xEZvArMFeTn&jtqEKqzspB-%H*Hea#b7mYcs)Y{yq>p-}3Z)O9p8bSTF9#+3gpRXc!I11JCmgqQ$OGz3IL zRGq+90DyvD*ZwOc2uG;Fpc^4o3xI$i2nCT)hoe%KR0=>H z+(^(M8ejs~Q%nMKD08@bXnuJ2lyKZah%4wdGdoC-gqci|MjytK14Fxy$jZ7uGUt@u zP4RxM`(aYY=Qdkm*ml{(3TT*g|8inu3%)ef0~%Q))j-zmnV!9L@n~FkB7?)FJbU4F zzRjjT zb4$z}-)$eWJxat>qfk2=@rHH!LTY}w7YLNh0}&pQ!?K2aUKI){+ESD!L@-s_l=He5n!-THDR8wnXNhMyo-w6E4#3MqZ!@;$Iyi_Qg zm%|w)n4<$17rjQM?+o2M;FhSf7KLKFKgB0SIo>gG3!9A^+Y|=`RYQyIPlZ_=lqp}~ zh^*pexE`+I^ZE_?qqBY0ynRaH&Yc9{)g9fn&%TVe1IHK9lHM$(wTy|$uaQ`)0PAY~ zkGFC-W%r{?V|}kAS*`!VU6$5=>CkGduk2Y8@g1T=p4eL9@)JS4CS5yyXqZ1R35$_N zUA10}j@NafIKTAm<7C<>eF~jqYhb-Lh9h9K+&V5g1N+sL#IlxNdz_%Qt$U~zxjshm zM--(Tqsrutfmf&b2JXew^%1|4+%jNdpEi_HF=i%TC?F}%2}J%6Ivw-!3g5;3Sn#3C zv-1;?wf?DitB=!b+v!=)%gGZL@JXK!TpJJPJ*n^A+ow;Yw}ZLkgX|+O#hh$WG3N|t zre&}wDv12Ra|VHpXk{zj>TvltLQo2fTt=!sk8i7=D@q%O0-!krJ1{^yk|N;Iq~+_rtX6 z6CIWG9)0sug8cUZh=V%$X=d)0v+RPN$8VFK){fOi6yg11LInLoqU3rro9W30i&UY& zfxhr_Y2d2Uj>zn6EV0?ek^O^JQGU|(&mY!Sd;*#@GwD-NekWpP7f15EG&#@sK|Pw^=^r-0;;kq9#JRuH~cnNz&+WN>@|aFtqJ4n_Rz}XSNc^z z=<4vkxQv!bNl4!u^B5SHo~}s jUCj;FJa02L-MlSmr3-gJd3G5_|G)qX2mnw3 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 Kw(G*?%fA5-lqAOh literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455269DDF4FAFF08565B2626163821-113D-8012-C8DD-2591F23004530-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455269DDF4FAFF08565B2626163821-113D-8012-C8DD-2591F23004530-7000 new file mode 100644 index 0000000000000000000000000000000000000000..70362e85763adfecf0f50622cf8445b99fbde945 GIT binary patch literal 3295 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 JY>dhI{{SqUz0&{y literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45531D77AFBA7F053F14D16A6F3894-23FF-5592-3946-B1B122D18CA30-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45531D77AFBA7F053F14D16A6F3894-23FF-5592-3946-B1B122D18CA30-7000 new file mode 100644 index 0000000000000000000000000000000000000000..69f8d3ad0510e23ff33e049c2d7156d9ccdac677 GIT binary patch literal 6035 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 QJAjEP{>M~m;`WRG0N+UcZU6uP literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45533B8CE4A5E7030C71A035A2D08D-1CBC-D104-230C-A9F53170EE770-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45533B8CE4A5E7030C71A035A2D08D-1CBC-D104-230C-A9F53170EE770-7000 new file mode 100644 index 0000000000000000000000000000000000000000..a3b3fc451ec62998be49e67807bc542e61ab6a4d GIT binary patch literal 7001 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 Be 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 BrAhz* literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4553E22B8C361A0646F416ED804189-16D1-22B0-6592-2DE9528C4EBC0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4553E22B8C361A0646F416ED804189-16D1-22B0-6592-2DE9528C4EBC0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..bf17ded5be91d298c0613866a13eca14c453d56d GIT binary patch literal 7001 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 B-F5%~ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455443B94F99C60309545B4E6A9869-B6C0-ECA5-264D-37E90D4A62EA0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455443B94F99C60309545B4E6A9869-B6C0-ECA5-264D-37E90D4A62EA0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..cbb1cb36052e35a53a852585c9860b534a2588ec GIT binary patch literal 2842 zcmb7@dpOhm8^^yh#++uuGFp)pTMl97A*URcjT|PY;Ry-zFeW9TLX(_w7!k2)&XI`` zPvsFgm(xQIC8Lt?#G^+={Peqi*YEfD@AbK_`;X6kzu%wx`drt&`)ca=ugnnjWVPO%7I0Pah0+AGhii%51!lb1orKDhRq%2HE9xf#%t0*hK zPXUEO!4OJlB?UB60j2QM1hglGh(IJD5D5htDH({dWUM2rMiD2OtO)S)CKUqKBLqs=D!F za+E9%59t>%ERV5B$o^w(Pm20!y7vkHzV&_pA$2+wD|`crS}@HaG_f(sgOh&i+1-ZnjL|=4Y-WCdKZo2 zvimb~s|@y8Tm}d~*68?3W))$1OQ}62e%N6({zC8L2ZmfYBGb3=oB({fACUZ#gVw@m~jdVA|ytZv!`Br{Z z*I6y{P?LlI-%X&q7Qj#;nYUW4`(RGS(x zLaN_sOr`woBAPuPTCQVjubbc?Iqjx5fKFaXopX3v9#TcT-EcKO*tUB7O>QOY4B3nu z@qDokmnIuqka$Sri%yr_x$xc*WT{Zt$5_aZ6!vs!l$N(WJ%Fy=h zv;@{McmTH^81NN$ZT@~|TA5eUPRI@#=jyORE|`pSBJ4@PB{a$8xTC{3PP z3zD}I;*1O(g;=l16m6%3ILHP&En-iCthF^Ixs~_^EuQaURI{x>kNJ|gZD{7*)8^0{ zq5IlQdm+VkrT6ZymgE3G)!Mwf&dsm;XE?6b>CdOn5{)u$nQ6?dTC5Or@{RFX*pzz= zrOb5+nypsZh!`e}Zs`~GA%x)J?PTn}*`Va+{NjdJ{&K;2a6i@CnNNYbtZIg?g!M~A zdT_EcznIp078ipXe7UUJyvD=S+6W_V>Z&1vgq($?QvJ`@2EC!Jc;Di5jp{jWBA?n; zImw%5>Gnykfwe1=mOx)fyFksnVo!1U40X9vAK71m?q`RU{&Uo9`iUW%Y2Y@ed+s<6 zb5V)VVwC>FMEmBN)Lp5sCE~yB0&kb3p1fh3s%5!}=9@^%KbxEg$nbsXA))=w&9wx! z_$MxV%=QcF7&R(s>KfFd2{Rj0ICuDty_X-YD`CDb%=*9sw;QqsmuPzWPFLpKuf&Qm zP<{;OQ(S~2d+Ib~&MG>7!Td3=RNCdC+?dPf%g1)cF61ArA@(izkkwTFvMj^F?d9wtq5|Iky1C^x9RR)AU#DVNBnM|^3M@m9r{6I#EndjVP zu{hlaWkif&M2oVAEsN45aYbqS$>tM;jYiu--vMGtCg=2$&Z|^YTe?k-dzNvRCLVu% zlG@%f8{_VEW)zW{HY?Y9RJ%6=`=-FRa!mbwFq)bFmK4TBGs^j+dPP3U62eua29k=K za<;VK)jb+&%q#0}gLm5;fra-)D%H>Oel16X!2JD9jZ&F^Fd&y${@tNm4LenCidk#J z$Uk_vf+*HjY$Dh^-qC@I?tsH8zYAd5i?gsp+TS==k6k+N%o*)+Es>u*{g3C@RW>sZ zSgHxD_?A3fr+?`Ynvs3%TZ)z!8#VVbxqh8op+iVJ!ZWjp?yQujIbaqYu@pLq_xxs8 zKP^A6O${#4w<=W`VsSp4Xh0A)pXj|kHB+z{aB$;lLzNW!zT|IZi zDZcmtOo(E`32?!ag}87f=nZP|0wEA8nXu(+ts6hmq?|hG`t7k+R7c$l6RF#FQwEds z+OD2yWyVeQQ$@1gX_d23`+e{Zic3T(i&eeo=#s1|(^c?7n)wnwA(xk{#O zwQFXxk=I`{(~xI7`%hPl3yxp~{FX#2UCiO#C}_B&%=@?7&`>^fzQuxKus%~1F+`cP z;szFVnvv_7CumL~@X^WIzCK@TlQ z2MzI4E{<{!&Q3@U7Z1+sbXIb3n0x0cBS;&Y9Ygf2H#6Phjk$;#uhjMKV~VV)MBZ%h z374$uUd(nk-!Oh7DBym3b+KE4b;PMx)B?(AToXedMn6+09Jx%4{{EB_2c_Q@1FP%; z>NW%@dJB|(LO56{&C*t;B$ln7D~Ca>Gn{eX73;WGX_ z&GC^yw~-cCCM1%?otjSd<9VqzlDZ3Ph84WxQ58$s@;kntBX70OZkq8Aeuox!ew5|t z_Cp!x)W_Zit?DB}9PE%$56ixAHOn(0*VR106QkmYITm$Cu5TEddjRhNQ*W&}$fI>V zh*PojF|X(Grt6MUkG#I&V%1x%!@=qKMBgP((A(gnvV|M?eSFD;POHzT#z!WU$yU%8 z3QrMz9F}Njd(K6%hFw#D77Ypa7&YQnWniYQB15LnhSiCL2uc4|!--DWZ&2u5%s zqPebWvrVr3_&m&P1K-7=aE8||-82u=eowA0a}u=r6GJ29X7ZKQ{FpLf6TRz#g^{{j HyOaL{KK|uK literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455463233C4D1A1BA985B0A18CFBF7-9827-5003-58E8-966A559DED6C0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455463233C4D1A1BA985B0A18CFBF7-9827-5003-58E8-966A559DED6C0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..587778652cd3304adb5b7258384a697c35a24509 GIT binary patch literal 7001 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 G)cqg!DY$n4 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554897F747485132160689D03CD26-3A52-8330-6935-E427C6D30D430-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554897F747485132160689D03CD26-3A52-8330-6935-E427C6D30D430-7000 new file mode 100644 index 0000000000000000000000000000000000000000..c28d4ef22f81c2d5e6099c0b41456b7b967eb943 GIT binary patch literal 1630 zcmb7AeLNF*82|0fUc7CyAsI1sH|Z|B@gY*?T1Mn$%UkNav*leydZl96+|((~yoA*) zlwP*DiwaG0RB{z=6f*Bcbx3yW?ml;a-}m|c^L)O~_xpLCNA+Aa1h8%lCIdhq5b&M4 zfT|z302mbdnQFk*M4%7|I2?gNA~jH27%eSLjHafx4j!wmgVWK}#Oh;ldITbosHJOQ zs82A&6NrS*ArP3_14p0{2sA-kQ=9O=p}GTbC_n{N7{nYvaS#{|qG|=k0H`-pZ~Grm z2s8|i)PSnhjaUGMz#vE%6oL4A00LDXfCCyxyqUGLH;Q1ccY;i%ha?hxGK3Xs$7%?G z{l$Ot5E@80fWlB}k%j|mKLW0Pz(2CO1#lcfLmh?>Nfhc4%&9gNcV808-jCnVZ0Q;G zsy?8l4us-hIIsmUrF+AEy1*{p7I={%f5N{v+)O>hmCn49$J9o{3+GLLUhCdbW+veH zXXZr(*y?Bfu8+8+j_w<~+&7dGYsy}n>STOt3iUH~t13yv z+M5pU=?VWzI$e9-r*Wrt9o?u@9DOVNWjnCj-2NKXKHD#fSID~4YHRS_R2F#InOvR{ zinPjn7-W5j-?#nBX=a@7$LRWZ<377^b?Ey*?zv8$Co+f|^5@3CjwP;yCO%9!?y0!> z)7qr>m{sX*RfC@_rj8B<^_9J`Bpmh~Kkh%Y-{Rur}MljfN|F*7!ss~mm6+7tfu zi7}H+6G6#)uE*(rDOG3!iq?qRRh?5;wjXtai=>|K**S#p?lOt3{!LYfYm)UJ~U zI9{2Gtj5!?JK0@zDXHIy7h}rceL#XK1ip^-x@xRx>F)+ zUFkQI8w3-;0Qr0N)55Us!1kfHdaa&LcJrkwuy1naDs)6p+ybnI5-pRyuu8Dk8gCRy z=u19;m(C79J68$oG~E;_({66$3ooB=Uom&R29+1dy-Nq0`ur%}qh#TxV(IR{oD^YD z7Tj1VXbUuRQEcp_p2Ks@$E`|hW7&m)Xa(llT+jU}*4zUxPyQ|&-AkIi8;FjS6bV~k zv$diDXwbNJ=dQ=_{LKE~Lqopvt#a~O2&@pi4Xrpm9DgdBEZ)w0LVfaOm-D_1)U2?Y z``fxn%4CGN`FXh86;5fNR76-W*75PghfXk)^+vG-Dp0eoCil&k$ zHk;?BS=jE}q1bR~SEbAOWidM^w5}>Vteqci6|gTxHmED+RkckDmr z!5h;ITGhy|y`gXTNP7eA~D<`-h!cvYbfA(W`S}L`` zSuib?b#>r9LNTjjSweD+4>1Ccy(s4I=Nu_%Y}<+7;LK;!Pu^X~OBt^WXuS2bl#a^2D7Z5u*@+A-}!ZO;?34= zcBu#7zsvTR{r3C4++n`H-AESiu?Eca9Mxf*t5{p`yVI}!lB)9R0`WHbJk2t=$)mUa zOeLe~jPT9Ou_@QxGs(Qzvo{{yy-M*Wk{pw>bC0liE>Zl&u~p9s`x>eOY9~k;g{#2a naw9FKi`(LR$K|AKT)4`l5IenK{eIlY$QN8#RZE&mH literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45549CD39F378202E272768B8E6D32-B9FC-5BB8-7460-8CE54D81E96D0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45549CD39F378202E272768B8E6D32-B9FC-5BB8-7460-8CE54D81E96D0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..2251d66bf5ca6e209e21f7cd59e50df8af3dd953 GIT binary patch literal 7001 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 QROTBl7ppXgdhh1{0wO1}WB>pF literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554DC5277E951181CBEAD9761A8B9-B30B-B81C-5B88-F6AC54AB10570-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554DC5277E951181CBEAD9761A8B9-B30B-B81C-5B88-F6AC54AB10570-7000 new file mode 100644 index 0000000000000000000000000000000000000000..42e5d32ab74c10daaebadefdad6aa85de2a46b0f GIT binary patch literal 7001 zcmeHMWl$WzlHSEN1ScU7+&#DkSr!eh!7aez1eO4cB{(b&fdIi0baB_<8r-s2(BRGz z{CGcJ-QBPE-oN{C-*i<^*L3yt^h`~UJj_4*20T?!R8|B4fk1%LV*xxY0ObE6{Y#*s z0fCPMMEfWHyN31;Bmcv||5E#>`oH84KLEryKw+RTI*=HEMhrwJ20ruvUIKssH1tOT z0{#hHJS=P+bW9)yKH8%K=qUh*@#q{nIvP3#1|B{DfDS~%zyx4n6XTGO(&LixlQU4r zYB35}y5mvG1yeCG3xX1It0sP?`UJ!PqN8D;VPRro6A=P{k8WXL5@TVL(3A4xFvx0=S&}mfxCbZT%4u8WQoQo0 z>SU4+nV4KX#$y&z(6P4h{Fs=OJT<*WDJU$WsB8P)E3dk?>j4QMcpMuVF*-3o25|cT zI8m`m?q!eCA^Xm*rv3RF|No2sAC3RZi=m;uaQ&Tt^Rd-J&(wEaZFRhC^3hRQNIWa1 z7MVi1DwuCp-nU}^y;}-=#}}$pl8vR2w91c}czWzxdKf_vcPkfyy@iYQEr4`_r{L@Y z?vG6q_+vKiPc4y(1Ot`Ki_RFXot(OG5_Uh_gNWs@-3~`aLhv6w12=84FZeQ zJ96(dflzc<7ZMb*6MpeNzJ=l#h(Y?DxhDlpId?Rc;YH(-RyJ2oqGS*;F}b3}Glbi6 zR-yd{Xk=21F@-`YQ<*xplpRw^x`((@_9m)qE*0u?Q@rnbU{l>zXO-A3AgJB9`+ktg zg?u9UFUOCkuwIz|O?jQ4v5JH#e3Ds+iDBO84Fg?#p7aX}lT3 zN(>DR5zZT)H5c@Ht}1ieu1ndgu;Ky$Ra=g4TP{tZVO57teNJ-)28$ z^aNpz(_XPKHPFX;nH;f_`J-Q_akc5(h=+vq{@U7XB{1N})|;gdD|Qcnmgf2-fBcI? zN!}f*^5aV}{%ZG=Wfi+|(@;u6r+P)RqqNFJ4%e{~#nP`%?9L?!X6<={;YeqkqgW0g z+5@18IQs~Y@S~+`p7rQ=NK%OaTU>6*MS4lv0 zgw|?wVM6wwZ)O#321eFUTXS^{G}~`&wc9BvUMUl?0$qK5ANnZ>aQN1%dQ$i%Rp=v} z9;Y_};mA?Kf;-N1gLel=1W>ci>-DsMHJ5`yqu%4W1e~59=QvGS$~J|n+R}23J95Vh zN&4=J4|cL~dE0n~eX5PeWn+v4s}pX^%n;Igv}aJy+w7QKk<7 znI=TN+hNxH$$}x_TEV4KzSj2tn53{Lhip5C_z2rcN$3$Hp&q#m9t+ zXzrYgB$5iGHo@Q7q_+4FU_#AKPTKxFNf2qzIk-xP%SD3THK`VU`l}^BX&W{Z-u!hW zzzk;sBZSalEZv=;A8TyceQ`rNYcqG=cEzTu{)Rawo(N*U&-Wzexrm;Zg~ZBET2F23 z*qGepA?+$CnW`Ewgni?wqld5!t-G}cgD${=X>DIHNW|5GzTL|lXDtuCyaX^{M zPssdFFVXk=tDlnm4h`o`t)?hN`uTNxlg0yBoE{Xp5^odz)DPCyf3{qUyLi}Y5GU>8VqhIr7cP+;LRHuSUy`AeYK1g1zDl|9BR6#L z7H%u~k@9BIbKofNJ`&m&A1WN4Dmr>&S?oV5x_r62lgLrF`H4W#fzB(G46IhfASvTE z5Vm))L7zd%sjxBV_UjPT0T&hBQRa1RSd(UEGr~Yq+1J>1L&_Om*jznF=QZ>}T_|qwEX!VKr zMT7h7IuPO=%V|+NTVd&&vQ8MQR;?f&R5E?J)~5IgmzWrbp)&G#V^|8_Q9opev~hmf zjy$1IU|mrY$&=hk-sf8h!9mcSJz@X+dof?C=hbnve?M(g>a3Tx5q=Mni2A8SUW%V> z7S zGOpPD>d^%GXV~@13uB{Rxi8q8Y^_&yp)c_q`$FINo=s&g^|yi$ohdx+_^uH&A${sH z&yTlaIV|@$QLuYt^Ru5UYyL$Z!D#Im)<$n>+m-T!X>4#k^L{jrNLv?uU@s*4OQ4<) zX$rQD3y`CGe!*h--AYLh;{*EZ1BowQ)P)ZKoJHP*bMMMPtu-11E2LLXIO3%DpYK zfcx=87*G96%lmyvyeefmpl|WE!%ck(O&a&FoJgc!@yD>G6FBW7q)OXwXiVSNEU4&x z(kUq)s#Z!EXe%U2Vd{EMRawe??v$3&Z!6vNqVtfRyoMDN zovdTN=qnv6U`Kyp$9L=GEq%o8=NeZT@zd-5Qc?R#x*cm*No)=OaSo}r2><47VDL#< z2luAPI(0}FXm^YqGcJ*wF_v;G(ZPn3jGvC130@+!5s5)L`DILJ2U6c*bb{ipDP6L> zFaCbIHK6{dLaxby$+=2&ySWhsaz!~(3=3(K>q5M99{{m7wc=vXzZO5UBFrGL5X$r5 zxrXAEm5M@W;T7tRBShvr@;8=E?@QGq>NxC!i%~_)Huj}^&*Knu7b4fM3d;eCt_YoX zyWiFX-C8_1@M!esbQWs&B!Z5NP21e|ylGreVU9Bg=LQ#f^whMc7>&E^cqE@m*4yj5 zxFY%02DQZ+)$hUZcjoXdvaVCUh!F3#4Hs5@lubM_vU`z#xi0tSgtO=GS7UK?hgs?D z<`u*z4d3!Al$!HQo5Y^Ox`h29cY2^H@h>8h>Pt>&hct{q^pEZQ6+iS|%oZO77i_Ru zYMYy~(`U+}wsyi36VxJn%A(Ai@^p?BACIN3uoz5F{L?kC&A6=>J%IHTGNNoGD2d>D*)j0hq9&fG(g=ILVcDg{QAdP%|JCcrll@|iC(Kq^3@+wQ{eM?eqMI^Hm(~uRKE|DKQlF;kP@Pw?GuVuR#G&anMALesleXe--foxx?*A;@gTKvKb)x*!N`U4wN#lSn3CohpwBH;ioT+#UeprEG>lfKaKPRA&;ww&q_YAC51N3q|Cw8t67J{m0*}x7KF#P2%Jv zu3V6+lOcpoptc{9<)RY$m#91@ufsRBt}0=24R`O7{QLi?cWAn)gLxfdjd628vWA0m zMZ0x3)L40SQc6Y_iR3hAdy4rJdNjzNl30^#!;zM&P4fu}1rzrrgNy_Di*dg!{2?pz z&*xtDhWU{XG~Y~9?~Cf!h4}e_6J*hh_RD_PH3o7N+&8nTXYJF`N6^htZCUEg{@brF zh?&kz%z=A37q|0Ksc(`yEP~z|H9j`nwn_!*!MH3`44x4l#M>corVqnYnX`0Z+Hpf8 zc2)Bd;MRdf9BWNK@I_X8RP>=T6H(>z&v#jpI~BaUar6!AnKC3-)PqU_g9v$N$`*BZ z_A6_U=FbXb!1A=dE4g(Xk91i5J^5c-^D$k?;jY$D10~1MWhe}sAjHmhRCc(ArCc|2 zr>*u@iDG;cE^j^CAET5#!o(l(;fa4C=*mA^hdrU8d8QqVPH%`nj(UAAm?ZkZaAhMP zlEOMAoe=`If5&oqz8>cGhPbCjl=u3i`#Rq#X~i~wLv)aT*d1PLfo8l?oH`^S+HTYp zU3;t76P4(DK;CHFao|~6=2|#X61OkUPQ7gouDj%g5P!=E($%meP;i%`@%OzC^e9)E zAK>BMcV2Bynog%2yqx<5y*PNubKhJ-`t#H$W{iErrc&QLxX)xr4N|^*mP2ciJrSAt z4934IQFqkbpLBNHE@A$)>pbh?{=Va2^v){fTGU-X_hnyTVSiXV>o|eX5n>HVtFqD8 z8(KGI< zIxg*4(#yT>^n4e4TRPM(puG0RYAsuFBjc@li+*!>f6Hu5qtQqC)~QQ;Scp)=@zSSc z45|f+!a^la71WIY)k`FtcLX*gim+StRAyw)p4`QX9+>Cxqc%4cNb1O)+caSP?a7!_ zxtGl|G~JA};}URN;*CcTc&|h%S{_`tL|ECf&Sw#Mny9WH@wz_%;+EC_9{gOap;$AZ zK0%#Smv7~iRMaxeUc#<9flcXmq=3;@JA7gKQ&+?ORgH1D^yNgby^|eTe_hlRx zpc8ztfve6tl4=%5p~svRYFJoxMs?9DV@))X3|{XVG8Dg)?lyzowB0=bc1otGs*)?* zZSi2OM}aM`j{?>8yaIA0F5V^GUTkRa43Don7|)&!@riDq2Q3IW9};%fj&kL!!xpTg zYj;Aq^?ukaKn}vzY` zeEqaK-HfgEaWidjw!=JtbKKB#!@2o`w3gR?)kQaYntx%N#p4~3`1h|qw+Wj#USFSK z`i{{P(~&CEN*|hgO^cwBjBfa9{(MCuZE3)QtEffLS+yZ=$fSnRMUij=k{U!Q^Iykd zvP5_s-%TEs3#<4R>sXFvnCegKQ6#SS>IlvBrT*R0pQXXs$|~y7W+X1!*wG4DOUVs5 zM{hCyMLm1J^7Xp3!qb&zIv}}af1U}w{3sCnP`V@iW$W`Kn2zXNlxW;ws=dG7TX8_i zdm57)hj$AUNQI@;-gm^`8LXn@Rg ztlTB=Zbh>SeH(g-5W4k7y0`FDBSB%6Z`H~gzZg{~(m&7MQf583iHD4=O;{Sexbh-C z8p`V1Qub2W`8WRnl*U42)R#TajJv!SK!q;jjnr!G1!WuM`b9I`E{T=3_a<{JWr>g#h1yf%>xH3iLSduxd@#?@3>{{OdXiMKd@&TOv zlBXvoX=66Ui?b^G0zOx-r>5oOf>-$KKRU>=LMEk`rFLFgQ6l`hSmRvrfLeOsn3cx~(mKR?|{vo5+ohl)yU_dTn@F5bSMqqcH-y z=stcT)!o?fTg+AC1FO84jD`~rPf~)#t9W%tz{tt<2&*!=D@&8l8mPXx#z9IjYJTKX zFLl@9@M?IHjBd7hZdN^`qnC@_R%A0PJkzx+!DZFwMpjkT^}zKu*m8h60(KCs@jd3K oDhS1)){xQNE(W4~H483{bke6VwCXaJf1)AdF^igeQ#O(EUwPXUng9R* literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554F20EC3A786189FF021190DA8B8-2BDB-69B6-1264-95CA09BEB5AC0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554F20EC3A786189FF021190DA8B8-2BDB-69B6-1264-95CA09BEB5AC0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..bb769cb29a8a6fc5029aeedaf1c81b039aec41b1 GIT binary patch literal 7001 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 UJa-zS1_iu<-lrVRTpB(9UtF67Q~&?~ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554FAD43BE691196BAADA00E99E44-BC12-8945-722D-C4510FDD9CB30-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554FAD43BE691196BAADA00E99E44-BC12-8945-722D-C4510FDD9CB30-7000 new file mode 100644 index 0000000000000000000000000000000000000000..ff71b12d8129697c10a91f32f1b7892bd3ae8657 GIT binary patch literal 3310 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 TRK1S6H||XG(>Eu(mwNvL^FKne literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554FD024F373800E80CB7CBB177A0-CE0D-F46A-6E9C-452073CBC94B0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4554FD024F373800E80CB7CBB177A0-CE0D-F46A-6E9C-452073CBC94B0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..a72ac5323810976a8bb8963e568023891214db5a GIT binary patch literal 7001 zcmbVM1yodRw;nn~Iz?&-rI{h5h8!BCI|pWvp>t>vB}KXgvFILRWF(asBn-L{22ff+ zN)#@B|L6DLyVk$%UF*K*oORywzR!N1z4yEKxtO~644~E3)X@YG5D);gFE7Bw5`a}B z1nCL@=;#Om$N~Qz7fVEbZh?Wm^5Wv&0b($?k26Bd#m7rL1m-Ia5|a=IC@P2e!dyHM zf!xlBJ4kN`aJRJ+$c=S3ssZ2WVtk!z4gad$2%Yp z=Iw&`ql>)M{o7Xcf3=lY_ea12ef-UQd_4bDfRUR|pih9Ck1w~nsT8**(i`p*9Ps;a z{uL_};g3Wi;F|tEUfh3WS04Ev)TLzL&bMH<5TbBtDTJsqOiEf*79=ex3YL%qNy5O= z&a!Yg@Nawg|0iqWmkx>lE|33KE`OFTYw-8>JRa*j2zO)rR*l6%KiteFtYa^#tL zcRk+VI|Oetq^alS#W7;Nr1>~oa@_K-_? zXmesa@maBYN;2gF5VfC|CMfi__N`K1v^x1u73v6=EOfaNFZE{y#MW78;S}}J$es7o zy^~D?O(NOXydTP$Zud_Rq8FXHOFR1wsh?rU_<{*Ia0!w-SwBo>tnFu|_mWf{gc-C^ zFD4rYZAu5{Two{x7T}0EN}BWetze#;;ApyU(fLnrrsIF?HD&*dO_=O#TV9!_u!2^a z)BEb(_a9l5WBR49e|N#i9)D8cI=Rq-VLmzYJ=|6COBot#9!53?bu>j+^;y|xq;-^@ zXQzDs$=AMI;Yjxpk1##zeICoOU&p4F6YrPvGkN6)iS19Xn33k;wOZHrCM8w+NFid6 zb7f>~z3}UIZ=`PY^F6!Uu`Hl;db{rsIW)d+tK?yY5|t_}q5M3w+VMeYg|A0QS%-Rb zMnDPQhC3K&pIKz2?#@~W8?eEU}QUaRZ?eMJJ(u5_$h&}9Mm8V9R3>W z6hjQtSmj>`$~vWiH=G>7&_=QdmEN=n)ux|G$7yM4-?+(B9k+S;`9kWJZV-tkq)0Lz~6c*4qYbcNv9D#`%PsiWh4 z^H&jfrVg)qNH*F|mCw|~8MaJ3Yb5m}=AGi3BwEA<|0-2_nI-B|(_)Y*t#!qg1t!+! zOX#YKXHf1Lf(Bmzj+D=4ZmgoXdd!F9)zpinf;eBjy7qP02-QEyl&>eyQK9eN?B)L8 zOSe|1*yjQ}Il>B$deTSo8?5l^M{O-R5^a%+XGmo>Oxusch;y}7!3jwsi_vHcI~HKU zGb`iA=(W?qcz*X*qn@0|DdDONr@(n)L`c!Vb zp&+zo4GxNJDQw6(UG!OG+>$?1{1FUe0=-RTCrWQRg(LEf20_mFCV^VDLU;=etk!C zUHK50Kk2fSPo9wc+$GA<+QWEE!xHBqKw`y-jMt06nq(}~>lPr1nyO{1TZ&)!Jd22e z8j06Q5{kWJ^`6>qa0(?kCXMq4LS|^YgYjUUqu41O-aSih3v~_hb*W zGAcPa7&Y4Q<$y>w1Zey-#Xk=yP@(d77le+cH_JA{Z#4_a%+x*{`95q-1(lOA&|K&p zw~)J1MO6HBFi!JBZgcU#0V)4d!-RTL_nUINs2R=cHW4)@CubvB&SIn3r=8&{o7bR8wGoPV%94tA_@?vQ`tPLZBt8DG4L=GtdNLeoN{ zCgUGHIy%eSWq_X-+{M_MV#2<^x1Lg5)gC9-*gPA@XnJ=xQ?)S?pb2= zy#Be_D;#L-<<~Nb)5h$GhK2I)Tnx|GJ!a9Z3j52O(j&qM)jE3dxDSQL@CLrfC^c1% zvxByeKWf6gr{<%ZW9s-rLkfjpsY3Nh27Q{RU$2(y0kP86ty?olB@Z)Q_rICcqtxY`#zl?g9 zF93acxv!iW3Ttm;A0qpcXuDYt$7(JB&871xpFc^X5ybm0%=|NMv!(4)XRU?JHFeK# zEiwn3cT9{23%g7gS6K{v>VhgLh%=ZZxKY+9pt96vQSMOYiRaS+tj3f)s}We+BDbri zm64F?{j9?$!D0O?4Va~d=kC||?lu>s=zMs_%W;p=rT^syx3j`giWbU%%lC~*Yti6F z^H+SD>K1pyi@gILqq~Vs8j^hK3_ylsu<7CPaN+3&PIIIq`g@RB-Qzmdc^ON2o8-w% zna%I~*Xp=BU$N#U5tHFPZNZ+=RsMX2%Ld;XHcvb~aj(B#01QMB+5-xrc5&e=1}E55 zEZVqtWkg1mDS2BYNU#=jDpc7s1MDPF>IOR)lP&1&sx8gy(Tz~zZ8kv6Vxz&&7WN2| zP>>alyn|@MjQi<3D!h2Gk^}^=7n!ay^Ye=y6*FchHaq3jOp(+Jx#MTes81c`CoL>m z>Zs62m=d(dOK&@cU%lS;U22%YVMmt87OZEd%|h#HlcNkX17FT3eeym%cK?zn2Dtvf z{h4Ti9XuzLPL!#KCWK;JPLjuz|6Vy^bu-J=(qO?V_ssb@m(8KHJ_*aSNL78}4^b7{ zhfQ21b)kk4rz*XrhEm>xpX)n3tldXyKI5R$6_ zPtB_fV4h0x8Go6H< zM~c{P{=9T*>d6&Zo6|G)Nu!;ZaAl!E`%PuGGzEZxM2VH+&$s1_)94j&cUqpCE-0+y zP8HVu)M9D0a)U`Xf`{Cu{lS7_ti~0JhLOE!fvm7xpkuk=4>C80cJpMp4~l~C!*pxZ zzmyw$k@>qS!(kdf3>Dt15I0c!~e)Ihy=o^)s%^E zZ(A4~6D@%F@MhfAeH$h4ZXB(n7lFP2)X&-HWn@K-yf1%axxL9o;IyAKA%8Nb^gOnA zvdl=3Z&fH>=o4D~%Jy2kfRpOe$mvtC%4uH4{X8It(5grM%m7ZKo=%H7ObU!&d0*lc zH$`612rA)jI6xGS^ONM1j_}3UIycO$vS;vI?Jz2PDWn!Z|FwRr-7eXG|3QARUqmuq5jT%#Cc(+f+O1 za}$d#d$VLqk>i=AI)Mup0PXANq5@$mlpzwd&Xwu`AGaPb{_N(4mQ0f^OwJ^f%bCo$ zxmc(Mr1nr9_^h@}7V>gLG!9PMG#hwZrwbp(6zaoIjO!~BD0sJkGTuZ0R~=s-JN-Vb zR!uUUhzK0Eto}}dU~f2LiHNJcge&xBbUu*Zk_X6kkS~zY$9n;w)1S&&z}Lbv5AT;A z2@I?|BfMVkJUEBe-fdFR*47#q4RoiA{|I-V$V(WbV4>oG6(C+p@B4pm9eG)5X6eXr z%<3Vau)2_1zMfwcZQbt3(1`ZJtks}aN)rXKS6tw|RM0tuS+Gs-+cjghdo_{(ty1?0 zhecFj->n*{ZKoW`iCk5#eDK2PPC`crma2Sm9Z zkaTCgnI`$XkS3p5EhLktTi905xcMs%Oylcb#q=bRn7DW%`<_Qk=J)H?T<&4BZ)uk~ z2f?6Z>G z#9U&7^bNc3@J>UsonJIBZfD*fdEn_D8)ahUari6K;^mO~(C|&20)$jcw@4y)-X53` zO|AgyqCN2No2fJItf0}e&Bgh&D>ms=#Wt|A%K+1@gL9C@ADez`n`mV9>aoOLQ{Oo@aZ^19I13KzmO-)+(K|T?X1DRWMAA zQWGh?ACxm2)U#A47{+zT{Au$JI;3V7Ni~Z45wx|;pcY?xn@hy`-FyBD!CMs~F%$K@ zQ<4;P`i#Fm9CO`&qT0GsbEHXZT887Ln$VLFZkNQqiF7iT#6R%H@yYY>+3HP{uD_x(oCB8o~Jv4?9 zgS$Z}4~EPk`_lP+4zIioqN-lc3X9jBLA3;N>o|K_@Y=_q)98=JOvd@`ZWENgVQ{+E zmH0w^K>hAjZ~1FC-21=p%*#$ViOQi-FPGr)6?_iGQ!ckHoyNDUi1Ua5Q^3aiPa$>f z43Qvti_ythYA!ENNID1FliRAwwb8jzbvkrzmTPgg?8^&JnNJ5#GDL>@;EU9n5pp0V z+JP9olC*euuI7jm>iv3LFKK)pZcZ}>SXe!*#ba^bT=}7aL5#W3;RS#Lsuu(#Zt0pS zeTy5D{DogyQ`a7xOWq|4X7ljRR17&AS>sQFlRP8knNZD9-J*5(Ol_BN5_N28FL5yV zp=VYhotQ)&dzgkbJ2VS=DBrT;9<;E1FWvR_U8URpe8x`F=e-Qf%oOoSS)woRKUDFl zzp_$-^t$q1Det@_iW8h?8!i@3pv7H?C>{-1vbg@P{t)yocH%DU4%*AaX1rN#WgzR$ z)pUxYFvBjfPP}ALbG5CQQRCg#9YK0?WyY~L}uyS6jC^Z8zx!*;?9)3034$ghA4z_rjX8AC74v)Q^9Z=9_L@z@(nAg^fATjYG zyvM~X5RMAG%NR81{K;?1J>;xm0L!iyiA6{;Tu;Jj4ourmj*N475HRtt8P&tzv4r>< za_4G9C`;+m`C2~4d5&!S>}=qCKG-vdL3Px7+OL8n5LWNxMtHQJzoAZSaaQ?R*iCLY zBNaENwOW6SpAnoV3IFjR@QcBSAA8Y(>0WL&*EP{%Lm_5!L{zp}wzXcf&qlo}C@oHH zjL%n>nU>0s<=e}0_LQZ((L>6u)?i8#%S>0JR%vT{v`H6s`0-)m)pPl}hREssWsrj`oKq3}ZD zz^atB8#{)f*{miSb`dllr|8Ncds)tmnIZg+SBjhMu~6emjcAq@j|u&9%}Msq`mH&5 z0WB&QK+6MMee!^8j~BH*9MpcLRh)Awt$i$9(C z?VZ4S1oiRi`Ge_5N8w<4R+r`pHg5Ntgn~9F&__D3-31`vg^ot2p4!MM_`Ty=PvkU{ zl==yUHZs>=-eS;-p}d`I!*zDzQEjBv*TyO=U!}|!?(EXaC$)AstO)Lmq#6moE+TAF z3T6-n2wG){`+Q%lhDeNs2^-o+9@I3QQp{JfegR>Mo)pFDh+U8Asiu`3SgWrhZ5~b# zU=4@s?@bh})Miw_w0&nSy=8|C>bUnMT%_0~c%bLubg9QeX!a;39H>WIh}qB23GuI| zS8^_bT>#Q!UKdv>`Tro(kgtl-to>P3{dxjq%UK1hJjX*<+?<;ymTKk>Y!j}$DWd-A zw;xIoa?=`r<9$`+X0T4fD#om5n;P?|1Kl*HSH|vVWKC82vG7nnqmc#_2fQlj)XK-I zq@R|U@FjaFX&TQMZNI{vmM25`Wd#?E^TMmS7itk_Q)eI2{z}XV&{#gPFD+G zg@g`1l_Y-)IXHQ}h+C+B5hv7P=%69vv_DgR&@%;}e(#J$Y__+gvhzpRuUZda_27!LQ{;7Q{eV^i8Z zi@$ctw0*SngJ4_;d-w5!Z;1}dT-WBSjsy;MehPe!7Za`2CCwB8e^{$D8947rodczx zX-Bl)=vT^yqak|o*g=ubbab;YmxG&i;_D~(z7;1)jIi4K)tper*PK%qb#D;u(m^8c zbhoom@Khe$vWx?Soz1N!j(~ilL7;7;uL`xT-aMj|CRxrJX|KCrvUezr1$laDVwXzJ zB7RKbQp(2q-IKBL=I~D_w74MF=$C3L?#rf~AXD2)yGXx9%HTncDr4Du;^IiuZaPG$ ze|!$lm5)YXK{KWG=U3Bma`bN0&Ab3>(h=-fD1FE(?70~OYfy4o6y3K}2t=h;Om8;K z)OL)v5<~7(d77B8yBzrY1%>sJt}{T;aTdCu_-8gnS&6O!9l|i$et7$V%mSOHh6nuU)$dvUVQB>(Qn;89e+)tT&hCXUCPY zf@q}U2R_YOf0~kOht0%wU~VoGP_f^z7DsFqJbatd74s&yzSY@DPO{Q^ zT*~VBdtVFnyUNwWIaw9e8TV)NC=p1w-j==`yc?Ojbbsa0a3vAy=toBe}fvuLxR>`fX$ z&ZsFIR0~VZEB#e+IQ`mW#gL5>yZpQWfS!mn zu*?mWJgmlg$edVzs)zD~hxe^*zM-WcOLy^T#x0uyT*&it^r365n8)j<5Ze#t^-{y~ J-s%O${{>FMp05A^ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455518AD375BCE149CC8F8C957D3C4-4230-0AFD-7631-A945BA2736EE0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455518AD375BCE149CC8F8C957D3C4-4230-0AFD-7631-A945BA2736EE0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..81f299408b12308cd12dea0672931551e56419df GIT binary patch literal 4116 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45552FCEB2AA4107ED621339A761B9-B2E9-64CF-65E8-2C2B5F5757DF0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45552FCEB2AA4107ED621339A761B9-B2E9-64CF-65E8-2C2B5F5757DF0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..198788b56e2aa5319332376c4157acd4867da72a GIT binary patch literal 7001 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

+e=M>-bqW zKBWUQ>--#3c*p{G;en6j@aRa#e=Llej_Z^*yzPq5=k3 zCY&BNP$8gj<-I>7eFdIfD^UEF9k8x#qc`m*{~piW8bQ0wRK>#!cVVJ182k;0$N$QZ zY^=BYK2#dfa}&33M~T#%3;>%3{>Yw%#Q7?x+{0)cJ*iFbA`H!yHe@mu={iY#n0fId z#o&P}tAB|NrrqYLKC9-oM_iI@;b4J-TfK&8Sn6x>91Tu_O{e?``GjOg-E2n`^0Dw% z(pfY0f-r<}Hk7Z|mX?t*3KvwT*-x`Y|4aXjv&3y_EVY7~c3ksURA}b-OBUx>1(9R; z1|j@|d6Y9#CHJ;dvLrAkLz7dzylPN(EMuxK55k~S<5nXCiby*yqtcm+f0b9SDeEsx zt;OMt^ZOwLalZG)?9GjNqw0`f`jf8S=~s9e4>*fV(8Aj^F4ft&EbX`x$PF7YZxS32 zRO7{V9y>TaJFC?x$pA8!CGtACjY>t~ebX4Ly`Ylx31zQm)3PhZ7!pdz#OSQfzII$` zN%Kl+=Y6fCq%uil-=D21o&?2b@pZSHsH}Dob(yGrrGeWjIa@2+MbD&j zJR2$9Z7WwCF(P7XehrY_`Z(^e3V5OrOR-o$?ww)NQhW~N5fVvi<>vOR=N~A|MOA*S zk#c!VDtaQqt!2B<^$=cdMe@FF+H&^mp7X3RwJ~KxHD^{KTr1D~25f3hh}EtiF)#2I zFKvgir)tXvnDZ`i#%doWb;GOo8X!$aDTEp!_)?Z2Iy?N%PRSwn76fVJe_!QexmhL4 zy3lOx2A)qFFX(qKl5GgPIjbv5@*{7;)m61PGI{r9EuR>})T0B>Se?VQxi8^%4QtmsPE1bUw9K8HszV=hgfj9`@>SN95FN1dnrxLlm$(fn}GjhWhpG|uP^RyA2^ zn*QYNRJonE^u-UU53K0BQCa#$~7JoIFh&j`Q z>m8WU%kBazen~!at)j9=S>nYlR=z{+Tw9eBnoGu#a#2rDm2>g)dyO5f{rlBr z`^Q8LHynD@I5h4-InYyI@W-nV*WpD zJ!P|vdZ$fHFrwiR+PyWH%@duq>1l_nDvf#7n5q_*;vEGCpOQCu9vW%4viUW1;ujA> z12+6s0q0QlZ(N2ef~VaFOzv^DG!}y9yl-DyeJl=|@N74QqFI)Pt`-@Xx24Nv7N#YM zy`MgLYPN&!^5qfw4KN>J0Xp*-oelXhN>;Tu4fP~m-btLSEz>c58~NhL^>MoxG^CW~45zJ9loeW8dMhm<6#9@6z>UZ}3#i zxf76lEE49`HWHe)O9*lA#xXj57|s`8^jr&S7O%yWBn+Ddm_=$PZUq|nm<1OiNgh^Y zh*SPzde-})jsDa6nj0O{D~*_U&$I`;N4Sid=BM?4>|zf>z3uhl2(-A$DZ2gqvN0%w3i2E`v1F7V4M``=-&9l~t>`CEC2eSD{Jm z#OWGhIokE*a$3~f0(1KBT29g@Yb2{lz8sxY*>1Pywup&X=a;dTXJkbyScC^It9di{ zeN;^kCDQqX=l-QPgHQD5d7OCdb8kg3#6OmJK-JsLR>fu{`f=ybqhC70Ps7SQM}=++ zS8RssuJfynqCxME$KB^yGG|mE#t_TZe%{{4V;$41m7>mxjGW5{RPWzq=V!hCCXv@n zcR@qg=xkfaDu}>)w~-O%D0kKFx~(jcPr+Iv?1J2b!lUP!x`w`TCk!k3Ya~1mlrX!N zzyYyYy`#Q~wL!u()1SNm<2l0cYjI`*_IEieEzPb(=GEb1POKIu@o~F5fP+0IjSOz<24*R zoQEGfom0w{RtJ@5+m=)yDg=C$EksNAh9lx5bKJmRT-bsXqCJY?RDFZ7%cKdzf$k4> zOuNJH7|o@&aGR#I;oTm`r5mU;G4s9Bw-?o;<40><{x?{%U1}e!@mH1a?*y1Y<`H_L zj@B_hM>cK5im7)9jOE75!cXr?wPX1L^8LTi=NJ#(FF1l=jE}U% z#||%CkM^_#O&jS|gh^zuuCKhWx90U7HM-g)h-f}8O6aGiE3RVEE3vTK?>=d^O6y#IS*SHflE;xJN81+GHn7XA5cgl09p(Jce zlh71eplve5C{Se}<<5w1-Ap~Ne4a5|d%a6EaBCap}Y=?MX!KwDg zNkY(i64p-jcLlQ7ePM?8J2t4ccTsPhF~ueLC(H8|?{Wm9n*H5X?|S!j!<4$ZJ8T2W z1dbWyj15oI3;-q+gUJ4ADB(loH z&F-q|%w^rHsl_RA!-F5La0=E+J;X$c-g7HNYc~zvCiz(26FwA)zbj-ntnorFvB#oY zO(5-L=xeTb_u)$`;m4u3;eH4@+5!(oT8&%9%8bQxueyh(cja5Lffm;n{6mF0KN1&p zCHR|36nDR_`${I}v#eZNuQh9uE&Tjfyi>&6v`1^d6xF}iaG7d;&AQhU*|xaM5)$5H z4z6z2;6U%9&7X#Uj(5GXj+~^Mo+HZIoB}J1*Vup>cZSofHV4u?QJz>?Z|At2l)#`u zmxGAYR51y1ft=j$E3<4Rb*~0hV3lhETmyPiDea@*Ia_BrI+k8;IFRnBpe6Sa_gA;p zxK{C`l{P7>P1HL>*f&rO)~j!vgmw)cj-+od&?`r zt5Wn%&}j-WPf`yN&J~K@(@#ZbR0RuKRnLbw(i!J87A-ENw_LLw(m zuf-+4sF9$YH%#Pn=zhLY{k&ypLY!7qB9|*J*~XQDt?JXmM9j0FXP(A-c_VnH?{&Pd z)PDn_YV~iec@ge=(?)d7Idpbm?=m8R>3OtAniVU;E%T;rFMUelF_a|mdR_~(1!d5T!nu5!b2Bxni=d&_VD)b zYBQ$O$R(e*I#5;YW@FzGo51KXjT-99zzyfki(nv<`pHn6x7u;NxcP;Zyw8>)b@>BVFd~90Y#tou- z-=7{yYLP&9%U2c97ntNHgC?sO+^MYxx_4K>E-SHR<-S9I2J5zM`0f1Go9_LCi|k)E zpv8o>^6~K0J0pSK)n+jC%j_3Y2kI5f_1xgCwX)HNH{rA^k{{y-tR2By!uIDS+nSb! z7u>^UX|!@HEjp5Of=x9+YLL#Eav84NGLslf9`(F;b%!mPrn&l#_aANu1hO*sXB~dI zxlmXVk$6w{G>_Ic^X!e~7sExT^rSkup0_CjZ?q1r*AznwS5RqAf{Om6Z-$Qv%&|0z zNfUt~zU@h2unlk5-71Om3Vf`p^_fr@&O9|M{=HiCVo(oCV4{;N*)Z-# zYhUG*f|>BDTakQL5?Hv|Ya3T|=3tQ|Hp%Sa5e@}bHVh*~ge;lE-Jm=oM*W#izQt4^ zhJ~#52#b`VuQ|$G3qN{5j{Dtu33N*J6K%KVzdd@_@1|TbN-F49`m>r3Z|##Gu3|7; z`q_FbWa`mJhasKvkTh*o2lGv_CccS~l&yLBi&kg&zSX1y8n~ey7%;ERXO!Vc zb$n78JUJKMf!H(HGGZQ-JI*VaYeOREfTA*D4)W7{6hAM%tj~s(woM-4B0fNRA_|b; z{2c;GCy(t<$!x@@gi#Z4f NrsVQHUZG9u{{@5afEoY* literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/500-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/500-7000 new file mode 100644 index 0000000000000000000000000000000000000000..18bceb2e64a1409c6da0cb91bbfde487486d7723 GIT binary patch literal 6990 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/53.jpg0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/53.jpg0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..d22af44a386e53056555c5caf3961b44b1d4529a GIT binary patch literal 7001 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 + + + + OpenWrt - LuCI + + + + + + + + + +
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + + + + + + OpenWrt - LuCI + + + + + + + + + +
+
+
+ MediaTek OpenWrt + + + +
+
+
+ + + + +
+
+

Authorization Required

+
+ Please enter your username and password.
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+ + + + + + +
+ + + + + diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ani.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ani.js0-7000 new file mode 100644 index 0000000..7a83bce --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ani.js0-7000 @@ -0,0 +1,69 @@ +var Ani = Class.create(); + +Ani.prototype = { + time : 600, + sepTime: 20, + autoStart: true, + + //回调函数 + onstart : function(){}, + onevery : function(){}, + onpause : function(){}, + onstop : function(){}, + + initialize: function(el,opt){ + this._el = el; + Object.extend(this,opt); + if(this.autoStart)this.start(); + }, + + start : function(){ + if(this.running){return;} + + this.running = true; + //进度计数 + this._kicks = parseInt( this.time / this.sepTime ) + 1; + + this.onstart.call(this, this._el); + this._timer = setInterval(this.every.bind(this), this.sepTime); + this._startTime = +( new Date() ); + }, + + every : function(){ + var now = +( new Date() ); + this.percent = ( now - this._startTime )/this.time; + if( this.percent > 0.98 ){ + this.stop(); + }else{ + this.onevery.call(this, this._el, this.percent); + } + }, + + pause : function(){ + this.remainTime = -(new Date()) + this._startTime + this.time; + if(this.remainTime < 0){ + this.remainTime = 0; + this.percent = 1; + this.stop(); + }else{ + clearInterval(this._timer); + } + }, + + stop : function(){ + clearInterval(this._timer); + this.onstop.call(this, this._el); + this.running = false; + }, + + /** + * 转换进度值为数值, 模拟easein easeout效果 + */ + _valueFn: function(percent){ + /** 这里使用三次函数f(x)=(3-2x)*x^2, 作为增长的转换函数 + * 特点 是f'(x)连续,变化连续,先加快,后减速 + f(0) = f'(0) = 0, f(1) = f'(1) =1, f(0.5) = 0.5 + */ + return percent * percent * ( 3 - 2 * percent ); + } +} diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_large.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_large.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..486b45d342754673c29877804b99cfec5ab0ed4d GIT binary patch literal 499 zcmeAS@N?(olHy`uVBq!ia0y~yU|a%ZM{%$L$?uDmUH}DldAc};RNQ)dXLl}(Bae$? z(Uwb3!m=o)KfH8ej?<#>~l`n4kpZ8%rux;I{#}W)T)Z7?2gcxk}0+|jtF)?s+ zf{>012yK|aAfUqV!=VSna+tu-q2$I8;lYrg$OuFY3XB5MOUigaA_`z}1rLxxdlZp5 z+>`80K^h!71sTMIK=Ms2K;)oh$fS^__>+&bp+h0k6C@5qfsUVez}B;HGB`3d)H}Y) zb7V@GE5SHn;{+G5kh;g+zfUDV&UwH$sg>nG-GrE%j1xA2NCCkmrwti4$f<;vfy}aT z)XE163aOl*z;J{AlI8Q;h9GwwkX7ae*;%=gvEi>m>35)(2?8K3E-WvPgS0RCG)A~=ZedX@IRvbVxff5P!9#18~ zek`A0mq>@^?sRtg*5OgNx1*V2FEgfC6QM{E}5wmTU~ynoW%N_c1o)*6;Ym Vlfsyys055m22WQ%mvv4FO#sN{l1=~s literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_mini.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/bg_video_mini.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..de0be53659c7be96dccd3f06a43ecd525005cd9b GIT binary patch literal 271 zcmV+q0r38bP)(L~y0002iNklJpt09lPh$Xq z!0&-nl|Y~iB#A)45esI4yo~|+JBVjqIBbw@4A5WFU&a772#f-;K|mld3&eL2I0WK5 z2)Lw!4FdNDQdKVLaM&OMfi4g~cLy5;#({i{0s253v7igYD;79n!7Pv@zNEupgZPpT z0)bf|Ua`Oifk7aidEpR95*q{#M=a00AP{g#huZ^jNe4$PutDJVKw=DV&3}Wy!53h; V6j(=WAOHXW002ovPDHLkV1mV=VD002u~PD=e%55KYk8tSX$@f$vPRmiRq@|tL`V}zMM0r1yLQa5Q`Hw{NCH&0U+OMtkAqnRazjIE2Mr=ttVl|oX3 z_n^Ht1^_^~adOet@yb5=DXP#XMmV@(EXXh4B?fN$z%Z|k({Ci+qe5X5eK4ivR1y(Y zX3$gs3XfC%$b1(c#Ja5xe+yGN+}vC)R7$SbkPv;QF}+)y1&eop)7(_OtUD7Eh%<*U}5<9m&W>pTW*Uk^1oj zYYZ+*=OleE*-d1$4B8U|6}xHwL{k+fto8};(;h?vTAr(*A5K%g1@`=fewrz8ePK&m zW0>6#JoZKS6o{X=7_p!+t5h5Y_vhj>3+V#>Tr-03DQ~#*m_LP^B1sWmK@eT%xMNy) z4$kO)oWGbq_3c%0EMOP4^c@*`y~Ls44CeWTbk)-uzbMaQa)AE&uY)9BPRlEgH998R zBJZBt*e7BaTLiA7yYM#2#a>EiS!C|AhAi+XF3B6?1=SrNKfO$;pUU$hZJ2zQ>QH1vWP$G@vi00l_XUXAusmXjrCLvSW zoIg-rO}!wLlHOo48pH7Gk&LlSQtE}}R^UsHYikV;F$JJ9&Xm>;H@2e7_2ILEClXy( z{b>>O@n(1KBKKB>wK#L}q=`!UWpQ?_v{L`4@gmmQcJqm{))@_xF{!&@iAF~stHky=9B( zRIdPb>*BFR@b`9XseyfDI>ueDy!{%dIWrlzn{l!7eIWO^b5;X7rz2LpxrCn`Dxa5) ze%E1_+I*ZHTwv3zSGh;OX}fL{&Ch9Nd6+-Za31Ad=@_%E+iO5Acj=xKsa}>=Ub@$H zt`GP0j`IBFlf!l5vhrPGXx42Kld-j0EnLDn^hanKMn>0If|^IF@RAQk*9-baWxiVq zNeNLEE|`{`EHZ9tWrF6_Jc~sutcv;i*VX>J%CQ5p$Ij(yT zY-odrOwai-b5Vnfdp2#oJkI!#Su=#H>Uh76_EMbYt zrqqW*uH~X|>3(e!R^&w0;?xpK;7bl?D#X77yQO^Iowc?duW!zB;7DgiP44^ZLa69M zC&b2rB^Jv{S#)n`J3_y_<-xD)JM{pnK4H0g1Uhfo_>WDG%F23e0KM#J`@#>cw`bY8 zj!6bQfFXmfD*-u_gao&(OPFtUzDfcypPIb^tv8P6K#|&RHWK;L z0!yS)9)Xkxb|x=;Ff*P=8mfll9?})?O&!)-PicnqMe)|HX|C5`eo=81aoNx3K z*EiU=gJBz~?y`&KaCU>BBpNWra5;V0h7+dAcb4WkZ9D=m(w~$0=7f8F%2_)LynE)|1b_&nb(7*Z zeC!E&Df*0ACN?cg$_E4QDsu? z-hOIL#~AjTj3Jdj+%1Xh3tc6ckvbd|NqDm9vQ|_@oqiPmzDM5$9WLP}%vM6B6L16a z&wImWENnP2sI(MGEv3a^m|`rs1mSW?mfD$yd;�@9ZWNHK1S1XWz`a7lthVibUhb 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,a=(15&n)<<4|o>>2,s=(3&o)<<6|l,r+=String.fromCharCode(e),64!=o&&(r+=String.fromCharCode(a)),64!=l&&(r+=String.fromCharCode(s));while(de;)switch(s=t.charCodeAt(e++),s>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:o.push(t.charAt(e-1));break;case 12:case 13:i=t.charCodeAt(e++),o.push(String.fromCharCode((31&s)<<6|63&i));break;case 14:i=t.charCodeAt(e++),n=t.charCodeAt(e++),o.push(String.fromCharCode((15&s)<<12|(63&i)<<6|(63&n)<<0))}return o.join("")},cutStr:function(t,e,s){var t=t.replace(//g,">"),i=this._strLen(t);if(e>=i)return t;var n=0,o=0;str_cut=new String,o=t.length;for(var l=0;o>l;l++){if(n++,a=t.charAt(l),escape(a).length>4&&n++,n>e)return s&&(str_cut=str_cut.concat(s)),str_cut;str_cut=str_cut.concat(a)}},_strLen:function(t){if(!t)return 0;var e=0,s=0;s=t.length;for(var i=0;s>i;i++)e++,a=t.charAt(i),escape(a).length>4&&e++;return e},serialize:function(t){return JSON.stringify(t)},deserialize:function(t){if("string"!=typeof t)return void 0;try{return JSON.parse(t)}catch(e){return t||void 0}},getBrowser:function(){var t,e={},a=navigator.userAgent.toLowerCase();return(t=a.match(/rv:([\d.]+)\) like gecko/))?e.ie=t[1]:(t=a.match(/msie ([\d.]+)/))?e.ie=t[1]:(t=a.match(/firefox\/([\d.]+)/))?e.firefox=t[1]:(t=a.match(/chrome\/([\d.]+)/))?e.chrome=t[1]:(t=a.match(/opera.([\d.]+)/))?e.opera=t[1]:(t=a.match(/version\/([\d.]+).*safari/))?e.safari=t[1]:0,e},bind:function(t,e,a){t.attachEvent?t.attachEvent("on"+e,function(){return function(e){window.event.cancelBubble=!0,t.attachEvent=[a.apply(t)]}}(t),!1):t.addEventListener&&t.addEventListener(e,function(t){t.stopPropagation(),a.apply(this)},!1)},Md5:function(t){var e,a,s,i,n,o,l,c,r,d=function(t,e){return t<>>32-e},u=function(t,e){var a,s,i,n,o;return i=2147483648&t,n=2147483648&e,a=1073741824&t,s=1073741824&e,o=(1073741823&t)+(1073741823&e),a&s?2147483648^o^i^n:a|s?1073741824&o?3221225472^o^i^n:1073741824^o^i^n:o^i^n},m=function(t,e,a){return t&e|~t&a},p=function(t,e,a){return t&a|e&~a},v=function(t,e,a){return t^e^a},h=function(t,e,a){return e^(t|~a)},g=function(t,e,a,s,i,n,o){return t=u(t,u(u(m(e,a,s),i),o)),u(d(t,n),e)},_=function(t,e,a,s,i,n,o){return t=u(t,u(u(p(e,a,s),i),o)),u(d(t,n),e)},f=function(t,e,a,s,i,n,o){return t=u(t,u(u(v(e,a,s),i),o)),u(d(t,n),e)},k=function(t,e,a,s,i,n,o){return t=u(t,u(u(h(e,a,s),i),o)),u(d(t,n),e)},b=function(t){for(var e,a=t.length,s=a+8,i=(s-s%64)/64,n=16*(i+1),o=Array(n-1),l=0,c=0;a>c;)e=(c-c%4)/4,l=c%4*8,o[e]=o[e]|t.charCodeAt(c)<>>29,o},y=function(t){var e,a,s="",i="";for(a=0;3>=a;a++)e=t>>>8*a&255,i="0"+e.toString(16),s+=i.substr(i.length-2,2);return s},w=function(t){t=t.replace(/\x0d\x0a/g,"\n");for(var e="",a=0;as?e+=String.fromCharCode(s):s>127&&2048>s?(e+=String.fromCharCode(s>>6|192),e+=String.fromCharCode(63&s|128)):(e+=String.fromCharCode(s>>12|224),e+=String.fromCharCode(s>>6&63|128),e+=String.fromCharCode(63&s|128))}return e},D=Array(),C=7,A=12,N=17,U=22,I=5,O=9,H=14,M=20,T=4,x=11,L=16,S=23,E=6,q=10,j=15,Q=21;for(t=w(t),D=b(t),o=1732584193,l=4023233417,c=2562383102,r=271733878,e=0;e-1&&a.indexOf("nn:")>-1&&a.indexOf("id:")>-1)return a.split(",")[1].split(":")[1]}return 0},getUID:function(){var e=this.getYKToken();if(e){var a=t.Common.decodeBase64(decodeURIComponent(e).split("|")[3]);if(a.indexOf(",")>-1&&a.indexOf("nn:")>-1&&a.indexOf("id:")>-1)return parseInt(a.split(",")[0].split(":")[1])}return 0},getLoginStatus:function(){return 0!==this.getUID()}},Ajax:{getScript:function(t,e,a){if("string"==typeof argument \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsCommon.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsCommon.js0-7000 new file mode 100644 index 0000000..c75c794 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsCommon.js0-7000 @@ -0,0 +1,40 @@ +(function(){ + OST = {}; + var osType = { + isWin:'Win', + isMac:'Mac', + isSafari:'Safari', + isChrome:'Chrome', + isIPAD: 'iPad', + isIPHONE: 'iPhone', + isIPOD: 'iPod', + isLEPAD: 'lepad_hls', + isMIUI: 'MI-ONE', + isAndroid:'Android', + isAndroid4: 'Android 4.', + isAndroid41: 'Android 4.1', + isSonyDTV: "SonyDTV", + isBlackBerry:"BlackBerry", + isMQQBrowser:'MQQBrowser', + isMobile:'Mobile' + }; + for(var os in osType){ + if(navigator.userAgent.indexOf(osType[os]) !== -1){ + OST[os] = true; + }else{ + OST[os] = false; + } + } + OST.isIos = ((OST.isIPAD || OST.isIPHONE || OST.isIPOD) || OST.isMac ); + OST.isPhone = (OST.isIPHONE || OST.isIPOD || (OST.isAndroid&&OST.isMobile)); + OST.isPad = (OST.isIPAD || (OST.isAndroid && !OST.isMobile)); +})(); + +var cms_request_ad = function(url){ + if(!url) return; + url += "&aw=w"; + if(logPvid){ url += "&sid="+logPvid; }; + if(OST.isPad){ url += "&bt=pad"; }else if(OST.isPhone){ url += "&bt=phone"; }; + if(OST.isIos){ url += "&os=ios"; }else if(OST.isAndroid){ url += "&os=Android"; }; + Nova.addScript(url); +} \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsDatafromPrototype.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsDatafromPrototype.js0-7000 new file mode 100644 index 0000000..4b9901a --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsDatafromPrototype.js0-7000 @@ -0,0 +1,114 @@ +(function(o){ + if (!o) { + return false; + } + + if (!o.Event) { + return false; + } + + o.nova_init_hook_data_from = function() { + o.Event.observe(document, 'click', function(ev) { + if (!ev) { + ev = o.event; + } + + var target = ev.target || ev.srcElement; + if(!target) { + return ; + } + if (target.tagName !== 'A') { + if (!target.parentNode || (target.parentNode.tagName !== 'A')) { + return ; + } + target = target.parentNode; + } + + target = Element.extend(target); + CmsDatafromPrototype.addDataFrom(target); + }); + } + })(window); + +var CmsDatafromPrototype = { + getFromA: function() { + //from:a + var a = 'y1'; + if (OST.isIPAD) { + a = 'y8'; + } else if (OST.isIPHONE) { + a = 'y9'; + } else if (OST.isPad) { + a = 'y10'; + } else if (OST.isPhone) { + a = 'y11'; + } else if (OST.isMobile) { + a = 'y7' + } else if (OST.isWin || OST.isMac) { + a = 'y1'; + } + + return a; + }, + + getFromB: function() { + //from:b + var b = pagetype + '-' + domain + '-' + pageurl + '-' + topicIdNum + '-' + pageIdNum; + + return b; + }, + + getFromC: function(obj) { + if ((typeof obj !== 'object') || (typeof obj.ancestors !== 'function')) { + return ''; + } + + var pids = ''; + var oParents = obj.ancestors(); + var oParent = null; + for (var i = 0; i < oParents.length; ++i) { + oParent = oParents[i]; + if ((typeof oParent.id === 'undefined') || (oParent.id.substring(0, 2) !== 'm_')) { + continue; + } + pids = oParent.id.substring(2) + '-' + pids; + } + if (pids !== '') { + return pids.substring(0, pids.length - 1); + } + + return ''; + }, + + cancatFromParams: function(obj) { + var orginDatafrom = obj.readAttribute('data-from'); + if (empty(orginDatafrom)) { + return false; + } + + var a = CmsDatafromPrototype.getFromA(); + var b = CmsDatafromPrototype.getFromB(); + var c = CmsDatafromPrototype.getFromC(obj); + if (c === '') { + return false; + } + + return a + '.' + b + '.' + c + '.' + orginDatafrom; + }, + + addDataFrom: function(obj) { + var href = obj.readAttribute('href'); + if(empty(href)) { + return false; + } + + if(href.indexOf('http') === 0 && href.indexOf('?from') === -1 && href.indexOf('&from') === -1) { + var datafrom = CmsDatafromPrototype.cancatFromParams(obj); + if (!datafrom) { + return false; + } + var connector = (href.indexOf('?') !== -1) ? '&' : '?'; + obj.writeAttribute('href', href + connector + 'from=' + encodeURIComponent(datafrom)); + } + } +}; \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsFriends.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsFriends.js0-7000 new file mode 100644 index 0000000..d9a6c4b --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cmsFriends.js0-7000 @@ -0,0 +1,228 @@ +//关注明星 +var cms_friends = { + sources : null, + errTips : null, + scriptId : '', + preText : '', + tmpdiv : null, + friendId : 0, + + getUserId: function() { + var user = get_username('all'); + + return (typeof user.userid == 'undefined') ? 0 : user.userid; + }, + + follow: function(event) { + if(!islogin()) { + login(function() {window.location.reload()}); + return false; + } + + var loading = ''; + + this.sources = Element.extend(Event.element(event)); + this.friendId = this.sources.getAttribute('_uid'); + + if (this.friendId == cms_friends.getUserId()) { + cms_friends.showError('不能订阅自己!'); + return false; + } + + this.tmpdiv = this.sources.up('.follow_state'); + this.preText = this.tmpdiv.innerHTML; + this.tmpdiv.innerHTML = loading; + + cms_friends.getJson('/QCms/~ajax/follow?uid=' + cms_friends.getUserId() + '&friend_uid=' + this.friendId, 'cms_friends.follow_callback'); + + return true; + }, + + follow_callback: function(res) { + cms_friends.tmpdiv.innerHTML = cms_friends.preText; + cms_friends.removeScript(); + + try { + res = (typeof res == 'object') ? res : res.stripScripts().evalJSON(1); + } catch(e) { + cms_friends.showError('操作失败, 请稍候再试!'); + return false; + } + + if (res.error != 1) { + cms_friends.showError(res.zh); + return false; + } + + $$('[_cmsfollow="' + cms_friends.friendId + '"]').each(function(o){o.style.display ='none';}); + $$('[_cmsfollowed="' + cms_friends.friendId + '"]').each(function(o){o.style.display = '';}); + $$('[_cmsfollowers="' + cms_friends.friendId + '"]').each(function(o){o.innerHTML = res.friend.followers_count;}); + + return true; + }, + + removeScript: function() { + var oScript = document.getElementById(cms_friends.scriptId); + if (oScript) { + document.getElementsByTagName("head")[0].removeChild(oScript); + } + + return true; + }, + + showError: function(errmsg) { + if(!cms_friends.errTips){ + cms_friends.errTips = new Qwindow({ + title: '', + showmask: false, + size: {width:300, height:100}, + content: {type: 'html', value: '
11
'} + }); + } + $(cms_friends.errTips.dom.winbody).down('.txt').update(errmsg); + cms_friends.errTips.show(); + setTimeout(function(){cms_friends.errTips.hide()}, 2000); + + return true; + }, + + callBackScript: function(){ + return true; + }, + + getJson: function(url, callBack){ + var _script = document.createElement("script"); + _script.type = "text/javascript"; + _script.id = 'script_' + Date.parse(new Date()) + '_' + Math.round(Math.random() * 1000000); + _script.src = url + '&callback=' + callBack + '&scriptId=' + _script.id; + cms_friends.scriptId = _script.id; + + if (!/*@cc_on!@*/0) { + _script.onload = cms_friends.callBackScript; + } else { + _script.onreadystatechange = function(){ + if (_script.readyState == 'loaded' || _script.readyState == 'complete') { + cms_friends.callBackScript(); + } + } + } + document.getElementsByTagName("head")[0].appendChild(_script); + + return true; + } +}; + +//关注用户 +var cms_follow_videoupdate = { + sources : null, + errTips : null, + preText : '', + tmpdiv : null, + friendId : 0, + + getUserId: function() { + var user = get_username('all'); + + return (typeof user.userid == 'undefined') ? 0 : user.userid; + }, + + //单个关注 + follow: function(event) { + if(!islogin()) { + login({type:'cms_index_sc', callBack:'', isrefresh:true}); + return; + } + + var loading = ''; + + this.sources = Element.extend(Event.element(event)); + this.friendId = this.sources.getAttribute('_uid'); + + if (this.friendId == cms_follow_videoupdate.getUserId()) { + cms_follow_videoupdate.showError('不能订阅自己!'); + return false; + } + + this.tmpdiv = this.sources.up(); + this.preText = this.tmpdiv.innerHTML; + this.tmpdiv.innerHTML = loading; + + Nova.QCms.followVideoUpdate({uid : cms_follow_videoupdate.getUserId(), friend_uid : this.friendId, follow_type: 'video_update'}, cms_follow_videoupdate.follow_callback, null); + + return true; + }, + + follow_callback: function(res) { + cms_follow_videoupdate.tmpdiv.innerHTML = cms_follow_videoupdate.preText; + + try { + res = (typeof res == 'object') ? res : res.stripScripts().evalJSON(1); + } catch(e) { + cms_follow_videoupdate.showError('操作失败, 请稍候再试!'); + return false; + } + + if (res.error != 1) { + cms_follow_videoupdate.showError(res.zh); + return false; + } + + $$('[_cms_follow_video="' + cms_follow_videoupdate.friendId + '"]').each(function(o){o.style.display ='none';}); + $$('[_cms_followed_video="' + cms_follow_videoupdate.friendId + '"]').each(function(o){o.style.display = '';}); + $$('[_cms_followers_video="' + cms_follow_videoupdate.friendId + '"]').each(function(o){o.innerHTML = res.friend.followers_count;}); + + return true; + }, + + //批量关注 + follow_batch: function(event, pageRegionModuleId) { + if(!islogin()) { + login(function() {window.location.reload()}); + return; + } + + var loading = ''; + var friendUids = $('hidBatchFollowUids_' + pageRegionModuleId).value; + if ((friendUids !== '')) { + friendUids = friendUids.replace(/(^,+)|(,+$)/g, ''); + } + + this.sources = Element.extend(Event.element(event)); + this.tmpdiv = this.sources.up(); + this.preText = this.tmpdiv.innerHTML; + this.tmpdiv.innerHTML = loading; + this.friendId = friendUids; + + + Nova.QCms.followBatch({uid : cms_follow_videoupdate.getUserId(), friend_uids : '[' + this.friendId +']', mid : pageRegionModuleId}, cms_follow_videoupdate.follow_batch_callback, null); + + return true; + }, + + follow_batch_callback: function(res) { + cms_follow_videoupdate.tmpdiv.innerHTML = cms_follow_videoupdate.preText; + + try { + res = (typeof res == 'object') ? res : res.stripScripts().evalJSON(1); + } catch(e) { + cms_follow_videoupdate.showError('操作失败, 请稍候再试!'); + return false; + } + + if (res.error == -302) { + cms_follow_videoupdate.showError('你已经订阅了所有用户!'); + return true; + } else if (res.error != 1) { + cms_follow_videoupdate.showError(res.zh); + return false; + } else if ((typeof res.friends === 'undefined')) { + cms_follow_videoupdate.showError('操作失败, 请稍候再试!'); + return false; + } + + var objectUser = null; + for (var index in res.friends) { + objectUser = res.friends[index]; + if ((typeof objectUser.id !== 'undefined')) { + $$('[_cms_follow_batch="' + objectUser.id + '"]').each(function(o){o.style.display ='none';}); + $$('[_cms_followed_bat \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/common.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/common.js0-7000 new file mode 100644 index 0000000..897734e --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/common.js0-7000 @@ -0,0 +1,191 @@ +//hack console error +(function(){ + if(window['console']){ return; } + window['console'] = { + log: function(){} + ,clear: function(){} + ,debug: function(){} + ,error: function(){} + ,info: function(){} + ,count: function(){} + ,time: function(){} + ,trace: function(){} + ,warn: function(){} + } +})(); + +//for script include static +//global function: cdn_jsurl, cdn_cssurl, cdn_imgurl +(function(){ + var url = 'Bad url, watch browser console error.', + Local = window.Local, + err = function(msg){ if(console && console.error){ console.error('[cdn function error] '+ msg + '.'); } }, + cdn = function(path, type){ + //path rule + if(path.charAt(0) != '/'){ err('@param path: relative to root start by /'); return url; } + //global block + if(!Local){ err('@see BETA-18932: template funciton {nova->globaJS}'); return url; } + var key = 'RELEASE_TAG', version = Local[key]; + //version define + if(!version){ err('@see local: ' + key + ' not defined'); return url; } + //server define + key = type.toUpperCase() + 'SERVER', server = Local[key]; + if(!server){ err('@see local: ' + key + ' not defined.'); return url; } + //bad server define + if(!server.match(/^(http|https)/)){ err('@see local: ' + key + ' is server, add protocol'); return url; } + if(server.match(/\/$/)){ err('@see local: ' + key + ' is server, not ending by \/'); return url; } + url = server+ '/' + version + path; + return url; + }; + window.cdn_jsurl = function(path){ return cdn(path, 'js'); }; + window.cdn_cssurl = function(path){ return cdn(path, 'css'); }; + window.cdn_imgurl = function(path){ return cdn(path, 'img'); }; +})(); + +//page load time for log +var logPageStartTime = (new Date()).getTime();//毫秒 +window.uepflag = 1;//uep统计发送开关 + +(function(){ + var scripts = document.getElementsByTagName('script'); + var currJssrc = scripts[scripts.length-1].src; + window.currJs_domain_version = currJssrc.split('/')[2]+ '/'+ currJssrc.split('/')[3]; +})(window) + +if((window.location.href.indexOf("www.youku.com") !== -1 || window.location.href.indexOf("v.youku.com") !== -1) && Math.round(Math.random()*1000) > 100) { + window.uepflag = 0;//抽样发送 +} +//用户路径参数 +(function(o){ + o.nova_init_hook_rpvid = function(){ + o.Event.observe(document, "mousedown", function(ev){ + if(!ev) ev = o.event; + var target = ev.target || ev.srcElement; + if(!target) {return;} + Nova.Cookie.set("rpvid", window.logPvid + "-" + (new Date()).getTime());//记录用户路径 + }); + o.Event.observe(document, "touchend", function(ev){ + if(!ev) ev = o.event; + var target = ev.target || ev.srcElement; + if(!target) {return;} + Nova.Cookie.set("rpvid", window.logPvid + "-" + (new Date()).getTime());//记录用户路径 + }); + } +})(window); + +//监听全站的链接点击事件,检查是否存在data-from属性,并添加from参数至href属性中 +(function(o){ + if(!o) {return false;} + if(!o.Event) {return false;} + var checkFromDomain = function(href){ + var domain = ["youku.com/v_show/","youku.com/show_page/","youku.com/u/U"]; + for(var i=0,length=domain.length; i").attr("id",a+t.ID_ORIGIN):jQuery("#"+a+t.ID_ORIGIN);if(YOUKU_HOME.isIE||!t.isAni)return l.insertBefore(i).hide(),e.parents(".dragmodule").addClass(t.ClassOnTop),i.insertAfter(r),t.getOnTop(),void YOUKU_HOME.Post_personalData({mod_id:a,action:"top_mod"});if(Math.abs(c.top-o)800&&(t.aniTimer=800),e.parents(".dragmodule").addClass(t.ClassOnTop),l.css({height:n+s+"px",marginBottom:0,width:d+"px",overflow:"hidden",visibility:"hidden"}).insertBefore(i),i.css({height:0,marginBottom:0,opacity:0}).insertAfter(r),t.getOnTop(),YOUKU_HOME.Post_personalData({mod_id:a,action:"top_mod"}),l.animate({height:0},t.slideTimer,function(){jQuery(this).css({visibility:"hidden",display:"none"})}),i.animate({height:n+s+"px",opacity:1},t.slideTimer,function(){jQuery(this).css({height:n+"px",marginBottom:s+"px"})}),u.css({display:"block",opacity:1}).animate({opacity:.2,top:o+"px"},t.aniTimer,function(){jQuery(this).remove()})}},cancelTopAct:function(e,t){var i,r,o=toTop,a=e.parents(".dragmodule").parent(),n=a.attr("id"),d=jQuery("#"+n+o.ID_ORIGIN);t&&YOUKU_HOME.Post_personalData({mod_id:n,action:"ctop_mod"}),e.parents(".dragmodule").removeClass(o.ClassOnTop),i=0!==d.length?jQuery(d.prevAll(":visible")[0]):YOUKU_HOME.$drawer_hidden.prev(),r=i.position().top+i.height()-a.height();var s=a.height(),c=a.width(),l=parseInt(a.css("margin-bottom").split("px")[0]),u=a.position();if(YOUKU_HOME.isIE||!o.isAni){a.insertAfter(i);try{d.remove()}catch(_){}return void o.getOnTop()}if(Math.abs(u.top-r)800&&(o.aniTimer=800);var p=jQuery("
").css({height:s+l+"px",marginBottom:0,width:c+"px",overflow:"hidden",visibility:"hidden"}).insertAfter(a);a.css({height:0}).insertAfter(i),p.animate({height:0},o.slideTimer,function(){jQuery(this).remove()}),a.animate({height:s+"px",marginBottom:l+"px"},o.slideTimer,function(){d.remove(),o.getOnTop()}),m.css({display:"block",opacity:1}).animate({opacity:.2,top:r+"px"},o.aniTimer,function(){jQuery(this).remove()})}}},YOUKU_HOME={UA:null,MAXTIMER:3e3,MAXTIMER_GETSUBREC:2e3,MAXCOUNT_GETSUBREC:3,MAXCOUNT_GETSUB:3,MAXCOUNT_POSTPERSONAL:3,MAXCOUNT_TOTOP:3,REG_ID:"20",REGEXP_ID:null,REG_QUATE:new RegExp("&","g"),URL_JQUERY:"http://static.youku.com/js/jquery.js",URL_HSLIDER:"http://r3.ykimg.com/05100000551D0EC26737B363E00BE98B.js?hslider",URL_GETPERSONAL:"http://www.youku.com/index/personal/fun_getCloudData?cloudvar=",URL_SETPERSONAL:"http://www.youku.com/index/personal/fun_changeCloudData?",URL_GETSUBSCRIBE:"http://www.youku.com/index/getUserFeedsForIndexMix",URL_GETSUBSCRIBEREC:"http://ykrec.youku.com/uploader/packed/list.json",URL_GETMODULE:"http://module.youku.com/",URL_GETRECOMMEND:"http://ykrec.youku.com/personal/packed/list.json",URL_GETUSERINFO:"http://nc.youku.com/index/getUserinfo",URL_GETSUBVLINK:" http://nc.youku.com/index_playWaitLogPage",URL_GETFRIENDSHIPS:"http://yws.youku.com/friendships/js_show.json",VAR_GETPERSONAL_ALL:"all",VAR_GETPERSONAL_CUSTOM:"customized",VAR_GETPERSONAL_TOP:"top",VAR_GETPERSONAL_HIDE:"hide",VAR_NUM_SUBRECUSER:20,VAR_NUM_SUBRECVIDEO:10,VAR_NUM_SUBRECMOREUSER:5,VAR_HEIGHT_SUBINIT:105,VAR_TRYFREQUENCY:300,ID_DRAWERSUB:"yk-slide-u-subscribe",ID_DRAWERSUBREC:"",ID_AD_BOTTOM:"m_206045",ID_DRAWER_HIDDEN:"m_206263",ID_TOP8:"m_205805",CLASS_DRAWER_HIDDEN:"yk-drawer-hidden",CLASS_ON_TOP:"dragmodule-top",CLASS_HIDDEN_SHOW:"yk-drawer-hidden-show",LOGINSTATUS:!1,COUNT_GETSUBREC:0,COUNT_GETSUB:0,COUNT_POSTPERSONAL:0,STATUS_AREA:{},isIE:!1,isSubRecInited:!1,isHiddenInited:!1,isLazyLoaded:!1,cookieUid:"",cookieYsuid:"",loadingstyle:"position:fixed;_position:absolute;z-index: 9999;width: 100%;height:100%;top: 0;margin-top:550px;background:#fff;",loadingicon:"",prestyleStr:"body{height:100%;overflow:hidden;overflow- \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cps.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cps.js0-7000 new file mode 100644 index 0000000..8209790 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/cps.js0-7000 @@ -0,0 +1,105 @@ +//premium cps +(function(){ + + var base64_decode = function(data){ + var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + var o1, o2, o3, h1, h2, h3, h4, bits, i = 0,ac = 0,dec = "",tmp_arr = []; + if (!data) { return data; } + data += ''; + do { + h1 = b64.indexOf(data.charAt(i++)); + h2 = b64.indexOf(data.charAt(i++)); + h3 = b64.indexOf(data.charAt(i++)); + h4 = b64.indexOf(data.charAt(i++)); + bits = h1 << 18 | h2 << 12 | h3 << 6 | h4; + o1 = bits >> 16 & 0xff; + o2 = bits >> 8 & 0xff; + o3 = bits & 0xff; + if (h3 == 64) { + tmp_arr[ac++] = String.fromCharCode(o1); + } else if (h4 == 64) { + tmp_arr[ac++] = String.fromCharCode(o1, o2); + } else { + tmp_arr[ac++] = String.fromCharCode(o1, o2, o3); + } + } while (i < data.length); + dec = tmp_arr.join(''); + dec = utf8_decode(dec); + return dec; + } + + var utf8_decode = function(str_data){ + var tmp_arr = [],i = 0,ac = 0,c1 = 0,c2 = 0,c3 = 0;str_data += ''; + while (i < str_data.length) { + c1 = str_data.charCodeAt(i); + if (c1 < 128) { + tmp_arr[ac++] = String.fromCharCode(c1); + i++; + } else if (c1 > 191 && c1 < 224) { + c2 = str_data.charCodeAt(i + 1); + tmp_arr[ac++] = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63)); + i += 2; + } else { + c2 = str_data.charCodeAt(i + 1); + c3 = str_data.charCodeAt(i + 2); + tmp_arr[ac++] = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)); + i += 3; + } + } + return tmp_arr.join(''); + } + + var cps_name = "premium_cps",yktk_name = "yktk",cps_val = null,yktk_val = null,uid = 0,tid = 0,ytid = 0,log = ""; + var cookies = document.cookie; + if(cookies == "") return; + var cookies_arr = cookies.split(";"); + for(var i=0;i{Y_1dGg)my6ofVJwD(ctG7 z{;pg}@$aAaLz^Ernb~Gd+GPVA5>Rqzhrp_bd!#|IbNKix*#IB~-Bz2mt!>q&o`@5S z7<&O{1F*3f2iV>t40cG*^)=zg$72DyjwbA6Eo22c>APD;A!#1fTK3VNU37%a2XG@+ zxqwF)hOxKrM{2AIQ(cwc6SpM5DTM85!dX&ns}6M<5||ZH+D179bFwIB?&tIQdr(0# zl8_?FN?OjV8AU}1&K`kB3!SdoFega=KYCP`RA1$g-&vvZzwZ$);W?6_A;)%((`&4?N?1>LYzuSJvc2`b(iL%n@ja(TxV%6dSxkB;>k$KSpOOG+{Je% zxh|HL8;i9kKHv3_FLnCU%b)y*xK`h8nd9+zG#X7NlarH^@v;1r`&U?_*5n@W@b0_c z+!m@vsTF_g>~_01E`#q^yKnKO;T?SY`tbEL_Z1j|6!`ohb^7MlDdA{PHEYJGy!-qw D*atV3 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ent.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/ent.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..915463abaf83a76643a9cb6217196af94c8666a5 GIT binary patch literal 1230 zcmeAS@N?(olHy`uVBq!ia0vp^${@_a3?wz#owI?IWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cX0^{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v)lD`qGE^|P)H5_S zH8(fXQ7|$vG|@LO)HgKNHMF!cF|jf*P=Ep@plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&py2Eb4mAah@XWlF z{PJQ=upVDuE6=>*lEl2^R8JRMC7>yKnVBh8=4Q@jE=C3>j!x!IhK8;tmL}#-juvhf z22SQc(!~;{*Cju>G&eP`1g19yq1P0rUQlw#Edbi=l3J8mmYU*Ll%J~r_O?|fZnqfW zG!Lpb1-Dy_aq86vIz}H9xk!->69T3n5EGtsfgE_^Pt60S_#$A^USG?<7MLvz0(?ST zFI~Fy`Sa&VlO{cU`0&r4Kl}FWJAL}}?Af!IE?qip+O#cOwk%w@@bKZoFJHc#Fk!;~ z|Nr+3)=y_(U}W-iaSW-rb!GBNvBL@+t_KwbeLnpEzwMgE0`=U@y4pvzm24FLn*GRU zYgFcRW&3krPR^2<4?njR)(NzJ%1bra;(T9>F`eyu-6X5Mi_>Dhcl&Nz-yGZ{|89@8 z_@4y7#fMZxPt2M7P_u{cNbff=EGTr}{O>pL;4jC@XRsA7$PZuw~ysp-+uYM)dvXwnHuNHSl zt-0I0^j!EQzvXvc-_hGE-FVNSZ{Md|pK*2J urOlfn&sXU^xg29NYrT8%uhM(*Ogs#$TI_u;`^2b%N*GU9KbLh*2~7YA4Zj)y literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/film.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/film.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..cbfb971e33e9a1f7fb19ea05fcf654893630de20 GIT binary patch literal 1352 zcmeAS@N?(olHy`uVBq!ia0vp^${@_a3?wz#owI?IWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2c=CaI?h>{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v)lD`qGE^|P)H5_S zH8(fXQ7|$vG|@LO)HgKNHMF!cF|jf*P=Ep@plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-BNS7jAG~F*KlnL8f1kSfFpHXP}>(3-T9Ob#X~hD#969RTqa;7NqJ2 zr55Lx79|7YBTX5m85nl>EdnV7y2i@CC=(bdi8(I$$)&lec_p4Mwn{)5y_C!ptHe}e zLvu?DLtTrMR0Ca0Gm|7;%M>F6-6R8ZqolNC^OQ7G3z#|B^cxtNnVOp#I6FF-yBZq0 znmD;S8913anmQSpIk{Sz8Nl><<`tJD<|U`X?9K$*4b|&}SFe?GQEFmIeo;t%ehw@Z z1Z3owsjz%x^79xw+L0kcXYNA68vHZutD32}Y>`t_eb ze|GQQed*GrnKNfTefo6KqD8A#tvYh#$fQY=HgDei?c29cpFW*Ab7sPX3IG59pYo}D zD+2?gj;D)bNX4xylLL3N2y(PdJ#u8$|Nr^o%9C&2eI6qp{zUheR{6iZcmAh!i7)fg zvHPDeM<(>T;yZ5U3gKp_3ZvH7#fA4~`h0Gx`H&s2!<=*WbmKvT6(27fsM$I7rSa0&jFfq@h)=!fsz7|^R(j%@l`DOW&U01&EkGi(b z`@m$yUe4V1g%eq3$@wm`j`Q@gebC|@|3X~NPvZBDhh?J2HD_3?sekP``NEWhCx^`R zIa5V9Pv6F}vGV8M!flgZP412KdhPyrg8ggLU5r0A$1RU;j63}0SJ3y}iE=)hY9*E% zuJXCgxvlP+{*q;%yQ04BJn_mqFtkhJb28iI^Xmw&_(7-W{)1?cLWi~*Hxp00i_>zopr0IEstj{pDw literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/get.json0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/get.json0-7000 new file mode 100644 index 0000000..28f8f46 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/get.json0-7000 @@ -0,0 +1,8 @@ +{ + "e":{ + "code":-101, + "provider":"notify", + "desc":"" + }, + "cost":"0.000003" +} \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/gridTab.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/gridTab.js0-7000 new file mode 100644 index 0000000..72a74f7 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/gridTab.js0-7000 @@ -0,0 +1,138 @@ +/** + * GridTab专用 js 文件 + */ +// 页面加载完成后初始化页面事件 +window.nova_init_hook_event = function(){ + var s = "MSIE", u = navigator.userAgent, i = -1; + if ((i = u.indexOf(s)) >= 0) { + var v = parseFloat(u.substr(i + s.length)); + if(v == 6){ try{ document.execCommand("BackgroundImageCache", false, true); } catch(e){} } + } + + var tabctls = $$('ul[focus="tabControl"]'); + for(var i=0; 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 GLK6U_y*1$g literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/iresearch.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/iresearch.js0-7000 new file mode 100644 index 0000000..631b41b --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/iresearch.js0-7000 @@ -0,0 +1,4 @@ +var _iwt_no_flash=0; +var _iwt_UA="UA-youku-000001"; + +(function(a,b,c){function y(){}function z(b){d&&a.console&&a.console.log&&a.console.log("MTFlashStore:"+b)}function H(){o.get(i,function(a){a?(D._getQueryStrByName(j)!=""?m=f+a+"&_iwt_cid="+D._getQueryStrByName(j)+"&_iwt_UA="+D._getUAId():m=f+a+"&_iwt_UA="+D._getUAId(),I(m,function(a){o.set(i,a),k=a})):(D._getQueryStrByName(j)!=""?m=f+"&_iwt_cid="+D._getQueryStrByName(j)+"&_iwt_UA="+D._getUAId():m=f+"&_iwt_UA="+D._getUAId(),I(m,function(a){o.set(i,a),k=a}))})}function I(d,e){var f=b.createElement("script"),g=o.guid();a[g]=function(){try{e.apply(a,arguments),n.removeChild(f)}catch(b){}a[g]=c},f.setAttribute("type","text/javascript"),f.setAttribute("charset","utf-8");var h=d+"&jsonp="+g+"&";typeof _iwt_p1=="undefined"?h+="_iwt_p1=&":h=h+"_iwt_p1="+_iwt_p1+"&",typeof _iwt_p2=="undefined"?h+="_iwt_p2=&":h=h+"_iwt_p2="+_iwt_p2+"&",typeof _iwt_p3=="undefined"?h+="_iwt_p3=&":h=h+"_iwt_p3="+_iwt_p3+"&";if(typeof _iwt_no_referrer!="undefined"&&!_iwt_no_referrer){var i=D.getReferrer();i!=""&&(h=h+"ref="+encodeURIComponent(i)+"&")}f.setAttribute("src",h),n.firstChild?n.insertBefore(f,n.firstChild):n.appendChild(f)}var d=!1,e=!-[1],f="http://irs01.com/irt?_iwt_id=",g="http://irs01.net/MTFlashStore.swf#",h="http://irs01.com/_iwt.gif",i="_iwt_id",j="_iwt_cid",k="",l="",m="",n=b.getElementsByTagName("head")[0],o={available:!1,guid:function(){return["MT",(+(new Date)+p++).toString(36),(Math.random()*1e18).toString(36)].join("").slice(0,16).toUpperCase()},get:function(a,b){return o._sendFlashMsg(b,"jGetItem",a)},set:function(a,b,c){return o._sendFlashMsg(c,"jSetItem",a,b)},clear:function(a,b){return o._sendFlashMsg(b,"jClearItem",a)},clearAll:function(a){return o._sendFlashMsg(a,"jClearAllItems")},_sendFlashMsg:function(b,c,d,e){b=b||y;var f=o.guid();a[f]=b;switch(arguments.length){case 2:u[c](f);break;case 3:u[c](d,f);break;case 4:u[c](d,e,f)}},initSWF:function(a,b){if(!o.available)return b&&b();if(o.inited)return a&&setTimeout(a,0);a&&q.push(a),b&&r.push(b)}},p=1,q=[],r=[],s="",t,u,v,w=b.createElement("DIV"),x=o.guid();if(!a._iwt_no_flash){try{t=a.navigator.plugins["Shockwave Flash"]||a.ActiveXObject,s=t.description||function(){return(new t("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version")}()}catch(A){}s=(s.match(/\d+/g)||[0])[0];if(s<9)o.available=!1;else{o.available=!0,a[x]=function(b,c){switch(b){case"onecall":if(!a[c])return;a[c].apply(a,[].slice.call(arguments,2)),delete a[c];break;case"error":o.available=!1;while(v=r.shift())v();z(c);break;case"load":z("Flash load success!"),o.inited=!0,o.available=!0;while(v=q.shift())setTimeout(v,0)}};function B(){w.setAttribute("style","display:block;clear:both;float:none;position:absolute;right:0;bottom:0;border:none;"),b.body.firstChild?b.body.insertBefore(w,b.body.firstChild):b.body.appendChild(w),w.innerHTML=''+''+''+''+''+''+"",u=w.firstChild,o.swf=u}var C=setInterval(function(){b.body&&(B(),clearInterval(C))},100)}}var D={track:function(){o.available?(o.initSWF(H),setTimeout(function(){o.inited||(o.available=!1,a[x]=y,D.track())},3e3)):(this._getQueryStrByName(j)!=""?m=f+"&_iwt_cid="+this._getQueryStrByName(j)+"&_iwt_UA="+this._getUAId():m=f+"&_iwt_UA="+this._getUAId(),I(m,function(a){var b=a;k=a}))},record_video_api:function(a,b,c,d){if(d+""=="0"){l=this._getHashId(),this._feedBack_video(a,b,c,d);return}this._feedBack_video(a,b,c,d)},_feedBack_video:function(a,b,c,d){var e=["ta="+d,"eid="+l,"pt="+encodeURIComponent(document.title),"vid="+a,"du="+b,"la="+c,"_iwt_id="+k,"_iwt_UA="+this._getUAId(),"r="+(new Date).getTime()].join("&"),f=h+"?"+e;this._img=new Image,this._img.src=f},_getHashId:function(){var a=location.href,b=(new Date).valueOf(),c=navigator.userAgent,d="";return d=this._md5([location.host,a,c,b,Math.random()].join("")),d},_getUAId:function(){return typeof _iwt_UA=="undefined"?"":_iwt_UA},_getQueryStrByName:function(a){var b=location.search.match(new RegExp("[?&]"+a+"=([^&]+)","i"));return b==null||b.length<1?"":b[1]},_getCookie:function(a){var b,c,d,e=document.cookie.split(";");for(b=0;b>>32-b}function c(a,b){var c,d,e,f,g;return e=a&2147483648,f=b&2147483648,c=a&1073741824,d=b&1073741824,g=(a&1073741823)+(b&1073741823),c&d?g^2147483648^e^f:c|d?g&1073741824?g^3221225472^e^f:g^1073741824^e^f:g^e^f}function d(a,b,c){return a&b|~a&c}function e(a,b,c){return a&c|b&~c}function f(a,b,c){return a^b^c}function g(a,b,c){return b^(a|~c)}function h(a,e,f,g,h,i,j){return a=c(a,c(c(d(e,f,g),h),j)),c(b(a,i),e)}function i(a,d,f,g,h,i,j){return a=c(a,c(c(e(d,f,g),h),j)),c(b(a,i),d)}function j(a,d,e,g,h,i,j){return a=c(a,c(c(f(d,e,g),h),j)),c(b(a,i),d)}function k(a,d,e,f,h,i,j){return a=c(a,c(c(g(d,e,f),h),j)),c(b(a,i),d)}function l(a){var b,c=a.length,d=c+8,e=(d-d%64)/64,f=(e+1)*16,g=Array(f-1),h=0,i=0;while(i>>29,g}function m(a){var b="",c="",d,e;for(e=0;e<=3;e++)d=a>>>e*8&255,c="0"+d.toString(16),b+=c.substr(c.length-2,2);return b}function n(a){a=a.replace(/\r\n/g,"\n");var b="";for(var c=0;c127&&d<2048?(b+=String.fromCharCode(d>>6|192),b+=String.fromCharCode(d&63|128)):(b+=String.fromCharCode(d>>12|224),b+=String.fromCharCode(d>>6&63|128),b+=String.fromCharCode(d&63|128))}return b}var o=Array(),p,q,r,s,t,u,v,w,x,y=7,z=12,A=17,B=22,C=5,D=9,E=14,F=20,G=4,H=11,I=16,J=23,K=6,L=10,M=15,N=21;a=n(a),o=l(a),u=1732584193,v=4023233417,w=2562383102,x=271733878;for(p=0;p)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/loader.swf0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/loader.swf0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..44cad262c00956af1559eee760ef33f448a1bc5f GIT binary patch literal 7001 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.css0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.css0-7000 new file mode 100644 index 0000000..0515125 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.css0-7000 @@ -0,0 +1 @@ +.yk-w1190{overflow-x:hidden}.body-offset-w1190{padding-left:160px;overflow-x:hidden}.body-offset-w970{padding-left:50px}.body-offset-mini{padding-left:20px}.yk-sidebar-position{position:fixed;_position:absolute;left:0;top:0}.yk-sidebar{width:160px;height:100%;background:#f5f5f5;z-index:997;overflow:hidden}.yk-sidebar .split{width:160px;height:1px;border-bottom:1px solid #e1e1e1}.yk-sidebar .yk-side-menu .ykSideMenu{margin-top:60px;padding:15px 0 10px}.yk-sidebar .yk-side-menu .ykSideMenu li a{display:block;width:160px;height:40px;font-size:14px;color:#555;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:40px;text-indent:3.5em;position:relative;text-decoration:none}.yk-sidebar .yk-side-menu .ykSideMenu li a.selected:hover,.yk-sidebar .yk-side-menu .ykSideMenu li a.selected{background:#06a7e1;color:#fff}.yk-sidebar .yk-side-menu .ykSideMenu li a.selected:hover .icon-1,.yk-sidebar .yk-side-menu .ykSideMenu li a.selected .icon-1{background:url("../img/toolbar.png") no-repeat 0 0}.yk-sidebar .yk-side-menu .ykSideMenu li a.selected:hover .icon-2,.yk-sidebar .yk-side-menu .ykSideMenu li a.selected .icon-2{background:url("../img/toolbar.png") no-repeat 0 -30px}.yk-sidebar .yk-side-menu .ykSideMenu li a.selected:hover .icon-3,.yk-sidebar .yk-side-menu .ykSideMenu li a.selected .icon-3{background:url("../img/toolbar.png") no-repeat 0 -60px}.yk-sidebar .yk-side-menu .ykSideMenu li a.selected:hover .icon-4,.yk-sidebar .yk-side-menu .ykSideMenu li a.selected .icon-4{background:url("../img/toolbar.png") no-repeat 0 -90px}.yk-sidebar .yk-side-menu .ykSideMenu li a.selected:hover .icon-5,.yk-sidebar .yk-side-menu .ykSideMenu li a.selected .icon-5{background:url("../img/toolbar.png") no-repeat 0 -120px}.yk-sidebar .yk-side-menu .ykSideMenu li a:hover{background:#e7e7e7}.yk-sidebar .yk-side-menu .ykSideMenu li a div{position:absolute;top:50%;left:22px;margin-top:-8px;width:18px;height:16px}.yk-sidebar .yk-side-menu .ykSideMenu li a .icon-1{background:url("../img/toolbar.png") no-repeat -30px 0}.yk-sidebar .yk-side-menu .ykSideMenu li a .icon-2{background:url("../img/toolbar.png") no-repeat -30px -30px}.yk-sidebar .yk-side-menu .ykSideMenu li a .icon-3{background:url("../img/toolbar.png") no-repeat -30px -60px}.yk-sidebar .yk-side-menu .ykSideMenu li a .icon-4{background:url("../img/toolbar.png") no-repeat -30px -90px}.yk-sidebar .yk-side-menu .ykSideMenu li a .icon-5{background:url("../img/toolbar.png") no-repeat -30px -120px}.yk-sidebar .yk-side-menu .ykSideMenu li a .sub-update{width:8px;height:8px;border-radius:10px;position:absolute;top:14px;left:33px;background:#f00}.yk-sidebar .yk-side-menu .ykSideMenu li a .sub-update-num{background:#f00;border-radius:50%;color:#fff;text-indent:0;text-align:center;height:20px;line-height:20px;font-size:12px;width:20px;position:absolute;top:50%;margin-top:-10px;right:27px;left:auto}.yk-sidebar .yk-side-menu .ykSideMenu li a .sub-update-nonum{line-height:12px}.yk-sidebar .yk-side-sub{overflow-y:hidden;position:relative}.yk-sidebar .yk-side-sub .header{width:120px;height:18px;margin:15px auto;position:relative}.yk-sidebar .yk-side-sub .header h2{display:inline;margin-right:6px;font-size:14px;color:#909090;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:18px}.yk-sidebar .yk-side-sub .header a{font-size:12px;color:#555;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:18px}.yk-sidebar .yk-side-sub .header a:hover{color:#cd3311}.yk-sidebar .yk-side-sub .header .more-icon{display:block;position:absolute;cursor:pointer;top:0;right:0;width:14px;height:18px;background:url("../img/toolbar.png") no-repeat -50px -28px}.yk-sidebar .yk-side-sub .header .more-icon:hover{background:url("../img/toolbar.png") no-repeat -50px -58px}.yk-sidebar .yk-side-sub .sub-bd{min-height:150px}.yk-sidebar .yk-side-sub .sub-bd .mySub{margin-bottom:15px}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li.new-item{display:none;padding:0;height:30px;width:100%;position:relative}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li.new-item .bg-layer{width:100%;height:100%;background:#90d7f6;text-indent:9.5em;color:#fff;line-height:30px;font-size:12px}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li.new-item .content-layer{position:absolute;height:30px;padding:0 20px}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li.new-item .content-layer a{word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;height:30px;width:90px;text-decoration:none;overflow:hidden;display:inline-block;font-size:12px;color:#fff;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:30px}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li.new-item .content-layer a img{width:20px;height:20px;margin-right:10px;vertical-align:middle}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li{position:relative;height:30px;padding:0 20px}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li a{word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;height:30px;width:90px;text-decoration:none;overflow:hidden;display:inline-block;font-size:12px;color:#555;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:30px}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li a img{width:20px;height:20px;margin-right:10px;vertical-align:middle}.yk-sidebar .yk-side-sub .sub-bd .mySub ul.mySub-list li .updateNum{height:30px;font-size:12px;color:#909090;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:30px;position:absolute;top:0;right:20px}.yk-sidebar .yk-side-sub .sub-bd .split-inner{width:120px;height:1px;border-bottom:1px solid #e1e1e1;margin:0 auto}.yk-sidebar .yk-side-sub .sub-bd .recommend ul.rec-list li{position:relative;height:30px;padding:0 20px}.yk-sidebar .yk-side-sub .sub-bd .recommend ul.rec-list li a.info{word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;height:30px;width:90px;text-decoration:none;overflow:hidden;display:inline-block;font-size:12px;color:#555;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:30px}.yk-sidebar .yk-side-sub .sub-bd .recommend ul.rec-list li a.info img{width:20px;height:20px;margin-right:10px;vertical-align:middle}.yk-sidebar .yk-side-sub .sub-bd .recommend ul.rec-list li a.subBtn{display:none;cursor:pointer;text-decoration:none;font-size:12px;color:#3399e0;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:30px;position:absolute;top:0;right:15px}.yk-sidebar .yk-side-sub .sub-bd .recommend ul.rec-list li a.subBtn:hover{color:#cd3311}.yk-sidebar .yk-side-manage{width:160px;height:40px;font-size:14px;color:#3399e0;font-family:"Microsoft Yahei","微软雅黑","SimHei","黑体",Arial,sans-serif;line-height:40px;text-indent:4em;position:absolute;left:0;bottom:0;cursor:pointer;border-top:1px solid #e1e1e1;border- \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.js0-7000 new file mode 100644 index 0000000..2e42e01 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetool.js0-7000 @@ -0,0 +1 @@ +var sidebar={sideBar:null,sideBar_w970:null,sideBar_w970_custom:null,subEle:null,rightSidebar:null,closeIcon:null,subData:null,recData:null,isWide:!1,loadingImg:null,userInfoTip:null,sidebarMask:null,haveLoaded:!1,nHaveLoaded:!1,isNsidebarPopout:!1,init:function(){var e=this;e.initGlobalValue(),e.switchLinkOpen(),e.initSize(),e.checkToolSize(),e.hideNarrowBarInVpageInIE8AtLowWidth(),e.initGlobalEvents(),e.appendShowSubBtnInVpage()},initGlobalValue:function(){var e=this;e.sideBar=jQuery("#ykSideBar"),e.sideBar_w970=jQuery("#ykSidebar_w970"),e.sideBar_w970_custom=jQuery("#ykSidebar_w970_custom"),e.subEle=jQuery("#ykSideSub"),e.nSubEle=jQuery("#yknSideSub"),e.rightSidebar=jQuery("#rightSidebar"),e.closeIcon=e.rightSidebar.find(".closeIcon"),e.sidebarMask=jQuery("#sidebarMask"),e.loadingImg=jQuery('正在加载'),e.userInfoTip=jQuery('

订阅
'),e.miniSidebar=jQuery("#miniSidebar")},initSize:function(){var e=sidebar,i=e.sideBar.height(),a=i-330,s=e.subEle.find("#subscribeBody")[0];if(e.subEle.height(a),s){var t=e.subEle.height()-48;jQuery(s).height(t)}var r=e.sideBar_w970[0]?e.sideBar_w970:e.sideBar_w970_custom,o=r.height(),n=o-410,d=jQuery("#yknSideSub");d.height(n)},checkToolSize:function(){var e=this,i=i=window.innerWidth||"CSS1Compat"==document.compatMode?document.documentElement.clientWidth:document.body.clientWidth,a=e.sideBar_w970[0],s=e.sideBar_w970[0]?e.sideBar_w970:e.sideBar_w970_custom;a&&(1400>i&&i>=1075?(e.isWide=!1,e.nHaveLoaded||e.loadSubDataToNsidebar(),e.sidebarMask.css({left:"-110px"})):i>=1400?(e.isWide=!0,e.haveLoaded||e.loadSubscribeData(),e.sidebarMask.css({left:"0px"})):1075>i&&(e.isWide=!1,e.sidebarMask.css({left:"-141px"}),s.css({display:"block",left:"-50px"})))},appendShowSubBtnInVpage:function(){var e=this,i=jQuery('

订阅
列表

');if(e.sideBar_w970_custom[0]){var a=e.sideBar_w970_custom.find("#yknSideSub");i.on("click",function(){i.remove(),e.loadSubDataToNsidebar()}).appendTo(a)}},switchLinkOpen:function(){var e=this,i=document.location.href,a=/v\.youku\.com\/v_show/i,s=a.test(i);s?(e.sideBar.find("a:not(.subBtn)").attr("target","lsidetool"),e.sideBar_w970_custom.find("a").attr("target","lsidetool")):(e.sideBar.find("a:not(.subBtn)").attr("target","_self"),e.sideBar_w970.find("a").attr("target","_self"))},hideNarrowBarInVpageInIE8AtLowWidth:function(){var e=this,i=document.location.href,a=/v\.youku\.com\/v_show/i,s=a.test(i);if(s){var t=window.innerWidth;"number"!=typeof t&&(t="CSS1Compat"==document.compatMode?document.documentElement.clientWidth:document.body.clientWidth,1100>t||t>1255&&1290>t?(e.sideBar_w970_custom.hide(),e.sidebarMask.css({left:"-160px"})):(e.sideBar_w970_custom.show(),e.sidebarMask.css({left:"-110px"})))}},switchLsideTool:function(){var e=this,i=jQuery(document.body),a=window.innerWidth,s=e.sideBar_w970.children().length,t=e.sideBar_w970[0]?e.sideBar_w970:e.sideBar_w970_custom;switch("number"!=typeof a&&(a="CSS1Compat"==document.compatMode?document.documentElement.clientWidth:document.body.clientWidth),!0){case 1075>a:e.isWide=!1,t.is(":animated")||t.css({display:"block"}).animate({left:"-50px"},200,function(){e.miniSidebar.show(),e.isNsidebarPopout=!0}),e.sideBar.is(":animated")||e.sidebarMask.is(":animated")||e.sideBar.animate({left:"-160px"},300),e.sidebarMask.css({left:"-141px"}),i.hasClass("body-offset-w1190")?i.removeClass("body-offset-w1190").addClass("body-offset-mini"):i.hasClass("body-offset-w970")?i.removeClass("body-offset-w970").addClass("body-offset-mini"):i.addClass("body-offset-mini");break;case 1400>a&&a>=1075:e.isWide=!1,t.is(":animated")||t.css({display:"block"}).animate({left:"0px"},200,function(){e.miniSidebar.hide(),e.isNsidebarPopout=!1}),e.sidebarMask.css({left:"-110px"}),s&&(e.nHaveLoaded||e.loadSubDataToNsidebar(),e.sideBar.is(":animated")||e.sidebarMask.is(":animated")||e.sideBar.animate({left:"-160px"},300)),i.hasClass("body-offset-w1190")?i.removeClass("body-offset-w1190").addClass("body-offset-w970"):i.hasClass("body-offset-mini")?i.removeClass("body-offset-mini").addClass("body-offset-w970"):i.addClass("body-offset-w970");break;case a>=1400:e.isNsidebarPopout=!1,s?(e.isWide=!0,i.hasClass("body-offset-w970")?i.removeClass("body-offset-w970").addClass("body-offset-w1190"):i.hasClass("body-offset-mini")?i.removeClass("body-offset-mini").addClass("body-offset-w1190"):i.addClass("body-offset-w1190"),e.sidebarMask.css({left:"0px"}),e.sideBar.is(":animated")||e.sidebarMask.is(":animated")||e.sideBar.css({display:"block"}).animate({left:"0px"},300,function(){e.sideBar_w970.css({display:"block",left:"-50px"}),e.haveLoaded||e.loadSubscribeData()})):(e.sidebarMask.css({left:"-110px"}),t.is(":animated")||"-50px"!=t.css("left")||t.css({display:"block"}).animate({left:"0px"},200,function(){e.miniSidebar.hide()}))}},switchNavTab:function(e){var i,a,s=jQuery(".ykSideMenu"),t=s.length;if(t)for(var r=0;t>r;r++)a=jQuery(s[r]),i=a.children(),jQuery(i[e]).find("a").addClass("selected")},initGlobalEvents:function(){var e=this,i=null,a=e.sideBar_w970[0]?e.sideBar_w970:e.sideBar_w970_custom;jQuery(window).resize(function(){e.initSize(),e.switchLsideTool(),e.hideNarrowBarInVpageInIE8AtLowWidth()}),e.miniSidebar.on("click",function(){e.sidebarMask.css({left:"-110px"}),a.css({display:"block",left:"-50px"}).animate({left:"0px"},300,function(){e.miniSidebar.hide(),e.isNsidebarPopout=!0,e.sideBar_w970[0]&&!e.nHaveLoaded&&e.loadSubDataToNsidebar()})}),a.on("mouseleave",function(){e.userInfoTip.remove(),e.isNsidebarPopout&&"0px"==a.css("left")&&(i=setTimeout(function(){e.sidebarMask.css({left:"-160px"}),a.is(":animated")||a.animate({left:"-50px"},200,function(){e.miniSidebar.show(),clearTimeout(i)})},3e3))}).on("mouseenter",function(){clearTimeout(i)}).on("click",function(e){e.stopPropagation()}),jQuery("body").on("click",function(){e.isNsidebarPopout&&"0px"==a.css("left")&&(e.sidebarMask.css({left:"-160px"}),a.is(":animated")||a.animate({left:"-50px"},200,function(){e.miniSidebar.show(),clearTimeout(i)}))})},loadSubDataToNsidebar:function(){var e=this,i=jQuery("#yknSideSub").height(),a=i/44;a=Math.floor(a),a=a>15?15:a,e.loadSubscribeData(a,2)},loadSubscribeData:function(e,i){var a=this,s={page_length:e||20,type:i||2};a.isWide?a.loadingImg.css({width:"64px",height:"62px",margin:"-31px 0 0 -32px"}).appendTo(a.subEle):a.loadingImg.css({width:"40px",height:"40px",margin:"-20px 0 0 -20px"}).appendTo(a.nSubEle),jQuery.ajax({url:"http://www.youku.com/index/getUserSubList",type:"GET",data:s,dataType:"JSONP",timeout:5e3,success:function(i){a.subData=i,0===i.length?(e-=1,a.getRecmmondData(e)):a.i \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetoolresize.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetoolresize.js0-7000 new file mode 100644 index 0000000..0f3e8a3 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/lsidetoolresize.js0-7000 @@ -0,0 +1,16 @@ + (function() { + var preSet = function() { + var w = document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth, + R = 1400, + r = 1075, + b = Element.extend(document.body); + if(w < R && w >= r){ + b.addClassName('body-offset-w970').removeClassName('body-offset-w1190'); + }else if(w >= R && lsidetooltype == "w"){ + b.addClassName('body-offset-w1190').removeClassName('body-offset-w970'); + }else if(w < r){ + b.addClassName('body-offset-mini').removeClassName('body-offset-w970').removeClassName('body-offset-w1190'); + } + }; + preSet(); +})(); diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/music.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/music.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..86717da41c7d259dfceb4048629e4c824273e518 GIT binary patch literal 1220 zcmeAS@N?(olHy`uVBq!ia0vp^${@_a3?wz#owI?IWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cX0^{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v)lD`qGE^|P)H5_S zH8(fXQ7|$vG|@LO)HgKNHMF!cF|jf*P=Ep@plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&py2Eb4mAah@XWlF z{PJQ=upVDuE6=>*lEl2^R8JRMC7>yKnVBh8CN55<=7z>Dj!x#ThK8;t7LG;+uC6X7 zhHe&SrUr&)FugAM$)&lec_lEtDG0r;IQ4>(Lv8`kW|!2W%(B!Jx1#)91+cfRGI6`b z38#5by(zfe;*3+TKF~4xpvXmvY?u%*1%a6GqzmN06Mt$RFvS-EllHZ5hueVJ!XUsW z#P#^`;}SYURq6GiT0x^ytywzke4lT)1S(k_i(g z{Qv)d>8+jaK)pXaT^vIyZe5vtd)*NQ4p-5TE35wg-!E(ZmFd>Z$#b?VW(v=~$}8NX^So4Z`QloW7&n4OoKBfo|A7#Cd_2$2~4wUIF=E&{_3HHc|7m)L*x6*Cm)&L z_e0av?b~_og%@T#U8M2p@?yV0_Zy`twyK}EEmw~>-BDZf;=Jg@Z~uDil&=(ib-lgm z>rVCT#R7Lr8ei{yZCLIZXE-*kECJ+s{TTKUVj6P5F-1wXAQzuP@4 l@3#K$^|pU^z1L@CV_?|oAR%%2lMkp|@pScbS?83{1OV4eyy*Y{ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/popup.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/popup.js0-7000 new file mode 100644 index 0000000..2cc903c --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/popup.js0-7000 @@ -0,0 +1,64 @@ +if(!Array.prototype.push){Array.prototype.push=function (){var startLength=this.length;for(var i=0;i35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('E 1k={by:\'1.6.1\',2V:(q(){E 7a=7P.7X;E cG=L.1x.2o.1M(1g.g9)==\'[17 77]\';o{56:!!1g.7h&&!cG,77:cG,67:7a.2I(\'gK/\')>-1,8Q:7a.2I(\'8Q\')>-1&&7a.2I(\'dc\')===-1,cY:/gN.*gz.*dd/.28(7a)}})(),3J:{8F:!!U.31,aL:!!U.aG,6N:(q(){E 80=1g.I||1g.7Y;o!!(80&&80.1x)})(),8q:(q(){if(2d 1g.gR!==\'1H\')o 1h;E 1P=U.2h(\'1P\');E 1r=U.2h(\'1r\');E cH=1d;if(1P[\'5D\']&&(1P[\'5D\']!==1r[\'5D\'])){cH=1h}1P=1r=14;o cH})()},9i:\'<4C[^>]*>([\\\\S\\\\s]*?)<\\/4C>\',fi:/^\\/\\*-i0-([\\s\\S]*)\\*\\/\\s*$/,3q:q(){},K:q(x){o x}};if(1k.2V.cY)1k.3J.8q=1d;E 5B={};E fW={fV:q(){E 9X;Y(E i=0,M=1y.M;i0){if(1j=2a.1j(23)){1v+=2a.1Z(0,1j.1l);1v+=2f.6y(2X(1j));2a=2a.1Z(1j.1l+1j[0].M)}1a{1v+=2a,2a=\'\'}}o 1v}q cz(23,2X,48){2X=ch(2X);48=L.26(48)?1:48;o C.6U(23,q(1j){if(--48<0)o 1j[0];o 2X(1j)})}q 8Y(23,1o){C.6U(23,1o);o 2f(C)}q cB(M,6X){M=M||30;6X=L.26(6X)?\'...\':6X;o C.M>M?C.1Z(0,M-6X.M)+6X:2f(C)}q 3M(){o C.1A(/^\\s+/,\'\').1A(/\\s+$/,\'\')}q 9m(){o C.1A(/<\\w+(\\s+("[^"]*"|\'[^\']*\'|[^>])+)?>|<\\/\\w+>/gi,\'\')}q 4f(){o C.1A(1q 41(1k.9i,\'6d\'),\'\')}q 7s(){E gq=1q 41(1k.9i,\'6d\');E gw=1q 41(1k.9i,\'im\');o(C.1j(gq)||[]).3g(q(gu){o(gu.1j(gw)||[\'\',\'\'])[1]})}q 4J(){o C.7s().3g(q(4C){o 55(4C)})}q cC(){E 9j=1y.M>0?1y[0]:1h;E s=C.1A(/&/g,\'&gs;\').1A(//g,\'>\');if(9j)s=s.1A(/"/g,\'&ga;\').1A(/\\\'/g,\'&#gb;\');o s}q cE(){E 9j=1y.M>0?1y[0]:1h;E s=C.9m().1A(/&gv;/g,\'<\').1A(/>/g,\'>\').1A(/&gs;/g,\'&\');if(9j)s=s.1A(/&ga;/g,\'"\').1A(/&#gb;/g,"\'");o s}q 61(g0){E 1j=C.3M().1j(/([^?#]*)(#.*)?$/);if(!1j)o{};o 1j[1].3h(g0||\'&\').3L({},q(3k,1K){if((1K=1K.3h(\'=\'))[0]){E 1s=bI(1K.bM());E G=1K.M>1?1K.2W(\'=\'):1K[0];if(G!=1H)G=bI(G);if(1s in 3k){if(!L.4u(3k[1s]))3k[1s]=[3k[1s]];3k[1s].1f(G)}1a 3k[1s]=G}o 3k})}q 3n(){o C.3h(\'\')}q 5x(){o C.1Z(0,C.M-1)+2f.hm(C.c3(C.M-1)+1)}q 51(48){o 48<1?\'\':1q 4B(48+1).2W(C)}q 6I(){E 5f=C.3h(\'-\'),4c=5f.M;if(4c==1)o 5f[0];E cw=C.6D(0)==\'-\'?5f[0].6D(0).2r()+5f[0].4Y(1):5f[0];Y(E i=1;i<4c;i++)cw+=5f[i].6D(0).2r()+5f[i].4Y(1);o cw}q 6u(){o C.6D(0).2r()+C.4Y(1).2B()}q bA(){o C.1A(/::/g,\'/\').1A(/([A-Z]+)([A-Z][a-z])/g,\'$f1$2\').1A(/([a-z\\d])([A-Z])/g,\'$f1$2\').1A(/-/g,\'8C\').2B()}q aA(){o C.1A(/8C/g,\'-\')}q 20(fq){E c4=C.1A(/[\\bY-\\c8\\\\]/g,q(9n){if(9n in 2f.c1){o 2f.c1[9n]}o\'\\\\fs\'+9n.c3().4v(2,16)});if(fq)o\'"\'+c4.1A(/"/g,\'\\\\"\')+\'"\';o"\'"+c4.1A(/\'/g,\'\\\\\\\'\')+"\'"}q 2g(){o C.20(1h)}q 7n(2C){o C.1A(2C||1k.fi,\'$1\')}q 9l(){E 6Y=C;if(6Y.4H())o 1d;6Y=C.1A(/\\\\./g,\'@\').1A(/"[^"\\\\\\n\\r]*"/g,\'\');o(/^[,:{}\\[\\]0-9.\\-+gp-u \\n\\r\\t]*$/).28(6Y)}q 4V(f3){E 3O=C.7n();1J{if(!f3||3O.9l())o 55(\'(\'+3O+\')\')}1N(e){}4K 1q hc(\'hf hg 78 2Z: \'+C.20())}q 1F(23){o C.2I(23)>-1}q 7N(23){o C.2I(23)===0}q 8V(23){E d=C.M-23.M;o d>=0&&C.7r(23)===d}q 59(){o C==\'\'}q 4H(){o/^\\s*$/.28(C)}q 98(17,23){o 1q 3v(C,23).31(17)}o{6U:6U,cz:cz,8Y:8Y,cB:cB,3M:2f.1x.eX?2f.1x.eX:3M,9m:9m,4f:4f,7s:7s,4J:4J,cC:cC,cE:cE,61:61,hh:61,3n:3n,5x:5x,51:51,6I:6I,6u:6u,bA:bA,aA:aA,20:20,2g:2g,7n:7n,9l:9l,4V:4V,1F:1F,7N:7N,8V:8V,59:59,4H:4H,98:98}})());E 3v=2x.2l({2p:q(6Z,23){C.6Z=6Z.2o();C.23=23||3v.fd},31:q(17){if(17&&L.2T(17.ag))17=17.ag();o C.6Z.6U(C.23,q(1j){if(17==14)o(1j[1]+\'\');E 5N=1j[1]||\'\';if(5N==\'\\\\\')o 1j[2];E 7p=17,7o=1j[3];E 23=/^([^.[]+|\\[((?:.*?[^\\\\])?)\\])(\\.|\\[|$)/;1j=23.aP(7o);if(1j==14)o 5N;1R(1j!=14){E fr=1j[1].7N(\'[\')?1j[2].1A(/\\\\\\\\]/g,\']\'):1j[1];7p=7p[fr];if(14==7p||\'\'==1j[3])2m;7o=7o.4Y(\'[\'==1j[3]?1j[1].M:1j[0].M);1j=23.aP(7o)}o 5N+2f.6y(7p)})}});3v.fd=/(^|.|\\r|\\n)(#\\{(.*?)\\})/;E $2m={};E 5w=(q(){q 1E(1o,1G){E 1l=0;1J{C.3a(q(G){1o.1M(1G,G,1l++)})}1N( \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qfooter.css0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qfooter.css0-7000 new file mode 100644 index 0000000..30aa130 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qfooter.css0-7000 @@ -0,0 +1,38 @@ +@charset "utf-8"; +.yk-footer{min-width:990px;margin-bottom:20px;_margin-bottom:0;} +.yk-footer a,.yk-footer label,.yk-footer p,.yk-footer b,.yk-footer .copyright{line-height:20px;font-family:arial, helvetica, verdana, tahoma, sans-serif;} +.yk-footer .yk-footer-con{border-top:2px solid #ddd;overflow:hidden;width:970px;margin-left:auto;margin-right:auto;} +.yk-footer a{color:#555555;text-decoration:none;} +.yk-footer a:hover{color:#cc3311;} +.yk-footer ul,.yk-footer li,.yk-footer p{white-space:nowrap;padding:0;margin:0;} +.yk-footer .icon-footer-icp,.yk-footer .icon-footer-union,.yk-footer .icon-footer-report,.yk-footer .icon-footer-submit,.yk-footer .icon-footer-icbu, +.yk-footer .qcode,.yk-footer button{background-image:url("/index/img/footer/footer.png");background-repeat:no-repeat;} +.yk-footer .icon-footer-icp,.yk-footer .icon-footer-union,.yk-footer .icon-footer-report,.yk-footer .icon-footer-submit,.yk-footer .icon-footer-icbu{width:16px;height:16px;vertical-align:middle;*line-height:10px;*float:left;display:inline-block;*display:inline;*zoom:1;*font-size:0;} +.yk-footer .icon-footer-icp{background-position:0 0;} +.yk-footer .icon-footer-union{background-position:-16px 0;} +.yk-footer .icon-footer-report{background-position:-32px 0;} +.yk-footer .icon-footer-submit{background-position:-48px 0;} +.yk-footer .icon-footer-icbu{background-position:-64px 0;} +.yk-footer .footer-link{font-size:0;margin:20px 0 40px;margin-right:-40px;word-spacing:-3px} +.yk-footer ul{list-style:none;display:inline-block;*display:inline;*zoom:1;margin-right:26px;font-size:0;word-spacing:-6px;} +.yk-footer .narrow{margin-right:5px;*margin-right:15px;} +.yk-footer li{color:#909090;margin-bottom:8px;*margin-left:-12px;*margin-right:-12px;font-size:0;word-spacing:-3px;line-height:1em;word-spacing:-3px} +.yk-footer li a{margin-right:12px;font-size:12px;word-spacing:0;} +.yk-footer li label{font-size:12px;} +.yk-footer label a{margin-right:0;} +.yk-footer .cert{margin:20px 0 40px;margin-right:-100px;color:#909090;font-size:0;vertical-align:top;} +.yk-footer .cert .cert-list{display:inline-block;*display:inline;*zoom:1;font-size:12px;margin-right:48px;*margin-right:55px;vertical-align:top;} +.yk-footer .cert p{line-height:16px;margin-bottom:8px;vertical-align:middle;} +.yk-footer .cert p span,.yk-footer .cert p a{font-size:12px;*display:inline;line-height:16px;} +.yk-footer .cert b{font-weight:normal;} +.yk-footer .qcode{background-position:0 -65px;width:105px;height:90px;display:inline-block;*display:inline;*zoom:1;padding-left:110px;} +.yk-footer .qcode .wrap{display:inline-block;padding:18px 0;line-height:25px;} +.yk-footer .qcode .title{font-size:16px;display:inline-block;} +.yk-footer .copyright{clear:both;text-align:center;color:#909090;font-size:12px;} +.yk-w970 .yk-footer-con{width:970px;} +.yk-w1190 .yk-footer-con{width:1190px;} +.yk-w1190 .yk-footer .footer-link{margin-right:-80px;} +.yk-w1190 .yk-footer ul{margin-right:76px;} +.yk-w1190 .yk-footer .narrow{margin-right:10px;*margin-right:20px;} +.yk-w1190 .yk-footer .cert{margin-right:-123px;*margin-right:-90px;} +.yk-w1190 .yk-footer .cert-list{margin-right:108px;*margin-right:115px;} diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.css0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.css0-7000 new file mode 100644 index 0000000..53900aa --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.css0-7000 @@ -0,0 +1 @@ +@charset "utf-8";.yk-header .ico-user-l2,.yk-header .ico-myspace-l2,.yk-header .ico-channels-l2,.yk-header .ico-videomanage-l2,.yk-header .ico-notifications-l2,.yk-header .ico-upload-l2,.yk-header .ico-mydrama-l2,.yk-header .ico-member-l2,.yk-header .ico-VR-l2,.yk-header .ico-subscription-l2,.yk-header .ico-favorite-l2,.yk-header .ico-record-l2,.yk-header .ico-sharing-l2,.yk-header .caret,.yk-header .yk-hpanel-ico,.yk-nav .caret,.yk-nav .ico-toggle,.yk-nav .ico-setting,.yk-nav .ico-addsub,.yk-ucenter .yk-playrecords .yk-records .records-list .r-del,.yk-ucenter .yk-playrecords .yk-notice .yk-notice-success .ico-notice-ok,.yk-header .yk-so-box button,.yk-ucenter .yk-msgbox .handle i,.yk-ucenter .yk-msgbox .videomsg .hint i,.yk-ucenter .yk-playrecords .yk-records .records-list .r-stat i{background:transparent url("/index/img/header/header.png") no-repeat}.reward-entry-integral{font-style:normal}.reward-integral-fake{z-index:999999;font-size:14px;color:#909090}.yk-header a,.yk-nav a{cursor:pointer;text-decoration:none;color:#555}.yk-header a:hover,.yk-nav a:hover{text-decoration:none;color:#c31}.yk-header ul,.yk-nav ul{list-style:none;padding:0;margin:0}.yk-header .splite,.yk-nav .splite{color:#909090}.yk-header .caret,.yk-nav .caret{overflow:hidden;display:inline-block;*display:inline;*zoom:1;width:8px;height:4px;line-height:0;font-size:0;vertical-align:middle;background-position:-120px -4px}.yk-header .ico-toggle,.yk-nav .ico-toggle{display:inline-block;*display:inline;*zoom:1;width:14px;height:12px;margin-top:-1px;*margin-top:3px;margin-right:5px;line-height:0;font-size:0;vertical-align:middle;background-position:0 -140px}.yk-header .ico-setting,.yk-nav .ico-setting{display:inline-block;*display:inline;*zoom:1;width:12px;height:12px;line-height:0;font-size:0;vertical-align:middle;background-position:-60px -140px;margin:-2px 5px 0 0}.yk-header .dropdown,.yk-nav .dropdown{position:relative}.yk-header .dropdown .handle,.yk-nav .dropdown .handle{cursor:default;z-index:3;position:absolute;top:0;left:0;padding:0 10px}.yk-header .dropdown .handle .caret,.yk-nav .dropdown .handle .caret{position:absolute;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;-o-transition:all .3s ease-in;transition:all .3s ease-in;-ms-transition:transform .3s ease-in}.yk-header .dropdown .panel,.yk-nav .dropdown .panel{display:none;z-index:2;position:absolute;top:100%;left:0;padding:19px}.yk-header .dropdown .mask,.yk-nav .dropdown .mask{display:none;z-index:1;position:absolute;top:60px;left:0;opacity:0;filter:alpha(opacity=0);width:0;height:0;border:none;background:#fff}.yk-header .dropdown-open .handle,.yk-nav .dropdown-open .handle,.yk-header .dropdown-open .panel,.yk-nav .dropdown-open .panel{border:1px solid #ddd;background:#fff}.yk-header .dropdown-open .handle,.yk-nav .dropdown-open .handle{border-bottom:none}.yk-header .dropdown-open .handle .caret,.yk-nav .dropdown-open .handle .caret{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);-ms-transform:rotate(0)}.yk-header .dropdown-open .panel,.yk-nav .dropdown-open .panel,.yk-header .dropdown-open .ico-arrow-top-grey,.yk-nav .dropdown-open .ico-arrow-top-grey,.yk-header .dropdown-open .mask,.yk-nav .dropdown-open .mask{display:block}.yk-header .w970-show,.yk-nav .w970-show{display:block}.yk-header .w1190-show,.yk-nav .w1190-show{display:none}.yk-header .ico-user-l2,.yk-header .ico-myspace-l2,.yk-header .ico-channels-l2,.yk-header .ico-videomanage-l2,.yk-header .ico-notifications-l2,.yk-header .ico-upload-l2,.yk-header .ico-mydrama-l2,.yk-header .ico-member-l2,.yk-header .ico-VR-l2,.yk-header .ico-subscription-l2,.yk-header .ico-favorite-l2,.yk-header .ico-record-l2,.yk-header .ico-sharing-l2{display:inline-block;*display:inline;*zoom:1;font-size:0;line-height:0;vertical-align:middle}.yk-header .ico-user-l2,.yk-header .ico-myspace-l2,.yk-header .ico-channels-l2,.yk-header .ico-videomanage-l2,.yk-header .ico-notifications-l2,.yk-header .ico-upload-l2,.yk-header .ico-mydrama-l2,.yk-header .ico-member-l2,.yk-header .ico-VR-l2,.yk-header .ico-subscription-l2,.yk-header .ico-favorite-l2,.yk-header .ico-record-l2,.yk-header .ico-sharing-l2{width:20px;height:20px}.yk-header .ico-user-l2{background-position:0 0}.yk-header .ico-myspace-l2{background-position:-20px 0}.yk-header .ico-channels-l2{background-position:-40px 0}.yk-header .ico-videomanage-l2{background-position:0 -20px}.yk-header .ico-notifications-l2{background-position:-20px -20px}.yk-header .ico-upload-l2{background-position:-40px -20px}.yk-header .ico-mydrama-l2{background-position:0 -40px}.yk-header .ico-member-l2{background-position:-20px -40px}.yk-header .ico-VR-l2{background-position:-40px -40px}.yk-header .ico-subscription-l2{background-position:0 -60px}.yk-header .ico-favorite-l2{background-position:-20px -60px}.yk-header .ico-record-l2{background-position:-40px -60px}.yk-header .ico-sharing-l2{background-position:0 -80px}.yk-header a:hover .ico-user-l2{background-position:-60px 0}.yk-header a:hover .ico-myspace-l2{background-position:-80px 0}.yk-header a:hover .ico-channels-l2{background-position:-100px 0}.yk-header a:hover .ico-videomanage-l2{background-position:-60px -20px}.yk-header a:hover .ico-notifications-l2{background-position:-80px -20px}.yk-header a:hover .ico-upload-l2{background-position:-100px -20px}.yk-header a:hover .ico-mydrama-l2{background-position:-60px -40px}.yk-header a:hover .ico-member-l2{background-position:-80px -40px}.yk-header a:hover .ico-VR-l2{background-position:-100px -40px}.yk-header a:hover .ico-subscription-l2{background-position:-60px -60px}.yk-header a:hover .ico-favorite-l2{background-position:-80px -60px}.yk-header a:hover .ico-record-l2{background-position:-100px -60px}.yk-header a:hover .ico-sharing-l2{background-position:-60px -80px}.yk-ucenter .yk-msgbox .handle i{background-position:-120px -11px}.yk-ucenter .yk-msgbox .handle:hover i{background-position:-120px -20px}.yk-ucenter .yk-msgbox .videomsg .hint .ico-new{background-position:-120px -60px}.yk-ucenter .yk-msgbox .videomsg .hint .ico-success{background-position:-120px -100px}.yk-ucenter .yk-msgbox .videomsg .hint .ico-notice{background-position:-120px -120px}.yk-ucenter .yk-msgbox .videomsg .hint .ico-subscription{background-position:-120px -185px}.dropdown .panel .yk-hpanel-loading{position:absolute;top:0;left:0;width:100%;height:100%}.dropdown .panel .yk-hpanel-loading .ico-loading-64{width:64px;height:64px;background:url(/index/img/2013/loading_64.gif) no-repeat;display:block;position:absolute;top:50%;left:50%;margin-top:-32px;margin-left:-32px;z-index:1}.yk-header{height:60px;position:absolute;top:0;left:0;width:100%}.yk-header-container{*zoom:1;width:100%;min-width:990px;background:#fff;border-bottom:solid 1px #e1e1e1;box-sizing:border-box;height:61px}.yk-header-container *{font-family:"Microsoft YaHei","微软雅黑",helvetica,arial,verdana,tahoma,sans-serif}.yk-header-container .mask{position:abso \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.js0-7000 new file mode 100644 index 0000000..a82e803 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qheader.js0-7000 @@ -0,0 +1,264 @@ +(function(o){ +if(!o || o.QHeader){ return; } + +//global domain +document.domain = 'youku.com'; + +//define variable +var toDomain = function(s){ s = s.replace('http://', ''); if(s[s.length -1] == '/'){ s = s.substr(0, s.length-1); }; return s; } +var DOMAIN_NC = toDomain(nc_domain) + ,DOMAIN_NOTICE = toDomain(notice_domain) + ,LOADING = '' + ,isIE6 = document.all && !window.XMLHttpRequest ? true : false; + +//header class +var QHeader = { + ids: {'headerbox': 'qheader_box', 'header': 'qheader'}, + dropmenuGroup: null, + node: null, + jsres: typeof(qheaderjs) == 'object' ? qheaderjs : null, + ready: false, + status: 'static', + rule: '',//取消顶导fixed + init: function(){ + this.header = document.getElementById(this.ids.header); + this.headerbox = document.getElementById(this.ids.headerbox); + if(!this.header){ return; } + //优先执行的功能不依赖资源加载 + this.Nav.findStick();//导航替换 + this.Search.init();//搜索功能 + //登录状态 common.js ready + if(typeof(islogin) == 'function' && !islogin()){ + document.getElementById('qheader_logbefore').style.display = 'block'; + } + this.bind(); + //依赖打印代码中的资源声明打印 + if(!this.jsres){ return; } + var _this = this, canrun = false, runed = false; + + //运行时检测依赖脚本, 如加载立即运行 + var timer = setInterval(function(){ + if(_this.chkres('relyon')){ + canrun = true; + clearInterval(timer); + if(!runed){ + _this.bindfns(); runed = true; + } + } + }, 10); + + //domready后检测依赖脚本, 添加未包含的脚本, 并加载附加功能 + domReady(function(){ + clearInterval(timer); timer = null; + canrun = canrun || _this.chkres('relyon'); + + var addons = function(){ + _this.chkres('addons'); + _this.loadres('addons', function(){ + if(typeof(XBox) != 'undefined'){ + XBox.init({"site":14}); + + var f = document.getElementById('qheader_search'); + if(f){ + var b = f.getElementsByTagName('button')[0]; + if(b){ + addEvent(b, 'click', function(){ + _this.Search.doSearch(); + }); + } + } + } + }); + } + + if(!canrun){ + _this.loadres('relyon', function(){ + var relyon = _this.jsres.relyon; + for(var i=0; i= this.header.offsetHeight + posheader.y){ inview = false; } + if(scrolltop >= posheader.y){ fixpos = true; } + + var _this = this + ,header = ready ? Element.extend(this.header) : this.header + ,headerbox = ready ? Element.extend(this.headerbox) : this.headerbox; + + if(this.rule == 'fixed'){ + if(fixpos){ + if(this.status != 'fixed'){ + if(!isIE6){ headerbox.style.position = 'fixed'; } + this.status = 'fixed'; + } + }else{ + if(this.status != 'static'){ + if(!isIE6){ headerbox.style.position = 'relative'; } + this.status = 'static'; + } + } + }else{ + if(this.status != 'static'){ + if(!isIE6){ headerbox.style.position = 'relative'; } + this.status = 'static'; + } + } + + return this; + }, + loadres: function(key, callback){ + var res = this.jsres[key]; + var _this = this; + var callback = typeof(callback) == 'function' ? callback : function(){}; + for(var i=0; i'+ LOADING +''); + } + QheaderModule.initHeaderUser(); + }, + getUID: function(){ + if(!islogin()){ return 0; } + var ckie = Nova.Cookie.get('yktk'); + var uid = 0; + if(ckie){ + try{ + var u_info = decode64(decodeURIComponent(ckie).split( \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qwindow.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qwindow.js0-7000 new file mode 100644 index 0000000..28906c4 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/qwindow.js0-7000 @@ -0,0 +1,201 @@ +var Qwindow = function(params){ + //default config + this.config = { + title: '', + size:{ width:320, height:200 }, + mode: 'normal', + posrefer: window, + pos:{ top:'middle', left:'center' }, + content: { type:'html', value: '' }, + maskstyle: { color: '#545454', opacity: 0.5 }, + showmask: true, + showhandle: true, + zindex: 30000, + scrolling: false, + elements: 'object,embed,select', + onshow: function(){}, + onhide: function(){}, + ondestroy: function(){} + } + this.config = arguments[0] ? (typeof(arguments[0])=='object' ? this._mergeConfig(this.config, params) : params) : this.config; + + this.isIE = (document.all) ? true : false; + this.isIE6 = this.isIE && !window.XMLHttpRequest; + //sogou + //var ua = navigator.userAgent.toLowerCase(); + //ua.indexOf('se 2.x') != -1 ? true : false; + this.init(); +} +Qwindow.prototype = { + init: function(){ + this.status = 'hide'; + this.isDestroy = false; + this.dom = {}; + this.dom.win = document.createElement('div'); this.dom.win.className = 'qwindow'; + this.dom.winbox = document.createElement('div'); this.dom.winbox.className = 'winbox'; + this.dom.winbg = document.createElement('div'); this.dom.winbg.className = 'winbg'; + + this.dom.winhead = document.createElement('div'); this.dom.winhead.className = 'winhead'; + this.dom.wintitle = document.createElement('div'); this.dom.wintitle.className = 'wintitle'; + this.dom.winclose = document.createElement('div'); this.dom.winclose.className = 'winclose'; + this.dom.winbody = document.createElement('div'); this.dom.winbody.className = 'winbody'; + + this.dom.winmask = document.createElement('div'); this.dom.winmask.className = 'qwindow_mask'; + + if(this.config.title){ this.setTitle(this.config.title).showTitle(); } + if(this.config.size){ this.setSize(this.config.size.width, this.config.size.height); } + if(this.config.content){ this.setContent(this.config.content.type, this.config.content.value); } + if(this.config.mode == 'fixed'){ this.setMode('fixed'); } + if(this.config.showhandle){ this.showHandle(); } + + this.setMaskstyle(this.config.maskstyle.color, this.config.maskstyle.opacity); + this.setElements(this.config.elements); + this.setzIndex(this.config.zindex); + + this.dom.winhead.appendChild(this.dom.wintitle); + this.dom.winhead.appendChild(this.dom.winclose); + this.dom.winbox.appendChild(this.dom.winhead); + this.dom.winbox.appendChild(this.dom.winbody); + this.dom.win.appendChild(this.dom.winbox); + this.dom.win.appendChild(this.dom.winbg); + document.body.appendChild(this.dom.winmask); + document.body.appendChild(this.dom.win); + + this.bind(); + + }, + destroy: function(){ + if( this.isDestroy || + !this.dom.win || + !this.dom.winmask || + !this.dom.win.parentNode || + !this.dom.winmask.parentNode){ return false; } + + this.isDestroy = true; + if(typeof(this.config.ondestroy) == 'function'){ this.config.ondestroy(); } + + var iframe = this.dom.win.getElementsByTagName('iframe')[0]; + if(iframe){ iframe.parentNode.removeChild(iframe); } + this.dom.win.parentNode.removeChild(this.dom.win); + this.dom.winmask.parentNode.removeChild(this.dom.winmask); + + return true; + }, + bind: function(){ + var _this = this; + this.dom.winclose.onclick = function(){ _this.hide(); } + var resetwin = function(){ + var status = _this.getStatus(); + if(status == 'show'){ + _this.rePos().resizeMask();; + } + } + if(window.addEventListener){ + window.addEventListener('resize',function(){setTimeout(resetwin, 10)}, false); + }else if(window.attachEvent){ + window.attachEvent('onresize',function(){setTimeout(resetwin, 10)}); + } + return this; + }, + _setOpacity: function(element, opacity){ + if(!element){ return false; } + if(!document.all){ + element.style.opacity = opacity; + }else{ + element.style.filter = 'alpha(opacity=' + opacity*100 + ')'; + } + return true; + }, + show: function(){ + var pos = this.getPos(); + this.setPos(pos.top, pos.left); + this.hideElements(); + if(!this.isIE){ + this._setOpacity(this.dom.win, 1); + } + this.dom.win.style.visibility = 'visible'; + this.status = 'show'; + if(this.config.showmask){ this.resizeMask(); this.dom.winmask.style.display = 'block'; } + if(typeof(this.config.onshow) == 'function'){ this.config.onshow(); } + return this; + }, + hide: function(){ + this.showElements(); + if(!this.isIE){ + this._setOpacity(this.dom.win, 0); + } + this.dom.win.style.visibility = 'hidden'; + this.dom.winmask.style.display = 'none'; + this.status = 'hide'; + if(typeof(this.config.onhide) == 'function'){ this.config.onhide(); } + return this; + }, + getStatus: function(){ + return this.status; + }, + toggle: function(){ + var status = this.getStatus(); + if(status == 'show'){ this.hide(); }else if(status == 'hide'){ this.show(); } + return this; + }, + reload: function(){}, + clearContent: function(){ + var iframe = this.dom.win.getElementsByTagName('iframe')[0]; + if(iframe){ iframe.parentNode.removeChild(iframe); } + this.dom.winbody.innerHTML = ''; + return this; + }, + setMode: function(mode){ + var m = 'normal'; + if(mode == 'fixed'){ m = 'fixed'; } + else{ m = 'normal';} + if(this.config.posrefer == window && !this.isIE6){ + this.dom.win.style.position = (m =='fixed') ? 'fixed' : 'absolute'; + this.config.mode = m; + this.rePos(); + } + return this; + }, + setContent: function(type, value){ + this.config.content.type = type; + this.config.content.value = value; + this.clearContent(); + if(type == 'html' || type == 'element'){ + if(type == 'html'){ + this.dom.winbody.innerHTML = value; + }else{ + if(!value){ return false; } + this.dom.winbody.appendChild(value); + } + if(this.config.scrolling){ this.dom.winbody.style.overflow = 'auto'; } + else{ this.dom.winbody.style.overflow = 'hidden'; } + }else if(type == 'iframe'){ + this.dom.winbody.style.overflow = 'hidden'; + var iframe = document.createElement('iframe'); + iframe.frameBorder = '0'; + iframe.scrolling = this.config.scrolling ? 'auto' : 'no'; + this.dom.winbody.appendChild(iframe); + setTimeout(function() {iframe.src = value}, 10); //for ie6 + } + return this; + }, + setScrolling: function(bool){ + if(this.config.scrolling != bool){ + this.config.scrolling = bool; + if(this.config.content.type == 'iframe'){ + iframe = this.dom.winbody.getElementsByTagName('iframe')[0]; + if(iframe){ + this.dom.winbody.style.overflow = 'hidden'; + var iframe_new = document.createElement('iframe'); + iframe_new.frameBorder = '0'; + iframe_new.scrolling = bool ? 'auto' : 'no';; + iframe_new.src = this.config.content.value; + iframe.parentNode.removeChild(iframe); + this.dom.winbody.appendChild(iframe_new); + } + }else{ + if(bool){ this.dom.winbody.style.overflow = 'auto'; } + else{ this.dom.winbody.style.overflow = 'hidden'; } + } + } + retur \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/resize.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/resize.js0-7000 new file mode 100644 index 0000000..d002aac --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/resize.js0-7000 @@ -0,0 +1,38 @@ +(function() { + if (navigator.userAgent.indexOf('iPad') !== -1) { + var b = Element.extend(document.body); + if (document.body.className.indexOf('yk-w970') != -1) { + b.removeClassName('yk-w970'); + } + document.body.className += ' yk-w1190'; + document.body.style.paddingRight = "50px"; + var vp = document.createElement('meta'); + vp.setAttribute('name', 'viewport'); + vp.setAttribute('content', 'width=1270px'); + document.head.appendChild(vp); + return; + } + var fn = function() { + var w = document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth, + r = 1255, + b = Element.extend(document.body), + classname = b.className; + if (w < r) { + b.addClassName('yk-w970').removeClassName('yk-w1190'); + } else { + b.addClassName('yk-w1190').removeClassName('yk-w970'); + } + } + if (navigator.userAgent.indexOf('iPad') == -1) { + if (window.addEventListener) { + window.addEventListener('resize', function() { + fn(); + }); + } else if (window.attachEvent) { + window.attachEvent('onresize', function() { + fn(); + }); + } + } + fn(); +})(); \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/seedVideo.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/seedVideo.js0-7000 new file mode 100644 index 0000000..e039d75 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/seedVideo.js0-7000 @@ -0,0 +1,67 @@ +(function(window) { + if ((typeof window.SeedVideo === 'object') && window.SeedVideo) { + return ; + } + + var SeedVideo = { + cookie : {}, + is_inited : false + }; + + SeedVideo.init = function() { + if (SeedVideo.is_inited) { + return ; + } + + try { + var cookie_advideo = Nova.Cookie.get('advideo').evalJSON(true); + if ((typeof cookie_advideo === 'object') && cookie_advideo) { + SeedVideo.cookie = cookie_advideo; + } + } catch (e) {} + + SeedVideo.is_inited = true; + } + + SeedVideo.set_last_index = function (key, num) { + var obj_first = $(key + '_1'); + if (!obj_first) { + return ; + } + + var obj_tab_container = obj_first.up('[contab="contab"]'); + if (obj_tab_container && (obj_tab_container.style.display === 'none')) { + return ; + } + SeedVideo.cookie[key] = !SeedVideo.cookie[key] ? Math.floor(num * Math.random() + 1) : ((SeedVideo.cookie[key] % num) + 1); + + var is_display_one = false; + var obj_advideo = null; + for (var i = 1; i <= num; ++i) { + obj_advideo = $(key + '_' + i); + if (!obj_advideo) { + continue; + } + + if (i == SeedVideo.cookie[key]) { + obj_advideo.style.display = ''; + is_display_one = true; + } else { + obj_advideo.style.display = 'none'; + } + } + if (!is_display_one) { + obj_first.style.display = ''; + } + } + + SeedVideo.save_cookie = function() { + Nova.Cookie.set('advideo', Object.toJSON(SeedVideo.cookie), 30); + } + + window.SeedVideo = SeedVideo; + window.SeedVideo.init(); + Element.observe(window, 'load', function() { + window.SeedVideo.save_cookie(); + }); +})(window); \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/share_msg.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/share_msg.js0-7000 new file mode 100644 index 0000000..1202754 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/share_msg.js0-7000 @@ -0,0 +1,2 @@ + +NoLoginTip.TipCallback([]) diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.css0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.css0-7000 new file mode 100644 index 0000000..b455714 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.css0-7000 @@ -0,0 +1,297 @@ +.right-sideBar { + position: fixed; + _position: absolute; + bottom: 60px; + right: 0px; + z-index: 996; + color: #fff; +} +.right-sideBar ul { + border: 1px solid #ddd; +} +.right-sideBar ul .callback { + border-bottom: none; +} +.right-sideBar ul li { + width: 38px; + height: 38px; + border-bottom: 1px solid #ddd; + background: #fff; +} +.right-sideBar ul li .toolbar { + position: relative; + display: block; + width: 100%; + height: 100%; +} +.right-sideBar ul li .cart-selected { + background: #90d7f6 url("/index/img/toolbar/toolbar.png") no-repeat -113px 10px; +} +.right-sideBar ul li .icon-1 { + background: url("/index/img/toolbar/toolbar.png") no-repeat -83px 10px; +} +.right-sideBar ul li .icon-2 { + background: url("/index/img/toolbar/toolbar.png") no-repeat -80px -20px; +} +.right-sideBar ul li .icon-3 { + background: url("/index/img/toolbar/toolbar.png") no-repeat -80px -50px; +} +.right-sideBar ul li .icon-4 { + background: url("/index/img/toolbar/toolbar.png") no-repeat -78px -83px; +} +.right-sideBar ul li .icon-1:hover { + background: #e7e7e7 url("/index/img/toolbar/toolbar.png") no-repeat + -83px 10px; +} +.right-sideBar ul li .icon-2:hover { + background: #e7e7e7 url("/index/img/toolbar/toolbar.png") no-repeat + -80px -20px; +} +.right-sideBar ul li .icon-3:hover { + background: #e7e7e7 url("/index/img/toolbar/toolbar.png") no-repeat + -80px -50px; +} +.right-sideBar ul li .icon-4:hover { + background: #e7e7e7 url("/index/img/toolbar/toolbar.png") no-repeat -78px -83px; +} +.right-sideBar ul li .ac-small { + background: url("/index/img/toolbar/reward.png") no-repeat 4px -14px; +} +.right-sideBar ul .bigImg { + width: 120px; + height: 180px; + position: absolute; + top: -180px; + right: 0px; + border: none; + background: transparent; +} +.right-sideBar ul .bigImg .closeIcon { + cursor: pointer; + position: absolute; + top: 0px; + left: 0px; + width: 13px; + height: 13px; + background: url("/index/img/toolbar/reward.png") no-repeat 0px 0px; +} +.right-sideBar ul .bigImg a { + width: 100%; + height: 100%; + background: url("/index/img/toolbar/reward.png") no-repeat 0px -51px; +} +.btn { + -moz-user-select: none; + -webkit-user-select: none; + cursor: pointer; + display: inline-block; + *display: inline; + *zoom: 1; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + margin: 0; + vertical-align: middle; + text-decoration: none; + text-align: center; + white-space: nowrap; + border: 1px solid; + line-height: 20px; + font-family: arial, helvetica, verdana, tahoma, sans-serif +} +.btn:hover, .btn:focus { + outline: none +} +.btn, .btn-medium { + min-width: 80px; + _width: 80px; + padding: 4px 9px; + font-size: 12px +} +.btn-small { + min-width: 56px; + _width: 56px; + padding: 1px 9px; + _padding-top: 4px; + font-size: 12px +} +.btn-large { + min-width: 100px; + _width: 100px; + padding: 9px 14px; + font-size: 14px; + font-family: "Microsoft YaHei", "微软雅黑", helvetica, arial, verdana, tahoma, sans-serif +} +.btn, .btn-major { + color: #ffffff; + border-color: #007dcc; + background-color: #1c98e7 +} +.btn:link, .btn:visited, .btn-major:link, .btn-major:visited { + color: #ffffff +} +.btn:hover, .btn:focus, .btn-major:hover, .btn-major:focus { + border-color: #1092e5; + background-color: #25a3f3 +} +.btn:active, .btn-major:active { + border-color: #007dcc; + background-color: #108bd9 +} +.btn-minor { + color: #555555; + border-color: #d1d1d1; + background-color: #f2f2f2 +} +.btn-minor:link, .btn-minor:visited { + color: #555555 +} +.btn-minor:hover, .btn-minor:focus { + border-color: #e2e2e2; + background-color: #f4f7fa +} +.btn-minor:active { + border-color: #dbdbdb; + background-color: #eaeaea +} +.btn-pay { + color: #ffffff; + border-color: #e44b15; + background-color: #ff6600 +} +.btn-pay:link, .btn-pay:visited { + color: #ffffff +} +.btn-pay:hover, .btn-pay:focus { + border-color: #e86813; + background-color: #ff7f18 +} +.btn-pay:active { + border-color: #c95c14; + background-color: #f06000 +} +.btn-follow { + color: #ffffff; + border-color: #951d09; + background-color: #d23015 +} +.btn-follow:link, .btn-follow:visited { + color: #ffffff +} +.btn-follow:hover, .btn-follow:focus { + border-color: #be1c00; + background-color: #ed3718 +} +.btn-follow:active { + border-color: #951d09; + background-color: #c5250a +} +.btn-disabled { + cursor: default; + color: #bbbbbb; + border-color: #cad4e4 +} +.btn-disabled:link, .btn-disabled:visited { + color: #bbbbbb +} +.btn-disabled, .btn-disabled:hover, .btn-disabled:focus, .btn-disabled:active { + border-color: #dfe6f1; + background-color: #ecf0f5 +} +button.btn::-moz-focus-inner, input.btn::-moz-focus-inner { + padding: 0; + border: 0 +} +button.btn, input.btn, button.btn-medius, input.btn-medius { + *padding-top: 2px; + *padding-bottom: 3px +} +button.btn-large, input.btn-large { + *padding-top: 7px; + *padding-bottom: 7px +} +button.btn-small, input.btn-small { + *padding-top: 0; + *padding-bottom: 0 +} +.btn, .btn-medium { + min-width: 60px\0 +} +.btn-small { + min-width: 36px\0 +} +.btn-large { + min-width: 70px\0 +} +div.btn, a.btn, span.btn, div.btn-medium, a.btn-medium, span.btn-medium { + *min-width: 60px; + _width: 60px +} +div.btn-small, a.btn-small, span.btn-small { + *min-width: 36px; + _width: 36px +} +div.btn-large, a.btn-large, span.btn-large { + *min-width: 70px; + _width: 70px +} +.right-sideBar .yk-toolbar-util .yk-toolbar-group { + width: 50px; + height: 40px; + position: relative; + margin-bottom: 0 +} +.right-sideBar .yk-toolbar-group-open { + background: #ffffff; + border-right: 1px solid #ccc; +} +.right-sideBar .yk-toolbar-group-open .yk-toolbar-group-item-txt { + color: #3fccff +} +.right-sideBar .yk-toolbar-group-item { + width: 100%; + height: 100%; + overflow: hidden; + cursor: pointer; + z-index: 20 +} +.right-sideBar .yk-toolbar-group-hover { + background: #878787; + z-index: 50 +} +.right-sideBar .yk-toolbar-setting { + z-index: 50 +} +.right-sideBar .yk-toolbar-util { + position: absolute; + bottom: 50px; + left: 0; + z-index: 50 +} +.right-sideBar .yk-toolbar-util .yk-toolbar-group-item { + padding: 10px 0; + height: 20px +} +.right-sideBar .yk-toolbar-group-item-txt { + font-size: 12px; + line-height: 24px; + font-family: "microsoft yahei", "微软雅黑", "黑体" +} +.right-sideBar .yk-toolbar-spacer { + position: relative; + z-index: 30; + height: 1px; + overflow: hidden; + background: #878787; + margin: 0 2px +} +.right-sideBar ul, .yk-toolbar li { + padding: 0; + margin: 0; + list-style: none; + line-height: 140% +} +.right-sideBar a, .right-sideBar p, .right-sideBar span, .right-sideBar div, .right-sideBar button { + font-family: "Microsoft YaHei", "微软雅黑", helvetica, arial, verdana, tahoma, sans-serif +} +.right-sideBar .ico-watchlevel-0, .right-sideBar .ico-watchlevel-1, .right-sideBar .ico-watchlevel-2, .right-sideBar .ico-watchlevel-3, .right-sideBar .ico-watchlevel-4, .right-sideBar .ico-watchlevel-0-middle, .right-sideBar .ico-watchlevel-1-middle, .right-sideBar .ico-watchlevel-2-middle, .right-sideBar .ico-watchlevel-3-middle, .right-sideBar .ico-watchlevel-4-middle, .right-sideBar .ico-watchlevel-0-small, .right-sideBar .ico-watchlevel-1-small, .right-side \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.js0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.js0-7000 new file mode 100644 index 0000000..8b1fcdf --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/sideTool.js0-7000 @@ -0,0 +1,133 @@ +/** + * 侧边栏 + * @author fuwenqing@youku.com + * + */ +(function(){ + + UC_DOMAIN = window.UC_DOMAIN || "i.youku.com"; + + var SideTool = { + tool: 'sideTool', + token: '', + curpanel: '', + loginUID: 0, + tmpUID: 0, + isfirstcome: true, + shoppingisshow: true, + gotopisshow: true, + + classOpen: 'yk-toolbar-group-open', + classHover: 'yk-toolbar-group-hover', + $curOpenGroup:null, + scrollBarWidth:null, + + modleicon:{ + eshop: {modlename:'eshop',modleitemid:'iconitemshopping',modlegroupid:'icongroupshopping',callback:'SideTool.showShoppingList',isshow:true}, + gotop: {modlename:'gotop',modleitemid:'iconitemgotop',modlegroupid:'icongroupgotop',callback:'',isshow:true}, + lightoff: {modlename:'lightoff',modleitemid:'iconitemlighton',modlegroupid:'lightoff',callback:'',isshow:true}, + feedback: {modlename:'feedback',modleitemid:'iconitemfeedback',modlegroupid:'icongroupfeedback',callback:'',isshow:true} + }, + panel: { + shopping: 'panelshopping', + shoppinginfo: 'panelshoppinginfo', + shoppinglist: 'panelshoppinglist' + }, + toolbar:{ + service: 'toolbarservice' + }, + light:{ + isshow: false, + lstatus: 'on', + mask: 'playshow_mask', + dark: 'sideToolDark', + on: 'lighton', + cookie: { name: 'light', value: { on: 'on', off: 'off' }, expires: 3600 } + }, + tips:{ + eshop: {showmodle:'icongroupshopping',modleotherid:'cart',text:'',cookietime:365,isshow:false} + }, + + logoutshopping: '
登录后,购物车中的商品将永久保存~立即登录
', + shoppingfooter: '', + noshoppingfooter: '', + shoppingheader: '', + shoppingnull: '
您还没有选购商品呢~
', + + loading: '
', + + init:function(){ + + var _this = this; + var isHide = _this.isHideSideTool(); + if(isHide){ + return; + } + _this.initSideToolFrame(); + setTimeout(function(){ + _this.initSideTool(); + _this.bind(); + },100); + }, + isHideSideTool: function(){ + if($(this.light.mask) && $(this.light.dark)){ + this.light.isshow = true; + } + if(typeof(window.isshoweshop) != "undefined" && window.isshoweshop == "false"){ + this.shoppingisshow = false; //首页屏蔽购物车 + } + if(typeof(window.isshowtop) != "undefined" && window.isshowtop == "false"){ + this.gotopisshow = false; + window.lottery_open_sidetool = false; //订阅页不需要运营位和回到顶部图标 + } + if(typeof(window.yk_toolbar_close) != "undefined"){ + return true; + } + var ua = navigator.userAgent.toLowerCase(); + if(ua.match(/iphone|ipod|itouch|android|windows phone|ipad/i) && $('padsideTool')){ + return true; + } + }, + initSideToolFrame: function(){ + var sideTool = document.createElement('div'); + sideTool.setAttribute("id","sideTool"); + sideTool.className = "right-sideBar"; + + var sideToolService = document.createElement('ul'); + sideToolService.className = "yk-toolbar-service js-toolbar"; + sideToolService.setAttribute("id","toolbarservice"); + sideToolService.setAttribute("data-stat-role","ck"); + + //活动大图展示 + if(window.lottery_open_sidetool){ + var sideToollotteryBig = document.createElement('li'); + sideToollotteryBig.className = "bigImg yk-toolbar-draw js-draw"; + sideToollotteryBig.style.cssText = "display:none;"; + sideToollotteryBig.setAttribute('id' , 'lotteryToolbarBig'); + sideToolService.appendChild(sideToollotteryBig); + sideTool.appendChild(sideToolService); + } + + //活动入口(小图) + if(window.lottery_open_sidetool){ + var sideToollottery = document.createElement('li'); + sideToollottery.className = "yk-toolbar-draw js-draw"; + sideToollottery.style.cssText = "display:none;"; + sideToollottery.setAttribute('id' , 'lotteryToolbar'); + sideToolService.appendChild(sideToollottery); + sideTool.appendChild(sideToolService); + } + + //购物车 + if(this.shoppingisshow){ + var sideToolshopping = document.createElement('li'); + sideToolshopping.className = "yk-toolbar-group"; + sideToolshopping.innerHTML = '
'; + sideToolService.appendChild(sideToolshopping); + sideTool.appendChild(sideToolService); + } + + //点击回到顶部按钮 + if(this.gotopisshow){ + var sideToolgotop = document.createElement('li'); + sideToolgotop.className = "yk-toolba \ No newline at end of file diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/slide_next_btn_new.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/slide_next_btn_new.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..23cc6281f74559b615d8ef074c3e4ac77d3894db GIT binary patch literal 1588 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 fX86hh?~I0;E(Cec^2L7u^O@iG literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/topic.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/topic.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..b79ae10e2e1cd32dd56cadb9f0b37bfc1e0aeb5c GIT binary patch literal 1154 zcmaJ>O>EOv9Jf?9TBafp2gDB3lPk3pk=RaSLcC^G>ZCMM9YPw^9?DwRer-&#pKHG^ zX^{Yx10aFaLlIREC#4HSb$Uq{3NQVY4an*O+J!QF$ z9dwgK4na%%0;(+*(m}CoK`Wn2Ls`8wu3A19Z&@xwl3|>~{m)^SwupnA>AH2vV%_}E zAda_)wP$bTZjx)k#@Z6$@$vEb`T2Z4KRrF2$z-zGY%Z5uSy`Ezn_F61nwpwgUS2K~ z3KJ6(V`F2htE+j}S3eW(ok%E{NPqw0#mmhPLFEUrEf?PT`gixs!-WkS>T_JxfrU)rr`MUQk=Jh~&xsQk zmC3HV)35lyj-9&El&Z_t9n}BH&MhX*S9j-!_784>7w!+MX3qcUJaGemvbE!2p7vO(+VW1mNyHKzdHNy@R7Y#u8W!MhLuqt+fC=lg=-e;hS zAPUNqSSxCcH1HBs9ioMCBvc)<38Jbdp^H*CKx8}UR5Ty;`R)UXRAe93;)yU3Jpj6t zx}*V`lZ`Pc*)4H0RZ~q?C3q~L0wj_NwMR4ggpbPV@_20>(-fJ7pl%=aJE_)46B&R8 zAUzI`U1FRp>E#@($K&-n50XxXb<+$>vo1T!@oqQIFy#72;b?~3!AFJAdMv#2QC$e> zJWa>raYx+cfJP_HavVo9PTJ|TV}#ut(2$t0Yi4OqK>(&?C^}N0Mp}wuJM2R~3TOJe z1XbUV)y(xa;fB!(QKwl4W0jNxMk4=*s_F*XL{ac3-+v05u>l>>QDDM8L&6u=QEG+K z`G5gL1dSMkJ-IG6bwLEpE~t}%K(=e-ffhxRVcaawav~8vteHsEBoG#S6jpI4ip&RG zoQvf`A%Cq`VA-I%*6Vf!D*Y8)1>+2c+(M2kK&ej!8p?6y9M{haBC-e7SI;U|ueblcBB4{p+%GN7zBua>KfKvtfRqVaFTT+BhE4vtJO_mD4&?%9Yp(z}J? zo41qac)sm&%l?sTU(@NUN1S6HdoTT1oOteYENhX&*k{Z*W%vyBa3r~e(uvz@s3Ax$uC2XUfn5Th@tz3 U?$OoaH|x2FgN?$i+P2fb0ByvBZ2$lO literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/user-grade-icon.css0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/user-grade-icon.css0-7000 new file mode 100644 index 0000000..ef444b4 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/user-grade-icon.css0-7000 @@ -0,0 +1,101 @@ +.user-grade-icon { display:inline-block;width:22px;height:16px;background-image:url(http://static.youku.com/lvip/img/rank/rank-icons.png);background-repeat:no-repeat;vertical-align:middle;margin-top:-3px;} +.user-grade-lv1 { background-position: 0 0px;} +.user-grade-lv2 { background-position: 0 -16px;} +.user-grade-lv3 { background-position: 0 -32px;} +.user-grade-lv4 { background-position: 0 -48px;} +.user-grade-lv5 { background-position: 0 -64px;} +.user-grade-lv6 { background-position: 0 -80px;} +.user-grade-lv7 { background-position: 0 -96px;} +.user-grade-lv8 { background-position: 0 -112px;} +.user-grade-lv9 { background-position: 0 -128px;} +.user-grade-lv10 { background-position: 0 -144px;} +.user-grade-lv11 { background-position: 0 -160px;} +.user-grade-lv12 { background-position: 0 -176px;} +.user-grade-lv13 { background-position: 0 -192px;} +.user-grade-lv14 { background-position: 0 -208px;} +.user-grade-lv15 { background-position: 0 -224px;} +.user-grade-lv16 { background-position: 0 -240px;} +.user-grade-lv17 { background-position: 0 -256px;} +.user-grade-lv18 { background-position: 0 -272px;} +.user-grade-lv19 { background-position: 0 -288px;} +.user-grade-lv20 { background-position: 0 -304px;} +.user-grade-lv21 { background-position: 0 -320px;} +.user-grade-lv22 { background-position: 0 -336px;} +.user-grade-lv23 { background-position: 0 -352px;} +.user-grade-lv24 { background-position: 0 -368px;} +.user-grade-lv25 { background-position: 0 -384px;} +.user-grade-lv26 { background-position: 0 -400px;} +.user-grade-lv27 { background-position: 0 -416px;} +.user-grade-lv28 { background-position: 0 -432px;} +.user-grade-lv29 { background-position: 0 -448px;} +.user-grade-lv30 { background-position: 0 -464px;} +.user-grade-lv31 { background-position: 0 -480px;} +.user-grade-lv32 { background-position: 0 -496px;} +.user-grade-lv33 { background-position: 0 -512px;} +.user-grade-lv34 { background-position: 0 -528px;} +.user-grade-lv35 { background-position: 0 -544px;} +.user-grade-lv36 { background-position: 0 -560px;} +.user-grade-lv37 { background-position: 0 -576px;} +.user-grade-lv38 { background-position: 0 -592px;} +.user-grade-lv39 { background-position: 0 -608px;} +.user-grade-lv40 { background-position: 0 -624px;} +.user-grade-lv41 { background-position: 0 -640px;} +.user-grade-lv42 { background-position: 0 -656px;} +.user-grade-lv43 { background-position: 0 -672px;} +.user-grade-lv44 { background-position: 0 -688px;} +.user-grade-lv45 { background-position: 0 -704px;} +.user-grade-lv46 { background-position: 0 -720px;} +.user-grade-lv47 { background-position: 0 -736px;} +.user-grade-lv48 { background-position: 0 -752px;} +.user-grade-lv49 { background-position: 0 -768px;} +.user-grade-lv50 { background-position: 0 -784px;} +.user-grade-lv51 { background-position: 0 -800px;} +.user-grade-lv52 { background-position: 0 -816px;} +.user-grade-lv53 { background-position: 0 -832px;} +.user-grade-lv54 { background-position: 0 -848px;} +.user-grade-lv55 { background-position: 0 -864px;} +.user-grade-lv56 { background-position: 0 -880px;} +.user-grade-lv57 { background-position: 0 -896px;} +.user-grade-lv58 { background-position: 0 -912px;} +.user-grade-lv59 { background-position: 0 -928px;} +.user-grade-lv60 { background-position: 0 -944px;} +.user-grade-lv61 { background-position: 0 -960px;} +.user-grade-lv62 { background-position: 0 -976px;} +.user-grade-lv63 { background-position: 0 -992px;} +.user-grade-lv64 { background-position: 0 -1008px;} +.user-grade-lv65 { background-position: 0 -1024px;} +.user-grade-lv66 { background-position: 0 -1040px;} +.user-grade-lv67 { background-position: 0 -1056px;} +.user-grade-lv68 { background-position: 0 -1072px;} +.user-grade-lv69 { background-position: 0 -1088px;} +.user-grade-lv70 { background-position: 0 -1104px;} +.user-grade-lv71 { background-position: 0 -1120px;} +.user-grade-lv72 { background-position: 0 -1136px;} +.user-grade-lv73 { background-position: 0 -1152px;} +.user-grade-lv74 { background-position: 0 -1168px;} +.user-grade-lv75 { background-position: 0 -1184px;} +.user-grade-lv76 { background-position: 0 -1200px;} +.user-grade-lv77 { background-position: 0 -1216px;} +.user-grade-lv78 { background-position: 0 -1232px;} +.user-grade-lv79 { background-position: 0 -1248px;} +.user-grade-lv80 { background-position: 0 -1264px;} +.user-grade-lv81 { background-position: 0 -1280px;} +.user-grade-lv82 { background-position: 0 -1296px;} +.user-grade-lv83 { background-position: 0 -1312px;} +.user-grade-lv84 { background-position: 0 -1328px;} +.user-grade-lv85 { background-position: 0 -1344px;} +.user-grade-lv86 { background-position: 0 -1360px;} +.user-grade-lv87 { background-position: 0 -1376px;} +.user-grade-lv88 { background-position: 0 -1392px;} +.user-grade-lv89 { background-position: 0 -1408px;} +.user-grade-lv90 { background-position: 0 -1424px;} +.user-grade-lv91 { background-position: 0 -1440px;} +.user-grade-lv92 { background-position: 0 -1456px;} +.user-grade-lv93 { background-position: 0 -1472px;} +.user-grade-lv94 { background-position: 0 -1488px;} +.user-grade-lv95 { background-position: 0 -1504px;} +.user-grade-lv96 { background-position: 0 -1520px;} +.user-grade-lv97 { background-position: 0 -1536px;} +.user-grade-lv98 { background-position: 0 -1552px;} +.user-grade-lv99 { background-position: 0 -1568px;} +.user-grade-lv100 { background-position: 0 -1584px;width: 24px;} diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/video_default_200x110.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/video_default_200x110.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..a285b6688711456805db197eb8eddebb6b6e0be8 GIT binary patch literal 1095 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/vip.png0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/vip.png0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..f09b1b4082f442ebc841e415ba7c9b43a740d894 GIT binary patch literal 2487 zcmeAS@N?(olHy`uVBq!ia0vp^${@_a3?wz#owI?IWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2cX0^{3jAFJg2T)jk)8oi3#0-$aN1{?c|g2d$P)DnfH z)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1n}DR9FEG$W1Lt zRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvL7itr6kaLzAERWQ{v)lD`qGE^|P)H5_S zH8(fXQ7|$vG|@LO)HgKNHMF!cF|jf*P=Ep@plwAdX;wilZcw{`JX@uVl9B=|ef{$C za=mh6z5JqdeM3u2OML?)eIp}XpbFjM%Dj@q3f;V7Wta&rsl~}fnFS@8`FRQ;6BCp2 zOG|8(fG&l2A-4c-Y+f-mn1BJMUy)d#Z>VPg@)As;uP=V3xw&xF#U(+h2=`(&xHzP; zAXPsowK%`DC>a=WY04n03ap%qQWHz^i$e1Ab6}wukda@KU!0L&py2Eb4mAah@XWlF z{PJQ=upVDuE6=>*lEl2^R8JRMC7>yKnVBh8F6J)IhGwQ_j!x!IhK8;tPEJlPj!sUN z7EXrF1_p-aFugAM$)&lec_lEtDG0shIQ4>(Lv8`kW|!2W%(B!Jx1#)91+cfRGI6`b z1gCjWy(zfeVv19*KF~4xpvXmvY?u%*1%a6GqzmN06Mt$RFvS-EllFDrlP7`M!XUsW z#P#vx$FE<%Uc7km$B!Rp&6;)j^5xa5S06fbXv>x@yLa!tbLY;_pFdBWI5Bzhd9{EW-Sp zpZa4W{#z&Uf9Nf|F>T`SBR84_oIiIr-iiym+#Tt$VcQEUTZz@TQ$?07JackQ)S5R> zLWA#}vAXf>*{ZcUY2H$kF6SLgdhmk#I_H+ZOMEO;h3DQ|+9NM_VC(;*x1Cd;q)b@K z;&SEjqtMhY3tlu3brZ8?`&fbisJLdc zC0ypys^uShFPeYZSMwtA=`G*6o0H`>7v5vNk@sW9#tXU|p7NJVWttqEdhPTsrX?1d&PX&v11TQ_wVDYK?*?W(Tv)Ot|*Q!5z{I+6l z;vSW`&#LwvYzbzIZ~J@fM08(A&HWqkXZjhK8Q$^PseZnzy&P03dAjclJo zC4tf+9Be?cqI}w3AT?S7j+TIgOF(l+a}#qXHxmO#GdExfXlmhT=4fHzW?|@LU|?qG zYK*T0gz7cLsTWw1kWvCd%`?Jj9-a~qs@E8&UW!Y=70*uW29{!~kW%c()ZM&?310NQ8g63?E<944zTLn6VBq@(s~63z+_zn_H^k#D{*TAif2{ xC8yGTQokMG*s^5q8J8VR-&R_k40H&+m}gu1N%sJQ{ns50Z7ZGu8(D}#3jkD#f>8hf literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/www.youku.com0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/www.youku.com0-7000 new file mode 100644 index 0000000..b152793 --- /dev/null +++ b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/www.youku.com0-7000 @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +优酷-中国领先视频网站,提供视频播放,视频发布,视频搜索 - 优酷视频 + +
+ +

M|4vj%XDncFFN>`<;Qx>*cb#a@7%{;4iEnSxI4-NWF|0i^La}10y&hA}>Ezx4K zNwg+Bt}~)ayVdS-SrZ~$#U`%ZDM@s=T5*c3L_Ic%nbI23F0;>tUH1C_N_g2x@_khu zYE_MXd%)6Zx60b>M%3!CS}Gk@S&*&WfFbNs`#YRoG|WZ_!L@4;OBmtQ{baxblVheV z%)XWQ~W^MNKGh)`H(GD0m0I)DNNIvePu z6$EHD0|~95K#Lj3X?WP_ZJ>;XKU4&XDhQCKV!DPrP_<4;5{5DqrH%sZq*iMZKiDnTBiQ_o*F}y$TJ{YL+laI6BZM z%p>7!M?1_KlqT(HXH=snTzXWZ)VP3KjmmtQ2yhG08eAhI+N2nW;u@Oj#FRGNN_pZK zj^lpHJBKC2v{GC|wFfbMv{4Cse#{hVG|_$^*6M3)rvpCB8EWjJgMO?n+N2~xL9AWW zWC7thSV-9v0CVD4)ZA1FB3&3A)v|;*6_sIPrPe{j0VbogQP6>7WlC)sK^qlVNJr2K zQlT;H+NsWW literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455541295236022CF4CEEAF7692162-E86D-18B9-EAE0-80FA62A3E9770-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F455541295236022CF4CEEAF7692162-E86D-18B9-EAE0-80FA62A3E9770-7000 new file mode 100644 index 0000000000000000000000000000000000000000..08f8a1bd510969023d438d3ec88803f0d3dfeb33 GIT binary patch literal 2031 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45556565BF3FC618BEA3B9F65CB7BC-DB27-4D1B-43BC-EA5F44B1C7A90-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F45556565BF3FC618BEA3B9F65CB7BC-DB27-4D1B-43BC-EA5F44B1C7A90-7000 new file mode 100644 index 0000000000000000000000000000000000000000..bec28bdf3fb4412136948180e295f06c939adf78 GIT binary patch literal 7001 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 Jv$0zR{{!>iqb&dc literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F484E951B5D2D5A059C8CE6264DAA6D-BEF3-4F0F-59C6-02074EC0EFF10-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F484E951B5D2D5A059C8CE6264DAA6D-BEF3-4F0F-59C6-02074EC0EFF10-7000 new file mode 100644 index 0000000000000000000000000000000000000000..f1711af492c52345295b460a1981062988b82667 GIT binary patch literal 4678 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 IM6N<$g6v;0w*UYD literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48516FC3DB3050087AC092F0EC398D-8D7B-4EC8-713B-C0C180F4B9180-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48516FC3DB3050087AC092F0EC398D-8D7B-4EC8-713B-C0C180F4B9180-7000 new file mode 100644 index 0000000000000000000000000000000000000000..ca506a77e146bb30ec4d1ba0dadd011d8992b4b4 GIT binary patch literal 7001 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F485236FCB7B2B50504571BC3F0882E-1B2F-29BF-4FB3-546E15DFD5E50-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F485236FCB7B2B50504571BC3F0882E-1B2F-29BF-4FB3-546E15DFD5E50-7000 new file mode 100644 index 0000000000000000000000000000000000000000..888f201a016c493b797e9df533d029f87c2b96a6 GIT binary patch literal 7001 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48533B991848F6139B1FA448622DEF-D1C2-EF5A-894E-76ACA2B7040B0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F48533B991848F6139B1FA448622DEF-D1C2-EF5A-894E-76ACA2B7040B0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..56091a86d872b4cf85efc324d3bfc2130d3baa14 GIT binary patch literal 7001 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4853F7111D30AC18B4BF7F24AD0453-006A-4D5E-1A0C-8C6FE3F2EFB50-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4853F7111D30AC18B4BF7F24AD0453-006A-4D5E-1A0C-8C6FE3F2EFB50-7000 new file mode 100644 index 0000000000000000000000000000000000000000..e78ad5adc4f0148fc242f21ec4aa7a15b833ab2d GIT binary patch literal 5285 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4854D0895D6A8805BB073478A9822B-5C97-3887-415F-2E6180EC77560-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0130391F4854D0895D6A8805BB073478A9822B-5C97-3887-415F-2E6180EC77560-7000 new file mode 100644 index 0000000000000000000000000000000000000000..1f62b46fb69a758865c5d4c3a80b0ef1b1c4bb83 GIT binary patch literal 7001 zcmV-f8>ZxmP)IEUu?9IqoXbSKW*UwAOHaO6zI{>;qZSm4*!5yKLErL0DS#p{UQL6 zHUM1EFPaetKo|i4iNv_*H~_*t0B|!rJiP#jWB}j}TEW5q!0o$&l>va8;o@WhKr{s) zGt=peAOKcJ0H7uK1;qidMgtHzBmF}n0l2dPi28oPbbkQB%K)%0A|lEkKyU^CWPSf5 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ν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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/050C00005583B8C567BC3D6F5E07F1830-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/050C00005583B8C567BC3D6F5E07F1830-7000 new file mode 100644 index 0000000000000000000000000000000000000000..ae5d0ba5ac1aa70cae8154c4dd51453cddd4ecef GIT binary patch literal 7001 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 Hu0mjf<-Gc< literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B324D20A73CC0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B324D20A73CC0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..686def5b68883bb1664d6c3be21d5b3e0aba657d GIT binary patch literal 1054 zcmV+(1mXLMP)G=NR_x>8Z^-Ie4<@f%_@BQTW{&d#)7rXWJ{Qv6t{@C;VAHDVyy7m43|60!Y zUeNgX{r@z>_7uAHX43g7!1id<`Jm(b^ZWkn`u@o8{rUa>t>^ri;rmw2_$t8mx9a>A zy7jZ^{LAqD;`aU)y7ghv__65xf!g}d@%_Q={3yWow(9(4()nZ2_=?^7B)<0b{Qu7I z{U*Qm{{R0Ry!9o&_Ji8`jNSSozV;ry_Lt%N>-qle`u^bd{@3&UY18?B+4{ij{QLg@ z_x=CW^8HoK_)g3C==lD->-?CK_u$0008HNkl# zeE?iI|8OH|kKpSsf89X(B{XjRJbL;goVfSx$m#De_u(7kruVSq$BSd8FJsxQ!x7W3 zV#)RgpN^QmgoWtkQP27T<_=PhnO-D5d+r)XPJe>h_IrPlW2gT{@O(jzpMD+qrz!=E8Wa@3RiK)w#<8jbo({^EIzZzvscZKNof7ph zA`l8-TBkjribheQMnyyQc#3|Q^#l}Ej$Kzk&Kztd(o55%8Fi{ zMlmhX1QETd<~WtkB*+QCwEa1s(wj$z2u1`(8iK?@3VKkK(IPDf>?BPJ^0+7>bZXO% zj)q81?iC`8E%8m-WlL#|XA~rwCQ+HX{&XmV6=nn?iyeR@&S!K8$keszk^tf~reM}g zQuU_uRDgPGS($yhMO_)MgQC4yPpmBALVg(PT3D Y7e5gu*f?Mug#Z8m07*qoM6N<$f;G!a!vFvP literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B324FF0DE0DD0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B324FF0DE0DD0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..5f9589ea6222186decca00e1b7e4fd595b896299 GIT binary patch literal 789 zcmV+w1M2*VP)O+_f^gKD8TmA^8L~B{io&o zZPfXreT=M0oqAKK~#8N?bU^< z>p&ER;kEXjc&c*T?Yg_W`}@DlO*)h`2TEx=y_^g4L0~h$57|WUPkEl_d0$^&$9Z?Z z-G&3t`2y#xANHTYflulCF6vHs0wm`Jr**OrLn#{tBZP30HU(j}Y`WB8UQ4US)DR8Qv53SJ zk+w}kTd1Y&yw~&+>&`Cq)8fcVIGR**qLyf80 zARX%DxlX$PA_!3s+743HmN9MGbmJG@1b|Hk3@C^U(CVm;55u5QI%Q<l9)5!ga*A|R>)#$>qAJkR?J7@0Cd TiBl4F00000NkvXXu0mjfHI}`J literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B3562D0BA4920-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BAC936737B3562D0BA4920-7000 new file mode 100644 index 0000000000000000000000000000000000000000..3320bd55ff161ecb8dbbfa9b97e804cdd136be40 GIT binary patch literal 1212 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 Y09Fq?6Jfa*WdHyG07*qoM6N<$g2Rr+i2wiq literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD06737B324F80448270-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BACD06737B324F80448270-7000 new file mode 100644 index 0000000000000000000000000000000000000000..5f146e7e979bcec13ff9d5f6da5b74d36bff7e47 GIT binary patch literal 1601 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 KMNUMnLSTYb*jKv% literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD076737B3250308E2160-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD076737B3250308E2160-7000 new file mode 100644 index 0000000000000000000000000000000000000000..1d1d041d963737ebe4cbc750b2903f97013ebeba GIT binary patch literal 2187 zcmbVOc~leU7SF37tpbm>94rDF1B##_nM?v?AZ$rM!~}|fELIsN14KwBCV_;AEo;RE ztn4CKQFv|~Rsogm87T-93tCr1YI(xpu*gyo9|&(iuy9f?L zy-`>YbFdAyClFR06#Dqf{dv0}1QS`oi#k?HkpxE*2=2co?a!VQQ}IZRZFBE>RD$s#S;g>ZTC zm_i~hsmLQ(r1wGj^Sp>`Oo|d2Rtz#i1?WT@rWL>d=(fOiB8>`w6e>soKr%pss7wf8 z5SK3!?oBEPg}gbg%f9d(ixe)GOCSnGp-@;UKr2idMgf>iCWT6)&}d{_gDi^?%V8y1 zEHhoPz(Hk*R49=PF)?w`A{>H6$yp>k()THdBs|^+!(!PoQ8;B3B`l!;R#b{ew3yeD zwoLAg{u#zcwPijr5|rYN%CIOYg4ZL|bOnra_t%aV74c{wPpJ?u3LMG7kSGxat)Kq!DhZ9+kWMz z})3=LjvsI`4O4hN*QOTCw>x`~`v09%~9QXA5=%Ru6`&%{(TPg;B z!aU0pdc6WW%^L4AD@zW>4z#>EBb%3nj%gqNw)S79v#n+>PPU(Fy&xJVB}(*k)y~Ts z_KyDNI`8Busd6pVdNW7acjH6(hj%g>y`%0Mm_ZIb#q|cSlQg$)2xb?|BcC-<+wL{_ zPD3?)o)TD+WPkC+am`$+?WIaRUCV2p!Mt_V3#BQvsm`&rIS$tQx*ksE_iQw=_Fdt15<1TOvl<`$xc613B8#)s|V z>rt30sX2Ncsa%*yn{(x^sfLq~+Zo00Dr*EcseG?Vo=#HoN!{M!e`HkTrKFvX=RL_v z&rHu$-Orle7@=D}(XgrF0vkMBS{{c^){J+5o^3PynS;B9`%r(-TzYoZ-mflR<==d| zPTv92&e0!l6hCs2mo)C=KXvxriRYBr(_7!bgUQa*dzCDwFln@}TkDYB>gSH5KK!U{ z!*RFYDjpb_?BAt7##hy*)_pt3J^k)<)e&EW^PtxxyZiQjv*Q2ddWrZ=MKQ`D<@MY9 zTc5n>o4nf!)@99Ke-^#DE_-3nZl>ewx1AMx)xS)0Hc0aaqGsn3He04$l|9TU(?~a* z8a^}-pQ2#^-?iLh?l{BL(u&OQ$aS;Jx@BD&DjM-;{x)-XI93(#tKgQ|clnI{m%>`} zUUr}T=ijSB`!#hk76!8C{Vazg%ceaerhCytSjGtxk3O|wk1{^_aoZbE>Nk&ET((A%{FXQp(%P`_vvA=iSKvj@g!h5hX% zZ%0`k4@NmDuNiGeA-!%Bi^~?qU3V4H{{~_re;m=>UbuCaVH>cUY*l$aHmUVkju~239|-{x3woMWp?w28Y`ps z<$>|5*Pn2aiJsfrpy!))qb)+r*OoAve;{6XH1)`!N{9-%pb6)$%SU8@C=71 zpCjgq)!avE>G8?nX1d9xoI}SN5>4~Z)Vh1>ui7+S^vlBbp_*~qEmhWPxY0Hv&b?ul1*!tN&Hm=>t#OKsV&re*8DEPEJU@Nn>6OT{ zh$2=j#!x931mM%Z(qt2Y8RBrPelSenluN WdAzS`%!#}Bd*IIHb4p!;6aE7?GL6mv literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B3251A049E210-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B3251A049E210-7000 new file mode 100644 index 0000000000000000000000000000000000000000..9cf7c8cdcb0c1817025f85c2261008aa39b32d67 GIT binary patch literal 3543 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B3340202B8E30-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B3340202B8E30-7000 new file mode 100644 index 0000000000000000000000000000000000000000..f3b5607761d1508f2659547263cc31c157fdeac9 GIT binary patch literal 3353 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B37D420839260-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD086737B37D420839260-7000 new file mode 100644 index 0000000000000000000000000000000000000000..90c684a24e0900251ea8b160a74a3db25db20026 GIT binary patch literal 2233 zcmbVOc~nzZ8V}=!fC9FFP}C4A(n9j`vOp3*M8c}U7(iJH7+xME1IdfYg9M61L=*}o zf(%$z6{$m8TE$jbB;ta&FSLNNO#xw$-45UYLgxWuXU_5Tk9p_3cfWh@_xqOL{l0r% z8rR2TosO9f4u@Ok<;mt@W6;8@{TJ+e&uA zV7?&k;9b}ehg)$_o@=#Z3RDTc=39G#U?J`@F`_;5H~i-xsFCc+MdAI(Of7%?nCz1U6! zY=X9A~HV&iC(S(t`I>H zxe$@!U0w0k`$ZA~qL6>Ga6(H7vtgMi78bb65HWs{VwUJV?x`RI3YcI7kpVHNL<&R` z5W^`{3egS*AqJm9g(*}l^(DOE|D_JVf&v!mc?m1V1@T=MV3T)!1WT~ykzrjz zr$mN+tOG`{+?p4X(1 z{Mgp^pR6w4ol7)tJbA(~F0tfISMkUCx+R6>_-d;{1B3N9To~GGy7A^mlcj%5cJ10_ z^pAFew@pou@7DG!dne@j-Kj0(_W8H!h)uFRdNZG9vgZK1RQt3C4vfqYo=*m>pzEkx zrgLL@lJ<$@bk*mcn|DQZUDxst9XSbn{iAv`+bp@P>z~_(QX&x(P2D;3Y2Q~t)^i?D zi`8Yxg@=qL^ER;U_Px??J13_Oj%qzG_^PkfYqFC+J!&@JW%cryMXAlF*T1;j_(IT9 zn>Lkh*jIc1dC^cxV~epa;X*pcV!r>hqhm$<)lp?#*t}Eup^aJjHo9vJZ>66fOetO4 zSFpFC`{JBF!^%kPVM{z1%NV?-$=|Wr#qMPZ@3r3DN9r#F=ZnjTxAc*$AlIoQoAdXD zF>LgMM!Z|}XD-FI2kwxjJ-*^ek{SopQjcxAsKw%RW2{;4U0Dl^zjW)XPs!LCG9oe# zlNfY-+509Vo?aT*Y{b-USfY1pkZ#|7!&T0enUz0gzB+D`_xZj2E!l!ieS^0B1xU3; zl~oSO?Yi)X`ijpoZay)dF^SGAzces2x96wB^Dt9eT0o_-1D_e0p-y&5FkkWE7fs zdSUEF&dj}Oy-^jRtf;E6j(Dfm<8N~*xu90kQ;mxAsAwA{pXwu??JW`09c?RJr;$(2 zY)i1%UUB<4^>%Tw7hS_`4|&K`mFr#zUJ?E4H}MJVm&JY#bxEa{{EwVJ^}3#e&f53v zOgN)^syDSOc6XtYk?IgFOgS1JZFZ2KHDJ0eUtJmRkR`hl`1et12P@YmwJNUmPM>96 zMWnH!muzC#@1fx~U0thU3cbHqJ^X8km?x)uSU0DWEc2^A^4PzVN!R>p`kQ>+jk=$z zQ^)5In*$%NAAMkAc_4`;4pT{p9lev9HLYtyrMX?_TB3qhq!Wy66E)eL=KXtU+G7)U zJxkJk%5^JGmU?>>kxTss=;@(~9o)+d18$La8BVJ}WkWb~MEPR(Oj%gdv$zRO{l!?( zx1tg24IJ^|P2RSiH5UBQ!z0PRCC=s*w+lCM^;h|899t7>vO7ETj@2D-&Nw^!i|s}y z?$E5pGWDC`;iEcYzII9B{ei7tF*WAbrbNV3gC~pJwhPZZ`*-mwM%%Z~)xCq0K44gO z+IOYLR;;9Gx4k;sP!)Q$^Z?M*J=oy#*kSn!Ik9+$c;~2AZNxR7c+nK+^YO&O&xDto L5BvL_2afy)_2-_H literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B325200C8DA80-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B325200C8DA80-7000 new file mode 100644 index 0000000000000000000000000000000000000000..9456538d7a74efbbd303a4bb1771c2d17fe9b53d GIT binary patch literal 3178 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 ai3<5xJ0n*;;i+r4e_KmO;>}&YC;tb_|6QE` literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B3252D0AFCFF0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B3252D0AFCFF0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..17f679b1de276f4ac499e3c37f60245ef4f59d1f GIT binary patch literal 2434 zcmbVOdpMM78=s<)ISY?hvkqb8`>)2LrRVuM7Z%JVIa~+#0dwPAcq$% z(}FGtgpN$WVnb}k77AA)!f<9V7?ns0Ya;-NNfK)R?XumKSWagZvJP^_S+sHo3&DX=`Vj71?o zL!doW)ND{}hCk9nA_tKU7zZ>L2N02tP8h%eAd&%lBpwG4us8x1AfN#}1?NNo9FSig z6zomT<5QS4`WIjDjEahYASnflRVtMjB>^LmhhqUJCnqcpkHzEBFaoWJ7DF5rTC7+# zXMqMPxN?CM5=g|z8H=1SNhCx?!I93UAd)f|Uk!^DUxTw^EP%mbMWUI!KBE;7 z6Z|`jZ=w~fXeo$gf(l8boC}`^f7P5a%-ugbngPPmQ2gWq_)s`PnuHrE0>zLIjf#SI zFgyW|!gu5oxOk!?+Q|V7L-UA494wJ|Xn@ECK@yJ71whW6op0$o&}ldTPofj(o&W%N z63IkIf*UNkkq9_Cf#xu$>myb`95EN1^DTgVf6?{)M_r1C9OOU}IZGlD&Q*bbganc( zA|z6zhX-=qHi4KYQ7UX_PG~k^8YmY;fjqigB0_$qm?HRwdjh}(cuoKxP3DpbXgrt5 zLxa+U1|Cc%}929n@PX4EE=9b`MoDsiv0X+HIN1zyP9y#14 zpKy320WzmoM-G)z zBYq_&`Eb3P$3u@D-7NgoJU;18z~+5#Aq&kugwJ(t;g|nB?X0)> zuyYMAgHu1W-N7LWbVp61#z z2{v4_G5Cf#A>X#BMEIUSYPVqHUC$JW0`spXtX;CAt|q{2L!U7JR< z>HPg&F@CRm9c#wZr`sn? z!zYs^c`_DwKcH1hQSrRC@)s%$OlJvW-~R=4-wrK(lfEXULMzP(F<@Rxjrv08^1u1) zEtW3Y_4<*^*ieFOcVRhSedYkCmz{RQ^LWSfgIK%4KC5N1m6PGCwP^`a*=$kUc~VrO zG3giTbd~YSf)0K2Oagyg)>)mk;YR1!)wI;;$=#b_>ta-ghq|NQ%GXAffN7yOl(k%8PfMzIbdeuz&`cj-Cup~?;Gv7^vnkd{Egc#XPb^HZQ3&ZrYQm(Hv&(+pT7kBKekE#1^`dZ(LOpI38G9oUOm z*K$rg5G64C-o2F6qqizBSc#-}T)MUX-SS4Gkh6sk3!2NxA*I&Cv@K?p7ndE??+`_n zNRJqmYP}|QtTQlL#a`5GQb1Xdg#i;GFPd$|a_OYI5 zy>^=Qzul^?SOEF5l>E0z7Og#TuBdA4;@1`9n1=L}z^0}}yRq~Q^;-kemAbv*L)sUQ zo|Fxh-Amt}>uJCHkk#WR8q`C+08YjGs%ViXgzfkv1Q%Amp>889JF(wiI8m|}SKvR{ z(?WK(Io4d$y-WJ=-bVO7Of~v?A*wmk3vq~>pLX)mj7%*2Q-tvG^rc;O4~_dT)=(B+ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B37AF104C6F00-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD096737B37AF104C6F00-7000 new file mode 100644 index 0000000000000000000000000000000000000000..a56c2dd962005736006734e9aa74343080db07b7 GIT binary patch literal 2131 zcmbVNdsGu=7LS66Py!0d+h(H(KJu7MVjdD65?-d^jl3#4WClqgnUD;U09`aFNGVuo zMU+iVr3Jx*thPl?LC_VW0#+ypimMBvu1YB^NTG_b69n6{$J0M{&YAh{z2E)a_dSyz z669}T=3qu35G(=%1Y!6YYj{nU;@=Bxy^;7~kNHMp;bRx=C5Obx2u4ak_DW=Y@@QiVnIwVv z&EGmm4rUOh8n@a^)0Fwi3Au;FxNTY)^0Hgp69-YerSfquA zjC)hSiM%j@--0ik!SqScDSLG>lKiBYl&CR4x*|H7rvu6bdgHO$Etm0F_RYN)36lVRy?f%@6K@pFJ7p#!rO@UGbs5niE$gn^GpN!v7 zVF}DjWG8}R29r(UvXBG{%w*DWYAZ|um|_IkN>3C62()PDU3iu+NC*AsexRQ(006#B z4wDUfFfp>(e|L5|+53C`ZYyU2<^$|vzvCRDFZn~B4g?8Dwd&yg#UACJl&|9G!sI8~F z>@5Gr%x%r-5>(h)#>?}&$_ARPTHW-g2Q&@hqGnxlIpRwc|PNl3SB#spD#qj#%foN^H?p14z z%|f00c@H^#)jzA&X52rsj(BBelX6_k7%k0K3dd59c)0{I<_r-q=+5;1Wq=euJYiI$ltSH8=TeO+Z!@&(jIlZv}f07SnaWx=lw9+l>fr* z<=Og9Bv>Q2`q1GpV)wsYk`xTRz*c%xYNOhuwmYt7*YEPkmDYTAsyv+a!-VspAn+Hn zZO4b7$g-Rs_PLLZ6_*pgym1RQX9Rw(?3~pHJs!)vn!p)2SB3n&sJXlD=93f6$u}eI z2j_N*9yPiWKg@VlF>tp|KmD3yrMdK|*$J zaLb%O*-rn_?zYz@sR>0lA9+K{tD|`y6*}iR$KBh^57l@WXPz`ZlI>8oq}}%VU4`Sp zu-D&OjbsK0P8}lNIsySv(&n+Bs%je@RRf`xrFTh7mgv?ko2fmt%5)RqRF$shq7eoi zC~&3~JLT`6K-G2!wSFfK2fSZ&+4f)4S-J_w@|nw;HtL$y_I{gnCYhJ~Wf?sQu5qP^TXK{aI$3ja zDK9{hz2W?-qFp0q-Dk^o@G=lt5AyGL7MLI^ici(BF8QE2$h2l@sH&TikM`7dSB BSNs3~ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD0A6737B308AE066CC00-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD0A6737B308AE066CC00-7000 new file mode 100644 index 0000000000000000000000000000000000000000..80418dc10b2a53c107280cda68b0395766f0434c GIT binary patch literal 3047 zcmbVOc{r478=r6@YZ4)9jFus@zB7zrtYf5%96L#knRghP#mr#FQcQ|uODIl`EG*a6W?e#=exe^T<4GPy{`AY@8@~$-@V`0^B(l{aMe&XRE0nw z8g84(UUC|=_^K$#zl~k}zH(w9bO{i8bD6?e8Xtr>GPt22)QwFG1HC{RLmbr!+Cm_T zQ7oSTVF1;gNawPVv_%=Dh|QCuArM=85syZX1clI0FpR|^!6q-Y!k{b$3FeQdqNzM* zFr2kHjt_drdHB%dBI(u)n7tj;Rz#F5V1q&$RK(uR5fDWr*cZJ-Ils7#f~3{SKDr?%xe93d+49ZsW7$MWO8`bLr7+kRx;>lVI`_ zB!k5uGOd^Z9gDLB)i>X_i#b0v-a^%Cq zmruz)n!yAFqN46bcJvVq{_&I8eWkzA^|7AX8~o1EWob!iBARcyzx%fQ{tJTIfFJ*2}QPGs_8-Wu3msA^;ow@A@ z?@y`!5as6zr5N7+jqpwy9@Eq&9d&4Es_l3c)<0i7nWpJ9+icObXDO}Xm&|1kU%v@P z-T>9X3+8)o0w`6Cz|y6CtlaKf^K;u(eNr zW4A)0vt-p#=fIO&5rhpYi6w?O%cj<~A71`e^R#GW0e@%?w?mX zQMC6q^l-CVTioHz`|xp0jk-JH!`(7fT4dpk_HDQ=%S|6`eRl2PPQJ#Ar3v^dh{8qH zuoJ)Zl|P8pxwu)@>R`rdSG#E=vp>HYzW%t5x3qeIY?@Yuuwza)Xo{sSA>Mk)*Oq`U z8v%)f>z%hB@7Wub3@*wP%L>eHut`E3&$*1Ds+G4ZpIoIx{}&nJrK#XxdAzCX3ea>!jP$S5bvhA-Mau5d7Ty!)4NTskqtu5TTQ)O^~QWSf#4K^mQrOeu0 z`gNdfJYtg%4?7aVQ==|kovwk6JJe3bOOF1>OzkRqMBXn+y1H$8cjcoiRw5Xpy zIJ(&{vm(fI_lmw3#V-qHieB9Ev8$Ixb-;dZ7=36MrwTVu1{j zUkqLYIVhWi=-t#KKq@Y}hB7nz&c6DC@JL0s*1BW$MHC8gZf8?% z8+_A)Np( zCC$)uwl1SGWDE9oInk2D5azwTNWJ3&3?pOq`1HP1zs}H!vnf2Jc5>6u)MlOH!p&>X z>U#IoQ!DmVzYYGWBr@kt`2)SfL8OA!dMR6qqL^io(zOKh*7AgV>$B*Hfnf7L-0(7U z-MrKGnBjp9U244-)g2R`mrZ%3k^)g}KLqxLW-P0AAGyL%F5K zGa7s!-#{Fvtp&@q8Gbo$o^o>6fSO?i-NiN`fu$Z_ar8-2{*DWy9q7S{ox8xmzOs<0 zq|Yc&TYs<2ZMC}1=FS6Z&7ZdOQWCbGu1#WDWQEpoqlpsO$q}r9OEb(_V9Kf~qBq24 zS&UeaIusI=)lGU+P5}0~$pPiZTX#uWl?deFjqLTtbz>vJyyt~_wy^}ouzDaGG>(8L*J^Vppa6VJqQW>6=oOKNRL=7L!3<3a@y6r&YP+Is-87_JWc~l6p=(-Ag~k_vVeQsgWIHp@Aw_w!SsuOn5rL&-t9c`bMmb zQW=t6Mn*Z9`|g$|?x(q|dT5cSUm>I%yA{~?4lccnb@8~H;VcMCR+@Rg^yW6L&JU&L zOKjI~ZvaSU8A~Zsy5z^@dashxiu?#rX_Au9L50#`D@ZcKs3feirZav)yP)G&S^5TP zchae5qjrUr=n}{MicZ%GLQm(~CAt5ZP`8OFVN`VquBa(iHSGU$IxF+2XSM?;mz%!^ z3k3QX=Tu4F+vx0{Ox`JB@($$tRXo)*6V literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD0A6737B325300D6F0B0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD0A6737B325300D6F0B0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..1c2522fd6345e95dd8ba0a631a289b131e7a3367 GIT binary patch literal 2226 zcmbVOeKb_-8XqJgQaYietyr#?|GiR zc4okCUlXH^Mi>mn#BT?ajjsE&x1lcjtox}i7+tL7-eK}UgfCZcq%g*dheX3zKM^Me zX2TqwD*hHs!(jB{1wmo*FxDe^5P=90KnMUyRH7Rd zBx65aIMkbz$EUKHKA(J{J31~_E|*XV1cgF@S3r0~8bbix+}sF65`jblPz^w)63aPC zKrFLcw!nmCT&X}J7a(G+)*>ewNs!ZVXrxOih$Jl5XTxIIC!$cw2uhBG0OE-Rkw}}@ zM{Sv$4gVg-7qw+UDhW(r!!jg6%0=tJw_66I-2J&Dts)u?b&phl7KI~ZBHRQKESCE* z={WQao+sc@`L2A3OLBGv+{kb=z;kvcqLK>_0G+uo>_X&oL71~_=Sz4p!vzA}T#1m6 zHwc2>&J<@?$P1OcTp*$k#3V0c{lqdkN6dwneG5?EOIR15KgCiRQkWx0q(KNGT<(H^ zSVWGDLXenVPEEODrc|KA^g#Ab{RqzG(5Xc32ZXh3^a48T# z;yUwyXc9yMTwst(;gBGh1fi)f;d%crbp$jhg0@fo&^OCRXftZX&r^VIKF<*>Mu$g= zPRa9J*+mRyMZX`@D@ghH&FTHZ^}&{%vxRi1VQ{FAUG-o?;;s6k$iI=nk(LJr=FilP zmh03j^U}TrP0kf>^W4bT9-Tp(i@It?i1oMMX#TaCP`4*zRfi_n-@?$}5n$un-@*-7 zVqz8w?q@e#sX39rAKTTO$AakYG5l`i!_&p&m~PYX_{3H3dc*wATa8&UyR_E$}ar!Kf& z8@xP&REV-l^zxIxng%q?Q|g(vkol>qy~EPN+b|5N?W>Kl`6eR@O7)0$tO&hJ$-&%IQ4 zu=%^v7;XZeL7UuRBqKNW8xvB9>-62L9cRl@uP8i}>6cfN`vxXRu13$PNVD!kdx?fq~kmJNI|t`4E!a?7uOnse zc|~V$)NL_PA?&wO9n-tNRN-DQPIi@>dil;}q~@#Rg${PPo-H?PDhdq^Zmls`Yb;qb zS!un0kaa#{jjfrZLp_2fZR9$7SoWNMu zvHuc-g97qdK?XO+IZs0FY`*3@=Kb8J^`MX#bi1W(hIhNPutZlM)ckyTvT4X^ajtMy zgYCaB16O;z+>)MNeUyQiu4;M|I}ut~ZaVh0eUPWlo8gkdfo|jR@yuHX2Lcr(NAGQY zx0>{AYW!F0t7bPEY_hJW0amd^mBcfJ^8#RQ$8lCtmUq8!glar|F`wqKCHVb^p3*b5 zMn?A`%ebhdsBT^aZ)=);J4pG@@2%sc{d{EW7o@DP#Ap~p4rROZd$fNMe%`y872BhZ F{TB?ql!^cV literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B3253703FCC70-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B3253703FCC70-7000 new file mode 100644 index 0000000000000000000000000000000000000000..9dd597a3cfd64320afe82ceb5677de0263268f79 GIT binary patch literal 2968 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 Oe`RlqAGyLKQu%L#xa-#d literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B349090CEA210-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD246737B349090CEA210-7000 new file mode 100644 index 0000000000000000000000000000000000000000..fd42611e0c2b93a7513a410fe5ba5669ceefb500 GIT binary patch literal 2641 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD2E6737B371B30A9BDA0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541BFD2E6737B371B30A9BDA0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..a6644cfd14ca2cf6f82aeac299f309b16b41ae62 GIT binary patch literal 2317 zcmbVOc~leU77rCUTXXd-#_ub!Je)ryU zCUn%1c$?!`}y*Nu{Cn;HTn$uHeT%y#THxCM}%%c;!w3%3FEjBB7yOKGVwMz z7#2gxiQTXV4!0;#8X`hPfdOm~k&(o6IwXxufuV6Y4=;^E3?{%RUIK5E$~lComUaSO z3ULVGj6h1Df(OS-eN&Y1mXx3nFeL$GK?E;PyoZL38IZxK7_X6Sm#f$s4&j|$HYU#< zlL`2DDrf?S@IEL};AT7zQNnlzi9rM@03GknA^{A5&IDZXR0=>NQ)py>Mg*vA3X2Ue z@beD=^QMI2*ui|kyf19WA;hDof=wo?)oPNOMnaU^$N-DQB2%bjDwT+75LL-?RIDM& zRZa^Q_^=98N)@OSk>lqqiX})A${}EpzE44>2n_sSSgx8U3Zsmy5i7_5i9(ji=JI-{ ztwMw0Kg0N>wkjl90h5Da6_TU`v3kTgEr2oZ{@T%;A{GsMlTwNmMZBGlfJrh~j{5OA z1nh-7O;MD6)Kj4@PcnC=6fFN{+C!bPYH`rL>Yo0+ZVcEb3B3~ zs(3_!=kf3^;Ziw-s8ws{D)c^KKCG1PfFXerk>TG_%$9z_Jq-W>hy}zEnIMx!q=Iya zD527*L^l`!nPMsprqZy~-{YbGmpU>Q6nU;sKI)r=Bdi(c#1B(|Z9dEqEXRgNiA~Ac z<;M$gI0LF5pBtjNJANoV-X6B;no^%))Ha-oXlZUxC6qGQN$jK`agKce6g=>GWrl85 z2ztf)yDR)A0b3=6uWOz0nu1HTV5v8pi9SSx^jfgE!O2a2W59nW3<>=-~eEX4U&E zA)%>8o|=$&sIH*;)*b7~=9A79DfK~vjgjc~Ul{uH!psBgUD_!_e&D(|sZm?|%WB8pPK`GOMsDd~OlKK7 z<$9&2quCEv-g!*hms~A?Dz{Yfb0*Q3B~-vkH-{{q}9g!iMRr2d|d&nM74*_P5#OO&oI|*_+!6v-`-G>*3FK zhOeE8KHs!!Z*1ODSGi?Le_bxm!@XvuZ@|EVv2#b;XN2E1$L!IO%`d%P{NUD$N5@K> ztyZqdbKVqLWZ(3RKDo;~ZC7p6@vr>)J!+{_Z_6$YA!VB~2fOt2_O|rQ4mIv8ceGmfPt5=zL>kn^P#|)UQ)pO*cX~9#Dw*nOQc>|pFy(jFC zFiuAE&d)U&%$f$Yd$t{(vIz@pp%Ra|Sk9(7kI@eH&o&p|h-NrWOI)El=j?7Y zNY<&iq3kBla}mSGbE~djv`^i+KG~sfxlfJvF^5;9X}fF>JO*F1c-(v|$;hmR+!9Sf zonj^;)9L9}Jz+Q67$e%y4OG)Lx_cDSn;jL;FPD3oEn8iwQyUy;ATN(WJ-3WwgY)=ceS%oL2>l%VKj&bR$WWDhM?bJzab2VVOzp3GZ?~eM5OCLV9uF zCsi&Z(2%&Bf62SF-@A>Zj`RVj}~DKGPH z`Rc$zXWxhJWsaY>I?{@0syM{k;X_EL+p z3~vY>NWYx6~XsnC-VF;blpSR-{;R+H6 V#y_@K*UtT*`1u6!Pi=_Z^IvSRumJ!7 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF16737B324E90D1E7E0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF16737B324E90D1E7E0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..0cd0682367accd4831cf7b2412fddc2716bae6ee GIT binary patch literal 3295 zcmaJ^dpMKrA77$E+co;{>2`D_r##4ManBn1L2h!5aL3C2O+-@F5bP{=r_y8!_~pj!g| z6x&D!;1cQRN{S35VaQN3Q;118mM=gBSVTxTH7J;g4aY&h>tgxy^<_8|@*Tno#6kZK z%7fqpv7|8oh=HDgE(w7|L5whZNCPAajnskYBapk{h~04HZe6547J0~cpQ{3phuyQvHH8M5O@Q;1xlY^WTX|!!Ww0W zwy;E4p^PjH_8>4nxp*2WlnMm1esanGa4mn!UGD@co$nbBFeq$*Y|WriA>T8`Qhpx` z=C^u3xa8l*vgfy4I6oNp`o8{apMNg#n`eFct84kjuf7L@`OVJYclFV4+*A-q*wqfd z$2I)L+q1Dj(oez7qu=JXsSGO6DiFk~+oryBs$VWRcvxJQ_W%#uoFh zT|pmw@WDrHzi+4hrp>7=Q_RB|_NKO;^F3`h6MWq1O2*DdTE!i9L{2Acz$LPQ*z%Eog1~5=B)#B=vNIMD@KQDa$b1M6y|K z+iXu~9WS!Qf3HfO5u_BBUg-^%+p)Yf+K`;$F`X8&)!@(Uui9EK;$#v9Kc)=MoxN3{ za<)^XFmdOXwY?JJY$1MlU@QXM`myGm`d=xvd@|#D`_pnYQ=U zF#lSTi~!p{=1unR_snrUxbtRrMRDVU#p^&$s31 zO_b&Du>})R?R{AF4!>nW6(z51rD7Lj&ONYB)!&Cc0=ucpArk8#VjuHBGInO~4M1%Vj2pP|cRxi}wa- z%lX+P)@41+sdx0bbjW_wHpjWC0Q1VHuOanF943z^mLfybX^tLQLsD1jEHl|X8M6Ik z!{hrH7K-h(JFSZ?kQ*lI51U#vL!*XMZoAl-A2fY2hVR^b(e#V}%%OJ0DU~FI)TKA) z8XvTASMHuKqKL+#End6qbZkZc5u_&ekYjs7IyyY*8@M{FFw?K;owQi3md2x7*ZTq6 zHKg6p#0dM|n{TG8A0^gKO)uux2nn4?jp2-*E>4#EIMgt8D&*YDVZgt{_?kdR3G8W~ z@-gRc1NQIo-bqh!Y0y5U<7J}a6w^zuTtZnq!n8$~6J5+duHDKk^71xb$klp5>gV%^ ztf8Sz?mhm0M2KUJIGYp(Ds zC(NE`Nxkkhm|3?r0VN@(1z$$=3QcFHCFB%ZO}y#qR{&Eyn=kq-$0ti4U0Lq6^z&t< zPFBT{(QdC{?S%Mc^v(gE(G1mZ9O3Hj6tt8b5pK$5atV(2Il1naOUmR+N({;?)BtIJ z>IDrY_-C@d`1PjA@r5S_Az|+-id{(f6k_ej0_%QzlgWrodt$b1Q^QFcr_1d=;k zT9^^J--%fj{JwDOW5Lo0Ii=m!o~*sJIIs`ePfnO>^;+MMpC~rHl+CcUEw=hMC ziT+CS>xi)vl$Io2u8MiB#%_c%>Z=JnL6L$hi)6O+bqfpIR$3p%MWjB>-15D7zx6^-50LeDlC$%e`&eOw-@G8dk<6 zf>;M;>swdMl%>t}dTL5uwRFhYwToX(ZqeKznIYC~t1^cJdPUle_2SYpXPUQob2z>T zjT+85IYB?2!(-W%Zxw6@=ig(>yR|oU36+*TOTXhvE#~AkazRDzhAQ@}+oQxhUC2=v zYC5YNv!}qZvfFdcR$YgjZSr<*>7I#Mf9HN%$}A Cv#eJD literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF26737B324F60BE6B00-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF26737B324F60BE6B00-7000 new file mode 100644 index 0000000000000000000000000000000000000000..56cb9114e27adcbcf55943c3f436008b0ca50c43 GIT binary patch literal 2846 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 P^N-ci)D~ZE>>cwTJ_y#n literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF26737B3636E0429E70-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000541FBFF26737B3636E0429E70-7000 new file mode 100644 index 0000000000000000000000000000000000000000..6ee1715267528efaacea74e10a7bf864e12b7920 GIT binary patch literal 2670 zcmaJ@2{=@1AD?9G4Z12cIE_eT7K|~&SZ7EzWRfi{W9FEdn8nOsq%w`|x>=G^mLh3Y zq>@C7tuUe7l1502inP#&;?_6X?){$c>pRbL&i{Si=lA>l*Yli{w${gMo`#_Y1Ol1o zy^=&#*pS&rZtGsJFa{!WkZ2t*Tog+afDktZFAM~{IW#6n1!;`9s8-Mk0-3vn z?H?oxqO2j%c^o8d7K0RX_zE@z;^ZRc)94YP2nYk2Y%US;w)Q##U^9q_Kr97K;d_8A z_R4JnaNRZ^fBLovI-Y@WaR!{k1cd+x6wv@NCz2~9h>3`=x&*~~_85f#zCuJ1M8vnC zf+%YN51s%7ut=;m9gVRAaCjsJi?MUStN?7#7+VzD7KO33#@GOIJZIL_y6NSO!@hG$n%Erc8fv^_FaYZz-HCJf*LxBVe z=>j%i#O85TCPl$eVj3TXL850<`T?X+{y&t%`H2>a zsNmo6{!d|{e;gk~Q9&UuT0mDcF5Gn16`$ZC0BItgz@Nv9{87cVES`ubWbycbhX-I0 z$mTM5vBKqF;S>tNn=2I2xOC8)L_{bAkZd-CVC#k>J9yeT*x4wGj3L|M-EA-)I0wAF zy*-}n?r!&kOXAU^IUrZ`gUk4vi~l8eb`m&zg=Z2dV8?(APXUhue9f4^{&g(&ztsEA zW&Ao8+%LH(MKGw@zW$@nKaLc`GrRmbwTjKpxd*w5VHYT-8g2*+fIw89dXwDz#q!q$ z@sWCD_^sF&W_(501nX7e#LI%Qy{Q&vlC)yPpzh+d1pN%MRGYL^NnPDsd5P3K$>mHw zBs)nT*c#@qXX>YWh6GC=v$Tf3n#0-E;3prsI`N!W``}+(Ui{Uh4VN=)YeFa9gue)P z9-rQka6PZDxx-}If~ulH(b0h`tJb^m|I4I))buGTXVCpOOJ6*<#loI3?s9y#zV{v& zc;*tZXnUO~;gh6`G0pT=?_b+Kbk5@Qvd8D&D^*t?!d;DK+}S7l%|Bj zZYb~?xgenyc)TqN^P`04?XFtdm%JuDH^Zj8c3pZS=<)VGV`=#~-~O)vgEDw$C-aGw zq@{2&O?p^&MORtTHHS@$_uq?5)RDA>uutDRURAPZCGn#df2i`Y^tbw{cOlP<*$iX2 zaGcfN6L46wQ>dCyV@*mZO1}F6ZjSO`GAPcvq(!hteI?6^pYPJern?=l_uHDqem4#? z9)s%loEFOUgTuY9l&H;#rsh6sxdjU(XQ-IAUPYl>n`!IYz4BZ3h!zC>|7drdTLEUwhTvCIvdr@ zTBujk;r{IYiW4yP=2g4sM>i z+BX$8$-6Uo95&DXRE{cncw|JW&T_P+;L0JL3s2VWJ`bfJcE^?8W8OF%9#pC%Wvqhh zC{fF1cDiwMY(HmOoX4-cnD`iQP=iVT(=-;EfwinMRr1km`dP9gfkg}UJ$)eyHiDdc(VA+woAz6%B$57pHsybzGBR4ZO?UVI|>$UvG`LGk(4Lg?+D z%v1NWmQw%O~ujl?Q zKgS#Jm^GI~%@fgIK%eRn4QGDkhPr3Qms!e*sV9#dyb>0gK`dFueG5OM#kyG?ciXC; zuIFo(IZA(q>^`Jc59DaYmstj@YB{#ucU$yW)B-FV>Uz9w+;Hw;hl4;*P9Y|%5szM< zub$a@OcTb>ct{pFCbVCwpFUgs;Z4nvqA$cQvol5q{0y66%B&Zrxq-eZL+M+bobR5E zt*UHa#%{9d$C#jD=Z5zuq?F|NynM2U>1H2&;DG)5N?$$9h)?Sj#LdKajxPTS$9nQ< z%61RFBsE^eRZ{GnPmUeQAbX$OU$fD#MWTK$a|=LqO;X96H}-Uk;Glof#KY`#Psd_V zd|g-PPb1ZIp*OTF#S@>!&1KeF+M0L!M0XX#{uq_mxnh6E-ZiMUycjS47`^}X+pOS( zH+sXJsrSi}`OSYC-SXY!7T0hA`>v?bHIF!(Y#%`k!{KLLlGw7t%Zyh%EtWuc*KIb{7vz}+I@Bi2HzVG+`|NlPETJd%^7NWv(!hC#u zqL#<7_Ply(^A_UgJ?}r^p5&GN3^Nyo1I3pS;!Okij0qGU0Axw>_5ly53T`1Xu**%EhG$%)Py52T4)R$1^Vj( z^SaRpz8HI~`Cq+wGXtU?CwP&=4e)Li2;c(P%VG3jsqQG7=U?B|6Brz`a_mX|7)9g8wO)~Q(U$ zhmuG?&~%19@VDRpDNJ_^r2;T}fKCaf;duw=tF+mQiZP`D-V6%OkwOXF+C@8m3WGxT zr%*wrrXW>kBAGx5p{sp|<8T;DGM(W~#sijE129hjN+c36Cc0={GXx5)jX;{i;bz)s zEF6o~)kbLRqV#ml%*?mASPDLv1dth9T*BX6KI%5GE@hm_vr%_0t?<>X- zf9{3X{byeOaZV^vat&&~X3(2^BinO{XkIa_-SSLy^mV<&Q^ zAv(6m^TfxD+uNnSf&4iF6L<3SFWTGp+~|+iyjNpg-|imar^DgZOF4Q-Diyy?P^N87THwiRkA>-`qO+N`?pZs$f--s^W)j^|3F8P44x#CRb zWYCPe@T)P|&ckpa!z7mbKRR!UB|mmjY2$+*jlrn}b6jW__aHJH$b)L_112N%D(tw# zNzK;8o0pQAw%$_muAXOP4#Gu(Hkz!ijNR_?&4WlUuRsRZM`H@pIxI8m{zz5V`(48U z>A{RFpI?bI=AeX+EO^!z6(zp^Twu}oHh+E1Qa*0(or9AC)xxZ3u%vN4GfUW&coMoY z!#|7!*yYGa*a&X%e5zE7H)^R+yXxa5yty1})d!+7Bi<#U(_0hOk!y;Lm`hda6B2uH z=jFqS)9{JqHpZ%8=#by;xped+{0Fnl@OI;s;Ls64I_Y$9=NmsCrO~X?i2|RN4t~JZ zP%tSRS(JJa)|i-!k;!e3Xnd+b)%gb84?p*?I5pQJyW|tpG6ih=2P!Lkwqx>|E+nwU zNhiZ*+%V_Xerxt1++0tmN9M{i)9&Y9YMqO|8UR}VXJJfN;`OK>azH`uvRT;`$A0Ga7Y6+%1%nP8l${ar8Lg9QG2lm zlI4fvmzUn*J2k+k`F`HvT>v#NZVpJQ`k0H4Ds;9_5m#lYh#Wm(S<~=bezacb(1O@v z8r*>jA_UG~&C70`wMNy5zB4%AhkI;#`;q=b&i?l9OW|fJc;Ff@ex%$qx2jL^vz?mu zO+}~D3OLe&Y2}@)e;znOchz5Xs{h0}VLK-he$nfmA{>YohgQq!ZpZ7?>vo28RF$yj zhymkAK0mfs6}u8Mp0Br6k|(p+8+A{U=l7oT23_1$<>t_OBAWLS?QiU5rFm zJ}#Nt@3>U_PIE6;f%X=qnv&NGyUsR>uHEPS^jKr= zwuIK1E=|+7#6_CkUAnVm)5yAyJW+A1W9nFo>vi8Gmtr06fWp3s#EE)^+V1+>_m}zS z?KnVwaba7~nhtYr?6jvqPK)On(-r>1A_vOIDgN^CFCrHc5AJh|cDkYi>$I3*S zsNm7^k6----^Ip3=QhF_1vT1>@)b)FksgZujuRIIgi1x5zT9{^g&tuHjdz&VSoY%4w07S-X=RXR0{-#8Uo?P|$mGys>Po_+qU! z&5d)k`SZcw!T>|tyIzE<4aD&KQJO~?c6RB(gxmbulq^mwVrlSGh*+Z*&r+eWROv63$l&4fiBN_lI)EQ&Th`ESE{p*plB#Ico@eq1$#>j(V;wGR&Hu=y8pc3q1|p; zbt$78!n*{+X5$su3J;S*U9Jl?fAzQ&C83zue7F2$HOCIzYMgTkUb+6mrnjI~gs381XUDQ~Ip!kCg7W1M) zpn$NtiacjgFo*RkqPxe@_I1nnV6o(RF-g#`K3;D>EO*Bpc>KJ@bLxdj`E-gTWt6Q$ z$?h5ImT}T%9+O$`<3BngEHZh+^v3ir@v#cA-P!CN5K*yUk21*E7j=&7o7Lfi)spw2 z=4}2?uWs~;Y$W=%8m>G;*2L}PEV7>KS8Ovm_(AWG`;B@R`a9PHhthCBQql51*- zMkB9b9<#{>3EG6fwZPN8Vf}$QPz!t6wQp843*!IrVYXm*M)HgBG2ZX^vihO8 Qee+M+(#!^1ZsHaFFYjI`#{d8T literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005420056E6737B303C10BA44F0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005420056E6737B303C10BA44F0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..8505a8d54a898424531273090bc6135b1ee049f1 GIT binary patch literal 7001 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 Tb(qthMduT7gVIJV_jCOZ0@fOL literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005465C14F6737B3325A0955CE0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005465C14F6737B3325A0955CE0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..b82de2bb2252c56f0ff6a9ba9c72c0c13d6b1e87 GIT binary patch literal 2440 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000547705646737B340AA0A959D0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000547705646737B340AA0A959D0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..926b6187c7a37cf7b2995d45e68702cfe770494b GIT binary patch literal 2886 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 Gdhq|tRYfiU literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000054D335C46737B35DA20A3BAD.jpg0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000054D335C46737B35DA20A3BAD.jpg0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..88017f28308fa4a9a6fee2379b10ae1c0c876fe1 GIT binary patch literal 5607 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 Y6geAV4rlWC|DPf^Dfs6z>YLgB0wqsO9smFU literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000054FD72CF6737B34B240EFFBA0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/0510000054FD72CF6737B34B240EFFBA0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..aa30e3e3c8173e519a5991ee5308d16ba5e6370c GIT binary patch literal 3654 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 R5wZXkBc85)F6*2UngCN0ts(#b literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000552E1B996737B353C90605CC0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000552E1B996737B353C90605CC0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..2d87f200341c65bf7d3218717730e759fd1b47fc GIT binary patch literal 7001 zcmeHK2{@GPyMNJwA}J}7X;fd^n4Ou4v6iWi$gWboGxH9^Y|V^iRMNhqgsdq_YP1*0 z)=Jr;s8E(H2_Z=eof#sP&cE+;opY}Lb^YhMW_zCd{@wR`Z_n@9XS32mNl`-)005=s z6mwh2w~q8JKTh&F>-iNI$(I6;;vxWm2~(tR86YxxIshnIG0n_uY}~m*uE3qkgDp2R zgYo!W29pH=fNyz>osV-!_cU@Xo^`1!MtU zsqP%roSH8?(ro5A0kFeBHC(lEf=sY2kgIE-I~B;C4qUXmLRSQi0su?2*%S_(RRUVx zFDH)$o+X7;ssqnX&PmrOzR1u6`MI(T$=l+F}Nqnu^oL;%p}DZbTDFbZyLsH z-#gjw+0KQNXLnTfryrCZ1E{PlYAat~UtcE2%aOV0mF1bV1}Jv~+^c$Au@wq&s}&#l z^&AipdW~nrp0LR^(3+_@VM6O%>WK{0s{`aO*cxv20sjw@-Tn%{c3@+qaYS-<{Eohj zAjkW>ZD3>G7*jN-yHTeLWqwNAl_}Az4H3_Yk90}|F<%-2b7&lya8kXPQ*ct35Nj{HylRP4FDloJwe8c zWPpP3gjWEN{(Ab_Ge^}e@5=*#dEB;z7fr@byfsyvtsH$zD?M9X793}8JaJC8fr{z4 zx`3IAC#Hv)%&^ZUJsWfFqMSzDf<&{kG(xTeYe6GlU(^J z;B3;~$<)AS@Ira@h`=#$kb*lBkN|7iJ9QQOUM@dDHp$fEuq#F99fCiVcxbKhr{IcQ z7-oO({&WlU(QTJk$vu(vGQM#}TVwzII6<)xH_0_1?4)P0#?@Jd0oP9^7XSU)O9*V) zA4m%*Mk_N8J_pwx+_QAUK4*=2In!wM&UnWlJWb14-&;*HI~Ht{pCfx9U`mVpx}7Sw zS=)nyEu1Z#&Cbki(YdOcChw%MV<-CdU+|DK)>r5HsrKCUrIIcMJ1-N@dpmp9?AW>M z{!*T@K7=wy`N5I8m5Q_H24j{_Snf%wpdb?L638Vg%xKGb&B5#kFYDwl2Z&+ehf{(l z1zR8a{NPSq%2d+5y|tDKC+FBE993O`hm7jSoH~v%jfgwDsvs%$iTv5Uq~oiXv*WyN zkal~Lrr^9H=N3dwGs{ar#FsvbWV$iC-H}bgG=&#CW-SeW6kg)_dVEu3(~kE(6P0!= z?Z}}}=g;t*v1vx)^pqLM2+PxBABRWe+M}LgG$Y)OO*+PPa9;Rf;byhN4^=}+p^l;c zp^azl9Rva?Oi9k6BUIT<&SH^d9?J(;K3lh+HL!9o*g?fJp9*Ph3ism1L(YtBs0b5A>b*FC;?dHi3g^WN@pdxiH^ zCo{y{nN%_EB~oqE#g?JixfOTURA=OE+CU;3LZ1qo zes8q}Yj3JHb4G-E&z7kR7GloozFBqEPPkFny|_$V=knPtBd{YV>EMke6&~05-fm(K zmMx3c5|tW|dNy^N@1BoKJHl0kQ|2hN?yI}|?5^RyR|45aRwOpMF48_sNIPF&dGdyO zLsMa1tdD^U-X(Z5Vb?L$@XJQ^J7A_Z$m!Pgi5x4fDerbh?Xq5)dGgT7RhLpyR~Q^= zh;a=4KzOlai`ggl-PX&z?qe0KZ5N3S&p2{Jr_;*OyzHg8==sLy2;$M`qtWrUO3bjU zi=LuV=BHRQ7A*=cuP1Qhi-Is^M8nZ%)%WV5jb*i*~h5qx&-3OSa^> z=Uoo#v#E8qb$I6?s(cq{yQAdPDYHe}op7N^M<3*I&c9!MgQf{W;3dC7(;ld_J$dEbE2O zrcUJ@T53yPwjFIrzqZKN$unc=mM%`o+wCucG^ml1}{D(@6j zMQly!l5eJn7L|~)yu^rjcAVjfjJDSY<72eeX<1~ZeDQBXzoL2N;DelE<6`C;cJ$P3 z4|$bHPmGOOX=L~$qEggt*&E^My2>@f&8#TaNL~2WGG%@DgU*+YL9XrTy!Y^KYQ@}? zzmpBm8(R4D`f4Z_)^MAl?z~nfgY&}oR?SO_+a7QI3|FuIq78M%(=s%@oeO z7c*1mrgeSv{?MxKqxjac($z1>_d;)GdEcAypC-N8dbR%&l+CXGxFLH((H)mbZORIJ zV*8JNdAz5l#3J9KRA-sap`aLTZA~SOjCb_HkebBHiBpOm`a6CRH4Dx)R`u0>{=3Mz z_gVXdo&!Z$=S4}K{I+vR7f3leIoj!kBEyc;y~%|YTiR0F(yDSYv?J#C8u#0D7Js7U zBtEk4CO2;G??ra+?EE~pi67N_(20Cyhvl8<73yL=%ZbBnpGXU=R`sgh0d*g1!ijKxYtS2*(@}(D+QAkjdr1q_`lJ>m@XV!=;9X zUtgb#%^Nnv5qyoEB#KC1kcUL;qL8C0(P_gvJTE?Lz%@Dz39%qH#1RT4dgxL0Bq6o3 z8de?E9Gg9=ra-vVTk-^7BQmO{z+S|IkhYM3>&2%*OT8tY=#1vPKxhkn3+`_~NyJA5 z;tgG7M)zxY`7B=6B$)R(71Pct1KT3bAnQuUlIVgn4lA6XNP&fn{Z;!^4P&g8rxClicp->}0 z1|@&Mu#)r-9TbA2qu}u)QNEM?5r<1>GDN?H@=bCC2AxJ?aQSRdNM^D@Hwek&xEUb7 zEsl^JC|uHVjz9=q(A*KW>|EXTg7xMy7E& z-Vpzv%sa_c1tnw^;tR+OK9>yxc{~=A21;iq(wjs7%Jznd3QWj_jW`JhLp}oI|FA&m z5TE%^=E?{!hrH+$wko}|A=M*h>3UunVMq4+&B8RBX`GZ`uSm5?~|!NOc7Z71oO z`mc$LgnLMC5Tp@D*ARIGq2C*#Kd67#hF{U?|5N@r=-deP(a^bnN+AcWi~{q`+EC<2 z1b75nF&G|Fq#+(_B4OfEx+xeTCOu`PSuq9OzF!^MkWio@^1F^iln5dtV!Q)vx`mJV!39DXzrD2w$B*5wasNJ>3(-f$Tgv)rhAdx zx>9aYR45Wj2ni|l-w0Fs{_6Mr|NqbPd!FB(XEyKmIj?ixuXE1(oX-wguQ5}QSCa<- zK*5}7LK1zh6TfApMSoKtmD`CvLMGE z1~_Hf^ObX7f7_jIy}$v01Oqit<%UU8K_nng+cs}HkT(;!WOJ1&4;%*ohG3f!6gZ~< zG=DNDj0c`4hg7Ko&*Nt&%K}HGfQW@=^Q8@L0h{f1l9o#6+yUZ*22kyBITxh-oo=Aa zr2R9;16~1+K~oGi1O5?4OA7!9RvIv#JFQR#Vj&ZUD9x@(-o)9PMw9|_@XK)+NAh~0!X9v|?s3+sl#5#@ z|Jb+ZumIa@FgNy;b)Mdw+47SnwP?AV%0#?5O!%hrnq70)uS>MsU+LQhY>708NXbdq z-M59z^146@XviODgk*I$X!hss-O(4YsH7HsdBakbL+y?S)2yMExq_RdV3Tgk<*w z8Z40l3d0lM06@mOnH$a?SG9N`3jii@I~QLvoH+URbYYHS^zAtrIjYj+2_^=U=jZ4t z8BM73pDllCW|-kD+Z_D!an~=&sKrf_zbgS_(>G~}$+H7#G|o_jtn_{%|#D}@U_%$qwe zR%_#5iqkfQ5a%mCJXW_xex6nk%6yW!2eFa}OSDNOlq%7qEfzEdF(1CFlfB|EgoFpD z22BaFI`;M9-MZB2`1=QHE#%_olM;_Bufl*U>c^cvi86|aJGZtlIrgdSxdZr<>&%&P zUe<7%{mIkNo{?IGQ8SG56JZHuk0a@>^lmqJBR^g4hJ>E@hY-rs5$$PTG zK84-6M3;rLJZ5d3l{7PT7Cge@%=jna5qY+VXDIau*Ar7tuKEE@&eo1+x1vmNZj$YJyD8^4+HXIz((bDDn`F7CGtQSK&#}9etb3t|Ju%la!l%@$tczp8t| zw_4a3^Ul$Pv|w7y+bxAsiVrT=wBcSvuPT~Xq)@aKCIedmyIk&`LQC;WSytg&kyYW+ z!flz+(p1sv$%!$DSsK%cXX3j(<G z@lhqvgzVWaLi8)J%0rLrLPu35-b=h+m$j(yxJM){z2w>xenCOr(kkI|;lt(tTv@b7 zEII2%MrH5Oy{Ap1@2@(ndpI|&B5Yg!_%O?`Zs7@gg1x}L)Bc&zynI8`(k5oP1H)R~ zA!>3IJ}Upl*_5c1dtOn@>gl!90~eJp>a<~1Ae(!e<(ng$C$!+Y$X!}p%&y`&1+$gs zlrQHm-^S&87I-l@8BK|=(RY*YCEsmya8-9b#f#~{sGeCJl&>7_6|QQ-OgfarI_aAq zTCesYz4ZE%&V;C2QB^4~m``68=-=Od{;Q>Sl=?&GyZWt$pW3<|Yqu1om|H$IU|+FpwUQtEOpirl z!4261HD-(hX&Urd5vo1gr!QKJI;Z`9?KK|rmPIO(QZ5W?&p}s2q zrs~_qqWoBIJtvG)&^GMe6UyONR@Co?7+J$-TGc19Eay!7xF>3_m1$P|(fGBOQ`1)I z9eW#NAKHa|xqQ3v7q@*@D?K0R$XSt=2!dxFyQ$e>X>U^gN?812%L^Fpc=Yk;1d;+h z?AnrNh}4CtReX=P64x`;?=6uM=ednro<+eu-hs7;;Kw{!?MTw+7wdM z+mF_(Z(^=`#Xsfi-WgDMt?*Hy42FzpSzmBNSo!gkZbFxD%ns*#`@WR(saY=;RFr4G z^xoQ`xOi|Ln=`I2@p16TG~M3GD*dqQWuTgidV2O-zn5ud-d6Wx1Gk>uIN zwaJ~&W>j6w&b}hYBi`WN)g{5XBDi5J(io51e;76-ix{7;rm%S&3H?D*oIQ^tGt`I)x!NkL}ogJ$(q z)`FL_)3nk%KYMkxsCvtPu&8qO4fMI#n^n>Ge&UxY?{{45zYOLuYd&wz*<5_rX-cc2 z-2T}99X|3tixtSUf3wsUvtvgD- zP;!$VTXho}w)OYIyZ3Z_)ha!y0|18G=(di0M@tJlh0W9^Q`s({whxmd8bbjViE2`=D?BK2>4h^oS_kZY}MiIUjk4m!Y$hQ-6 zPS4|$z>(G&M(OWedxbX6YmVF4dm2dsP#mo;f=W5-fn0Rm0Pe2^f@X$%a3h9NPwNDLl{#OvUeAh37@ zLIPw^@&^n{QT7Q>f(^OJW!lF`p}`|87{}+Y7^^>*c-65hRg&BkazpfHO2=w?hMg` zkF`JI?l9DkIAZ7j4rgHhM;tx4_+nttN1tqPb@YKH{Th=e34cu36i;yl8?q=MPn2(e zNGCy*eA-kx6~7X@Y$X!842@WZLg-?VNGu9vXoNuE3{B8TLmU?S?|J`s-boz7n9X2w zE!k9%pd)$qk>wFCCA368W>^pYmOEtF3bgo zM8arjG!jJXpmeApZlE$PEhW`|f*xY&JG3|)E@T7-O+n&dXk8iwhM=O+Fc%tyCMtdx znhpl5gI-1xg=Ek(3H6_#t+=AcKo*%HAu|;5KQS=|%ul9>baDO(en@X|&f9=nMz8+6 z+f#qL8t+#UxV=2 zG`=^P3mUqL>iS>wjzPfD8b2bBUAq4(G2oHC{#gWQI4nX}^oAi&6f_KtMWbM31Pz4I zuvDrj#dRn&Bsdgdi2(k1MDbxHxc#Y5j&wK)sb7PP=JW5n_wPht#65}|ndJ&n3Gksq z4K4iW%>QA~C~TG&$o-Sj5%pV9=j4luZBy{cll121|8xlN;*IKQ~43OfQ-T zOa>EkrMR5LJ@Q|Vw4w`6^jL$JAY9zZ#dFB-UZOv!k1E6O=+y7y`+q7+MM)$IjR~)9n!TD)(ZJe9yEF@_pX#y}tkd`mXDHuIrg+=A8TYJLkFY``qVuuGwq9!b(M1 zOBnzF6>IVm3iMnhy%onmpN6N*+YL@|Hhs~rNUJJi%o zZ|~fr>^xaxVjS7&*0u^|a{Qk9#CaJWX8ZQ6+V8Z+@QqGQ%H_=g?QLzJAAQbhifigE z5tmK~ny5ZE?B#JUfI!)4M0~6hVn@DpH#uKpkAYX`Ear1t`#SESL-wOa;z6{K-%TA^?Cb-ee93 zPOAW|@2yFrfyb%gHJZTVsaOGKqmYOy&#g;c$KRPjmILw%Ba5S! zmt!YqMBdl(d)rZ0Kdb%*`+_-DbG{l=sR14r6{|am+@xSrG9Cc5ddjYUH8crrdfD*& zC9{d${{HsyuihOzIB8aA?boaW@}mH?6{YP}>lzy?75Mpb=Y4X$Q&$63&VXlak2|(n zDRGtZ{eYhRV#8k3nF+`23yfw=R~|R6Z4T{NHtNNG(l_jLUfuq{4^Z#d>VOVlLyT#3 zT3*ujFB_;_-?Nn9rovI?Xl{3t?$`XCTfPL(FRRC0ShGlDU#IKd412h3zW6F7Y{{&< zk@f1$TQHqEhrcL=`>6nuU3PgZu8h50$j%FVBPYLK)wSFgFb#Z%IG{By3{dmHVZ_}4 z5T4r;V!BWcD2_^g0RUOArmi^^p=onR5dfAXZe4KRZ0z{!lO=hoao1;LbIcz?hnCEJjuA>cAn(EZoY;ECdj#)o7;l|Xg zT}q?O3KS<%XA$>Iqy;~QmndpR2akeN$+$y7$*|@UYt;#&`gu3RyZp-z1UA5-sPoX!u;+;eA^ck)Oz8czj3DkDQ+4B2? zCbcTA-Jy1ay)87<%GJiz;?$g0-An43iY`jqcc5?l0S`ZAcWF+5de1F?8u3D?>r%|u57kNQ!pXB$?;dJcp*(9&D8_o6wKut%j7WA!CY7tP;%w%&gmUgaYf!ux zB!NYRrH4)kwLA3r?#+hu$;8`x>TQ&c&!!|ts4v5VCXJ&`9L1PNC!SteoSN`Z@$??z z(N)%*L|=QP!|v2cIG>m~#j#T?3X>5@758IU9;|LpWV0w!>FM^FmQnYk%DrEWZEkAb z{@!oA$}W}d`DEI>Y2MQ|PD`1ZJ`EXdb8_^9sOSPm)FX^`w8xPNM|e)I3qCB^q!D&c zJ(3vd92pqdblTBL=wwnMK0VIyjMIcOYn?ZrTj$ zx;XEXx-?(6SGJew7@%;9`k~X3}yS;3`{{H;KRfjhfjy`OAxLb0>ndB^X?s9%4v94UxvZ#eq z>B6?xc8MJyON=eNaw;u0?UrvWr*?Avcwi`b-!ucZuY*T+qHf}(Tn($ z*pwUZLYt6leb>6J{hU41?$5Zn36&^LLG`WGb=id**Aq#`;HQ#i1=1ao{Lz4;yK_$F zz-x_jbOS2`qXWnGCVXD}sqjn4$K2=Qw^KS-j9xEyU9M3sd#l#gKNY+cbVfywIx!YM z`rznmW02!X8s_7bRNQm~;k-P}x7s~)Y>mgFm@Vd0^ ztG%uWd_5#yYzmv+8k-T6aXMqG|L%{Lol)wdNwbyO_BPyle9L(63!!`yI|duq5aW1Q zL_gbDbNs62%jS~81V1A;yj$od!<|Reqb`~>ZikuMBd6Lmrf_X%OnSQ`cBh?X&hdlC zS6)cZSY~wSWxR9b2g9d}H(Px2+-0}a=MGlMjb_r2~0-5%k)Y7O>Io3f-!l(Y7#Q*4l@ z7W%KAy4pX3oK0T!5L?Uq`npGV+_ov3vO~|?XPp1@afZKJXB|A(^4b*L{SKObdT4h_ zCc~fAQNFp*v+&~KFZT7W6sNad;+nU?llHt_u z6;-j?dCLOL$aNCFe6LsmPsO*bF1jMAetS$m=|e#L7WYEuFKK7e zbDqqts?2@rxAC3o_8A(BpS4G{W?f$B@8X?pxw(s5{$|_L5G|T^X70N0% ze|4Nam$g6G^2sZ&Lip(8BR%({ z;_UW2t=j3_xlgBO%*pKf==-5f(@*)0O^tg%i2u3XoT@Lc$9|gdddsD+7r;DD-N*HL z>q~FCO=wqD+MVz<;@gAW&&#cftSWSu>K+V<*U`~d(aL_yC<%X_axrC6>AgVbZ{il= znWow=^`DoQy7oTq7}vAEH217H^_`&oOzJsezHYuwR*BfS^JH&YN%iLTjP}gh{A``* zdA+7z?cbGsqUWdFx9cV~ZTi}a?B4P2^PKXdSO74a&2n@Vx!T$g={$}emBFKddj1?f zBtrqf$i$ydrF(-S7!CAbagE{a*K*-77Q-0sg11H4@-0A57CArwIs~k6qz8D@2@JRi zN!iGs2oZ2V5f$doVRMBepo%8zypaU5C}*V28qESAPa<0%oS1n5nQ2eKgl4^5>QANu=pYtj|-FX zQfWLNkue-D9cbtpcrOlrXdtd|z;}=rk^WRZ60L_qjs#-RhcJ8}0lRN%3_22IgB*}6 z5<)oih&aflwzfmi5r^Y&MnnolmcGy%40vQjq|i~!2ayy|$nz1>L( zzYt|eM4@Cz`YnIpu!YtSgDRqqz=DH_aI!4l+5X7GW3ZUw-(nfIl;L2|iA0|MTVp+6Yme>Vb9SwW)) z%gX;t1cq~$?n&i(fD96H@TCSD{+oiP&!l1LSOci;8RDTG0E5FJs01d6py^Zf(RhNP zA&N#De80aDwBfzre?cSBd0bym@K@>`R8^^vSOo<_5>vqAz^Hsan?NmR!umJG@0H1* zR{L4WNY$@YY4s=OQt5J%?y3J;xIo$iIzbR+96l%>f47MK0RL_o4zM%+UH#ZUIT`p! z?7Y7#A^S%efo6ELLC?!LSVpZF4HYS(1&_@W*zy=432THLsab||xEuPf$-e)uCX$e1 zWe&5pw9rQr^z{)KJ+v&1jGYXR^gKp{6fmU5`l=@h!u-_sqrIzC$+CU=l&S#+1zkwA M^m70z+dTmN2YP-7^Z)<= literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553705DC67BC3D302B0846940-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553705DC67BC3D302B0846940-7000 new file mode 100644 index 0000000000000000000000000000000000000000..ab26f70ebb62c36dbb821880f51b56d5f0078448 GIT binary patch literal 7001 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 J$NyWp{s+s4S*HL1 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553F5B7D67BC3D224004FF650-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000553F5B7D67BC3D224004FF650-7000 new file mode 100644 index 0000000000000000000000000000000000000000..9e0f195f5585abf073e05ebf267833953cfbf9ed GIT binary patch literal 7001 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 GUH<|}!oYF> literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000556821A267BC3D2CB10AD9A20-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000556821A267BC3D2CB10AD9A20-7000 new file mode 100644 index 0000000000000000000000000000000000000000..9e2d55d3ea957b6e922819f6349a4c664fd1846f GIT binary patch literal 2432 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 W)%Pk*%=FyHG(LHu(>acr?)(=9FqzH( literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000556821B667BC3D2ABE042C2E0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000556821B667BC3D2ABE042C2E0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..4920cf32ea99d5c4be45a46f6d8a3d0ad8c1a7c1 GIT binary patch literal 2405 zcma)5d011&7Qfjbgf$33kZK48jRKbh5=byeNJJ5W5;iM~gyaGdZ*ob33G%AqLq!w| zf`|ximDSP(5fu=nQhilc@sx4F<2kM{OZ zTCLVg>*J+VrGX3%hhyYmGCk1Y?r8XgU; z^sghp$a~tqy{nG`MWX*53d6<=n5I>0#L$O&|CU%CosB@C7*Z>lPx zV6h*EA@mn`vxLD6#$r~mfEmK~_7U<~-XTl|TksAmR7$g8NTGR$m3_bpKZ!L;0Y=cw zLP#ZF2gyQIN|-u*WUlV78b^C zZA~UyTRTuF6bHxmhA}ZQA(@fvEG_LQWGgb|{l@=0F`NU)M1Tn}aTqdyC1Y@8jG+tI zjn+rNU_N|)z!Zlkm=Lk34~zTQ4`A^C21l>~Fjzc>NFbV;{RP5caR3=luytYZCCnK< zCXtymJJa0a!(!JcU)B#P0;zoru`^iJ6ispPn~7#d4TJx{j3HxPa12{KKa<9cJUl~U zxCL0CyI3-g3@ie=?e%+7hYp{~)@emMAJh@T$0M+H?hB8$6hPbV=4_0k=S}TbUpFb= z)fxMB-f5Bf_`J|axY`VN8JVuUL^`dh| zoaf-$gQ=5Idmik%R&Hw=vGa#&H%^E)v<~brryZzynkCXg7v#1@LpOgs8RWk;ITQc$ zD&~a^P{%w=^9PA-wVVwJ2H;BDUc#)v4!97h1kc@|TB|elYkoTY)h%vOktUCd0fkwz zP}f^w#|uGBv3O$pKCFws`>Jo(9z6uo1Fy+s`>ypMVBmmt)Ai4j$W2 zN5=LX^?w?WYZVbD4&PORGo$oucXd47`%AN4ejr|6Z@ZFDzksRSS{X>{w)j$)oXwUW}k3wfUCdp$7h!SXwQIv#1FPY!ynjW)>+H{w-CT>Xq}k3T z-(8${$#2qWeON&qy==CKCWz>;xPDSySF7JFb2$T_@ECm>6PxFACnl%&xz_Qj`3?PM zeeRRSt62k-mPJH z>4vp6VSVc_!;Lqh`eT_b0~@Wp2Ue6Zi-aTC;UKtSU%}l;?J1v}ul?eySx{BPmN>UF z_m%ag&0?!idrkhpAGUdvlN|8iz1f17F_p{p_Q&<3-H-YmrX0DOgk$c!id?7rDNfS! zR%w3w7ua2?r?*G?mLqW@9%qHX}Etb;pkQiqz6>n@cA^d2+fw7rJ_k zF;<|R^<~e2XZB@&r1)yjruh|a{s)sK;-V#d+XHovbgj4gOZJW=u6pHsYhn6-NIhE? zoIY}P-R|7GPGJqD)y(E0awoesptC|pOnA`ih!qPb!S!dFBw+vh9)a27OHa>NJ x_|=*}z^>8P%Uj0}jZdAi7`s@XUp_RK4U>C0`HF{jX;*6qd7cli+H5ln{1>(ahc^HK literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000557A941567BC3D7F2B0633B80-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05100000557A941567BC3D7F2B0633B80-7000 new file mode 100644 index 0000000000000000000000000000000000000000..ce7e21f73fc39d15f2c1fc3bc55a4404d5c66676 GIT binary patch literal 3062 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005583663E67BC3D341D028BED0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051000005583663E67BC3D341D028BED0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..0151beee6e9e89648fb2903394526794821f3282 GIT binary patch literal 7001 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 G^M3${w?|w6 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558365C267BC3D28E2014B9D0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558365C267BC3D28E2014B9D0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..8b11a8557c9471465bf59753ca387d4d452f218b GIT binary patch literal 7001 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 MPmzXdZ~D^pKNpQcO#lD@ literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558365EA67BC3D67A20737D50-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558365EA67BC3D67A20737D50-7000 new file mode 100644 index 0000000000000000000000000000000000000000..726145ed109bdfe730c763b398b8b90bfc0be079 GIT binary patch literal 7001 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051500005583850C67BC3D22B40DD3C40-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051500005583850C67BC3D22B40DD3C40-7000 new file mode 100644 index 0000000000000000000000000000000000000000..fc0e37bee9a31f2028bed9fabbe637775bf53921 GIT binary patch literal 7001 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 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051500005583904D67BC3D29510BD4250-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/051500005583904D67BC3D29510BD4250-7000 new file mode 100644 index 0000000000000000000000000000000000000000..20379c78e339344692affead83c3273cc934f803 GIT binary patch literal 7001 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 z z`;o}Oq;h61TGL9qhJ8;RVwhEPMoVd=gN8b?mR@3hAsmeo9=z6`^J4AY*|??fu3XYA zMp6Iz-c=mHS!L4E_3%XXuiMiO**>Vy1rZ=W%S}5=mmV z%A-yx&oZl)<}X^@U00sE?*6z~0g3!d;E=Ete7n0mgDok|UEkELU2!_eESj>RBNju| z0fqsmq92nQ<&+9o8$Ts%ooKga^+qcKb#EbVDx%SI7jvAx-&7s#Jms(eiX$}Dly~1A zpBOZ^Dy%G_3Alb9)V^B-XG?mBm9vCUT)CeG;=4QMIIgjdCfCBoWBZNo`x7=PpHlve z87}4s6G@1@Dz4ZQ;2tuXIgTj0woz2wU{4}6`ehBX$aX=38zTCmM<8z`(+2Q87CZ1R zMTk%nwz3@-4Pc0@3mw1ip=vEr-u?r>|M9>iYGfxxb(viLlC^PQNM2r(IH)}-rgw_1 zxSR97kqOjvPDghWSe5_ETq%JT1=6)i)4G+O|@s8FTT_B$}Aox!578ZOw}*v)N&;3ijpj znAI<%T+DX~ub7(P2}ORNg5Sh$zlG5)gdcLBuf6^%JmEFV!&i0^{}RnxKO`FB;1#P_ zHm<>yN9hvOd7W2MUME=)gABnC#^VJI8Hy}9C@S_K>!?(Gjlh&)VxZmFZ6cXpfaZJ0 z#QLeijvQsVA6dp0Y{9a3_F7dL&Fu~FYgmuBz5k=HVX`IEPRz$>;NHG$%qu^398`m2 z{w4E+J_Dt>DX+-4w2F;OJ%9K@>)W#KqCQC-Xm(i4`RzAJ10km3)5Yp~ZP$QSWq3`wQ3j#BNl78okwj73X0z#U+-62O4P= zc3C+3fRXRt{}vw=_x1K7+|Bh{7j0l&#&hp};6{Mru2fJZ!f2+M+!14B$){|KS$!JU94QTlKLFBTfw)1rE+MNrd58`C!5 zmVvysq4-4%!gqAW#Cy>p&aBqjbqPOg7*||MCKoBJJ=jxB{>w?tp-hB-L05n4MD;h0 zl;55)Z{Otw5qpe$bCR+7_l0GflL1Hehx^2qKYdKKGXUB!{h zE7ZWV!C2`Xdb_zJi5<>y@w)mK_MLk9q;wEUqRaEX12NCMA z^o*HJ5hqG>3L%rED9IBidYJyLff7XL(hIG9u+ubibx1|QCMzXGQ!U#3m}=2ENzSI9 zY8^&4wWqrueQ;uqcsi2U1Zhv&BA-t|^DOy09puC75+s?%l+_wNS;}Y!_wj+;u3Y%B zC*Aq31bhqnH0&(Vdsx;tF++!@;hB7kysWkuUV9AEcl(^vSC9R7O?%&s-Nrcy9fhiW za-dFHzl5s;Aqbz*t`gczi>h=?mVDXqh%%G#<#zIba ztsuvqj#{+YZSx?!O!jGH`XLH8$RsNzinTCG>sV#$kBSPU5fy(C+ z(KAj5Ji;yCtMiCy@u^FoW}5zKY~dre(r;sn`Qkp3h%Z!P>{kLR??iqzQE50!c)Zmo VD8djVDUhlDG3oFd-=p69{{bnJ89)F4 literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558393A567BC3D189B076DAD0-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558393A567BC3D189B076DAD0-7000 new file mode 100644 index 0000000000000000000000000000000000000000..12bb53d07fe7fc06c00f92ebd642c9e726dd3a32 GIT binary patch literal 7001 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 K8%KsRe*6!9oZL|W literal 0 HcmV?d00001 diff --git a/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558393E567BC3D441F0F22C50-7000 b/1_7.http_proxy_server/python/my-twisted-connect-proxy/cache/05150000558393E567BC3D441F0F22C50-7000 new file mode 100644 index 0000000000000000000000000000000000000000..6547196ecc3468cb6efa29bef573c976cea9ed15 GIT binary patch literal 7001 zcmb7HcTiJJyHDsKU3v|@_g(_hA@ooML_&xVAR&;@L7GyO4w0@RT|kNy1qDTVQA!Z$ z0@6WHniTcod%ySn?jQHNGk4F-ncY3V@;tlGo|*mq>Gx*LFnMzr@uq`+ufo_(6X`a6Vvuoj!@|MI#Vf%*THRB&*x zbg+W7Ux25KoSK^29}RhVsY`?uHWZD6g-D^X0)H#$Be3uQBnF4{LxcV(!rc7=abW(- zNdG$p6y_h<|8=eY2hiO7|AwMae-_{`Su75U_; zd}$=oLtRH!$3RC}MNLjwPDf78KuJwUM^RTtSxr}0UQbt6SLJW6z8^dgg+Sx}=6d{_ ztMebZe+mJGxpdY?1R#SD9)~xHr+?;IOENtv-e?)+nR5DVsD`aF>*yw5K z+5X?{_Zt8M1pou+Ck8SAh!}vx48Y&r0B!&PNP2nXf&ZLta^lMnDTpY6fXmN@^Z?+W z&`C&$D1a1KEwxnFM0UnOQQ56?FA%+#B95?f;$uP!j_$Ga+UGXajgfdiR(affNQ7(?bAz# zc9$?>x*r*|0(5z2dn*;!pAw^;aXk;^2Ll?LYe(rGZ|b=w4bXmzDPIMTPE4?U zSi#?>(c-2*7nI_ofQ$0qfYZv7&Gy^ASMgDDIxCZSrT%rg!o_hn?VTy!3MsDp> zAw?;*1vbUDA z2Q-=_6K!=STNFV_a@|JHPDIC&XVvpW%E zVC`O|R_8SdY`()&09TrI{K+m_tAfK?DusG$7w`^C!q~-0{DzGxd?)Njou986`qZD!8d4P8<9NEN<|Ya-0@4hmL5TUhDTAZgQTIlFS%cZE+!a_-XIjm3C z?j1a5voT>aqqCU7FctHCCY2<;C5>UVe1Mcvs+Q7e6!WBpx6H=yd1f%@{7#E3m($q5 zKq^8}R_E}rJlMcNzVV_z;{gN5BD)y(oKO#M0QRD)&(L^bMTO~>Vk>>Ln#Ja>nJe`T zO0HIxPhA#ZuU_er$^*6w5c2qCFSc+mAF8N&ugoZK0GXV_v}8fv1=#Z96p3T*+D;Nc zyDLq91ifhF4bo-zjjLZ%9VkUG$9B=RrVCFshFC7mZDScUlgNy(iAS^rl%yPQh$jY0 z+~>KKadr#r#a_bs;jRVubz+Q={HnJ1>2@^+tR6qRa>jy9ApnR|pa zZ)qzyESeFN+V36J)OzJZI^zM!LK!%M zVkMtBy>DbcPi)?}n?jdVhvSLl;~gOZ6qYuz zw}5I-SiCRT!xOXTPf~A#zOIVzmA!Cp-BBUccj3&3X&s1=j+VZF-o9C_c4qgGF$as0 zCwF{4R)*vy6DoVr_e?--Z5Ta)OJ!~o?z$#2Mdd5_^T1&ex*B9QFq;Wn<7nz+{}CD( z$k41+sO-Sp`fx@+-sokQZo;RDT|?_WS!8+*Y`m{r@nYLKm|ML)A~!9Lju!0b(d^5)g6bFn27Hx~<1Rgdo}be>(d3DjAdYBKVs6>Rwz1v{T|wur)Xj1D zrZ*c;U&E2Zk9$apDAJ6%`il&NAW)DIP)a!fptfecWe#ApsF2~(^GuMT`S^=}M$m`G z?MvDi@;X{F2tTw=9}LA$ao3CUS`CF6p>8AYvOQhIN%?a|hf(pQxPZY(^wj}Uo$gE% zQ1FP|L=G~t;ej5FQmvUrRFj4e0gBoq%EU7*H{l(*(6%?MYnwdC<#_j-2a_Z77r(Ko(ZxI>?=bqe?Wsd%r~ zuA_Ihd}d8T&1)j8r+cA`A6}lE+B}+3VzsIc%p`==4Scsn@-g*8~IfHqZB4? zjc?i0+`o4OjLjwplk|40nA}!piOqSS`~@1LX6cfeptQ+riJOrf|8V`S-*-ZQDwhsf zY-cO6^)@&hIldX2s66?U3W}GieD-1m6_+V%!Bhr^HN2@wu-}b{r%