Upload
eduardo-ponzoni
View
223
Download
0
Embed Size (px)
Citation preview
8/20/2019 BizTalk End-To-End Performance Testing Guidance
1/44
Microsoft BizTalk
ServerEnd-to-End
Performance Testing GuidanceEwan Fairweather & Paolo SalvatoriBizTalk ustomer !dvisor" TeamMicrosoft
8/20/2019 BizTalk End-To-End Performance Testing Guidance
2/44
Session #$%ectives• escri$e how we run BizTalk
'erformance assessments• emonstrate tools and techni(ues
that can $e used during a BizTalk'erformance assessment• )ntroduce the BizTalk Server
Performance #'timization Guide
8/20/2019 BizTalk End-To-End Performance Testing Guidance
3/44
Session !genda• !ssessing a''lication 'erformance• *e" learnings• BizTalk Server 'erformance
assessment+ Methodolog"+ Tools
8/20/2019 BizTalk End-To-End Performance Testing Guidance
4/44
Tuning the Microsoft
Platform
8/20/2019 BizTalk End-To-End Performance Testing Guidance
5/44
,sing ogParser To
Generate *P)s For .our /esults
E0am'le results s'readsheetfroma recent 'erformance la$
Demo
8/20/2019 BizTalk End-To-End Performance Testing Guidance
6/44
Session !genda
+ !ssessing a''lication 'erformance+ *e" learnings• BizTalk Server 'erformance
assessment+ Methodolog"+ Tools
8/20/2019 BizTalk End-To-End Performance Testing Guidance
7/44
*e" earningsPlatform Tuning
• Turn o1 h"'erthreading• !d%ust 2indows Server 3445 for $est
'erformance• ,se a se'arate disk for P!GEF) E• Sto' unnecessar" services 6for
instance7 Print S'ooler8• efrag volumes hosting BizTalk d$s
8/20/2019 BizTalk End-To-End Performance Testing Guidance
8/44
*e" earningsPlatform Tuning• isa$le the S"n!ttackProtect feature• Prevent antivirus scanning• 9etworking
+ !d%ust T P:)P 'arameters in the registr"+ ,se ;-giga$it networks+ Se'arate su$nets for Mgmt7 ata7 and
Messaging+ Tune 9) s for 'erformance+ Memor" for 'acket $u1ering+ #
8/20/2019 BizTalk End-To-End Performance Testing Guidance
9/44
*e" earningsPlatform Tuning = / >osting Threads
• To 'revent thread starvation7 BizTalk needsenough threads allocated to the ?9ETthread 'ool
•
ontrolled $" 'er host reg ke"
>*E.@ # ! @M! >)9EAS.STEMA urrent ontrolSetAServicesABTSSvc hostnameA / >osting
DWORD entry Default Value RecommendedValueMa0)#Threads 34 ;44
Ma02orkerThreads 3C ;44
Min)#Threads ; 3C
Min2orkerThreads ; 3C
1 2
3 4
8/20/2019 BizTalk End-To-End Performance Testing Guidance
10/44
*e" earningsBizTalk >ost onDguration• S'lit u' the sending7 receiving7 'rocessing7
and tracking into multi'le hosts• This techni(ue allows each host to
+ >ave its own set of resources such as memor"7handles7 ?9ET thread 'ool
+ ecreases the contention on the MessageBo0>ost ueue ta$les
• !void running too man" host instances onthe same $o0
8/20/2019 BizTalk End-To-End Performance Testing Guidance
11/44
*e" earningsS Performance•
)solate BizTalk data and transaction log Dles• Pre-allocate s'ace to 'revent autogrowth at
run time• reate multi'le data Dles of the same size7
one for each availa$le core on the Smachine7 for the Tem' $
• !dd Dlegrou's and Dles to theBizTalkMsgBo0 $
• Scale u' the S Server resources+ P,7 disk7 memor"
• Se'arate BizTalk ata$ases across servers•
Multi'le MessageBo0 data$ases•
8/20/2019 BizTalk End-To-End Performance Testing Guidance
12/44
*e" earningsow atenc"
• )nternal message (ueue• Ma0/eceive)nterval 'arameter
+ C44 ms default• BatchSize 'arameter• Turn o1 glo$al tracking• ,se inline sends
1
23
8/20/2019 BizTalk End-To-End Performance Testing Guidance
13/44
*e" earnings#rchestrations 6; of 38• Eliminate unnecessar" 'ersistence 'oints• Minimize the internal state:size• ,se the all #rchestration sha'e for 'erformance• !s"nchronous mechanisms give e0i$ilit" $ut
re(uire a MessageBo0 round tri'+ irect Bound Ports7 Self- orrelating Ports and Start#rchestration sha'e
• Eliminate logical 'orts and use inline sends• Prefer distinguished Deld over 'romoted 'ro'erties• Turn o1 unnecessar" tracking
+ Message send and receive tracking+ Begin and end tracking sha'e
• eDne a 'erformance counter for each orchestration
t"'e
8/20/2019 BizTalk End-To-End Performance Testing Guidance
14/44
*e" earnings#rchestrations 63 of 38• !void using Hml ocument for 'rocessing large
messages+ The memor" amount re(uired to load an
HM ocument is u' to ;4 times the actual size of the
message• )nstead use one the following techni(ues// Use an XmlReader object to read the content of the message partusing (XmlReader reader =(XmlReader)xlangMessage[0 !Retrie"e#s(t$peof(XmlReader)))%
!!!&// Retrie"e the content of the message part as a string
using (string message =(XmlReader)xlangMessage[0 !Retrie"e#s(t$peof(string)))%
!!!&// 'eseriali e the content of the message part to an instance of a custom ! *+ classusing (Re,uest-lass re,uest =(XmlReader)xlangMessage[0 !Retrie"e#s(t$peof(Re,uest-lass)))%
!!!&
1
2
3
8/20/2019 BizTalk End-To-End Performance Testing Guidance
15/44
*e" earningsPi'elines 6; of 38• ,se PassThru/eceive and PassThruTransmit
'i'elines whenever 'ossi$le• !void loading the entire document into
memor" using an Hml ocument o$%ect
+ ,se a streaming a''roach instead• )f "ou need to read the value of s'eciDc nodes
inside an HM message 'art7 do not use theSelectSingle9ode method e0'osed $" theHml ocument class+ ,se an instance of the HPath/eader class contained
in the Microsoft?BizTalk?HPath/eader?dll assem$l"+ ,se an instance of HPathMutatorStream class
contained in the Microsoft?BizTalk?Streaming?dll if "ouneed to read and eventuall" change the value of one
8/20/2019 BizTalk End-To-End Performance Testing Guidance
16/44
*e" earningsPi'elines 63 of 38• ,se an instance of the IirtualStream class6Microsoft?BizTalk?Streaming?dll8 when reading a
large message• Promote items to the message conte0t onl" if "ou
need them for+ Message /outing 6#rchestrations7 Send Ports8+ emotion of message conte0t 'ro'erties 6Send Ports8
• J2riteK to the conte0t instead of JPromoteK• ,se the )Pi'eline onte0t?/esourceTracker to track
and dis'ose non- / resources• )nstrument "our source code to make "our
com'onents sim'le to de$ug• !void ordered deliver" and transaction su''ort
8/20/2019 BizTalk End-To-End Performance Testing Guidance
17/44
#'timizing BizTalkMemor" ,sage
Streaming techni(ues that can $eused in 'i'elines
Demo
8/20/2019 BizTalk End-To-End Performance Testing Guidance
18/44
2 F !da'ters• 2henever 'ossi$le7 use one of the following 2 F-L !da'ters?
+ 2 F-9etTc' !da'ter+ 2 F- ustom !da'ter ustomBinding with the
$inar"MessageEncoder and tc'Trans'ort Binding Elements?
• !dd the serviceThrottling service $ehavior to a 2 F- ustom/eceive ocation and use the following settings
Parameter efault Suggested tc'Trans'ort-N onnectionPoolSettings-Nma0#ut$ound onnectionsPerEnd'oint ; tr" changing to 34
tc'Trans'ort-Nma0Pending!cce'ts ; tr" changing to 34 tc'Trans'ort-Nma0Pending onnections ;4 tr" changing to 34 tc'Trans'ort-NlistenBacklog ;4 tr" changing to 34
Send Side 6BizTalk Send Port8
/eceive Side 6BizTalk /eceive ocation8
Parameter efault Suggested tc'Trans'ort-Nma0Pending!cce'ts ; tr" changing to 34 tc'Trans'ort-Nma0Pending onnections ;4 tr" changing to 344 tc'Trans'ort-NlistenBacklog ;4 tr" changing to 34
Parameter efault Suggested serviceThrottling-Nma0 oncurrent alls ;O tr" changing to 34 serviceThrottling-Nma0 oncurrentSessions ;4 tr" changing to 34 serviceThrottling-Nma0 oncurrent)nstances - leave the default
8/20/2019 BizTalk End-To-End Performance Testing Guidance
19/44
2 F !da'ter
#'timizing 2 F for 'erformanceDemo
8/20/2019 BizTalk End-To-End Performance Testing Guidance
20/44
Session !genda
+ !ssessing a''lication 'erformance+ *e" learnings• BizTalk Server 'erformance
assessment+ Methodolog"+ Tools
8/20/2019 BizTalk End-To-End Performance Testing Guidance
21/44
BizTalk Server
Performance#'timization Guide
MS 9htt' ::msdn?microsoft?com:en-us:li$rar":ccCC O;Q?as'0
Announcing
http://msdn.microsoft.com/en-us/library/cc558617.aspxhttp://msdn.microsoft.com/en-us/library/cc558617.aspxhttp://msdn.microsoft.com/en-us/library/cc558617.aspxhttp://msdn.microsoft.com/en-us/library/cc558617.aspx
8/20/2019 BizTalk End-To-End Performance Testing Guidance
22/44
!ssessing !''licationPerformance• The usual stor"
+ 2e all know testing is im'ortant for ever"solution
+ Testing is neglected• This is a 'ro$lem
+ Solutions using BizTalk tend to $e$usiness critical and tolerate littledowntime
+ Poor testing increases the risk 'roDle of"our 'ro%ect
+ This runs the risk of huge technical and
8/20/2019 BizTalk End-To-End Performance Testing Guidance
23/44
Minimize Pro%ect /isk• ,nit testing• Functional testing• )ntegration testing• ,ser acce'tance testing• isaster recover" testing:dr" runs• #verload testing•
Performance assessment
E ectivetesting
reduces yourproject ris
8/20/2019 BizTalk End-To-End Performance Testing Guidance
24/44
Session !genda
+ !ssessing a''lication 'erformance+ *e" learnings• BizTalk Server 'erformance
assessment+ Methodolog"+ Tools
8/20/2019 BizTalk End-To-End Performance Testing Guidance
25/44
BizTalk Performance!ssessment• !n end to end 'rocess with a set of
goalsand o$%ectives
•
#ccurs over a set 'eriod of time• )t re(uires a team of individuals withtheright skill sets to Jtune the stackK
• )terative knowledge transfer 'rocessOptimi!eOperateDesign " Deliver
#O$#erformance%ssessment #re&'ive
#erformance%ssessment
#ost&'ive#erformance%ssessment
8/20/2019 BizTalk End-To-End Performance Testing Guidance
26/44
8/20/2019 BizTalk End-To-End Performance Testing Guidance
27/44
Sco'eEngagement Summar"• etermine resource re(uirements
+ 2hat scenarios are "ou testing+ 2hat technologies are involved+ 2hat ada'ters are needed+ S!9 re(uirements+ 53 $it vs? OR $it
• #ther re(uirements+ Through'ut+ atenc"
• ocument all information+ Guidelines7 Goals7 onstraints7 etc?
•
Sta1 the right 'eo'le
8/20/2019 BizTalk End-To-End Performance Testing Guidance
28/44
Sco'eeDning Goals
• Provide o$%ectives and success criteria forthe la$• Goals should cover
+ Performance metrics+ Through'ut7 atenc"
• /oles and /es'onsi$ilities• elivera$les• eDne an" constraints
+ )s hardware D0ed+ Scale u':out BizTalk:S+ an third 'art" s"stems $e scaled out
+ 2e$ servers7 M Series7 ustom BUs
8/20/2019 BizTalk End-To-End Performance Testing Guidance
29/44
Sco'eeDning Goals 6E0am'le8
#$%ectiveMeasure the Ma0imum Sustaina$le Through'ut 6MST8 for thegiven use cases with di1erent hardware conDgurations?
Test ase ;
Messaging-#nl" scenario Through'ut C4 messages:sec sustaina$le
atenc" res'onse time V 3 sec for W4X of messages
Test ase 3Pa"ment service BizTalk orchestration
Through'ut 5?O million messages withinan hour 'eriod 6;3C messages:second8
atenc" 9:!
8/20/2019 BizTalk End-To-End Performance Testing Guidance
30/44
Sco'eogical and Ph"sical !rchitecture
1
23
4
8/20/2019 BizTalk End-To-End Performance Testing Guidance
31/44
Planetermining /esource /e(uirements
Timeline+ 3 weeks of 're'aration time+ ; week 'er test case+ ; week to document Dndings
SMEs re(uired+ M Series7 S Server7
))S7 S!9 S'ecialist
>ardware re(uest+ S!9 Storage 6>B!7 uns87 9etworking7 lustering
a$ s'ace+ !''ro'riate s'ace7 white$oard7 'ro%ector7 securit" of
room
8/20/2019 BizTalk End-To-End Performance Testing Guidance
32/44
PlanSam'le Timeline
1 2 3 4
(
)
8/20/2019 BizTalk End-To-End Performance Testing Guidance
33/44
Pre'are• etailed Solution esign• ode com'lete• )nvest in test assets
+ Build: e'lo"+ MSB,) 7 MS)7BTSTask7 Scri'ts
+ Functional test+ Biz,nit7 Iisual Studio
+ oad test+ oadgen7 Iisual Studio
8/20/2019 BizTalk End-To-End Performance Testing Guidance
34/44
Building The a$
Environment)nstallation and onDguration• )nfrastructure
+ /!) ;4:4 ;+ ata$ases and logs se'arated+ ata$ase autogrowth+ Iirus scanning software
• Third 'art" s"stems+ 9on-default values7 scale-out o'tions
•
BizTalk+ >ost conDguration+ Message tracking+ !da'ter conDguration
8/20/2019 BizTalk End-To-End Performance Testing Guidance
35/44
Building The a$
Environment• Performance monitoring• e'lo"ment
+ MSBuild7 BTSTask7 MS)• Functional testing• Ialidate automated load test• ocument Solution
Performance Baseline
+ atenc"+ Through'ut+ S'ool de'th+ etc
8/20/2019 BizTalk End-To-End Performance Testing Guidance
36/44
E0ecuting the Performance
a$ !ssessment >igh evel Flow• /un automated test
+ Biz,nit7 ISTS7 oadGen• ocument results
+ *P)s7 heck after ever" run• Tuning for 'erformance
+ #ne modiDcation at a time
+ Perform 'latformmodiDcations
8/20/2019 BizTalk End-To-End Performance Testing Guidance
37/44
Session !genda
+ !ssessing a''lication 'erformance+ *e" learnings• BizTalk Server 'erformance
assessment+ Methodolog"+ Tools
8/20/2019 BizTalk End-To-End Performance Testing Guidance
38/44
>el'ful Tools• BizTalk BP! ;?3• PerfMon• BizTalk oadGen•
Biz,nit• og Man• /elog• og Parser• P!• S )# • BizTalk #rchestration ProDler
http://www.microsoft.com/downloads/details.aspx?FamilyID=93d432fe-1370-4b6d-aaa8-a0c43c30f5ab&displaylang=enhttp://technet.microsoft.com/en-us/library/bb490957.aspxhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c8af583f-7044-48db-b7b9-969072df1689&DisplayLang=enhttp://www.codeplex.com/bizunithttp://technet.microsoft.com/en-us/library/bb490956.aspxhttp://msdn.microsoft.com/en-us/library/dd722819.aspxhttp://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&displaylang=enhttp://www.codeplex.com/PALhttp://www.microsoft.com/Downloads/details.aspx?familyid=9A8B005B-84E4-4F24-8D65-CB53442D9E19&displaylang=enhttp://www.codeplex.com/BiztalkOrcProfilerhttp://www.codeplex.com/BiztalkOrcProfilerhttp://www.microsoft.com/Downloads/details.aspx?familyid=9A8B005B-84E4-4F24-8D65-CB53442D9E19&displaylang=enhttp://www.codeplex.com/PALhttp://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&displaylang=enhttp://msdn.microsoft.com/en-us/library/dd722819.aspxhttp://technet.microsoft.com/en-us/library/bb490956.aspxhttp://www.codeplex.com/bizunithttp://www.microsoft.com/downloads/details.aspx?FamilyID=c8af583f-7044-48db-b7b9-969072df1689&DisplayLang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c8af583f-7044-48db-b7b9-969072df1689&DisplayLang=enhttp://technet.microsoft.com/en-us/library/bb490957.aspxhttp://www.microsoft.com/downloads/details.aspx?FamilyID=93d432fe-1370-4b6d-aaa8-a0c43c30f5ab&displaylang=en
8/20/2019 BizTalk End-To-End Performance Testing Guidance
39/44
/elated ontent•
MS 9 Guidance+ Microsoft BizTalk Server Performance #'timization Guidehtt' ::msdn?microsoft?com:en-us:li$rar":ccCC O;Q?as'0
+ Microsoft BizTalk Server #'erations Guidehtt' ::msdn?microsoft?com:en-us:li$rar":cc3WOOR5?as'0
+ BizTalk Server 344O /3 >"'er-I Guidehtt' ::msdn?microsoft?com:en-us:li$rar":ccQO C; ?as'0
• BizTalk ustomer !dvisor" Team Site+ htt' ::msdn?microsoft?com:en-us:$iztalk:dd QOQC ?as'0
http://msdn.microsoft.com/en-us/library/cc558617.aspxhttp://msdn.microsoft.com/en-us/library/cc296643.aspxhttp://msdn.microsoft.com/en-us/library/cc768518.aspxhttp://msdn.microsoft.com/en-us/biztalk/dd876758.aspxhttp://msdn.microsoft.com/en-us/biztalk/dd876758.aspxhttp://msdn.microsoft.com/en-us/library/cc768518.aspxhttp://msdn.microsoft.com/en-us/library/cc296643.aspxhttp://msdn.microsoft.com/en-us/library/cc558617.aspx
8/20/2019 BizTalk End-To-End Performance Testing Guidance
40/44
/esources•
BizTalk Server 344O Managing a Successful Performance a$+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaWQ334;?as'0• Scaling .our Solutions
+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaCO;COQ?as'0• onDguration Parameters that !1ect !da'ter Performance
+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaCO;5 4?as'0• Persistence and the #rchestration Engine
+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaCRQ4W4?as'0• Trou$leshooting MessageBo0 atenc" )ssues
+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaCO;Q4W?as'0•
Performance Ti's and Tricks+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaCO4OWR?as'0• /ule Engine onDguration and Tuning Parameters
+ htt' ::technet?microsoft?com:en-us:li$rar":aaCR 44 ?as'0• Performance onsiderations 2hen ,sing the /ule Engine
+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaWC3W3W?as'0
http://msdn2.microsoft.com/en-us/library/aa972201.aspxhttp://msdn2.microsoft.com/en-us/library/aa561567.aspxhttp://msdn2.microsoft.com/en-us/library/aa561380.aspxhttp://msdn2.microsoft.com/en-us/library/aa547090.aspxhttp://msdn2.microsoft.com/en-us/library/aa561709.aspxhttp://msdn2.microsoft.com/en-us/library/aa560694.aspxhttp://technet.microsoft.com/en-us/library/aa548008.aspxhttp://msdn2.microsoft.com/en-us/library/aa952929.aspxhttp://msdn2.microsoft.com/en-us/library/aa952929.aspxhttp://technet.microsoft.com/en-us/library/aa548008.aspxhttp://msdn2.microsoft.com/en-us/library/aa560694.aspxhttp://msdn2.microsoft.com/en-us/library/aa561709.aspxhttp://msdn2.microsoft.com/en-us/library/aa547090.aspxhttp://msdn2.microsoft.com/en-us/library/aa561380.aspxhttp://msdn2.microsoft.com/en-us/library/aa561567.aspxhttp://msdn2.microsoft.com/en-us/library/aa972201.aspx
8/20/2019 BizTalk End-To-End Performance Testing Guidance
41/44
Filegrou' = /esources• BizTalk Server ata$ase #'timization
+ htt' ::msdn?microsoft?com:en-us:li$rar":$$QR55W ?as'0• ,nderstanding Files and Filegrou's
+ htt' ::msdn3?microsoft?com:en-us:li$rar":ms; WCO5?as'0• >ow to !dd ata or og Files to a ata$ase 6S Server
Management Studio8
+ htt' ::msdn3?microsoft?com:en-us:li$rar":ms; W3C5?as'0• >ow to Move an E0isting )nde0 to a i1erent Filegrou'
6S Server Management Studio8+ htt' ::msdn3?microsoft?com:en-us:li$rar":ms;QCW4C?as'0
• Ph"sical ata$ase Files and Filegrou's+ htt' ::msdn?microsoft?com:en-us:li$rar":ms;QW5;O6S ?W48?as'0
• 2orking with tem'd$ in S Server 344C+ htt' ::www?microsoft?com:technet:'rodtechnol:s(l:344C:workin
gwithtem'd$?ms'0• #'timizing Server Performance ,sing ):# onDguration
#'tions
http://msdn2.microsoft.com/en-us/library/ms189563.aspxhttp://msdn2.microsoft.com/en-us/library/ms189563.aspxhttp://msdn2.microsoft.com/en-us/library/ms189253.aspxhttp://msdn2.microsoft.com/en-us/library/ms175905.aspxhttp://msdn.microsoft.com/en-us/library/ms179316(SQL.90).aspxhttp://www.microsoft.com/technet/prodtechnol/sql/2005/workingwithtempdb.mspxhttp://www.microsoft.com/technet/prodtechnol/sql/2005/workingwithtempdb.mspxhttp://msdn2.microsoft.com/en-us/library/ms189892.aspxhttp://www.microsoft.com/technet/prodtechnol/sql/2005/workingwithtempdb.mspxhttp://www.microsoft.com/technet/prodtechnol/sql/2005/workingwithtempdb.mspxhttp://msdn.microsoft.com/en-us/library/ms179316(SQL.90).aspxhttp://msdn.microsoft.com/en-us/library/ms179316(SQL.90).aspxhttp://msdn2.microsoft.com/en-us/library/ms175905.aspxhttp://msdn2.microsoft.com/en-us/library/ms189253.aspxhttp://msdn2.microsoft.com/en-us/library/ms189563.aspxhttp://msdn2.microsoft.com/en-us/library/ms189563.aspx
8/20/2019 BizTalk End-To-End Performance Testing Guidance
42/44
M !da'ter /esources•
>#2 T# Set ,' and Test the BizTalk !da'ter forM Series+ htt' ::su''ort?microsoft?com:k$: 3;R W
• BizTalk !da'ter for 2e$S'here M+ htt' ::msdn3?microsoft?com:en-us:li$rar":aaQQ3;;O?as'0
http://support.microsoft.com/kb/821489http://msdn2.microsoft.com/en-us/library/aa772116.aspxhttp://msdn2.microsoft.com/en-us/library/aa772116.aspxhttp://support.microsoft.com/kb/821489
8/20/2019 BizTalk End-To-End Performance Testing Guidance
43/44
Q & A
8/20/2019 BizTalk End-To-End Performance Testing Guidance
44/44
Y 344 Microsoft or'oration? !ll rights reserved? Microsoft7 2indows7 2indows Iista and other 'roduct names are or ma" $e registered trademarks and:or trademarks in the ,?S?and:or other countries?
The information herein is for informational 'ur'oses onl" and re'resents the current view of Microsoft or'oration as of the date of this 'resentation? Because Microsoft must res'ondto changing market conditions7 it should not $e inter'reted to $e a commitment on the 'art of Microsoft7 and Microsoft cannot guarantee the accurac" of an" information 'rovided after
the date of this 'resentation? M) /#S#FT M!*ES 9# 2!//!9T)ES7 EHP/ESS7 )MP )E #/ ST!T,T#/.7 !S T# T>E )9F#/M!T)#9 )9 T>)S P/ESE9T!T)#9?