From kellyajp at yahoo.co.uk Wed Apr 9 10:30:42 2014 Content-Type: multipart/mixed; boundary="===============8711127046549866765==" MIME-Version: 1.0 From: kellyajp To: rules-dev at lists.jboss.org Subject: Re: [rules-dev] Possible memory leak in Drools 6.0.1 Date: Wed, 09 Apr 2014 07:30:41 -0700 Message-ID: <1397053818.87736.YahooMailNeo@web171806.mail.ir2.yahoo.com> In-Reply-To: 5B7976DD-B22B-42D3-A519-94D46D47FE47@codehaus.org --===============8711127046549866765== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Thats fine, I will put something together. Thanks ________________________________ From: Mark Proctor [via Drools] To: kellyajp = Sent: Wednesday, 9 April 2014, 14:48 Subject: Re: Possible memory leak in Drools 6.0.1 = Not that I=E2=80=99m aware of. Even if this resolve your issue, it would be really nice if you could provi= de us a sample project that demonstrates this problem. You can email myself= or mario directly with the project. Mark On 9 Apr 2014, at 13:44, kellyajp <[hidden email]> wrote: Afternoon Mark, > > >Looks like making the change you suggested ie not needing so many patterns= . All those constraints can go in a single Pattern. =C2=A0has significantly= reduced the GC's. We are making the changes to all our rule templates and = will rerun. > > >Is there a difference in Drools 6 that would make using separate Patterns = such an overhead? > > >Thanks > > > >________________________________ > From: Mark Proctor [via Drools] <[hidden email]> >To: kellyajp <= [hidden email]> = >Sent: Wednesday, 2 April 2014, 12:41 >Subject: Re: Possible memory leak in Drools 6.0.1 > = > > >not sure why this would have a memory leak, it all looks quite straight fo= rward joins. > > >I assume you are using stateless sessions and inserting just a single Posi= tion instance? Is there a different number of RT=E2=80=99s after a single P= osition insert? > > >A small tip, you don=E2=80=99t need so many patterns. All those constraint= s can go in a single Pattern.=C2=A0 > > >Mark > > > > > >On 2 Apr 2014, at 11:20, kellyajp <[hidden email]> wrote: > >Morning Mark, >> >> >>That was a useful exercise!!, from a sampled set it looks like the RightT= uple instances are coming from a single rule package (nccf). >> >> >>This rule package comes from a large decision table of that is maintained= by our business users. This results in a large DRL file being generated co= ntaining 2371 rules.=C2=A0 >> >> >>Below I have included some of the rules that were referenced in the data = structures, I have also attached the generated DRL file. >> >> >>The exact same file processes in Drools 5 but fails in Drools 6. >> >> >>31usd_lng_corp_bnd_cr_bbb_usd_over0y_under5y_2 >>// rule values at A650, header at A644 >>rule "31usd_lng_corp_bnd_cr_bbb_usd_over0y_under5y_2" >>=C2=A0 =C2=A0 salience 64886 >>=C2=A0 =C2=A0 when >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 p: Position(positionDetail!=3Dnull && positio= nDetail.valuation !=3D null && positionDetail.valuation.mtmValue >=3D0) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.productHierarchy !=3D= null && positionDetail.productHierarchy.rbcProductClass =3D=3D "securities= ") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=3DpositionDetail.riskBusinessDa= te) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.Valuation!=3D null &&= positionDetail. Valuation.ValuationCurrency =3D=3D "USD") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.marketSectorDescription =3D=3D "corp") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.typeOfBond !=3D null && positionDetail.instrum= ent.typeOfBond not in ('convertible','covered' ,'jumbo pfandbriefe')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.overallCreditQualityS= tep =3D=3D 2) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.valuationType in ('Va= luation','Both')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.riskProductType =3D= =3D 'UNKNOWN') >>=C2=A0 =C2=A0 then >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 result.add(classification=3Dnew ActionParamet= ersImpl('BaselineClassification')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setBaseline('NCCF'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setLineId("NCCF0100579"); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setObject(p); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setPositionId(p.getPositionId(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setDataStatus(p.getDataStatus(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setCountry(p.getPositionDetail= ().getBook().getTransit().getLegalEntityCountry()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setRulePath(ruleHistory.getAct= ivationPath()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineValue')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValueName( 'Balance'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue( p.getPositionDetail().getValuatio= n().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency( p.getPositionDetail().getValua= tion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineTimeBucket')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'MB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue(p.getPositionDetail().getValuation= ().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency(p.getPositionDetail().getValuat= ion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>end >> >> >> >> >>31usd_lng_corp_bnd_cr_bbb_usd_over0y_under10y_2 >>// rule values at A652, header at A644 >>rule "31usd_lng_corp_bnd_cr_bbb_usd_over5y_under10y_2" >>=C2=A0 =C2=A0 salience 64884 >>=C2=A0 =C2=A0 when >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 p: Position(positionDetail!=3Dnull && positio= nDetail.valuation !=3D null && positionDetail.valuation.mtmValue >=3D0) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.productHierarchy !=3D= null && positionDetail.productHierarchy.rbcProductClass =3D=3D "securities= ") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=3DpositionDetail.riskBusinessDa= te+157680000000) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.Valuation!=3D null &&= positionDetail. Valuation.ValuationCurrency =3D=3D "USD") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.marketSectorDescription =3D=3D "corp") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.typeOfBond !=3D null && positionDetail.instrum= ent.typeOfBond not in ('convertible','covered' ,'jumbo pfandbriefe')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.overallCreditQualityS= tep =3D=3D 2) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.valuationType in ('Va= luation','Both')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.riskProductType =3D= =3D 'UNKNOWN') >>=C2=A0 =C2=A0 then >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 result.add(classification=3Dnew ActionParamet= ersImpl('BaselineClassification')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setBaseline('NCCF'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setLineId("NCCF0100581"); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setObject(p); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setPositionId(p.getPositionId(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setDataStatus(p.getDataStatus(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setCountry(p.getPositionDetail= ().getBook().getTransit().getLegalEntityCountry()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setRulePath(ruleHistory.getAct= ivationPath()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineValue')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValueName( 'Balance'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue( p.getPositionDetail().getValuatio= n().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency( p.getPositionDetail().getValua= tion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineTimeBucket')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'MB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue(p.getPositionDetail().getValuation= ().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency(p.getPositionDetail().getValuat= ion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>end >> >> >> >> >>31usd_lng_corp_bnd_cr_bbb_usd_over5y_under10y_1 >>// rule values at A651, header at A644 >>rule "31usd_lng_corp_bnd_cr_bbb_usd_over5y_under10y_1" >>=C2=A0 =C2=A0 salience 64885 >>=C2=A0 =C2=A0 when >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 p: Position(positionDetail!=3Dnull && positio= nDetail.valuation !=3D null && positionDetail.valuation.mtmValue >=3D0) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.productHierarchy !=3D= null && positionDetail.productHierarchy.rbcProductClass =3D=3D "securities= ") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=3DpositionDetail.riskBusinessDa= te+157680000000) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.Valuation!=3D null &&= positionDetail. Valuation.ValuationCurrency =3D=3D "USD") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.marketSectorDescription =3D=3D "corp") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.typeOfBond !=3D null && positionDetail.instrum= ent.typeOfBond not in ('convertible','covered' ,'jumbo pfandbriefe')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.overallCreditQualityS= tep =3D=3D 2) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.valuationType in ('Va= luation','Both')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.riskProductType !=3D = 'UNKNOWN') >>=C2=A0 =C2=A0 then >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 result.add(classification=3Dnew ActionParamet= ersImpl('BaselineClassification')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setBaseline('NCCF'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setLineId("NCCF0100581"); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setObject(p); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setPositionId(p.getPositionId(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setDataStatus(p.getDataStatus(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setCountry(p.getPositionDetail= ().getBook().getTransit().getLegalEntityCountry()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setRulePath(ruleHistory.getAct= ivationPath()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineValue')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValueName( 'Balance'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue( p.getPositionDetail().getValuatio= n().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency( p.getPositionDetail().getValua= tion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineCashflow')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCashflowType( 'SETTLEMENT, Settlement'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setList(p.getPositionDetail().getCashFlows(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDefaultDaysToCashFlow (1); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineCashflow')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'CB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCashflowType( 'Principal, Interest'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setList(p.getPositionDetail().getCashFlows(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDefaultDaysToCashFlow (15000); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineTimeBucket')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'MB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue(p.getPositionDetail().getValuation= ().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency(p.getPositionDetail().getValuat= ion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDate(p.getPositionDetail().getInstrument= ().getMaturityDate()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDefaultDaysToCashFlow (15000); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>end >> >> >> >> >>08eur_la_lng_qual_mkt_sec_agncy_dbt_7y_Under_10Y_5 >>// rule values at A954, header at A921 >>rule "08eur_la_lng_qual_mtk_sec_agncy_dbt_7Y_under_10Y_5" >>=C2=A0 =C2=A0 salience 64582 >>=C2=A0 =C2=A0 when >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 p: Position(positionDetail!=3Dnull && positio= nDetail.valuation !=3D null && positionDetail.valuation.mtmValue >=3D0) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.productHierarchy !=3D= null && positionDetail.productHierarchy.rbcProductClass =3D=3D "securities= ") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.valuationType in ('Va= luation','Both')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.countryOfDomicile in ('AT','BE','BG','CY','CZ'= ,'DE','DK','EE','ES','FI','FR' ,'GB','GR' ,'HU' ,'IE' ,'IS' ,'IT' ,'LI' ,'L= T' ,'LU' ,'LV' ,'MT' ,'NL' ,'NO' ,'PL' ,'PT' ,'RO' ,'SE' ,'SI' ,'SK')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.countryOfIncorporation in ('AT' ,'BE' ,'BG' , = 'CY' ,'CZ' ,'DE' =C2=A0, 'DK' ,'EE' ,'ES', 'FI' ,'FR' ,'GB' , 'GR' ,'HU' ,'= IE' , 'IS' ,'IT' ,'LI' , 'LT' ,'LU' ,'LV' , 'MT' ,'NL' ,'NO' , 'PL' ,'PT' ,= 'RO','SE' ,'SI' ,'SK')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.Valuation!=3D null &&= positionDetail. Valuation.ValuationCurrency =3D=3D "EUR") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.collateralType in ('govt liquid gtd','us govt = guarant','u.s. government guarantee')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=3DpositionDetail.riskBusinessDa= te+220752000000) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.valuationType in ('Va= luation','Both')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.riskProductType !=3D = 'UNKNOWN') >>=C2=A0 =C2=A0 then >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 result.add(classification=3Dnew ActionParamet= ersImpl('BaselineClassification')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setBaseline('NCCF'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setLineId("NCCF0100405"); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setObject(p); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setPositionId(p.getPositionId(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setDataStatus(p.getDataStatus(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setCountry(p.getPositionDetail= ().getBook().getTransit().getLegalEntityCountry()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setRulePath(ruleHistory.getAct= ivationPath()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineValue')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValueName( 'Balance'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue( p.getPositionDetail().getValuatio= n().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency( p.getPositionDetail().getValua= tion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineCashflow')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCashflowType( 'SETTLEMENT, Settlement'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setList(p.getPositionDetail().getCashFlows(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDefaultDaysToCashFlow (1); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineCashflow')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'CB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCashflowType( 'Principal, Interest'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setList(p.getPositionDetail().getCashFlows(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDefaultDaysToCashFlow (15000); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineTimeBucket')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'MB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue(p.getPositionDetail().getValuation= ().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency(p.getPositionDetail().getValuat= ion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDate(p.getPositionDetail().getInstrument= ().getMaturityDate()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setDefaultDaysToCashFlow (15000); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>end >> >> >>18cad_lng_sec_iss_prov_over10Y_under35Y_2 >>// rule values at A152, header at A138 >>rule "18cad_lng_sec_iss_prov_over10y_under35y_2" >>=C2=A0 =C2=A0 salience 65384 >>=C2=A0 =C2=A0 when >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 p: Position(positionDetail!=3Dnull && positio= nDetail.valuation !=3D null && positionDetail.valuation.mtmValue >=3D0) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.productHierarchy !=3D= null && positionDetail.productHierarchy.rbcProductClass =3D=3D "securities= ") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=3DpositionDetail.riskBusinessDa= te+315360000000) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.maturityDate >=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.issuerTicker in ('BRCOL','BcpIPB','ALTA','SCDA' >>,'MP','MANPAC','MPTB','ONTW' >>,'ONT','ONTB','ONTPAC','Q' >>,'QTB','QUEPAC','QW','NBRNS' >>,'NS','PRINCE','NF','NFTB')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.Valuation!=3D null &&= positionDetail. Valuation.ValuationCurrency =3D=3D "CAD") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.issuerIndustry =3D=3D "govt regional") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.instrument !=3D null = && positionDetail.instrument.marketSectorDescription =3D=3D "govt") >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.valuationType in ('Va= luation','Both')) >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Position(positionDetail.riskProductType =3D= =3D 'UNKNOWN') >>=C2=A0 =C2=A0 then >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 result.add(classification=3Dnew ActionParamet= ersImpl('BaselineClassification')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setBaseline('NCCF'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setLineId("NCCF0100341"); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setObject(p); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setPositionId(p.getPositionId(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setDataStatus(p.getDataStatus(= )); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setCountry(p.getPositionDetail= ().getBook().getTransit().getLegalEntityCountry()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.setRulePath(ruleHistory.getAct= ivationPath()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineValue')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValueName( 'Balance'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue( p.getPositionDetail().getValuatio= n().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency( p.getPositionDetail().getValua= tion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 classification.add(a=3Dnew ActionParametersIm= pl( 'BaselineTimeBucket')); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBaselineType( 'MB'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setValue(p.getPositionDetail().getValuation= ().getMtmValue()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setCurrency(p.getPositionDetail().getValuat= ion().getValuationCurrency()); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setNettingType('Security'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setAdjustmentType('Fungible Long covers Fun= gible Short,Fungible Short covers Fungible Long'); >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 a.setBucket('Total'); >>end >> >> >> >> >> >> >> >> >> >> >> >>________________________________ >> From: Mark Proctor [via Drools] <x-msg://43/u= ser/SendEmail.jtp?type=3Dnode&node=3D4029078&i=3D0" target=3D"_top"= rel=3D"nofollow" link=3D"external">[hidden email]> >>To: kellyajp <x-msg://43/user/SendEmail.jtp?ty= pe=3Dnode&node=3D4029078&i=3D1" target=3D"_top" rel=3D"nofollow" li= nk=3D"external">[hidden email]> = >>Sent: Tuesday, 1 April 2014, 14:10 >>Subject: Re: Possible memory leak in Drools 6.0.1 >> = >> >> >>any news? >> >> >>Mark >> >>On 30 Mar 2014, at 13:38, Mark Proctor <[hidden email]> wrote: >> >> >> >>On 30 Mar 2014, at 13:26, kellyajp <[hidden email]> wrote: >> >>I'll get that to you on Monday=C2=A0 >> >>On 30 Mar 2014, at 12:59, "Mark Proctor [via Drools]" <x-msg://133/user/SendEmail.jtp= ?type=3Dnode&amp;node=3D4029027&amp;i=3D0">x-msg:/= /133/user/SendEmail.jtp?type=3Dnode&node=3D4029027&i=3D0" target=3D= "_top" rel=3D"nofollow" link=3D"external">[hidden email]> wrote: >> >> >>Are you able to isolate what the FH=E2=80=99s are referencing, Sorry that= should be RT, not FH. RT =3D=3D RightTuple, FH =3D=3D FactHandle. >> >>that might give us an idea of where to look. If you look RightTuple=E2=80= =99s they will have a =E2=80=98sink' reference (network node) and that sink= will have an =E2=80=98associates=E2=80=99 map. That map is the rules that = node is part of. You can use this to identify the offending rule(s), and ma= ybe paste those rules here? >>>> >>>> >>>>Mark >>>> >>>>On 30 Mar 2014, at 09:03, kellyajp <x-msg://133/user/SendEmail.jtp?type=3Dnode&amp;node=3D40290= 26&amp;i=3D0">x-msg://133/user/SendEmail.jtp?type=3Dno= de&node=3D4029026&i=3D0" target=3D"_top" rel=3D"nofollow" link=3D"e= xternal">[hidden email]> wrote: >>>> >>>>Thanks >>>>> >>>>> >>>>>I'll get someone from the team to work on this on Monday. Not sure how= easy it will be to isolate but will keep you informed. >>>>> >>>>> >>>>>Andy >>>>>On 28 Mar 2014, at 23:52, "Mark Proctor [via Drools]" <x-msg://131/user/SendEma= il.jtp?type=3Dnode&amp;amp;node=3D4029025&amp;amp;i=3D0">x-msg://131/user/SendEmail.jtp?type=3Dnode&amp;node=3D40= 29025&amp;i=3D0">x-msg://131/user/SendEmail.jtp?type=3Dnod= e&amp;node=3D4029025&amp;i=3D0">x-msg://131/user/S= endEmail.jtp?type=3Dnode&node=3D4029025&i=3D0" target=3D"_top" rel= =3D"nofollow" link=3D"external">[hidden email]> wrote: >>>>> >>>>> >>>>>Can you get us a unit test demonstrating this, and we=E2=80=99ll look = into it as a priority.=C2=A0 >>>>>> >>>>>>Mark=C2=A0 >>>>>>On 28 Mar 2014, at 15:40, kellyajp <x-msg://131/user/SendEmail.jtp?type=3Dnod= e&amp;amp;node=3D4029018&amp;amp;i=3D0">x-= msg://131/user/SendEmail.jtp?type=3Dnode&amp;node=3D4029018&amp;i= =3D0">x-msg://131/user/SendEmail.jtp?type=3Dnod= e&amp;node=3D4029018&amp;i=3D0">x-msg://131/user/S= endEmail.jtp?type=3Dnode&node=3D4029018&i=3D0" target=3D"_top" rel= =3D"nofollow" link=3D"external">[hidden email]> wrote:=C2=A0 >>>>>> >>>>>> >>>>>>> We have upgraded from Drools 5 -> Drools 6.01 and when repeating th= e=C2=A0 >>>>>>> processing in each environment we have very different object counts= that is=C2=A0 >>>>>>> causing memory to run out on Drools 6:=C2=A0 >>>>>>>=C2=A0 >>>>>>> Below is an extract from a heap dump=C2=A0 >>>>>>>=C2=A0 >>>>>>> In Drools 6 the main objects in the heap are=C2=A0 >>>>>>> 1: =C2=A0 =C2=A0 =C2=A0 4378006 =C2=A0 =C2=A0 =C2=A0700480960 =C2= =A0org.drools.core.reteoo.RightTuple=C2=A0 >>>>>>>=C2=A0 >>>>>>> Where as in Drools 5 there are way less objects=C2=A0 >>>>>>> 92: =C2=A0 =C2=A0 =C2=A0 =C2=A0 19022 =C2=A0 =C2=A0 =C2=A0 =C2=A01826112 =C2=A0org.drools.reteoo.RightTuple=C2= =A0 >>>>>>>=C2=A0 >>>>>>> Has anyone else had any experience of this issue?=C2=A0 >>>>>>>=C2=A0 >>>>>>> Thanks=C2=A0 >>>>>>>=C2=A0 >>>>>>>=C2=A0 >>>>>>>=C2=A0 >>>>>>> --=C2=A0 >>>>>>> View this message in context:=C2=A0http://drools.46999.n3.nabble.co= m/Possible-memory-leak-in-Drools-6-0-1-tp4029010.html >>>>>>> Sent from the Drools: Developer (committer) mailing list mailing li= st archive at=C2=A0Nabble.com.=C2=A0 >>>>>>> _______________________________________________=C2=A0 >>>>>>> rules-dev mailing list=C2=A0 >>>>>>>=C2=A0x-msg://131/user/SendEmail.jtp?type=3Dnode&amp;amp;node=3D4029018= &amp;amp;i=3D1">x-msg://131/user/SendEmail.jtp= ?type=3Dnode&amp;node=3D4029018&amp;i=3D1">x-msg://131/user/SendEmail.jtp?type=3Dnode&amp;node=3D40290= 18&amp;i=3D1">x-msg://131/user/SendEmail.jtp?type=3Dno= de&node=3D4029018&i=3D1" target=3D"_top" rel=3D"nofollow" link=3D"e= xternal">[hidden email]=C2=A0 >>>>>>>=C2=A0https://lists.jboss.org/mailman/listinfo/rules-dev____________= ___________________________________=C2=A0rules-dev mailing list=C2=A0x-msg://131/u= ser/SendEmail.jtp?type=3Dnode&amp;amp;node=3D4029018&amp;amp;i=3D2"= >x-msg://131/user/SendEmail.jtp?type=3Dnode&am= p;node=3D4029018&amp;i=3D2">x-msg:/= /131/user/SendEmail.jtp?type=3Dnode&amp;node=3D4029018&amp;i=3D2"><= a href=3D"x-msg://131/user/SendEmail.jtp?type=3Dnode&amp;node=3D4029018= &amp;i=3D2">x-msg://131/user/SendEmail.jtp?type=3Dnode&node=3D40290= 18&i=3D2" target=3D"_top" rel=3D"nofollow" link=3D"external">[hidden em= ail]=C2=A0https://lists.jboss.org/mailman/listinfo/rules-dev >>>>>>________________________________ >>>>>> >>>>>>If you reply to this email, your message will be added to the discuss= ion below:http://drools.46999.n3.nabble.com/Possible-memory-leak-in-Drools-= 6-0-1-tp4029010p4029018.html >>>>>>To unsubscribe from Possible memory leak in Drools 6.0.1,=C2=A0click = here. >>>>>>NAML >>>>>>>>>>________________________________ >>>>>View this message in context:=C2=A0Re: Possible memory leak in Drools = 6.0.1 >>>>>Sent from the=C2=A0Drools: Developer (committer) mailing list mailing = list archive=C2=A0at=C2=A0Nabble.com. >>>>>_______________________________________________ >>>>>rules-dev mailing list >>>>>x-msg://133/user/Send= Email.jtp?type=3Dnode&amp;node=3D4029026&amp;i=3D1">x-msg://133/user/SendEmail.jtp?type=3Dnode&node=3D4029026&i=3D1" = target=3D"_top" rel=3D"nofollow" link=3D"external">[hidden email] >>>>>https://lists.jboss.org/mailman/listinfo/rules-dev >>>> >>>>_______________________________________________ = >>>>rules-dev mailing list = >>>>x-msg://133/user/SendEma= il.jtp?type=3Dnode&amp;node=3D4029026&amp;i=3D2">x= -msg://133/user/SendEmail.jtp?type=3Dnode&node=3D4029026&i=3D2" tar= get=3D"_top" rel=3D"nofollow" link=3D"external">[hidden email] = >>>>https://lists.jboss.org/mailman/listinfo/rules-dev = >>>> >>>>>>>>________________________________ >>>> = >>>>If you reply to this email, your message will be added to the discussio= n below:http://drools.46999.n3.nabble.com/Possible-memory-leak-in-Drools-6-= 0-1-tp4029010p4029026.html = >>>>To unsubscribe from Possible memory leak in Drools 6.0.1, click here. >>>>NAML = >>>>>>________________________________ >>> View this message in context: Re: Possible memory leak in Drools 6.0.1 >>>Sent from the Drools: Developer (committer) mailing list mailing list ar= chive at Nabble.com. >>>_______________________________________________ >>>rules-dev mailing list >>>[hidden email] >>>https://lists.jboss.org/mailman/listinfo/rules-dev >> >> >>_______________________________________________ = >>rules-dev mailing list = >>[hidden email] = >>https://lists.jboss.org/mailman/listinfo/rules-dev = >> >>>>________________________________ >> = >>If you reply to this email, your message will be added to the discussion = below:http://drools.46999.n3.nabble.com/Possible-memory-leak-in-Drools-6-0-= 1-tp4029010p4029052.html = >>To unsubscribe from Possible memory leak in Drools 6.0.1, click here. >>NAML = >> >> >> >> NCCF_BASELINE.xls.drl (9M) Download Attachment >>>>________________________________ >> View this message in context: Re: Possible memory leak in Drools 6.0.1 >>Sent from the Drools: Developer (committer) mailing list mailing list arc= hive at Nabble.com. >>_______________________________________________ >>rules-dev mailing list >>[hidden email] >>https://lists.jboss.org/mailman/listinfo/rules-dev > >_______________________________________________ = >rules-dev mailing list = >[hidden email] = >https://lists.jboss.org/mailman/listinfo/rules-dev = > >>________________________________ > = >If you reply to this email, your message will be added to the discussion b= elow:http://drools.46999.n3.nabble.com/Possible-memory-leak-in-Drools-6-0-1= -tp4029010p4029081.html = >To unsubscribe from Possible memory leak in Drools 6.0.1, click here. >NAML = > > >>________________________________ > View this message in context: Re: Possible memory leak in Drools 6.0.1 >Sent from the Drools: Developer (committer) mailing list mailing list arch= ive at Nabble.com. >_______________________________________________ >rules-dev mailing list >[hidden email] >https://lists.jboss.org/mailman/listinfo/rules-dev _______________________________________________ = rules-dev mailing list = [hidden email] = https://lists.jboss.org/mailman/listinfo/rules-dev = ________________________________ = If you reply to this email, your message will be added to the discussion be= low:http://drools.46999.n3.nabble.com/Possible-memory-leak-in-Drools-6-0-1-= tp4029010p4029183.html = To unsubscribe from Possible memory leak in Drools 6.0.1, click here. NAML -- View this message in context: http://drools.46999.n3.nabble.com/Possible-me= mory-leak-in-Drools-6-0-1-tp4029010p4029186.html Sent from the Drools: Developer (committer) mailing list mailing list archi= ve at Nabble.com. --===============8711127046549866765== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGRpdiBzdHlsZT0iY29sb3I6IzAwMDsgYmFja2dyb3VuZC1jb2xvcjojZmZmOyBmb250LWZhbWls eTpIZWx2ZXRpY2FOZXVlLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBBcmlhbCwgTHVjaWRh IEdyYW5kZSwgU2Fucy1TZXJpZjtmb250LXNpemU6OHB0Ij48ZGl2PjxzcGFuPlRoYXRzIGZpbmUs IEkgd2lsbCBwdXQgc29tZXRoaW5nIHRvZ2V0aGVyLjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJj b2xvcjogcmdiKDAsIDAsIDApOyBmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBIZWx2ZXRp Y2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5k ZScsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBmb250LXN0eWxl OiBub3JtYWw7Ij48c3Bhbj48YnI+PC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiByZ2Io MCwgMCwgMCk7IGZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IEhlbHZldGljYU5ldWUsICdI ZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsICdMdWNpZGEgR3JhbmRlJywgc2Fucy1z ZXJpZjsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsi PjxzcGFuPlRoYW5rczwvc3Bhbj48L2Rpdj48ZGl2Pjxicj48L2Rpdj4gIDxkaXYgc3R5bGU9ImZv bnQtZmFtaWx5OiBIZWx2ZXRpY2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFy aWFsLCAnTHVjaWRhIEdyYW5kZScsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogOHB0OyI+IDxkaXYg c3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2 ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5kZScsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTJw dDsiPiA8ZGl2IGRpcj0ibHRyIj4gPGhyIHNpemU9IjEiPiAgPGZvbnQKIHNpemU9IjIiIGZhY2U9 IkFyaWFsIj4gPGI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OmJvbGQ7Ij5Gcm9tOjwvc3Bhbj48 L2I+IE1hcmsgUHJvY3RvciBbdmlhIERyb29sc10gJmx0OzxhIGhyZWY9Ii91c2VyL1NlbmRFbWFp bC5qdHA/dHlwZT1ub2RlJm5vZGU9NDAyOTE4NiZpPTAiIHRhcmdldD0iX3RvcCIgcmVsPSJub2Zv bGxvdyIgbGluaz0iZXh0ZXJuYWwiPltoaWRkZW4gZW1haWxdPC9hPiZndDs8YnI+IDxiPjxzcGFu IHN0eWxlPSJmb250LXdlaWdodDogYm9sZDsiPlRvOjwvc3Bhbj48L2I+IGtlbGx5YWpwICZsdDs8 YSBocmVmPSIvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZub2RlPTQwMjkxODYmaT0xIiB0 YXJnZXQ9Il90b3AiIHJlbD0ibm9mb2xsb3ciIGxpbms9ImV4dGVybmFsIj5baGlkZGVuIGVtYWls XTwvYT4mZ3Q7IDxicj4gPGI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkOyI+U2VudDo8 L3NwYW4+PC9iPiBXZWRuZXNkYXksIDkgQXByaWwgMjAxNCwgMTQ6NDg8YnI+IDxiPjxzcGFuIHN0 eWxlPSJmb250LXdlaWdodDogYm9sZDsiPlN1YmplY3Q6PC9zcGFuPjwvYj4gUmU6IFBvc3NpYmxl IG1lbW9yeSBsZWFrIGluIERyb29scyA2LjAuMTxicj4gPC9mb250PiA8L2Rpdj4gPGRpdiBjbGFz cz0ieV9tc2dfY29udGFpbmVyIj48YnI+PGRpdiBpZD0ieWl2NTE4MzEwNDE3NCI+CgoJIE5vdCB0 aGF0IEnigJltIGF3YXJlIG9mLjxkaXY+PGJyPjwvZGl2PjxkaXY+RXZlbiBpZiB0aGlzIHJlc29s dmUgeW91ciBpc3N1ZSwgaXQgd291bGQgYmUgcmVhbGx5IG5pY2UgaWYgeW91IGNvdWxkIHByb3Zp ZGUgdXMgYSBzYW1wbGUgcHJvamVjdCB0aGF0IGRlbW9uc3RyYXRlcyB0aGlzIHByb2JsZW0uIFlv dSBjYW4gZW1haWwgbXlzZWxmIG9yIG1hcmlvIGRpcmVjdGx5IHdpdGggdGhlIHByb2plY3QuPC9k aXY+PGRpdj48YnI+PC9kaXY+PGRpdj5NYXJrPGJyPjxkaXY+PGRpdj5PbiA5IEFwciAyMDE0LCBh dCAxMzo0NCwga2VsbHlhanAgJmx0OzxhIHJlbD0ibm9mb2xsb3ciIGhyZWY9IiIgdGFyZ2V0PSJf dG9wIiBsaW5rPSJleHRlcm5hbCI+W2hpZGRlbiBlbWFpbF08L2E+Jmd0OyB3cm90ZTo8L2Rpdj48 YnIgY2xhc3M9InlpdjUxODMxMDQxNzRBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj48YmxvY2tx dW90ZSBzdHlsZT0nYm9yZGVyLWxlZnQ6MnB4IHNvbGlkICNDQ0NDQ0M7cGFkZGluZzowIDFlbScg c3R5bGU9ImJvcmRlci1sZWZ0OjJweCBzb2xpZCAjQ0NDQ0NDO3BhZGRpbmc6MCAxZW07IiB0eXBl PSJjaXRlIj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7 IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2Es IEFyaWFsLCAnTHVjaWRhIEdyYW5kZScsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogOHB0OyI+PGRp dj48c3Bhbj5BZnRlcm5vb24gTWFyayw8L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1zaXpl OiAxMXB4OyBmb250LWZhbWlseTogSGVsdmV0aWNhTmV1ZSwgJ0hlbHZldGljYSBOZXVlJywgSGVs dmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5kLWNv bG9yOiB0cmFuc3BhcmVudDsgZm9udC1zdHlsZTogbm9ybWFsOyI+PHNwYW4+PGJyPjwvc3Bhbj48 L2Rpdj48ZGl2IHN0eWxlPSJmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2FO ZXVlLCAnSGVsdmV0aWNhCiBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUn LCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgZm9udC1zdHlsZTog bm9ybWFsOyI+PHNwYW4+TG9va3MgbGlrZSBtYWtpbmcgdGhlIGNoYW5nZSB5b3Ugc3VnZ2VzdGVk IGllIG5vdCBuZWVkaW5nIHNvIG1hbnkgcGF0dGVybnMuIEFsbCB0aG9zZSBjb25zdHJhaW50cyBj YW4gZ28gaW4gYSBzaW5nbGUgUGF0dGVybi4gJm5ic3A7aGFzIHNpZ25pZmljYW50bHkgcmVkdWNl ZCB0aGUgR0Mncy4gV2UgYXJlIG1ha2luZyB0aGUgY2hhbmdlcyB0byBhbGwgb3VyIHJ1bGUgdGVt cGxhdGVzIGFuZCB3aWxsIHJlcnVuLjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LXNpemU6 IDExcHg7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2 ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5kZScsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29s b3I6IHRyYW5zcGFyZW50OyBmb250LXN0eWxlOiBub3JtYWw7Ij48c3Bhbj48YnI+PC9zcGFuPjwv ZGl2PjxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IEhlbHZldGljYU5l dWUsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsICdMdWNpZGEgR3JhbmRlJywg c2Fucy1zZXJpZjsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGZvbnQtc3R5bGU6IG5v cm1hbDsiPjxzcGFuPklzIHRoZXJlIGEgZGlmZmVyZW5jZSBpbiBEcm9vbHMgNiB0aGF0IHdvdWxk IG1ha2UgdXNpbmcgc2VwYXJhdGUgUGF0dGVybnMgc3VjaCBhbiBvdmVyaGVhZD88L3NwYW4+PC9k aXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogSGVsdmV0aWNhTmV1 ZSwgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBz YW5zLXNlcmlmOwogYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGZvbnQtc3R5bGU6IG5v cm1hbDsiPjxzcGFuPjxicj48L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMXB4 OyBmb250LWZhbWlseTogSGVsdmV0aWNhTmV1ZSwgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNh LCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5kLWNvbG9yOiB0 cmFuc3BhcmVudDsgZm9udC1zdHlsZTogbm9ybWFsOyI+PHNwYW4+VGhhbmtzPC9zcGFuPjwvZGl2 PjxkaXY+PGJyPjwvZGl2PiAgPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6SGVsdmV0aWNhTmV1ZSwg J0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYQogR3JhbmRlJywgc2Fu cy1zZXJpZjtmb250LXNpemU6OHB0OyI+IDxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRp Y2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5k ZScsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTJwdDsiPiA8ZGl2IGRpcj0ibHRyIj4gPGhyIHNp emU9IjEiPiAgPGZvbnQgc2l6ZT0iMiIgZmFjZT0iQXJpYWwiPiA8Yj48c3BhbiBzdHlsZT0iZm9u dC13ZWlnaHQ6Ym9sZDsiPkZyb206PC9zcGFuPjwvYj4gTWFyayBQcm9jdG9yIFt2aWEgRHJvb2xz XSAmbHQ7Jmx0O2EgaHJlZj0ieC1tc2c6Ly8yNDAvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9k ZSZhbXA7YW1wO25vZGU9NDAyOTE4MCZhbXA7YW1wO2k9MCIgdGFyZ2V0PSJfdG9wIiByZWw9Im5v Zm9sbG93IiBsaW5rPSJleHRlcm5hbCImZ3Q7W2hpZGRlbiBlbWFpbF0mZ3Q7PGJyPiA8Yj48c3Bh biBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZDsiPlRvOjwvc3Bhbj48L2I+IGtlbGx5YWpwICZsdDsm bHQ7YSBocmVmPSJ4LW1zZzovLzI0MC91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDth bXA7bm9kZT00MDI5MTgwJmFtcDthbXA7aT0xIiB0YXJnZXQ9Il90b3AiIHJlbD0ibm9mb2xsb3ci IGxpbms9ImV4dGVybmFsIiZndDtbaGlkZGVuIGVtYWlsXSZndDsgPGJyPiA8Yj48c3BhbiBzdHls ZT0iZm9udC13ZWlnaHQ6Ym9sZDsiPlNlbnQ6PC9zcGFuPjwvYj4gV2VkbmVzZGF5LCAyIEFwcmls IDIwMTQsIDEyOjQxPGJyPiA8Yj48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZDsiPlN1Ympl Y3Q6PC9zcGFuPjwvYj4gUmU6IFBvc3NpYmxlIG1lbW9yeSBsZWFrIGluIERyb29scyA2LjAuMTxi cj4gPC9mb250PiA8L2Rpdj4gPGRpdiBjbGFzcz0ieWl2NTE4MzEwNDE3NHlfbXNnX2NvbnRhaW5l ciI+PGJyPjxkaXYgaWQ9InlpdjUxODMxMDQxNzQiPgoKCSBub3Qgc3VyZSB3aHkgdGhpcyB3b3Vs ZCBoYXZlIGEgbWVtb3J5IGxlYWssIGl0IGFsbCBsb29rcyBxdWl0ZSBzdHJhaWdodCBmb3J3YXJk IGpvaW5zLjxkaXY+PGJyPjwvZGl2PjxkaXY+SSBhc3N1bWUgeW91IGFyZSB1c2luZyBzdGF0ZWxl c3Mgc2Vzc2lvbnMgYW5kIGluc2VydGluZyBqdXN0IGEgc2luZ2xlIFBvc2l0aW9uIGluc3RhbmNl PyBJcyB0aGVyZSBhIGRpZmZlcmVudCBudW1iZXIgb2YgUlTigJlzIGFmdGVyIGEgc2luZ2xlIFBv c2l0aW9uIGluc2VydD88L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkEgc21hbGwgdGlwLCB5b3Ug ZG9u4oCZdCBuZWVkIHNvIG1hbnkgcGF0dGVybnMuIEFsbCB0aG9zZSBjb25zdHJhaW50cyBjYW4g Z28gaW4gYSBzaW5nbGUgUGF0dGVybi4mbmJzcDs8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pk1h cms8YnI+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+PGRpdj48ZGl2Pk9uIDIgQXByIDIwMTQsIGF0 IDExOjIwLCBrZWxseWFqcCAmbHQ7PGEgcmVsPSJub2ZvbGxvdyIgaHJlZj0iIiB0YXJnZXQ9Il90 b3AiIGxpbms9ImV4dGVybmFsIj5baGlkZGVuIGVtYWlsXTwvYT4mZ3Q7IHdyb3RlOjwvZGl2Pjxi ciBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUiPjxibG9ja3F1 b3RlIHN0eWxlPSdib3JkZXItbGVmdDoycHggc29saWQgI0NDQ0NDQztwYWRkaW5nOjAgMWVtJyBz dHlsZT0iYm9yZGVyLWxlZnQ6MnB4IHNvbGlkICNDQ0NDQ0M7cGFkZGluZzowIDFlbTsiIHR5cGU9 ImNpdGUiPjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsg Zm9udC1mYW1pbHk6IEhlbHZldGljYU5ldWUsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwg QXJpYWwsICdMdWNpZGEgR3JhbmRlJywgc2Fucy1zZXJpZjsgZm9udC1zaXplOiA4cHQ7Ij48ZGl2 PjxzcGFuPk1vcm5pbmcgTWFyayw8L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAx MXB4OyBmb250LWZhbWlseTogSGVsdmV0aWNhTmV1ZSwgJ0hlbHZldGljYSBOZXVlJywKIEhlbHZl dGljYSwgQXJpYWwsICdMdWNpZGEgR3JhbmRlJywgc2Fucy1zZXJpZjsgYmFja2dyb3VuZC1jb2xv cjogdHJhbnNwYXJlbnQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsiPjxzcGFuPjxicj48L3NwYW4+PC9k aXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogSGVsdmV0aWNhTmV1 ZSwgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBz YW5zLXNlcmlmOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgZm9udC1zdHlsZTogbm9y bWFsOyI+PHNwYW4+VGhhdCB3YXMgYSB1c2VmdWwgZXhlcmNpc2UhISwgZnJvbSBhIHNhbXBsZWQg c2V0IGl0IGxvb2tzIGxpa2UgdGhlIFJpZ2h0VHVwbGUgaW5zdGFuY2VzIGFyZSBjb21pbmcgZnJv bSBhIHNpbmdsZSBydWxlIHBhY2thZ2UgKG5jY2YpLjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJm b250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2FOZXVlLCAnSGVsdmV0aWNhIE5l dWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5kZScsIHNhbnMtc2VyaWY7IGJhY2tn cm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBmb250LXN0eWxlOiBub3JtYWw7Ij48c3Bhbj48YnI+ PC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IEhl bHZldGljYU5ldWUsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsICdMdWNpZGEg R3JhbmRlJywgc2Fucy1zZXJpZjsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGZvbnQt c3R5bGU6IG5vcm1hbDsiPjxzcGFuPlRoaXMgcnVsZSBwYWNrYWdlIGNvbWVzIGZyb20gYSBsYXJn ZSBkZWNpc2lvbiB0YWJsZSBvZiB0aGF0IGlzIG1haW50YWluZWQgYnkgb3VyIGJ1c2luZXNzIHVz ZXJzLiBUaGlzIHJlc3VsdHMgaW4gYSBsYXJnZSBEUkwgZmlsZSBiZWluZwogZ2VuZXJhdGVkIGNv bnRhaW5pbmcgMjM3MSBydWxlcy4mbmJzcDs8L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1z aXplOiAxMXB4OyBmb250LWZhbWlseTogSGVsdmV0aWNhTmV1ZSwgJ0hlbHZldGljYSBOZXVlJywg SGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5k LWNvbG9yOiB0cmFuc3BhcmVudDsgZm9udC1zdHlsZTogbm9ybWFsOyI+PHNwYW4+PGJyPjwvc3Bh bj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBIZWx2ZXRp Y2FOZXVlLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5k ZScsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBmb250LXN0eWxl OiBub3JtYWw7Ij48c3Bhbj5CZWxvdyBJIGhhdmUgaW5jbHVkZWQgc29tZSBvZiB0aGUgcnVsZXMg dGhhdCB3ZXJlIHJlZmVyZW5jZWQgaW4gdGhlIGRhdGEgc3RydWN0dXJlcywgSSBoYXZlIGFsc28g YXR0YWNoZWQgdGhlIGdlbmVyYXRlZCBEUkwKIGZpbGUuPC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9 ImZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IEhlbHZldGljYU5ldWUsICdIZWx2ZXRpY2Eg TmV1ZScsIEhlbHZldGljYSwgQXJpYWwsICdMdWNpZGEgR3JhbmRlJywgc2Fucy1zZXJpZjsgYmFj a2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsiPjxzcGFuPjxi cj48L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTog SGVsdmV0aWNhTmV1ZSwgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lk YSBHcmFuZGUnLCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgZm9u dC1zdHlsZTogbm9ybWFsOyI+PHNwYW4+VGhlIGV4YWN0IHNhbWUgZmlsZSBwcm9jZXNzZXMgaW4g RHJvb2xzIDUgYnV0IGZhaWxzIGluIERyb29scyA2Ljwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJm b250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2FOZXVlLCAnSGVsdmV0aWNhIE5l dWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCAnTHVjaWRhIEdyYW5kZScsIHNhbnMtc2VyaWY7IGJhY2tn cm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBmb250LXN0eWxlOiBub3JtYWw7Ij48c3Bhbj48YnI+ PC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4z MXVzZF9sbmdfY29ycF9ibmRfY3JfYmJiX3VzZF9vdmVyMHlfdW5kZXI1eV8yPC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPi8vIHJ1bGUgdmFsdWVzIGF0IEE2 NTAsIGhlYWRlciBhdCBBNjQ0PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPnJ1bGUKICIzMXVzZF9sbmdfY29ycF9ibmRfY3JfYmJiX3VzZF9vdmVyMHlfdW5k ZXI1eV8yIjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4m bmJzcDsgJm5ic3A7IHNhbGllbmNlIDY0ODg2PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1j b2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgd2hlbjwvZGl2PjxkaXYgc3R5bGU9ImJh Y2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg cDogUG9zaXRpb24ocG9zaXRpb25EZXRhaWwhPW51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFp bC52YWx1YXRpb24gIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWlsLnZhbHVhdGlvbi5t dG1WYWx1ZSAmZ3Q7PTApPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3Bh cmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRldGFp bC5wcm9kdWN0SGllcmFyY2h5ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC5wcm9k dWN0SGllcmFyY2h5LnJiY1Byb2R1Y3RDbGFzcyA9PSAic2VjdXJpdGllcyIpPC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsm YW1wOyBwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50Lm1hdHVyaXR5RGF0ZSAmZ3Q7PXBvc2l0aW9u RGV0YWlsLnJpc2tCdXNpbmVzc0RhdGUpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xv cjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3Np dGlvbkRldGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOwogcG9zaXRpb25EZXRhaWwu aW5zdHJ1bWVudC5tYXR1cml0eURhdGUgJmx0O3Bvc2l0aW9uRGV0YWlsLnJpc2tCdXNpbmVzc0Rh dGUrMTU3NjgwMDAwMDAwKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9zaXRpb25EZXRh aWwuVmFsdWF0aW9uIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWlsLiBWYWx1YXRpb24u VmFsdWF0aW9uQ3VycmVuY3kgPT0gIlVTRCIpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1j b2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihw b3NpdGlvbkRldGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFp bC5pbnN0cnVtZW50Lm1hcmtldFNlY3RvckRlc2NyaXB0aW9uID09ICJjb3JwIik8L2Rpdj48ZGl2 IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLmluc3RydW1lbnQgIT0gbnVsbCAmYW1w OyZhbXA7IHBvc2l0aW9uRGV0YWlsLmluc3RydW1lbnQudHlwZU9mQm9uZCAhPSBudWxsICZhbXA7 JmFtcDsgcG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudC50eXBlT2ZCb25kIG5vdCBpbiAoJ2NvbnZl cnRpYmxlJywnY292ZXJlZCcgLCdqdW1ibyBwZmFuZGJyaWVmZScpKTwvZGl2PjxkaXYgc3R5bGU9 ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgUG9zaXRpb24ocG9zaXRpb25EZXRhaWwub3ZlcmFsbENyZWRpdFF1YWxpdHlTdGVwID09IDIp PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOwogUG9zaXRpb24ocG9zaXRpb25EZXRhaWwudmFsdWF0aW9uVHlw ZSBpbiAoJ1ZhbHVhdGlvbicsJ0JvdGgnKSk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNv bG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBv c2l0aW9uRGV0YWlsLnJpc2tQcm9kdWN0VHlwZSA9PSAnVU5LTk9XTicpPC9kaXY+PGRpdiBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgdGhlbjwvZGl2 PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgcmVzdWx0LmFkZChjbGFzc2lmaWNhdGlvbj1uZXcgQWN0aW9uUGFyYW1l dGVyc0ltcGwoJ0Jhc2VsaW5lQ2xhc3NpZmljYXRpb24nKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFj a2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBj bGFzc2lmaWNhdGlvbi5zZXRCYXNlbGluZSgnTkNDRicpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tn cm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xh c3NpZmljYXRpb24uc2V0TGluZUlkKCJOQ0NGMDEwMDU3OSIpOzwvZGl2PjxkaXYgc3R5bGU9ImJh Y2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Y2xhc3NpZmljYXRpb24uc2V0T2JqZWN0KHApOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQt Y29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmlj YXRpb24uc2V0UG9zaXRpb25JZChwLmdldFBvc2l0aW9uSWQoKSk7PC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OwogY2xhc3NpZmljYXRpb24uc2V0RGF0YVN0YXR1cyhwLmdldERhdGFTdGF0dXMoKSk7PC9kaXY+ PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5zZXRDb3VudHJ5KHAuZ2V0UG9zaXRpb25EZXRh aWwoKS5nZXRCb29rKCkuZ2V0VHJhbnNpdCgpLmdldExlZ2FsRW50aXR5Q291bnRyeSgpKTs8L2Rp dj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldFJ1bGVQYXRoKHJ1bGVIaXN0b3J5Lmdl dEFjdGl2YXRpb25QYXRoKCkpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJh bnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uYWRk KGE9bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBsKCAnQmFzZWxpbmVWYWx1ZScpKTs8L2Rpdj48ZGl2 IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7IGEuc2V0VmFsdWVOYW1lKCAnQmFsYW5jZScpOzwvZGl2PjxkaXYgc3R5bGU9ImJh Y2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg YS5zZXRWYWx1ZSggcC5nZXRQb3NpdGlvbkRldGFpbCgpLmdldFZhbHVhdGlvbigpLmdldE10bVZh bHVlKCkpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4m bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRDdXJyZW5jeSggcC5nZXRQb3NpdGlvbkRl dGFpbCgpLmdldFZhbHVhdGlvbigpLmdldFZhbHVhdGlvbkN1cnJlbmN5KCkpOzwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7CiAmbmJz cDsgJm5ic3A7IGEuc2V0TmV0dGluZ1R5cGUoJ1NlY3VyaXR5Jyk7PC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBhLnNldEFkanVzdG1lbnRUeXBlKCdGdW5naWJsZSBMb25nIGNvdmVycyBGdW5naWJsZSBTaG9y dCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMgRnVuZ2libGUgTG9uZycpOzwvZGl2PjxkaXYgc3R5bGU9 ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgYS5zZXRCdWNrZXQoJ1RvdGFsJyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xv cjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlv bi5hZGQoYT1uZXcgQWN0aW9uUGFyYW1ldGVyc0ltcGwoICdCYXNlbGluZVRpbWVCdWNrZXQnKSk7 PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEJhc2VsaW5lVHlwZSggJ01CJyk7PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBhLnNldFZhbHVlKHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5n ZXRNdG1WYWx1ZSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFy ZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0Q3VycmVuY3kocC5nZXRQb3Np dGlvbkRldGFpbCgpLmdldFZhbHVhdGlvbigpLmdldFZhbHVhdGlvbkN1cnJlbmN5KCkpOzwvZGl2 PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsKIGEuc2V0TmV0dGluZ1R5cGUoJ1NlY3VyaXR5Jyk7PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBhLnNldEFkanVzdG1lbnRUeXBlKCdGdW5naWJsZSBMb25nIGNvdmVycyBGdW5naWJs ZSBTaG9ydCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMgRnVuZ2libGUgTG9uZycpOzwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgYS5zZXRCdWNrZXQoJ1RvdGFsJyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3Vu ZC1jb2xvcjp0cmFuc3BhcmVudDsiPmVuZDwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29s b3I6dHJhbnNwYXJlbnQ7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0 cmFuc3BhcmVudDsiPjxicj48L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5z cGFyZW50OyI+MzF1c2RfbG5nX2NvcnBfYm5kX2NyX2JiYl91c2Rfb3ZlcjB5X3VuZGVyMTB5XzI8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Ly8gcnVsZSB2 YWx1ZXMgYXQgQTY1MiwgaGVhZGVyIGF0IEE2NDQ8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5k LWNvbG9yOnRyYW5zcGFyZW50OyI+cnVsZSAiMzF1c2RfbG5nX2NvcnBfYm5kX2NyX2JiYl91c2Rf b3ZlcjV5X3VuZGVyMTB5XzIiPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgc2FsaWVuY2UgNjQ4ODQ8L2Rpdj48ZGl2IHN0eWxlPSJi YWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyB3aGVuPC9kaXY+PGRp diBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5i c3A7CiAmbmJzcDsgcDogUG9zaXRpb24ocG9zaXRpb25EZXRhaWwhPW51bGwgJmFtcDsmYW1wOyBw b3NpdGlvbkRldGFpbC52YWx1YXRpb24gIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWls LnZhbHVhdGlvbi5tdG1WYWx1ZSAmZ3Q7PTApPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1j b2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihw b3NpdGlvbkRldGFpbC5wcm9kdWN0SGllcmFyY2h5ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlv bkRldGFpbC5wcm9kdWN0SGllcmFyY2h5LnJiY1Byb2R1Y3RDbGFzcyA9PSAic2VjdXJpdGllcyIp PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50ICE9 IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50Lm1hdHVyaXR5RGF0ZSAm Z3Q7PXBvc2l0aW9uRGV0YWlsLnJpc2tCdXNpbmVzc0RhdGUrMTU3NjgwMDAwMDAwKTwvZGl2Pjxk aXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgUG9zaXRpb24ocG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudCAhPSBudWxsICZh bXA7JmFtcDsgcG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudC5tYXR1cml0eURhdGUgJmx0O3Bvc2l0 aW9uRGV0YWlsLnJpc2tCdXNpbmVzc0RhdGUrMzE1MzYwMDAwMDAwKTwvZGl2PjxkaXYgc3R5bGU9 ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgUG9zaXRpb24ocG9zaXRpb25EZXRhaWwuVmFsdWF0aW9uIT0gbnVsbCAmYW1wOyZhbXA7IHBv c2l0aW9uRGV0YWlsLiBWYWx1YXRpb24uVmFsdWF0aW9uQ3VycmVuY3kgPT0KICJVU0QiKTwvZGl2 PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudCAhPSBudWxs ICZhbXA7JmFtcDsgcG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudC5tYXJrZXRTZWN0b3JEZXNjcmlw dGlvbiA9PSAiY29ycCIpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3Bh cmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRldGFp bC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50 LnR5cGVPZkJvbmQgIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWlsLmluc3RydW1lbnQu dHlwZU9mQm9uZCBub3QgaW4gKCdjb252ZXJ0aWJsZScsJ2NvdmVyZWQnICwnanVtYm8gcGZhbmRi cmllZmUnKSk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+ Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLm92ZXJh bGxDcmVkaXRRdWFsaXR5U3RlcCA9PSAyKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29s b3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9z aXRpb25EZXRhaWwudmFsdWF0aW9uVHlwZSBpbiAoJ1ZhbHVhdGlvbicsJ0JvdGgnKSk8L2Rpdj48 ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLnJpc2tQcm9kdWN0VHlwZSA9PSAn VU5LTk9XTicpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsi PiZuYnNwOyAmbmJzcDsgdGhlbjwvZGl2PjxkaXYKIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRy YW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHJlc3VsdC5hZGQoY2xhc3Np ZmljYXRpb249bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBsKCdCYXNlbGluZUNsYXNzaWZpY2F0aW9u JykpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uc2V0QmFzZWxpbmUoJ05DQ0Yn KTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldExpbmVJZCgiTkNDRjAxMDA1 ODEiKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldE9iamVjdChwKTs8L2Rp dj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldFBvc2l0aW9uSWQocC5nZXRQb3NpdGlv bklkKCkpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4m bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uc2V0RGF0YVN0YXR1cyhw LmdldERhdGFTdGF0dXMoKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5zZXRD b3VudHJ5KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRCb29rKCkuZ2V0VHJhbnNpdCgpLmdldExl Z2FsRW50aXR5Q291bnRyeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRy YW5zcGFyZW50OyI+Jm5ic3A7CiAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5z ZXRSdWxlUGF0aChydWxlSGlzdG9yeS5nZXRBY3RpdmF0aW9uUGF0aCgpKTs8L2Rpdj48ZGl2IHN0 eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7IGNsYXNzaWZpY2F0aW9uLmFkZChhPW5ldyBBY3Rpb25QYXJhbWV0ZXJzSW1wbCggJ0Jh c2VsaW5lVmFsdWUnKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3Bh cmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldFZhbHVlTmFtZSggJ0JhbGFu Y2UnKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0VmFsdWUoIHAuZ2V0UG9zaXRpb25EZXRhaWwo KS5nZXRWYWx1YXRpb24oKS5nZXRNdG1WYWx1ZSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3Jv dW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0 Q3VycmVuY3koIHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5nZXRWYWx1YXRp b25DdXJyZW5jeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFy ZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0TmV0dGluZ1R5cGUoJ1NlY3Vy aXR5Jyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEFkanVzdG1lbnRUeXBlKCdGdW5naWJsZSBM b25nIGNvdmVycyBGdW5naWJsZSBTaG9ydCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMgRnVuZ2libGUg TG9uZycpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4m bmJzcDsKICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0QnVja2V0KCdUb3RhbCcpOzwvZGl2Pjxk aXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uYWRkKGE9bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBs KCAnQmFzZWxpbmVUaW1lQnVja2V0JykpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29s b3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRCYXNlbGlu ZVR5cGUoICdNQicpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJl bnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRWYWx1ZShwLmdldFBvc2l0aW9u RGV0YWlsKCkuZ2V0VmFsdWF0aW9uKCkuZ2V0TXRtVmFsdWUoKSk7PC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBhLnNldEN1cnJlbmN5KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5nZXRW YWx1YXRpb25DdXJyZW5jeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRy YW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0TmV0dGluZ1R5cGUo J1NlY3VyaXR5Jyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVu dDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEFkanVzdG1lbnRUeXBlKCdGdW5n aWJsZSBMb25nIGNvdmVycyBGdW5naWJsZSBTaG9ydCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMgRnVu Z2libGUgTG9uZycpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJl bnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsKIGEuc2V0QnVja2V0KCdUb3RhbCcpOzwv ZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij5lbmQ8L2Rpdj48 ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+PGJyPjwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij48YnI+PC9kaXY+PGRpdiBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPjMxdXNkX2xuZ19jb3JwX2JuZF9jcl9i YmJfdXNkX292ZXI1eV91bmRlcjEweV8xPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xv cjp0cmFuc3BhcmVudDsiPi8vIHJ1bGUgdmFsdWVzIGF0IEE2NTEsIGhlYWRlciBhdCBBNjQ0PC9k aXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPnJ1bGUgIjMxdXNk X2xuZ19jb3JwX2JuZF9jcl9iYmJfdXNkX292ZXI1eV91bmRlcjEweV8xIjwvZGl2PjxkaXYgc3R5 bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7IHNhbGllbmNl IDY0ODg1PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZu YnNwOyAmbmJzcDsgd2hlbjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgcDogUG9zaXRpb24ocG9zaXRpb25E ZXRhaWwhPW51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC52YWx1YXRpb24gIT0gbnVsbCAm YW1wOyZhbXA7IHBvc2l0aW9uRGV0YWlsLnZhbHVhdGlvbi5tdG1WYWx1ZSAmZ3Q7PTApPC9kaXY+ PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRldGFpbC5wcm9kdWN0SGllcmFyY2h5ICE9 IG51bGwgJmFtcDsmYW1wOwogcG9zaXRpb25EZXRhaWwucHJvZHVjdEhpZXJhcmNoeS5yYmNQcm9k dWN0Q2xhc3MgPT0gInNlY3VyaXRpZXMiKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29s b3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9z aXRpb25EZXRhaWwuaW5zdHJ1bWVudCAhPSBudWxsICZhbXA7JmFtcDsgcG9zaXRpb25EZXRhaWwu aW5zdHJ1bWVudC5tYXR1cml0eURhdGUgJmd0Oz1wb3NpdGlvbkRldGFpbC5yaXNrQnVzaW5lc3NE YXRlKzE1NzY4MDAwMDAwMCk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5z cGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0 YWlsLmluc3RydW1lbnQgIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWlsLmluc3RydW1l bnQubWF0dXJpdHlEYXRlICZsdDtwb3NpdGlvbkRldGFpbC5yaXNrQnVzaW5lc3NEYXRlKzMxNTM2 MDAwMDAwMCk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+ Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLlZhbHVh dGlvbiE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC4gVmFsdWF0aW9uLlZhbHVhdGlv bkN1cnJlbmN5ID09ICJVU0QiKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJh bnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9zaXRpb25E ZXRhaWwuaW5zdHJ1bWVudCAhPSBudWxsICZhbXA7JmFtcDsgcG9zaXRpb25EZXRhaWwuaW5zdHJ1 bWVudC5tYXJrZXRTZWN0b3JEZXNjcmlwdGlvbiA9PSAiY29ycCIpPC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OwogUG9zaXRpb24ocG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudCAhPSBudWxsICZhbXA7JmFtcDsg cG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudC50eXBlT2ZCb25kICE9IG51bGwgJmFtcDsmYW1wOyBw b3NpdGlvbkRldGFpbC5pbnN0cnVtZW50LnR5cGVPZkJvbmQgbm90IGluICgnY29udmVydGlibGUn LCdjb3ZlcmVkJyAsJ2p1bWJvIHBmYW5kYnJpZWZlJykpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dy b3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3Np dGlvbihwb3NpdGlvbkRldGFpbC5vdmVyYWxsQ3JlZGl0UXVhbGl0eVN0ZXAgPT0gMik8L2Rpdj48 ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLnZhbHVhdGlvblR5cGUgaW4gKCdW YWx1YXRpb24nLCdCb3RoJykpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRl dGFpbC5yaXNrUHJvZHVjdFR5cGUgIT0gJ1VOS05PV04nKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tn cm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7IHRoZW48L2Rpdj48ZGl2IHN0 eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7IHJlc3VsdC5hZGQoY2xhc3NpZmljYXRpb249bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBs KCdCYXNlbGluZUNsYXNzaWZpY2F0aW9uJykpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQt Y29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmlj YXRpb24uc2V0QmFzZWxpbmUoJ05DQ0YnKTs8L2Rpdj48ZGl2CiBzdHlsZT0iYmFja2dyb3VuZC1j b2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNh dGlvbi5zZXRMaW5lSWQoIk5DQ0YwMTAwNTgxIik7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3Vu ZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lm aWNhdGlvbi5zZXRPYmplY3QocCk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0 cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5z ZXRQb3NpdGlvbklkKHAuZ2V0UG9zaXRpb25JZCgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3Jv dW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNz aWZpY2F0aW9uLnNldERhdGFTdGF0dXMocC5nZXREYXRhU3RhdHVzKCkpOzwvZGl2PjxkaXYgc3R5 bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgY2xhc3NpZmljYXRpb24uc2V0Q291bnRyeShwLmdldFBvc2l0aW9uRGV0YWlsKCkuZ2V0 Qm9vaygpLmdldFRyYW5zaXQoKS5nZXRMZWdhbEVudGl0eUNvdW50cnkoKSk7PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5zZXRSdWxlUGF0aChydWxlSGlzdG9yeS5nZXRBY3RpdmF0 aW9uUGF0aCgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50 OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLmFkZChhPW5ldyBB Y3Rpb25QYXJhbWV0ZXJzSW1wbCggJ0Jhc2VsaW5lVmFsdWUnKSk7PC9kaXY+PGRpdgogc3R5bGU9 ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgYS5zZXRWYWx1ZU5hbWUoICdCYWxhbmNlJyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3Vu ZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldFZh bHVlKCBwLmdldFBvc2l0aW9uRGV0YWlsKCkuZ2V0VmFsdWF0aW9uKCkuZ2V0TXRtVmFsdWUoKSk7 PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEN1cnJlbmN5KCBwLmdldFBvc2l0aW9uRGV0YWlsKCku Z2V0VmFsdWF0aW9uKCkuZ2V0VmFsdWF0aW9uQ3VycmVuY3koKSk7PC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBhLnNldE5ldHRpbmdUeXBlKCdTZWN1cml0eScpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91 bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRB ZGp1c3RtZW50VHlwZSgnRnVuZ2libGUgTG9uZyBjb3ZlcnMgRnVuZ2libGUgU2hvcnQsRnVuZ2li bGUgU2hvcnQgY292ZXJzIEZ1bmdpYmxlIExvbmcnKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3Jv dW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0 QnVja2V0KCdUb3RhbCcpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uYWRkKGE9 bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBsKCAnQmFzZWxpbmVDYXNoZmxvdycpKTs8L2Rpdj48ZGl2 IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7CiAmbmJzcDsKICZu YnNwOyAmbmJzcDsKIGEuc2V0Q2FzaGZsb3dUeXBlKCAnU0VUVExFTUVOVCwgU2V0dGxlbWVudCcp OzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRMaXN0KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRD YXNoRmxvd3MoKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVu dDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldERlZmF1bHREYXlzVG9DYXNoRmxv dyAoMSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5hZGQoYT1uZXcgQWN0aW9u UGFyYW1ldGVyc0ltcGwoICdCYXNlbGluZUNhc2hmbG93JykpOzwvZGl2PjxkaXYgc3R5bGU9ImJh Y2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg YS5zZXRCYXNlbGluZVR5cGUoICdDQicpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29s b3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRDYXNoZmxv d1R5cGUoICdQcmluY2lwYWwsIEludGVyZXN0Jyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3Vu ZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldExp c3QocC5nZXRQb3NpdGlvbkRldGFpbCgpLmdldENhc2hGbG93cygpKTs8L2Rpdj48ZGl2IHN0eWxl PSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7IGEuc2V0RGVmYXVsdERheXNUb0Nhc2hGbG93ICgxNTAwMCk7PC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OwogY2xhc3NpZmljYXRpb24uYWRkKGE9bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBsKCAnQmFzZWxp bmVUaW1lQnVja2V0JykpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRCYXNlbGluZVR5cGUoICdN QicpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRWYWx1ZShwLmdldFBvc2l0aW9uRGV0YWlsKCku Z2V0VmFsdWF0aW9uKCkuZ2V0TXRtVmFsdWUoKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3Vu ZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEN1 cnJlbmN5KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5nZXRWYWx1YXRpb25D dXJyZW5jeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50 OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0RGF0ZShwLmdldFBvc2l0aW9uRGV0 YWlsKCkuZ2V0SW5zdHJ1bWVudCgpLmdldE1hdHVyaXR5RGF0ZSgpKTs8L2Rpdj48ZGl2IHN0eWxl PSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7IGEuc2V0RGVmYXVsdERheXNUb0Nhc2hGbG93ICgxNTAwMCk7PC9kaXY+PGRpdiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBhLnNldE5ldHRpbmdUeXBlKCdTZWN1cml0eScpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91 bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRB ZGp1c3RtZW50VHlwZSgnRnVuZ2libGUgTG9uZyBjb3ZlcnMgRnVuZ2libGUKIFNob3J0LEZ1bmdp YmxlIFNob3J0IGNvdmVycyBGdW5naWJsZSBMb25nJyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dy b3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNl dEJ1Y2tldCgnVG90YWwnKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5z cGFyZW50OyI+ZW5kPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVu dDsiPjxicj48L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+ PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4wOGV1 cl9sYV9sbmdfcXVhbF9ta3Rfc2VjX2FnbmN5X2RidF83eV9VbmRlcl8xMFlfNTwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4vLyBydWxlIHZhbHVlcyBhdCBB OTU0LCBoZWFkZXIgYXQgQTkyMTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJh bnNwYXJlbnQ7Ij5ydWxlICIwOGV1cl9sYV9sbmdfcXVhbF9tdGtfc2VjX2FnbmN5X2RidF83WV91 bmRlcl8xMFlfNSI8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50 OyI+Jm5ic3A7ICZuYnNwOyBzYWxpZW5jZSA2NDU4MjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91 bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7IHdoZW48L2Rpdj48ZGl2IHN0eWxl PSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7IHA6IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsIT1udWxsICZhbXA7JmFtcDsgcG9zaXRpb25E ZXRhaWwudmFsdWF0aW9uICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC52YWx1YXRp b24ubXRtVmFsdWUgJmd0Oz0wKTwvZGl2PjxkaXYKIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRy YW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9u RGV0YWlsLnByb2R1Y3RIaWVyYXJjaHkgIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWls LnByb2R1Y3RIaWVyYXJjaHkucmJjUHJvZHVjdENsYXNzID09ICJzZWN1cml0aWVzIik8L2Rpdj48 ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLnZhbHVhdGlvblR5cGUgaW4gKCdW YWx1YXRpb24nLCdCb3RoJykpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRl dGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC5pbnN0cnVt ZW50LmNvdW50cnlPZkRvbWljaWxlIGluICgnQVQnLCdCRScsJ0JHJywnQ1knLCdDWicsJ0RFJywn REsnLCdFRScsJ0VTJywnRkknLCdGUicgLCdHQicsJ0dSJyAsJ0hVJyAsJ0lFJyAsJ0lTJyAsJ0lU JyAsJ0xJJyAsJ0xUJyAsJ0xVJyAsJ0xWJyAsJ01UJyAsJ05MJyAsJ05PJyAsJ1BMJyAsJ1BUJyAs J1JPJyAsJ1NFJyAsJ1NJJyAsJ1NLJykpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xv cjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3Np dGlvbkRldGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC5p bnN0cnVtZW50LmNvdW50cnlPZkluY29ycG9yYXRpb24gaW4gKCdBVCcgLCdCRScgLCdCRycgLCAn Q1knICwnQ1onICwnREUnICZuYnNwOywgJ0RLJyAsJ0VFJyAsJ0VTJywgJ0ZJJyAsJ0ZSJyAsJ0dC JyAsICdHUicgLCdIVScgLCdJRScgLAogJ0lTJyAsJ0lUJyAsJ0xJJyAsICdMVCcgLCdMVScgLCdM VicgLCAnTVQnICwnTkwnICwnTk8nICwgJ1BMJyAsJ1BUJyAsJ1JPJywnU0UnICwnU0knICwnU0sn KSk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLlZhbHVhdGlvbiE9 IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC4gVmFsdWF0aW9uLlZhbHVhdGlvbkN1cnJl bmN5ID09ICJFVVIiKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJl bnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9zaXRpb25EZXRhaWwu aW5zdHJ1bWVudCAhPSBudWxsICZhbXA7JmFtcDsgcG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudC5j b2xsYXRlcmFsVHlwZSBpbiAoJ2dvdnQgbGlxdWlkIGd0ZCcsJ3VzIGdvdnQgZ3VhcmFudCcsJ3Uu cy4gZ292ZXJubWVudCBndWFyYW50ZWUnKSk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNv bG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBv c2l0aW9uRGV0YWlsLmluc3RydW1lbnQgIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWls Lmluc3RydW1lbnQubWF0dXJpdHlEYXRlICZndDs9cG9zaXRpb25EZXRhaWwucmlza0J1c2luZXNz RGF0ZSsyMjA3NTIwMDAwMDApPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRl dGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOyBwb3NpdGlvbkRldGFpbC5pbnN0cnVt ZW50Lm1hdHVyaXR5RGF0ZQogJmx0O3Bvc2l0aW9uRGV0YWlsLnJpc2tCdXNpbmVzc0RhdGUrMzE1 MzYwMDAwMDAwKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7 Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24ocG9zaXRpb25EZXRhaWwudmFs dWF0aW9uVHlwZSBpbiAoJ1ZhbHVhdGlvbicsJ0JvdGgnKSk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNr Z3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBv c2l0aW9uKHBvc2l0aW9uRGV0YWlsLnJpc2tQcm9kdWN0VHlwZSAhPSAnVU5LTk9XTicpPC9kaXY+ PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsg dGhlbjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgcmVzdWx0LmFkZChjbGFzc2lmaWNhdGlvbj1uZXcgQWN0 aW9uUGFyYW1ldGVyc0ltcGwoJ0Jhc2VsaW5lQ2xhc3NpZmljYXRpb24nKSk7PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5zZXRCYXNlbGluZSgnTkNDRicpOzwvZGl2PjxkaXYgc3R5 bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgY2xhc3NpZmljYXRpb24uc2V0TGluZUlkKCJOQ0NGMDEwMDQwNSIpOzwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgY2xhc3NpZmljYXRpb24uc2V0T2JqZWN0KHApOzwvZGl2PjxkaXYgc3R5bGU9ImJh Y2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsK IGNsYXNzaWZpY2F0aW9uLnNldFBvc2l0aW9uSWQocC5nZXRQb3NpdGlvbklkKCkpOzwvZGl2Pjxk aXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uc2V0RGF0YVN0YXR1cyhwLmdldERhdGFTdGF0dXMo KSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5zZXRDb3VudHJ5KHAuZ2V0UG9z aXRpb25EZXRhaWwoKS5nZXRCb29rKCkuZ2V0VHJhbnNpdCgpLmdldExlZ2FsRW50aXR5Q291bnRy eSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldFJ1bGVQYXRoKHJ1bGVI aXN0b3J5LmdldEFjdGl2YXRpb25QYXRoKCkpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQt Y29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmlj YXRpb24uYWRkKGE9bmV3IEFjdGlvblBhcmFtZXRlcnNJbXBsKCAnQmFzZWxpbmVWYWx1ZScpKTs8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0VmFsdWVOYW1lKCAnQmFsYW5jZScpOzwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgYS5zZXRWYWx1ZSggcC5nZXRQb3NpdGlvbkRldGFpbCgpLmdldFZhbHVhdGlvbigp LmdldE10bVZhbHVlKCkpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsKIGEuc2V0Q3VycmVuY3koIHAuZ2V0 UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5nZXRWYWx1YXRpb25DdXJyZW5jeSgpKTs8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0TmV0dGluZ1R5cGUoJ1NlY3VyaXR5Jyk7PC9kaXY+PGRp diBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyBhLnNldEFkanVzdG1lbnRUeXBlKCdGdW5naWJsZSBMb25nIGNvdmVycyBGdW5n aWJsZSBTaG9ydCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMgRnVuZ2libGUgTG9uZycpOzwvZGl2Pjxk aXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgYS5zZXRCdWNrZXQoJ1RvdGFsJyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dy b3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFz c2lmaWNhdGlvbi5hZGQoYT1uZXcgQWN0aW9uUGFyYW1ldGVyc0ltcGwoICdCYXNlbGluZUNhc2hm bG93JykpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4m bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRDYXNoZmxvd1R5cGUoICdTRVRUTEVNRU5U LCBTZXR0bGVtZW50Jyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3Bh cmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldExpc3QocC5nZXRQb3NpdGlv bkRldGFpbCgpLmdldENhc2hGbG93cygpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNv bG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0RGVmYXVs dERheXNUb0Nhc2hGbG93CiAoMSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0 cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5h ZGQoYT1uZXcgQWN0aW9uUGFyYW1ldGVyc0ltcGwoICdCYXNlbGluZUNhc2hmbG93JykpOzwvZGl2 PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgYS5zZXRCYXNlbGluZVR5cGUoICdDQicpOzwvZGl2PjxkaXYgc3R5bGU9 ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgYS5zZXRDYXNoZmxvd1R5cGUoICdQcmluY2lwYWwsIEludGVyZXN0Jyk7PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBhLnNldExpc3QocC5nZXRQb3NpdGlvbkRldGFpbCgpLmdldENhc2hGbG93cygpKTs8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0RGVmYXVsdERheXNUb0Nhc2hGbG93ICgxNTAwMCk7PC9k aXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5hZGQoYT1uZXcgQWN0aW9uUGFyYW1ldGVy c0ltcGwoICdCYXNlbGluZVRpbWVCdWNrZXQnKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3Vu ZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEJh c2VsaW5lVHlwZSggJ01CJyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOwogYS5zZXRWYWx1ZShwLmdldFBv c2l0aW9uRGV0YWlsKCkuZ2V0VmFsdWF0aW9uKCkuZ2V0TXRtVmFsdWUoKSk7PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBhLnNldEN1cnJlbmN5KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24o KS5nZXRWYWx1YXRpb25DdXJyZW5jeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNv bG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0RGF0ZShw LmdldFBvc2l0aW9uRGV0YWlsKCkuZ2V0SW5zdHJ1bWVudCgpLmdldE1hdHVyaXR5RGF0ZSgpKTs8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0RGVmYXVsdERheXNUb0Nhc2hGbG93ICgxNTAwMCk7PC9k aXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyBhLnNldE5ldHRpbmdUeXBlKCdTZWN1cml0eScpOzwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgYS5zZXRBZGp1c3RtZW50VHlwZSgnRnVuZ2libGUgTG9uZyBjb3ZlcnMgRnVuZ2li bGUgU2hvcnQsRnVuZ2libGUgU2hvcnQgY292ZXJzIEZ1bmdpYmxlIExvbmcnKTs8L2Rpdj48ZGl2 IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7IGEuc2V0QnVja2V0KCdUb3RhbCcpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91 bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij5lbmQ8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNv bG9yOnRyYW5zcGFyZW50OyI+PGJyPjwvZGl2PjxkaXYKIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9y OnRyYW5zcGFyZW50OyI+MThjYWRfbG5nX3NlY19pc3NfcHJvdl9vdmVyMTBZX3VuZGVyMzVZXzI8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Ly8gcnVsZSB2 YWx1ZXMgYXQgQTE1MiwgaGVhZGVyIGF0IEExMzg8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5k LWNvbG9yOnRyYW5zcGFyZW50OyI+cnVsZSAiMThjYWRfbG5nX3NlY19pc3NfcHJvdl9vdmVyMTB5 X3VuZGVyMzV5XzIiPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVu dDsiPiZuYnNwOyAmbmJzcDsgc2FsaWVuY2UgNjUzODQ8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3Jv dW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyB3aGVuPC9kaXY+PGRpdiBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyBwOiBQb3NpdGlvbihwb3NpdGlvbkRldGFpbCE9bnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9u RGV0YWlsLnZhbHVhdGlvbiAhPSBudWxsICZhbXA7JmFtcDsgcG9zaXRpb25EZXRhaWwudmFsdWF0 aW9uLm10bVZhbHVlICZndDs9MCk8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRy YW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9u RGV0YWlsLnByb2R1Y3RIaWVyYXJjaHkgIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWls LnByb2R1Y3RIaWVyYXJjaHkucmJjUHJvZHVjdENsYXNzID09ICJzZWN1cml0aWVzIik8L2Rpdj48 ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7CiBQb3NpdGlvbihwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50ICE9CiBudWxs ICZhbXA7JmFtcDsgcG9zaXRpb25EZXRhaWwuaW5zdHJ1bWVudC5tYXR1cml0eURhdGUgJmd0Oz1w b3NpdGlvbkRldGFpbC5yaXNrQnVzaW5lc3NEYXRlKzMxNTM2MDAwMDAwMCk8L2Rpdj48ZGl2IHN0 eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLmluc3RydW1lbnQgIT0gbnVsbCAmYW1wOyZh bXA7IHBvc2l0aW9uRGV0YWlsLmluc3RydW1lbnQubWF0dXJpdHlEYXRlICZsdDtwb3NpdGlvbkRl dGFpbC5yaXNrQnVzaW5lc3NEYXRlKzExMDM3NjAwMDAwMDApPC9kaXY+PGRpdiBzdHlsZT0iYmFj a2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQ b3NpdGlvbihwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsmYW1wOyBwb3Np dGlvbkRldGFpbC5pbnN0cnVtZW50Lmlzc3VlclRpY2tlciBpbiAoJ0JSQ09MJywnQmNwSVBCJywn QUxUQScsJ1NDREEnPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVu dDsiPiwnTVAnLCdNQU5QQUMnLCdNUFRCJywnT05UVyc8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3Jv dW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+LCdPTlQnLCdPTlRCJywnT05UUEFDJywnUSc8L2Rpdj48 ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+LCdRVEInLCdRVUVQQUMn LCdRVycsJ05CUk5TJzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJl bnQ7Ij4sJ05TJywnUFJJTkNFJywnTkYnLCdORlRCJykpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dy b3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBQb3Np dGlvbihwb3NpdGlvbkRldGFpbC5WYWx1YXRpb24hPSBudWxsCiAmYW1wOyZhbXA7IHBvc2l0aW9u RGV0YWlsLiBWYWx1YXRpb24uVmFsdWF0aW9uQ3VycmVuY3kgPT0gIkNBRCIpPC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyBQb3NpdGlvbihwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50ICE9IG51bGwgJmFtcDsm YW1wOyBwb3NpdGlvbkRldGFpbC5pbnN0cnVtZW50Lmlzc3VlckluZHVzdHJ5ID09ICJnb3Z0IHJl Z2lvbmFsIik8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+ Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLmluc3Ry dW1lbnQgIT0gbnVsbCAmYW1wOyZhbXA7IHBvc2l0aW9uRGV0YWlsLmluc3RydW1lbnQubWFya2V0 U2VjdG9yRGVzY3JpcHRpb24gPT0gImdvdnQiKTwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQt Y29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgUG9zaXRpb24o cG9zaXRpb25EZXRhaWwudmFsdWF0aW9uVHlwZSBpbiAoJ1ZhbHVhdGlvbicsJ0JvdGgnKSk8L2Rp dj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7IFBvc2l0aW9uKHBvc2l0aW9uRGV0YWlsLnJpc2tQcm9kdWN0VHlwZSA9 PSAnVU5LTk9XTicpPC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVu dDsiPiZuYnNwOyAmbmJzcDsgdGhlbjwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6 dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgcmVzdWx0LmFkZChjbGFz c2lmaWNhdGlvbj1uZXcgQWN0aW9uUGFyYW1ldGVyc0ltcGwoJ0Jhc2VsaW5lQ2xhc3NpZmljYXRp b24nKSk7PC9kaXY+PGRpdgogc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4m bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uc2V0QmFzZWxpbmUoJ05D Q0YnKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldExpbmVJZCgiTkNDRjAx MDAzNDEiKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+ Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldE9iamVjdChwKTs8 L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9uLnNldFBvc2l0aW9uSWQocC5nZXRQb3Np dGlvbklkKCkpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7 Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY2xhc3NpZmljYXRpb24uc2V0RGF0YVN0YXR1 cyhwLmdldERhdGFTdGF0dXMoKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0 cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5z ZXRDb3VudHJ5KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRCb29rKCkuZ2V0VHJhbnNpdCgpLmdl dExlZ2FsRW50aXR5Q291bnRyeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9y OnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNsYXNzaWZpY2F0aW9u LnNldFJ1bGVQYXRoKHJ1bGVIaXN0b3J5LmdldEFjdGl2YXRpb25QYXRoKCkpOzwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsKIGNsYXNzaWZpY2F0aW9uLmFkZChhPW5ldyBBY3Rpb25QYXJhbWV0ZXJzSW1wbCgg J0Jhc2VsaW5lVmFsdWUnKSk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFu c3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldFZhbHVlTmFtZSggJ0Jh bGFuY2UnKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+ Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0VmFsdWUoIHAuZ2V0UG9zaXRpb25EZXRh aWwoKS5nZXRWYWx1YXRpb24oKS5nZXRNdG1WYWx1ZSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNr Z3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEu c2V0Q3VycmVuY3koIHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5nZXRWYWx1 YXRpb25DdXJyZW5jeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5z cGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0TmV0dGluZ1R5cGUoJ1Nl Y3VyaXR5Jyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsi PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEFkanVzdG1lbnRUeXBlKCdGdW5naWJs ZSBMb25nIGNvdmVycyBGdW5naWJsZSBTaG9ydCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMgRnVuZ2li bGUgTG9uZycpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7 Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRCdWNrZXQoJ1RvdGFsJyk7PC9kaXY+ PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyBjbGFzc2lmaWNhdGlvbi5hZGQoYT1uZXcKIEFjdGlvblBhcmFtZXRlcnNJ bXBsKCAnQmFzZWxpbmVUaW1lQnVja2V0JykpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQt Y29sb3I6dHJhbnNwYXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRCYXNl bGluZVR5cGUoICdNQicpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRWYWx1ZShwLmdldFBvc2l0 aW9uRGV0YWlsKCkuZ2V0VmFsdWF0aW9uKCkuZ2V0TXRtVmFsdWUoKSk7PC9kaXY+PGRpdiBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyBhLnNldEN1cnJlbmN5KHAuZ2V0UG9zaXRpb25EZXRhaWwoKS5nZXRWYWx1YXRpb24oKS5n ZXRWYWx1YXRpb25DdXJyZW5jeSgpKTs8L2Rpdj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9y OnRyYW5zcGFyZW50OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGEuc2V0TmV0dGluZ1R5 cGUoJ1NlY3VyaXR5Jyk7PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3Bh cmVudDsiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBhLnNldEFkanVzdG1lbnRUeXBlKCdG dW5naWJsZSBMb25nIGNvdmVycyBGdW5naWJsZSBTaG9ydCxGdW5naWJsZSBTaG9ydCBjb3ZlcnMg RnVuZ2libGUgTG9uZycpOzwvZGl2PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNw YXJlbnQ7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYS5zZXRCdWNrZXQoJ1RvdGFsJyk7 PC9kaXY+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPmVuZDwvZGl2 PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij48YnI+PC9kaXY+PGRp dgogc3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij48YnI+PC9kaXY+PGRpdiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsiPjxicj48L2Rpdj48ZGl2IHN0eWxl PSJiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyI+PHNwYW4+PC9zcGFuPjwvZGl2PjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ij48YnI+PC9kaXY+PGRpdj48YnI+ PC9kaXY+ICA8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhTmV1ZSwgJ0hlbHZldGlj YSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBzYW5zLXNlcmlmOyBm b250LXNpemU6IDhwdDsiPiA8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhTmV1ZSwg J0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgJ0x1Y2lkYSBHcmFuZGUnLCBzYW5z LXNlcmlmOyBmb250LXNpemU6IDEycHQ7Ij4gPGRpdiBkaXI9Imx0ciI+IDxociBzaXplPSIxIj4g IDxmb250IHNpemU9IjIiIGZhY2U9IkFyaWFsIj4gPGI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0 OmJvbGQ7Ij5Gcm9tOjwvc3Bhbj48L2I+IE1hcmsgUHJvY3RvciBbdmlhIERyb29sc10gJmx0OyZs dDthIGhyZWY9IiZsdDthIGhyZWY9IngtbXNnOi8vNDMvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9 bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwNzgmYW1wO2FtcDthbXA7aT0wIiZndDt4LW1zZzov LzQzL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDtub2RlPTQwMjkwNzgmYW1w O2FtcDtpPTAiIHRhcmdldD0iX3RvcCIgcmVsPSJub2ZvbGxvdyIgbGluaz0iZXh0ZXJuYWwiJmd0 O1toaWRkZW4gZW1haWxdJmd0Ozxicj4gPGI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OmJvbGQ7 Ij5Ubzo8L3NwYW4+PC9iPiBrZWxseWFqcCAmbHQ7Jmx0O2EgaHJlZj0iJmx0O2EKIGhyZWY9Ingt bXNnOi8vNDMvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQw MjkwNzgmYW1wO2FtcDthbXA7aT0xIiZndDt4LW1zZzovLzQzL3VzZXIvU2VuZEVtYWlsLmp0cD90 eXBlPW5vZGUmYW1wO2FtcDtub2RlPTQwMjkwNzgmYW1wO2FtcDtpPTEiIHRhcmdldD0iX3RvcCIg cmVsPSJub2ZvbGxvdyIKIGxpbms9ImV4dGVybmFsIiZndDtbaGlkZGVuIGVtYWlsXSZndDsgPGJy PiA8Yj48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZDsiPlNlbnQ6PC9zcGFuPjwvYj4gVHVl c2RheSwgMSBBcHJpbCAyMDE0LCAxNDoxMDxicj4gPGI+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0 OmJvbGQ7Ij5TdWJqZWN0Ojwvc3Bhbj48L2I+IFJlOiBQb3NzaWJsZSBtZW1vcnkgbGVhayBpbiBE cm9vbHMgNi4wLjE8YnI+IDwvZm9udD4gPC9kaXY+IDxkaXYgY2xhc3M9InlpdjUxODMxMDQxNzR5 X21zZ19jb250YWluZXIiPjxicj48ZGl2IGlkPSJ5aXY1MTgzMTA0MTc0Ij48ZGl2PmFueSBuZXdz PzxkaXY+PGJyIGNsZWFyPSJub25lIj48L2Rpdj48ZGl2Pk1hcms8YnIgY2xlYXI9Im5vbmUiPjxk aXYgc3R5bGU9IiI+PGRpdj5PbiAzMCBNYXIgMjAxNCwgYXQgMTM6MzgsIE1hcmsgUHJvY3RvciAm bHQ7PGEgcmVsPSJub2ZvbGxvdyIgc2hhcGU9InJlY3QiIGhyZWY9IiIgdGFyZ2V0PSJfdG9wIiBs aW5rPSJleHRlcm5hbCI+W2hpZGRlbiBlbWFpbF08L2E+Jmd0OyB3cm90ZTo8L2Rpdj48YnIgY2xl YXI9Im5vbmUiIGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtaW50ZXJjaGFuZ2UtbmV3bGluZSI+ PGJsb2NrcXVvdGUgc3R5bGU9J2JvcmRlci1sZWZ0OjJweCBzb2xpZCAjQ0NDQ0NDO3BhZGRpbmc6 MCAxZW0nIHN0eWxlPSJib3JkZXItbGVmdDoycHggc29saWQgI0NDQ0NDQztwYWRkaW5nOjAgMWVt OyIgdHlwZT0iY2l0ZSI+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXY+PGRpdiBz dHlsZT0id29yZC13cmFwOmJyZWFrLXdvcmQ7Ij48YnIgY2xlYXI9Im5vbmUiPjxkaXY+PGRpdj5P biAzMCBNYXIgMjAxNCwgYXQgMTM6MjYsIGtlbGx5YWpwICZsdDs8YSByZWw9Im5vZm9sbG93IiBz aGFwZT0icmVjdCIgaHJlZj0iIiB0YXJnZXQ9Il90b3AiIGxpbms9ImV4dGVybmFsIj5baGlkZGVu IGVtYWlsXTwvYT4mZ3Q7IHdyb3RlOjwvZGl2PjxiciBjbGVhcj0ibm9uZSIgY2xhc3M9InlpdjUx ODMxMDQxNzRBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj48YmxvY2txdW90ZSBzdHlsZT0nYm9y ZGVyLWxlZnQ6MnB4IHNvbGlkICNDQ0NDQ0M7cGFkZGluZzowIDFlbScgc3R5bGU9ImJvcmRlci1s ZWZ0OjJweAogc29saWQgI0NDQ0NDQztwYWRkaW5nOjAgMWVtOyIgdHlwZT0iY2l0ZSI+PC9ibG9j a3F1b3RlPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXY+PGRpdj5JJ2xsIGdldCB0aGF0IHRvIHlvdSBv biBNb25kYXkmbmJzcDs8L2Rpdj48ZGl2PjxiciBjbGVhcj0ibm9uZSI+T24gMzAgTWFyIDIwMTQs IGF0IDEyOjU5LCAiTWFyayBQcm9jdG9yIFt2aWEgRHJvb2xzXSIgJmx0OyZsdDthCiBocmVmPSIm bHQ7YSBocmVmPSImbHQ7YSBocmVmPSJ4LW1zZzovLzEzMy91c2VyL1NlbmRFbWFpbC5qdHA/dHlw ZT1ub2RlJmFtcDthbXA7YW1wO2FtcDtub2RlPTQwMjkwMjcmYW1wO2FtcDthbXA7YW1wO2k9MCIm Z3Q7eC1tc2c6Ly8xMzMvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtu b2RlPTQwMjkwMjcmYW1wO2FtcDthbXA7aT0wIiZndDsmbHQ7YSBocmVmPSJ4LW1zZzovLzEzMy91 c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDthbXA7YW1wO25vZGU9NDAyOTAyNyZhbXA7 YW1wO2FtcDtpPTAiJmd0O3gtbXNnOi8vMTMzL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUm YW1wO2FtcDtub2RlPTQwMjkwMjcmYW1wO2FtcDtpPTAiIHRhcmdldD0iX3RvcCIgcmVsPSJub2Zv bGxvdyIgbGluaz0iZXh0ZXJuYWwiJmd0O1toaWRkZW4gZW1haWxdJmd0OyB3cm90ZTo8YnIgY2xl YXI9Im5vbmUiPjxiciBjbGVhcj0ibm9uZSI+PC9kaXY+PGJsb2NrcXVvdGUgc3R5bGU9J2JvcmRl ci1sZWZ0OjJweCBzb2xpZCAjQ0NDQ0NDO3BhZGRpbmc6MCAxZW0nIHN0eWxlPSJib3JkZXItbGVm dDoycHggc29saWQgI0NDQ0NDQztwYWRkaW5nOjAgMWVtOyIgdHlwZT0iY2l0ZSI+CgoJPC9ibG9j a3F1b3RlPjwvZGl2PjxkaXY+QXJlIHlvdSBhYmxlIHRvIGlzb2xhdGUgd2hhdCB0aGUgRkjigJlz IGFyZSByZWZlcmVuY2luZywgU29ycnkgdGhhdCBzaG91bGQgYmUgUlQsIG5vdCBGSC4gUlQgPT0g UmlnaHRUdXBsZSwgRkggPT0gRmFjdEhhbmRsZS48YnIgY2xlYXI9Im5vbmUiPjxibG9ja3F1b3Rl IHN0eWxlPSdib3JkZXItbGVmdDoycHggc29saWQgI0NDQ0NDQztwYWRkaW5nOjAgMWVtJyBzdHls ZT0iYm9yZGVyLWxlZnQ6MnB4IHNvbGlkICNDQ0NDQ0M7cGFkZGluZzowIDFlbTsiIHR5cGU9ImNp dGUiPjxibG9ja3F1b3RlIHN0eWxlPSdib3JkZXItbGVmdDoycHggc29saWQgI0NDQ0NDQztwYWRk aW5nOjAgMWVtJyBzdHlsZT0iYm9yZGVyLWxlZnQ6MnB4IHNvbGlkICNDQ0NDQ0M7cGFkZGluZzow IDFlbTsiIHR5cGU9ImNpdGUiPnRoYXQgbWlnaHQgZ2l2ZSB1cyBhbiBpZGVhIG9mIHdoZXJlIHRv IGxvb2suIElmIHlvdSBsb29rIFJpZ2h0VHVwbGXigJlzIHRoZXkgd2lsbCBoYXZlIGEg4oCYc2lu aycgcmVmZXJlbmNlIChuZXR3b3JrIG5vZGUpIGFuZCB0aGF0IHNpbmsgd2lsbCBoYXZlIGFuIOKA mGFzc29jaWF0ZXPigJkgbWFwLiBUaGF0IG1hcCBpcyB0aGUgcnVsZXMgdGhhdCBub2RlIGlzIHBh cnQgb2YuIFlvdSBjYW4gdXNlIHRoaXMgdG8gaWRlbnRpZnkgdGhlIG9mZmVuZGluZyBydWxlKHMp LCBhbmQgbWF5YmUgcGFzdGUgdGhvc2UgcnVsZXMgaGVyZT88ZGl2PjxiciBjbGVhcj0ibm9uZSI+ PC9kaXY+PGRpdj5NYXJrPGJyIGNsZWFyPSJub25lIj48ZGl2PjxkaXY+T24gMzAgTWFyIDIwMTQs IGF0IDA5OjAzLCBrZWxseWFqcCAmbHQ7Jmx0O2EgaHJlZj0iJmx0O2EgaHJlZj0iJmx0O2EgaHJl Zj0ieC1tc2c6Ly8xMzMvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDth bXA7bm9kZT00MDI5MDI2JmFtcDthbXA7YW1wO2FtcDtpPTAiJmd0O3gtbXNnOi8vMTMzL3VzZXIv U2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00MDI5MDI2JmFtcDthbXA7 YW1wO2k9MCImZ3Q7Jmx0O2EKIGhyZWY9IngtbXNnOi8vMTMzL3VzZXIvU2VuZEVtYWlsLmp0cD90 eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00MDI5MDI2JmFtcDthbXA7YW1wO2k9MCImZ3Q7eC1t c2c6Ly8xMzMvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO25vZGU9NDAyOTAy NiZhbXA7YW1wO2k9MCIgdGFyZ2V0PSJfdG9wIiByZWw9Im5vZm9sbG93IiBsaW5rPSJleHRlcm5h bCImZ3Q7W2hpZGRlbgogZW1haWxdJmd0OyB3cm90ZTo8L2Rpdj48YnIgY2xlYXI9Im5vbmUiIGNs YXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtaW50ZXJjaGFuZ2UtbmV3bGluZSI+PGJsb2NrcXVvdGUg c3R5bGU9J2JvcmRlci1sZWZ0OjJweCBzb2xpZCAjQ0NDQ0NDO3BhZGRpbmc6MCAxZW0nIHN0eWxl PSJib3JkZXItbGVmdDoycHggc29saWQgI0NDQ0NDQztwYWRkaW5nOjAgMWVtOyIgdHlwZT0iY2l0 ZSI+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBm b250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudDogbm9ybWFsOyBmb250LXdlaWdodDogbm9y bWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBsaW5lLWhlaWdodDogbm9ybWFsOyB0ZXh0LWlu ZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29y ZC1zcGFjaW5nOiAwcHg7Ij48ZGl2PlRoYW5rczwvZGl2PjxkaXY+PGJyIGNsZWFyPSJub25lIj48 L2Rpdj48ZGl2PkknbGwgZ2V0IHNvbWVvbmUgZnJvbSB0aGUgdGVhbSB0byB3b3JrIG9uIHRoaXMg b24gTW9uZGF5LiBOb3Qgc3VyZSBob3cgZWFzeSBpdCB3aWxsIGJlIHRvIGlzb2xhdGUgYnV0IHdp bGwga2VlcCB5b3UgaW5mb3JtZWQuPC9kaXY+PGRpdj48YnIgY2xlYXI9Im5vbmUiPjwvZGl2Pjxk aXY+QW5keTxiciBjbGVhcj0ibm9uZSI+T24gMjggTWFyIDIwMTQsIGF0IDIzOjUyLCAiTWFyayBQ cm9jdG9yIFt2aWEgRHJvb2xzXSIgJmx0OyZsdDthIGhyZWY9IiZsdDthIGhyZWY9IiZsdDthIGhy ZWY9IiZsdDthIGhyZWY9IngtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUm YW1wO2FtcDthbXA7YW1wO2FtcDtub2RlPTQwMjkwMjUmYW1wO2FtcDthbXA7YW1wO2FtcDtpPTAi Jmd0O3gtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7 YW1wO25vZGU9NDAyOTAyNSZhbXA7YW1wO2FtcDthbXA7aT0wIiZndDsmbHQ7YQogaHJlZj0ieC1t c2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDthbXA7bm9k ZT00MDI5MDI1JmFtcDthbXA7YW1wO2FtcDtpPTAiJmd0O3gtbXNnOi8vMTMxL3VzZXIvU2VuZEVt YWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00MDI5MDI1JmFtcDthbXA7YW1wO2k9 MCImZ3Q7Jmx0O2EKIGhyZWY9IiZsdDthIGhyZWY9IngtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWls Lmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7YW1wO25vZGU9NDAyOTAyNSZhbXA7YW1wO2FtcDth bXA7aT0wIiZndDt4LW1zZzovLzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDth bXA7YW1wO25vZGU9NDAyOTAyNSZhbXA7YW1wO2FtcDtpPTAiJmd0OyZsdDthIGhyZWY9IngtbXNn Oi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00MDI5 MDI1JmFtcDthbXA7YW1wO2k9MCImZ3Q7eC1tc2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRwP3R5 cGU9bm9kZSZhbXA7YW1wO25vZGU9NDAyOTAyNSZhbXA7YW1wO2k9MCIgdGFyZ2V0PSJfdG9wIiBy ZWw9Im5vZm9sbG93IiBsaW5rPSJleHRlcm5hbCImZ3Q7W2hpZGRlbiBlbWFpbF0mZ3Q7IHdyb3Rl OjxiciBjbGVhcj0ibm9uZSI+PGJyIGNsZWFyPSJub25lIj48L2Rpdj48YmxvY2txdW90ZSBzdHls ZT0nYm9yZGVyLWxlZnQ6MnB4IHNvbGlkICNDQ0NDQ0M7cGFkZGluZzowIDFlbScgc3R5bGU9ImJv cmRlci1sZWZ0OjJweCBzb2xpZCAjQ0NDQ0NDO3BhZGRpbmc6MCAxZW07IiB0eXBlPSJjaXRlIj5D YW4geW91IGdldCB1cyBhIHVuaXQgdGVzdCBkZW1vbnN0cmF0aW5nIHRoaXMsIGFuZCB3ZeKAmWxs IGxvb2sgaW50byBpdCBhcyBhIHByaW9yaXR5LjxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBw bGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFyPSJub25lIj48YnIgY2xl YXI9Im5vbmUiPk1hcms8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1z cGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+T24gMjggTWFyIDIwMTQsIGF0IDE1 OjQwLCBrZWxseWFqcCAmbHQ7Jmx0O2EgaHJlZj0iJmx0O2EgaHJlZj0iJmx0O2EgaHJlZj0iJmx0 O2EKIGhyZWY9IngtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2Ft cDthbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1wO2FtcDthbXA7YW1wO2FtcDtpPTAiJmd0O3gt bXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7YW1wO25v ZGU9NDAyOTAxOCZhbXA7YW1wO2FtcDthbXA7aT0wIiZndDsmbHQ7YSBocmVmPSJ4LW1zZzovLzEz MS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDthbXA7YW1wO2FtcDtub2RlPTQwMjkw MTgmYW1wO2FtcDthbXA7YW1wO2k9MCImZ3Q7eC1tc2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRw P3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1wO2FtcDthbXA7aT0wIiZndDsm bHQ7YQogaHJlZj0iJmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRwP3R5 cGU9bm9kZSZhbXA7YW1wO2FtcDthbXA7bm9kZT00MDI5MDE4JmFtcDthbXA7YW1wO2FtcDtpPTAi Jmd0O3gtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7 bm9kZT00MDI5MDE4JmFtcDthbXA7YW1wO2k9MCImZ3Q7Jmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzEv dXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1w O2FtcDthbXA7aT0wIiZndDt4LW1zZzovLzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2Rl JmFtcDthbXA7bm9kZT00MDI5MDE4JmFtcDthbXA7aT0wIiB0YXJnZXQ9Il90b3AiIHJlbD0ibm9m b2xsb3ciIGxpbms9ImV4dGVybmFsIiZndDtbaGlkZGVuIGVtYWlsXSZndDsgd3JvdGU6PHNwYW4g Y2xhc3M9InlpdjUxODMxMDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48 YnIgY2xlYXI9Im5vbmUiPjxkaXYgY2xhc3M9InlpdjUxODMxMDQxNzRzaHJpbmthYmxlLXF1b3Rl Ij48ZGl2IGNsYXNzPSJ5aXY1MTgzMTA0MTc0c2hyaW5rYWJsZS1xdW90ZSI+PGRpdiBjbGFzcz0i eWl2NTE4MzEwNDE3NHNocmlua2FibGUtcXVvdGUiPjxkaXYgY2xhc3M9InlpdjUxODMxMDQxNzRz aHJpbmthYmxlLXF1b3RlIj48ZGl2IGNsYXNzPSJ5aXY1MTgzMTA0MTc0c2hyaW5rYWJsZS1xdW90 ZSI+PGRpdiBjbGFzcz0ieWl2NTE4MzEwNDE3NHNocmlua2FibGUtcXVvdGUiPjxkaXYgY2xhc3M9 InlpdjUxODMxMDQxNzRzaHJpbmthYmxlLXF1b3RlIj48ZGl2IGNsYXNzPSJ5aXY1MTgzMTA0MTc0 c2hyaW5rYWJsZS1xdW90ZSI+PGRpdiBjbGFzcz0ieWl2NTE4MzEwNDE3NHNocmlua2FibGUtcXVv dGUiPjxkaXYgY2xhc3M9J3Nocmlua2FibGUtcXVvdGUnPjxiciBjbGVhcj0ibm9uZSI+Jmd0OyBX ZSBoYXZlIHVwZ3JhZGVkIGZyb20gRHJvb2xzIDUKIC0mZ3Q7IERyb29scyA2LjAxIGFuZCB3aGVu IHJlcGVhdGluZyB0aGU8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1z cGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+Jmd0OyBwcm9jZXNzaW5nIGluIGVh Y2ggZW52aXJvbm1lbnQgd2UgaGF2ZSB2ZXJ5IGRpZmZlcmVudCBvYmplY3QgY291bnRzIHRoYXQg aXM8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7 PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+Jmd0OyBjYXVzaW5nCiBtZW1vcnkgdG8gcnVuIG91dCBv biBEcm9vbHMgNjo8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFj ZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+Jmd0OzxzcGFuIGNsYXNzPSJ5aXY1MTgz MTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFyPSJub25l Ij4mZ3Q7IEJlbG93IGlzIGFuIGV4dHJhY3QgZnJvbSBhIGhlYXAgZHVtcDxzcGFuIGNsYXNzPSJ5 aXY1MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFy PSJub25lIj4mZ3Q7PHNwYW4gY2xhc3M9InlpdjUxODMxMDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3Bh Y2UiPiZuYnNwOzwvc3Bhbj48YnIgY2xlYXI9Im5vbmUiPiZndDsgSW4gRHJvb2xzIDYgdGhlIG1h aW4gb2JqZWN0cyBpbiB0aGUgaGVhcCBhcmU8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxl LWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+Jmd0OyAxOiAm bmJzcDsgJm5ic3A7ICZuYnNwOyA0Mzc4MDA2ICZuYnNwOyAmbmJzcDsgJm5ic3A7NzAwNDgwOTYw ICZuYnNwO29yZy5kcm9vbHMuY29yZS5yZXRlb28uUmlnaHRUdXBsZTxzcGFuIGNsYXNzPSJ5aXY1 MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFyPSJu b25lIj4mZ3Q7PHNwYW4gY2xhc3M9InlpdjUxODMxMDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3BhY2Ui PiZuYnNwOzwvc3Bhbj48YnIgY2xlYXI9Im5vbmUiPiZndDsgV2hlcmUgYXMgaW4gRHJvb2xzIDUg dGhlcmUgYXJlIHdheSBsZXNzIG9iamVjdHM8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxl LWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+Jmd0OyA5Mjog Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IDE5MDIyCiAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsxODI2MTEyICZuYnNwO29yZy5kcm9vbHMucmV0ZW9vLlJpZ2h0VHVwbGU8c3BhbiBjbGFz cz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBj bGVhcj0ibm9uZSI+Jmd0OzxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtY29udmVydGVk LXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFyPSJub25lIj4mZ3Q7IEhhcyBhbnlvbmUgZWxz ZSBoYWQgYW55IGV4cGVyaWVuY2Ugb2YgdGhpcyBpc3N1ZT88c3BhbiBjbGFzcz0ieWl2NTE4MzEw NDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+ Jmd0OzxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJz cDs8L3NwYW4+PGJyIGNsZWFyPSJub25lIj4mZ3Q7IFRoYW5rczxzcGFuIGNsYXNzPSJ5aXY1MTgz MTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFyPSJub25l Ij4mZ3Q7PHNwYW4gY2xhc3M9InlpdjUxODMxMDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZu YnNwOzwvc3Bhbj48YnIgY2xlYXI9Im5vbmUiPiZndDs8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3 NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+Jmd0 OzxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8 L3NwYW4+PGJyIGNsZWFyPSJub25lIj4mZ3Q7IC0tPHNwYW4gY2xhc3M9InlpdjUxODMxMDQxNzRB cHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48YnIgY2xlYXI9Im5vbmUiPiZndDsg VmlldyB0aGlzIG1lc3NhZ2UgaW4gY29udGV4dDo8c3BhbgogY2xhc3M9InlpdjUxODMxMDQxNzRB cHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48YSByZWw9Im5vZm9sbG93IiBzaGFw ZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFi YmxlLmNvbS9Qb3NzaWJsZS1tZW1vcnktbGVhay1pbi1Ecm9vbHMtNi0wLTEtdHA0MDI5MDEwLmh0 bWwiIGxpbms9ImV4dGVybmFsIj5odHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5hYmJsZS5jb20vUG9z c2libGUtbWVtb3J5LWxlYWstaW4tRHJvb2xzLTYtMC0xLXRwNDAyOTAxMC5odG1sPC9hPjxiciBj bGVhcj0ibm9uZSI+Jmd0OyBTZW50IGZyb20gdGhlIERyb29sczogRGV2ZWxvcGVyIChjb21taXR0 ZXIpIG1haWxpbmcgbGlzdCBtYWlsaW5nIGxpc3QgYXJjaGl2ZSBhdDxzcGFuIGNsYXNzPSJ5aXY1 MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGEgcmVsPSJub2Zv bGxvdyIgc2hhcGU9InJlY3QiIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vbmFiYmxlLmNv bS8iIGxpbms9ImV4dGVybmFsIj5OYWJibGUuY29tPC9hPi48c3BhbiBjbGFzcz0ieWl2NTE4MzEw NDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxiciBjbGVhcj0ibm9uZSI+ Jmd0OyBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxzcGFu IGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+ PGJyIGNsZWFyPSJub25lIj4mZ3Q7IHJ1bGVzLWRldgogbWFpbGluZyBsaXN0PHNwYW4gY2xhc3M9 InlpdjUxODMxMDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48YnIgY2xl YXI9Im5vbmUiPiZndDs8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1z cGFjZSI+Jm5ic3A7PC9zcGFuPiZsdDthIGhyZWY9IiZsdDthIGhyZWY9IiZsdDthIGhyZWY9IiZs dDthIGhyZWY9IngtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2Ft cDthbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1wO2FtcDthbXA7YW1wO2FtcDtpPTEiJmd0O3gt bXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7YW1wO25v ZGU9NDAyOTAxOCZhbXA7YW1wO2FtcDthbXA7aT0xIiZndDsmbHQ7YSBocmVmPSJ4LW1zZzovLzEz MS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDthbXA7YW1wO2FtcDtub2RlPTQwMjkw MTgmYW1wO2FtcDthbXA7YW1wO2k9MSImZ3Q7eC1tc2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRw P3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1wO2FtcDthbXA7aT0xIiZndDsm bHQ7YSBocmVmPSImbHQ7YSBocmVmPSJ4LW1zZzovLzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlw ZT1ub2RlJmFtcDthbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1wO2FtcDthbXA7YW1wO2k9MSIm Z3Q7eC1tc2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtu b2RlPTQwMjkwMTgmYW1wO2FtcDthbXA7aT0xIiZndDsmbHQ7YQogaHJlZj0ieC1tc2c6Ly8xMzEv dXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1w O2FtcDthbXA7aT0xIiZndDt4LW1zZzovLzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2Rl JmFtcDthbXA7bm9kZT00MDI5MDE4JmFtcDthbXA7aT0xIiB0YXJnZXQ9Il90b3AiIHJlbD0ibm9m b2xsb3ciIGxpbms9ImV4dGVybmFsIiZndDtbaGlkZGVuIGVtYWlsXTxzcGFuIGNsYXNzPSJ5aXY1 MTgzMTA0MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGJyIGNsZWFyPSJu b25lIj4mZ3Q7PHNwYW4gY2xhc3M9InlpdjUxODMxMDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3BhY2Ui PiZuYnNwOzwvc3Bhbj48YSByZWw9Im5vZm9sbG93IiBzaGFwZT0icmVjdCIgdGFyZ2V0PSJfYmxh bmsiIGhyZWY9Imh0dHBzOi8vbGlzdHMuamJvc3Mub3JnL21haWxtYW4vbGlzdGluZm8vcnVsZXMt ZGV2IiBsaW5rPSJleHRlcm5hbCI+aHR0cHM6Ly9saXN0cy5qYm9zcy5vcmcvbWFpbG1hbi9saXN0 aW5mby9ydWxlcy1kZXY8L2E+PC9kaXY+PC9kaXY+PC9kaXY+X19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX188c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxl LWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjwvZGl2PnJ1bGVzLWRldiBtYWlsaW5nIGxp c3Q8c3BhbiBjbGFzcz0ieWl2NTE4MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7 PC9zcGFuPjwvZGl2PiZsdDthIGhyZWY9IiZsdDthCiBocmVmPSImbHQ7YSBocmVmPSImbHQ7YSBo cmVmPSJ4LW1zZzovLzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDthbXA7YW1w O2FtcDthbXA7bm9kZT00MDI5MDE4JmFtcDthbXA7YW1wO2FtcDthbXA7aT0yIiZndDt4LW1zZzov LzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDthbXA7YW1wO2FtcDtub2RlPTQw MjkwMTgmYW1wO2FtcDthbXA7YW1wO2k9MiImZ3Q7Jmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzEvdXNl ci9TZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDthbXA7bm9kZT00MDI5MDE4JmFt cDthbXA7YW1wO2FtcDtpPTIiJmd0O3gtbXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBl PW5vZGUmYW1wO2FtcDthbXA7bm9kZT00MDI5MDE4JmFtcDthbXA7YW1wO2k9MiImZ3Q7Jmx0O2Eg aHJlZj0iJmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzEvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9k ZSZhbXA7YW1wO2FtcDthbXA7bm9kZT00MDI5MDE4JmFtcDthbXA7YW1wO2FtcDtpPTIiJmd0O3gt bXNnOi8vMTMxL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00 MDI5MDE4JmFtcDthbXA7YW1wO2k9MiImZ3Q7Jmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzEvdXNlci9T ZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwMTgmYW1wO2FtcDth bXA7aT0yIiZndDt4LW1zZzovLzEzMS91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDth bXA7bm9kZT00MDI5MDE4JmFtcDthbXA7aT0yIiB0YXJnZXQ9Il90b3AiIHJlbD0ibm9mb2xsb3ci IGxpbms9ImV4dGVybmFsIiZndDtbaGlkZGVuIGVtYWlsXTxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0 MTc0QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PC9kaXY+PGEgcmVsPSJub2Zv bGxvdyIgc2hhcGU9InJlY3QiCiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly9saXN0cy5q Ym9zcy5vcmcvbWFpbG1hbi9saXN0aW5mby9ydWxlcy1kZXYiIGxpbms9ImV4dGVybmFsIj5odHRw czovL2xpc3RzLmpib3NzLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3J1bGVzLWRldjwvYT48L2Rpdj48 L2Rpdj48L2Rpdj48aHIgbm9zaGFkZT0iIiBzaXplPSIxIj48ZGl2IHN0eWxlPSJjb2xvcjogcmdi KDY4LCA2OCwgNjgpOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudDogbm9ybWFsOyBm b250LXdlaWdodDogbm9ybWFsOyBmb250LXNpemU6IDEycHg7IGxpbmUtaGVpZ2h0OiBub3JtYWw7 IGZvbnQtZmFtaWx5OiB0YWhvbWEsIGdlbmV2YSwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJp ZjsiPjxkaXYgc3R5bGU9ImZvbnQtd2VpZ2h0OmJvbGQ7Ij5JZiB5b3UgcmVwbHkgdG8KIHRoaXMg ZW1haWwsIHlvdXIgbWVzc2FnZSB3aWxsIGJlIGFkZGVkIHRvIHRoZSBkaXNjdXNzaW9uIGJlbG93 OjwvZGl2PjxhIHJlbD0ibm9mb2xsb3ciIHNoYXBlPSJyZWN0IiB0YXJnZXQ9Il9ibGFuayIgaHJl Zj0iaHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL1Bvc3NpYmxlLW1lbW9yeS1sZWFr LWluLURyb29scy02LTAtMS10cDQwMjkwMTBwNDAyOTAxOC5odG1sIiBsaW5rPSJleHRlcm5hbCI+ aHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL1Bvc3NpYmxlLW1lbW9yeS1sZWFrLWlu LURyb29scy02LTAtMS10cDQwMjkwMTBwNDAyOTAxOC5odG1sPC9hPjwvZGl2PjxkaXYgc3R5bGU9 ImNvbG9yOiByZ2IoMTAyLCAxMDIsIDEwMik7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJp YW50OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc2l6ZTogMTFweDsgZm9udC1m YW1pbHk6IHRhaG9tYSwgZ2VuZXZhLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmOyBtYXJn aW4tdG9wOiAwLjRlbTsgbGluZS1oZWlnaHQ6IDEuNWVtOyI+VG8gdW5zdWJzY3JpYmUgZnJvbSBQ b3NzaWJsZSBtZW1vcnkgbGVhayBpbiBEcm9vbHMgNi4wLjEsPHNwYW4gY2xhc3M9InlpdjUxODMx MDQxNzRBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48YSByZWw9Im5vZm9sbG93 IiBzaGFwZT0icmVjdCIgaHJlZj0iIiB0YXJnZXQ9Il90b3AiIGxpbms9ImV4dGVybmFsIj5jbGlj ayBoZXJlPC9hPi48L2Rpdj48YSByZWw9Im5vZm9sbG93IiBzaGFwZT0icmVjdCIgdGFyZ2V0PSJf YmxhbmsiCiBocmVmPSJodHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5hYmJsZS5jb20vdGVtcGxhdGUv TmFtbFNlcnZsZXQuanRwP21hY3JvPW1hY3JvX3ZpZXdlciZhbXA7aWQ9aW5zdGFudF9odG1sJTIx bmFiYmxlJTNBZW1haWwubmFtbCZhbXA7YmFzZT1uYWJibGUubmFtbC5uYW1lc3BhY2VzLkJhc2lj TmFtZXNwYWNlLW5hYmJsZS52aWV3LndlYi50ZW1wbGF0ZS5OYWJibGVOYW1lc3BhY2UtbmFiYmxl LnZpZXcud2ViLnRlbXBsYXRlLk5vZGVOYW1lc3BhY2UmYW1wO2JyZWFkY3J1bWJzPW5vdGlmeV9z dWJzY3JpYmVycyUyMW5hYmJsZSUzQWVtYWlsLm5hbWwtaW5zdGFudF9lbWFpbHMlMjFuYWJibGUl M0FlbWFpbC5uYW1sLXNlbmRfaW5zdGFudF9lbWFpbCUyMW5hYmJsZSUzQWVtYWlsLm5hbWwiIHN0 eWxlPSJmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudDogbm9ybWFsOyBmb250LXdlaWdo dDogbm9ybWFsOyBmb250LXNpemU6IDlweDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1p bHk6IHNlcmlmOyIgbGluaz0iZXh0ZXJuYWwiPk5BTUw8L2E+PC9kaXY+PC9ibG9ja3F1b3RlPjxi ciBjbGVhcj0ibm9uZSI+PGhyIGFsaWduPSJsZWZ0IiB3aWR0aD0iMzAwIj5WaWV3IHRoaXMgbWVz c2FnZSBpbiBjb250ZXh0OjxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0QXBwbGUtY29udmVydGVk LXNwYWNlIj4mbmJzcDs8L3NwYW4+PGEgcmVsPSJub2ZvbGxvdyIgc2hhcGU9InJlY3QiIHRhcmdl dD0iX2JsYW5rIiBocmVmPSJodHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5hYmJsZS5jb20vUG9zc2li bGUtbWVtb3J5LWxlYWstaW4tRHJvb2xzLTYtMC0xLXRwNDAyOTAxMHA0MDI5MDI1Lmh0bWwiIGxp bms9ImV4dGVybmFsIj5SZTogUG9zc2libGUgbWVtb3J5IGxlYWsgaW4gRHJvb2xzIDYuMC4xPC9h PjxiciBjbGVhcj0ibm9uZSI+U2VudCBmcm9tIHRoZTxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0 QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGEgcmVsPSJub2ZvbGxvdyIgc2hh cGU9InJlY3QiIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5h YmJsZS5jb20vRHJvb2xzLURldmVsb3Blci1jb21taXR0ZXItbWFpbGluZy1saXN0LWY2MjI2MC5o dG1sIiBsaW5rPSJleHRlcm5hbCI+RHJvb2xzOiBEZXZlbG9wZXIgKGNvbW1pdHRlcikgbWFpbGlu ZyBsaXN0IG1haWxpbmcgbGlzdCBhcmNoaXZlPC9hPjxzcGFuIGNsYXNzPSJ5aXY1MTgzMTA0MTc0 QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+YXQ8c3BhbiBjbGFzcz0ieWl2NTE4 MzEwNDE3NEFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxhIHJlbD0ibm9mb2xs b3ciIHNoYXBlPSJyZWN0IiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL25hYmJsZS5jb20v IiBsaW5rPSJleHRlcm5hbCI+TmFiYmxlLmNvbTwvYT4uPGJyIGNsZWFyPSJub25lIj5fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxiciBjbGVhcj0ibm9uZSI+ cnVsZXMtZGV2IG1haWxpbmcgbGlzdDxiciBjbGVhcj0ibm9uZSI+Jmx0O2EgaHJlZj0iJmx0O2Eg aHJlZj0iJmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzMvdXNlci9TZW5kRW1haWwuanRwP3R5cGU9bm9k ZSZhbXA7YW1wO2FtcDthbXA7bm9kZT00MDI5MDI2JmFtcDthbXA7YW1wO2FtcDtpPTEiJmd0O3gt bXNnOi8vMTMzL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00 MDI5MDI2JmFtcDthbXA7YW1wO2k9MSImZ3Q7Jmx0O2EgaHJlZj0ieC1tc2c6Ly8xMzMvdXNlci9T ZW5kRW1haWwuanRwP3R5cGU9bm9kZSZhbXA7YW1wO2FtcDtub2RlPTQwMjkwMjYmYW1wO2FtcDth bXA7aT0xIiZndDt4LW1zZzovLzEzMy91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFtcDth bXA7bm9kZT00MDI5MDI2JmFtcDthbXA7aT0xIiB0YXJnZXQ9Il90b3AiIHJlbD0ibm9mb2xsb3ci CiBsaW5rPSJleHRlcm5hbCImZ3Q7W2hpZGRlbiBlbWFpbF08YnIgY2xlYXI9Im5vbmUiPjxhIHJl bD0ibm9mb2xsb3ciIHNoYXBlPSJyZWN0IiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly9s aXN0cy5qYm9zcy5vcmcvbWFpbG1hbi9saXN0aW5mby9ydWxlcy1kZXYiIGxpbms9ImV4dGVybmFs Ij5odHRwczovL2xpc3RzLmpib3NzLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3J1bGVzLWRldjwvYT48 L2Rpdj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyIGNsZWFyPSJub25lIj48L2Rpdj48YnIgY2xlYXI9 Im5vbmUiPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCjxi ciBjbGVhcj0ibm9uZSI+cnVsZXMtZGV2IG1haWxpbmcgbGlzdAo8YnIgY2xlYXI9Im5vbmUiPiZs dDthIGhyZWY9IiZsdDthIGhyZWY9IiZsdDthIGhyZWY9IngtbXNnOi8vMTMzL3VzZXIvU2VuZEVt YWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7YW1wO25vZGU9NDAyOTAyNiZhbXA7YW1wO2Ft cDthbXA7aT0yIiZndDt4LW1zZzovLzEzMy91c2VyL1NlbmRFbWFpbC5qdHA/dHlwZT1ub2RlJmFt cDthbXA7YW1wO25vZGU9NDAyOTAyNiZhbXA7YW1wO2FtcDtpPTIiJmd0OyZsdDthIGhyZWY9Ingt bXNnOi8vMTMzL3VzZXIvU2VuZEVtYWlsLmp0cD90eXBlPW5vZGUmYW1wO2FtcDthbXA7bm9kZT00 MDI5MDI2JmFtcDthbXA7YW1wO2k9MiImZ3Q7eC1tc2c6Ly8xMzMvdXNlci9TZW5kRW1haWwuanRw P3R5cGU9bm9kZSZhbXA7YW1wO25vZGU9NDAyOTAyNiZhbXA7YW1wO2k9MiIgdGFyZ2V0PSJfdG9w IiByZWw9Im5vZm9sbG93IiBsaW5rPSJleHRlcm5hbCImZ3Q7W2hpZGRlbiBlbWFpbF0KPGJyIGNs ZWFyPSJub25lIj48YSByZWw9Im5vZm9sbG93IiBzaGFwZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsi IGhyZWY9Imh0dHBzOi8vbGlzdHMuamJvc3Mub3JnL21haWxtYW4vbGlzdGluZm8vcnVsZXMtZGV2 IiBsaW5rPSJleHRlcm5hbCI+aHR0cHM6Ly9saXN0cy5qYm9zcy5vcmcvbWFpbG1hbi9saXN0aW5m by9ydWxlcy1kZXY8L2E+CgoJCgkKCQoJPGJyIGNsZWFyPSJub25lIj4KCTxiciBjbGVhcj0ibm9u ZSI+Cgk8aHIgbm9zaGFkZT0iIiBzaXplPSIxIj4KCTxkaXYgc3R5bGU9ImNvbG9yOiByZ2IoNjgs IDY4LCA2OCk7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50OiBub3JtYWw7IGZvbnQt d2VpZ2h0OiBub3JtYWw7IGZvbnQtc2l6ZTogMTJweDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgZm9u dC1mYW1pbHk6IHRhaG9tYSwgZ2VuZXZhLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmOyI+ CgkJPGRpdiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZDsiPklmIHlvdSByZXBseSB0byB0aGlzIGVt YWlsLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBhZGRlZCB0byB0aGUgZGlzY3Vzc2lvbiBiZWxvdzo8 L2Rpdj4KCQk8YSByZWw9Im5vZm9sbG93IiBzaGFwZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsiIGhy ZWY9Imh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFiYmxlLmNvbS9Qb3NzaWJsZS1tZW1vcnktbGVh ay1pbi1Ecm9vbHMtNi0wLTEtdHA0MDI5MDEwcDQwMjkwMjYuaHRtbCIgbGluaz0iZXh0ZXJuYWwi Pmh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFiYmxlLmNvbS9Qb3NzaWJsZS1tZW1vcnktbGVhay1p bi1Ecm9vbHMtNi0wLTEtdHA0MDI5MDEwcDQwMjkwMjYuaHRtbDwvYT4KCTwvZGl2PgoJPGRpdiBz dHlsZT0iY29sb3I6IHJnYigxMDIsIDEwMiwgMTAyKTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250 LXZhcmlhbnQ6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zaXplOiAxMXB4OyBm b250LWZhbWlseTogdGFob21hLCBnZW5ldmEsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7 IG1hcmdpbi10b3A6IDAuNGVtOyBsaW5lLWhlaWdodDogMS41ZW07Ij4KCQkKCQlUbyB1bnN1YnNj cmliZSBmcm9tIFBvc3NpYmxlIG1lbW9yeSBsZWFrIGluIERyb29scyA2LjAuMSwgPGEgcmVsPSJu b2ZvbGxvdyIgc2hhcGU9InJlY3QiIGhyZWY9IiIgdGFyZ2V0PSJfdG9wIiBsaW5rPSJleHRlcm5h bCI+Y2xpY2sgaGVyZTwvYT4uPGJyIGNsZWFyPSJub25lIj4KCQk8YSByZWw9Im5vZm9sbG93IiBz aGFwZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9kcm9vbHMuNDY5OTkubjMu bmFiYmxlLmNvbS90ZW1wbGF0ZS9OYW1sU2VydmxldC5qdHA/bWFjcm89bWFjcm9fdmlld2VyJmFt cDtpZD1pbnN0YW50X2h0bWwlMjFuYWJibGUlM0FlbWFpbC5uYW1sJmFtcDtiYXNlPW5hYmJsZS5u YW1sLm5hbWVzcGFjZXMuQmFzaWNOYW1lc3BhY2UtbmFiYmxlLnZpZXcud2ViLnRlbXBsYXRlLk5h YmJsZU5hbWVzcGFjZS1uYWJibGUudmlldy53ZWIudGVtcGxhdGUuTm9kZU5hbWVzcGFjZSZhbXA7 YnJlYWRjcnVtYnM9bm90aWZ5X3N1YnNjcmliZXJzJTIxbmFiYmxlJTNBZW1haWwubmFtbC1pbnN0 YW50X2VtYWlscyUyMW5hYmJsZSUzQWVtYWlsLm5hbWwtc2VuZF9pbnN0YW50X2VtYWlsJTIxbmFi YmxlJTNBZW1haWwubmFtbCIgc3R5bGU9ImZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50 OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc2l6ZTogOXB4OyBsaW5lLWhlaWdo dDogbm9ybWFsOyBmb250LWZhbWlseTogc2VyaWY7IiBsaW5rPSJleHRlcm5hbCI+TkFNTDwvYT4K CTwvZGl2PjwvYmxvY2txdW90ZT4KCgkKCQoJCjxiciBjbGVhcj0ibm9uZSI+PGhyIGFsaWduPSJs ZWZ0IiB3aWR0aD0iMzAwIj4KVmlldyB0aGlzIG1lc3NhZ2UgaW4gY29udGV4dDogPGEgcmVsPSJu b2ZvbGxvdyIgc2hhcGU9InJlY3QiIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vZHJvb2xz LjQ2OTk5Lm4zLm5hYmJsZS5jb20vUG9zc2libGUtbWVtb3J5LWxlYWstaW4tRHJvb2xzLTYtMC0x LXRwNDAyOTAxMHA0MDI5MDI3Lmh0bWwiIGxpbms9ImV4dGVybmFsIj5SZTogUG9zc2libGUgbWVt b3J5IGxlYWsgaW4gRHJvb2xzIDYuMC4xPC9hPjxiciBjbGVhcj0ibm9uZSI+ClNlbnQgZnJvbSB0 aGUgPGEgcmVsPSJub2ZvbGxvdyIgc2hhcGU9InJlY3QiIHRhcmdldD0iX2JsYW5rIiBocmVmPSJo dHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5hYmJsZS5jb20vRHJvb2xzLURldmVsb3Blci1jb21taXR0 ZXItbWFpbGluZy1saXN0LWY2MjI2MC5odG1sIiBsaW5rPSJleHRlcm5hbCI+RHJvb2xzOiBEZXZl bG9wZXIgKGNvbW1pdHRlcikgbWFpbGluZyBsaXN0IG1haWxpbmcgbGlzdCBhcmNoaXZlPC9hPiBh dCA8YSByZWw9Im5vZm9sbG93IiBzaGFwZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0 dHA6Ly9uYWJibGUuY29tLyIgbGluaz0iZXh0ZXJuYWwiPk5hYmJsZS5jb208L2E+LjxiciBjbGVh cj0ibm9uZSI+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188 YnIgY2xlYXI9Im5vbmUiPnJ1bGVzLWRldiBtYWlsaW5nIGxpc3Q8YnIgY2xlYXI9Im5vbmUiPjxh IHJlbD0ibm9mb2xsb3ciIHNoYXBlPSJyZWN0IiBocmVmPSIiIHRhcmdldD0iX3RvcCIgbGluaz0i ZXh0ZXJuYWwiPltoaWRkZW4gZW1haWxdPC9hPjxiciBjbGVhcj0ibm9uZSI+PGEgcmVsPSJub2Zv bGxvdyIgc2hhcGU9InJlY3QiIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL2xpc3RzLmpi b3NzLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3J1bGVzLWRldiIgbGluaz0iZXh0ZXJuYWwiPmh0dHBz Oi8vbGlzdHMuamJvc3Mub3JnL21haWxtYW4vbGlzdGluZm8vcnVsZXMtZGV2PC9hPjwvYmxvY2tx dW90ZT48YnIgY2xlYXI9Im5vbmUiPjxiciBjbGVhcj0ibm9uZSI+PGJyIGNsZWFyPSJub25lIj5f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo8YnIgY2xlYXI9 Im5vbmUiPnJ1bGVzLWRldiBtYWlsaW5nIGxpc3QKPGJyIGNsZWFyPSJub25lIj48YSByZWw9Im5v Zm9sbG93IiBzaGFwZT0icmVjdCIgaHJlZj0iIiB0YXJnZXQ9Il90b3AiIGxpbms9ImV4dGVybmFs Ij5baGlkZGVuIGVtYWlsXTwvYT4KPGJyIGNsZWFyPSJub25lIj48YSByZWw9Im5vZm9sbG93IiBz aGFwZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vbGlzdHMuamJvc3Mub3Jn L21haWxtYW4vbGlzdGluZm8vcnVsZXMtZGV2IiBsaW5rPSJleHRlcm5hbCI+aHR0cHM6Ly9saXN0 cy5qYm9zcy5vcmcvbWFpbG1hbi9saXN0aW5mby9ydWxlcy1kZXY8L2E+CgoJCgkKCQoJPGJyIGNs ZWFyPSJub25lIj4KCTxiciBjbGVhcj0ibm9uZSI+Cgk8aHIgbm9zaGFkZT0iIiBzaXplPSIxIj4K CTxkaXYgc3R5bGU9ImNvbG9yOiByZ2IoNjgsIDY4LCA2OCk7IGZvbnQtc3R5bGU6IG5vcm1hbDsg Zm9udC12YXJpYW50OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc2l6ZTogMTJw eDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IHRhaG9tYSwgZ2VuZXZhLCBoZWx2 ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmOyI+CgkJPGRpdiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9s ZDsiPklmIHlvdSByZXBseSB0byB0aGlzIGVtYWlsLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBhZGRl ZCB0byB0aGUgZGlzY3Vzc2lvbiBiZWxvdzo8L2Rpdj4KCQk8YSByZWw9Im5vZm9sbG93IiBzaGFw ZT0icmVjdCIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFi YmxlLmNvbS9Qb3NzaWJsZS1tZW1vcnktbGVhay1pbi1Ecm9vbHMtNi0wLTEtdHA0MDI5MDEwcDQw MjkwNTIuaHRtbCIgbGluaz0iZXh0ZXJuYWwiPmh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFiYmxl LmNvbS9Qb3NzaWJsZS1tZW1vcnktbGVhay1pbi1Ecm9vbHMtNi0wLTEtdHA0MDI5MDEwcDQwMjkw NTIuaHRtbDwvYT4KCTwvZGl2PjxkaXYgY2xhc3M9InlpdjUxODMxMDQxNzR5cXQxMTk0MTUxNTUw IiBpZD0ieWl2NTE4MzEwNDE3NHlxdGZkOTQwNTAiPgoJPGRpdiBzdHlsZT0iY29sb3I6IHJnYigx MDIsIDEwMiwgMTAyKTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQ6IG5vcm1hbDsg Zm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogdGFob21h LCBnZW5ldmEsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7IG1hcmdpbi10b3A6IDAuNGVt OyBsaW5lLWhlaWdodDogMS41ZW07Ij4KCQkKCQlUbyB1bnN1YnNjcmliZSBmcm9tIFBvc3NpYmxl IG1lbW9yeSBsZWFrIGluIERyb29scyA2LjAuMSwgPGEgcmVsPSJub2ZvbGxvdyIgc2hhcGU9InJl Y3QiIGhyZWY9IiIgdGFyZ2V0PSJfdG9wIiBsaW5rPSJleHRlcm5hbCI+Y2xpY2sgaGVyZTwvYT4u PGJyIGNsZWFyPSJub25lIj4KCQk8YSByZWw9Im5vZm9sbG93IiBzaGFwZT0icmVjdCIgdGFyZ2V0 PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFiYmxlLmNvbS90ZW1wbGF0 ZS9OYW1sU2VydmxldC5qdHA/bWFjcm89bWFjcm9fdmlld2VyJmFtcDtpZD1pbnN0YW50X2h0bWwl MjFuYWJibGUlM0FlbWFpbC5uYW1sJmFtcDtiYXNlPW5hYmJsZS5uYW1sLm5hbWVzcGFjZXMuQmFz aWNOYW1lc3BhY2UtbmFiYmxlLnZpZXcud2ViLnRlbXBsYXRlLk5hYmJsZU5hbWVzcGFjZS1uYWJi bGUudmlldy53ZWIudGVtcGxhdGUuTm9kZU5hbWVzcGFjZSZhbXA7YnJlYWRjcnVtYnM9bm90aWZ5 X3N1YnNjcmliZXJzJTIxbmFiYmxlJTNBZW1haWwubmFtbC1pbnN0YW50X2VtYWlscyUyMW5hYmJs ZSUzQWVtYWlsLm5hbWwtc2VuZF9pbnN0YW50X2VtYWlsJTIxbmFiYmxlJTNBZW1haWwubmFtbCIg c3R5bGU9ImZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50OiBub3JtYWw7IGZvbnQtd2Vp Z2h0OiBub3JtYWw7IGZvbnQtc2l6ZTogOXB4OyBsaW5lLWhlaWdodDogbm9ybWFsOyBmb250LWZh bWlseTogc2VyaWY7IiBsaW5rPSJleHRlcm5hbCI+TkFNTDwvYT4KCTwvZGl2PjwvZGl2PjwvZGl2 PjwvZGl2Pjxicj48YnI+PC9kaXY+IDwvZGl2PiA8L2Rpdj4gIDwvZGl2PjxkaXYgY2xhc3M9Inlp djUxODMxMDQxNzRzbWFsbCI+PGJyPjxpbWc+IDxiPk5DQ0ZfQkFTRUxJTkUueGxzLmRybDwvYj4g KDlNKSA8YSByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL2Ryb29s cy40Njk5OS5uMy5uYWJibGUuY29tL2F0dGFjaG1lbnQvNDAyOTA3OC8wL05DQ0ZfQkFTRUxJTkUu eGxzLmRybCIgbGluaz0iZXh0ZXJuYWwiPkRvd25sb2FkIEF0dGFjaG1lbnQ8L2E+PC9kaXY+CgoJ CgkKCQo8YnI+PGhyIGFsaWduPSJsZWZ0IiB3aWR0aD0iMzAwIj4KVmlldyB0aGlzIG1lc3NhZ2Ug aW4gY29udGV4dDogPGEgcmVsPSJub2ZvbGxvdyIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6 Ly9kcm9vbHMuNDY5OTkubjMubmFiYmxlLmNvbS9Qb3NzaWJsZS1tZW1vcnktbGVhay1pbi1Ecm9v bHMtNi0wLTEtdHA0MDI5MDEwcDQwMjkwNzguaHRtbCIgbGluaz0iZXh0ZXJuYWwiPlJlOiBQb3Nz aWJsZSBtZW1vcnkgbGVhayBpbiBEcm9vbHMgNi4wLjE8L2E+PGJyPgpTZW50IGZyb20gdGhlIDxh IHJlbD0ibm9mb2xsb3ciIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vZHJvb2xzLjQ2OTk5 Lm4zLm5hYmJsZS5jb20vRHJvb2xzLURldmVsb3Blci1jb21taXR0ZXItbWFpbGluZy1saXN0LWY2 MjI2MC5odG1sIiBsaW5rPSJleHRlcm5hbCI+RHJvb2xzOiBEZXZlbG9wZXIgKGNvbW1pdHRlcikg bWFpbGluZyBsaXN0IG1haWxpbmcgbGlzdCBhcmNoaXZlPC9hPiBhdCA8YSByZWw9Im5vZm9sbG93 IiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL25hYmJsZS5jb20vIiBsaW5rPSJleHRlcm5h bCI+TmFiYmxlLmNvbTwvYT4uPGJyPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fPGJyPnJ1bGVzLWRldiBtYWlsaW5nIGxpc3Q8YnI+PGEgcmVsPSJub2ZvbGxv dyIgaHJlZj0iIiB0YXJnZXQ9Il90b3AiIGxpbms9ImV4dGVybmFsIj5baGlkZGVuIGVtYWlsXTwv YT48YnI+PGEgcmVsPSJub2ZvbGxvdyIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vbGlz dHMuamJvc3Mub3JnL21haWxtYW4vbGlzdGluZm8vcnVsZXMtZGV2IiBsaW5rPSJleHRlcm5hbCI+ aHR0cHM6Ly9saXN0cy5qYm9zcy5vcmcvbWFpbG1hbi9saXN0aW5mby9ydWxlcy1kZXY8L2E+PC9i bG9ja3F1b3RlPjwvZGl2Pjxicj48L2Rpdj48L2Rpdj48YnI+X19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPGJyPnJ1bGVzLWRldiBtYWlsaW5nIGxpc3QKPGJy PjxhIHJlbD0ibm9mb2xsb3ciIGhyZWY9IiIgdGFyZ2V0PSJfdG9wIiBsaW5rPSJleHRlcm5hbCI+ W2hpZGRlbiBlbWFpbF08L2E+Cjxicj48YSByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayIg aHJlZj0iaHR0cHM6Ly9saXN0cy5qYm9zcy5vcmcvbWFpbG1hbi9saXN0aW5mby9ydWxlcy1kZXYi IGxpbms9ImV4dGVybmFsIj5odHRwczovL2xpc3RzLmpib3NzLm9yZy9tYWlsbWFuL2xpc3RpbmZv L3J1bGVzLWRldjwvYT4KCgkKCQoJCgk8YnI+Cgk8YnI+Cgk8aHIgbm9zaGFkZT0iIiBzaXplPSIx Ij4KCTxkaXYgc3R5bGU9ImNvbG9yOiByZ2IoNjgsIDY4LCA2OCk7IGZvbnQtc3R5bGU6IG5vcm1h bDsgZm9udC12YXJpYW50OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc2l6ZTog MTJweDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IHRhaG9tYSwgZ2VuZXZhLCBo ZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmOyI+CgkJPGRpdiBzdHlsZT0iZm9udC13ZWlnaHQ6 Ym9sZDsiPklmIHlvdSByZXBseSB0byB0aGlzIGVtYWlsLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBh ZGRlZCB0byB0aGUgZGlzY3Vzc2lvbiBiZWxvdzo8L2Rpdj4KCQk8YSByZWw9Im5vZm9sbG93IiB0 YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL1Bv c3NpYmxlLW1lbW9yeS1sZWFrLWluLURyb29scy02LTAtMS10cDQwMjkwMTBwNDAyOTA4MS5odG1s IiBsaW5rPSJleHRlcm5hbCI+aHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL1Bvc3Np YmxlLW1lbW9yeS1sZWFrLWluLURyb29scy02LTAtMS10cDQwMjkwMTBwNDAyOTA4MS5odG1sPC9h PgoJPC9kaXY+Cgk8ZGl2IHN0eWxlPSJjb2xvcjogcmdiKDEwMiwgMTAyLCAxMDIpOyBmb250LXN0 eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudDogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBm b250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiB0YWhvbWEsIGdlbmV2YSwgaGVsdmV0aWNhLCBh cmlhbCwgc2Fucy1zZXJpZjsgbWFyZ2luLXRvcDogMC40ZW07IGxpbmUtaGVpZ2h0OiAxLjVlbTsi PgoJCQoJCVRvIHVuc3Vic2NyaWJlIGZyb20gUG9zc2libGUgbWVtb3J5IGxlYWsgaW4gRHJvb2xz IDYuMC4xLCA8YSByZWw9Im5vZm9sbG93IiBocmVmPSIiIHRhcmdldD0iX3RvcCIgbGluaz0iZXh0 ZXJuYWwiPmNsaWNrIGhlcmU8L2E+Ljxicj4KCQk8YSByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9i bGFuayIgaHJlZj0iaHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL3RlbXBsYXRlL05h bWxTZXJ2bGV0Lmp0cD9tYWNybz1tYWNyb192aWV3ZXImYW1wO2lkPWluc3RhbnRfaHRtbCUyMW5h YmJsZSUzQWVtYWlsLm5hbWwmYW1wO2Jhc2U9bmFiYmxlLm5hbWwubmFtZXNwYWNlcy5CYXNpY05h bWVzcGFjZS1uYWJibGUudmlldy53ZWIudGVtcGxhdGUuTmFiYmxlTmFtZXNwYWNlLW5hYmJsZS52 aWV3LndlYi50ZW1wbGF0ZS5Ob2RlTmFtZXNwYWNlJmFtcDticmVhZGNydW1icz1ub3RpZnlfc3Vi c2NyaWJlcnMlMjFuYWJibGUlM0FlbWFpbC5uYW1sLWluc3RhbnRfZW1haWxzJTIxbmFiYmxlJTNB ZW1haWwubmFtbC1zZW5kX2luc3RhbnRfZW1haWwlMjFuYWJibGUlM0FlbWFpbC5uYW1sIiBzdHls ZT0iZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQ6IG5vcm1hbDsgZm9udC13ZWlnaHQ6 IG5vcm1hbDsgZm9udC1zaXplOiA5cHg7IGxpbmUtaGVpZ2h0OiBub3JtYWw7IGZvbnQtZmFtaWx5 OiBzZXJpZjsiIGxpbms9ImV4dGVybmFsIj5OQU1MPC9hPgoJPC9kaXY+PC9kaXY+PGJyPjxicj48 L2Rpdj4gPC9kaXY+IDwvZGl2PiAgPC9kaXY+CgoJCgkKCQo8YnI+PGhyIGFsaWduPSJsZWZ0IiB3 aWR0aD0iMzAwIj4KVmlldyB0aGlzIG1lc3NhZ2UgaW4gY29udGV4dDogPGEgcmVsPSJub2ZvbGxv dyIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9kcm9vbHMuNDY5OTkubjMubmFiYmxlLmNv bS9Qb3NzaWJsZS1tZW1vcnktbGVhay1pbi1Ecm9vbHMtNi0wLTEtdHA0MDI5MDEwcDQwMjkxODAu aHRtbCIgbGluaz0iZXh0ZXJuYWwiPlJlOiBQb3NzaWJsZSBtZW1vcnkgbGVhayBpbiBEcm9vbHMg Ni4wLjE8L2E+PGJyPgpTZW50IGZyb20gdGhlIDxhIHJlbD0ibm9mb2xsb3ciIHRhcmdldD0iX2Js YW5rIiBocmVmPSJodHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5hYmJsZS5jb20vRHJvb2xzLURldmVs b3Blci1jb21taXR0ZXItbWFpbGluZy1saXN0LWY2MjI2MC5odG1sIiBsaW5rPSJleHRlcm5hbCI+ RHJvb2xzOiBEZXZlbG9wZXIgKGNvbW1pdHRlcikgbWFpbGluZyBsaXN0IG1haWxpbmcgbGlzdCBh cmNoaXZlPC9hPiBhdCA8YSByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0 cDovL25hYmJsZS5jb20vIiBsaW5rPSJleHRlcm5hbCI+TmFiYmxlLmNvbTwvYT4uPGJyPl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fPGJyPnJ1bGVzLWRldiBt YWlsaW5nIGxpc3Q8YnI+PGEgcmVsPSJub2ZvbGxvdyIgaHJlZj0iIiB0YXJnZXQ9Il90b3AiIGxp bms9ImV4dGVybmFsIj5baGlkZGVuIGVtYWlsXTwvYT48YnI+aHR0cHM6Ly9saXN0cy5qYm9zcy5v cmcvbWFpbG1hbi9saXN0aW5mby9ydWxlcy1kZXY8L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjwvZGl2 Pjxicj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo8YnI+ cnVsZXMtZGV2IG1haWxpbmcgbGlzdAo8YnI+PGEgcmVsPSJub2ZvbGxvdyIgaHJlZj0iIiB0YXJn ZXQ9Il90b3AiIGxpbms9ImV4dGVybmFsIj5baGlkZGVuIGVtYWlsXTwvYT4KPGJyPjxhIHJlbD0i bm9mb2xsb3ciIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL2xpc3RzLmpib3NzLm9yZy9t YWlsbWFuL2xpc3RpbmZvL3J1bGVzLWRldiIgbGluaz0iZXh0ZXJuYWwiPmh0dHBzOi8vbGlzdHMu amJvc3Mub3JnL21haWxtYW4vbGlzdGluZm8vcnVsZXMtZGV2PC9hPgoKCQoJCgkKCTxicj4KCTxi cj4KCTxociBub3NoYWRlPSIiIHNpemU9IjEiIGNvbG9yPSIjY2NjY2NjIj4KCTxkaXYgc3R5bGU9 ImNvbG9yOiByZ2IoNjgsIDY4LCA2OCk7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50 OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc2l6ZTogMTJweDsgbGluZS1oZWln aHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IHRhaG9tYSwgZ2VuZXZhLCBoZWx2ZXRpY2EsIGFyaWFs LCBzYW5zLXNlcmlmOyI+CgkJPGRpdiBzdHlsZT0iZm9udC13ZWlnaHQ6Ym9sZDsiPklmIHlvdSBy ZXBseSB0byB0aGlzIGVtYWlsLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBhZGRlZCB0byB0aGUgZGlz Y3Vzc2lvbiBiZWxvdzo8L2Rpdj4KCQk8YSByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayIg aHJlZj0iaHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL1Bvc3NpYmxlLW1lbW9yeS1s ZWFrLWluLURyb29scy02LTAtMS10cDQwMjkwMTBwNDAyOTE4My5odG1sIiBsaW5rPSJleHRlcm5h bCI+aHR0cDovL2Ryb29scy40Njk5OS5uMy5uYWJibGUuY29tL1Bvc3NpYmxlLW1lbW9yeS1sZWFr LWluLURyb29scy02LTAtMS10cDQwMjkwMTBwNDAyOTE4My5odG1sPC9hPgoJPC9kaXY+Cgk8ZGl2 IHN0eWxlPSJjb2xvcjogcmdiKDEwMiwgMTAyLCAxMDIpOyBmb250LXN0eWxlOiBub3JtYWw7IGZv bnQtdmFyaWFudDogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXNpemU6IDExcHg7 IGZvbnQtZmFtaWx5OiB0YWhvbWEsIGdlbmV2YSwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJp ZjsgbWFyZ2luLXRvcDogMC40ZW07IGxpbmUtaGVpZ2h0OiAxLjVlbTsiPgoJCQoJCVRvIHVuc3Vi c2NyaWJlIGZyb20gUG9zc2libGUgbWVtb3J5IGxlYWsgaW4gRHJvb2xzIDYuMC4xLCA8YSByZWw9 Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iIiBsaW5rPSJleHRlcm5hbCI+Y2xpY2sg aGVyZTwvYT4uPGJyPgoJCTxhIHJlbD0ibm9mb2xsb3ciIHRhcmdldD0iX2JsYW5rIiBocmVmPSJo dHRwOi8vZHJvb2xzLjQ2OTk5Lm4zLm5hYmJsZS5jb20vdGVtcGxhdGUvTmFtbFNlcnZsZXQuanRw P21hY3JvPW1hY3JvX3ZpZXdlciZhbXA7aWQ9aW5zdGFudF9odG1sJTIxbmFiYmxlJTNBZW1haWwu bmFtbCZhbXA7YmFzZT1uYWJibGUubmFtbC5uYW1lc3BhY2VzLkJhc2ljTmFtZXNwYWNlLW5hYmJs ZS52aWV3LndlYi50ZW1wbGF0ZS5OYWJibGVOYW1lc3BhY2UtbmFiYmxlLnZpZXcud2ViLnRlbXBs YXRlLk5vZGVOYW1lc3BhY2UmYW1wO2JyZWFkY3J1bWJzPW5vdGlmeV9zdWJzY3JpYmVycyUyMW5h YmJsZSUzQWVtYWlsLm5hbWwtaW5zdGFudF9lbWFpbHMlMjFuYWJibGUlM0FlbWFpbC5uYW1sLXNl bmRfaW5zdGFudF9lbWFpbCUyMW5hYmJsZSUzQWVtYWlsLm5hbWwiIHN0eWxlPSJmb250LXN0eWxl OiBub3JtYWw7IGZvbnQtdmFyaWFudDogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250 LXNpemU6IDlweDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgZm9udC1mYW1pbHk6IHNlcmlmOyIgbGlu az0iZXh0ZXJuYWwiPk5BTUw8L2E+Cgk8L2Rpdj48L2Rpdj48YnI+PGJyPjwvZGl2PiA8L2Rpdj4g PC9kaXY+ICA8L2Rpdj4KCgkKCQoJCjxici8+PGhyIGFsaWduPSJsZWZ0IiB3aWR0aD0iMzAwIiAv PgpWaWV3IHRoaXMgbWVzc2FnZSBpbiBjb250ZXh0OiA8YSBocmVmPSJodHRwOi8vZHJvb2xzLjQ2 OTk5Lm4zLm5hYmJsZS5jb20vUG9zc2libGUtbWVtb3J5LWxlYWstaW4tRHJvb2xzLTYtMC0xLXRw NDAyOTAxMHA0MDI5MTg2Lmh0bWwiPlJlOiBQb3NzaWJsZSBtZW1vcnkgbGVhayBpbiBEcm9vbHMg Ni4wLjE8L2E+PGJyLz4KU2VudCBmcm9tIHRoZSA8YSBocmVmPSJodHRwOi8vZHJvb2xzLjQ2OTk5 Lm4zLm5hYmJsZS5jb20vRHJvb2xzLURldmVsb3Blci1jb21taXR0ZXItbWFpbGluZy1saXN0LWY2 MjI2MC5odG1sIj5Ecm9vbHM6IERldmVsb3BlciAoY29tbWl0dGVyKSBtYWlsaW5nIGxpc3QgbWFp bGluZyBsaXN0IGFyY2hpdmU8L2E+IGF0IE5hYmJsZS5jb20uPGJyLz4= --===============8711127046549866765==--