MSFT A=L( d,X Lx@l4` ( T  H t<h0\$P|D p8< h!4p @!#Jhnx(  ! !Ԝ`&!`!!&!< !<< ! ! ! ! L< ! px !  ! $ ! | ! 4"D H@| @4"@8 d<4"L@D t@4"` @ 4P4"@t@4" @X4"ķ @D@4"p8@T4"P@4|@4"h h@h D4"@ L@4"@$ @&!h$4"h@P X4" @T p@4" @` @4"D @ P4" h @<, P4"!(@`P @4""@@@T 4"#X@!,4"$pp@!$4"% @$%P4"&@T%P@4"'@l'h$4"(t@+T#")|%, &!*$,&!+x-&!,- !!-- &!..4"/ 0@8/H#"0 L7t##"1$+t<##"2C#4"3 @,D#P4"4@! @\D$P4"5d$ @D@$T@#"6%8TE$4"7@&@$F%4%"8'DG%4"9'@`G%(4":X(@H&x| %"; ,XJ@( %"< ,(lJP(@P(hH x8pP(NnI> 0FFG;5Opm&6L G Ot F 0:s *Dw=0=EIL$@/O} WNU₎PLGbD~6O`iV׀E^%%=l.RGMAs6Y-j gIE[g4NoPIGY0Ӛ7@Tj/0bRA͂` )vGu )A$s/NG( r, gLD}~zD ֽ[EVKT zt@j} ^ٴI9j, hD{Fπ H-hI' 80eDJt`H NW~(kB#g@= |@.d,}Dt)\[GImk/tB5"]K dFvzk$dAX8r!tO!e>>MbG<@f@7Ei4CxHCYN&%<F (#eC$\a> ypE͌QaC8?OfaN&w<?Ll?W$B[Il|ƉKVx)|h$*tKIVVG(olNQUDXI|G*ƓPf $iE$W$vkI>|?nIOiUӶPEkqnACAHx:PQϗ u}Ji3A|3 1uM, xɤ,CODih8J0<^DXΉQbLO‰`3Wu1(DFU]0H@-V [B.<@wa)p\0|H P`0x     &&'H`xPh-stdole2.tlbWWW`dts.tlbWWWlFtP,l;GFh5@It7DA< I@8+xH4D\A3dI1GTEF89CDD4< l?7IlJ>*xC 5 J?H;>3ItB$E8 'p1:I.=PDA=856\>,D=x7(F/01$F\: DTSPipelineW8ADTSPIPELINEVERSIONWW0pDTSPIPELINE_CURRENTVERSIONWWd 8DTPSTATUSENUMWWWd 0DTPSTATUS_OKd03DTPSTATUS_BADACCESSORWWWd0LmDTPSTATUS_CANTCONVERTVALUEWWd0LDTPSTATUS_ISNULLd0DTPSTATUS_TRUNCATEDWd0DTPSTATUS_SIGNMISMATCHWWd0 DTPSTATUS_DATAOVERFLOWWWd|0DTPSTATUS_CANTCREATEd0fDTPSTATUS_UNAVAILABLEWWWd0DTPSTATUS_PERMISSIONDENIEDWWd0@DTPSTATUS_INTEGRITYVIOLATIONd0ZDTPSTATUS_SCHEMAVIOLATIONWWWd0$nDTPSTATUS_BADSTATUSWd0BDTPSTATUS_DEFAULTWWW8BUFFER_WIRE_PACKETWW,8gtagBUFFER_WIRE_PACKETWWW,  dwRowCountWW, dwColCountWW, ;ppvRowStarts,pColInfo, pvbIsEndOfRowsetW8R PBUFFER_WIRE_PACKETW8DTSValidationStatusW 0AVS_ISVALIDWW 0MVS_ISBROKENW05VS_NEEDSNEWMETADATAW@ 0VS_ISCORRUPTX8DTSInsertPlacementWWX 0IP_BEFOREWWWX0 IP_AFTER 8DTSObjectTypeWWW0rOT_UNSPECIFIEDWW0OT_SOURCEADAPTER0OT_DESTINATIONADAPTERWWW 0~OT_TRANSFORM 0 OT_COMPONENT0/OT_COMPONENTVIEWERWW0QOT_PATHW80OT_INPUT0OT_VIRTUALINPUTW 0OT_OUTPUTWWW0OT_INPUTCOLUMNWW0OT_OUTPUTCOLUMNW`08OT_VIRTUALINPUTCOLUMNWWW 0tOT_PROPERTYW0zOT_RUNTIMECONNECTION0nOT_EXTERNALMETADATACOLUMNWWW \8;DTSPersistenceFormat  0$+PF_XMLWW  0PF_SQLSERVER8(DTSBufferHandlePresetValuesW0J?H_ALLWWW8LDTSBufferFlagsWW 06BUFF_NOOLEDB 0$BUFF_INITWWWL< 8DTSUsageTypeL 0-UT_READONLYWL 0UT_READWRITEL 0"UT_IGNOREDWW8HDTSPersistStateW$ 0}PS_DEFAULTWW0PS_PERSISTASHEXW0N0PS_PERSISTASCDATAWWW8DTSRowDispositionWWW 0aRD_NotUsedWW0FRD_IgnoreFailure0+RD_RedirectRowWW0CxRD_FailComponentx8iDTSCustomPropertyExpressionTypeWxP 0CPET_NONEWWWx 0ECPET_NOTIFYW8 IDTSBLOBObject100WWWYLengthWW<plLengthHSpoolThresholdWWplSpoolThreshold ResetDataWWWAddDataWh0lpDataWW4dwLength(GetDataW]dwOffset slpPointerWWW lpdwWrittenWPutDataWlpdwRead GetStreamWWWpIStreamX SetFromStreamWWW͏pISequentialStreamWW@ 80IDTSObject100WWW@ ]IDWWpIDW@ DescriptionWppbstrDescription@ Named spbstrNameWWW@ 9ObjectTypeWW8 pTypeWWW@x IdentificationStringT &pbstrIdentificationStringWWW8IDTSCustomProperty100WWWKValueWWWD ;pvValueWStateWWWpePropertyStateW| EncryptionRequiredWW ypbEnryptionRequiredWt NTypeConverterWWWpbstrTypeConverterWW VUITypeEditorpbstrUITypeEditorWWW ContainsIDWW Z9pbContainsID$=ExpressionTypeWW!peExpressionType@8BIDTSCustomPropertyCollection100WzItemIndexWWW-zppIDTSCustomPropertyLxA_NewEnumppIUnknownEnumWW 0vCountWWWplCountWNewWNewAtWWW lIndexWW 9RemoveObjectByIndexW~ RemoveObjectByID lIDW RemoveAllWWW SetIndex $lOldIndexWWW lNewIndexWWW \GetObjectByIDWWW\GetObjectIndexByIDWWplIndexWd ]SFindObjectByIDWW6FindObjectIndexByIDWl8=IDTSInputColumn100WWld%?DataType $peDataTypeWWld PrecisionWWWl plPrecisionWlt ScaleWWW*plScaleWl i8UsageTypeWWW MpeUsageTypeWlf6CustomPropertyCollectionfppIDTSCustomPropertyCollectionWWl LineageIDWWW, plLineageIDWlMappedColumnIDWW8plMappedColumnIDlCCodePage plCodePageWWl@NIsValidW pbIsValidWWWliSortKeyPositionWaplSortKeyPositionWWWlSDComparisonFlagsW,plComparisonFlagsWWWl UpstreamComponentNameWWW;pbstrUpstreamComponentNameWWlLbErrorRowDispositionW j3peDispositionWWWlTruncationRowDispositionl@cErrorOrTruncationOperationWW pbstrValueWWlbExternalMetadataColumnIDplExternalMetadataColumnIDWWlDescribeRedirectedErrorCodeW {hrErrorCodeWd 5pbstrDescWWW8^IDTSInputColumnCollection100 uppIDTSInputColumnWWWkCGetInputColumnByLineageIDWWW lLineageIDWW GetInputColumnByName| bstrComponentNameWWW` MbstrName48KDIDTSOutputColumn100W4 SpecialFlagsplSpecialFlagsWW4 SetDataTypePropertiesWWW YeDataTypeWWW1lLengthW lPrecisionWWOlScaleWW U'lCodePageWWW8 IDTSOutputColumnCollection100WWWppIDTSOutputColumnWW[IGetOutputColumnByLineageIDWW8GIDTSVirtualInputColumn100WWWSourceComponentW\tagBUFFERCOLP flMaxLengthWW(lOffsetW 4lStatusOffsetWWW- lLengthOffsetWWW) -GetColumnInfoWWW,[hColP)/pColPGetBoundaryInfoWTNLpdwColsWl" pdwMaxRowsWW7AddRowWW- ppRowStartWW-lgphRowWWW) 0^RemoveRowWWW 8DTP_HBUFFERWx-GetIDWWWH*phID\'8qIDTSBufferManager100\$'RegisterBufferTypeWWcColsWWW0(]rgColsWWP#{lMaxRowsBdwCreationFlagsW\8RegisterLineageIDsWW`, hBufferTypeWX lLineageIDsW\"8CreateVirtualBufferW .hSourceBufferWWW\CreateFlatBufferlolSizeWWW#"pOwnerWW/]ppBuffer\0 %'CreateBuffer\+FindColumnByLineageIDWWWH( ͬnLineageIDWW0 bpwColIndexWW\ cGetRowWidthW XplSizeInBytesWWW\1 bGetBLOBObjectWWW, ppNewObjectW\& IsVirtualWWW0 MpbIsVirtualWp& GetManagerWW/ }ppManagerWWWL.pDataWWW, GetDataByRef.rSetDataWt, ZGetBLOBLengthWWW0+mpdwBytes1 / AddBLOBDataW<) BAGetBLOBDataW % GetBLOBStreamWWWx.SetBLOBFromStreamWWW `ResetBLOBDataWWW/e-SetBLOBFromObjectWWW 1ypIDTSBLOBObjectW8,ppIDTSBLOBObjectX2IsNullWWpfNullWW, SetStatusWWWx*dbStatus# KGetStatusWWW$, pDBStatusWWWL3PrepareDataStatusForInsertWW)SetEndOfRowsetWW\0 IsEndOfRowsetWWW/pfEORWWW0CloneWWW- UppNewBufferWxGetRowDataBytesW3plCB# HGetRowStartsdwRowsRequestedW+ pbRowStartsW04rUDirectErrorRowWW, =IlErrorCodeWW . lErrorColumn SetErrorInfo, sGetFlatMemoryWWWh)pBufferW4 EPrimeOutputW'vlOutputs4 =lOutputIDsWW2`pIDTSBufferOutputsWW, SProcessInput-pIDTSBufferInput כPostExecuteW|CleanupWXComponentMetaDataWWWfVariableDispenserWWW(/ BufferManagerWWW" EventInfosWW$ԘReferenceTracker$)PerformUpgradeWW`plPipelineVersion  "LogEntryInfosWWW0RequiredProductLevelLpeProductLevelWW8 IDTSManagedComponentWrapper100WW opIDTSBufferW\4ppsaData.@vAddBLOBDataLenWW,6XdwCountW8/!qWrapperProvideComponentPropertiesWWWx3WrapperReinitializeMetaDataW*WrapperInsertOutputColumnAtWl'QWrapperDeleteOutputColumnWWWx0WrapperOnDeletingInputColumn,E;WrapperSetUsageTypeW$&WrapperSetComponentPropertyWT8JWrapperSetInputPropertyW*RWrapperSetOutputProperty6TWrapperSetInputColumnPropertyWWW0]WrapperSetOutputColumnPropertyWW&JWrapperInsertInputWW65WrapperInsertOutputW4 WrapperDeleteInputWW..WrapperDeleteOutputW|8"WrapperOnInputPathDetachedWW@-$WrapperOnInputPathAttachedWW6_WrapperOnOutputPathAttachedW39WrapperValidateWT'WrapperAcquireConnectionsWWW.WrapperReleaseConnectionsWWW+(WrapperSetOutputColumnDataTypeProperties6fWrapperMapInputColumnWWWa"WrapperMapOutputColumnWW"WrapperDescribeRedirectedErrorCodeWW,%WrapperInsertExternalMetadataColumnAtWWW.#WrapperDeleteExternalMetadataColumnW6(WfWrapperSetExternalMetadataColumnProperty|(2WrapperSetExternalMetadataColumnDataTypePropertiesWW$98IDTSManagedComponentHost100W3bstrUserComponentTypeNameWWW4WpComponentMetaDataWWp2BNpVariableDispenserWW07L9pBufferManagerWWt< pEventInfosW YpRefTrackerWߡpLogEntryInfosWW$:HostPrepareForExecuteWWWX+pWrapper$0%HostPreExecuteWW$2HostPrimeOutputW4< ;psaOutputIDs4 rDpsaBuffersWW(2mppBufferPacketWW$\.HostProcessInput: >pDTSBufferWW' upBufferPacketWWW$57HostPostExecuteW$T1 b(HostCleanupW$6[`HostCheckAndPerformUpgradeWW$x4 HostProvideComponentPropertiesWW$T,HostReinitializeMetaData$(>2HostInsertOutputColumnAt$5HostDeleteOutputColumnWW$<HostOnDeletingInputColumnWWW$$?2HostSetUsageType$D|HostInsertExternalMetadataColumnAtWW$2 eHostDeleteExternalMetadataColumn$(%"HostSetExternalMetadataColumnPropertyWWW$?/HostSetExternalMetadataColumnDataTypePropertiesW$.HostComponentMetaDataWWW$5HostVariableDispenserWWW$@oHostBufferManagerWWW$`9ݧHostEventInfosWW$:7BHostReferenceTracker$4C-HostLogEntryInfosWWW280aIDTSManagedComponent100W0 SInnerObjectW9 I"ppInnerObjectWWW%"8vIDTSComponentMetaDataCollection100WWP )8pIDTSPathCollection100WWW> 8 IDTSPath100WH? StartPointWW49yEndPointx/#1AttachPathAndPropagateNotificationsW4: $pIDTSOutputWA pIDTSInputWWL6 mVisualizedWWD> ppIDTSPathWW0*8 IDTSBufferManagerInitialize100WW :"SetEventInterfacesWW=NpEventsWpLoggingX/kSetTempStorageLocationsW@rbstrBlobStorageW8z2bstrTempStorageW|*8~bIDTSObjectModel100WW|2ComponentMetaDataCollectionW,8!ppIDTSComponentMetaDataCollectionWWW|?/pbstrBLOBTempStoragePath=̭BufferTempStoragePathWWW8pbstrBufferTempStoragePathWWFYRunInOptimizedModeWWC#pbRunInOptimizedModeE k}EngineThreadsWWWP=_lEngineThreadsWWx>:GetNextPasteIDWWEplNextID DJ8]MainPipep@@8[CManagedComponentWrapperDTSPipeline 1.0 Type LibraryWWIDTSBLOBObject100 InterfaceWWWLength of the BLOBBLOB Spooling ThresholdWWWHempties BLOB data in this object, obliterating any data previously thereWW Add data to the end of this BLOBWWRetreives data from this BLOBWPuts data into this BLOBWW"get a stream over this BLOB object"set this BLOB object from a streamIDTSObject100 InterfaceWWW Object's IDWWWObject's DescriptionWObject's DescriptionWW Object's NameW Object's TypeWObject's Identification StringIDTSCustomProperty100 InterfaceWWWCustom property's valueWWWCustom property's stateWWW#Custom property requires encryptionWWW+The type convertor for this custom propertyWWW(The type editor for this custom propertyWW+This custom property contains and object IDWWW!Custom property's expression typeW)IDTSCustomPropertyCollection100 InterfaceWGet an item from the collectionWWW#Allow enumeration of the collectionWWW!Number of items in the collectionWAdd a new item to the collecionWWW7Add a new item to the collection at a specific positionWWW9Remove an item from the collection at a specific positionW5Remove an item from the collection with a specific IDWEmpty the collectionWW+Change an item's position in the collectionWWWGet an item by its IDW(Get an item's position in the collectionWWFind an item by its ID)Find an item's position in the collectionWIDTSInputColumn100 InterfaceWWColumn's Data TypeColumn's LengthWWWColumn's PrecisionColumn's Scale%How the column is used by a componentWColumn's custom propertiesColumn's LineageIDMapped column IDWWColumn's Code PageIs the column validWWWColumn's sort orderWWW2Column's comparison information for string columnsParent component's nameWWW$How to handle errors for this columnWW)How to handle truncations for this columnW,Text about the error or truncation operationWW(Associated external metadata column's IDWW2Description of the error code for a redirected row&IDTSInputColumnCollection100 Interface*Get an item from the collection by lineage'Get an item from the collection by nameWWWIDTSOutputColumn100 InterfaceW"Special information about a column6Set the properties associated with a column's datatype'IDTSOutputColumnCollection100 InterfaceWWW#IDTSVirtualInputColumn100 InterfaceWWWComponent this column came fromWWWColumn's new nameWColumn's new descriptionWW-IDTSVirtualInputColumnCollection100 InterfaceWIDTSVirtualInput100 InterfaceWGet the columns collectionSet a column's usageWWIs the virtual input sortedWWWThe source's localeWWWIDTSInput100 Interface Does the input have side effectsWWInput's bufferInput's custom propertiesW0Get the virtual input associated with this inputWWInput's columnsWWWIs this a dangling inputWWIs the input attachedWIs the input sortedWWW1IDTSExternalMetadataColumnCollection100 InterfaceW'IDTSExternalMetadataColumn100 InterfaceWWWIs external metadata usedWExternal metadata columnsW"IDTSComponentMetaData100 InterfaceComponent's ClassIDWWW IDTSInputCollection100 InterfaceWWComponent's inputs!IDTSOutputCollection100 InterfaceWIDTSOutput100 InterfaceWWWOutput's exclusion groupWWOutput's synchronous inputOutput's BufferWWWOutput's custom properties*Delete the output when its path is deletedOutput's columnsWW!Does the output have side effectsWIs this an error outputWWWIs the ouput attached to a pathWWWIs the output sortedWWParent componentWWIs this a dangling outputWComponent's outputsWWW$IDTSDesigntimeComponent100 InterfaceWW%Provide a component with its metadataW#Reinitialize a component's metadataWWW,Add an output column at a specified positionWW+Delete an output column with a specified IDWWW'Handle the deletion of an output columnWWWSet how an column is usedW,Set a custom property's value on a componentWW)Set a custom property's value on an inputW*Set a custom property's value on an output0Set a custom property's value on an input columnWW1Set a custom property's value on an output columnW Add an inputWW Add an outputWDelete an inputWWWDelete an outputWW#Handle an input path being detachedWWW#Handle an input path being attachedWWW$Handle an output path being attachedWWValidate the component#Acquire connections for a componentWWW#Release connections for a componentWWW0Set the properties associated with the data typeWW2Map an input column to an external metadata column3Map an output column to an external metadata columnWWW'IDTSFriendlyEnumCollection100 InterfaceWWWIDTSFriendlyEnum100 InterfaceWThe enumeration's nameThe enumeration's valueWWW8Is the enumeration a set of flags that are ORed togetherWWBGet friendly enumeration name for an enumeration on this component7Add an external metadata column at a specified positionWWW7Delete an external metdadata column with a specified IDWWW<Set a custom property's value on an external metadata columnWW.Instantiate the component for designtime usageComponent's custom propertiesWGenerate a log message,IDTSRuntimeConnectionCollection100 InterfaceWW"IDTSRuntimeConnection100 Interface$Connection's connection manager's IDWWConnection's connection managerWWW+Release the connection's connection managerWWWComponent's runtime connectionsWWW-Remove invalid input columns on the componentWBGet the error description for an error returned from the componentAre input columns validWWWComponent's localeIDTSComponentView100 Interface#Commit the changes to the componentWWW#Cancel the changes to the componentWWW2Get the component viewer for editing the component<Increment the specied performance counter for this componentWWIs the locale the defaultW;Does the component use error and/or truncation dispositionsWWWIs the external metadata validFire a warningFire an informational eventWWW Fire an errorWFire a custom eventWWWComponent's versionWWWComponent's pipeline versionWWComponent's contact informationWWWFire progress informationWInput's buffer baseWWW!IDTSRuntimeComponent100 InterfaceWPrepare for executionWPre-execution initializationWWIDTSBuffer100 InterfaceWWW9Push a row in a virtual buffer towards a specific output.WCMove a row from one index to another, adjusting all rows inbetween.WWWSwap the rows at two indexesWW)Retrieve the type of this buffer instanceW$Locks a buffer in memory for access.WW(Unlock a buffer after access is completeWW0Find the number of rows currently in this bufferWW)Find the number of columns in this bufferWAGets metadata information for the specified column in this bufferW^Finds the number of columns in this buffer and the maximum number of rows this buffer can hold!Adds a row at the end of a bufferW&Removes a row from the end of a bufferGets the ID of a bufferWWWIDTSBufferManager100 Interface&Register type information for a buffer(Relates lineage IDs to columns in a typeWWCAdjust a buffer type to accept virtual rows for a particular outputWWWCreates a buffer of flat memoryWWW*Creates a structure buffer of a given type3Find a column in a buffer type given its lineage IDWWW4Get information describing the data type of a columnWW5Get the number of columns in a particular buffer typeWEGet the width of rows (in bytes) for data in a particular buffer typeWGet a new BLOB objectWWhether the buffer is virtualWARetrieves the buffer manager which is responsible for this bufferW%Retreive data from a cell this bufferW5Retreive a reference to data in a cell in this bufferWSet data into this bufferW Find the length of a BLOB columnWW,Add data to the end of a BLOB in this bufferWW.Retreives data from a BLOB cell in this buffer+Retreives a stream over data in a BLOB cellWWW&Sets data in a BLOB cell from a streamUSets BLOB data at a particular column to NULL, obliterating any data previously thereW!get an IDTSBLOBObject into a cellW+put data from a cell into an IDTSBLOBObjectWWW7Tests data at a cell in the buffer to see if it is NULLWWW'Sets the status of a cell in the bufferWWW*Returns the status of a cell in the buffer'Resets all non-NULL status values to OKWWW6Indicate that the rowset driving this buffer has ended,Tests the end of rowset state of this bufferWWClone this bufferWEReturns a pointer to the raw bytes in a particualr row of this bufferW;Return pointers to the raw bytes in all rows of this bufferWWWNDirects a row to the specified error output, setting the error code and columnCDirects a row to an error output, setting the error code and columnWWW2Gets a pointer to the memory held by a flat bufferPrime the component's outputWW2Input buffers sent to the component for processingPost execution cleanupFinal cleanup after executionWSet the component's metadataWWSet the component's variablesW"Set the component's buffer managerSet the component's eventinfos%Set the component's reference trackerW#Ask the component to upgrade itselfWWW!Set the component's logentryinfosW*Get the component's required product level(IDTSManagedComponentWrapper100 InterfaceWW%IDTSManagedComponentHost100 InterfaceW!IDTSManagedComponent100 InterfaceW,IDTSComponentMetaDataCollection100 InterfaceWWIDTSPathCollection100 InterfaceWWWIDTSPath100 InterfaceWThe output the path starts atWThe input the path ends at+Hook up a path and notify about the hook upWWWIs this path being visualizedWIDTSBufferManagerInitialize100IDTSObjectModel100 InterfaceWW!Add an object to the object modelW"The components in the object modelThe paths in the object modelW!Get an object with a specified IDW2Auto generate object IDs when an object is createdDTSBufferManager Class%IDTSPersistenceComponent100 InterfaceWLoad the object model from XMLSave the object model to XMLWW"Provide properties for persistenceIDTSPipeline100 InterfaceWPersistence propertiesThe buffer manager The default max rows in a bufferWW&The events interface to fire events on=The variable dispenser to get variables from during executionWThe default size of a bufferWW%Temporary storage locations for BLOBsW'Temporary storage locations for buffersWWWRun in optimized modeW Number of thread the engine usesWW/Get the next ID available for a paste operationWWWMainPipe Class&DTS Pipeline Managed Component Wrapper@,@@@ 08H@@` @ @x @ x@ @ %@L@@l1@ =48@I@P`h` x  U@aT  (   08HP `h x X@m yH  `(0@HtX`<px  `h0 \ (8H`p@ !@ -9EQ(8@PPX@hp| ]WW library_blockW4@8444444444 4  4  4  4  4 @@@@@@@@@ @ @ @ @ @|@d @(<Pdxd$$,,  $@@@@@(<PP4444@@@@\t(<(44@@@4444444 4@4 4 4 4 4 44 4@@@@@@@@@@ @ @ @ @ @@@,Hd4Pl(<Pdx,(44@@$4@d(44@@<444@@@ (<444@@@@Xt(P4444@@@@(<(44@@Ld,LD@ , D!T,$LDT (4 p8,\  ( < P0 d  x < ( P4 d  x < ( ,8T D@ ,<L @P effghijkl P ,X,|`,LDd , D!,$LDX ,(D!,,LDX ,0D!,4LDh ,8LDX T T t t ,X4h,<LD$p| ,@D!$ ,DLD@ ,HD!@x,LLD\ ,PD!\ ,TLDX ,XD!,\LD XT , `D!, dLD  , hD!  , lLD  , pD! eeffgghhiijjkkh h < < t t ,X4`<8dD`  , , LD` ,$LD ,(T D, 8,d D , ,0D 0  ,4D l 84 8<T Tl8 @d D , 8 D\ D  8 Hd D 0, 8 L\ D H  L | (@8d LlLX,<LDD ,@LD ,DLDt ,HLD ,LLD ,PD!,TTD ,XLD$L ,\D!$, `LD 8 , dD! 8, hLD L , lLD ` , pLD x ,tLDL ,xLDX ,|LD ,D!,LD ,D!,LD4X@ ,D!4,LDd| ,D!d8\ DX efghiikllmmsz{|}0\44dd0lXX,X4`<hDp 8dD`  $ , LD` ,$LD ,(T D$ 8,d D $ ,0D 0  ,4D l 84 8<T Tl8 @d D $ 8 D\ D  8 Hd D 0$ 8 L\ D H 8 Pd D l$ DTt D$ ef L | (@D8d LlL|,<LD(D ,@LD ,DLDt ,HLD ,LTD ,PLD$L ,TD!$,XLD8 ,\D!8, `LD L , dLD x , hD! x, lLD L , pD! ,tLDd ,xD!d\| 0Ph|,LD ,D!,LD ,D!,LD4X@ ,D!4,LDd| ,D!defghjkkllmnnoopprssttuuvv0\44dd00,XX,X4`<hHt$P8dD`  H , LD` ,$LD ,(T DH 8,d D H ,0D 0  ,4D l 84 8<T Tl8 @d D H 8 D\ D  8 Hd D 0H 8 L\ D H 8 Pd D lH e L | (@ 8d LlL,<LDXD ,@LD ,DLDt ,HLD ,LLD ,PLD$L ,TLD Xx ,XLD8 X ,\D!8 , `LD L X , dD! L , hLD L , lLD x , pLD L ,tLDX 8x\ DX efghiloqqrrsz{|0\4\0l,X4`<h$8dD`  p0 , LD` ,$LD 8(T Tl8,d Dp0 80\ D 84d D0p0 88\ DH 8<d Dlp0 D @t D p0 ef L | @T8d8p,<TD  D@l D l8P ,DLD  ,HLD  ehjk t,pp,<LD<  ,@D!< ,DLD` T ,HTDp  ,LT D  ,PTD  ,TLD  ,XD! ,\LD 8 , `LD   , dLD   , hLD  , lD! , pLD ,tD! ,xLD4X@ ,|D!4,TD , ,TD p ,LDT eeghijkknopqqrrsstuv@l t+,X4`<hD8dD`   , LD` ,$LD ,(T D 8,d D  ,0D 0  ,4D l 84 8<T Tl8 @d D  8 D\ D  8 Hd D 0 8 L\ D H , PLD  ,TD!   ee L | (@8d LlL<,<LDD ,@D!,DLD ,HD!,LLDt ,PD!,TLD ,XD!,\LD L , `D!L, dLD 8 , hD! 8, lTD  eeffgghhiijjk00\\dd,X4`,<LD X ,@D! ,DTD @ ,HTD 0 ,LT Dh($ ,PTD tT l$$$$$$  %,XTDhp& \4 8 `\ D &X , dLD 8' , hLD TT' , lD! T, pT D ' ,tL D 8xT  (0(,|LDLd( ,LDh( ,D!h ,LD( ,D! \  )$)t <)P)h )$)t <)P))h )$)t <)P))\ *0*H*$)),LD x* ,D! ,LD8x* ,D!8,LDXX* ,D!Xh |*+8+X+x+)eefghinrstuvvwx{|}}~~$P$H&&&&@'@'' 'H(|(|((((h)))d*d******,X|,X@lLx(T8dD`  ( , LD` ,$LD ,(T D( 8,d D ( ,0D 0  ,4D l 84 8<T Tl8 @d D ( 8 D\ D  8 Hd D 0( 8 L\ D H  L | (@8d LlL8dD`   , LD` ,$LD ,(T D 8,d D  ,0D 0  ,4D l 84 8<T Tl8 @d D  8 D\ D  8 Hd D 0 8 L\ D H  L | (@8d LlLx,<LDl  ,@D!l ,DLD  ,HD! ,LLD T ,PTD  ,TLD  ,XD! ,\TD Xh , `LD   , dD!  , hLD 8  , lD! 8 , pLD T 8 ,tLDx  ,xD!x ,|LD ,D!,LD ,D!,LD4X@ ,D!4,TD , ,TD p ,LD  ,D! eeffghiijkkllnoossttuuvwxx||@D tt,X4`<hDp L 4   4 (\$ DPH 8(T X8,T \0 Dl8$ D4t D  $, P8 D(  $, P< DT  $, \ @ D   $, \ D D X  $, D Ht D ( D Lt D  , PD  ,TD ,XD 0,\D X,`D ,dL D ,hD   l4 tp XPh|Pt DDp! \x DxXp! ! 8|\ DX 8d Dl"" \ D(# 8T p!\ D(p!# #, t p!Ph|  !"#$%&'(|8t 8Tt 8 X x !$!T!!""P#x## @ hLH<hT8p`8dD`  L" , LD` ,$LD ,(LD0" e L | l"8dX,LDX" , LD4" e h ,8dD`  P$& , LD` ,$LD ,(T DP$& 8,d D P$& ,0D 0  ,4D l 84 8<T Tl8 @d D P$& 8 D\ D  8 Hd D 0P$& 8 L\ D H  L | (@8d LlL,<LD$X% ,@D!$,DTDL8% ,HL!L0 L4 peeffgx%x%%%&,X@ 4   4 ef'' \ 4   4 D$| !5558(\ !5 ,4 " 04 0",4L!P"h,8L!p"h,<L!"(, @L! "x, DL! ", HD  "6, LL! $#, PLD H#07 ++h5566,6L6l666667 @(T0l8 T (P,8T dt,,8T ,,,L DT 4   4  ,$L DL((- ,(L D(\- 8,\ <.L.8 0d  (x.(.8 4l D P.. , 8D  tP,, <L D (/ , @T D 01 DDl D0P,<.@1 DHl DXP,<.P1 DLd P,<.X1DPl P,<.(D2PT| P,<. ( < hX P,<.d  x < ( D\t D0P,<.@ D`l `P,<.P 8dT P,<.Dhl P,<.3Dlt DP,<.3 Dpl 4P,<.L3Dtd pP,<.x3Dxl P,<.(3,|D P, 4 ,L D, 4 8l D\ h0D4 D |  p P,x418!d ! 44P"t " P,45P#t #H!P,45,$T D$!T5 jkli,/16789:;<=@JKLOPT^_8,`,,,,,-@- .\.../1P 12(2X2p22222T183`3333404\444 5858p@l@l d` d0t$h@$$$$ $$$$@@@@@@@@0---.|(<Pdx\ Dx////T D l /x/08$T ,@0D(| Dtx0h00 D,| D/h00 D0l D/01 D4l /<.L.88\ D4/(\- 8<\ Dl/81 , @T  p18 D\D /1 eglpmyz{}X// 0\000 .@- 1T11\` XH x7P,<. 7T x7P,<. 77` Dx7P,<.d 7 7 4 4 T DH 0$T X0(T T, Dl8$ < 0t D   $, H 4 D   $, H 8 D   $, T < D   $, T @ D X  $, <Dt D( <Ht D $LD $PD $TD $XD $\D $`L D $dD  h4 ll XPh|Hp Dp! Tt DXp! ! 0x\ DX T| D(# 0T p!T Dp!# #, l p!Ph|````````` ` ` ` ` ```````````````````X27p278,8T8|8888949`99999 :4:\:::::$;H;l;;;<4<H,4pT Dh4<lD x <h<h<(=x =8=P=07$L =$L =T =5== >H =D>\>$ L =$$L =0(\ =6$,L =$ 0L  =` 4 D =H < 8l  =X< <l  =` @ D =l8$ HD D=  $, TH D=  $, TL D=  $, `P D=  $, `T D=X  $, HX D=( H\ D= 0`\ =0d\ =0h\ =0l\ =0p\ =0td D= 0x\ = $|L =x =XPh|T D=p! ` D=Xp! ! < t D =X `! D!=(# <"l "=p!`# D#=p!# #, x$ $=p!Ph|$%L!%h$&L!&h$'L!'($(L!(x$)L!)$*L!*````````` ` ` ` ` ``````````````````` `!`"`#`$`%`&`'`(`)`*`$l===(>x>>>>?$?H?l?????@@@h@@@@@@ ADA\AAAAABDBtBBBC4CXCxCCCx\|TDL$T4p l  , P t $$ LDD `C8dD`  p , LD` ,$LD ,(T Dp 8,d D p ,0D 0  ,4D l 84 8<T Tl8 @d D p 8 D\ D  8 Hd D 0p 8 L\ D H  L | (@8d LlL8dD`