          
      {gƻ{.Y?/R1            xXmOHV?_1II/^D!JB{tB{ؾ5!w̮8irj:ݙyY^T$6Aqq1({ٞQ4s%}.u(9^!*8op^~x{wo}T^Tܭ=6YA6Ӯ~2&R8uPS&5$\f=6UlF]DlT	IAr_(-0hn"a".*ٌ:䠹+>.n\0\
ǊCDhDܧPHL&yڙI|\༄{.~^Qhb2irHB|B\S새;a"!ZNDCxEP>w7h]V׺,& {n5Lp!zJ .*xk@i3%D;~ί{Ђn7o.[=3Ϲѿ0>LD?J-\!6!w{D'0EI<2`LFѥN qk@(:md2i⬑WL'gلм	%ےވ=n򻈽(9lZ$ĨnfRC:v$َ~2d̵9XՋ3<"O#h#wT\B]kwog@uU{٭⑈yY<gʎÖ,}Uʆ//./?W݄#(Ol+Z`9PHoV+!@mЉ,dT6VP rQuaegjkƚ%cP['4|x`E> 4B1w/liDZ"]<;Sim6Ɲa˳'OZs.1V^+B++\BQ(66rE\pm%>p+D<HqNIH0In6蹳5.23}ϝg\aj9UH))#D	6+ر\O,ʸS#fc<uحVWZEy(v䆓]+vK`6VmXnl|!O 1H{iidiFP?.U|Ac@E=Q>`_h_dCx˱2s]?ZXT|}:@C*lCi9	,ږf~ݢrh:H̽o]E>.io朹+e	|,|,4g?[q֣))
D.-5^^,8Fa1t`)r!%񻐥LG!	غd`W,ZP25yc-)Yb/kaS
x|dRJ`l9@g»sNt3-_,8{ ys4OL_̪ܟOHS<__Bon%n,hmTƬrI)z;CŅ,Ft9kTגSJ$bxo[O+d  20:yP
,x/"JكSL&'RSnY:c#e4Y^Lֱy	XJgKʙO7#kc.qيM@Y+3KXA0[ &tڻ]-׷M<#y n<VU$gt~1m($XykGȢXW        :        |    dKez1w&            x]QN@^bIc{0^ )K`}_rҿI&ofkw0J*@EcsN>Tq!h!gvJ@w WEYpY}BV2GkxX;3}	i[7S0˂@Nl`I;tsI.mT'L7ǽ!甼&`KoZEݢ]¶3y80aܓ-*OQLeq(X7iؖM    =      z      }   8	  Hnۗt^            xUn@6ReP9p.&-\%RKTjiD張7񪛵]U9x ?'n{e̷:vT`/b+YÔtVuřX%Y)yF} "/&WW(G+EQMը>ӣW2_KTGR·(dKHhc9\$5pMdUԜ),yI=֪rRYEk01NC΍L[$Iڇx8Er>Z90Ö}YLk!L9oLEv	3]oG6eJ'ٵONs;Bտ5ݘs찰}S!Z,H^~ŧXdtVIK1κ6<4i:$>1{`:ˉ"ss,%%[tyۺuυUVEAY'T4u@T$5=_jjb;z>iƝN^Mφ!%(*@6UU*rj(uqEA-mBf75:=I!}É1Ar=CKhϟ!!ꇓ]}hƏk7*@#w|/Oߘeh{mBsZ&ci=+ۨ]4	m=:5[Jm;ƾ5ū-M,    "    K        ~   A$Dx z            xVnE"QXҦ !&dpj4R0ǣw	nxC} <  8Fxwg?|eq!wSN%D;H8mONW~F7$x$҈6]t3"'&<IglTō\pn<	UzJOHtpInY?{=<sNI'kpˌP_G$]R)ԏDS[`eØ@kkx^*Z1W`(+g΁ArLCr&$q0QupP)(Bua	Z\nTFb"3ɉi=`ܯ5.D(qMfO{RVszWrmti$<>_Nec\iLﾽZc	TϢ۰\S//B?C&w!"AP?9139bXBL1'fzwٲiОN0!̐Megnfd<ڈHpDO,3D93Jd7f4{ꋎ	xe	IU>[g1!!ݫ<,S|I΂ڼHm=OsL©8 `}^cDT_,tÅyvo0X'l)=>&OԐi)1[.T~!uKB7]?X]b	LX$)LQP&'cʫZZjPBr7OK4\S
ˆJ(!hqJM5<iz̈M<Y1Gg 't@Ҏ$b
m3b"YR,,9 bFdX-Wkڟ	%qY8D	2tt
ʃ#L5Mz,fwWi ,K^Yǅd49eN̴|.4)LUJηFpa<1tp*+^)BMB(DOϏm:j4ײWc8:Y3o~!`r]ʩ̖*Ƃw$wvV7뫥'.TxHzxŐhM*WVȘPu=^
O<s`kq͏vkx6p۱h`gJˠv*aP]0B]#{	N<m֟|C(޺C_
t]D?GM{+]*YXd    m     A           ʡ3ezAJb            xc`A24<sJS4x#8	 Ɓ          !V         Bы-Cbh'"c3            xVnF- &_M)mԬȑEFӧhQ%)RU[ ݝovy?w:vBL?K,(.K}~vLEx%nbw)/
9N2!|Σu,OC1rڟ\b}YNaD3j]0Tm%<0wVfD}G4#vp"fl7sv)c%sNxbB
ELBK/&
>MFzSAfWVD!:~ˬMKvE/ཉ5qNOamQ"\A,Y?[^ל p*SMR
@%%-O
z*1	Bw@em&`,Kj6SRTwo󄀳[A&9w*кKYkCe0% V6+<Xe@m^9Wr#=t@~f%w-[N7\$ i3ВW:Fڗ9o)ɩ7+Rq+dp8eR=5JGaZl)tK"Bg᰼wխpH$Չ*K{A9[[nNV;ѹ3,\04B9Mo+R^~lgRh<!)Wބ"dR@ֶJCf-qIW-QetӮ\C{K?ָʽےC-pU禷=\غó1HՀO`s	׃Ӊj(""+{VͪW5	5I1fة8ۨe'~?lfDBK=|.2vjP1ڧqPiʭ/j$izi:n{ͯ#{ocdFxӵi%hف>9uGɼ    z      "I         9UoN)Z!B*            xRJ@,7%ivQ+*&3t̔)Rpo~+TC^<B79ơJ3CJI*Yfn<%-w':2%ZxW8@2X9]%G9H2Ì[i)UT~-T!O9g[[i:;5*/PEח\\$*4>i+	Oē%ojPeӴ(jO`,8VVVEc+n֭V,3%'T,V<"q;u^'":3[=2]ilMWt
j܏'{;7ZrH:o;W%,;	zdgbi[/         6  "J         ("pD                 )   *			scene, -eyeDir, Point(), &directPdfW);
    4     6  "(         %J74Nr                     *			pathThrouput *= bsdfSample / lastPdfW;
    j       "         wV,"HRE4n            xuO@$ί[F]I2Cu}p}ôy0o3+pp
<	kHPR@%Tm-:/ƺ>e01tLpbzjaܙ{Bx.3\u`V`m[.?(g9Ȍ+P!!_8HyqC}N*    2      #         	VgIt7՚            xnAWH."D"09864D|H@PwsUλH!*
5O@h`v8T䤿彝269WtnBcݼx
YǇ34B.Ls) 	`"ce4Y z|$Q}abhq/6;5Y=Re`bIT	iPSTXsφ]կ6+8}bx^df`=%[R&X<MKPfaT$s{Hqj<s􄘫}
(Q~3no։r9Ae
G0r-к:oOI	ф^\̈h`؍w"_^2;pU<y	.h^V]>xwwyR_	_7<@p܂m$GZy%f.}{ΞFk	NSҿ#.桰IѺat'coUg58+ƦNlb^ԇB1(eb7&Lڱwhjccf.=Wcw-MQYLaC;ӿ?ބgH@l{VAd⻆YeԔҸ3OUQ{J:a Z         K  #         
c$-K=M}            xSM@).
뫇ִAVѮ઴gI;NdZ]D/"<GDЫ?$midf70vcXVb"SSjᙻ5mދC:%/R'Jb_.m57V>fn;_rhFܐ֛8҆+OKRaKLOAxx}ƫtNz
܃pîq.vCktB;lxn?,dli˳#]->(vKC~h~#{p]<o\ѓu<<_scm@*iDoN(XbW-K9
ke@ewƎ-ݓ¼"%XyogNa[t?-L
-[݉q:wc'$orF=l|d5*ގ-?y!rftQ'-/H%vLfrPb-z	VO@#k /JRu@=Iq"vn/b I~e܁8nshR.
鄤    K       #J         "U[{Pw?+WQ              /  e        W      "6         R28z            xTo@()c*iRDB#A5P>ǧgw* ԍ?A쬰]-Oy;2?<'}	px	כ<ez{IE\p/R ]EU:r;/׫y9!9o.Y*$(+Ͷ\З14?ijzYE{yTp4;7ܶ8K=GxQk(2N;5>mmB|-}7L'K+6/y );{T?_~6[BT"Fg?r׸5UEu Ag@mK]f[2S3I.m@
xmתXZfr=8=bW&X=BO^/ }F(JHi=aU0}&js6(c
c;
jf%=miqFyJPX3{qdYj}"K	.ALo oaR¨؇ 򋧰Ax|t=V/)kJBۢ\R?`\H3^Ιτ\$?(mE1O3*Jk9Ľ她         '  "!         e./Nn(T                4   			if (bsdfSample.Black())
         i  "         _45*ܐZ{,Q            xc``b``7` f4Ԃ[[CMgZfN]pANb[fNIjQjcNAFFqrQjj^`i4<qJ`3 l-         F  "         bD"C<                   .			lastSpecular = ((event & SPECULAR) != 0);

                  9  #t         0`m?<ɶE            xN0LfAIH٘v@TPEnrI,s8T#YƻsNZD j;珱;c/سGkYAjMsSHx[edȜh*ȅ!ۣ9I]Lb;>0Ǝ(>iz?`(-4ڄUIP٧L-vR_r%v̰i?`v8J{'TAH`SVտF(P)1(-ܸJ}Qć0y7Yp{os    !     .  #         oⒹ;h                   "// TODO: write BSDF::Illuminate()
    !/       "         
ĦO0$             xUA
0EMwčО@,"..\fZb*[y*.0{ތ+Ԟ0؞AiT1V-;`[E}DݏaCeF
J7l֋#v91퍢,|(ͪ:\t8H>N@o    !       "         =c	Y]-Ѳe                4        !       "         q\{,=-2{fen&/            xMk@k$b"P,lge?ZĈցxag^a HWT[<U!Ӫ4[/3|χ:7&嫯2	cu661<s
XHF!%+krknLǠViHw_:S8ěA/4<jTqQΪW],3tq_    "    T  "         V7}Og鵱ϮU            xmQMK0I6=?s*<	T-Lmۖfğ"Swf/50$a潙d;<3", ²	&e^b;=1=Xgc3lJ"x~Jp ']1dknT|c-b|DAEb.kY蠔Jh_PfHA}o0҈?3}j3d4tIXضo +QdoM'Grn&
|dlg@G t`!Ks-5t{h>d֋;r<?{n①'PtnVا    $      #         M>ꇾfD-v            xJ@Fgi	V
[Q*2i.3efj%|@ޤQؕgm($p\Z i%yەS<c!vn9o=7\lhcepޠ[iaҽuwJjqkRRJrfJH67ZOz\L31ԈU~CAVe'?7}[dѝʑLFB7a#{8+ܪ)-{S\FF-QtCxyx P    %-      $         U=!;r7}gu            xuPN0*9? ܖP[E$+"lK:/K0ٝ(E;DR
aCo˂Wei3`?m~`2`o_dCAI(,
\EP|x]ڪ:/6I,UHu,JCC j
qB^[B	3Hy%5"L=5vVce@c~S@.>9Cs<<n@oQ^u    &G      &|         x+	uܨa:GX]p            xQn@'"1A6NREST
m"+9kkw-5/pN-alǥAFadi3	cq)NJeB)G,ʂ#[6˳T;pApfyؠCh>~g81NWt DuO#¾^2!3>ՔO8-bW1YӦ"z2|ȦE}epR7'bZfsDc}b<3ЋXVw-P/p: c@{6r-eTFe[[f՞_IwAwݥ4\%6+j8jU.AZihl_;>qcYwdo(f[rc)Tͫ0'д>}s&#o0\    (       &         ;m>"             xc`wg`e``N-I-R*2lRRR\3Ru <t];ǜd<̜\Mk.57(4Dcŉ+,HZ2RRSFrr'($d$uꥁ*q8P'd+00 9QP\e݈ME$\E$ĔļdW`L50il_jE	$4Ԑ( Q    )       &-         A on	"*2>            xc`x iY\_d[Z\SbP+0ԴD6+,HUUppurub`PhNLEy@P\""*JLLKĪ.1 #L#TV@m 1ib    )       &         <M.Ĭw9Е            xu;
@E`J?	-DmUf&N݆kq1X);sE;{kL#B3ժXQqhzQ} ='~8Q/՘&eаAzRZvBß*Η8W)|[>qte4.޿=]<M` i>߮c>    *x       &c         by>  rsP2Ɖw              =  j        *       &Z         /u^y3
xY4            xc`;,?3E! $9 4(5/%5/=3/%(5#-3/$'3=DAZ݁zE99JJsS2S
48յjhNbq	ȤҜ"cB2KJKt |4R    +    g  %         }&+:\JZ/=            xQIN0Bb)%4ЖIB2tK&Nc)a(Yr
l9'lIZ`灐/B&	!pPPRIف?27scsb1	 d}[7fb|*p>XQm\(0P2Qm0yf.hE:z⸑Ҵ04J%h%Jq*%i͆;]+XR}tCc,Af?e4y룙⅐s'+{pP'\hPY5h oܠ#^0θ/]bcPxFKhd{(ڰQ,