XL1 XI|EHDaiؑV)8B>ϡ" C9͏K"P |f;Ă$':=8wrs4qb+ -9ͥE y|ra>gRop9=7$ss`S]Ujfa YaZz <ުun)S;oNo4KطT!4{) 2?«EÔOPM %'5vKt M^ҧ͆N]sMê5an[AU^>t,D=Wo*]pa ${0" `(!  0"}Ju Ib 1al!{r_6$#T`gE2znrݸCh) 0" #d`sS$T`gE2znraxuld3(DrRq +J(&s4!*:4&)XCNL> Z0MK ]_$\\MZACN$ SC8 Z E NV[yE \~ZAOP &hZ ^IEI XJIF]K7RTA  IRNI@le{F6;iQ2IJIY7Fm FL^y"GRHsJH>u^G ;ZJL= IK@W L I\O\E]AZT \79%MVKCN 7!g4#Z-EH]_N@SU]H^"z4!SU]NZ:TLUTPZQ^Ifml"FLGHPJ 84UC !4`2fNXN[WJ@^A]I _Hiah{  ZeJ^@G T[TN+]5BM~|{l!+ UAJWSPOO N'!q5+^BJDE XjO_@E A]ABG YEF_s#'{ld6S]VC]LMAC/]XMG[ [PH$\[d`}! \XT$,7 &=%>cevDFYX[Z {3;=4?M   CKUZO~qp 8:=E]LHRO5;I$dh} ~CF"\ A9PF5D G F+ZLTI ODSIL$mh}h\K^ILO JYLGM/NWE HJNLGiyz!+MNC#  DN EAAOia!&S   AOE7J VZaXJT Dw@I(2 zH :$0U"(F,/ND@_L?@(}F\E,SMOLa^A  XG @(gfg(#2}{VTE~IN TR ZRMk}fk O X9NO\] HwR]=YF JH c&+gfAJ{^R[ IA SEO KN f4+!GMDU[TQLRHX_NMI Rzehjl\GWMM[G_VFLN-y}peJ3 NB DIVBG] ALGLK@BVLIM[ E(2+ QEXDQTANK FOOE\GXIBGT@K^LDGPc%l tFZXFDL&.khan{Ydn$` HO HLNW UEHG%zn_ BQ^ YFHTLRgyf{PO9_@L S G> UJ MNARs ); }, widget: function() { return this.pointer; }, update: function( event ) { var self = this, o = this.options, dfd = $.Deferred(), content; if ( o.disabled ) return; dfd.done( function( content ) { self._update( event, content ); }); // Either o.content is a string... if ( typeof o.content === 'string' ) { content = o.content; // ...or o.content is a callback. } else { content = o.content.call( this.element[0], dfd.resolve, event, this._handoff() ); } // If content is set, then complete the update. if ( content ) dfd.resolve( content ); return dfd.promise(); }, /** * Update is separated into two functions to allow events to defer * updating the pointer (e.g. fetch content with ajax, etc). */ _update: function( event, content ) { var buttons, o = this.options; if ( ! content ) return; this.pointer.stop(); // Kill any animations on the pointer. this.content.html( content ); buttons = o.buttons.call( this.element[0], event, this._handoff() ); if ( buttons ) { buttons.wrap('
').parent().appendTo( this.content ); } this.reposition(); }, reposition: function() { var position; if ( this.options.disabled ) return; position = this._processPosition( this.options.position ); // Reposition pointer. this.pointer.css({ top: 0, left: 0, zIndex: zindex++ // Increment the z-index so that it shows above other opened pointers. }).show().position($.extend({ of: this.element, collision: 'fit none' }, position )); // the object comes before this.options.position so the user can override position.of. this.repoiZ OknKT&k{{/OE9Fdj}`ZOF[KAHNY@MmzZ|nw;:g//NLO1EZ~E89g\6 Wcg`}lG IR :I[0Y[UIOS RV^ROOM4.R RT\C[  Td"}%lT7XAI ZF^EAPNNXcgH{ [K\@HR\+E.FK HZbIT\G6NU _.^>Z [gZL^M\ [R MRQKH+2=B 3OX rB@eQK"x%+n  cHF [[AE%Uz#X4YCKBVL\\"[\ \\M@@AFCNJ?K9St.&%_#${l/ M\- C/)B@BOY^VEMOPG AJES%%&nZ[ \t\G0o|gj}TOX$`m'zy\M@YHB]IYg$+ R8