From ee4ca9f3daa9d1f3efe621b4086b1b61b4d18bee Mon Sep 17 00:00:00 2001 From: wk333 <13474090681@163.com> Date: Wed, 20 Jul 2022 17:00:53 +0800 Subject: [PATCH] Update to 0.9.5 --- rubygem-timecop-0.7.1-Use-minitest.patch | 253 ----------------------- rubygem-timecop.spec | 32 +-- timecop-0.7.1.gem | Bin 15360 -> 0 bytes timecop-0.9.5.gem | Bin 0 -> 17408 bytes 4 files changed, 20 insertions(+), 265 deletions(-) delete mode 100644 rubygem-timecop-0.7.1-Use-minitest.patch delete mode 100644 timecop-0.7.1.gem create mode 100644 timecop-0.9.5.gem diff --git a/rubygem-timecop-0.7.1-Use-minitest.patch b/rubygem-timecop-0.7.1-Use-minitest.patch deleted file mode 100644 index e528db9..0000000 --- a/rubygem-timecop-0.7.1-Use-minitest.patch +++ /dev/null @@ -1,253 +0,0 @@ -From c30897f67ad90f0582c0ed0d7b78f46a7142f113 Mon Sep 17 00:00:00 2001 -From: Travis Jeffery -Date: Sat, 10 May 2014 01:16:30 -0500 -Subject: [PATCH] Use minitest - ---- - test/test_helper.rb | 6 ++-- - test/time_stack_item_test.rb | 10 ++----- - test/timecop_test.rb | 40 +++++++++++-------------- - test/timecop_without_date_but_with_time_test.rb | 10 ++--- - test/timecop_without_date_test.rb | 8 ++--- - 5 files changed, 32 insertions(+), 42 deletions(-) - -diff --git a/test/test_helper.rb b/test/test_helper.rb -index 2d7852e..e2b059a 100644 ---- a/test/test_helper.rb -+++ b/test/test_helper.rb -@@ -1,14 +1,14 @@ - require 'rubygems' - require 'bundler/setup' --require 'test/unit' -+require 'minitest/autorun' -+ - begin - require 'mocha/setup' - rescue LoadError - require 'mocha' - end - --class Test::Unit::TestCase -- -+class MiniTest::Unit::TestCase - private - # Tests to see that two times are within the given distance, - # in seconds, from each other. -diff --git a/test/time_stack_item_test.rb b/test/time_stack_item_test.rb -index f654fa1..3658127 100644 ---- a/test/time_stack_item_test.rb -+++ b/test/time_stack_item_test.rb -@@ -4,7 +4,7 @@ - - require 'active_support/all' - --class TestTimeStackItem < Test::Unit::TestCase -+class TestTimeStackItem < MiniTest::Unit::TestCase - def teardown - Timecop.return - Time.zone = nil -@@ -204,16 +204,12 @@ def test_parse_only_string_with_active_support - end - - def test_parse_date -- assert_nothing_raised do -- Timecop.freeze(Date.new(2012, 6, 9)) -- end -+ Timecop.freeze(Date.new(2012, 6, 9)) - end - - def test_time_zone_returns_nil - Time.zone = nil -- assert_nothing_raised do -- Timecop.freeze -- end -+ Timecop.freeze - end - - def test_nsecs_are_set -diff --git a/test/timecop_test.rb b/test/timecop_test.rb -index e954329..e5f7d79 100644 ---- a/test/timecop_test.rb -+++ b/test/timecop_test.rb -@@ -2,7 +2,7 @@ - require File.join(File.dirname(__FILE__), "test_helper") - require File.join(File.dirname(__FILE__), '..', 'lib', 'timecop') - --class TestTimecop < Test::Unit::TestCase -+class TestTimecop < MiniTest::Unit::TestCase - def teardown - Timecop.return - end -@@ -60,7 +60,7 @@ def test_travel_does_not_reduce_precision_of_datetime - # requires to_r on Float (>= 1.9) - if Float.method_defined?(:to_r) - Timecop.travel(1) -- assert_not_equal DateTime.now, DateTime.now -+ assert DateTime.now != DateTime.now - end - end - -@@ -113,7 +113,7 @@ def test_recursive_freeze - end - assert_equal t, Time.now - end -- assert_not_equal t, Time.now -+ assert t != Time.now - end - - def test_freeze_with_time_instance_works_as_expected -@@ -124,9 +124,9 @@ def test_freeze_with_time_instance_works_as_expected - assert_equal Date.new(2008, 10, 10), Date.today - end - -- assert_not_equal t, Time.now -- assert_not_equal DateTime.new(2008, 10, 10, 10, 10, 10, local_offset), DateTime.now -- assert_not_equal Date.new(2008, 10, 10), Date.today -+ assert t != Time.now -+ assert DateTime.new(2008, 10, 10, 10, 10, 10, local_offset) != DateTime.now -+ assert Date.new(2008, 10, 10) != Date.today - end - - def test_freeze_with_datetime_on_specific_timezone_during_dst -@@ -185,9 +185,9 @@ def test_freeze_with_date_instance_works_as_expected - assert_equal Time.local(2008, 10, 10, 0, 0, 0), Time.now - assert_date_times_equal DateTime.new(2008, 10, 10, 0, 0, 0, local_offset), DateTime.now - end -- assert_not_equal d, Date.today -- assert_not_equal Time.local(2008, 10, 10, 0, 0, 0), Time.now -- assert_not_equal DateTime.new(2008, 10, 10, 0, 0, 0, local_offset), DateTime.now -+ assert d != Date.today -+ assert Time.local(2008, 10, 10, 0, 0, 0) != Time.now -+ assert DateTime.new(2008, 10, 10, 0, 0, 0, local_offset) != DateTime.now - end - - def test_freeze_with_integer_instance_works_as_expected -@@ -202,9 +202,9 @@ def test_freeze_with_integer_instance_works_as_expected - assert_equal Date.new(2008, 10, 10), Date.today - end - end -- assert_not_equal t, Time.now -- assert_not_equal DateTime.new(2008, 10, 10, 10, 10, 10), DateTime.now -- assert_not_equal Date.new(2008, 10, 10), Date.today -+ assert t != Time.now -+ assert DateTime.new(2008, 10, 10, 10, 10, 10) != DateTime.now -+ assert Date.new(2008, 10, 10) != Date.today - end - - def test_exception_thrown_in_freeze_block_properly_resets_time -@@ -215,7 +215,7 @@ def test_exception_thrown_in_freeze_block_properly_resets_time - raise "blah exception" - end - rescue -- assert_not_equal t, Time.now -+ assert t != Time.now - assert_nil Time.send(:mock_time) - end - end -@@ -252,7 +252,7 @@ def test_mocked_date_time_now_is_local - if ENV['TZ'] == 'UTC' - assert_equal(local_offset, 0, "Local offset not be zero for #{ENV['TZ']}") - else -- assert_not_equal(local_offset, 0, "Local offset should not be zero for #{ENV['TZ']}") -+ assert(local_offset, 0 != "Local offset should not be zero for #{ENV['TZ']}") - end - assert_equal local_offset, DateTime.now.offset, "Failed for timezone: #{ENV['TZ']}" - end -@@ -442,7 +442,7 @@ def test_mock_time_new_same_as_now - end - - def test_not_callable_send_travel -- assert_raise NoMethodError do -+ assert_raises NoMethodError do - Timecop.send_travel(:travel, Time.now - 100) - end - end -@@ -466,7 +466,7 @@ def test_datetime_to_time_for_dst_to_non_dst - - def test_raises_when_safe_mode_and_no_block - with_safe_mode do -- assert_raise Timecop::SafeModeException do -+ assert_raises Timecop::SafeModeException do - Timecop.freeze - end - end -@@ -474,17 +474,13 @@ def test_raises_when_safe_mode_and_no_block - - def test_no_raise_when_safe_mode_and_block_used - with_safe_mode do -- assert_nothing_raised do -- Timecop.freeze {} -- end -+ Timecop.freeze {} - end - end - - def test_no_raise_when_not_safe_mode_and_no_block - with_safe_mode(false) do -- assert_nothing_raised do -- Timecop.freeze -- end -+ Timecop.freeze - end - end - -diff --git a/test/timecop_without_date_but_with_time_test.rb b/test/timecop_without_date_but_with_time_test.rb -index 9531afd..5f47a31 100644 ---- a/test/timecop_without_date_but_with_time_test.rb -+++ b/test/timecop_without_date_but_with_time_test.rb -@@ -1,12 +1,10 @@ --require "test/unit" -+require File.join(File.dirname(__FILE__), "test_helper") - --class TestTimecopWithoutDateButWithTime < Test::Unit::TestCase -+class TestTimecopWithoutDateButWithTime < MiniTest::Unit::TestCase - TIMECOP_LIB = File.join(File.dirname(__FILE__), '..', 'lib', 'timecop') - - def test_loads_properly_when_time_is_required_instead_of_date -- assert_nothing_raised do -- require "time" -- require TIMECOP_LIB -- end -+ require "time" -+ require TIMECOP_LIB - end - end -diff --git a/test/timecop_without_date_test.rb b/test/timecop_without_date_test.rb -index 018a2ff..a6f9a0e 100644 ---- a/test/timecop_without_date_test.rb -+++ b/test/timecop_without_date_test.rb -@@ -2,7 +2,7 @@ - require File.join(File.dirname(__FILE__), "test_helper") - require File.join(File.dirname(__FILE__), '..', 'lib', 'timecop') - --class TestTimecopWithoutDate < Test::Unit::TestCase -+class TestTimecopWithoutDate < MiniTest::Unit::TestCase - - def setup - Object.send(:remove_const, :Date) if Object.const_defined?(:Date) -@@ -19,11 +19,11 @@ def test_freeze_changes_and_resets_time - assert !Time.respond_to?(:zone) || Time.zone.nil? - - t = Time.local(2008, 10, 10, 10, 10, 10) -- assert_not_equal t, Time.now -+ assert t != Time.now - Timecop.freeze(2008, 10, 10, 10, 10, 10) do - assert_equal t, Time.now - end -- assert_not_equal t, Time.now -+ assert t != Time.now - end - - def test_recursive_freeze -@@ -47,7 +47,7 @@ def test_exception_thrown_in_freeze_block_properly_resets_time - raise "blah exception" - end - rescue -- assert_not_equal t, Time.now -+ assert t != Time.now - assert_nil Time.send(:mock_time) - end - end --- -1.9.3 - diff --git a/rubygem-timecop.spec b/rubygem-timecop.spec index f06ad0a..ceb2dea 100644 --- a/rubygem-timecop.spec +++ b/rubygem-timecop.spec @@ -1,12 +1,11 @@ %global gem_name timecop Summary: Provides a unified method to mock Time.now, Date.today in a single call Name: rubygem-%{gem_name} -Version: 0.7.1 +Version: 0.9.5 Release: 1 License: MIT URL: https://github.com/travisjeffery/timecop Source0: http://rubygems.org/downloads/timecop-%{version}.gem -Patch0: rubygem-timecop-0.7.1-Use-minitest.patch BuildRequires: rubygems-devel rubygem(activesupport) rubygem(minitest) rubygem(mocha) BuildArch: noarch %description @@ -21,30 +20,36 @@ Requires: %{name} = %{version}-%{release} Documentation for %{name}. %prep -%setup -q -c -T -%gem_install -n %{SOURCE0} -pushd .%{gem_instdir} -%patch0 -p1 -popd +%setup -q -n %{gem_name}-%{version} %build +gem build ../%{gem_name}-%{version}.gemspec +%gem_install %install rm -rf %{buildroot} mkdir -p %{buildroot}%{gem_dir} cp -va ./%{gem_dir}/* %{buildroot}%{gem_dir} -chmod a+x %{buildroot}%{gem_instdir}/test/run_tests.sh %check -pushd .%{gem_instdir}/test -sed -i '/bundler\/setup/ s/^/#/' test_helper.rb -./run_tests.sh +pushd .%{gem_instdir}/ +# Drop Bundler and minitest-rg dependency. +sed -i \ + -e '/require..bundler\/setup./ s/^/#/' \ + -e '/require..minitest\/rg./ s/^/#/' \ + -e '/require .pry./ s/^/#/g' \ + test/test_helper.rb + +# The test cases must be executed independently. +for i in test/*_test.rb; do + ruby -I.:lib ${i} +done popd %files %dir %{gem_instdir} +%license %{gem_instdir}/LICENSE %{gem_libdir} -%doc %{gem_instdir}/LICENSE %doc %{gem_instdir}/README.markdown %exclude %{gem_cache} %{gem_spec} @@ -55,5 +60,8 @@ popd %{gem_docdir} %changelog +* Wed Jul 20 2022 wangkai - 0.9.5-1 +- Update to 0.9.5 + * Fri Aug 7 2020 yanan li - 0.7.1-1 - Package init diff --git a/timecop-0.7.1.gem b/timecop-0.7.1.gem deleted file mode 100644 index 66866a045ed050355ec2d77fe6463b9e6b8a785a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15360 zcmeHuQ;;T1m*!ixZQIpl+qP}nwyVqNvTb$Qw$)`DUBb5l z4 z-M+Tv{cc$ESfDjAM=Je=o!yt^B%rV2u=3$|8bFo5YBacUSq#F97{Mp!)uq83b<*za z#4W9DyKce12l){Q{0Q72ey$G<`{E=@^!B@K047k9@aav13C7v9a`NRtNTZ68gsPws zKE~>L;CvWQN+RNoCR<^@0utkk_Dx2ImK7U&oSBbdY)jD$Z1bjYXE@kd557|&NQ4gMdQ3Ql zd7?3CV!e|`2at`ql&rY)@n*Wh_+!D^RJq~_I#iftuK zlau@Xcs8;Rx4JDDxho&(@5|=p{_fFVFud_SvB&H2o_w9}H}-vcb`-A4`zh!+i#Rv8 zagM|5^L6rib{9UBpn#aL+snoC2K51Xk((2uM-=P^Ha|c!1W8d*EL!o>^!$EzwTJP! z4Lmt}wYtk4G9W}yKt7QLbk6NuxFyKTBN@`o#|v>MrBLB4BUG?6Q5Y0bB2iZUthH2ZCp-lv-di`Y zWjfFQY2AD=^aIY2W+tq2Py56kMXr*|pGpV1{@5Rau)0cx4~jS5lej-Fdwoi2faIV+ z_9QfD6Bn;&mw;gAT_7cN(Z5Bd+#3n!jk8csE0~2_0-sk81T7{{jTCw@KN}gNiOQ-{5185P%vf5=UUb11uP+1LsflMy)HmSDtr|JRX`xP^s3t5q!$LwXc$yBM^5KJYGRr4)Osy-^;)T&HS;jJB zLouh#a%B>-rOXxWW8ev?bH+IsX#kqX8`*&Yj+mG;cFu@<}Z-TOfovX+*|~L zDl0TTP<*k%h)~XArYB?XGA^stw1xABEJ2=8Z zu<+x5qiBasgT*eJQnQWYvK2JUg&0idLlw#P*S#i_C)%+FF+&ZdP7}XwV8gMJCgO^O z^gEafQ{lV#6lv-D*$Be)r-Hp{2PLH$FLxdX#93HpD&R{TfVR;K zfLx@oOfEp$p@B271@ZJ9HAawG!JiQIMxC-qiimIqnJjqaIGMBtr9xxUYKw`4&Wk#u zixvGWDJX+flHgYv29@Q|o?cK3i^0Q-`xt`h$~-_OmY6eg526FdHi1+aWP@rF=^Ed6 zEPka$sfl|#Hn|wPnl`c^l|bYV@v#g5yjFU$;qT;y9;;X9GC1)qG|2bcL<%E@gp1-t zEG7yT`7H;;aBZ17q7inP?uk}!jY{6&FRu?Pc0fh&IJVkSV>?gw_Iv&~`%@Y?(X$XD zSkGS4p`c{^8e(XZ6sjHtLd{r(>jGx8N`9^<+^JE9wVq*Dy%d1~XwU$q;eb0x^siXy zjm2aGNX;1WiVO_gfffS3iyA}{(Tv1V-lPC>6frkae zOo{y@4NU%0x9sbkigKD&?YjL7=FWjsAIb%5O)o^`hndpy`p6waRU7Bzd^EIa5f#GG zQ!D@KCScHS;yUeMJiKp$Ac46Y)SCZOt-=^CEfcatBUq+H(Fw8+1$@x#s9eCBon6DV zN`oFVoDE{1vQAfe;nm~-M7aV4(U~pL`FL7~i?5)`fjIaLIbcYM5Gv!BL|=-$-}NXK zPN+CZM#tWO4*{0f08?@zLd4OsE9#!x>?uvYK47d9@zR~gu+gD>cjMfX#}3GDn-r9i zP&i_;mBSID<|#9aJ}&|*I*W`LcGjQ|Rp`l!xaF(`WiCDuKF?X(lFQN!5{j?c(_jJR z3rY!^Y3b!NWSra>KEJGjs#Hs92r|iL2?&9?AXam0-w*;NMJPO!VQTymL&o!R!uj|y z8VG3%D|NZdRx33&@PO+nDS~|w>okc*f?}lOq@(y4$TaRlTq~oBz)@yV{>3TjAisCc z{M!&^zhx3|0L@8f;cB-$zgKn0$(9Sc6N^oqETX9-RL6Q%&{vy@G~xBrytK)pQ0b}2 z700w*7=ru^sgn&LF8}S$m4@%=82ceTi+L>|8p?@6b zzN4X<1vF>SNZ^#l!H(J+;VoV=N^MFWDJNeFBWuJcwD9|WNDZ%0pjuJ* zaCtnLxBg=Ah6C5NE@pVL)gMjh!rFj&S-GlRpvv)znSBt2~*}OGEP*`{4W^c`i zRTa(fn=^N0Y+(bbfjlYWNa_3C1tR(B>PAE7Sb;yEIo_YjC&mV+E;F`8{%gb z%1whLo6-1YHnYU+sE-GrC>CvRuVULH5ePWQ?wg3e#NC=Qf~mB-VtK3 ztO~_&UwhRu@9^QaU!$iItRBcik+}#Lt6=Hn|M0;|^eX2(z+Qh-%l`d{`mn9=ef?2o zzIT!s;%-#lU&4stJt^I_U=uVQq&o=W-h@mlCL9Hl;zAtJ7OYn*#5K<=!onuh>?*`K z-ibwD`=;k4yJE1nU5^=AHMhK*vxB-)^|51#LuU;AfDAPT4MlzCPXgrnYrQTNvUtO5 zqa)ywwlTc%5`S&bCfr~%(93NoSN?0OheKPtIqDtB(6V>kH_BJ(; zpc4@Vt12)@RIT+&n~q;?2vI$tJ)3ez%wlAS%a_a)(vboNgWFVcVpz#7m*4Y@CB*=`PxyiRl zA{TOAS+ZYCIEAvrSY{jW`XO2Q0hp2uu^J$8q3C0X@>g8KXUa0ng{bgG5NPRnEPViT zCS(ZGnWF~=lch7%Yf5a)Sf#oRr4ny^NtO`rW~ma^LWhPCy-V|rebP|HfdZHOH^6{Yqyz%C?`*7CC${5z%G!rt zt%HxU0*@+!zh&Y)S)h>^(C)+E{Lm3NN18YD6BJ(zy&RvR>bJ!+_BfXj{rBHMZ2X3A~#e5*_&vQ z0-%HkNIoAM2p>v%GcY(TR%tYP)a!KQ^heHTvEWn>I0~nN(q3=7pLQ`*!JPSg z8-AcuFJ)T5)t>}4OwZ^}J$c)MoA#p@qAVm0eV^gKe-+H~s~kJ9Rvs$ftRs~b3EbQ? zoWKb@V=c8PLUO0s$&8cTLtZD|R%Q_quH4@4g(epvIv&JETAPM{-~Q$C2Ikv)y;cAP zM{BM>~!LQ5v zeAVszh>6?K^H7Y#KwDqlz;C3J-PyxeAU2VGbG*@)Ri+a)oKX)#c?X)*SWNUd`l`#2(R&WRz(UJrZ~tN+Aha+|37pEs0VQjbrBm&72&c*I6DcFh(T-=Cus%+2p{>=o(A zh&=TMie^d=0%_w$Th-zbh+6g`@n=FJ-4p9c7=I@_CHj<|XaRM@11!!g7ip=Ai(U#n z45GR{)6DHLmgc&5_*jy7TXRl_9dLo!hIFCUVjUx&A;cN4Dk z+Jm&DvdoQ8Q_rP`10)WBV1MF`KXOK2VcXtox10e_X1jd1x$6xz%}ne$i;DV$Y7`br z?%p|{wik0n7H02q z)mlO*Z50xN;R>^_kCjyCP@m{mf}s;c6W_jVt!aip{!4+;K))PCi@p7GwuA)8Ei417 z0}Pv~LZY#DH)?cAxNF4d8=MO6OZp$#Cz3JgWTA{0v-RA=Au=_a2$zz9oU+Equ0TEue-Vr?Qthy!%u(vm>?SWeJn*CjX!mR2YDG(Gs*XGblYf#Qo*Ph)>uGds^8UE;l5SU zWk4$tDFX9Vc^hf`lpf%)^KO{<66DfZITHM1AmoBH^KM}j@o6l@Af7E(TW!{(_CZ!z zfwqyYlfPb3F{HLwQbQxPQe49X?adRnEF_iO)_n`XYIlAsGx$Sn_}{I{QUnr0t@%LE zA4v!cN8uEt`{aPwwfby1MA~2A-b6*B5T6$B4JpmfiE5FKURYmRLwyHqRw8e$=r2O& zU>Ne$w9C(Duq*Rd4>3(uF+)M~xrYuv=C@xpinh93+@{j=U=c8?nlhgUM~;Q#bRT$4 zSF_T?EzgTqUK>25ezL4Nc9bl{K!z7nVPc?0?UtY)XeJLQJbbonQ7ztY@b&oDWp}{} znTj8t){>!68go>A{ph17A=Q|b$KS-8qn@z8PJO!Li=U{(yu(JP)JzU;WB;y1<{#@l zbq`l>8F27&93E=?xe71qtKLwCga-A^8jKmAA2qR2m0Or7UltvkNMg zusSEoy1`zLI%BP%J+78EOs2R*sgCd%w*ZW^=Mlw%NXx3T0c?z}2{Qh>TtF86?Id8iwvAIv?OjB$m z?p#H#sZ9$Bxg6-scG2S%Mt0#HEa42eDs`-9HGOOq;qm#M5-wvhXlm!mgL6Iljk0!H zrxe-vM3^9? zKdos&jZ+DHt`)Jcv!U*$^}r`j=q)IezDj?B^5)5aUwM;^VtCmdsK$~$FVr4Wk^j!0 zolWyABGKl7R zOgaD)cd6>#J!b@qRGG!HiQ#Z_vH*lsD0dXV(RXN z@i(IqUn@!rA$J0@s!L4myoMC&<1fF@HYKYeHMdA zg^|=bqnyOnX@ff_t^s)IGZd!5DiCyQj|+@N^$7PwY5;~$h-4N3{jgGa&EzlEjBtex zhKARB<qU<>MFSal+iW*-Yc#3W4;>BWc~OGwg>_>A|YWc``gG|MID z0|NtvO~T9G8cZVj!@ig2iV0l!8aNLU34gmfHcUbBls7(>*~x67imGI;pEMz0MLHmZ zmedLoDF&BEDut~68ta@UK1|ubn+-Qy0zK8YynM+%3B>_a%YZi zER*Gg{uAz>NG?j{&WCbcq-L*>VmbQ5$c1>LTL&>UqaP{>jOV{G*@qJwES& z%xy8>wI{S`y0dEFk-`nw^pwIC^a_lFHcu;C6c{f$9)&X4zKGR;NN`YIT6wp3MijuR zoJ?~ZMoL_3P{`R@=zy2>FVxWYA4$yMmc$!U*yj!Ra-Hxoj~je3;@!?ULy>x{7z!dy z@r#F2IJ8;{6Yoz}beO#D$n={oHlNP z(U%wqxQ@RWnfS~O+_pkZpC)Rm4`Ti9%Nw)ALUpK}>p#&cD6-+Kgcs~@a5yAw zhK15qnaKwKXcSLP22ycRVgRPfW^S>td(Zr7MuZD|&4`4d_x?nd2595}9iMn~-yZvB z58r@eZ)V)OM&yPM+A7KK6#1wTW)>i>w#{Yq^k0Y;H_`bkQV|Wvf(d^7EL#x2EMB(& z{m=hA^E>nU66Kj_B@-uyYOg2hW3 zO?b_>v>MXbDB7!>i3Fbl@o-*ymsI2m@i#Uk(8s1+;GUYIQ7h1GB}N2Y{DqpHj=$s? zRvq3ngyl~+m&E-|B1DZ>vaE66xsp+q_NxK&eMj3pUBBO&Ws#|G%{`sJXyEKoZcQc8 z%kbel!3UPaIn>!9R(^L1!ZT7{%nbDdi5j<}E_MN<;4-{% z|Gi{UP=G&bnicHjw;_Ohu|nWg^D8p0?ae)Rw7)bdj-~{?W!H@)T{xNXOTzYfanj7f z*xX74MJl}xN?v;oY7Td~j6R-%7jUsIMA))OG-bSD6vUEuR--a0F!2GM%Oz<&M@ZzQ z!hNu`9I2^4#qbOEG|z1t5m4C&-UTEMTbNkTtA|kJZ_KqCGn5vS_1WF|%ri@3eh2DN>@i$4@ zuQHW#ICD6L%z`Fp-Rfm}Own#`EguE7{)|7G8qEC4h4vb(UQN7F=C7h)B|;o<5{3-T(t%!9X!i z&rSSUMDRTIAzD7(yF6G_%-X;O=nr7}b5i&%{teM_eQ?41qH?rOlEZxOegthB(zc3r zGN+Bd2Bhezpls@7W|4#3R2F#!{EjZ4LU1|u~c{sjt-dmtNI0-mpXPx~3+}NZ(!qd!YDv6Ou zYL(+=xkM$HSxetOq}HCuvs)dVv(Afcn3LCl_MqEn9{5^T92gXka>}9EB_zC`)rU`r zSjp3847W+A>p?tfsMh77wJB1}iBDMQmev&Ej6*kA_#*(mbY91Gr)g9ZO+OU^e?ObD z`$uQ^4ApCB30r<__|{am`6U()Zy_;p6EDy=zFNme;KlL(me_JxpJn{My@4Jqmv$2T z;CIAh#YO_i;f1r?y0+KE9<{Zma+DprNcFqzqIUWs)SHcrQ?h9rH)wIo=BdKk!w!ICZehGl1wPgp0Q+e{V zDC*c$M^yy^ohzz2E+NwFVKbIQo(ayKsZdirEHMx|@pK8WmpJxs6u@eT8Jye%mG#{V z!RBsh1Gv={s`)A-JVxS!xD+d7D3;0f9Zs%@nT8`VMxtNym<&;m z%GQ;&Keb9*l(0-l8^O5qT=OR1?}W-BQ^1$4gi)UtWhbW$wp1XB16zY&oJkS;r_r?N z)8lc~*n8r4nuXif$^{KQoUX=|Q;N~9?dPM*qlhT!mkY~R2nxyKRAfEG+%);%H+xEj z)fa2Qv;>WfD6RKaw_KmGJoX~L#~n5QDmT`29lPb$df00xR=pP}lr(3KiEx~_+&3?6 zCViU2a0tFdr6rMXLWc!0wrq{jOv)xhW44)BbIX_&A$5IvYJ zQt+f#fNL^}M`v6{F|vXJZ);(T8OEe#{Jibr1@Hq+KaG2EPuKrOOZ)Wy7?Kcx!w{oN-hH1o^4&sb*Jr z?n`pFVGJ|sB%-xUc-tC4u8mpu!+bQBB|^_GII1!nJC5DuN<$`|Sb^`oxq7rXnT@jB z3023UT$ffBHCI&htjhc_E6WV|G_)TzKkg@15^rSNPWwb^8lhm_TRp_*_!LDOeC{Uu z?nC!PJqB1PvtW1F4RevQf4fxsNL?Qgr^bHJK#gRZ9YiT#4E=Q|f~KS$X)EEWDqWv4 z+)ayPsiERdr5)BJkvkk;!9Gp4HNYG1+;?6#9-mgMw{{b5+o0r~#3+DUp4Q zOq<3yFk~gedaH}AquA_hAugy1-IcU(ojQWvTt3bi&thzr8U4FB-9{uy(M8VuCwSw? z%`<1`pM>!Ro}#NnA^an5Rtx$c+MI@y_88S}r00lFBFUCA{61H$LrrUg_}#C@5CcNN z_u{WUp&)^l-Hdno7vQGPb4w=B@$&w=FY)m$?z7JhiK(0KiQlhFrd;ACnqC#=H-a*5 z4*8E}(!bpr5b~zl^}uBx(M>90Yzqvr0;66D#To^ko@88;#nvfDVeR+6623gu)2Sg9 zxlhC1Y(}?AD-m@DW;k`YHs`upQueq}4Gzs3eJe-r*i`~BPwQz`pEVm;Z0EkR0+YhZ z>7`G8oTlN3V?ytCsyydksv~W>=SeRrn6r9X#4T})v>kQg>P}XMtO8Ddi<9b-eSEbZ7A@pgi#pp_F-)z_`Qxi~E zpVgS%A4^w-_bVmeLazy=*jm`e=#L8~#aIT=GHKhk-Uke@3|j5i249=Rr1Dyk#s)xqS{W<8 zJ;K#r#rWih0)2Jpb+u^HIL!zuGTi+cRu?K)LK_hav9zfi)L!wm%J0!;(>Wgh%68eD z{IYIjg0iVS5x|Ed@&K>GoYa1MixY#JJFsdoz{=9$p@kz}vwQW|f^!`rRk({9T({{% z+r5z;pPV^s(Omtkd!rIO*RtQDkd1TQaB^%-(n&B0h)I})WBd_#^xY_@=8iU^Nz7-2 zICWU}ax(bm!uzyzag>1WpiQ4OpXpw79(hY)2TmVp34_hR#;_Y}r_@Q)q&MzV z$1{XN;!S>RfO*TDh~aEr>8(l)oS2OnLMaEfk2n`+f$9)djp-yyx*vM9f@xu{*IZAFDwo_dv8d!(;=9-U_jV-q~Ux zPC|UwJ=Evkc;c5+~^3ctx<_cE3B&0#;0IaHc&FWl0&m#@j&U@ znrJX+K2T$3Fs)3Zktm$h^Lj#`KAN4kA?}>j<6;4}rVTXK*C&_anU7NYGWE*2o@(a; zXb>H?i}m5xlnTXaK{V@kO#4z2dEV}LHp%;VH>m1x8LnE!8(o`qW-!l!LZ=MkQc1>DZyqhKVJtymtn|7@%;of}%n{Nt3Xr({;K);qxE zyCW7`*$M%8}2lIVe!#foO?$9KB=3 zM+8)+d6*B^az8m}OM5ZJ$mXCW^>0d=q9EP$ce&UL z&c3|Y>a`Y!itRbk@FES)$g6n`ED$7*b-a}K$2%o?+v90WKM|v*rnjIPPD2}UyjsVy z9igD)zg97u(z$Dse}k|wFV+~}GI0&@_R^T9{qvY^I`pu1aKgS*rI8GC9`25}RQ*}J(o zbUrk#{t5bYHLmbh`mL`szE6z8%09lyl6E&TcTWg}Rpu_oqVX9hpBPMHB_ZAO2%cjP z#%u`Pg)p}pXwy_COIrvF>77sI4veZd z#|A1txzFt>hN@}(qtZKd|3o)maW2hWwX@^cbC;_(>uvucVM<1x6uxF$yi%)`v3INo z%^E+w@K@9nyu5!^8mrI$;9@5DnC?GIY&Q1{9LakA#`baPIehc=l0JwrMj%_kW1@D~ zOhC}3z$>}jtU@hOHOlf+X8d{JkbOniNUy-~u)M;xTuF@n8rvIXu;<73gB@N)ad*E=oO37B(^Y%DSUW ze1h7GSA%$izRIE1qY4AJMrWXo*v_X|y-UGs_+tmi<|*sAPpZ~5M=@IphH39qpYdDkxoM-F?WE^|d_`ey&)Y3FU(#TKwAh@zcVugrt>^0s<;1l@=_u=@cdz07 zlzT(<7&lD;`?UB16R}Lop?_vzZTSPnkVcXMaUzWbxnhQ&xc*SRhAJN?J*f z>W!G!JazgW1)|sp#XTd1?K!Rk4&Ihxp2r>%jpGJZCkD^5WZs(a$;}xygGMJqn)%-? z_n^wx$Zu2kA5WSin+l2n2p-J)9Rtk!&uyX6IE$X9qJ#r_PR`K2p&9aq(eb;VdYy~h z6IOx5E;H(+g*e+HMVU&gi101Z=DYWxcAH6dRoieCnS#m|Xh^Qd-tWm8F&^re)aqpu z6kYwCf{Abw8FCjdu~-hc=`k~ttv}((7DRBeS##)<6a?syYbTRcmB?62NB=O3QZ#a) z=(_!OUZB*$8fm>l3l_2FTU+JPk>HVaa?r9yxx5Kzz5biCqnXBmx8VuvRK2mWbLL>` z^_*{s7f8sS#u*nOu4C?-WMl+V_(%?>x~HgS6J1j(FC!^Ht^N% zRC{d}2%vSg{9pkNjlKFA;1Km6|oC#OS2a$cj7^LhKMvIfP8|QH2 z&OMAnoo*^0sUwsnE*&{rlEovG^mmGQ!MJtqosRXwo!Rf1fDd^s4$=)3W{ivGvMXuZ z_=bo?(biuk4j$gS%-y`h9qI&u{$W8PZ3>zK)nv6uE@sB6p9|8S@{6_8^Y<)&+^Tb0 zo5a_s?zZ%EqwCHR=u#QpgBb27^v^?dN3wRacIkbY`m~Al#;#AKUTAWyG`%?dK+DN= z4+VV)zDRl!1kfV06{&3l{Svc}H4Y?-wdZ_ZZWae<>h!mAaNIK7G$Y_)Vy| zbk8}=$9(0_J~!uXe=FW@G}n%O}h}C z9Pjq^3~wIywo%l~YS8*9G1+cHg7+_ZHpq!ikwF}_Mdk-t+B`$M3e%scIcj7x6tauL zg`^yaSDg6$vAM(3`^VScbEiNs008(;fi*!72DtmL`X&DVE4}Q^-Hgrt4FmFj4gbN+ z@`Lrqf5d;V{ez_V7yjcvVJH4C{KvGKtm76leD9@ZL(h>4ZzAC;&RK)WOa$g7qJ7&? z#K2DqN{!-3stNmML%~V!r+7r_1{`5K|M%A+(23QYb|` z5Dv$%Sw6$NV(SnCcm_1Jr03Vc`>rDASF|Bwj3m@cRw_=&EW?b28$4mqgVNI=3I~%E zkbCnwv|uvKQZ&gE%Umo}GcY)(tNOPCEClR{3J)U&SZX@;p2FIwFzAqP7bvqvPyop zy-kjY1nCJ^Hqbo2Q#dfzd(PI<-SJmRen>sWN^87%XFbz_+TWz0rpK-}G}E6JhKL3gz^(JvYIpruT^jwm26u%fB4Sf<5T{jn4 zq-S^M9ER9nIw;;UWLVV}j_P)=S``mSQ2G2>Xd|#A|H>$?wVj`te%tkZM*8QN{M)T^ db3I4s1NEP9X8tAOUmp0E2ma-O{}(*)-vFBG!6yI! diff --git a/timecop-0.9.5.gem b/timecop-0.9.5.gem new file mode 100644 index 0000000000000000000000000000000000000000..3d7095ce170ae5465449ab6523ab683d88b590c6 GIT binary patch literal 17408 zcmeIZRdD9avL$L}W~MeXGcz;uXSUmRo0*xJ+sw?&%x%UtGc)6N|C#e}CicUfr*md* z+?}dWN>L$IRz_+`rC7_(+y!6;Z~-t{dV%~`8S_8J&dv_;I3r{paNVrSd39~ABf2y2ErjglLW@19oMf}Zo zVdxSjhN-bf{b=Sl0l`<*>88(ZXhn70@2()3V4fezd?+yCiRo#d1C4WJ73m|{UHd~{ zU{Dq68hOU=chNi+wfvX%iY}ii`SeFRTftczlTjvGqC7#`5Ww*I=*XFRsuGBO^d2}X z4~W(*NW~jcMF@WEjP0p_W|jc2amUuR<_o3wL`Xy!rUVBp!)1C5--wS3M`YvqX1m16 zwAWudVIxf}lkrkub@ixN_X$GU$;gnfof^_)l^R=x*jH{N63(Op`~(z?Npk=mp^edn z_L`^zRS}#e_DxSg-bdtlr^5vZJwje=?+%=W%V(#%w`S@%dnc0yy3ZhRq$Y8Z(o>SF z!5TW4z1vXlOnsauNTLyG5 zk$2n%uQxgG@Rf3jJk-$tw?0V!AC2pOV*ft~_zq>Y;6x^yKyQ89zBRl=V%&rwQ8%gaf|KXu z4fO?k+sMfhiV5PCY+~lZ{;IP<94vUim>CDb0%|snh>$3c$nTES-|NfpX8ZaYTi{OZ zlkfD!+vw4KZ}xiT`g&V{T4)Uyq1U*FNpNtM_0K1Saz~bvpq`5T)`!W-w}KyU5sl?+ zyyT@0_p!=kSL|q!hht92$zqJ_r~&8c6LCH8MF^N4iw0zsU-!S82%%a<`l$238yGqw zdn{_7_n1ib%qRsAuuyXx!3uR*oJ10v^E<4O?`4mmbLPHJ@VIMZu?clrz~>e#lL}6K zGQ$-;gw2l5@up3ef>6d%t*7QWP!li z0-llb`QDj59t=#7^6{E8DH(o#o!;%4t_X66-q?kId9ZuE?=MG)L?#Cx%qv}vpu0JI zqJP{J9gHa++ycA#dH4m)nH1ONAJS*zkcjy%PhaPowBqCA{Ec_SdJeGrSEc&5KwKV! z0KsTW^Q24O3m$$R_op;I0+`2n;Q~B(gg>UKKpq2n__=Wj1-zavcSCx7T<`Bk z&PdsTIQ>M#ghD)lnn-!XMDd%W^DO+P;r`)Fmyc%yO_obb19bi0A-CR-`$tMtQbPQM z4P{KZ0)ipoJH%iX&^tnW7z%{IC6C9;-P4XCB4U1_*S!Rr9uR6Ob$OGQgGDhfh%3VW zo1*#oXw%|}BJ8mu^w)ECNhU?f&hvPwvT!6mZXRBVAbuWC(A~sr6uD9#o7BG#!4i}&^vNaj*mVX_VUXK#;L)3t z=yg{$$Ed!1RmI(r(Z8Q+FT|S^u~t(Xy1V$EEBLvJmU~U-;lIw~;R4aASOv*?^*BE< zFP9P&I|>Ruy-pU%B(?;pjXuB}GHt1#i#3A2Wa$?Uroj1({jI|ttdUxl5B-X*jksbr z#}Aek_AnB2Fqs`#D^k1-_ZlPxO3hSn0<~#=Nu7*1cz)Joj-e>3t#LxojH0`Aa`ze( zn_r1PqE#;(0Ci~LxN8Kj0oqs9){G@qHP6$`8>X>d!bn7z7iX+t!|pe*9g14dPrsHV z+NYdI6%JjbRiDj?r*{eK7RNUKgagX>ic^m_WJ4sG2`?cjj_P&{Zi6WyeH3(#1da*Q z0xql&2u?^2Uqlh^XFyg%=?DfV0z!`Y7x5fQ?-HXvojQQ%tm)x4Ns2zSOdVPh6C>94 z+%o@9!TnyaYU%HcB31A@pZrmeX-j_68ppkO*k_jWP!p6C0W9nmNYqHO%%pWWWU)Fz!M+4JJF@_Wlq5Nv44jP(i22eF z33_Fl#Urp5$@2D=k#?cn#wJ`vP`pzfTMUOL5Vh%k8LKm4O)G4vSE-ES3Y^K1JSI!O zLB*H>`H|@YDdn4CWKf}}xYD62HRVCP*kpRaZCzy=4}A@%no?8ErcIu^^1 zON~i%cd&!GGxxj1E^W&CRhbTGUcMU_{Baza(cWQq=hLkY|Ct`+31Uv&B!e<)W*-(q zo4#NTE06>Obq)f=^7VvbXUH?&4t-;zrW`|TPH^UCH0cfZXi(BOgv5_63#bV%`aoK~T14z<%>L`m7^(*Bzm zF*$u7i|RQF6ABz}|CKW#kGTu7IkX20RC_%dmS_Dm3 zcnS_0MNbR0fZqJW<9YLpVbnh`r;)R0`?&rM!jvU7XxC{zYnL&JTNbOaG_=cL3s7J7@u$)wkv4Sfhi2ik;QO~*@!{H84!NQ$+l{2tt1X3*DAN_ICck; zX~VHhX~f16P`e4k(GYD5)xpUSv=>mS+L(KM@~1K$y>^fIE6yHQl$LMI(V~p8q0smq zn|GmoQ}ebg;a(s%ug!qVvX&IFNQJ%wW(mxv>LY)ignsX%G0##pCE12bYrxLi+7gWxH7 zyob>{Mu<#{LQTgZ0UhFzC*GB-4jxh2CIy-tFsHOT1&7G9>CZRdGdqLjrc4un?qY;S zL(a}E6uffmYY~yE&T@epe9!#K1 z=wEDkKb&Wj&_@3pFa{N$edPeMuq2Uk?Vo_SokRwu0mHyPuSsQn9$rH&e`A zZtLhMWuIKcPk`{0d>2?cJ{vnzZA$!pNK1k-MG-Q3^f=p8H0;oMbAq@?^MErn?M%?j z93qp6(N$A+(7|B2xqDozgUlr&!bqw)8v8W{D}Br)6KlE|25Omy<%CW98C8aw&v6-V zNMzxO+)!pEl^t39m3$Ys>nC#e#3YEJSFYv;q*gEFRwx0^Q)Fnqp#h?e^Q$K>D34)w zR9bzwM%0k4r2OiZ_^?K-N9!6Bu%tsKQ_qRT-hzKl+*iS?--<2*d0)#McWO6Vk zgTqVLpY9I9cB>{lzwK_2I-6r=93zo`ymG&UwqTAjcar@5=8DKZ`Q~`OVgZ3$Tl9c3 zo*kBbX6=pvG!5pySyt%nI{FXx@Jze(BMTPNq+vmup?0{Dxzj{SPm-t#QzxHslqdG> z;lZ&A4Vxdsbr6P_(7F@$rtI7j!0W$NOvPC-P%&WQFc;PkmG^aeig&D0*Y=mV`6p6@ zi4A}8ED3xfYQd7sFa;$Gdx8;))zaZo0p#>B7G!H-q4miilzzYk(Pf&+ky;}h;!z9+ z;$S#cLc$|L9}aeV?@eYQLvED+l~b2kiqm+?eAh!MD%ADe38yEPO@QGa?7++K4ltLN zmpb&y8cE7`;SC7NgSKac36=GyQTJJjX|pEgfS*MZ3KSr|MW8O_o}=+*fIBHE=7qPB zUkdAaL%<;cn*gUqLB}+nT&M-Wig;WjSQ0Cf9g*-@m6j8ZK64=xT@K3Q8ui~d`~GU% z*#N7FGdkGM4B#&MRXh>Q_$&Z79#TZfgX}+)tM<`%c>c|V#&90$g`~z9S?34XxQ~ST zhQHo+kPuP=C4q}zLs`ZiRKA7bB;H>uoKIlG9TTzZ48ScoTV094-ZCUb>ts*HXZByi z(VZkuFkORGyn?+-4H*Z>Gq5=85k?Ij>duzwRW>&lq3jI zfQuO#ck2_O3!Lbs%p;-}ocOHuiPEac#NzJqhBaZu>)f5dNBM8z*vE6=v2`_4_db z8RVP7bDnpQl@#L*3EH~M);cgOQS-}{NfRam4MGl{#~9abkD*9xM@Iblwb^zF0V|qJ z`=Q)f-_Lq0+kb<;Xm_I0tn#Ec?sahH7cq)=GcLSzBD$h|9Wesr%r21EKQ~I3sd*^d z@AJDCu`KP3Q1@FxbHNDr53{yw7-1);pS6ta{EsLt?Es5bB!AYG*COYj*g$hYG>3ej zx#bPH?%tlYa@h~q{oPK!gP_3kx=C608-w8SUE->DYJ_eHU8577s)fo6H94%yrRzl2 zGu#i=tXqa$eL?jYSWdy%R^w}l(I9{bSI~b}i0>h7`HC(X@DnGL`9Ca+cfRq$Rm$FG z%h!E3*ke4*+|91WeD;|v*AqA+n^RgT%)#!UQs-91OY?x2(Ri$hyt8sMf{~v$h+aJl zZ#UOlZ#Pn@Kyo8%-FYgM^hBW(!dY*p$IH0~;Yh88T5F$6PJ1n*D7kX~vOr(XhrDmE z&o+ekAI1hgzwV7=fzZ=W`=5P6?fzvzU;Qs+=pE&~ISA0d8y;a{MvczRVJZl^Fu5Ah zW%*?PEWHYj@Ub*`?@0JK1OSgY(2v95WJ6OZ&0yBvRLSn$%!bv~N0NJ&q~7DZ$oMO% z12=@?GSu;^&=6ZDSnm~7f7Irp>6ES$1Y#S-X7M|jDigGpX#g?)4`CWXx{IyJrp8MZ zv{OHC4=HoIVJaU|^RmkfA{qVM)cBJ>-143h0`4$T>d{(t)DGfxcl*0`SG63`ig`3W zIhKxd#|F@fzsX>k0)Lrd^9!TcNh0%!;mfv_b}3?dsP&-xNPQ#!cKqRV*Y$uYsxzx) z7Tr{VH%FT4ksPmMI9DZ_)ceDI8ALxi*mU1ysfs$!Vj{>(FSOMw)6^bwcFJv+$G*1J z?dE_*l-O?r>G$-VPwQ7Y)h(_$z28s)K2p3S^sJvML1imKVTgu!n(-jY3{tV&BxzQQ zaAbl>an2wkq}0ik!`l0h+Vn{erse_Vhwc!dnnsCMt%=Zgi77$3mdRdCb7|P3+Lax^ zE(nmt>XXa2H0FC?-eiSKQPYX0uYYQmd`Io+tjrW%n0!)aD2kyDLgx`eg3z(KNA3LX z-`IUZ5&EJxPmMNWFOw()@tM2XYw|&K=5+w{mU5G$MN$3$K(VFr$6yH7qmRjgplH{X z(tG~k=~S*bU;bMeLV-8BzFJ*mQ_tY#Cjs>UHh$riVDS2=2W8fET^HeM zvC428A1dxi(23a9f@fXqu}TAzRVXhy-*}tcOs-X35+e&C%6pA}bX8%dk$7@#p+I9_ zNzs$#+a9LyyT@mgom>nkZ-LMp!{c&BRUPI z8ce(lqE2u1n*p!NvqAuc>*so|?12t~6Z=E0RTh@4Yt`B^!ByQ)4T<~K+mHj;r~ntX zv|0e4RBuJqUIs_inm>h5?OZxX7R+#ADh*<&)^6_}Z#9*)>@l;BiQFfJj7|EhSKbrg z+AN>a0JYlptyI4?F}Xq1(K}BsGB&lXGjyR>c@Em2RN3Z**9aEbm9o5KSZWxPyxuuLQTPK1tFAR|J+lQq4p1n_1qs1A7YaO$>OeOG!J-b*bE&!=Zee zAH@X1QUaO*yg384(M}RQ4&X#10ZH-Q;G4yHQd2xo7g1$|2@*zu!soR~RjxS+3VA6; zJS5vN_Jp^cp{Rm-a!xaV+i66#S^qT_op>AV!ac|eS;jC1b0{jC+!0?Jq^j}B5!`r+ zf|o3@u4|rI>1(^cRuaLfv5~?w^wh8LLNY`{@xzt^m^|jK3d8#k5^i58zsXRrNvCf; z?(3b&O=7#Oj2jH+LasDTg2sr9(odsWE)MB+^=XgeIBd#vMCWY+_RE_;QTSXCe|LlG zXRv`N*MRno)OvVxn)WfWoYN|#dzeJ+@e2M9r3r;J{59Jad`0v58xQjgAsjYLZ8ks| zd`%yxM7+JehDNlaR|VqA)z%d?1r<}GI*j`Ar#UJE+eLJWhs^`Y(*mf}^1f!B+a!no z&m2}gRlNWawCg*629fDVW1V=W1&1(|RNruO@bHNnqV6OrTG?B3U-n9*&RYMp#$Ok3 zX@4=uS#8ldrIN^sGco%b!beX?eYdAQR5pSBFhczt-$Gs9!G*vVBEilLpuaqj7*!#6 zMCGGY&^K(NJd#GEnWF#_{xUwYPrDyWfQxGSi(21!mjbd=o@Yv6CIfYZ9xZ2$Mlq!# zkc2pb`Hf=PChAH_P5z$QgnEuzc@kzr-k|c;gj79fy#=m?E2(=euz;7uGN!>IEsiT6JM4X^O{S3cf%jVnE=8110=MFQ4MZ~tf?A~!p`)#)ry{ZU`D7TK@ZZ6b`fO-779A6ip1 zB*e)nVpnLIx_qDUH#!gur$4=jC-m#01F087MLQ7+A*nrtfKt}?|= zyr*iGw@?;ia8rVw-(2am@)D1sU~+{5O+{kKt2%)bjcU9?f}R$eHOq2bK$tAmm(;yS z#vG`#!(bwf2F)Y>4rIbyP7mc$s%NV2Ls#ic)1P%VxkAA2fIA^ zr^F!B5Kb|SOpN-m?u2QEV<$LvRCThGg~W+0%0KUyIIBV7UxT5|8m+Qt0s21(Q6O9K zdHiEsgszt4OXkJn^GYSs>ed{y?*J^$;V3Z&wlty5Gj=5?qla8%{!6Tb)u{&#qze)h zck3~;BFysa$$58H{3B+b87HdbOCZY4qRMp%wX6kF!WGc@R95Ry`57|cW}K3>aq1Qf zp_q6>uK272k$R`u5jPU32}tWNa|k7yh3B-w8Jaja${o$BjF=7k5X{RKcR}~786CFF zMj7_pEDt20u710TYcW&HkZ$IIAeI5ltYuL!Tgv9i+*-?oTR|idAYo^50Z?R~RS6-D zVUvR;Gw{Y78BElXbL%acN8+)}Nrqg2$2IXqvSV0=2(m)$nkXp$p%s*6D-vRJLgx$@ zWDKf^Aou1@Mk+>JID%)bp!`-kv#F#=fyXlu37MLImL)An$vha1_7i4G&G*J772~VH zYK7oRsO0suK4TJ!X3VFx*%(w9E6HUYB-IBHQ6 zBGM8FKEk7$dUOK9J=32^Iij5~I zp>{39bNJ$_$s!^;4hCAr;skSo@f-AAg~Nk5)6fis=jtm2=N^k@LOi0P&o;h$!H89- zJMStbPF2vD0{{@AcWAoBf+ZJ&3s3XduekT6nkoc56Al7$*mB)`)$)*7GSQ|S&Er)1 zveZkEKeyW0!7hu8=Aq9gWIPzPJdKIeD?B_-eymp0C(+!f>!?X!f``5}4rtxBDY?V4 z90N{dn8gE=W|5^VH)}s2v=`muD-Tyh6gnn#TQik04J5~jjn1*(Dr&4F7G`K{+hfR~ zk`hMT|e=|tAWu6m#}HGW5R9(9lmgF7(7q8cmc7fE{dCi6dKt}XtG z))71iY`8ptU*2MZf5gPPIUh>?eC5U_mOu_IEC;25!Widk(_u({Sr-FirFTw{Y#_0N zz}WmQ4}ZsfMs2%J^M)c6I$OS~)jtJlo0BEPg5jX*!pI47S&nOjnx}lDLR#(c5p6A;~al zIsP-R#-^PK+&b|~_f`_+!QlXX3hDcm$^f$#5ZMxViq&a>uAhS=uBZIpL#FAJe!oq}ZE zhGtvv5lvS~^B}8HYAe!}r(=qv;V{s9Gu}+?_v)g{j}by>(@jkeX|cQ~HghfX1%595 z=G~f9hc357titw+TUSUCx2Yh+H(!tXqo(Q0A$1RBjh5PJus|`G#A*|O0xnGDK{0Rg zyjj>#f12j`r6>PE1nGySd}tUNo-1k`Nd@`GT^4k;8crwyYMX~>AQ#ZdM3T*Hvq$bl zj^ztPbBkJAi=7p^2aoaZ3xPU*%bT9OO`HYpTD};beg1Mkx&FLSdj(D&%4UF+p9ng< zWC0TmZ`_5>!<|I;gouvmPA0;o!I~|;ZxF6;Fi!maZ?3=FW`6)T2-2<1(EKw;CRi)I zQnT@uuqRx*=3k9SqkavO%$q96(ie9d{GIvl%^$Kfic7k7}SEeWs?5{0%2|ywJE;}({ zEBV4X8bNCdiquuQKn{3w8y7EoW|1TC6Qvq{tf{UbMjk#mMtsK_S@%BONzZEzW_Sjl z4MEJ}-%?NdK(ffs2qlBR-n-i|YLfz50jJe#HO~6ecC9UYm8=_rr;SZ~sU_W(`B{MC zuf@{X5VXJ9SO5k5E`R7>m0LFI)xfFK7v|s~U8+p5B&BANfp`0_w-_%sf6@iFz?#4K z5o$kw%0Icb%kM+(_?=M!qIQg8iT3h>d6Whl`o65-fVpFT@|;`yai!%0XKc|LJg_|0 zZ{{FWt9jnTX^l3`Y;5(j#!@zwMZHYhNo}YX1~#lFHs?|ekZSBIVI@e~CpqSg2)$sy zYHbzNEW;KUg8dkTHY(r5{ScF0B6q+a)ess31%&3RNOzm2!?k>;;xpi|b00T}K&%B( zVJT<;QNZLbQ0ayw{zXh_tBcM?6!ub9|S<`&$ZPhU#gQG5`=69poWPRTon*wJFc!TMp=l*s`XlA$%y&KCBsNVvMZHU-`qWEK`TPS zY5*d2Oh~unI8@d1wMc`W8bj?aUbDcuAR*4bS&zIEhhdUqg*F9C7p8MW>Ey^9}08`~xqUjjLsB%1$a``Mfl9h&JiTrAo1iPxft_|>@bXz4x zuRPbVWru8j8^5ZXdT&;=E|9n1+g&2tL)@RVa{^M82yKwD1e%aIb%rk6kPb#g`UDB* zJ`m;@a3QYei4|d|l)t|84#g9q;YZ zz_O~Zp_Ka9mr!`;d9|4GdZ_~kgV|0Z5f_<=x%TDTc%!p}k8h~>0l%l2XB__k9l26L4`9>=v)PN=dB#~Y(ZMuJ%3o_F(_ z`eiULQQMuN}uoT}yxpfM8HwB~r!++XSe zfaR&KjC;+VdzUEcuKeBvsJ_D70%zI3G}X7R0+=DbeJ+K20KvT!FHJ16qSt+1d(GeQ z(S-$?j2K=zKE4}@wMp^ZH3I%_M@D5{yPl5q>1|m69_Rm7yGlZIO&ud8e?R0fnauHXE!{-0%a%cZPywXErBv}^EC^JzVp*L^IN)y?|5_n zaAH;fHA2Or?4BE+=$oOpWzWE&x$T$Bm$ppc&OgMd?R*?yL(@jr1Mnl_+n>wfwaMU} z*>tcb`;9i8@j8+qh~_O)#i@~9E7-&(MhjBGT=S+p1!_l&bXUbtWH<`zCqhW?4!-&l zN_3%tAN1q`5c6oBr9hjAlWQM%u3%FkXO3BBKc!izyI=rsms$Z}Z*A>xx>EJ7(rZq7 z*(qj`quDB_!HL-5fW(wjIJySjaFfuv$X~0Bi=5-8V=QMp(#9`xvF+j9{0h?L43%Y# z^1+=?X;!1ePN1j03Hzu8;1fjBvCWa>2fD8A=Cht}Lcwdiw0cO>jgK}bSd$4tFi2Nm zci_^hXhW}~vgWFI33v9l>L>^sR|0b^IXXH12(tHPE#1KGkc6GZl3Kwcr^$r2_~tKG**btr6mXUP?bAc}qJiktsp#ybr~crA z>U-Ihyj_h#cJ-F)X6Infb^@XKH$DTW`u6BHyOw<@*n4)u$V;2MI&p(Ij`IT?b$G_UVv{W@3 zP4vj{iK?|`t5lko!SYwq)2tm+D@)WOO}9aAXcZX)tc}4*;-|MW-?@Zhsd=n03Qs2X9tmR%S@bHE-OsmX)Sh=Std85TS zfB4lGgG(OmsiDg)4t{FNP!5RonL94uMxY@-QoD5T3)2 z8_Q=V`aXC{*o%CBE`aS@uvX@tmhnm*l_)`de)?j{+uLk^(_T9; zj+-vSh2QX2LAw+{3_But&zz2St@6t+M3ReEK5Ee4;w4T=TM`Y_{UeGCu^nER@4spd z3#ma%&CvcV=!Uu7HiuC;U#*O;iCBy9(zSSg-qP79P~RrXWNCz+pOosy#;FNJrsaNX zT}y9l>_a|!6e};%r;vTReGjASB$(s3xJ!BPJLA8UytF=+`755k!cx`C`DJ^olquP( zL&CSqyAm1j)4DG)vsF=73so`e7;+CJoIcE--?d<#L8dK8zqNJhJ7L&bY5#Rv>F;F? zd5EJyKh(w&-aN(kW-B)4H9H;e3T+12dfS4~q19k5_wRR53A1QE{bpotgEv$r%X>1a z-A$I0Ku1h8i!Epch#QEI5#kHg0UE&wmv=+qG$YT`Brt!lx3R}!r)vDm6&Ze5>Zu1U z>+H}A6ZAS%)92-!n*Yg!xN)r#mi4I8O>M6;T$h;5R!}&<4-st_NwVOMXG%4C``Cx_ z6gTEU1Wnv@(b6p?}5B@*xrJ-&El$Ov@n#+HszM{(M9&&cu}%2-;1!{_+Jn5iK8OA3JgoR6M*--+~oVHTRJ2Q?=cI%)RC``f|@=B1sP~7hp_OeEr{J*f26V1o70FQ?CIU z4*yV-A6fRCU6_;2TrX_eOKl@pXC72~zbW6ik0)?&klb_{xZk(k>H*mA(e55K>)C+j z7hZg+c{`txS6O!xrw+~Qey)|^inNJ^8@V+c!m+M#SJ~KEv!A*!$Q=`$dlq_q-(x%P zsr(Ild1f^G5r>3*R`HCIoh`RWirtAiFf99Wp6I7b@i_FuWGA(lLB|GR(SI)_cg6R6QWEs?SfU$InCM} zL~siiwS#SHV=Ncx^hGOoIk|XYQllC=8L=qgClTjP*uM4LygTJIJPsb_6`_ATxoDav z9{;|2x|})wSy!czr$>;lJ62zNJ?y;TtOg~t;ss{kFZLUe-rKaZy0;@X@8?%Uv|QF*W5&S&k+yAA+aDXH_=*PfM5yg>D1;qtlp; zZA3TSZ8I4eV)&u@#jdX~xgZx=F-jwKw&M0f`aX6}Wa(G|*NLns1&U7zqx%?m7t)N& z-mRSPU}ynZ+08yJYyPU{Tuc#rjBumcV~lGnYMg8?1gtad()!6Wf4P{+F5?N|8((yK zSiL5A&h-@s?p1l_BO(LHSi#NL5u8uG`ue|7A~}2HSf(Vlbe<+*Xd8_}_g=r~?y)M< z;~-j+I@`7{iN^^ow!(}|dc4MnM{KA_eX!1Cry{UE zl7iKLw5V4R+j34FM>oBFDOqNryJTskrgkNKnH|v6xFWH6{v~3k@*vtOxl$319Uthi z`K8*8#KF~j6wf@O6bqL46Ty;Td<33W?8#c!FRpXs`iWNae&MScUw^^;hq7Th*XeVV zpxzqJ>aK3o{Pnh1OYb$@Rttt|xNX>U7h!|Cj#Tg^Z&F>BuGz5#YiE`8vgbv8lR2eP zq{;qYCWwbt9VMG`0puU@9_9y~JQqu-z9)W1L}i@gw`uZA<+1ohBIhq&TT1=oUJs%R zlus&r3a+e3G%nSloU<3|6doB^+H~U6=P%upSuq>@@(S_kL~w6rw($(4GjRteW|!oo zhK>-)S~E>(nux=l5I-cZXQCh~Chah`*oK{y_o#JSNBHw041I@Ke*Ju@@)mfdILqM+ zH#t@@_v=J(ZgU&6YFH6yq20Lx|A$iQewE`Tjql(>svP2+lS(|JA8aaBz9&jE zpl!zv=dhrl{`XR;6~nu1G?(@RKwz3#b|_#KoPiKEjdT^gHNbQ4yanv|32rR?!aG?3 z{TkYYME#po{vS&I$a>5M4^nL7z2IIfwzmqV+&nZ!cuQAte;i*LBTK!CUCv@;u@ZC{ z1XD6>Q?j{w4}Q%YG3_-ZCSty~d=c3v{%lo?8yTLPf9z0swsVg>d6qtYk^#+^$@IgU z7ykVYws*j<%Ec`hIN-o`?b)?LR~chyng9a~p5uc{eS8LdZGL9n4Xw+3c&m3B7TU-C zvki;Sxz`#T{U6%blcw1;izA>aK48Jrc-3^cuUF2dp5vwO#qC{y54dU!?RRtU?<@J% zmo=zXpZ$3uHNaY)=hruViyvCKQVIdS*0hGaz+V}N<><&7oC#ar6R?@*&^whv$6A`7 z5p&6iy%+u)c*BIdoAu`Je`4tPJ;dtg4!r4;`xX*|NIB`rex)hLA=|iu|GQO%pZ?0< zdsv=ZRz^jCvXI?ae<{8vg>E#H9-A7p_T z(xNjE43R7np+utsc_;-EAX^E_cd(8*_5oY4L$d@_wnouY_5yvHJHdL6R-4PN_23hE z_%e@4i&XTJ!Z#+OGE)-%Ar_RAudjQ?s$SgO{ZRe5e2Ted{%bo!#&KwUXw=TPnhvag z+nFp0-^*v4Le+CsoR-Upp(EO*+r0RIDgsy)4fR$G8hEi7n11jXLOw#0j5*-<)AZx} z$Kc%>U+4kox|e;QaQiF;=gkcI=RYmkJ7~v~=RcZ%ui=clTVYq;e{7#8KyVNc;6J;> zXX#`RDA4~7CCvXn$1t@rH~s1CYUj-839z&MuTg>h4{7ZGi~g6HorC3H^k3|pEX@Db zfBkn<OP*l1pIvb z#~6OapFC*!d%T7Ff4rSs(ZDq|q)@n6(`Tv_7DUQ~l=4r&vc#ZWM?+y9I>|?wu6ubJ zRU-qxM&LI{M-*i~9&rP7=u5N>F$_zTZKD^8p~XJ3e{he_5t4nKb$|jNYzHhj8ezqr zi&_w;QB>4>;&FK6VDy4gybED-u3&r4V#Lnv9rwX@a487dt3$0v)3Ht`OIgYEyb+Xn zeya^U&V_z%IGed416~Nnenw5SRb@%ohTzi%K3B}zTg7lJbY^#6lfMKs*%0<3CVuup zZJAuqZlUmO&VwndVr%|gHtP3OMD>F5