<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3929051598743407695</id><updated>2012-02-15T09:20:43.545+01:00</updated><category term='path'/><category term='dscim'/><category term='RPT'/><category term='stuff'/><category term='tems'/><category term='robot'/><category term='teps'/><category term='storage'/><category term='tpc vio'/><category term='powerchute'/><category term='RTT'/><category term='dvd'/><category term='TSM'/><category term='Discovery'/><category term='rpt itcam'/><category term='user migration'/><category term='svc'/><category term='rhel'/><category term='redhat'/><category term='ESS'/><category term='rs6000'/><category term='yum'/><category term='TPC'/><category term='storage vtl ibm'/><category term='WWN'/><category term='notepad'/><category term='DS storage'/><category term='dscli'/><category term='RSM Windows Backup'/><category term='sudosh'/><category term='IBM'/><category term='cygwin1.dll'/><category term='serial'/><category term='gpfs'/><category term='SMI-S'/><category term='fc'/><category term='lpa'/><category term='IBM storage'/><category term='shell scripting'/><category term='mysql'/><category term='x11'/><category term='cifs'/><category term='dsm'/><category term='rsct hmc dlpar'/><category term='ITCAM'/><category term='TIVOLI'/><category term='nim'/><category term='rbac'/><category term='tape'/><category term='filesystem'/><category term='ups'/><category term='agentmanager'/><category term='MDS fabric manager'/><category term='DB2'/><category term='bomc'/><category term='unwanted character'/><category term='mac'/><category term='TPC AgentManager Tivoli'/><category term='pSeries'/><category term='interop namespace'/><category term='J2EE'/><category term='tws'/><category term='AIX'/><category term='tivoli monitoring teps'/><category term='hp'/><category term='TPC Agents'/><category term='clariion'/><category term='ITM'/><category term='VIO pSeries'/><category term='macosx'/><category term='fast'/><category term='ipl'/><category term='xSeries PCI'/><category term='fedora'/><category term='rdac'/><category term='rpm'/><category term='switch'/><category term='Access'/><category term='odm'/><category term='CIMOM'/><category term='ND'/><category term='macbook'/><category term='java installer'/><category term='nfs'/><category term='scsi'/><category term='tivoli monitoring'/><category term='naming'/><category term='Brocade'/><category term='DB2 error'/><category term='login'/><category term='TPC Tivoli'/><category term='php'/><category term='tpcr'/><category term='migration'/><category term='ssh'/><category term='rescan'/><category term='audit'/><category term='mpio'/><category term='WebSphere'/><category term='hacmp'/><category term='jfs2'/><category term='X'/><category term='installshield'/><category term='sap'/><category term='tcp'/><category term='qlogic'/><category term='KFWITM217E'/><category term='DS4000'/><category term='Linux'/><category term='dsh'/><category term='vio'/><category term='cim'/><category term='SAN'/><category term='IBM ip credential'/><category term='apc'/><category term='od'/><category term='password'/><category term='profile'/><title type='text'>Techdocs</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default?start-index=101&amp;max-results=100'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>129</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5699713992899251908</id><published>2012-01-25T12:47:00.003+01:00</published><updated>2012-02-15T09:20:15.584+01:00</updated><title type='text'>Full fabric feature not activating</title><content type='html'>&lt;b&gt;Symptom&lt;/b&gt;:&lt;br /&gt;After adding new full fabric license key to a brocade fc switch the feature is unusable despite the licenseshow displays the new feature. The fabswitchshow output display "&lt;b&gt;fabric license:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FALSE&lt;/b&gt;"&lt;br /&gt;The ISL does not work. Isolating with "&lt;i&gt;No fabric license&lt;/i&gt;" error message.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Workaround&lt;/b&gt;:&lt;br /&gt;Reboot the switch after adding the new license key.&lt;br /&gt;The instructions on the license paper/email do not suggest it and the web interface also does not display any message. Only the cli displays a warning message.&lt;br /&gt;After the switch is rebooted the &lt;b&gt;fabswitchshow&lt;/b&gt; displays the flag as &lt;b&gt;TRUE&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5699713992899251908?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5699713992899251908/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5699713992899251908' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5699713992899251908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5699713992899251908'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2012/01/full-fabric-feature-not-activating.html' title='Full fabric feature not activating'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1102002098734718481</id><published>2012-01-19T10:18:00.004+01:00</published><updated>2012-01-19T10:18:50.891+01:00</updated><title type='text'>Locating the WWPN without restarting the host in linux os</title><content type='html'>&lt;ul class="ul"&gt;&lt;li class="li"&gt;&lt;strong class="ph b"&gt;&lt;/strong&gt;"To locatethe WWPN without restarting the host, you can use any of the followingmethods:&lt;ul class="ul"&gt;&lt;li class="li"&gt;For QLogic or Emulex adapters, you can find the WWPN in the &lt;kbd class="ph userinput"&gt;/proc/scsi/&lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt;/&lt;var class="keyword varname"&gt;n&lt;/var&gt;&lt;/kbd&gt; directory,where &lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt; is the host adapter type and &lt;var class="keyword varname"&gt;n&lt;/var&gt; isthe host adapter number for your card. Your host adapter type canbe either &lt;kbd class="ph userinput"&gt;qla&lt;var class="keyword varname"&gt;xxxx&lt;/var&gt;&lt;/kbd&gt; for QLogicadapters or &lt;kbd class="ph userinput"&gt;lpfc&lt;/kbd&gt; for Emulex adapters.&lt;/li&gt;&lt;li class="li"&gt;If you downloaded a QLogic adapter from the QLogic websiteinstead of using the default version that is included with RHEL, tofind the WWPN run the &lt;kbd class="ph userinput"&gt;cat /proc/scsi/&lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt;/&lt;var class="keyword varname"&gt;n&lt;/var&gt;&lt;/kbd&gt; command,where &lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt; is the host adapter type (forexample, &lt;kbd class="ph userinput"&gt;qla2&lt;var class="keyword varname"&gt;xxx&lt;/var&gt;&lt;/kbd&gt; or &lt;kbd class="ph userinput"&gt;qla2300&lt;/kbd&gt;),and &lt;var class="keyword varname"&gt;n&lt;/var&gt; is the host adapter number for your card. &lt;/li&gt;&lt;li class="li"&gt;For a QLogic adapter that is included with RHEL 4.&lt;var class="keyword varname"&gt;x&lt;/var&gt; orearlier, to find the WWPN run the &lt;kbd class="ph userinput"&gt;cat /proc/scsi/&lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt;/&lt;var class="keyword varname"&gt;n&lt;/var&gt;&lt;/kbd&gt; command,where &lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt; is the host adapter type, and &lt;var class="keyword varname"&gt;n&lt;/var&gt; isthe host adapter number for your card. In most cases, the adaptertype is &lt;kbd class="ph userinput"&gt;qla2&lt;var class="keyword varname"&gt;xxx&lt;/var&gt;&lt;/kbd&gt;.&lt;/li&gt;&lt;li class="li"&gt;For a QLogic adapter that is included with RHEL 5.&lt;var class="keyword varname"&gt;x &lt;/var&gt; orlater, the adapter WWPN information might not be available in the&lt;kbd class="ph userinput"&gt;/proc/scsi/&lt;var class="keyword varname"&gt;adapter_type&lt;/var&gt;/&lt;var class="keyword varname"&gt;n&lt;/var&gt;&lt;/kbd&gt; directorybecause of the migration to sysfs, If so, run the following command:&lt;pre class="pre codeblock"&gt;&lt;kbd class="ph userinput"&gt;cat /sys/class/scsi_host/host&lt;var class="keyword varname"&gt;n&lt;/var&gt;/device/fchost\:host&lt;var class="keyword varname"&gt;n&lt;/var&gt;/port_name&lt;/kbd&gt;&lt;/pre&gt;where&lt;var class="keyword varname"&gt; n&lt;/var&gt; isthe host adapter number for your card."&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1102002098734718481?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1102002098734718481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1102002098734718481' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1102002098734718481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1102002098734718481'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2012/01/locating-wwpn-without-restarting-host.html' title='Locating the WWPN without restarting the host in linux os'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-4721810994462973668</id><published>2012-01-05T11:22:00.001+01:00</published><updated>2012-01-05T11:33:30.890+01:00</updated><title type='text'>RPT test does not work after exporting to the AMC</title><content type='html'>&lt;h1 class="title topictitle1"&gt;&lt;span style="font-size: large;"&gt;Problem description:&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="title topictitle1"&gt;&lt;span style="font-size: small;"&gt;RPT test works fine but after you export to the AMC via ITCAM plugin it stops working and get a "Request timed out" error.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="title topictitle1"&gt;&lt;span style="font-size: small;"&gt;After examining the request xml in the log you can see extra header information:&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="title topictitle1"&gt;  &lt;span style="font-size: small;"&gt;&amp;lt;&lt;span style="font-weight: normal;"&gt;reqmetrics:arm_correlator soapenv:actor="reqmetricsURI"&lt;/span&gt;&lt;br style="font-weight: normal;" /&gt;&lt;span style="font-weight: normal;"&gt;xmlns:reqmetrics="&lt;/span&gt;&lt;a href="http://websphere.ibm.com/" style="font-weight: normal;" target="_blank"&gt;&lt;span class="il"&gt;http&lt;/span&gt;://&lt;wbr&gt;&lt;/wbr&gt;websphere.ibm.com&lt;/a&gt;&lt;span style="font-weight: normal;"&gt;"&lt;/span&gt;  &amp;gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt; ...&lt;/span&gt;&lt;br style="font-weight: normal;" /&gt;&lt;span style="font-weight: normal;"&gt;&lt;/span&gt;&amp;lt;&lt;/span&gt;  &lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;/reqmetrics:arm_correlator&lt;/span&gt;  &amp;gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;/span&gt;&lt;br style="font-weight: normal;" /&gt;&lt;span style="font-weight: normal;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small; font-weight: normal;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="title topictitle1"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small; font-weight: normal;"&gt;I faced this problem when I created test against a webservice running in Webshpere Message Broker that does not implemented the ARM feature.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="title topictitle1"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;Solution:&lt;/span&gt; &lt;/span&gt;&lt;/h1&gt;&lt;h1 class="title topictitle1"&gt;&lt;span style="font-size: small;"&gt;"&lt;span style="font-weight: normal;"&gt;Starting with RPT version 8.2 and later,you can modify the &lt;/span&gt;&lt;samp class="ph codeph" style="font-weight: normal;"&gt;eclipse.ini&lt;/samp&gt;&lt;span style="font-weight: normal;"&gt; file (typically locatedin the RPT workbench installation directory, for example, C:\ProgramFiles\IBM\SDP) by adding the Java option RPTNOSOAPHEADERRTB to suppressthe generation of these additional SOAP headers. For example:&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;div class="body"&gt;&lt;div class="p"&gt;&lt;pre class="pre codeblock"&gt;&lt;span style="font-size: small;"&gt;...&lt;br /&gt;-install&lt;br /&gt;C:/Program Files/IBM/SDP/rptse&lt;br /&gt;-launcher.library&lt;br /&gt;plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503&lt;br /&gt;-vmargs&lt;br /&gt;&lt;span class="ph b"&gt;-DRPTNOSOAPHEADERRTB&lt;/span&gt;&lt;br /&gt;-Xquickstart&lt;br /&gt;...&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="p"&gt;&lt;span style="font-size: small;"&gt;If you experience this problem, enable this RPTNOSOAPHEADERRTBoption in your RPT workbench and regenerate your scripts before uploadingthem to the Application Management Console for playback by the RoboticResponse Time agent."&lt;/span&gt;&lt;br /&gt;Full IBM artikle &lt;a href="http://publib.boulder.ibm.com/infocenter/tivihelp/v24r1/index.jsp?topic=%2Fcom.ibm.itcamt.doc_7.3%2Frt%2FTSG%2Fitcam_rt_rrt_6712_fix.html"&gt;here &lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-4721810994462973668?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/4721810994462973668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=4721810994462973668' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4721810994462973668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4721810994462973668'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2012/01/rpt-test-does-not-work-after-exporting.html' title='RPT test does not work after exporting to the AMC'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6564158268601415962</id><published>2011-12-14T14:02:00.011+01:00</published><updated>2011-12-14T14:34:02.812+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='vio'/><category scheme='http://www.blogger.com/atom/ns#' term='path'/><title type='text'>Recommended parameters in dual-VIOs environmnent</title><content type='html'>Here are some recommended parameters when using dual-VIO and vscsi adapters&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;1. Load balance/Failover&lt;/span&gt;&lt;br /&gt;Because the vscsi adapter does not support other then failover settings, you should manual load balance the io between the VIOS.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;chpath -l hdiskX -p vscsiY -a priority=Z&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;Starting with AIX 5.3 TL9 (APAR IZ28537) and AIX 6.1 TL2 (APAR IZ28554), a&lt;br /&gt;new Virtual SCSI adapter error recovery parameter has been added and must&lt;br /&gt;be configured to fast_fail. When this parameter is set to fast_fail, the virtual client&lt;br /&gt;adapter sends FAST_FAIL_MAD to the Virtual I/O Server and it fails the I/Os&lt;br /&gt;immediately rather than delayed. This parameter is configured using the chdev&lt;br /&gt;command as shown in the following example.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;chdev -l vscsiX -a vscsi_err_recov=fast_fail -P&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;2. Health check&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;chdev -l hdiskX -a hcheck_interval=60 -a hcheck_mode=nonactive -P&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;hcheck_mode=nonactive&lt;/span&gt; means that healthcheck commands are sent down paths that have no active &lt;span style="font-size:100%;"&gt;I/O,including paths with a state of failed.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;The &lt;span style="font-weight: bold;"&gt;hcheck_interval&lt;/span&gt; attribute defines how&lt;/span&gt;&lt;span style="font-style: italic;"&gt; often the healthcheck is performed.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;chdev -l vscsiX -a vscsi_path_to=30 -P&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;It allows the client adapter to check the health of the Virtual I/O&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Server servicing a particular adapter and detect if a Virtual I/O Server is not&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;responding to I/O requests.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;3. Queue depth&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Must be configured to match the queue depth value used for the physical disk on the Virtual I/O Server.&lt;br /&gt;&lt;div style="text-align: center;"&gt;chdev -l hdiskX -a queue_depth=20 -P&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-style: italic;"&gt;Care should be taken if you set the queue depth on VIOC. The vhost adapter in VIOS has a fixed queue_depth value: 512. That value is divided by the number of LUNs accessible by the vhost adapter. 2 are reserved for the adapter use and 3 are reserved for each LUN.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;The formula: (512 - 2) / (vioc_queue_depth + 3) = X&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;If VIOC's disks are using the default 3 value, then the max LUN number is 85.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;4. VIOS settings&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;chdev -dev fscsiX -attr fc_err_recov=fast_fail dyntrk=yes -perm&lt;br /&gt;chdev -dev hdiskX -attr reserve_policy=no_reserve&lt;br /&gt;chdev -dev hdiskX -attr algorithm=round_robin&lt;br /&gt;&lt;span&gt;chdev -dev hdiskX -attr hcheck_interval=60 -attr hcheck_mode=nonactive -perm&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-6gJmb2LyTAg/TuiezxAyRxI/AAAAAAAAGVA/DAbVsPDMDqY/s1600/mpio_vio.tiff"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 218px;" src="http://4.bp.blogspot.com/-6gJmb2LyTAg/TuiezxAyRxI/AAAAAAAAGVA/DAbVsPDMDqY/s320/mpio_vio.tiff" alt="" id="BLOGGER_PHOTO_ID_5685969141722400530" border="0" /&gt;&lt;/a&gt;Some comments and the figure is from the "IBM PowerVM Virtualization Introduction and Configuration" Redbook&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6564158268601415962?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6564158268601415962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6564158268601415962' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6564158268601415962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6564158268601415962'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/12/recommended-parameters-uing-dual-vios.html' title='Recommended parameters in dual-VIOs environmnent'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-6gJmb2LyTAg/TuiezxAyRxI/AAAAAAAAGVA/DAbVsPDMDqY/s72-c/mpio_vio.tiff' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-7493948890238551639</id><published>2011-12-14T13:08:00.001+01:00</published><updated>2012-02-03T13:42:13.461+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='path'/><title type='text'>Get PATH priority in AIX</title><content type='html'>#!/bin/ksh&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;printf "disk   path     priority \n"&lt;br /&gt;lsdev -Cc disk | while read disk rest&lt;br /&gt;&amp;nbsp; do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for path in `lspath -l ${disk} | awk '{print $3}'`&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pri=`lspath -AEl ${disk} -p ${path}  | awk '{print $2}'`&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf "$disk $path  $pri\n"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; done&lt;br /&gt;done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-7493948890238551639?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/7493948890238551639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=7493948890238551639' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/7493948890238551639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/7493948890238551639'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/12/get-path-priority-in-aix.html' title='Get PATH priority in AIX'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5571422927645987890</id><published>2011-12-05T22:14:00.001+01:00</published><updated>2012-01-25T20:09:47.255+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rbac'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>RBAC scripting</title><content type='html'>I found a bit difficult to check authorizations, privileges ..etc in RBAC.&lt;br /&gt;Here is a simple script to make easier the administration of RBAC environmnet.&lt;br /&gt;Its the first beta. It need to test.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: 85%; font-style: italic;"&gt;#!/bin/ksh&lt;br /&gt;usage="Usage:\n&lt;br /&gt;$0 [list|checkauth cmd|checkcmd cmd] role\n&lt;br /&gt;$0 copy srcrole dstrole\n&lt;br /&gt;$0 add role authorization\n&lt;br /&gt;$0 remove role authorization\n"&lt;br /&gt;&lt;br /&gt;mkrole=/usr/bin/mkrole&lt;br /&gt;chrole=/usr/bin/chrole&lt;br /&gt;lsrole=/usr/sbin/lsrole&lt;br /&gt;&lt;br /&gt;case $1 in&lt;br /&gt;#List authorization of the given role&lt;br /&gt;list)&lt;br /&gt;        if [ $# -ne 2 ]; then&lt;br /&gt;         echo $usage&lt;br /&gt;         exit 1&lt;br /&gt;        fi&lt;br /&gt;&lt;br /&gt;        role=$2&lt;br /&gt;        p_auths=`lsrole -a all_auths ${role} | cut -d "=" -f 2`&lt;br /&gt;        echo "Authorization(s) for role ${role}:"&lt;br /&gt;        echo "================================"&lt;br /&gt;        list=`echo ${p_auths} | tr "," "|" `&lt;br /&gt;        cmds=`lssecattr -c -a accessauths ALL | grep -E "${list}" | awk '{print $1}' | tr "\n\r" ","`&lt;br /&gt;        echo $p_auths | tr "," "\n\r" | sort&lt;br /&gt;        echo ""&lt;br /&gt;        echo "Accessible commands by the role:"&lt;br /&gt;        echo "================================"&lt;br /&gt;        echo ${cmds}&lt;br /&gt;        ;;&lt;br /&gt;&lt;br /&gt;#Find the given command in the privileged command database&lt;br /&gt;checkauth)&lt;br /&gt;        if [ $# -ne 2 ]; then&lt;br /&gt;         echo $usage&lt;br /&gt;         exit 1&lt;br /&gt;        fi&lt;br /&gt;        cmd=`which $2 2&amp;gt;/dev/null`&lt;br /&gt;        if [ $? -eq 0 ]; then&lt;br /&gt;         lssecattr -c -F ${cmd}&lt;br /&gt;        else&lt;br /&gt;         echo  "Command ${2} not found! Try to use full path!"&lt;br /&gt;         exit 2&lt;br /&gt;        fi&lt;br /&gt;        ;;&lt;br /&gt;&lt;br /&gt;#Try to find given command in the privileged command database and than try to find the associated authorization&lt;br /&gt;checkcmd)&lt;br /&gt;        if [ $# -ne 3 ]; then&lt;br /&gt;:120&lt;br /&gt;        n_auth=$3&lt;br /&gt;        if [ $# -ne 3 ]; then&lt;br /&gt;         echo $usage&lt;br /&gt;         exit 1&lt;br /&gt;        fi&lt;br /&gt;&lt;br /&gt;        s_auths=`lsrole -a all_auths ${s_role} | cut -d "=" -f 2 2&amp;gt;/dev/null`&lt;br /&gt;        if [ ${#s_auths} -eq 0 ]; then&lt;br /&gt;         echo "Warning! The specified role ${s_role} does not contain any authorization!"&lt;br /&gt;         exit 0&lt;br /&gt;        fi&lt;br /&gt;&lt;br /&gt;        $chrole authorizations=${s_auths},${n_auth} $s_role&lt;br /&gt;        if [ $? == 0 ]; then&lt;br /&gt;                echo "$s_role has the following authorizations now: ";lsrole -a all_auths ${s_role} | cut -d "=" -f 2 | tr "," "\n\r"&lt;br /&gt;        fi&lt;br /&gt;        ;;&lt;br /&gt;copy)&lt;br /&gt;        s_role=$2&lt;br /&gt;        d_role=$3&lt;br /&gt;        s_auths=`lsrole -a all_auths ${s_role} | cut -d "=" -f 2`&lt;br /&gt;        if [ ${#s_auths} -eq 0 ]; then&lt;br /&gt;         echo "Warning! The specified role ${s_role} does not contain any authorization!"&lt;br /&gt;        fi&lt;br /&gt;&lt;br /&gt;        $mkrole authorizations=${s_auths} $d_role&lt;br /&gt;        if [ $? = 0 ]; then&lt;br /&gt;                echo "Done. $d_role has the following authorizations: ${s_auths} "&lt;br /&gt;        fi&lt;br /&gt;        ;;&lt;br /&gt;&lt;br /&gt;remove)&lt;br /&gt;        s_role=$2&lt;br /&gt;        r_auth=$3&lt;br /&gt;&lt;br /&gt;        if [ `lsrole -f $s_role 2&amp;gt;/dev/null | wc -l` -eq 0 ]; then&lt;br /&gt;                echo "The specified role ${s_role} does not exist!"&lt;br /&gt;                exit 2&lt;br /&gt;        fi&lt;br /&gt;&lt;br /&gt;        r_auths=`lsrole -a all_auths ${s_role} | cut -d "=" -f 2 |tr "," "\n\r" | grep -i ${r_auth}`&lt;br /&gt;        orig_auths=`lsrole -a all_auths ${s_role} | cut -d "=" -f 2|tr "," "\n\r"`&lt;br /&gt;        echo "All authorizations used by this role:\n$orig_auths"&lt;br /&gt;        if [ ${#r_auths} -eq 0 ]; then&lt;br /&gt;                echo "Nothing to remove!"&lt;br /&gt;                exit 3&lt;br /&gt;        fi&lt;br /&gt;        echo "Do you real want to remove this authorizations from role ${s_role}?\n${r_auths}"&lt;br /&gt;        printf "Y/N"; read answer;&lt;br /&gt;        answer=`echo $answer | tr '[:upper:]' '[:lower:]'`&lt;br /&gt;&lt;br /&gt;        if [ "${answer}" ==  "y" ]; then&lt;br /&gt;          n_auths=`lsrole -a all_auths ${s_role} | cut -d "=" -f 2 | tr "," "\n\r" |  grep -vi ${r_auth}|tr "\n\r" ","`&lt;br /&gt;          if [ ${#n_auths} -eq 0 ]; then&lt;br /&gt;            echo "Warning! The specified role ${s_role} will not have any authorization!"&lt;br /&gt;          fi  &lt;br /&gt;           ${chrole} authorizations=${n_auths} ${s_role}&lt;br /&gt;           ${lsrole} -f ${s_role}&lt;br /&gt;         else&lt;br /&gt;          echo "Exiting ..."&lt;br /&gt;          exit 1&lt;br /&gt;        fi&lt;br /&gt;&lt;br /&gt;        ;;&lt;br /&gt;*)&lt;br /&gt;        echo $usage&lt;br /&gt;        ;;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5571422927645987890?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5571422927645987890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5571422927645987890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5571422927645987890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5571422927645987890'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/12/rbac-scripting.html' title='RBAC scripting'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-423890528941829475</id><published>2011-11-29T21:27:00.008+01:00</published><updated>2012-02-15T09:20:43.552+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sudosh'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='audit'/><title type='text'>Successful steps to get a working sudosh in AIX</title><content type='html'>sudosh is a very imressive tool to log the activity on an AIX host.&lt;br /&gt;&lt;br /&gt;Instead of using the prebuild rpm package I suggest  compile your own sudosh binary. Theese errors may happen if  You are using the rpm (all version v1.6.3, v2 ..etc)&lt;br /&gt;1. CTRL+C kick you off You from the shell&lt;br /&gt;2. Smitty screens don't working whatever  TERM settings You're using.&lt;br /&gt;3. Cant set vi and other env variable&lt;br /&gt;&lt;br /&gt;After I compiled from source this errors aren't occured.&lt;br /&gt;&lt;br /&gt;Theese are  the configure paramateres I used:&lt;br /&gt;./configure --with-defshell=`which ksh` --prefix=/usr/&lt;br /&gt;You need sudo-1.6.9p15-2noldap or other sudo rpm package installed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-423890528941829475?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/423890528941829475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=423890528941829475' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/423890528941829475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/423890528941829475'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/11/successful-steps-to-get-working-sudosh.html' title='Successful steps to get a working sudosh in AIX'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5094864480576926585</id><published>2011-11-21T15:59:00.001+01:00</published><updated>2011-11-21T16:00:54.596+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='dsm'/><title type='text'>dsm sample scripts</title><content type='html'>#!/bin/ksh&lt;br /&gt;####################################################&lt;br /&gt;# This simple script helps to add new DSM node     #&lt;br /&gt;# to the nodeinfo file set in the properties file  #&lt;br /&gt;####################################################&lt;br /&gt;&lt;br /&gt;E_INVALID_USAGE=1&lt;br /&gt;E_NODE_ALREADY_EXISTS=2&lt;br /&gt;E_COULD_NOT_FIND_LPAR=3&lt;br /&gt;E_APPEND_TO_FILE=4&lt;br /&gt;&lt;br /&gt;node=$1&lt;br /&gt;lpar_name=$2&lt;br /&gt;&lt;br /&gt;access_type=hmc&lt;br /&gt;access_ip=hmc&lt;br /&gt;access_usr=hscroot&lt;br /&gt;passwd_file=/etc/ibm/sysmgt/dsm/config/hmc_passwd&lt;br /&gt;dsm_nodeinfo_file=`grep nodeinfo /etc/ibm/sysmgt/dsm/dsm.properties | cut -d "=" -f 2 | tr -d " "`&lt;br /&gt;&lt;br /&gt;if [ $# -lt 1 ]; then&lt;br /&gt; echo "Usage $0 {nodename} [lpar_name]. You can use separate dsm node name and lpar name "&lt;br /&gt; exit $E_INVALID_USAGE&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;if [ $# == 1 ]; then&lt;br /&gt; lpar_name=$node&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;rc=`grep -i "^${node}|" ${dsm_nodeinfo_file} | wc -l`&lt;br /&gt;if [ ${rc} == 1 ]; then&lt;br /&gt; echo "Node ${node} already exists in nodeinfo file ${dsm_nodeinfo_file}!"&lt;br /&gt; exit ${E_NODE_ALREADY_EXISTS}&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;function get_server {&lt;br /&gt;&lt;br /&gt;s_file=serverlist.tmp&lt;br /&gt;export i=1&lt;br /&gt;ssh ${access_usr}@${access_ip} lssyscfg -r sys -F name,type_model,serial_num &amp;gt; $s_file&lt;br /&gt;cat $s_file |cut -d "," -f 1 | while read name&lt;br /&gt;do&lt;br /&gt; echo "${i}. ${name}"&lt;br /&gt; i=`expr ${i} + 1`&lt;br /&gt;done&lt;br /&gt;&lt;br /&gt;print -n "Server to use:";read server_no&lt;br /&gt;&lt;br /&gt;server=`cat $s_file  | head -${server_no} | tail -1`&lt;br /&gt;t_hw=`echo $server| cut -d "," -f 2`&lt;br /&gt;t_sn=`echo $server| cut -d "," -f 3`&lt;br /&gt;t_name=`echo $server| cut -d "," -f 1`&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;get_server&lt;br /&gt;lpar_id=`ssh ${access_usr}@${access_ip} lssyscfg -r lpar -m ${t_name} -F name,lpar_id | grep ^"${lpar_name},"| cut -d "," -f 2`&lt;br /&gt;&lt;br /&gt;if [ "${lpar_id}" == "" ]; then&lt;br /&gt; echo "Could not find lpar ${lpar_name} in system ${t_name}"&lt;br /&gt; exit ${E_COULD_NOT_FIND_LPAR}&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;line="${node}|${access_type}|${access_ip}|TargetHWTypeModel=${t_hw}:TargetHWSerialNum=${t_sn}:TargetLPARID=${lpar_id}|${passwd_file}"&lt;br /&gt;echo $line &amp;gt;&amp;gt; ${dsm_nodeinfo_file}&lt;br /&gt;&lt;br /&gt;if [ $? == 0 ]; then&lt;br /&gt; echo "${line} added to ${dsm_nodeinfo_file}"&lt;br /&gt;else&lt;br /&gt; echo "An error occured during adding new line to ${dsm_nodeinfo_file}"&lt;br /&gt; exit $E_APPEND_TO_FILE&lt;br /&gt;fi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5094864480576926585?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5094864480576926585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5094864480576926585' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5094864480576926585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5094864480576926585'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/11/dsm-sample-scripts.html' title='dsm sample scripts'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6897990915474846499</id><published>2011-11-18T14:28:00.009+01:00</published><updated>2011-12-07T11:09:30.534+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='dsm'/><title type='text'>dsm error</title><content type='html'>Today I tried to use the replacement of dsh called dsm.&lt;br /&gt;I followed the guide and try to get the lpar mac using the dgetmacs command.&lt;br /&gt;The program returned with RC=1 and not reported the ethernet macs.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;"nim:/etc/ibm/sysmgt/dsm# dgetmacs -n dsm -V&lt;br /&gt;Using an adapter type of "ent".&lt;br /&gt;Output log for dgetmacs is being written to /var/ibm/sysmgt/dsm/log/dgetmacs.log.&lt;br /&gt;Running Command:  /opt/csm/bin/dsh -C DSH  -n dsm -v -t 10 /bin/echo test.success&lt;br /&gt;Could not dsh to node dsm.&lt;br /&gt;Attempting to use openfirmware method to collect MAC addresses.&lt;br /&gt;Acquiring adapter information from Open Firmware for node dsm.&lt;br /&gt;Running Command:  /opt/ibm/sysmgt/dsm/dsmbin/lpar_netboot -i -v -x -M -temp_file /tmp/dgetmacs.dsm.15401108 -n -t ent -J hmc -j hmc -F /etc/ibm/sysmgt/dsm/config/hmc_passwd  -A  8 067213P 8233-E8B 2&amp;gt;&amp;gt;/var/ibm/sysmgt/dsm/log//dgetmacs.dsm.log.322 2&amp;gt;&amp;amp;1&lt;br /&gt;dgetmacs: 2760-185 Issuing the command "/opt/ibm/sysmgt/dsm/dsmbin/lpar_netboot -M -n -t ent -J hmc -j hmc -F /etc/ibm/sysmgt/dsm/config/hmc_passwd  -A  8 067213P 8233-E8B" gave a return code of 1.  The routine will continue.&lt;br /&gt;No adapters found for node dsm.&lt;br /&gt;Could not get mac address for this aix node "dsm" "&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I found the &lt;a href="https://www.ibm.com/developerworks/mydeveloperworks/blogs/cgaix/tags/dgetmacs?lang=en"&gt;following&lt;/a&gt; article at Chris' Blog.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;He said that this issue was found in 7.1 SP2 and maybe it will resolved in SP3. So, NOT!&lt;br /&gt;The cat file size still 3905 dispite he talked to the developpers.&lt;br /&gt;&lt;br /&gt;The funnies thing is that the lppchk is NOT reporting any CRC or other error.&lt;br /&gt;&lt;br /&gt;The /usr/lib/nls/msg/en_US/IBMhsc.netboot.cat file is part of the bos.msg.en_US.rte.&lt;br /&gt;and the current version is 7.1.0.0&lt;br /&gt;&lt;br /&gt;I sent an email to Chris. If he send me the right cat file I will give it a last chance.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;..&lt;br /&gt;Chris sent me the right-size cat file. After I replaced the original with this one the problem disappeared.&lt;br /&gt;The last (this time 7100-01-01-1141) TL+SP does not solve the problem. The  bos.msg.en_US.rte fileset version is still  7.1.0.0!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6897990915474846499?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6897990915474846499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6897990915474846499' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6897990915474846499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6897990915474846499'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/11/dsm-error.html' title='dsm error'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1709365223717325163</id><published>2011-11-16T14:35:00.002+01:00</published><updated>2011-12-07T11:13:04.102+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='profile'/><category scheme='http://www.blogger.com/atom/ns#' term='vio'/><title type='text'>VIO profile</title><content type='html'>1. Add export ENV=/home/padmin/.kshrc to the /home/padmin/.profile&lt;br /&gt;2. Create /home/padmin/.kshrc file with the following / similar content:&lt;br /&gt;&lt;br /&gt;HOSTNAME=`hostname`&lt;br /&gt;set -o vi&lt;br /&gt;&lt;br /&gt;PWD=`pwd`&lt;br /&gt;&lt;br /&gt;if id &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 ; then&lt;br /&gt;export USER='root(oem_setup_env)'&lt;br /&gt;PS1='[${USER}@${HOSTNAME}:#${PWD}] '&lt;br /&gt;else&lt;br /&gt;export USER=$LOGNAME&lt;br /&gt;PS1='[${USER}@${HOSTNAME}:] '&lt;br /&gt;alias aix=oem_setup_env&lt;br /&gt;fi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1709365223717325163?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1709365223717325163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1709365223717325163' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1709365223717325163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1709365223717325163'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/11/vio-profile.html' title='VIO profile'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5760690665497328606</id><published>2011-10-24T11:11:00.003+02:00</published><updated>2011-10-24T11:20:18.969+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='svc'/><title type='text'>IBM SAN Volume Controller SVC console inital config</title><content type='html'>How to add SVC Cluster to SVC console.&lt;br /&gt;The steps I always forget&lt;br /&gt;&lt;br /&gt;There is a default icat.ppk file in "C:\Program Files\IBM\svcconsole\cimom" directory. Load  this file to the puttygen and save the public key. Use this public key when adding new user to the svc. Define "SVC Console" access when creating the user.&lt;br /&gt;&lt;br /&gt;This error message indicating that the above steps resolve your problem:&lt;br /&gt;"Availibility Status"&lt;br /&gt;-  "Key Refused" &lt;br /&gt;- "Invalid account"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5760690665497328606?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5760690665497328606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5760690665497328606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5760690665497328606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5760690665497328606'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/10/ibm-san-volume-controller-svc-console.html' title='IBM SAN Volume Controller SVC console inital config'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-752562408565428578</id><published>2011-10-06T12:10:00.001+02:00</published><updated>2011-12-14T14:30:15.821+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='svc'/><title type='text'>IBM SAN Volume Controller V4x Resetting SVC Console Password</title><content type='html'>1/ Stop the CIMOM service&lt;br /&gt;2/ go to the install directory svcconsole\cimom\pegasus (or just %SVCAGENT_HOME%\pegasus)&lt;br /&gt;3/ open the cimserver.passwd file in a text editor&lt;br /&gt;4/ delete the entry for user being reset(the file is formatted user:password, delete the entire entry)&lt;br /&gt;5/ save and close the file&lt;br /&gt;6/ restart the CIMOM service&lt;br /&gt;7/ From a Windows command line prompt perform the following;&lt;br /&gt;cimuser -a -u superuser -w passw0rd&lt;br /&gt;8/ Verify log in from the GUI&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-752562408565428578?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/752562408565428578/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=752562408565428578' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/752562408565428578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/752562408565428578'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/10/ibm-san-volume-controller-v4x-resetting_06.html' title='IBM SAN Volume Controller V4x Resetting SVC Console Password'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-3286054147319358775</id><published>2011-10-06T12:10:00.000+02:00</published><updated>2011-10-06T12:11:33.298+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='svc'/><title type='text'>IBM SAN Volume Controller V4x Resetting SVC Console Password</title><content type='html'>1/ Stop the CIMOM service&lt;br /&gt;2/ go to the install directory svcconsole\cimom\pegasus (or just %SVCAGENT_HOME%\pegasus)&lt;br /&gt;3/ open the cimserver.passwd file in a text editor&lt;br /&gt;4/ delete the entry for user being reset(the file is formatted user:password, delete the entire entry)&lt;br /&gt;5/ save and close the file&lt;br /&gt;6/ restart the CIMOM service&lt;br /&gt;7/ From a Windows command line prompt perform the following;&lt;br /&gt;cimuser -a -u superuser -w passw0rd&lt;br /&gt;8/ Verify log in from the GUI&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-3286054147319358775?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/3286054147319358775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=3286054147319358775' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3286054147319358775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3286054147319358775'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/10/ibm-san-volume-controller-v4x-resetting.html' title='IBM SAN Volume Controller V4x Resetting SVC Console Password'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6094093421658128138</id><published>2011-09-06T13:07:00.005+02:00</published><updated>2011-09-06T21:20:26.025+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nim'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>Useful nim commands and some common error</title><content type='html'>&lt;span style="font-weight: bold;"&gt;create mksysb backup on nim master: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;nim -o define -t mksysb  -a server=master -a location=[LOCATION]  -a source=[SOURCE NODE] -a mk_image=yes [OBJECT NAME]&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;First use the  "-a size_preview=yes" to investigate the needed space in the filesystem.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;0042-175 c_ch_nfsexp: An unexpected result was returned by the&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;      "/usr/sbin/exportfs" command:&lt;/span&gt;&lt;br /&gt;       exportfs: 1831-186 /nim/mksysb/ha-node2.mksysb not found in /etc/exports&lt;br /&gt;&lt;br /&gt;In this case the exportfs -e displays similar like this:&lt;br /&gt;nim:/# showmount -e&lt;br /&gt;export list for nim:&lt;br /&gt;/nim/mksysb                                (everyone)&lt;br /&gt;&lt;br /&gt;Resolution: you have to remove the above nfs export and let nim exports the needed dirs&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To be continued ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6094093421658128138?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6094093421658128138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6094093421658128138' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6094093421658128138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6094093421658128138'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/09/useful-nim-commands.html' title='Useful nim commands and some common error'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5434328737946336588</id><published>2011-08-30T13:49:00.001+02:00</published><updated>2011-08-30T13:51:41.388+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mpio'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='rdac'/><title type='text'>Instructions to convert DS4000 disks from MPIO to AIX_fcparray(RDAC).</title><content type='html'>Useful article from www.aixmind.com&lt;br /&gt;&lt;br /&gt;" &lt;span style="font-family:Verdana;"&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Instructions to convert DS4000 disks from  MPIO to  AIX_fcparray(RDAC).&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;div class="post-content"&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Note: The  manage_disk_drivers command usage changed with AIX 6.1 TL4 and 5.3 TL11.   The AIX infocenter describes the old usage:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=/com.ibm.aix.cmds/doc/aixcmds3/manage_disk_drivers.htm" target="_blank"&gt;http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=/com.ibm.aix.cmds/doc/aixcmds3/manage_disk_drivers.htm&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-size:large;"&gt;Examples&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;1.	&lt;span style="font-size:medium;"&gt;To list storage families and  drivers, enter the following command: &lt;/span&gt;&lt;br /&gt;&lt;tt&gt;&lt;span style="font-size:medium;"&gt;manage_disk_drivers&lt;/span&gt;&lt;/tt&gt;&lt;br /&gt;&lt;span style="font-size:medium;"&gt;The system displays a message similar  to the following message: &lt;/span&gt;&lt;br /&gt;&lt;tt&gt;&lt;span style="font-size:medium;"&gt;1: DS4100: currently RDAC;  supported: RDAC/fcparray, MPIO&lt;br /&gt;2: DS4300: currently MPIO; supported: RDAC/fcparray, MPIO&lt;br /&gt;3: DS4500: currently RDAC; supported: RDAC/fcparray, MPIO&lt;br /&gt;4: DS4700/DS4200: currently RDAC; supported: RDAC/fcparray, MPIO&lt;br /&gt;5: DS4800: currently RDAC; supported: RDAC/fcparray, MPIO&lt;/span&gt;&lt;/tt&gt;&lt;br /&gt;2.	&lt;span style="font-size:medium;"&gt;To modify the driver for a storage  family, enter the following command: &lt;/span&gt;&lt;br /&gt;&lt;tt&gt;&lt;span style="font-size:medium;"&gt;manage_disk_drivers -c 1&lt;/span&gt;&lt;/tt&gt;&lt;br /&gt;&lt;span style="font-size:medium;"&gt;The system displays a message similar  to the following message, prompting for confirmation of the change: &lt;/span&gt;&lt;br /&gt;&lt;tt&gt;&lt;span style="font-size:medium;"&gt;DS4100 currently RDAC/fcparray&lt;br /&gt;Change to alternate driver? [Y/N] Y&lt;br /&gt;DS4100 now managed by MPIO&lt;br /&gt;It is necessary to perform a bosboot before rebooting the system in  order to incorporate this change into the boot image.&lt;br /&gt;In order to change to the new driver, either a reboot or a full  unconfigure and reconfigure of all devices of the type changed must be  performed.&lt;/span&gt;&lt;/tt&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;————&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Here is an example  showing the updated command usage:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;1) Check the AIX systems  driver support and state by running the following  command:manage_disk_drivers -l&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt; This will display the DS4000 devices  that are supported by MPIO as well as RDAC and if they are currently  configured for MPIO or RDAC enablement.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Example A:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;manage_disk_drivers -l&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Device           Present  Driver     Driver Options&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;2810XIV           AIX_AAPCM          AIX_AAPCM,AIX_non_MPIO&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4100            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4200            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4300            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4500            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4700            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4800            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS3950            AIX_SDDAPPCM       AIX_APPCM&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS5020            AIX_SDDAPPCM       AIX_APPCM&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS5100            AIX_SDDAPPCM       AIX_APPCM&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;2) From “example A”  we know that the DS4500 is currently enabled for AIX_SDDAPPCM (MPIO with  SDDPCM). To change which driver is managing the DS4000, do the  following commands in order-&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;manage_disk_drivers  -d DS4800 -o AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;The “d” flag for  which storage and “o” flag which driver you would like to use.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Example B:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;manage_disk_drivers -d  DS4800 -o AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;bosboot: Boot image is 42141 512 byte  blocks.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt; **********************  ATTENTION *************************&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt; For the change to take  effect the system must be rebooted&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;# shutdown –Fr&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;3) Once the server  has rebooted, all the hdisk devices that were converted will now be  configured under the RDAC driver.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;manage_disk_drivers  -l&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;Device           Present  Driver     Driver Options&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;2810XIV           AIX_AAPCM          AIX_AAPCM,AIX_non_MPIO&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4100            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4200            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4300            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4500            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4700            AIX_SDDAPPCM       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS4800            AIX_Fcparray       AIX_APPCM,AIX_fcparray&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS3950            AIX_SDDAPPCM       AIX_APPCM&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS5020            AIX_SDDAPPCM       AIX_APPCM&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Courier New;"&gt;DS5100            AIX_SDDAPPCM       AIX_APPCM&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size:medium;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:medium;"&gt;You can also use lsdev to see what  driver is managing the disks.  Example:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:medium;"&gt;$ lsdev -Cc disk&lt;/span&gt;&lt;/p&gt; &lt;p&gt;hdisk5 Available 0D-08-02 1815 DS4800 Disk Array Device &amp;lt;===  fcparray managed (RDAC)&lt;/p&gt; &lt;p&gt;hdisk61 Available 06-09-02 IBM MPIO DS4800 Array Disk &amp;lt;=== SDDPCM  managed&lt;/p&gt; &lt;p&gt;hdisk6 Available 06-08-02 MPIO Other DS4K Array Disk &amp;lt;=== AIX  APPCM managed"&lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5434328737946336588?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5434328737946336588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5434328737946336588' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5434328737946336588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5434328737946336588'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/08/instructions-to-convert-ds4000-disks.html' title='Instructions to convert DS4000 disks from MPIO to AIX_fcparray(RDAC).'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-8069729226424441716</id><published>2011-07-13T10:17:00.001+02:00</published><updated>2011-07-13T10:19:05.893+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='hp'/><category scheme='http://www.blogger.com/atom/ns#' term='switch'/><category scheme='http://www.blogger.com/atom/ns#' term='Brocade'/><title type='text'>HP - Brocade SAN switch model naming matrix</title><content type='html'>&lt;img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlIAAAKyCAIAAACR+aemAAAgAElEQVR4Aey9f1yTV7Yv/HCjPZM4Bw823Ba8pW1iDVU5bbFW6JtYdCrqpUfrDCkMqENntE7SEmyndJhR4xDlDCMzlmDBVu1HBwxHBqa89ZAxwQ6jwhSEUeul1YESa/FY8YZC66lkqsmHu/Z+fidBFBIMuJ8/YGc/e6+91nevtdd+1nqSHTY4OEiRiyAQWASu2/WReuoPfytbEhFYwoQaQYAgQBAYJQL/Y5T9SXeCgB8ELna0X1XGzpji5xapIggQBAgCdxQB4vbuKPwTZvB+q145VZle4fBQlKezcmNZkyox8aF7Jox8RBCCAEFgwiBA3N6Emco7KkjE0oKD5iWXXpsxKSxskmrtpX+rs+bNk9xRlsjgBAGCAEHAHwJhJLfnDxZSRxAgCBAECAITEwHytDcx55VIRRAgCBAECAJ+ESBuzy8spJIgQBAgCBAEJiYCxO1NzHklUhEECAIEAYKAXwSI2/MLC6kkCBAECAIEgYmJAHF7E3NeiVQEAYIAQYAg4BeBSX5rh60MCwsbtg1pQBAgCBAECAIEgYAjMMovIJCnvYDPCCFIECAIEAQIAqGLAHF7oTs3hDOCAEGAIEAQCDgCxO0FHFJCkCBAECAIEARCF4ER5vaEAo0yzCokRcoEgbFEAFLURHvHEnAyFkFgxAgE8IUS8rQ34lkgHQkCBAGCAEFg/CFA3N74mzPCMUGAIEAQIAiMGIHx7fY8bVtiw2SxW1rguJsxujwtW2JlYbFb2sZuyDGSjAwTEAQ8nSULZTKl3tp/6+R6K7WyMKJUtw7YLbe8WKmNDgt7ckvbtVvuEsSGI9GNQLNzB9bMQIswenqBdXue3sp0sF98RWr0JXaHa/QsEgoEgTFEgF4oGSUOC4vWVl4cw9FHPxRtgwK2+Y2a0DxlSu2WyrZe7/E8DrtJq8TSyzS51jthv3hdFm4C6BnhJGKkkC0s6QzK1lOgADK8hvkZxeWwF2iVeKmTaQxWdMokucYRAoF1e0LBe5t25axcuyc4qikcKNTLPmYc6gwT/kaDgGSm4S8DA46ylIjRULmFvqPTK9f5GlNmusneL1yxXZ2lr6zcUnMej+5q+u1zKYUQ1RjdQLcgibiJJH5ZmkpKdXd8SvPW21hrvUxRX7V3XMK8/uOzji4XJY1Z8JQy2Ac6umANW7W29GMhRsCsp3PP2pWbas7jPb2raedzaaZbe5ocM90QIzq6T/S2KWSemEcnDNM7GG4vKtXSPehuNyfJXSc+/JvIrgLCMyFCEAgyAtI0i9MNL3kODn5RnfFAkAcbY/LYPAedzcYk6fmavYe/EAzf+7fGMy7pUnPHwOCgs9X8utGsvwNnBUumq+L+hXIdr60H3jy99YesyL+4OqoOnwL/42mvqzpLUbPSnosLotfDCuDuMCdJe080/h9xvNrT/7cPT7jkSeZ296C7r7VUZyzYMG+KAEZSDHUEguH2sMxX+750U1SM6pEICkc+ZbGbdhcvjAyTpVf2Xu9v26/XRKJQCoQRKtoYrepvq9xCB1jo1IjLYc3VoEACxEtfRSEFOqPmcVgNuFq2cMtfYRvIXnx8Btrvb/Nyt3T6RKndpMd9lVqTHUITdMBEyFtPWwVNHVgzVDBRIAEnW/7sZAZk++LMIt4R01lGD5YjFgeK5uit/79pdVEHdOkwPQOis8xSFB1LeUJfQkdLYtMr6QdjwVi81GzjYgwICN5ykQEHlTHVm4vPj0tKI0DgJpNC542utW15ks4h0c9GMu1uK6phEs/8A9N1Tns1+k2g7T6ZaT/zyM6+UFU8LUPo1QikE3dxffbh3y56KPk8Q1H+kvso74F6fQyENQTewL8ZynKZCCpYvUB2MGiTFtsLsxpEJ69cIGUe7/CznXSpbt3jzPNf//mz3S5KlfJc/BSqv62CNme0RNAm78XM8rf/6zojXr9VD2sIHZPkO8qU6RVDxCg9V/u+csNj5SyFvwf3a90fnr7gkUTM05flL6Eb+AjixUx6hXUjyCnTonXApzElEMeXK1oHYrWbXsLrV6zWhEOrTFY4t6J4mQwF5C/4X1r9rpnCjDIfCQe0evFCjEO4yqwt2T81dcC+46TpmZ9U9nLPvaxo+t8Wo7njGfY4ag14bZdpXtqEboGBfM24AH3BJnQrUrPleC/TDJXx+s/HjQULr1gzA/gJb2lv+4+QAUFnt9OSJuXuSdXZdV2wIcKV0hhFDLqlMjafhT0U1wgKeN+Enw75WmjWbFTxn3FJZWx1f9NqnCuulkJb92CPTTdbWC9NtTgFnA06LamiQSkK7Wr/W8zbz8p3LBW1wjtfd6tfThi58OiDuA3i5Fu0Q+QYkap++dtfQsQGX2KWui2pUVw7VKA3mP7H8mkco1Cwo2Cyw4kvhIKUWQQAdbbI/feCGj0bDaEAdMu5xtZvBgdptURlujFMymU8lXh26Lug56DU/rSXVk6k3n7n0YslrCqXm4z+9Upsg5yGIeI+txTZtj76oZYR391VnoYVS6rWmW1gvIODbrBDToH3NJl9DcTLiIay3IEOr74Utty+Oh2nyohb/DDKAfItHp1ZDeDWZ7TBIqPzWjEAlSRzByMjt9pk6laAlcG8dOH1gX5EE0xWR03pkR5u7nFBhLZU/XpdFzz7ii93hyUNL048TIODfgRhuOWXPrymIZXw0/gcXtmwCg3HFZ5VLAsNFLMazP1l+TbB4gOthPLiTswfjDwHMkwzPctISbymSaFWK9hOXAgE0PDRJXriBNrCjgcSfSXyC+hGlEIRLiD7bZ8tmx0GV/PhFh55pj3+x9eOqBS0pz1gztW0t9DCPnW5uqkVtWBjf39DcrD8qEuuNh7rA/CQmV07mret0vYfZUd7per8ZmSH7j6r9uvD1g5KlWbpQJEEDhQ6xKFYY0G6KFgjev+8d/8nTHc6vlqzY6dvwF2aZGwGb4in1nWszHIGnkiBUYa3T1K73jnmYtt0WdYoXLa8jRW2On+cYPR9/nxzysJLNzh4yfrjH5sqcpGJqIzHDmbIvTvQOGBBUFTn01M3GwsrMa1Y3dIltT20L3e1d3zWc2vie49OPt8KAtduOilDUpiEc1Qu66H6XuenZ7+gpN9b94LnMATofLWXo+G8yTyKVaUhxngzveIoDlWQI79W/5slEaJIoUS52lJfW2pMjYKs1tKEJNiJSxL4gSxz6st8DaQWxz9YIwID92+5ZyyoLxNBRSFWxJrHebhi//kpzGqAtoyXa0x72yI0K1OiqA5r3ZH/c7YbVoFl82ao4qSXrbX1J1Bi71/iVNOpU9X8ioH9kOto4cYq+v0jjplfqyfjUepM+l3nFWk79r48hxX484a6k1dn/kD/7H1DYQT1rqb9heUQjqIftnAEB+JV/coMi9VWujE16iTAFJdkaum/3utHkD0n0NMRx0w+GzH2K/U7zWgxujlX7LKJo69Hy6pP4fWLoleDwWPPd9X6Lq1VPR+hsPBNtE4ov4eeJnqdBF/+5/215XjfM9d47N0MOQse2wUvubTTgtlp7Dl1uKqDUqSVox2Tt2un9yX0nuMrakll3yDeYbi6Oj47f3hvzXl24UXbI9ch084gviwfDLdHJw+Qr4pqKswqbsNTI1WtyngW2VgfWgKoBxc9NxciAxJl0vJ4iOP/vdF6qhviCYuS56E2kgjl1C/RSvH48mTIW0sins1YRW85+1CIQxq/JFkJVnPfsy/+gH4i9HzW0e4CHd2SOG1S2KS4nKMQRfji7Kd97Oyw/2MWPDcPXI9UmfhUDKjj2fP4+ZrljY6fcG2Sl8RLKVf7cesZf5ywJMX/RdJRVIRS6S9AwvehcfjutMjv4Drc3Vdqpv2DCxIfZvROOkc9l/ehngu3Jj4/LindFAF+swm5vSnYafmo4k0JoJuSuOfSZqEc1QELvJQhTVmePOlzv9rLUbrpPHqpCtfJb4G2QbwT9t6A07ecjWWGJciIvC+Jcok+v9rR12xOvbfJ9FqxcO+IrY/yNpC/n0eLO2tEtIH76jBtuSmrM2bCoPJ5zy2IQSO7LiA31ttkemZaWNgkVc5RCKehl1nCH5kVDT6gvnCX1YWcnESOHKHr1L7CA2cp6YKVyff1f9rBrxgSZfLyx+m4qHi1oaW72t7QdJ6aEvP0Ew8h+5kyb8NbWLpnpg31HiajALAfvc8bBJokgmlbtaO71ZyGV7njXX4FQZkeDhm6J/x1nffT+LL8R+ZhuOKXzacWQOyMe+tH9YMXkfMWLT7s0trVcfKTm2sdxxYqiKYYFrCHlOKNkagxs2LfEz4tAu0uKA+elH+JX56E3jaKSHpx1SxBe+FbSP8Sr/5XfmX0/FdH+1eU66gpEUKgMlWODdZydnEWEAhcMRhuT8idL/fTaIWGrRa4HI/j6KFTX1HSWE1KPPJDDfX46dDT7/j6XtB710eH6lEGrr+tvgEC+nBNU8yKkbpO2evRq9W9bXXHu/FokodhM0ixOxr6udffywjdx+tQus7laG5FNuMVtY9AxCmuTb39FLwxFrcg5TF/nIAzfkQFpnvD+eVVhiDiTygdROsdDiZxidkc9g/u7iv1cP0kD92a+MPRIff9ITDUpNBz/Q9n3zeU57Pm45/79J0yL/u1VHh8eXVTjSsqZaVGjhXMV3u5jnd6Hj399jytoRbluiIeVkXCLxeK947Y+nwMJFbB7MVoOYaAy7/lSh9SzZBSUub5gDbcAYiKTI1/LkVF9bY0feRCTg5cICZ7vqXpvAttIOT3YOtjVwyPo/7QR/RToL+fW4xYlPfzVGnv0bzc0k68jEQkGKo/6Ws1w+PaTu3GKj5lxU2FsAAgTMmo/oIJpwF7EptBm4e/3RExQ/U/0fPc2ctT/QhStep/+mMH5PXT+GDGzP9vOK7QsyBeNluPw3qI3pwQQk8rJNeGXlpnqObO9rtmUvRyd6O/76rH48AEQWjRFMMCdsHh9ZKEEBjvMr0kfnXq0FGkQv0n6xp8jcK7D/os+V/oJSYmtsfCXO0bG/PXd2R1zCC3+U84lqCrb8B3ts52iQ/H46b4/SghATp2h9785GuZaD5fgUq3ldtDgX4Ba3QgW0hPkNtDqQLU1iuuDRs1FJMZIrUDL7t55QvpuLw4twfZPjpdh5gX8EM/4KOsA5cZQtvwIcYSpJHozTu9G+Wj84J4L5YR5zmEw5GyHwQAKp9aUWqHTjUNMSk+2o6nmMvt4dQyS415eqAjPCItRLo3zDwKZp9JIgpUxVuvaK58nvZQM59bXsL7ZMtE+WZEwa+BMLk91ojoPLdQRtpyffr6z+3R6Sg22wRkWAHZWaBz+dBAvGKAsQpyeywzHHROOrNI24W7y5JttDFBNv7JnoaDnTJOAu8MqK8gGG3vmB4I8tFl9K4DyzCwzKV7/TRu//a2uKLzdrzmIOb9L62MznDyQIFmyUtSutJLurnG5iNMkBOtVNxF6xIjGi+Xd2gBxuJye3Rj2gRo/eRm5ys+jUWzyQTDueFQQSiA6Mbtfwji0x5O976/E14GE1+SmS+/d2yfTo2dHDQq/9N7hjkSyRzDe38q16lx2EWuTvueKiHPWvc6/gx5iA2pTN57yjxjVV02roa+G1MVDPH7lux835ZPf4T2+4699/JM4U6IbqZa9+ZGnFRQpObXvvUyircIL+lMQ8Wxcpo6BW/klB+rMMyUSub55QRCNSsLa7cxjCFBdsF7zGLp5qctm+HLhXBIr/KQY3m18/54a+J79yKfbwkB0aRs3KZjXvGQyNMKahmVw9pSkc0mbziy9EuJFH5AAUUYSnu59nd0HiVzXt57wMzYIK3/b4nTOf4NhOOeLojg4i1XOvPltxi4pEkb31zHvLAWkbKzvjo/lX1DhF4NgBAdIoYFOm1ZPDYhJqLDfXXBa8UYyuQZ5mD0okL4StXRrT8x/fGDD1tOFy2dFhaTaVVmVxek+aSsWIn8ZkCxIAKYdOXv7854gPIniN9nPUTcT+P7zwzP1eO6N+klUZWav1+Qp2T4FS8+7NI6pNY9kFa4h0GeAknLKjaA/npN8fJl8DR+6xdkgq2WbLy2S9XrNtLTOnz3SRFLflNvY9ZSbuEdvt9IW4zwF+ght8uN6OWHufrQKsDbujGZNTHG1k+4xHJoMUi4GXsEQI1vW3vhVe/Zi0xULlGk0cwXfKNj9lNFlLHhk/yE29oXjmbQ8dwX3qmZn1kTbWw9ln+3fkcwgE4niE9741nJCO8EAYJA8BCgk+vBo08oEwRuhsCQT+E360TuEQQIAgSB20OAfl65zHeSLtVnPkYe9XhASGmsECBPe2OFNBmHIHBXIwCZpH1cRozyn1y/qwEiwo8ZAref28CsBTDMOmaikoEIAl4IjCS350WCfCQIEATGBIEAOh3ytDcmM0YGIQgQBAgCBIHQQIC4vdCYB8IFQYAgQBAgCIwJAsTtjQnMZBCCAEGAIEAQCA0EiNsLjXkgXBAECAIEAYLAmCAQgC8wCDONY8IzGYQgEDAEiPYGDEpCiCAwThAgT3vjZKIImwQBggBBgCAQCAQC8LR32z/vFAi+CQ2CwOgRIF9gGD2GhAJBYGwQCGBghjztjc2UkVEIAgQBggBBICQQIG4vJKaBMEEQIAgQBAgCY4MAcXtjgzMZhSBAECAIEARCAoHx6fau2/VTlXr7bR1cHhJw34yJCSnUzQQm90IGgQDrHpzSbojVVvaGjHyjZSTA+IyWHdJ/lAgE1u1dd5QkQ+IRXTKNvqLtTvslT3/bfr0mEjMUqTHUoqPu0eVyWHM1MlytTC9pY83T47Aa6GqZUlvS1g+tBRKh5lM1JedoErf5F9ORpVf2MhzcZnfSfMwQwDOlKXHwA/bb9cqpevt16lyJZipWGtBuQwWnNmxLj6PWQCsb3LayusbeDcr/fqte+aC28qKA+MXK9JdEagYnTcoiF5Z8HAzN83TuNpT5WISnrTincdHa76GDpP3YlIBZdH8o0FydJQZT2zVB63Ml2pcqHS5BDRS52RFVD01W1Ax/ILbpi8kErwms28Ngqc1dg+6+hsXt63XFIq0dcyj7bRvTc+zTd3S5B91dO6Zbs1JMLWD8nrbClOf+c/reDvegs3nVlbxnVpd0gi1dazOlPWdV7O0aGOyzrerZ+sz3SzvppQJJRF9fNxoeHZEY9ygN9YMDBzPkHtgZ4DV0RGRIpzuMwBS1+ezgoLNhUfv61TvbRJ7kYlXeBmvc/r7Bga69M09XfHjBg9bT4M51RNKLqyKte2oZRQVwehtrD9XV1n/B4uTqrKywxui3vzwn8Ef8eD4uXV9w2s0Oxfz39FYVF8flmpbcB6bWW7VRy9tUYfpGm3gr7AsaS62/odi8t3D7++yeFNf3VGUm/9TH87Fd+P9Dk+XbcCVimxwUd0shCG4PQSeJiJ8fN7nf2Xf9DgLp6WptuLxs61sZSgklUX7/Z6se6T57vp+6WLV9T3eq8a2MmRJKnmDcWTj/TJnljKf3/e1FX6Ru3ZahlFIRC4zvbp5/otxySrjZvIOikKFDCgF5wpqVczuamy8I1NtzqaOdilf/awQlVWa823hwNWhd8K8p8ZlrBIp6rW3njhrX5RrTXsYle85Yys7M12vjA8+Mq7M0N+/oV94y9tuMmz/f8MYK9KhHXT3Z1DZ5SUYqsqmENdo559sdfcIOQ4Lm6qx4a/95l6tmx07R1vkeRXTn5mE935BkhWOT8t2LQJDcnstRU2m/MTP24e/QUQhZoiZRFibTVnTyUcdYrYmOBPW2VTCxxbCwOXr7FQh82E1aJQonyZTPP6+R4TSesPKFXe036DnrbStJxy39xJ0k8/L/jh6waIvv+/SsM2aWIgKZxI25miewWYKDfjhxQTS4Q+dnHe2uOZr5sEVFl0T51IIY59lPxXtT+h7/19PfYsJRUZkyvaLjXMlCGeYfGvRW6Q1W3BlO14yWQYzJqp8KO/9zb2flHLm6a2kkBM362yr0TKg1TGmw98O2+Wr73gwsTmx6Jb+D5wckpZBAoLelvPakKjHxoXt4diSPZepnWTfn8jFzh9+5hvh5gR1F6lB0jrWLvS32Aq0Sh92Vy7SaSPyM6HL4qYS4fQnTEucRrs5cuS7FWVXXjp48Pe11VZONzUeMVH0d3rF5Th2u6l6wLuNRCa9sLAMoXxWZqHlCFhatrfycEaT/+BaNUmOoafsrr9j+wrWQvfv5MvNXcxUCBBAJcFdvNyzZtGHeFEww/KkVKXJ7ZQ3I299SXv2xatFTD+EbzB9f0OgbyFt/GGM8WJ76RZHogW9ytLa0fiu1Oe5/b2kRPQcKqVI+ZD2dQbbNYeC9KGKPfLjjCDDRu9v8J2Rb0PXbLvNi9pZcrdvX2ucehIihTkFJl5o7BgadllSpXG081jcIUcfyNEW4yth02ZImlaqz6yASCZVHDrZ2d5iXShVp5lYnRJOajUlSSqGzXfJX6XRa0sLV+c1oFNxSZWyFop/L3WfLVijWWCCA+a1NFw4EgQX6wjxD6Aqqw3W2b9nqwbNmdZTa/JFAIpAsHMe4uDZINGmqxdlXp1P/2NLlbDXORR8HBxC30jSLE8KoIPJcY+s3aFhEHw2Hx+m2pEZJ1a/XAUsQFrMdau2p04VT0iRzhxt3FzHDjUgKgUQAZtSHnFCHWV2GiUeqASoRTleBwpYj/fS6YB63pSrCFanbbGhaveYaK6q7w5KmopCi8nbh7jAnSVWp5uY+yA4056ulaDhQAt/Kb0GdwpOMzTA03RKplrvVqELKBjfTpIjyN6wego7FqIzN7kFa2cQMDIBG0voGnGKjsLxnVCuweXopNsgivkDhFY/rbA3YRiDqy15Qr3oOWTp3udvNScwOk1Jk25Cpel1eoMFdNxIErRjfsAWaIG2SMNxAl2WNQkrjgFj1ZyteZDlMgmGbw8HrJTH5OCIEeGv0Y7a3R9HX7G+p/xAcMC6kC2j0NZtTVXgRx+aNE36sWdJDYOVWZepW0JbJjcvZKq5hvNQZ1oC9KqOEnFDUYnMX77hYiniBYBYLsKlmo0ou8F6MPVyGtUPYHTWLSbU4kNvjc3ssSeY/pqxKNZbakNMG2rBUhadZepqMKpVarVIZG86al4YjT4YXFmSd7FLIukOeIpI0KtXSjeh4McM3IqVAIgDK40NOoMPMPW5h5ZZdn06iCmerOQ3vsb5itjhec8187EbbQT92QQ9Xd4nxYTRpQaVI4/E+jNbV8jpzkorWH7TZAj08W05vubi9F8MmzUBTDWzEGEPAmzKFIkahq8P7QW/FFsk32GPTPY5begECppTAUqB7QMvZUnpjiv09XhDExFieWNAGsIVK8faRtlbYpdJcCYfjjLpjCLdH0+XmYiCItul3foXw+pWYVN4mAkLFv82u3s2DFOSkIJRvKNTPPVpnw/mP8DjVA0Kub7189UsnE88U9OErJ+PNLCdVvUHpFXWBiGmlLvMP03e9Y0zAu07JdFXc5JONp5kQieez5uNfQPAz8mFVnPTjxhNX6GE8jtbj3ZGzHokQjOpblEQkGBs/KXza/X7WtIUQdZFAxCm5+RdPZxRH6XcXpVEHfvmSuSczLw2yiLd2SSPv/S60lEy7N/LWOpBWoYeAfJ5hS070kV3WC8Py5s8uvvnSCSFQr0tQKQpp4HesJPOyjYn1vzL8rjt57bJo1FOuWZl8PHPWGmvKa9lMvNGLIP1RHqe6n71xT3T8LMr+h8MoAOut2Gwb+A/hzYKccy8e3pnibRuQHS9+cKtpKV9//aP3La6sTdkJEZBdn5lRwC8IAoJ0kQOtq/+DygMdkNXLRG9gT0o0dVw9v7/isPcr0MDhxkP2hQ1L0radvupDjavgyF64E7YphJdjiRTuPAJBc3uUb/5DIl+2OuvGntdeRV8kAG/0yubj8/W5xhcSu4tyX8VpPo/jg6q2yckrE7sPFJfCC+Lw9rNplxUtAtHDVMJwWxZOXVjilRDzOCoyk39DbX3Pgl5goa8H0gry5ltNr6DkWW9b6Tbzicf0mY9J5CsLCh+zbt6E3hPrbyndWHZi/prMeDpFMcQ8eTor059cWOp69uU1i6I+bmh1UtQDaW9kSc/fSF638tGEtcb4z5smL3/x2fv89IeFKeWLotd+ZUWrDGRx/rMN5fbINW4RgO8SxCbjhBNkfKurT1L3y/+ZEUb+vbVZ/2DmGnTmFZMVqRba3+BLIk9entJdtb20pR99taZkl/UyRU0arhLnlacuwy8hI8vKpHqlqzKeBQeDLtDDdSpqdhb9LYJhGMA9qPC4tWbLqm5dVlFL7zkfxabbQEbStlG/t+NojmoSOKVZOU2Xm3JmhaHve1yxG4vaN2xIY1LpuP09s9TJrv3bdrbAd4FA8I1lTV4JUV/QIi5WFP7HZRwgYTaz8CxFHTJ5vTaLyNOebyV1xifJ50tWDmgHzTZvCV4WQPI/FBDgHpRuqyDkXNARB4jYe2z+g4sRQUN3X+s+nZqO9atS83FCb9DZWp4N+Qx0MfF6HJrAnxUrVqildCrOX6W7y5afqqC7Mnkyjh3hWLgF/GHClQNdda8zIzJJRNzL3VXHMCJVpJpxYlIkkU9uj6fDZulAxHZzZiFOMUL2ZqMOBy2BOg4jCYKcUNXXWq5j5YZAEMrtsUnHLrNaGHHlZCKFgCIAGuFDb8RBTl4ZKIpO1CFSTNqJn2tQLTrz52UX5lQFtgHF0lS1HPcCBfatpFNWuCWbEccifNOany1OqjUbF+fzqW5fBpBGsvrGlVEocrYi9dcHyjfQqskrNh7G3XXyJJ+f46OOKISo8pe6w8kO2vy8SGF6XqA1OSAHT6GEpWBe6GwcpPpOeqcSUSOEUqbxiDi34UUWkqb4Cp5t3hxeenTyd3QIsIs4+j86SoNh0F9I7hbLsNPjWo6MAtedFAgCdwoBUONxor3w2ueTL1BlzrIl3kH8O4WdaNwrdv3zhbF7PjAE4duBooHIh7sXgQA6neAFOe/e6SGSEwQCgIDg1/VdXpkAACAASURBVFU8jrp9dneyelZI+jz4/YeyHPu8vNWPsnmEAEhPSBAEgofACHe7AXS8wZONUCYI3ByB0H7ag4zvjjx9Qc15yP7K1dm797+5cky+An9zzMhdgsCdQSCAToe4vTszhWTUUEAgtN1eKCBEeCAIhAoCAXR7JMgZKpNK+CAIEAQIAgSBMUCAuL0xAJkMQRAIbQQCfLDOhDt4yGf2EGDB/ZVxnyFJReAQIG4vcFgSShMBAThdKFp0vBTvEm5+8BB/mpVMk4u/jhl8OEL/4CH0Yg5Ep8LEPgJ/6TAWfodWdIYFxusmMPocReQo06ZXeP9kKD9fQvxvQlbYjC6jiZZNpPMCfUW8u2uI27u7559If3sIDH3wUG9tnvZwXG0P/ELd3ulnKk5c9ODDGsXL/e0NNnzrUD94iPJ8HfuLS070M2yCC/9wUm2ceeMS5sv1gnt+YGTv+jmKyN1TtT4508fzsT34/zchyzfiSo8aGr8eqM6Qj8EMcmOSwhgiQNzeGIJNhpogCPg5eMgDJ3hQc9Rz5ehXuA7WH+R/FSioMof4wUNwkkl8vJdvg1P61v7q0ipzATqQz/saGsahjiKKir5UMKznG5qsNwPk892AAHF7d8MsExkDi4DvD+9Rknitfv7xzbrSNi5wd/ODh1Asjjv3p9PfGUMBPHho5lXfA79EDATp4CFf2K/Ys9Nzjp5vMj0zLSxSY0C/Uyi8/MBI3x7yKCKl9t2arVRBXJIJ/QTaEJcPWYiXLpOh076gi6e3MtcA553BxXxX8jgcWo8e0/kZtF7hAYSD0PCZYjdO730hFgVwlT+6hZNvh+CMVN8RBEb2Ky9CVkdGgfQiCNxxBECNfXiAH9xiThcSKDn9I178LfaH98S9mZ/K4351j/txsmEOpgn6wUPoiACvA7+a3egHyYJ/8BBCiP8ZNoGkcMrYe9nqKPZ0BQGS3jDCrSGOIuJ+w48+3oE+6oH7oTUBSVT0IsscsdKNfk0wSY4PfKDPhGHOhMK/D8fOIA1g9nv06Wi2g61wtEQ4JU8yt7txd+Yn6LxGJB8DioDAHn3N9vZGGmH/AHJwe/yS1gSBwCEwhNuDcxYFZ8jxyyj/E5Q3YwH9CuVsRVp5l1u4aAp+Z5I+p4Y/mIZbbWmqgjOG+MMWBJVC26MPgBzm4KGv/B34ZWxF5+0F++AhoURwYCECBJ81SNdjwYfyGDyM4LHgFDB/RxFxbg/RQyduotM3hb9tS48j/MuTRT/1GZ5q6YFDvhQJakWCsbnZnKRAnoz30/QMeh0ChcghpaAP1BxEJ5exP/YrHImUA4yAUPFHSZoEOYVgkjJBYNQIoCO3XoquqrBe8D0xy4u434NpBGcM8c0FlbwvBNu/lYOHuKMeeHJsSchAEA4eYocZyX8eRtetHUUkT8ivti/6y5LnC0/fBHieLORgVydbX386fX9UzptFq6gDua+au1Nu4yfWJk+7Nxx+jg3+TRuJgKTPnUOAuL07hz0ZeeIggL+ppqHTSzjzJ50mn8oa1zAH0wT74CG/B35p471/QDMIBw95z+89Dy19Lqm77DXT8X5IqaGjxw5HZaY8xf/SqD8Yp3Te8lFE2PMlTzoDv+YmuvyRnSqh5CveyI0+fzlxXca8hOzs+JNnJvMnNwn704dAldEnpgHf9qo24J9c4xcB1jLHrwSEc4LAnUdAEvFszu+eOLJoGhxDF5l44L7CY29l8CfP3bekYN87cS3aGbKwSY9v9qyu3buOO/4R8S5P231MT5kXTQuTzTB8fD+8Djpk5crC2tW45aRpi448UfnWyzPxIUTwTYYf/QgdG4l6oksSvyxt8QvMWY8RSwsO/nvc6ZdmTAqbNKPA86M9e1/2e1RCZILxnV3T/5Cpe38wRePOi5s0KbEoMisv5SFMEv3x9EWt/dt/syEmNurbaHios6qwQWPeMI9jgOsiLEhmvvzesaK4hh9MgxNkESeV9aLjan1hLF525l3z0Qdzt/+ERwwdjflMd1F+6d8HhMRxGXm+Y+YU8SnNvmTp2YH3YH+cmYfPCIStydqXjdlD8I8mqIgGMGxSwraz3n7Vhw1SEdIIkN/kDOnpIcwFFQF4Cw9W8KAOESDi5OChAAFJyIxbBMBaOd5HabbkaY9DkhQIAqGEADl4KJRmg/AykRAY4W43gI53IqFJZBlfCIT20x45eGh8aRPhNrgIBNDpELcX3Kki1EMZgdB2e6GMHOGNIDDWCATQ7ZEg51hPHhmPIEAQIAgQBO4gAsTt3UHwydAEAYIAQYAgMNYIELc31oiT8QgCBAGCAEHgDiJA3N4dBJ8MTRAgCBAECAJjjQBxe2ONOBmPIEAQIAgQBO4gApNGP7bwBZvRUyMUCAJjiQDR3rFEm4xFEAgFBALg9kb5hflQQIHwcHciQL7AcHfOO5F6PCIQwB0qCXKORwUgPBMECAIEAYLACBEgbm+EwJFuBAGCAEGAIDAeESBubzzOGuGZIEAQIAgQBEaIAHF7IwSOdCMIEAQIAgSB8YjA+HR71+36qUq9fYKc9Yikmaq3Xx+P+kN4nhAITCyDwlMCRzUpR2tV/VZ97KrKXs+EmGMiBI9AYN3edUdJMrxvgy6ZRl8RUmcQuzpLNpU5rlPoPBfEIGcSHketQROJqsJitSUtrC91Oay5GtwyTJle0tbLY3Z7pXMlmqkybeWI+9/eaKT1aBGA+YrWlJzjyfAuAU0l1hPQbkOFj0rwigS3rY6xWCxhXVY+qK28yHNLXaxMf0m0UgsOMBI0G0XR47AaaMuI1BhqhXJ6OstWmVoEgsOC8KP0yk5BDRrX/z5vaLI+vOJ1RpYuEtOn0a1XeDp3G8oEM870vNZWvM2+6IfL4Ljg/rYKPS2yTKktaesHgTz9bfv1zLrhjcOtD01a3hEEAuv2sAhqc9egu69hcft6XXHbtTsile+gns496/Na3aCtX8f+4pLTplMwbTwtppQs6/QdXW53X3NGT96/fb/kY6TUbYUpz/3n9L0d7kFn86orec+sLukc2ZHKjxoavx6ozpBTyFY5X+vLIakZDwhMUZvPDg46Gxa1r1+9s020nF+syttgjdvfNzjQtXfm6YoPL3iCP+NwqPqqSOueWt6x9DbWHqqrrf+CBdPVWVlhjdFv93+cOtvqNv57eqs2aq1P1Pa53V07pp+uO3GBs4srHxSXWQqLq0SPR5erMpdn+ng+nwFvQtanLXWP0lA/OHAQnV/vgK3I6CIlno9L1xechqXB6+p9f3vxg1tNSyMo8H+69e2LG/rcg322VT2Fq4vbPP22jek5drRuDCIcrFkpIn/vRYt8DC0EguD2kICSiPj5cZP7nX2hEblDmr31KDZPiTI+PkLCTgIYW3FR97Ktb2UoJZKIhNx3C588UVZ9ynOxavue7lTjWxkzJZQ8wbizcP6ZMssZ0SrHkiD/7z4E5AlrVs7taG6+IFBvz6WOdipe/a8RlFSZ8W7jwdVKTsuCCNCU+Mw180+UW07R+8trbTt31Lgu15j2Mi7Zc8ZSdma+XhsfMGb+8VlHFxWfMDdCIlGuPtj4boZSSsvn6awq3P8J5Tpk8toPKCIubf7+cJ5vSLJBBA+RdnWW5uYd/cpnlCt2Y1H7hg1p4FmpKfPy/zbQaEyAdSMiYY12TkdDa1dXa8Nlet2gJMrv/2zVI91nz7OBIh9ipCLEEAiS23M5airtN2bGPvwdikJBdlmiJlEWJtNWdPKRgVitiY4E9bZVMEGTsLA5evsVyuOwm7RKFE6SKZ9/XiPDaTxh5Qu72m/QQPa2laTjlv7jTrjRFXv2arN7Bvt8J5wBZGyuuU/PR8oNl1SZ+FRMd8enzu6O9htzNU/I6baShxMXRIvV2tPfYsJRD5ky/R3rm8tkSoMdhz56K3MNIAJcTHDpOMSh0H7U8XZWzpGru5ZGQpmPmYSFQccv3dSN03tfiEUSK39U6eC2z/Tw5G+oIdDbUl57UpWY+NA9PGeSxzL1s6ybc/l4uP8ZhyhZgR2mGEX6IhM1T8jCorWVnQ57gVaJQ+rKZVpNJH6AgWNmfSshtlbCtMR5hKszV65LcVbVtaM9mae9rmqysfmIkaqvw47Qc+pwVfeCdRmPSniV88vA54wg/ce3aJQaQ03bXzn1rhCGMcEHIEdrNen4dADd9dopS/nRmI115cu7i8QPfNE/fLf+59TmpKQtx4d2DD5kPR+XLIxW6q24y8VK/SbWvtJlsmW/Lf4RToefK8na3MQYlc8yQlE32ne9gFAFI/WSgubZ02//+TLzV3MVgnnEd5ALb9CYN8zz3i30t5RXO5K0i2bMy/87/biJ2vd9etYZM0sRQVMlf0MfAfiNlRFcQrkE3b/tMi9mb8nVun2tEBaAuABEFKVLzR0Dg05LqlSuNh7rG4TIQHmaIlxlbLpsSZNK1dl1EC2AyiMHW7s7zEulijRzqxOiSc3GJCml0Nku+at0Oi1p4er8ZjQKbqkytkJRdLn7bNkKRbat9U01tdjc9S2+iVgK19m+xbzhAtuny4yanT2kC4dBgU36wnKh4C13IQrSVIuzr06n/rHl7w1GVUyqpXvQ3W5OkqP6QTfwJkX8cGMhInisbktqlFT9el3XwCAExGyHmizrwil5krndjbuL+OEGJIUgIAC66kP1rFkdzuow959WBv4WKGw50k+vC2ZzW6oiXJG6zYYm12vGsaK6OyxpKgoUY8CmC6ekSWYIo7s7zElSVaq5uQ+yA835aikFOjDgr/JbsKDwJGMzDE23nGts/cbdalRJ0yxOuEmr3DetxrlYCUHTYlTGZvcgrXJDMjD4LTCj0FneM6oV2DzF6o1kEV3urrr8VBWlSM23IbNFFzZtpMNcAdXyhoPtPYq2fTSaPy33IsvK5cb4RCH7QoIgiRB4NAUwWFTA5iZaRjq4ZQd3F5oz4gxdYLyKx3W2BrM6Cseu6Vr422PTJSBZuApUQJgghfBeZOgVZo3FByVRb/Jh1Ahw1giFURIbYf8hOOC1fLCv2ZyqwlaN1QUn/FizpHmmHUOmbgVtmZwgnK3iGtogbWdYA/aqjBJyQvGOjaXGaHbPIO3PvN0eWiAogT9jLO1yk1ElF1gCt46wZOlFR5VqLKXtHtaopeGplh5YgBQJakWCsbnZnKTAluPj9tC6gFYrjhYSES1bYGXe/HBtSCEYCPizH/Bt4kWQ0UDYA/nc8s+Ts9WcplDAOvgVs9HxmnH6Y1MNrNxYx7gdEk2OVpi6S4wP86kUaTym4G5Gu67yOnOSCvsG7ITC0yxnyxlNG4YBcE/IjSgUMQpdHd7rYZ/Kq7dfOd19reZUxew0CzhurLdCHYaNJtqMChYEoNF3jHar4FX8uj08jIAs2gWCRGdbjQkKdYIC3N1Zc1I42kBjftG+Fdk1cnviRQMRQjBi3w87BMBHaM54HOTbHsfyek8rWgQY/umWgr9o1zKbRQnqMVDMRkTQjBSDgIBQ8UdJPkhBTgqC4IZC/dyjdTac/wiPUz0g5PrWy1e/dDLxTEEfvnIy3sxyINQblMJ4xRX7xm3ncip2LrlP0FlY/M7DqhnSkx+eYJLwLkdza3eM6pHIGFXc5JONp5nXLz2fNR//QhzEgESgsfGTwqfd72dNW7il5drMjNXJ1tefTt8flfNm0SrqQO6r5u6UvNWPegdJhIMLy5On3RsObeHfNGE1KY9DBOTzDFtyoo/ssl4Yjnl5nOp+nzbffOn0jXILKkVPG183Gh6lJPOyjYn1vzL8rjt57bJoRFCuWZl8PHPWGmvKa9nzpvgMwVUIGbgnOn4WZf/DYRRj91Jvv68hSyLm/bQwJ7pql+1C/9F9B85SrqrMyElhYd99ynSSOl+z9zD3Wg07XMSC/EP7FjW8+Py2Zl+bZhsJyEoezVj3uPUXz6UX/0vO7n9fRVXlvlTWnfnK6plMNpHtMuT/yZH3oid3ydR7IyeLG0F4syDn3IuHd6b4RCYhr//HuK25S7g3ADwtW2LZ12UlM1NfXNBrsbbirK7HUanL/MP0Xe8YE5h8iHgU8ilEEQia26N88x8S+bLVWTf2vPYqeukZNOaVzcfn63ONLyR2F+W+itN8HscHVW2Tk1cmdh8oLoUXxOGdZtMuK1oEooephOG2LJy6sIR/pQ3eMLYX6He1HM2JA1sMm5HTRB3JmREpejedksjTNhXOP775lUqHB7Imezaa6fz/A2kFeZDAeAW9gdbbVrrNfOIxfeZjvA/zdFamP7mw1PXsy2sWRX3c0Oqk5CveyI0+fzlxXca8hOzs+JNnJq/KeJazHOHsw5KU8kXRa7+yovUF8jf/2Qa5PXKNdwTQd7ySt7SAh4C8b3X1Sep++T8zMsm/tzbrH8yMg+a8YrLOX5MZ/11WYok8eXlKd9X2UvjyDHxtpmSX9TJFTRquEmeXpy7DLxgjy8qkeqW8yj2Q9sY6FTU7a+330Ho8DAM0I+Fxa82WVd26rKKW3nPe6s3ySlFX7PpEDZ2lQ4mu09L7ZT0Vb+2//AzKYjAXPHtR/Gs1fF/YDSPPl0z9l49j9yUrn4rMc0Ou9PLl5NUZjy7INj5+sum7q15M8nFUMABeH0TLiFM4rHcZ3sPU7+04mqNCS8OsnKbLTTmzwjQlDrRoFG1u/8EbaYJduuThpxf9s3XXvhZI3ns6a/Y13EhWz70HFqeKzOTfUFvfs6AX38g1rhBgNfX2/gtFFPTEMQ32Hpv/4KJ80BAiGPt0anpnpErNxwm9QWdreTbkM9AlpfMWOEyEPytWrFBL6bi8v0p3ly0/lX5Xhc2WcewMdLW2c9m5IYKcqLG7671sjiWUX6Gvga661xmumEQjcwP/4+9y47o7SjPzIY8CV48t+3UctIQyJz4Ch8lo9LWW61iJ1fnHILfH3BAHhfBI5E/wEAAV8yHuHfJi8l4o0etzS9SZVwnI/+BEnd8ZlzKZPz52ClToyB62AcXSVLUcq4PfSjp9iFuyqSzMxTet+dkCxwMkm42L8/lUN69y/hjgmKGDeKm/PlC+gVZQTr05WQX2AqTMrY73IVEuDrrQ2UpIV5/8OyT7BUkEhghkQDLzUYhScHmTRTFSuCB9kJ1PZwT66rJ1B+mEqk+QE1p6LSMdEORkrMpn4txdJ08y9KGjYFpRWDVBZ+tBIwsvnLJBCxJFo/ffgnUMV8MfXzGFFEh51AiwQKP/oyQWBv2F5G6xDHskruXIKHDdSYEgcKcQADUeJ9oLr0M/+QJV5ixbIgzi3yncJui48Kj3amLhjEMfGMjjWwhOcQCdTvCCnCGIG2GJIDB+EBD8uorHUbfP7k5WzyI+L4jz52krzmlclJdGfF4QQQ4N0iPc7QbQ8YYGDoSLuxGB0H7ag7zvjjx9Qc15SITJ1dm797+5cky+An83agKROfQRCKDTIW4v9KebcBgsBELb7QVLakKXIDAeEQig2yNBzvGoAIRnggBBgCBAEBghAsTtjRA40o0gQBAgCBAExiMCxO2Nx1kjPBMECAIEAYLACBEgbm+EwJFuBAGCAEGAIDAeESBubzzOGuGZIEAQIAgQBEaIwKQR9hN0E75gI6gmRYLAOECAaO84mCTCIkEgoAgEwO2Nk9+5CChshNiEQIB8gWFCTCMR4q5AIIA7VBLkvCs0hghJECAIEAQIAjQCxO0RTSAIEAQIAgSBuwgB4vbuoskmohIECAIEAYLA+HR71+36qUq9vX9Czd+EFGpCzdDEFSbguodOH1xVyZzePFFxg2MxlFP1dnzi7ESVcWLKFVi3d91RkgyJR3TJNPqKtlDyS67Okk1lDlBROE52v14TibmM1Zrw+bYwuXCkrUEjw6wrtSVtcKQkvjyOWgPXuAQOAh3ZhZGRpU/0hWBk4IRUr3MlmmjRWcS8S4BbU7HagHYbKuAYZPHFqwrcZtVK3CTQn8C7KNmDvxnaFyvTXxKpmeAkh0APD6eu7jaUnfMhe62teJt90Q+XydnjV/uPb9Ek6u1XfFoORQGO281lrFGTiw9kZrt6Pi5Z9Zs2xjpxpaNMm14BJ1eLLn7WBNW8jUdqDOiw65tdjhJNWLS28uLN2pB74xOBwLo9jAE6btHd17C4fb2uuO1aiMDi6dyzPq8VTjH3dJZ+/5lCp/Y/4dhQd9dGye8zkrOt/dS1NlPac1bF3q4BOBd2Vc/WZ75fig5q97SYUrKs03d0ud19zRk9ef/2/ZKPb24sQ8h7j9JQPzhwMAMWAjAnskUcAqaQr56iNp+FE00bFrWvX71TtPhSF6vyNljj9vcNDnTtnXm64sMLHrTXCe5URyS9uCrSuqcW6Sp99TbWHqqrrf+C/ezqrKywxui3vzyHdUHsndH/93xcur7gNBiV19X7/vbiB7ealjLHoMOB8jr9gbhNBUvu82pIDUmhNk97OK62B86r3Tv9TMWJi6x8nv4Pdpst5u1VQm/k7qlan5zp4/l8Buut2qi1PlHb53Z37Zh+uu7EBZ8z3oVdlIbGwS+qMx6gKNjuzJlosSWhpHdfOQhuD4EoiYifHze539kXGgEAZF1bjyIlv3HBVnd0rr7QkAA2KVFmvLV12WWLtfWL97cXfZG6dVuGUkpFLDC+u3n+iXLLqa97q4qLupdtfStDKZFEJOS+W/jkibLqU6wJ3n3aQiSmEZAnrFk5t6O5+YJAvT2XOtqpePW/RlBSZca7jQdXj8khQVPiM9dgXaX3l9fadu6ocV2uMe1lXLLnjKXszHy9Nj7wTs/VWZqbd/QrH524YjcWtW/YkMY86kGzHN2lFywFrBfkOwxFgfJ8BljOUc+VU5KZGQfrD2awR+B5zlUU/sd5SiAgQy0q+lLBcJ7vH591dFHxCXMjJBLl6oON7yJjJ9ddiUCQ3J7LUVNpvzEz9uHvUBSKgMsSNYmyMJm2otNPgLG3rYIJL4aFwa7qCsQb7Satko43Pv+8RobTeMLKF3a136Cnq7etJB239B93wo2u2LNXm90zFENPsBvMzDVHM5/ZjUqUTy2IcZ799DLYiWvu0/MZA5YqE5+K6e74lI1/InooeoPjpcofVVgLF8ow/1DfW6U3wEMkXBcrtdGyhSUfW/VT0c7/XEnW5qaru5ZGQtlL8MsUdbV9bwYWJza9kt/BIzLkCiEEelvKa0+qEhMfEhz7KnksUz/Lujm3hAt+Ot7OyjnCTHV/W4WeC6EX2B2wBRPaxd4We4FWiUPsymVaTSR+RoTz9nwrIURfwrTEeYSrM1euS3FW1bWjzZinva5qsrH5iJGqrzuFHKHn1OGq7gXrMh6V+DKAwoCRiZonZCiU9zmDLtJnpcZQ0/ZXE2ZXpvSNH6KmcBD5z5eZv5qrECCASXg6qwobNOYN87Cfxc1ybFebtiROmyQThSuHpABkJPFa/fzjm3WlXK4B0wZxqsuOPmiseye1e4/4gU+pfbdmK1UQl2RqEZon3Y35i7cIVpOOT1VA4mOZTGmwoy6e3spcAx2GpcPCv/3NS+gFgiuOkpycpk92LX1Sb+8V5EdgVar7EvbR7bteQBM3FFAiDsiHUEEAvmw+gkvIvaD7t13mxewtuVq3r7XPPQhBQ52Cki41dwwMOi2pUrnaeAwHGMvTFOEqY9NlS5pUqs6u64Km7q4jB1u7O8xLpYo0c6sToknNxiQppdDZLvmrdDotaeHq/GY0Cm6pMrZCUXS5+2zZCkW2rfVNNbXY3PWtu8OcJFWlmpsxD+9lq6MUuroemy48XGf7lut51qyOUpubgHNRdZeZJsK1+xY6StMszks23dI0y8lm41xpqsU5OIC4RfVuLPJcY+s3qCVNC4igghuYFwneVK4Lp6RJ5g437i4amBuQFAKJAOiqDzmY+nBWh7n/oIGgL/wtUNhypJ9e10CXbVuqIlyRus0G0fJBZA54GrstqVFSWlHdHZY0FYUUlbcLgU5CLD1fLaWgFygBq6h85bdgQeFJxmYYmq5EquVuNaqQssHNNCmi/E0ro4cwbozK2Owe9MfAAGgkrW/AKZQVOst7RrUCmyfiDWlyX51O/WMLkkV8Qb3icZ2tAZsJRH25CywpIcnczlihu92cFKVINaN1wN1Vl62WgiUia4VVYSgKLCl3ly0/VUGpUvPx0oCqsRTIQLgCbsxZJcaWwZmWCM2a6AIu8lNVlCI134YWnEF3s1EVk2rpHkSsyrHxYsMEGBE+3LzPRgpAL1/Z79FLle2gzcKubHgG6cai4ciHACLAWaM/s729cXzN/pb6D8EBdnsotwdq3WxOVeFFHJs3TvixZkkPQatXpm4FbZncuJyt4hpGfc+wBuxVGSXkhMKOjSOECox19QxytjFIr01sfAPbIVo4hH0ZYzgHywdFi4OJsusLY9SY/jGjem6q8R28zEEmwpwUnmbpaTKqVGq1SmVsOGteGo4MFS8stCdj3J5YTKCFJI1CFgjG6MUPHp38CTgC/uyH3vEIlnJ+AfW55Z8hZ6s5TaFYY+n6inF7aLlE/olpznzsRttBP3aB7CVcV3eJ8WF0J0GlSOPDUa6RVtfyOnOSitYftECDHp4tZ8b1y0BTDWzEcKqS1r1whSIGtoDYUWCfqko1ltLOwUtO8G2P45begCC95RwbdEJG5yU47RuGpOA1El5GZivSysHTYKMQGgi4oh7Unjdt+IC2v2gr3FPHOi1vkmjH0GpOVcxOs4Bdoi1meKqlB3GeoFYkGJubzUkK5LlF8w5joU023lVwBNnNAVSgKZAzYHL3SSGgCAgVf5SEgxTkpKiIBEOhfu7ROhvOf4THqSA1PJLr6pdOJp4p6M1XTsabWQ6EeoNSGHW5Yt+47VxOxU5RLl2qXLKx2jHg7oLHzcd1ZRuXQKz/YVWc9OPGE8ybZh5H6/HuyFmPRD2smiE9+eEJ5j1sl6O5tTtG9UiEIE8SsSC/sbHw6X+8nzVHs+U4ijglN//i6YziKP3uojTqwC9fMvdk5qWxqQmBCP6L0sh7vwt3JNPujfTfgNSGa1wwDQAAIABJREFUPgLyeYYtOdFHdlkvDMurP7v45kun76sWgkpRSOPrRsOjlGRetjGx/leG33Unr10WjQaVa1YmH8+ctcaa8lr2vClDsyGPU93P3r0nOn4WZf/DYRSAhUy2sfGTwqfd72dNW7ilRfjOKgQnC3LOvXh4ZwrzxgrbH+L5Vdv/GLc1FwyKr/NTugkFn9ZoGXkpuqrCeuHiB/v+2AFZvcwYyH5MesrUQX2yf++fhZzhzvKE/Gr7or8seb7wtO+6wZCXRMz7aWFOdNUu2wVKOjNjdbL19afT90flvFm0ijqQ+6q5OyVv9aM3l4FjdHLkvSg4IJl6b+RkrpIUQhyBoLk9yjf/IZEvW511Y89rr6JXhz2Oylc2H5+vzzW+kNhdlPsqfuHb4/igqm1y8srE7gPFpZAjgReOTbusaBGIHqYShtuycOrCEkFCDFmXflfL0Zy4SWAoM3KaqCM5MyKZd9PhJZe1v7q0ysy8XSZfWVD4mHXzpkqw+f6W0o1lJ+avyYyfKk/bVAg5hlcqHR7IqezZaPZ6O8DlqPxR7MI9nmd/8uKiiKaGj/qoB9LeyJKev5G8buWjCWuN8Z83TV7+4rP3+VMCLJFI8P/rrxmpGycIoG+qJWMP4elvqa4+Sd0v/2eGdfn31mb9o+i1X6EX8eG1xldMVqRdaH+DL4k8eXlKd9X2Uvh6DLy4X7LLClneScNVwigmzdRlJZ3IS4FlZVK90lUZzzIuB/RwnYqanbX2e3IYYxgGaDbC49aaLau6dVlFLb3nKtOfXFjqevblNYuiPm5oddIt0N9+20b93o6jOSpkVLNymi435cwK05Q4ULavaHP7D95IE+xvH1qkTfq86LXfoXwbFrwmKmXFIx8OQYEbBEgZYjV0lg4vI9JpET01hfuv8OHTQRQromp27PTzrjj2fMmTzqB1Q3hdsesTYW+KMu79LeXVp6X3y6dCWb7ijdzo85cT12XMS8jOjj95ZjIPo7A7PU1l9PKF3j+oaoXcHrnGJQLcg9JtFYSiCjoKc3sUm/+g4zN04gzCC/t0amSJFB+1d7aWQ9Qf10npvAUOE6EKqWLFCkgI4MyKv0omAYCbql+vEyUhBrpa2/nQvnckZLEKR0545uncAz0onY3A99xdkP9jGcYZQb4LxDa4u2x6EiUJMgtxihGyNxt1OGgJXVDIRBTkhDqx4Mcgt8emB0TcCgck5UAiALPtQ847cMfkvZjcHmR8BfFPUeeBrrrXGTUG3UaqwuX2INjeWq6jb0rZzJ+XXUDYDduAYmmqWo41hY7FeVUKQvScyiE2vmnNz0bpc+6CsNvifD7V7csAH8Rjc3sgI0qPzVak/vpA+QaGXbFZubtOnqSTc2ggAVYoN5bARB05HqDgM+6QFIS9eGOkKJTmb7fpZuOEqKARnY2DDMLfvTPuuBEsF9lGcW6Pt1ZYWIQ23lGamQ8ZULh6bNmvo5Q8XDw+ICbO7aHoKLd8wTsKtZDbo21aBAXqTK7AI4DWZvYaJfUw6M+Suo3/sNPjWo+MAtedFAgCdwoBUONxor3w2ueTL1BlzrIlwiD+ncLNZ1x4Pns1sXDGoQ8MtxzP96FBKggCN0UggE4neEHOm0pAbhIECAI3R0Dw6yoeR90+uztZPSskfR68/N9WnNO46DZy2DeXnNwlCAQXgRHudgPoeIMrH6FOEBgagdB+2oPv7e3I0xfUnIcklVydvXv/myvH5CvwQ+NF7hAE7hwCAXQ6xO3duWkkI99pBELb7d1pdMj4BIFQQiCAbo8EOUNpYgkvBAGCAEGAIBBkBIjbCzLAhDxBgCBAECAIhBICxO2F0mwQXggCBAGCAEEgyAgQtxdkgAl5ggBBgCBAEAglBIjbC6XZILwQBAgCBAGCQJARmDR6+sIXbEZPjVAgCIwlAkR7xxJtMhZBIBQQCIDbGye/cxEKaBMeQgsB8gWG0JoPwg1BYGgEArhDJUHOoWEmdwgCBAGCAEFgwiFA3N6Em1IiEEGAIEAQIAgMjQBxe0NjQ+4QBAgCBAGCwIRDgLi9CTelRCCCAEGAIEAQGBqB8en2rtv1U5V6OzowctQXHD6p0VZeHDUdQoAgMG4RCKRBAQj4nFhtpc/R5+MWH8L4xEIgsG7vuqMkGd63QZdMo69oC4hfCgzgno9LDHsdPrQ8bWU59ifWLoumqN62CoNGxjBvwKe9gwH3VqbTdejGVL39OkcCznNPjtVb/ckIZ2Tn0qRkmlx0pjZ3ARurftPm4T5TlKNMm14Bx82LLr/LkKNEg7lDfwDe4qo2OLQaXedKNFNlZJURITjiDwBmtKbkHN+fmwse/0iNfj8LPtdw6EnnmgS8AEe6Kx8Ub9ouVqa/VNkr0CfBAUYBH9/TudtQJsCKHoA+hwgd7O7pb9uv10RitY3UGGpZPb9YqY3mdFlkVf3Ht2gS9fYrvqx6HLUGmpRMw5on08rTWbbK1CKQ+VyJ9qVKod2hhnBmoVI0FqpEtsNyAtP628o22lnjpUyWLkIStSfXREAgsG4PI6I2d8ExxA2L29frituuhQZIrs7S3LzTAz7MXKza/se4rblLIsAmTOlr6qfv7XAPDnTtVVifSzMh5v/xWcfnMUb65OXBwa+5Uz5djsqfZR6INRcsjfAhSvXW5mkPx9X2wFnVe6efqThxkTVIT/8Hu80W8/Yq4cOlu6dqfXKmj+fzJYtqFpu7voVD3fuO6SL/uuWpJ1+1I8/3qKHx64HqDPoMeP/9/NeCzc8J0EOz/wEmXC3Gv++Pi9p/ubpYtHvxN+lo6fRZZwMKSUTSi6sirXtqO1kNo3obaw/V1dZ/wQ7j6qyssMbot788R8JWBey/5+PS9QWn3V70PL1VxcVxuaYl91H9to3pOfbpO7rcg+6uHdOtWSm0c/Jc6mh/0Nj6DXz3CS7eqjydlTr9gbhNBdDX+7pYlbfBGre/D5nnzNMVH17gRKaufFBcZiksrhI6+56qzOSf+ng+b6L48xS1+Szio+9PusgTm59Kwk73HqWhfnDgYIb8dmEL/qT7FYJU3g4CQXB7aHhJRPz8uMn9zj7+4eh2uApwW0/nnvV5NsEzF00fQjFFm9t/8EbaA+Deuj788HKq8a0MOB1aqkzTrVI5z37aR1HdzQ3/N0413Uv3geBaXfcqi3FJhNcdRNnzWUc7NUc9V05JZmYcrD+IaOLLc66i8D/OU5drTHvFS2ZU9KWCW/Z8QEoSMS8j/2CNOaYmx2vxpQcif4OKQETCGu2cjobWC4JRhpx0QZsgFKfEZ66Zf6LccoreX15r27mjxiVQMM8ZS9mZ+XptvB89HSU7eCt59CtvKv024+bPN7yxAjZhnq7WhsvLtr6VAccESpTf/9mqR7rPnkfRkQutDd0Pqh7+jrgvEMzRXXrB4ncriTwlFa/+1wgwz4x3Gw+u5o4e9HRWFe7/hHIdMu0UWtU9iujOzbfq+TAjyKjKD5sf2J9TJiQkZpJ8mggIBMntuRw1lfYbM2ORZqPYgixRkygLk2krOvmgR6zWREcSBdHFMHj4uEJ5HHaTVolCDzLl889rZDiNJ6x8YVf7DRr93raSdNwSwn6GCiZAIZ6Yfmv2sjL3XIW4FowSnFDbErN+HloRpszL/xv/wNR//mx35KxHplG9pxtPnq/JjEGscPQRwbyjV4+aEiNRLRMO5clL4rX6+cc360q94mCeU9VlRx801r2T2r1H/MCn1L5bs5UqiEsytTBxS57akCXJoxnrFnRXHT4F7puO3qBwXGSi5glZWLS28kJ/W4lWiQO0TMBZGHECTGvbSnJymj7ZtfRJvb2TD/AqtSY7ikUhYrInNEhGEuoRT0J/S3n1x6pFTz0kqPYz6Y63s3KOXN21NBJC4/1tFXom7K3UFtgh/iaarE6HvYCZLOUyrSYSPyPCMbO+lTCJomm9OnPluhRnVV07evjxtNdVTTY2HzFS9XXYEXpOHa7qXrAuY+ZVX7sTMfA5IwqKMSo1hpq2v5owuzKlbwQeNQWd+/ky81dzFV7nvbs6K95uWLJpw7wp0EgyL//v/ANT36dnnTGzFBGQODjx4UlXVWbkpLAwLlyMCebYrjZtSZw2yTs1gGg9lqmfZd2cW+Jt49dOWcqPxmysK1/eXSR84JscrS2t30ptjvvfW1puPckonZmxOqXbCughePA0iAyh868l2lgcFOU4Fy9fJUZ20q1XhsH8IgKSXHcCgSC4vaacGWGyGZl/is5KS4xkrMJ15rs//GhgYJdk4zO57Yv+2Adxuq6Nkt9npJj+2lP5yjPrTz9RDYEQqCx+Ztr1ztJXVv5ektPqHBzstjz29Un0mAY7Qd9KSLy98mz1LEsfdHU2LGpfv1q038N4XrFv3GRf8usdWqUYXhRvLKN+uOFZ33DKFbux6NTynDXxUzxf37u4FjEGnFU/cXp9usne/01nxVv7qeVmxN5AV3XCae2KbK9UhGSO4YPGsrjG9GmzWdcOg0NAdU930prMpctWplCiwBTchOdCy6G90ysXLS+4Zc8nCb932uTLzj4+2gOEes9MevEj9xfVyR++9GztLEs3iojSAWfruy8B+E/sxkC3lz3zv2YYzGb1bJ3thOlL4zPr2xc1YIm2yn6/lA7wAur/NemHf3HzK5cYwgn76VpTziy8tOE//7R011VO1CM5M/4pbNoPGuL+vWID3i9xd3wnXfnT/ebF4Tqbs2xWzUsr1rcvbgBFdX+0VVKxNKUQP08wk3XwSdvalRVUTkMfTJYlseckWqZRRMGnkuqt8p7Wtmlpb2RRaMW/DtHFIir5uXmJz6XdKNr+fi9Suf1U7oY0qgZNvcju6EwYqy0ZDyI5vjy6ZfmLDYv2HSr5Xp/l9ydTLM6+6iWXjp644BMogeilvnFJ2b9roydzAKBCf0NxGaXfsMgn8o8jK6eSjGsek1DXv753eW3XALaq3U+0/zJ9o60f7UFrqFRzK4IIbK1Fm/xzHMDnyEtnGt5rR0alZPYN9J3e97cXfZ6kT1+6bHkK9ec9lecE1gDPhW/X7405sEh7G54v/N5I3zAVYwhF1MafVM/aDcvXIBPobvFevhINzKSbvn5lGMwf4GQjhbFGAGZwBJeQS0H3b7vMiymU2wO1aDanqqRJ5g53n02nwJVupyVNqjK2IjcCF/0xU7ciRsUlz1B9tyVVUPOtTReu0NnODFEZJeSETX0hKviCsbMVimxb3wDPGHOn2ah6XGfrYRry/5zNxqRwdX4zcqXii+GkyayWCxgGbqNgaYOEm58LgTBbkVaOchutRhUVlYr8EF0Gf4NH7zKrmYwd3GFH76nDUiP74i9RS6jm8EQIIx4Qh+E4UYFviaD5pwcUDwjAp6mexW5PjC2L/wAQ4xnjuZhIJUDIRxzAJIpJ9tD3mHnvG/TG36crXcFPOjIHNC9OS6p0LpfKGqQ/NtWIJou3C3o26y6JjEVQKZpWPN1uUOaY1PI6c5KKVjA0RHia5Ww5Hvcrf3ZnbEUTTGvL4CDWHIUiRqGrwzrn7mvOV6tSjaU2vOnzkrTHpnsct/TC6ptWYwJLQdgFUwtPMjbDvsr7wiPrbECJ8oIIrF6s/0xXZ6s5TaFYY0GOE0acS0nTLE6wVlxGxg5lIWPc6B2MmYhYELbEN9jJYhj7FmNDGwK6JUKfUm8wChcrRICedK/pY01ViLmIDfJheASE0A/f+qYtgvC0R3MXkWAo1M89Wme7gNJ74XGqEe5trn7pZOKZAqn5yskCDwSC1huUgqgL7ElzPss5/BufDJwg6y6gCk83+EWVmF37cxN8k3b8oKI+N/uAQHgpuqrCeuHiB/v+2AFZPRwvnfSUqYP6ZP/eP/sEX+QJ+dX2RX9Z8nzhaV+pvUbynKvcczxq0VMzRGkbeZzqfqYhv5ICMtdObX3ai8DwH8NnqB4Q4Dl8B9KCovhJH3YKBZPFI/fNl06fpytKUCma1q8bDY9CMDHbmFj/K8PvupPxO8kUJdesTD6eOWuNNeW17Hnf5Wl7l4QM3BMdP4uy/+EwegFSEpFgbPyk8Gn3+1nTFoofleC5rSDn3IuHd6Z4P9LBg1fxg1tN3i95eRyVusw/TN/1jjHB96Urz9Uv+4aFScy1fJ5hS070kV3WC1T/0X0HzlJMvPS7T5lOUudr9h7+QtweZNl4yL6wYUnattP8Y7u4DfcJvwEU9fTTM8R5R94QBL4ZrKrxNRXX9VYLQsxvtQ9pF1gEgub2qN6W8tqTqsTEh7h1UyJftjrrxp7XXkXvMYMxvLL5+Hx9rvGFxO6i3Fdxhszj+KCqbXLyysTuA8WlEMT3OKymXVa0CEQPUwnDbVk4dWEJ/0obBeHNn+/qqMtRQX7rn2bkHKFQ9DW5xHEdXjDjsu4CNMHn/TR5M7W1/u0MJd7UwXtl6cnakhaUhIfcjHGXNSplxVOPLdU+2V30CxNKGECXTZtrpmWueJwTEqc9DLEaOkuHQZBOi+ipKdx/Jcnczj5Cot0fVbNjp583XbHnS550xnfp43mFBE/llvTUnO7FW3/mG1CCdhJ58vKU7qrtpcC8p7/FpJn6XOWDz6Z0l9Hgo+wpfP2BIRi9bO2KG8wUYImss/SZEIwi160jAM7Ae9LlU1njkn9vbdY/il77FfoqCyjVKybr/DWZ8Zw3Ek4WfAuiZJf1MkVNEsyg30p6WpeVdCIvBZaVSfVKV2U8y2zXHkh7Y52Kmp2FvkXg1+58X3IJj1trtqzq1mUVtfSeq0x/cmGp69mX1yyK+rih1ckDgcKbezuO5qggMRc2K6fpMgoIa0ocYG7GovYNG9LErz56HBWZyb+htr5nYV/sgpp0zSqcogM1Bqs6HpWZ8tTMRdqkz4te+x2K8GOIapCthQvGtepjk7EDBsGrq09S98slKN1w+RlzB4qX4gtCL5TP+2JAg/Z8K6kzPvtMfgBk45Vb1izL+Wz51ldYGIW38WYixXlg+7soZ4+ToAtL+hbBYiVavughJvlb63wxF9Mnn8YMAVZjbu+/kD1BTxzkZO9J1dnlKAHGhuBQO3df6z6dmt70qVLz63AIxdlanq2mowdSOhKC4xiIjlSxYoVaSoc7/FW6u2z5qQo8olT9eh1OGDD8uD9rPckFVQTR18GBDvNzKiaYw/Eu4IHhH8V/3F3vZTPcShWp22wMfUFjRWq+bxzI3VXHCkQp0syt7TbdbEq0SQck2s1JchQE/rswyCngx5xt9AryoCAbe0nVujcPokQIuliEUVyGCw0NdNm2pSowrDATCGkh+HK18VgfigVBrBVCSX4k4oI8HE8TrwBo+gjlE/XiUL15kNN70kH32CAnmqLWch2t46wicWQRBzA1ZmayFEtT1XIcNvdb6TuttATftOZnCxwAkGw2Ls7nEgp+7E7IAFd2d1jSZitSf32gfAPDrtis3F0nT/Lxfx4rdwdEWOkAI80PLRRn7KzeogzIQFfd64y9U9wi4A8ijhIqiHuZm/v66iC0Lw72wDeGzElSeZL54A6vSDWigPDMNB4R5yNABM65ytW6IgtastCFIMHTwBWgEiY5P5V+wJOrs9/zt3xdYiLbInNjxeRwxkOQP7eFAKtD6P9tdfRtHAZVQnK3WIadHtdyZBS47mNdgG/4Jr4de+gPhplecfqxZoSMd8cRADUeJ9oLL+s++QJV5uS+OHrHsRMxAD919Hxh7J4PDEH4dqBoIPLh7kUggE6HjcPcLWBeayveZl/009XE590tMz5u5RT8uorHUbfP7k5WzxLE0kNILvxTR/PyVj9KAuMhNCuElaERGOFuN4COd2jeyB2CQHARCO2nPfje3o48fUHNecjeQUht9/43V3Lf0Q4uLoQ6QSD0EAig0yFuL/Sml3A0VgiEttsbKxTIOASB8YBAAN3e3RbkHA/TS3gkCBAECAIEgaAhQNxe0KAlhAkCBAGCAEEg9BAgbi/05oRwRBAgCBAECAJBQ4C4vaBBSwgTBAgCBAGCQOghQNxe6M0J4YggQBAgCBAEgobApNFTFr5gM3pqhAJBYCwRINo7lmiTsQgCoYBAANzeOPmdi1BAm/AQWgiQLzCE1nwQbggCQyMQwB0qCXIODTO5QxAgCBAECAITDgHi9ibclBKBCAIEAYIAQWBoBIjbGxobcocgQBAgCBAEJhwC49PtXbfrpyr1dvbAuPExK/Aj+sqpejs6dXe4C8l3i02HI0XuEwSGR2BcGtTwYlEjkus2rG9E9G+Bb9IkuAgE1u1dd5QkQ+IRXTKNvoI7yDS4MgxN/VyJZirNDvqLDsOEC37hd/cWbSxbH6nRl9jRidL85encbSg7x3+mPL2V6XBYbViYl6+Fs22TY/VWH/cbajgIRCHFYRAAnYnWlAhmn1/aeHWSaQwVcAyy6ILDYHM1WEtkmlx0ouwYXHCKlvJBbeVFwVAXK9Nfquz18DWCkxz4ylGVhjAHdPJqot5+xYd24M3By0Lh1OQSPY09GGmsdkslOgn2Vi5HiYZZCGAd2H+rvW6FMmkTwggE1u1hQdFJku6+hsXt63XFfk4PH2MwpsBpsfCuKboaDUrK1Vny/bilO87G/Q4fEQmHW/5JF9m613qBZ8vzcen6gtNuvoKirn/9yKZL6IhIYSUcRP6zzAOx5oKlEcJqrhxaOHBskcJoEKDVydmwqH396p1twqW1tzZPeziutgeOOt07/UzFiYseCi33wX1oj0h6cVWkdU9tJ8dJb2Ptobra+i9YIV2dlRXWGP32lwN4Ep4/c4Aj0XX6A3GbCpbcxw4t/n9b5gDe6CbAiSwUnTKfFLeqmvrJMXT+LZwlmxfZkPPM8gJ0UPstXYvNXd8O9v1xUfsvVxeLpvSWepNG4xCBILg9hIIkIn5+3OR+Z9+thPTGDjZPW+HynItZtmPVxhTmDJeIeRn5B6oNj7JMuDpLc/OOfsV+pP9LlfPmePk2T+eetbruVRbjkoibnDIWojiIpSOfbhcBecKalXM7mpsv8Ort+ayjnZqjniunJDMzDtYfzJh5E7W43fGGbj8lPnPN/BPlllPXcJtrbTt31Lgu15j2Muu354yl7Mx8vTY+kNz4mgNYTY7u0guWobaAjACSiAStdu4XDc3dQ0s07B2xhXrairPenlT4l6NlWfOQJUoi5mWVHdqfRX1+/rYWn4i4p+Okl51f36KrHJZL0iCUEQiS23M5airtN2bGPvwdikI5LVmiJlEWJtNWdLbt12sicVwhVmuyOpCW9bZVGNgIxRwUJIGYhUmrRI1kyuef18hwaFFY+cKu9hs0qr1tJem4JURVfeNOXshfO1Vn7U79pWmoDSnl6bf/fJn5q7mK4Y7z7LdmL8s7evWoKTESDUzL4TUa+ijEgb/tcVhNTJQ19nltogxvbIWVL+w9zcjX31LCtCRBGB7AO13qbSmvPalKTHyI1xNJvFY///hmXSkfKHO8nZVz5OqupZGQ0O1vq2CicDKltgAF1VHsNDJR84QsLFpb2emwF2iVdBx9mVYTiTUCovG+lZ7+thKmJc4jXJ25cl2Ks6quHVmSp72uarKx+YiRqq/DjtBz6nBV94J1GTOv+tqdiIHPGUhRoFKpMdS0/dWETVKmTK/ARnoTyLHV5NiuNm1JnDbppgFeeDKrrj4ZvShRypu8UmuywwjCVSJvY9bmJgY4r3G9LZQVUHzCbURKWeO7GUop7ny1/Y8bhg0+44N8XfGx00XbA+GaE8iFyEso8nGsEQiC22vKmREmm5H5p+istMRIZl1wnfnuDz8aGNgl2fhMbvuiP/ZBMKJro+T3GSmmv/ZUvvLM+tNPVKOgo7ur+Jlp1ztLX1n5e0lOq3NwsNvy2NcnUZYEtni+lZBjeOXZ6lkWFNzwF3dCYF5rypnFRO8125ud/ZMj7xWFKoWA99s26huXlP27NnqysNqn7OqseGs/tdyMOBzoqk44rV2R7ZvS8IcDIgUhmrXrfk/pW4Htvt2P9XQh+fxWUhcrX8qqnrUb4CJBGJ9ZCF6FQGdAdf5p6a6r3Fj0rchFDXHvVGTPE66RkjmGDxrL4hrTp81m9nPKn+43Lw7X2Zxls2peWrG+fXEDzLj7o62SiqUphfhprPfMpBc/cn9x8Enb2pUVVE5DH8ToLIk9J1HWEIUTfCqp3qqXnq2dZelG0TwmjzAt7f+x9+5xTV55/vjDK2gntIsLTbaV/mTahCGWyrZCUegmFalyWRwtnaShoBZnqDZRCG0Hy44aSqwdVlaHxArTSl9SMBkZaPlqyUqwQ1GYgqRoHaw0FKrFteomJpVVqJq8+J3zXJInF+53Pc8fyXnO9XPe5/I55/M5z/lsTcMKCitMd0wVhQVY7KqIqFXiuwW7j5iwSxW7S7HsLDFWtdF13LXg2xqSgMqUX8IaXm/IXb2hPubgUdULZvXHbYlqo7ky7nLDqYtD6iltHeX5VZhQCfuztatycYso9m2du4ARDgdv/5jjoR+8n/pdzrJN7TH1+PDZ6fNxvFihvwnKJ2eJyvxdpTv5OHBxjnUFJBBzG6E2s/HKHP+HfamWcOjqwJo5WWMCugpTWwe34DKgDQifPxOlH3AIhPEsMey4LOgB76D1RwOEv416lMoIhHmcczx6jmQiIgtDfzMCAVzrNeofOum0xLe7lCsxKMQH03SzUshjRisNVnOthIN7Wo1qMZMnbwVMCj7Ea6pkTSBP3kz6Qf8etZDmAzVqHEnt2UE859MpwTBcTA8zIZ7zSv58h25v4GarPJwpVIPR5um5Wit5hiOpMQ84UlHqPDxbkhLAg0AEFo1mQPB8MEhvOzIdFAcYzagWMsPlrTeJ6DBX4Ht5ME/n+hHYOgpCrnEhAMB1S+9ofTLIqd3p3cktKeEBe/5THHFZlxV2A/cWHyA6QFMVaHi8c7qMCzhefCU1l50GC83TqUfgOVib5bxAYVmNMponhBwRLALVQl+x+nwZ3tN+8jTu5K19sOeRowPvhRxOIN7/QXqruTmPzxOjszS8AAAgAElEQVTK99eSKnCiavRfOyxdSj7m6M947cCAhUs16qENB+jlPMDJV20NOUvgiUCeziMK9/UwQq2tch5TrDbS5g8YlYIU1nE+iQnwBZFdpghIPDFpGFuVYg4zXmnoI4fkbWc6yfqObSLCyUc/40OA3vHHl9PAJOz2COr8IjPzpeENNbW4/sM3lLeATvXI3b3XjaS8j5bG4TmHxn4AFHWZXJf1IS0V9mDYqsTAqvfk7jszKN7cJevYcGxfIl2HNzeu6AYEeOhs6UW4uZ1xcAu29V43u9WP7kmbUAAh8FQOemY2ArDFNwZUlGsvujWsK+GsUN6jrn7YzetG990VzdOxcAQd4kYjUEszIjLkUXXvZO7piU1PCIAZsgRJsSdTQ9ZrE9/MiHjIrQi7B52AuQFhIZjur8fgGVSghJM3fpP/nPVImv/y3Ba4+5yCZ8hZwvMIZYQliANPHtB04JtXikZbh+bAyUBxwmg0mqyIzFxZ+NnK2otULs7/jjmH5u/wHNVERMsBOacDgUlje5i7/oPBSliXdvfAm29UA1m+rVuzZcfJpdJs+ctRPQXZb+DqMVv35xX6ObFJUT2HCveDA+JQ31WshZNAwDCeoLjc5fOWq9wkGE6ggvmhVM4uTRLCbxaIgWLRa3LXinILtklLDA0ynjeQaoXImq5A0Sj5wYNTDvjL4/GiZ3sK/kMBpwNwnnP7jir/1DXPDMJv3XAAU1Ki8dDuj4ASyNZ9VFH8N1i/4TwxXOmyXHXOaXi7k4Z8pgcBMClnLhQo8NODeIsz/VnzqMHFeiE97eeCN9+BXzWAE49bFNql61PD7NyIwYpdndhTsXt/iwV0J62qWHsFw7yH84QnGAXzElSdkEuBkZWKmZhrU1aQB6wWiLe+xsOeSkt/AZyx8TTu3A+5+IamK9VreyRpBS2mDk3ys8v396/YvD5m/rn6VuNQoD4eI4r+oeDNPbDueO2q5ieuWTKoJgGM5YT0NXfJIY8PH22INPWZYW4HhuJNTyOUEZFV+ro1Z3k09fkBnDOShbIeoTKLEEJfqdqxXYMjX7Gnoid6VTxNI0url13vGEh5DjfneJydRjYRUUWg/2lCAG5mRv/QiaWlxqUZVBiTn1EGtV+EfIaQAYLjxQclfBYehSfMq8FFKMbWsgw+oX5mRsubQRJc4AAjMTlr1vCZhMzEk6e1qzZPyMGzY/J/X9PVRyMGON0EVjC4r6v2A7mQhycCP0CU80HNsaY2qCAkHo+pBgbsUh0Yi0YzR5jnKgoaDgdcAowTwFsjjGQS8hxPntaumjySVBY/49NBJU4k5ehvdAiAJnBL4Nb6jnZ3C6InBk1F9WKMI8b1vpSQE0Qzt5ZJiD7O5AjfrQUd1ZEtCAbjQink4GOAEy/ks/Ae4dET9N53yZhggBEDCJJxszUvAwjooJN4gORzZZ5doeBh3NEJsLutBrX4KY7wj4fKskhyPQwrvAB7EvDmXjuSCOLPRcgJPN2HD32WGBhwE3Jau9qGGKFgGlCS8BIjWg0VjeCBRLL4r60ftC5QyEk9TL6krBUIZ2EiUsTqac7xODsNMxEROKDfcSFAtRP8H1dGAwNeID09uxG6wZ7IHnNsOdiTIwdCYLoQAN14lvRecNDx2ZexImOR6yGP6YIOlYsQmGIEJpDpUHKYKa4BKg4hgBAYGgHa7Sr48XprLD9kEEH60BmhUIQAQsAJAcT2nOBALwiBmYIAKym/OoulXALUzd5Bb15OLMwXj/FY2EypEaIDITAzEBijkGcC95szAwdExf2IwOwRct6PrYPqjBCgIzCBTAft9ujAIjdCACGAEEAI3OMIILZ3jzcwqh5CACGAEEAI0BFAbI+OBnIjBBACCAGEwD2OAGJ793gDo+ohBBACCAGEAB0BxPboaCA3QgAhgBBACNzjCAxzJdBIak8/YDOS+CgOQmDmIIB678xpC0QJQmBqEJgAtjdL7rmYGjxRKbMJAfQBw2xqLUTr/Y3ABK5QkZDz/u5KqPYIAYQAQuA+QwCxvfuswVF1EQIIAYTA/Y0AYnv3d/uj2iMEEAIIgfsMAcT27rMGR9VFCCAEEAL3NwKzk+3d0UnncaU6y+xsO2BEhjtPqrszPPUjjzl8XigGQmBQBGb3gBq0WjBgbFUbeaqRxxySTBQ4lQhMLNu7062KBedt4OMjkJbrp5svdagE8why4C9pLb2/W/dhrmgh5c8WQFPr0MK5/bF1fphZ1GF/JR0WfblU4AOT+XBFKmAbHfo7PEGNs6H5bKdnpgHiRBx68YQA6DMBAhWt9R3zmqM7+Qgyy/Um5+TAMHo22T889ATnuBP1ZtFKub8UaS7R8rukSd6oMeGdk/ClGTCiRRuP06QvzyRq6sVNVhE4TP1AsJ1TZZZ0U/WwdetU5PAEI3ShKFdDjlAqwuD/Qzfr4OlQyKxFYGLZHg4DX9kFrEXXr2zfJCnU35puZB7kK8+DTyzg05jJxfo7VS+Fxu89H7qHtFRu/m8Ju7VEe9FBp+3c/k27zlgdHrjrlr5Qsql9ZT2w2myuXXs1f12h3oZd023bsF7HKQHGsq2Gksc+W5WYD3xdn5kFiCt16H00CBDdyVgf075p3T6ntjZV54iOhVZfxXvC2fJTl2wYXPSMbFs/GhLocf2iN6xlaw9Ud9p7namx+mhNdd2PVKz+Tk25NlC6e/MiBuU1zn+bft+6Te0x9UZgJL157bUciMMkDIRusGQdQiTS37k/O+dMH14Xm6VFER26thL73QloVB1Ypc9h18uWrd7VQqxNh6/w4M06fFoUY/YhMAlsD4LA8AtbGjrHYjSPQJI3haDZ9PmrZZfSak9UyhO5xDTgF5GSd6gy80mKCnw4NfxEvdr/H4zI+6qvUR7px8D8IteLFhnqWy/aLnxZ/3/Cne+mcJkYI1j8lpjXY/jO80iboYDYq4cco0GAFbk+KdzQ3HzR0b1tFwzt2CJ+OAv0hJTDdYdTgieKzQxJ2INhqeuXnipTnybWl7f0+/ZW9V+pUpSQLNl2Vl10dqlUFDZx1DAi8r7t+yIvkoVhFA5dhlEMhEiRKPzH+uaeIes1TKCt88CmnFpStGLTF6b92Tv/i4aitAgwPMHkE5FWdLQ0Dfvh+9HNP6yw556cc8Votq8hhqECBc9WBCaJ7fV3V2l0d4MXPvELIAcEqiyfKEGUj5ePqLxTXyoVsHEB40KRQtsNexhNZuK1SKq7hgGBhULEJcSJL74o8MHVeHTPl4vb7xKIm/SqZDwmkDG6y51cWuXW6Rptj/APirhHXAKoV5tF93aC8qdwzpBWrC0tZZXd0aKYxxmRed/+UJmyAE9us3xn6Ank/QoOPPeHDog9FIhbd4m4uNyUmyASsPHVLd0zpaS9F49ts+hVZMwZIT22V+H+dJhayqrbeFFRjzv6CSNMJF16codkv0O21v3nNNnx3uJ4Nti0OGSAQEK+CwrVoeyUHSVY7OMVINJ0DtcT7N3DtSf0Bie9lmisqGmHI8nWXlMxR958XI7V1eCM0Hb6WEXP86+lBPe6jzsnAn4gG9JyMlfAFWRW6f+uwMWYPtzkcnyQemxoiMM/olfFBz0/4oEAdmaVlW0BMVFMmqRUpNDBQiBFPosFUWwvn0Du8q1NJHZuRVu0GQlF1nAOEUDV8UmngeeXWNT4EVyPwqe3/ZOs4eXPts6qg/V3wxY+Qc+IPu1M5FxE0I5+pweBSWB7TbIgL5+g1P8OSBNHscl5of/sQ6983ddXzNi2LLs95hMzkER0bWN8nJKo+PtVzZZlm84sroRCR2tX4TL/O537tyR9zJC1AilKj/rpG21wUQc2Ye6eNpNmy4rKEDWUbHiSO0FIbzXJQnAuC3R7u5uNljnsh30Hg9pSu03aGFf0nihgziBRIAv38l+mMK51lRpZauU7zq2Wp3pYVnsCBOQPVqzpSeWYrN4MxDLqqKttUFfk0RMzVWxcUR2i7oECnJkiPR4EoXvBm9ZnQNd5IL6YWHvAqhFB7Jj60A/KMyLo8yNjUebnjUWhjcn+T5HrOe7rpcqVvpJaY1FI1cY1pITc+vVORnk8KQw3nfXe8LX1x8PP1o6jJ/iLt6ZhBYUVpjumisICLHZVRNQq8d2C3UdM2KWK3aVYdpYYq9roOu5aIJvESAIqU34J36435K7eUB9z8KjqBbP647ZEtdFcGXe54dRFclsF41APZFFe7CjF/2Xt/p3TxnaYgeDtH3M89IP3U7/LWUZKSvu6dvp8HC9WEAqR/v/xfuULa19P9xe7+Th2cY6lBVE2EKhu18X9ca+IS7zbzMYrc/wf9qUaA0hHyQEPtPDJGhNQV5jaOrgFl62EJkKUfsAhEyargzerNy/1KDvtt1FsKqdBpp0xz0UUduh/2hEg1F6j/aWTTUt7u0u5EoOqrIEBc7NSyGNGKw1Wc62Eg3tajWoxkydvBUwKPsRrqmRNIE/eTPpB/x61kOZzu1biy5HUnh3Ecz6dEgxbqey6DfMgn/NK/nyHbm/gZqs8nClUA3bq6blaK3mGI6kxDzhSwcJhAc7ZWg1q8VN4TCob8wk5n8OXnwDs3PkZFBBfSc1lJzQgSkN5OtXTl1Yp5wLR22gQAKC6RXe0PhlE9kDQtm5BbomhB+z5T3HEZV1W2Ppg6r5tVAuZ4fLWm2R04rWpSuJLtKPLuBh9T7A2y3mBwrIaZTRPCNdGYBGoFvqK1efL8HJ/8jTu5K19oHNTHQnW0ZfDCaR6tdXcnMfnCeX7a0kVOEm6y19fl3o9h5NRC9ed+DOSgQAjOo9x6hVSZB9rXUrI9uijGSYEs0kGXmKffaqxtsp5TLHaSNEAo4GHQhVmOp+EBfiCyPYiiIiOZgVKQaWQMz9a2W4dZtrxOEENPReRhaG/MSNAnwLHnAmRcBJ2ewR1fpGZ+dLwhppaXP/hG8ojRIF00kfk7r1uJOWZtOgOzznOLLMuk+u6OKQlezBsVWJg1XtyIEd1fYB4c5esY8OxfYl+tKC5cUU3IE51mY+fzl1IHZljBAs3PG9Sa1sJzY6tUyORHnrsnVL58/S0tGxwpzMgrqHYzetG9zU1zdOxXAD03Gh0KCPdckIe04sAbOiNARXl2ovuHdeFMlYo71EXL2wMPYERkSGPqnsnc09PbHpCAMyQJUiKPZkasl6b+GZGxENuRdg96ATMDQgLwXR/PQZPIzP8IuWN3+Q/Zz2S5r88t4V+ZvWWPvdZH5EG92JyhSlxJu2RVnw7PMKBYC/co8M3iLdg8CEM5DGyC7Jj/xlHUyUwwhLEgScPaDrw/SuVqa1Dc+BkoDjBg/SFiuL2D5SCr+fLFjVU1l90C4MejmmHFuzwHNVcRMsBOaccgUlje5i7/oPBSliXdvfAm29UA0G+rVuzZcfJpdJs+ctRPQXZb+BqPlv35xX6ObFJUT2HCveDg9G2bq2iWAvZQcAwnqC43OXzlqvcxBdOiIL5oVTOLk0Swm8WiFFi0Wty14pyC7ZJSwwNMp43kI+EyJquQNEo+cEDngPjiedi/klbfBCeDSN0ALH8cDA8wVBPfWkH9nadeh15RsapQPqLCyDerNjViT0Vu/e3WDBw9l1VrL2CYcN6wkNrgnkJqk53HkkvC7mnGAGwbMpcKFDgRwfxhmb6s+ZRg4v1QnrazwVvvgO/bwEdZotCu3R9apidGzHG3RPgyErFTMy1KStIfrBAvPU1HvZUWvoL4IyNp3HnfsjFNzRdqV7bI0kraDF1aJKfXb6/f8Xm9THzz9W3Gmlo/iLouefmaw/sg7yQ0FhH8MN9RzMQQGYBCelr7pKjvr9bs32HNkSa+rRDuEgrj+YE4s23iw01Mh5Qhz8QJDuOQfVBrOri01mlr1tzlkdLSwnFKpw2koWyHqEyi5BDX6nasV2Dg1+xp6IHKCNpSlla/uAcAlDbn+PFLHmc9B1u2vE4QY1sLnIqF71MMQLEpm+0v3QiaWlxmR4VxuRnlEH9HCG0IcQVQIxwUMIHZ8DAwxPm1eAiFGNrWQaf0D0zo+XN8GB0q1LMgXGYnDVr+Ewg5AQiJk+e1q7aPCEeE2Pyf18DPiRwejxKpfq6aj+QC3kwe/gAUc4HNcea2uyCGofQwykvQmyLJ2FyhO/WgrLMrWUSknDcH/w4i0MHhgaEEKrgNefEC/ksXKjj0RPQ/K6Qg8cEsBKwOVOH3saAAGgwt1RufWaEQk5rVw3VizGOWAl7PiXkBGU4ugrVeRzZgmCPje7Rc7CecLM1L0NpoPV/IPlcmWdXKHgYd3QC7G5CgC/846GyLKJnexpW9pGIYRxhHpCDOmpHjQOPA4FQf5CI00Y9kQnAC4paKcGmu5DTeqG1za6gwEcWLUMwEygdgxEManUrMaJhpiz+a+sHrw5ocbu6n8WXHIQJ7YB4nHY8eg4zF7l1NOQxSgTsfcvTsB1dXl4gOj27EbrBnsgec2w52JMjB0JguhAA3XiW9F5wlurZl7EiY5HbCY/pwg6VixCYWgQmkOlQcpiprQAqDSGAEBgGAdrtKrbumoM6ayw/ZHCt1zCZoWCEAELAjgBie3YokAMhMJMQYCXlV2exlEuAutk76M3LiYX54jEeC5tJtUK0IASmH4ExCnkmcL85/RggCu5XBGaPkPN+bSFUb4QAhcAEMh2026NARf8IAYQAQgAhcB8ggNjefdDIqIoIAYQAQgAhQCGA2B6FBPpHCCAEEAIIgfsAAcT27oNGRlVECCAEEAIIAQoBxPYoJNA/QgAhgBBACNwHCHiPv470Azbjzw3lgBCYSgRQ751KtFFZCIGZgMAEsL1Zcs/FTEAb0TCzEEAfMMys9kDUIAQGR2ACV6hIyDk4zCgEIYAQQAggBO45BBDbu+eaFFUIIYAQQAggBAZHALG9wbFBIQgBhABCACFwzyGA2N4916SoQvclAnd00nnzpDrC9PHMQQCSxZXqLDOHogmgxFOlRoG/p+QTQBXKYsQIILY3YqhQxPsCgQ6VYB5QnoPHR5BZDmwdOz3AIHC2AFg5haHZ0GzsMM+dblWsl0+yxuRk+nuYRDD4ll6x3S3VJU3mf+lHmpN70UNXbQRETVwUW6dq+TwcFluLIrPCBWXMVJGpaMEr6kazrSV34WKp7porLd0qAWwW+IysaVwzQO/3DwKI7d0/bY1qOkIEHuQrzwOzxvUx7ZvW7XNiM6bqHNGx0OqrA1ZDyWNny09dGo4HzeVm1g30HU5hDWc53JU083ft5Qrnwm36EkXJV99Zhi4Tcjt81+ex6MGr5koA/g54yaTsIK99XnjwSlaWGMBi+b69pGCf/hat/Fv6fQUl7d9TO0RnmrGIDDlPXfI3V04J0+NGnmHTfLYqMd+p4Wi5uzkBZ110r+1H3SqJPOgIILZHRwO5EQJ2BFhhzz0554rRTOMytguGdmwRP5yFMYJTDtcdTgkeLTez5z6Mw3bZ0G40FBRWOLaJlyr2HL3L/sFw4edh0g4fzIpcnxRuaG6+OE0i0TtfH1EzxKtCAXoQ0v62gt1HHGzMdGRPhYXdbrhAQx7D7DTbWLGrY+uO1jmQca4wI1i4IcbXueGcY6C3+x0BxPbu9x6A6u8ZAVtn1cH6u2ELn6BxNkaYSLr05A7Jfj19y2VpUYkW4tI1tkBaCoKg7sZnsSCKDcSbpeUbSZWba7Q7lhYFLi/14SaXdztN8RjYA53v+WfO/L/ZN3xgq/eeLe6VwP8zmgGvAsbWueQ2DAr3YlXdFAPr/nOa7HhvcTxbqrs1qLbP1FJW3caLigr4QjqPHSVY7OMVINJctOhLpQI2XpGFIoW229ahStvRROR1x6QvzySku15ckUKH02vRl0tJPy9upg5g4vDx4Yp26QYRAtvOfll/N4j3xC8A17N8Z+gJ5MzX7qU2fGCrV2oTrw505VsUzY/Pxfw4IfObq+t+HKLheuez/RkeaKZp4MAmL0CgOtutksmavimOf1aq69Srkrl4/Un5Noxtx+eSc3G97Z9keRZ327p1ChGejw/3xRcFPrhqk+75cnH7XSIzk2uJzmWgt0lC4B5iex4VxR49PWNJm0o8R0C+9wkCt5pkIV7evNSj7LTfRrFpbA9jLMr8vLEotDHZ/ymcMQBALmk2plWGfGgGtzaYP4lp/8O6Qly61v8/3q98YQXizX8hboRwj/b5l2UftyWqjebKuMsNpy46qQnxbeW/yd4R3SU3fNc+P3j+N1s3C0KxdsPVoZqB+3qpcqWvpNZYFDfHQzy8al7smPrQD8ozImDVTGe9N3xt/bEy9suNy7LbYz4BFbF2bWN8nJKouLG5dCcf5rUvvGrLsk3tMfXGgYG+rp0+H8eLFfpvNRvXbGqPrOzqg55FK/0hFMBnZb3ZOmD9eiejPH4QSaPNbLwSyPuVHyj+5wuGLmyJ5J20n8kNn6Xh4En+1pz4UKzLcIng5W40M+Y9zL571XTTrX7HZUEPgIZLvxxbVi55osKdZroolUgNRMFKJf8pSe0pxXX5isoQNSDeSb5N4ZOywLk4U1sHt+AyqCmUqYrSD3RaifD+zv1bkj5myFoBVj3qp2+0wYb16GkzabZ4KtG5HPQ2CQhMLNvDtej4cgn/AYvQs/YDAkDRnAlWkC51sJ1TZZZ00z1NGhF+ZIDSKTgOEXhxk1XkEQOo6PYRaRyCEXoOyI0QGBcChDLJaj4hMr6z5iXVSa0UX7sLVLCjMrhx8spuc6mg/e3Y1PLuq43VWkOTYpk/6PH+yxRNVwz1rRdh6YuTEmkiUJN7NMO/rH81vL1631+832r4KIXLhInIh9gDhUSJpbKl+gOajjudFXu6BKlhjwQtDPjHtz3Uzo6KPuQ/XPjB0UjsCImqDfQ1qtZFsPB0vuFJK4MZNlPdUW2gdK/8eT9YxZT3dyb0VBw7TU7lP9ZVNwdm/1EeCZIwuSnv7hQaKw786a/agOy97yRCypncuF9H2L6shj5vRQJ+BoTA78uFPdqa0+7M6c4lQ1cv+2F/yHTN3503BobwxVkbl9aVazotneWlXUkvhTEDF/7rj992EVzKneZHeaG+xus3XCcTLPI1STSTk1F99E/rIu56oLmm3S2JHTtQx5O9TblR/sCaPTtK0dBPCoEJfOzR7I75iZINRE3Fb4kDG2pqu2/jYaavGs8Hrs3aDOFlRW7LSfMF3h49ByvRXgRyTBYCE8v2cCr5yi6w8oVPXSZ3LoYRvbavq4SjXQUWifQFF1gEZeec6aNXznZj4X9cNtZKOKQnPETw2WMlBuuAsXnttZxkBZSlYE9mNt7oq0whBi49OXIjBCYIAYZfxOv5skUNlV8vLOqG3bkxk2vP2i8yM39jQEW5FqrHwuWtN2EE4iGi+QbxFoDOT39cor0RESlv/Cb/OeuRNP/luS30JRy+BwrlPTF30ebda68ot2dt+8u8tKRgBmMey/9uu+ESPdfh3HPjim5AwojB6B6bFcp71N13inygChML5T02N/h3u7N+Um77/baiB9JSnmRgD7Ee7R9mX+uBxH9alLUnP7BKuq2WOg7jIdLgXnN48maw16MeArHx4dN73UjKM2nFOjw9lkiLiZyTg8AksD3PhDK5wpQ4XwuumSBj2DoPbMqpdRLuwJVmWBiUfpDPnbamujkxG4Rg4YzrtL//1kA/Y0BFQ/8IgYlHwNJSVnmOF7PkcTJrm0WXuVCgaIELL1zVxPRnBUUnJRoP7f4IavssJ3MF3OWqcx62FCyBa7Q/fVKe/Ozy/f0rNq+PmX+uvtVIo5/YA3HgxisiXR7WWtweu1W8ALz5Puw/5x/fdt15MGght1en/cJyx9LV9SMgY55jyNDyGbmTwUpYl3b3wJtvVAOBjK1bs2XHyaVSURh5ZW9AQvqauwXZb0BpTX+3ZvsObYj092+9nPhjwZvv4F9x9HfrPtMzotOBrJLwsXVqtii0S9enhj3kRsTcBbwgsFmD4xiqMNkhv/IHi+OIjIww7V/axVvg8U7soYfZ2OD72quGdrBd9FRnxqLNH+QElqa9pDLHutOc+jQzaOG/9p488sU1UPS3P855lGUnLyA2KarnUOF+KE8yteQun7dc1emhIe21uVK1Y7sGKC9tYCde0RO9Kp77AB5Gy8fWrVUUa+EEN5zniEq0F40c40Vgythef3eVRtfrx/anlsAWbUZCkTWc2tUNUpG5SxJTWScPVoEeSNNp01X6TgkH1zOD4arbJeLi8lNugkjAxoWodM+UkvZePDObRa8iY/oIpOX6Ma0cnchCL7MKAUKZBISWv6kPfa88C1eBwQow/FbI9iw+HkPIwQ49kn/i/RTW4+L8olexoiXAE8Rf/F8lmxd5YkELXKNl/vtz65Zbc0K9vaMK2Gk5iY87IIJ7oD5qWl8g3vr6SnFCGJ7pXDhrt3559i533XZ5wF/i/R/wj68Ly89KGPUHEo7SSJdf/K7D74We2Rjk7eUdtMv26gFaRRh+cfLDHyw+IwKBPkE7+l6tfn9zcHDKh0c+CG0RBYEx5RP67hkb9kjcroOkj/czO2zrqkteo8l5HSUy/NnzewzgSwz8GKc/YOUwjLVma/ZLxPFOwAUhX6//8qxHxmO7cd1I51iOnIGLEbz50+pXenKy9s2TuNHMxLgpBXJ2afyjXv4iXdhbWxMCqMQMlnhX9as25RJwqAfoPp/VDEI8FZ/FfwErDvXBVYm/rgSRySUCg5Xy/gkZBvPxDs3seTgcSq8H8RxdiVTJ6H/8CFA7+tH908ulpbzdpVxJCwKf0Xyt5EPZNnyYfElZK9T8w+dqreQZjuTTVhDfIRQlgsCvGQg5gSr9NvToMyjjKb0H0DxfxSPRI+Ae4Od2rcQXFJLXDDXqBrWYx4xWGvqAJ0dSa7YalNFMnlDZbB6wmpvz+EwM5A+ydve8bVQLfaPlzUAjTcR0lk1RpaH/ewAB0CvvgVrMvirAoTqOYdWl5DPFaiNNHjn7IEAUjxoBnIuQP6NO7JxgEnZ7DjZG6vYiX8MBwUkAACAASURBVPttNPMpSXVV0boIILeBp5Z1u6Q6QdGueCDdIB9S8z5PoOqgvMA/iPl2Qs7P2ZAJ9XWpw3VJaapOF7EoLTrmpmcmv0yyWb768lSgeOvmSD+wZo/M2J4GdplWj55Qt9/boACnz728/aNym/q/q2/uoZeB3AgBhMC4EJj7zJpUW8VQB0yGyN5mOvXlPxJXx45/gztEISjonkZgEtieG17eQN6ev6BUugs/jQIE+rXbZBdkx/4zjqbDw0jN+43GzCdpGfS2HtGa0nK2kUfIcmThZytrL9IijM1587rRnXfSPHnyVsdS0oWksZWIUiEEEAJ2BB5ZkbVhfiH9Y3x70HAOm36fwpCa/gI6zjYcUih8UASmgu0B+Wbw5oL8wL8kvbS/03ZNt+3tYkONjAdUAg8EyY5jTbIg+ve2TqT6hvMj7pbm74Ln3IAuPV/ZFBATFegUxenFTc8MPm6FDwPc7JDYU7F7f4sF5KNVFWuvYJj3cJ42+EHxvIQh95dOxaMXhABCYCQIMIIzv7gxhjvbwFCOzPv2TFHcIyMpBcVBCHhEYGrYHuisizI/LU3ryf+d/BiW3kAJWnFdIBSKDna6GlcF5z9yCIocfYLSv0+sqZBHPOixJrinm57ZfrqAJf7whBRTxviDfDLPPQrulwKPZ8+k/Op1eExv/5jjizVAe0/pFgcvGIUgBBACCAGEwKxAwAtwoDEQCj5/tacaWw725MiBEJguBEA3Rr13usBH5SIERoXABDKdqdrtjap+KDJCACGAEEAIIAQmBwHE9iYHV5QrQgAhgBBACMxIBBDbm5HNgohCCCAEEAIIgclBALG9ycEV5YoQQAggBBACMxIBxPZmZLMgohACCAGEAEJgchBAbG9ycEW5IgQQAggBhMCMRACxvRnZLIgohABCACGAEJgcBMhrw8eTOf1zivHkg9IiBKYeAdR7px5zVCJCYHoRmAC2hz74nd4mRKWPGQH0ufqYoUMJEQJTjMAErlCRkHOK2w4VhxBACCAEEALTiQBie9OJPiobIYAQQAggBKYYAcT2phhwVBxCACGAEEAITCcCiO1NJ/qobIQAQgAhgBCYYgQQ25tiwFFxCIGZh8AdnXQeV6qzTBhlFq104VqNyTZhGaKMEAIThwBiexOHJcrpXkCgQyUIEKg6HFVxsAQQNA8cJwOPjyCzXA9MH9MfYL44WwBsJ8PQbG13Pz1sstyAu3B/KdJcouV/SZO80YnfmDQiH/Zy1bnJYEG2zg8zi2hYkXTc0he+q4t5JYFlN3cJAvo7VduLuu/AKLZubSYJFVek0lvcSHNEYAsyq7tp4bbOorWKFprHnW7Vq8maTpoPLAE22jypDi8NvsMHxIyFzYM/PgJpoUZP8vlulcArwBlGIslk/9Iwgeavyf7jxU1WufYuDINEEg9bIC31ANpoibWdU2WWdFOpbN06lZRoFFDKQlEuQIcAdehuD9I7IkD6BCo8z/5u3Ye5ooUExV5egGaVbmoGBVWjIf4R2xsCHBSEEHBB4EG+8vzAgLE+pn3Tun16+lxrqs4RHQutvjpgNZQ8drb81CUbPs+6zr0u+Y3z1S96w1q29kC1Y9Y3NVYframu+5HKuL9TU64NlO7evIjOgqjQ8f3bzu3ftOuM1S0T05Hdhb/cqYj3o4XYOg9symnF49pMFdtEWk5JV9+AuXbt1fzkbbXO20wiwuJqs9XatfexMzWnLtrXENc+LyxS5xdWOO0jr1Skrk5143y0wmlOaNQaPMYTEvbfd6x4VqqFRXMzGwd+rExZQIs3Eifko+NpXxomGAb7z2ePlRisA8bmtddykhU699UAtlLZdXvA/ElM+x/WFTr1Pk/kAm60aPAdfH/n/uycM314QpulRREdurYS+90Js3VgwGpuzWHXy5at3tVC0jB4tycLJiJAZAcaM7lwifNSaPze86F7ukB+4DH/t4TdWqK96InOafBDbG8aQEdFznIEWJHrk8INzc0XHbsJ2wVDO7aIH87CGMEph+sOpwRPPJvxgNqDYanrl54qU5++hQfe0u/bW9V/pUpRQk6KtrPqorNLpaKwiacGnzcbfnIj6ppOXtCelSWmb/Ugg9zZQDKv3rYm/Zy4FCGXiflFrhct+r692+yUy88XDF1YWGS4H4PBXXe48aMUEBN/bJ0V+aXfYP1HFc5LDozjd3nHSyPlfDArVkRK3uFjOwNLcwv1BHRECVP464QJdqetqW5OzAYh6DZ47/r+W4OZvqqiEYaDZqhvvUjzG60T57i1ZIPY9IVpf/bO/6KhKC3CD3QUhl9EWtHR0jTsh+/Njh4OQAt77sk5V4yD0WWnwabPXy27lFZ7olKeyCU6nh/A+1Bl5pP2ONPruE/YnkUn5Y5sXTbymNPbcKj0aUTA1FJW3caLinp8rp0IRphIuvTkDsl+SjQEpFJ/TpMd7y2OZwNhm0VfTkqQfLiiXVDaA8Vw7CjBYh8oXuvs1u0ScXEJKTdBJGDjfRWIidw9bRa9iowJ5HTl+t7gpNcSjRU17XCOtLXXVMyRNx+XY3U1OCO0nT5W0fP8aylPMoYh4AeyIpaTuQKuILNK/3cFLvDy4SaX02WMVH1tFt3bCcqfwjkOBIggyJnqBcqsCBqfvabLWKe0BnHIxL5L1iSydJoqAIKlpazyHC9myeNUvvg/zsu1ComqxXkXeOu0uqwhcFtN2eqeAucNX8ArH9W9je2Ijs496ZzEKV+XF4YdOkqODf99Fgui2F4+QG76dxUpo7MLFQH4pVIBGxfc+XAFz8cO0b4YnEl8ogRRPl4+Io2LQBzDXDDB5i5JTGWdPFgF9u0eepcT5SRo4fMcxCwUKbSgmWj0v5i7TSpr+qY4/lkPGz6LNiOhyBpONoijk9CL8Ussoi04YIits+pg/d2whU/QmpaegnLfOl2j7RH+QRH3COUz8/7xLeiof+j1oCW+3aVcSQvCt+Rgz9xVu18upDo9xuRLlLXk3pdK22dQbtsP9u+DPrQI1q6aDD6+/GNyhMpWuCunPzQaQEllrWYYaK6VcHwltUMUQGUx8phUCvQ/axEAfdWN9vNKvi+tDxNOjqQW9CNHEJOfUdZqdE0LOnoe6Oc8YV4N3r9hV8R7XY9aOJ/Jz2sGfdVqUIt5GE/e2lcr8cWY0Uog1bIalNFMnlDZbAbypeY80LlBKtDj3T1vG9VC32h5MyiaiBkub71pbZXzmGK1EQSKmSBn681WeThTqDYOgHIDefJmK3QMRcDAbUAMR6L+VM7n8OUnzPh4gTmYayT836qBNNLlAf6cZyS19Ur+fFzqaw++WiuJjFa208ak1VybweFk1Lb+iU/I6EBca7symkWCDIJchzDMDYzyPCEP4wjz7HMFqDuTBTO3O2BEfLzjoktrV5mYMx+nH6+Q64B3xITp4EMNdqL6tWb4j+FFQMR4RFYD5hNy/nwII14uP+NT2LigrQ83tQ7RvqDeEg7GjFca3NADbeeOyQBo8HhyV4s9Jam9SpDo+O1S8knIWHzJwVZDGUCDoBCvuC+gEO9TBP0gHeiuIB98/nPkAlygjZ7hSD4FxGM4brDWdKwcBWEY7Ff/cIwIx4xKz9ExLiCBfLlypJMtPZPh3WTt8b/hYw8ZYxJ2e6T0HBRbl8mda+tUrQhN2nP+mSJy8ECpemOJ7iKtEk4ybpq/3UmLMKxiAE8EabCa61e2b5JMmxDDTj1yzDIEaIoK0IvxuZCqARnU16haF0FN3FQYxuDGySu7zaWC9rdjU2mbJKBv0wZk730rEkiQgAj0fbmwR1tz+iaG+YYnrQxm2CxffXkqULx1c6QfkC9FZmxPA0tEq0dPU91RbW+DAmxHvLz9o3Kb+r+rb+5hhCWIA5urjx3XHPg6UZ4ewXgwIuPNxLqjdR0N1Vq2eFUoYxgCiAqYdDuyDoWqjuY974f5Lln/anh79b6/eL/V4JAxUhW9ptu2XRf37q64Rykf8t+mL5LpInLWPenYD1hqt0kb44q2xfnbpxqw0UnOsWaQi4CIuqSX9jt0k1SODG6ivPIb82FBu3QNLr3E5bfYC3DnylqzNfuXDcoPP3fWfkGJ6FeHY+o3rB7pnu/mdaN1Pnueg1pY+uKkxGAcMUOTYpk/2Nn5L1M0XTHUN+sB+IHSvX9KgoI70NbiCH+C2kHhxbDwhMRgipdRVcM8YILvnnN+zoYLmr4udbguKU3VScog7ekwct1gbCxa98RXWkiMHDQWoCXl/Z0JPRXHTkPdKU4/LY2zExS0S6oTFO2KJ4kHyf3Z8++ar/dSMlWo6QQP4PJiZiDvV37gAkui21vNJ0TGd9a85OF4FG3ING6NYvvdNV7vdS54Rr3Z++LkUGVrUaze0ZNW+VXltjhSQA+l6pWVUq69QGcZt93b4XCKMKxiwJ6O4Re2NHSOxegknraHIgdCYHIQ8IvMzN8YUFGuvXh3uAJYoTxXzoFhYC52n+9onnA/B6cl/LnRCPQljIgMeVTdO5l7emLTEwJgoSxBUuzJ1JD12sQ3MyIeHJwMOgFzA8JCMN1fj8HjdoD7yhu/yX/OeiTNf3luC11EB+dNWceGY/sS6SdW8CIuVez+JHRndhzUDxEPYJDvdsjK99HlXXe+PqLuT9ueQS4CdknDG2pqaVpSKi34B0qm1/NlARXFtRctDQcPncf6K1LZ3l5eDy1RtGHfV5Ucs5/coRL5PZ939CDgfC++2zws+rbO6gPaf4p5zllo5xvEW0BIbuFOmsIZntQIogoZ+b9vKM/tnIwnTLDe1iNaU1rOtkiwlmJyU3Jk4Wcray+OvCBHTAf9Dj+HC3Bc2QXZsf+ktRGGL5tOHtB0UHwPj27r0Bw4GShOoGmFieZY1FBZf9GRo7vrwbBViYFV78l119zDZojP5LI9XGqc4HKmy7nmrjJu51Dw5hJhWMWAPYP+7iqN7m7wwid+YfcCp6g96Uvonikl7cQyxVWJMnKdAa045LxPEADMIHOhQIGffMN1M0x/1jxqcLFeSE/7ueDNd+BXDbZOzRaFdun61LCHKGgYrNjViT0Vu/cDVRY4xa4q1l7BMO/hPOHpO8G8BHxPwGAlrEvFTMy1KStIlrNAvPU1HvZUWvoLcE86DAEEIb6h6Ur12h5JWkGLqUOT/Ozy/f0rNq+PmX+uvtVIkYrhO5USQ4OMB7iPV4is6UqTLAQ/sw4QKNjR/putYvs8j28silsaZKEwbpCsCTsuC2IL/ozxY/tL390HsQJobCtqctaSwiEvjRIQOzaoxzrDfNTnavn7pVeW0QSGQAiJOU7uOOjDMJzzxWL/4752oMUy6TW5yQk7ela//daKR2j+lBOsGxKNh3Z/BDW1uL5zuarDDzZT0Ztv4B9UgPP+FXryJM6I4CVyHgQT1f+E8yPulubvgiuM/m5NvrIpICYqkKLG/R+2eNrdAwQxtm7Nlh0n4cGlYSwLAI77drGhRsYDWuQHgmTHsSZZkFes6uLTWaWvW3OWR1PfRYDvRxTJQlmP0FlHC1rfoy7WlTywDCuVs0uThPCbBYKXWgDea0X074JcE03tu2M5MxoXnUZaOppeDcZYWaD8rZPUmBYVd3qUcdMjeYowjGKATgMuBIeaA1KI71Ff4tHToxKFThly3wMIgD7qVgugqHDWV1GKH1xZ4hxET+xQOWMYR6yEmj/YFUmlibm1TGJXSL9bCwT+jmxBLuDIuFLIwaVhnHghn4Wn8ujZ11X7LhkTKBgJHSIk42ZrXgaNK4Asm+Ur8xz7wqEJsBMDVY9PcYR/PFSWRZLL/30NTbdn7Wprc6jiaFjBURnprJHq62ptd2iWoMaIVPYPmJuVQG+HP0zn/AlErV2fZvAJGTKuv+8+ArRFuJKSCIe/uEIU6LHavqV0VI4w4AJFpOY5K/PpMwM8YfAnNaH4J+TYUH0LYaC0XKRyERLJIvV5sJkOSkjCgF7tOKXbA8W5tS815zifJxgckwFjq1LMoUChtSxVLTqA0I9ODKlOptPvQbdnvdDaZldI42g4FFJQWakkuygggieUA3QIqQJddWefUSmq4D+tGzi8QUf9QE61Mp7hB7Dbj+MhsCF+x5ENTOo+7EeU4SAUuEFJKtsdQhmn3EnF+NUBR4viemCQO9EeHiIAfexT9NMBxKEAWrY0GvDRhUcg2F7NZVLnT0QfzpNeSczXWXVPKxA5Zy0CoIVnCe3kus15Dp05tMPlKQ8/njNzaEKU3GMI0OfjcVaNksPQs5w4Ny41PrZD7vI5KlGARxm3X1xRN6wS/ObRU4RRKAaAuANoWYbQHND0JY4q0zzdlSiOaMiFEJhkBGi3q9i6aw7qrLH8ENfPBSaZhJFmDz78kjXG5Iin5lvFkVKF4iEEBkNgbGyTnhstB9pOi/QljlmDrTH4ZoHY4Rpb1XIh+PAAHOGl5wLd9B0VLt70EKHWw1Fsp80knQZjsxwcAgdHAKjFMjyCTJwU7+uq+T1xUhzKM4fyxKvg6/EgMq3qyDkLEQD9awZTTZNnOuRsM5heRBpCYDIRoHODcZYzxmE/CAV0luMgzPm7PSCs37a/9h/fDib3J9MNLgQfRjGA00DRR31fRbG9CVCiOOqFXLMdgZnN9mY7uoh+hMBEIkBN6vB/nPl6gfT07EboBiez7DHHloM9OXIgBKYLAdCNUe+dLvBRuQiBUSEwgUxncnV7o6oViowQmH4EqHuqnCkZ+ZV1I4/pXAJ6QwggBKYKAcT2pgppVA5CACGAEEAIzAAEENubAY2ASEAIIAQQAgiBqUIAsb2pQhqVgxBACCAEEAIzAAHE9mZAIyASZhYCve2fZA1iJ51+j51HC0HocruZ1ZaIGoSAOwKI7bljgnzucwRMbR3cgsvQIFDJY5+J0g/Y7QMASyDpSeWYrB5aCFJHXW2DdzR79MRMFRtXVIeoe+AlUsgSyH3eoVD1ZxgCiO3NsAZB5Ew/AvMTJRsI+wDit8SBDvsAno0BjdxC0PTXDFGAEEAIYBhie6gXIATGhgDtHjtHBjRPdLmdAxbkQgjMIAQQ25tBjYFImRkIXKnasV2DGwmq2FPRE70q/nHiLsxhjQF5NBtEtxA0M+qHqEAI3N8IILZ3f7c/qr0HBFj8F7DiUB8vb1765V9XlrzmuGGZJf7whBRTxvh7+QRlnns0HDeO49kzKb96HR7T2z/m+GLN+5vdrWx7KBp5IQQQApOOwBgvZ5rAe2ImvYqoAITAIAigy8kGAQZ5IwRmHAITyHTQbm/GtS4iCCGAEEAIIAQmDwHE9iYPW5QzQgAhgBBACMw4BBDbm3FNgghCCCAEEAIIgclDALG9ycMW5YwQQAggBBACMw4BxPZmXJMgghACCAGEAEJg8hBAbG/ysEU5IwQQAggBhMCMQwCxvRnXJIgghABCACGAEJg8BBDbmzxsUc4IAYQAQgAhMOMQ8B4/RfSvCMefG8oBITCVCKDeO5Voo7IQAjMBgQlgewMDAzOhJogGhMBoEUC3tIwWMRQfITBdCEzgChUJOaerEVG5CAGEAEIAITANCCC2Nw2goyIRAggBhABCYLoQQGxvupBH5SIEEAIIAYTANCCA2N40gI6KRAjMLATu6KTzuFKdZWZRNcOogSDNk+ruDE/WyGMOn9dUxLDopFy3mnn0HCc1k5HnWEhCbG8sqKE09y4CHSpBgEDV4aiggyWAoHlArw4eH0Fmud7kiANdwMZstsCHCM3WAiu1U/BYtFLuL0WaS7SiLmmSN2pMNoePSSPyYS9XnaN5OQJH77rTrYr18knGi/BcZVu3rihXxMWBwrGSqnTdNg/44FkJVN1ORDhA9vJiC6T/pSFxhv4+Io0L6E5JJ/ClWyUg6Qc0lOotEwSeG4W2TtXyeQSYbmGT7jHZkE52/mMHCLG9sWOHUt5/CDzIV54fGDDWx7RvWrdPT58MTdU5omOh1VcHrIaSx86Wn7pkw+C07raInlDM/KI3rGVrD1R32ikxNVYframu+5Eqpr9TU64NlO7evIhBeY3vfy43s26g73AKi4F5qDIG5vEVoUl7zj9T1NUHzngDrE5I2I0luoueIg9CCQHywID5vyXsUzuWREt11zDsyczGG32VKbhh30HSefYGk++iMW1kVyq7bg+YP4lp/8O6Qqem9lzOWHyvfV548EpWlhiAOXWPHZAxQzpCWu35T/5AGCFFVDTE9igk0D9CYKQIsCLXJ4UbmpsvOgRetguGdmwRH9hbZwSnHK47nOIwyT7SXMcS78Gw1PVLT5WpT9/CU9/S79tb1X+lSlFCztO2s+qis0ulorBJmFc9VNnWoli9oyet8qvKbXFcJk4SKyIlr7JS+vgY8PEDScuOKReUyoomie0MD7lf6HOhzCvGG/Z1xfBJRh7jztdH1AzxqtBJaJyRE3E/xkRs735sdVTn8SFgaimrbuNFRT0+154PI0wkXXpyh2S/QyDW/ec02fHe4ng20AdZ9OVSUgLKFe3SAREolJ2yowSLfbwCRJrObt0uEReXkHITRAI2vkfs9+Rps+hVZEwfgbRc3xuc9FqisaKmHc7Ltvaaijny5uNyrK4GZ4S208cqep5/LeVJxjAE/EBWxHIyV8AVZFbp/67AyfXhJpcDASX9sSuu3KuMF5ewUxHvR0+Au90ju0Xx6MEMTlmX2KOtOX2J0j9B/ZBPlCDKx8tHVN7pjAZUTjpq6uXF3aTKlcqavimOf1aqM1n0pVIBGxdeLhQptLBeTq1wyZ0CW3fNQV1/2MLH6JzJ1q1ViBYS+bwoivLBW4vu+XLJmbtkXia9KpmQ97oLxm1nv6y/G8R74heg5Wi0+XClWouTD0ktJNZnsSAKVsFn+fbS7cthj+G+qqG6k2Djq85idvcu9FmHSkYB8j0FKaT1brtmCwEOIBTHhkLDtcvRNcBQSOsDNtNgO45hpgppJqAcPJc0ogCf5bmFG3GVoWMgHAPrxLvtxS/Dru6ha8GkU/Lcr2wP9qCR6fBHHnNKGgwVMvkI3GqSheCTGv7zQHxxr71MIogdUx/6QXlGBH0uZCzK/LyxKLQx2f8pckrlvl6qXOkrqTUWhVRtXLOpfWW92Tpg/Xonozw+MR/fvpjOem/42vrj4Wdr05PKMVm9ecBqVkddbYMKLFvnAXdPMLNsXFEdou4ZADHrV7ZvkhTq/cVb07CCwgrTHVNFYQEWuyoiapX4bsHuIybsUsXuUiwbyNB+1AxJQGXKL2ENrzfkrt5QH3PwqOoFs/rjtkS10VwZd7nh1MVB9JRuVbaZjVfm+D/sS8eFgs4tMhUw3L/vw+w5FqOZ4iN49P6zD73ydV9fMWObKxrf4jWNrIQi1r6uolVRWSol/ylJ7VdF4XUbl2W3x3xiBth1bWN8nJKoaMEZOtkKlSkLnEk5Lgt6wDto/dEA4W+jHnVUyXZuf/prH2PSVtCa5g+fvtoF0fHoidlMmi0rKkPUIKYnwTiEK5D3Kz8gLq6AtC3+sAtEtLYXLfsX0sed2v7/8X7li9sG5dJTe3eaf3/Z2q4M/G/JnpO42MHU1sEtuAz6GBCzfyZKP9DR4d6FgIxaSQIS57Q46W/rmV/QAUEr4WhFW/Z3Uo3uocsRogWIFiP4d7uzf1Fa8jcTBsTppaUl5ceAXhlI2rUB2bvTnyRuQ3EMhASwTuxvux1z7LrVkB949J09n9N5qDP8k/k2sWwP11E7JoxYVTdsjkFU3PRq9XeqthfhkUlfqIeHGTmrRmyWFoVgYaaO1DADITVx+gDqToli3ZdUGDZ0KJ0M5EYIAAQo3RKumxq4XSvxtcNCBvU1qtZFuKmZGNw4eWW3uVTQ/nZsKm2TRMwCe9+KBBMcEIG+LxfC7ctNDPMNT1oZzLBZvvryVKB46+ZIP4zhF5mxPY2DYVaPnqa6o9reBgVc73v7R+U29X9X39zDCEsQBzZXHzuuOfB1ojw9gvFgRMabiXVH6zoaqrVsKEMbhgCidibdjqxDoaqjec/7Yb5L1r8a3l697y/ebzV8lEKKK+0g0BzOVb4wjz3/rvl6r/P20B7dObLLJtIey9XRe91414/tP8fJPzwhMXiuBzT+XymccPe+kwhpZnLjfh3hR0y9Nhg5ULpXDmqHMbgp7+9M6Kk4dhpSSrSCU/b4C67bA7pJ0f++s2ydys4GLP9oPBWwduvvIkBr+j2/bbsI9g6PntiPddUne5tyo/y9wfGcKEVDv5Ng/M4lQ1cv+2F/BkXbn5K4gLsClMRhNo/UWkGdXgB797mP856c889h/H/1YzzGe9LeO+cnSjYQfUz8ljiwofrQ4Xq3fuVeTdKHmfhaRiTo0kyuWLI28KvK2gt4gNUDyM09tFxwMTvobNdOq4suhId/rdh3skNTXrd0fWrYQ7RoDiczcV1KMJPBXfJ8YG+74aojYApdE8v2cML5yi5ivhioy+TOHVTFTaskWNhuymkFbWp/bDcW/sdlY60EjH/HY+vWSFKrQ5Xb4kCHc32I+cjTWQMYc+hQ17zQO0Jg7Aj4RWbmbwyoKNdedNqgeMqQFcp71M3/5nUjtdB2hNE8efJWsCcgnxuNmU9ijIgMeVTdO5l7emLTEwJgIpYgKfZkash6beKbGREPOrJxddEJmBsQFoLp/noMnkEF3Ffe+E3+c9Yjaf7Lc1uGOz5JVVnn94I48NgOee1Qa3gq8gjwAeTiR3LmP/dcEKEpJCvgG8ojt2YuaLzxr65VHP6dDoJ7bFZEZq4s/Gxl7UX3MLCk773uvA+Fkeiec3jyZkdz4VOip3xG7OfYTDPZD3vmK4PkRetCg8QY1NsFZNDlaA8DiNljm//juZTC+dIPC8TYoT9sVF5NzREPptyew34YMmrGPLCLp2Uzpc5JYHt0+gdXcXPt0YB8YNPOBueRzuCGhbnwNihGeOfyWuWuuEfsSd0cHs4a0OKwwp57cs4Vo3mQxSgtJnIiBEaFgM2iy1woULRAOQSu+WP6s+ZRg4v1QnrazwVvvgO/J9QMcwAAIABJREFUarB1arYotE5rYQYrdnViT8Xu/S0WeMpfVay9gmHew3niko95CfguhMFKWJeKmZhrU1aQo2aBeOtrPOyptPQX4J50GAKImvqGpivVa3skaQUtpg5N8rPL9/ev2Lw+Zv65+lajJyw8VfnhyKzStwJK01bDbxaIIW3Sa3JFIpV+CHw85Q79LCDp+gTZhdU7t1D1okel40ahYX42KfFHEmoApu4zvYVYTkOI0u4eePONarDLBAvoLTtOjuykD8i5srItICYqkCwbLCkSjYd2fwSUuLbuo4riv8F6evTEAmKTonoOFe6H32CYWnKXz1uucpy5xeYu4AX5Gq+bbURFigjaoHCs4jTDI7XD3KB8pWrHdqjns3VW7KnoiU56VfKyW7+iA+jk7q9SbNEA6vq7K4oP9Twrin8CD6b3Qwpk+8aXzAB0tjTm93djX0t6MjJdHvZD05zVG1YMMUs7lTstL9TInJzCh1BxUwVe02WsU1qDnLZ1VBjtH0RLljV836RY5g++5smEfdfT4+GsgSOarbPqYP3dsIVP0PeKoJMpiG+MfLgvvigA6mTw0S7d8+XidnLVPpR22lEKct2PCDD8Vsj2LD4eQ4izDj2Sf+J9eMSffB6J23Xwg9AWUZCPl/czO2zrqktec1oLs8QfnpBiyhh/L5+gzHOPguOg4PHsmZRfvQ6P6e0fc3yx5v3Nwfg2CHzJ8Oqr0tSn7UVCyefKl6nZZzgCSDrZkfIPih/7a6rkyECiwJoT6u0dVcBOy0l8nAx3+vNY5blgm9jQfugVdqMUVBY+gcnVtuXpiWFD4eOUL4ZRulX/fy82Lt3Z2jTosViWOxrBKR8eIaH28gl994xjnvCL33X4vdAzG4O8vbyDdtlePVAyzEcdULcHhckxx0M/KM5ybJoXpHxYIcOKlvh7ewf9R8+jxD7UoyeDJd5V/apNuQQIpYE++FmNc7sz/NnzewzfgaUSbOsCgjYv78h3z/djo6YWYMjiv4AVh4I+xku//OtKUNajnvqVC9jUK5O/1Lf437xBD0z/PrGS6lcwV3eQnXbeIAo8r5Qq2ypegGEBCem/lUBJO5XvzPynpCWj+6fXhZbydpdyJS1oZYHyt75Ap3+bFsXJaTXXZnA4GbWtf+JjhCSdHmwGQk4itdWgjGbyhMpmXB39aQZ/PkdSYx44r+TPx7+jAg5SwM3kZ5S1Gum5DMBoZCjG5EvKWkEmuMKGI6m9bFDGMzliJUxibJZHM7HBPI1GtdiXn9eMa6dhTKeNv3OB6G2WIAD66iyh1DEWZgnBiMwRIADVxuHy1psjiDpcFJgVmLvg3HavPjTOMt5hOwm7PZpu742o/28oFbeldpu0Ma5oW5y/nQx4OhmuEZ3ubrhzsbamgdT5A43varnk+StqbSt+eonCYsizBqRuz2o+ITK+s+Ylx40Vpq8azweuzdoMjyewIrflpEH+6NFzaO00RQX6RwhMFAK021XwY/TWWH6I44OJiSoF5TONCMx9Zk2qjfz4ZBrJuP+KtvObSak6fsZsMBX3Nd22dztk5fucdHV+cUXdcLXSmMmdeIoYfhGv58sWNVTWX/SYOTwz5hbg8Jxo7bRbUcgDIeBAAAqXsljKJeAUoHfQm5cTC/OhEAk99xICj6zI2jC/EHx84pDF3kvVm7F1mVy2B86YDa7i3iUtbmmQhYJR7RUka8KAJJ3tdBeiA7O5j8eviu4pelNxEpwQw9XRx+anJi4Zw9LX0lJWeY4Xs+RxMnOazhl+blqsherp4Tw9aKcdtCIXQmCCEADn77dVdpNXfDWq8NPtE5Q1ymaGIMAIzvziBn7T2zgJmhtXdKO7yPlTvHFmeQ8nn2S2h5+E9qTiXu7rv/EruxC6S4nr9ozwNLanhxG8+VOg8q3/jT9c+QJ1tKZuX6LTx5aeUtH87Ery39SHvleeZVe4Mlgp75+QYVDn7B2a2fNwOFTWDuI5pHaaVhZyIgQQAggBhMDMRcALsJ4xUAd2aPZUY8vBnhw5EALThQDoxqj3QvDBVURsKfbXryZouwC+bXgjqiSyaSw3R09XX5gt5YKbX1IDFbwT3+TZF++zhfRx0jmBTGeyd3vjrClKjhCYYgTsV/9Q5dpvpxvGGI1nKzxULpPzPw2Gh5wqYuv8MLOow8kLvNj0hbLGGPjJIP2qSdp3R9QdTGAiA3dK0swj4F+GOa5hcsrY1l2d6fnSSHDHU6ZC77gxC17MJNoIv2Bzejwae3Nc4eRs5wi/cIq0r+SUy3S//HzB0IWF8py+wsJu6XOj8Js8p5u6WVI+YnuzpKEQmTMCgcGN0XgwrDP59lamwfAQrRngRRO7ztBvV4KBNnA1aGFotgIcVQNHtZNlusf2gqsmrV17H9OmEddgQtMNgfa7ZhwaqSGvYbpUkZOlDS01w0sjg8+Uf3nRfgrEUl+oLMmHd5DSnqsVqbGvu3E+WgSHkzwE7mzniGZfyRFzJK7JbnTzd+eNgSEcZxUPuI4uI0yN34c5Ehrv+ziI7d33XQABMFoE/CLXixYZ6lsv0hJ6sMJDC5005zQaHurv3J+d0/CTa9UstfIdP2RtXQM+CbJ1tdZfSdj5fgq4apLBfemttb/qOf+9Bbtzsbm5x3W/AmIPeQ2T7TIw7ARvoQSXRqZ81Hh4Hby+Ej79neXvl37f31+1d5/Thm8uJ6Bzx0g5H57TTLBzhBMy1A+OQyjPySIEjA+voztHs7M4VB4oDLE91AcQAqNEwPU8MEzuwbCOw97KcIaHyr/wcFUQvFvL3RqRqxWYkRkeCu4dxubOKAwP4WAB7d3bCcqfwjkux6kBE/pzfdx24k4TRkTet4RBWpjGvk25dqrxXH9VKm4+B9pOwi/wHO4aJsbTqdIQ7Y5slYtRe2hQ8MtA+eEy4Y+40QmcOvgzJ0C0v24ntiP034e/U9SeCLPbOboFZdvwIny6nSONydKiIk0O2a2um/TlmYS5Hy+vRVKVnLI2pb02DOaXHMVCF625vRaKVOCmOqDGS/axWxoirr6z3TBeYYfMOybyAfaqiByAlZ9fcpN1zIW/0FY3Om15nQtAb3YEENuzQ4EcCAECAercL6568nIyPIRfWOXvch4YT+VuWMdhb2Vow0Pduyy7kz5myOBVQT3qp2+04TqpiTQ8hFUNZ3NnlIaHyIsm3hMFON8mDOSNRZg0K8ZZBAfwAWyyYMfpaPn6pxm2Ow+vPAgt7ABxZWVk+6YN23TXwC2S+aVW6hqmDxef2RybQVhus/dJZnDmp+3QsBOXNFgIQ6BAtaDnOWnqqoSk5zFtucbpukiwL/xzXUngoRjRKDgfaefI6S4M0s5RpaBuY1plyIfwKhTS6nrLVc2WZZvOLK7ETQZ1FS6LyiStTSlubBmFnSO4jIhNqp2varcCWNRLT8u2FOpNQI3Xj/1zzJ86BozqxLaPy1p7sUuGdmCib2lsUiJW13QeUGnTlyi0UTvfT/1Xtn//VdMNO2DIMQQCoAXH8NAzHENylAQhMBMQAN3YjQz7jXdUiP3aJ/Izm0Gv2iMTmJuVwqc44rIuK7yrD96uZ1QLmbQ7qIjXpiqJry9+tV6PWhjouKefLA5ehke7AI+4nKzmMvCkjz0Mz8HaLOcFCstqlNE8ITTFBy7aUwt9xerzZXi5PzlnZSVf+8B1VgQBxF19vhxOIH7nH0hvNTfn8XlC+f5anD+RNaP+rtZKnnG+HZAIudkqj6RyoOLCfzw332h5s8utgSCIqNfR8+BSQ8dtfziFg15qaGxVijmc9WpgUQ9WnMkUqmG+0A2u5wJ3FoKH3oj20g32yw5hFPKhx8S9qMaC7QBpgBRixM1TMMgJfYyfJae3HcyAaHS8pVxqBF7pmJME4H9ECxJtBz0IqmodHYPqhPAfZks14u12ZTQnWgmYJX7foqNEeu73iJsO/TirhHZ7dDCRGyEwbgRGYVjHk8kbx61AdEpoVmOcpraRGB4awjwNnYARGh4C+5Jdso4Nx9w/nDUd2V34S3fT6vhBlb8+VvyBHJpzc3lo9XIJGfQVtwQUcLxY22X5XHPIALR6uLzUO0ph6P2+1P1YBzCitO2obnl9nPjdMw57wYNkb7dzBCyeOx6HnSOMtnwBU2/jmzxHrBG66JhTSaDo0tthSMh0phHYfFjCAOpMUo0HNnm93IVBc4GJvrtQLUoYbThZ82eV8sra3cPcqU2Vgv4pBBDbo5BA/wiBsSMAmMGYDQ95vBWIblXHozUiuhWYoQ0PjdDmzsgMD0HxZomhQcaDtyuFyJquQEv08Abdazp5QXsWsOROHjUhsLR1l6fG/ie281N1CmFzor9b8zsBsEOEW2jSlxcUa/1T1ywJHvYaJvCpxsJYXFZJWALCHvW7VJ7/lyvRSoPdnB3YjWFHFftww/VOTUlwviTs7JCar2HsHOHHRiiTQ5jlZK6Au1xljgGmhQqy39BCkzC27s8rSNWj9+jsHDEeWxjWrztYA3MB6kMJbprq8f8938MO+ZU/qMqdrm//4RvEWwD+e8hjnH6ckMBTCtmXcUop/gGf3WitU83Ri2cExrZbpOc1thxQKoTAtCMAurEbDW5SL0q+NDC0kNPaVZPBJ2VgpE0PSsgJyjC3lkmIUCZH+G4tENDZs4UU4II7OKiYnDVr+EziKn2ruVUp5OBZcuKFfBYu9uvrqn2X9ATWRmrsMsibrXkZSgNxkxleJyA3W5lHGaQFWR2U8InNFk+YhyejE2B3Ww1q8VMc4R8PlWWR5PJ/XwOopR5rV1sbNEJCPA6soI0UXkatIwhEoBdKTRhAWugElDCPFKPSI1MUUsXg/31dNb+n8AXGWJq6gfEWl73XQB80qMKMVxraKNss9Cwgnqny485CalAFyjwLMNwjKVBT9lsgJJSQ0y5wBbTnCYkNHouf8SmOvrG1jGp4JhDkXiYl207Vp2pkx5lOF+62dgHDMk4NZG0FElyx2gjll9CyDYQOl2aTslAofWU6uD6QMIeT8l63zO8ND6oPwf9x1miMt1SAlZ6dCECB3Y0cCIFZhADoxrOk94LzhM++jBUZi+Jcjk7ODLSv6aQv5i888HnmIqe93swg7p6kwtapWvFM2fMnTuSRhgDBd/erGiUNlSkL7sn6gkpNINNBQs57tZOges1yBGaP4SGbvkimi8hZ9yTieVPV5y5VbNvTk5bnMH4L1IH/iEiKDZgqAmZ3OWNc7U4g453d+CHqZzMCM3u3Bz7k2psj3VX1PfigAYjUPiz9EzLCMJt724TRDvSjr8em397Zo04hNangcrIVycbtXxWN6oL+CSNoajKaQKaD2N7UNBkqZSYiMLPZ3kxEDNGEEJguBCaQ7SEh53Q1IioXIYAQQAggBKYBAcT2pgF0VCRCACGAEEAITBcCiO1NF/KoXIQAQgAhgBCYBgQQ25sG0FGRCAGEAEIAITBdCCC2N13Io3IRAggBhABCYBoQ8B5/mfQDNuPPDeWAEJhKBFDvnUq0UVkIgZmAwASwvVlyz8VMQBvRMLMQQB8wzKz2QNQgBAZHYAJXqEjIOTjMKAQhgBBACCAE7jkEENu755oUVQghgBBACCAEBkcAsb3BsUEhCAGEAEIAIXDPITA72d4dnXQeV6qz3HPNgSqEEJgOBGbVgILEzpPq7kwHUEOUOaswHKIe90PQxLK9O92qWKB4hI+PQFqun1a+RCOGIAn8cl/VdN80aZJ97D7U+LF1V2cK2Lj3QpGqhaTc1q3NFOCRfbikbcz7oVfcz3UEBlwCBKoOBwT26axbJSC7DVsgLcUNpTpiYRgwBptN9hVBtrYb3B892Q+0bcv1SdaYgHFS6gGdG3hQb8D0KeztPgmqzkmhx9b5YWYRidVYR9AtvWK7UxUg8Zc0mf/lbi7WUS0nFz7SnXAAjTiPaCsfQWY5afrVKc2UvQALQcvnEW00dE3daLa15C5cLNVdcyXV0Q/BLDs1Pc2VhNn+PrFsD0cDmEMEJhbrV7ZvkhTqb00fQHO5mXUOa4TWdmU0J1qWLeZ6XTD8EChvJm1l3sAtmNlaFIlp2sf2dlmt5uaUqzm/fkl1zoaBbipepeWUADOb5tq1V3cue2l/J22Gmb6qoZKnC4GVyq7bA+ZPYtr/sK7QeVo2VeeIjoVWXx2wGkoeO1t+6pINg9MxtayaDIIZfitS1gaePKDpoHqlzVR3FDx1dkZo69AcOBmYnbs5mLSAO5F02M7t37TrjBXPcuwjyPxde7mLSXSbvkRR8tV30AL7EI8dXnyk9x2mzBEQSR7kK88D+731Me2b1nkwuO6aL+Alk9JU1z4vPHiFNDo/bE2dacYiMuQ8dcnfaIsYO9V4P4Q97bNVifnOHdEex90BOOsiJCQDuEwC24NoM/zClobOsRjNM0QSYbN8/qHyytrdm4EZzJ7m+v8N5T1Gsw1mM1UUFvQk7Hw/hctg+EVmf5T/7KmiytNXj+wu+FG4890ULhPze17+0Y6lp8rUp6eRkbv3Y+QzHQj4Ra4XLTLUt16kFW67YGjHFvHDWRgjOOVw3eGUYFoHo8WbWCfj6VTp07CvEgzCpt+nONrff9TORWynK4tOPS1NfXoSiOnv3J+d0/ATXqFxjCDbZUO70VBQWGFn1dilij1H77J/MFz4edxosSLXJ4UbmpsvTtNEdOfrI2qGeFUoxH+kNbXTbGPFro6toy1iXOBgBAs3xPheMZqHXh64pEKvk8b2+rurNLq7wQuf+AWGAcPQXJ8oQZSPl4+ovFNfKrXLEhXabthgJn05KUn08gKLkWuYrVunEHGhkMKH++KLAh9cjUf3fLm4/S7Reia9KhmPCfb7g0szbPpCWWOcUhoBeh+wx9j2fVVqIMydTPLzBUNXf/hzS0njVUxu1JLAHsO3bd+09y8SLH2EKInBXfJ8oPH8d2bUbe53BCwtZZXneDFLHqcBwQgTSZee3CHZ7xB+dv85TXa8tzieDfRQFn251C4t36UDIlAoO2VHCRb7eAWIyr/w0OGB1FS3S8TFRezcBJGAje9GbBa9ivSEeoRz7JR1iT3aGnw1Zjt9rALLbm7OxiqO4Yzw1ukabU/iupTguRb3cUcnQPMDWRXLyVwBV5BZpf+7AifXh5tcjg9SWlWhE8hX305Q/hTOIYy9j2MEWb4/3/PPnPl/c7Bqfcl7trhXAv8PXzTD2YPchkHhXqyqm2JgNHhvDartM7WUVbfxoqIeB1GGmIU6VGk7msimok1HXJFCR9Se5knMUe4N6oIQ/mo7+2X93SAenAbBRDh0Te3p7TTPxfw4IfObq+t+tIc5OWydVQfre+ez/RmgV7jOq7B5SeAIuf3ZbpVM1vRNcfyzUl2n67Tp1BkuOZVyL75Mwm6vSRbk5ROU+t8BaeIoNjEqsP6zD73ydV9fMWPbsuz2mE/MAwPWrm2Mj1MSFX+/qtmybNOZxZVdQOpo7Spc5n+nc/+WpI8ZslbjwECP+ukbbVArAZaW7p5Ab7FlRWWI2gySDiHNAGnzCudvyFoBGZjtxsMrq2FZoLDKxWc2JSt0ln6z0eIbyltANTDD/2F2v/la99UrvkG8BWQVMMa8h9l3r5puUrHQ/72KwK0mWQihGYK/D8QX99prelwW9ICX/2/qQ98rz4KLKMfDWJT5eWNRaGOy/1MiYj3Hfb1UudJXUmssCqnauGZT+8p60FGtX+9klMeTginTWe8NX1u7d1l2u3V4zNZ5ID2pHJPVm4HKQB11tQ2XdZkqNq6oDlH3gO5L6hEuvLA1GyvYfcQENkm7SzFxQkREghgr3V1xCTMBcQWWvXUNC6RyHXct+A6BIODHypRfwopcb8hdvaE+5uBR1Qtm9cdtiWqjuTLucsOpi3AEOj2W2m3Sxrii90QBc3D/O2MeQfgu+d9k74jukhu+a58fPP+brZsFoVi74apToS4vDnjjCCKcw4lGZMfUh35QnkE01eCz0I3NpTv5sKn2hVeB6ag9ph5MPn1dO30+jhcr9DfAPOM8R13WeG5QZxLAbGM2Xgnk/coP3+xBecDQNXWjedA5B++H3rz0y7FloHaWwdqXTg8QBSuV/KcktacU1+Wepk17Z7BPhPTk95R7Etge1O0NDJg/ExnzHcqw8ITE4LlA8aANlO6VP+8HxKDclPd3JvRUFCv+2hyYXfCnRC7oGgzuCnEE9lXj+cC1WZsjWMCodOS2nDRfgLjJk+ePddUne5tyo/y9vbzYUYqGfo/SDFP1thxj1u7fEVInBjduYxwsCxSW+F/b00zaI639/my/3nbDJaplbebrRqb/I9xH5/d2GS5Rq0vbjevGOY+yHqJiof97FQFCxULphW/XSmAPJB5cpzJgbCxKi8DnMsof/wd9S17ZbS4VtL8dm0rbJJkaq7UB2XvfigRJgAj0fbkQ7s/A+sk3PGllMMNj37ZZvvryVKB46+ZIP6AyiMzYnsbBMCscQb0Niihw9srbPyq3qf+7+mZz2KrEQO3RY3//5EBdlBzM8AygE4qqq27ogMMtcVXYLzyNO2I7SBBAVMKk25F1KFR1NA8MT98l618Nb6/e9xfvtxo+gkJ+p+eabtt2Xdy7u+IepbznjnUE2SzfGXoCQ6LEUtlSPVBS3ums2NMlSA17JGhhwD++/f/Ze/+4Jo98X/zhRuyG9sAFk9tCX2XbxDVqZduCVPCbKFBFWTxadpPGBbW4648mFbDd0vUsEkrUsxy5dUkssK30SsFkZWHLrUvWgB6OClswlFoPrS5s0rrx+msTw9FrYdXky52Z50ee/EABg/zoPH8kk3lmPvOZ93zm85nn85knY6XnHt3Ovb/vggccsE4Jk2i/IghqEAfatOuhJkHXsFro6OdkhJIAKgWoo1+rEkAVrjBz9y6pra6p+SjMZOmoZ/4yzIB68XfnYq/5Jn9WBLJ6I+ipL89PiGJCbddvoDUKm3jCZkUSV5DTeOQ36+PD/Y8v1SN2LTI9nNpkC4NvrWmVMw5mj8QnPCG3RBl3osmIvOrsZ6nR4Xfzuo3yZ7LquTODRczmFKimWnKF9MMZVfxas6r08+zi7fGPsurTSYoO9xnRbG73p6ep6MKgpcNkjRbNjXs2hvtl22lqJ5XLYjpl5c//QQRdGX9jBPwhACV/S1RdreGCr+B6lefFiBjLQd9yyzadA79vXbfRj1wilQk6K8jrRlvuPE78JlV61zsbfmPNWp8GHfUcGBMybJifdSpdtcnzmZRNE6TZDMyMip1PNP/+KNyDCgytqu2rksXOT7Ijkos62ZsqgHtzT975jUf3p4PFK319b6wzCHpHiRjRMzMXvL533RXNzu0FvwvLzpjD4YTxIu6yVqJ0Q/f8Dl5RcQPAAjB51m+5sWshv+RGlxnQnhL/tGD7uyXRDcoC45h2y/tVm2xhGF3fplzpcTN7BMtDTaHC4aWtz7574M03GoG/3GXRbys8tUiZr3ol0Vqa/wYK87ksx+u6glMzEq2HysrBtmPw/oC60gDne9R9MkFzRclhyVqvnZauvroSnWiXeiU1RV19+rWp1PsJwDuvqjREpq95MZwn31kCAjPb9BYX8JIfKNCcXaSUxT6RsafkOUPhTj1QBP2d5QUVpxdtyIr1Zz6n3LBjhgOMAHyXYK5E3Qk3HyLJ50bwwujJxXtpU/Y/St98B77VACRwm9oABYlxG/iVbWi60q11e8vBuzTg1QhtpeEKQcxgZbr6O9WSMPLNhKi0TenE1/x1G5MoOeeteTs/jhBIN6VFQSvoZ97JYuEjCPsKjdmk0a2zKrJLO+3n9WsXJpcPLnt9Q0rkl60mm7scdG9W9Z7IEwEPS9D8vPYr0CEsKb8xxhnk+Os5W/R8AXT/AOMda6rsSX1bDpxsnNBZEcH/+RfznUdnzxXebDb8R/+dfrP5MkTVm283byNKDYMG9efEAMk1dyl1NGjR7yw0zFdm/SgNaCS2jvrmh/ccUIaPmU+JZoOHNbTl5L49ZWqxE1d7e8Djor8+cxa8/v6O6OrsH2vPh/sb34S5c39489Qn/3ENxBT/cpntpmLJ2zBqk83B9EzTy8bRfbOxYNW8bdYsZ25xxTk1MD7nMCoEwG1+G5ZzOkwHFWLS5yCSFjehIJvNVJMjJv0o3CRVB6hiM2nkwKcD/AyCNWvEXIHCCKKB/jKdZmOxFJUkuOK3msCbBuyLfGlB0+NeHMOI3sc5FANcgXS3ka7CyhdJNR2gPXg5zU0Ua6CwxgSDiPiaPggACfPpzDmNOBLtfafvQCcnkkCzRkyQTk76FvvbLSoEIZBroOTD6UBJvsNUoyBlnJY6hiwk4k+24WTRSAVoYghWSsU8RGrAbNxNZYIJRk4gQMDZUZxV3ssST6epeLnbEeJv3rEZYNLOXp38WYH014dqtlPsek4rp7m72z0LPLAaywxydqhEPAZtD54h2nEq060hx0kVozHQxITMQizc8NI5zHh4MIZy76eFQHPUULHUkUBabEQqCgyQl466z4BSnDhNKhFXrrOBmO59e2ryFjw0rCpRtBSGclmXWw6dDmOOAOrMK371aocqCUkPo7sALCC2B4LFPmqTEQBWO5MtyVgWf9N2dMwGgeJsciNMg5UeU3JsFJjqOIERmCgEgBhPEekFGxoXvkJU2NBbphMFF2531AiAHZL8Av7xk8V+gyz3JQc2r8Z8qrDqPF9JvG+16VkggEaH9sNMT6BwrzACUxYBu14Wwk+Gf5sAnP1NB5udqeL5XoHrKdu37wzjM59fk+Wqa+rx2ZMyEgRc9tOf/mf66lTqxaqRVMFlRoQANnsjggkXwgg8bAR4GSWN23maF0EQbcbsNy+ll5XAoBe+phYCjy/bvjGyjP0y/oj5h38+0Ju16SV6H+qIK+KC90NgjE6eAD5v3o9DfB8jMF4ITB0n53ghgOliBKYKAgE0Ovhpb6oMOuYTI4ARwAhgBAKAADZ7AQARk8AIYAQwAhiBqYIANntTZaQwnxgBjABGACMQAASZWSt2AAAgAElEQVSw2QsAiJgERgAjgBHACEwVBLDZmyojhfnECGAEMAIYgQAggM1eAEDEJDACGAGMAEZgqiBA/RXdg7DL3lf6IHRwXYzAw0cAS+/Dxxy3iBGYWAQCYPamyN87TSzOuPXJiAB+b28yjgrmCSPgD4EArlCxk9MfwDgPI4ARwAhgBKYpAtjsTdOBxd3CCGAEMAIYAX8IYLPnDxWchxHACGAEMALTFIGpafbAcR5hQmXzmA4WnqYDibs1xRAYRxkGpxQJw5TNd6YYIj7s3gcieLSvMChoMvcU9mCc+LsPOCwwR16SVWl6JwNr9u5YtKkg8AivEImytmsS2SXXl9rcKgs1mOC46nxJCOJTuFYLjnEnXHb9WpRBW1Nw9rqSKhIiyYfnYuPrO4HAea0kDEkGEOHcWigbk+bykGF4HFGzlpbRoBChrEg/Ym5dlsZcCZ+cp7kGC+tYnME+ba6661tWn89rZVv03vLv37IOT5ZFj0oiXRGyVm9nNe5b6l45l49WfRKs6nCM7gxCML5REu15N2HGKoDD7ciBD+JLlNVd/aNjDIxGRZEMmGHyAvpP28wG1t3g6FPjKJOjGbLRMz5ZawTW7KFeijVmcDB06/KerYoyj/kzgRgM9pXn7zgzQHLg6ipJX/XHJ6vAYdS2jnXXdixdr+27ceMHOy/BI4bJIteaCzZuaBZUgbPXnb1VT/5xVXpJ1+hmwQR2Fjf9gAg8is77trWm9Gxdv3/SjLuHDBP9p4qSEjLqZ2w5CY5xHwJHkL/Db920VFbUORI7fbFux3ZDTLVjaMBcNedM7acXGNnuby3TVJXs/cSDytW6rNTXfCyfL8jDk/UtS8wU5rYMDRzO5LnAWnlMT0S37Ffv8meFcfwQH3PWco359pDjDyk9v1pfNoqRd/Vpl8VkvHvu+QqgMeBlO6ngt1U1XxgzI94Vx0kmRzVkJE/ABi+Y6p62cTB7EBxOeOyimOB+m2NSOFpcfQe27jDSz2sX6/YesEpV72XO4RC8BNX+kkVnK3R9T8cvCGdEzfXNp63/V7prd6aQS3DmyH8hF1l7/zrK1R9DDCemJgK82MXzgq/YHIxJmNBueMrwt11lb5bOKPzihHZ9PDqOLTx+fUVDY/b3er8eAb+uS709RKz4h+EEV5j5Ydvh9ULKdAz21b5X/fXgYMO+/R4L1pmCqL7C+1q+YclOKHBjaDw8YYNsQW+r6cII67o61asLrdn1n9UXrAAaA168+Mzi+nqlcIQURlos0DI5bYZspABS5cbJ7A1aGvTNd+fMfeZ7BAH9ISGJksSQoBBZbV9XtZL0rgTNlalJ94q9qzaX8icGgXXENei9UZPughDhyy9LQpDjkZ35SmXPXbID9i7tWtKxMKxLqt+Qk1bhjBNQPYYjfTdO8gJ1eCPnmcQlUdZzX3v4YzkJxX/5W33mU6iKq/+vvdZo0Q/CA7qspLjBX5MVAVdfw8HWu7FznwHDDv1g/ETJCyFBUTL9525xFcrUlCPLW4ZdFoNaNhf5u+a+LEsMIR9nAibDPU11tvTNGWDhxroeX1Fx9DBczMHrbo9+m383JliUPpelnG8ozEfufRYB11ldxafRqsM10sulHg98wVGy8pZdRGHMj+71NOlDFjwDJYegGQ0asdcpcw1oll3Uy6JCwLHxBhT3Ov/b7LxjNytX8kEwkhVZCBLmNvc7CeJmT1UmmuBz1+r7WCsQ4CPNy2u/0p43P0xpuOarVTyG7CKrkyNI9nfW1H8pSnnxaXdZpMQkr27xB6nr86N11rRd6pXudbO7Ip1iDz2l0/o6i5JRYIXsmt3zJ12R/c2WSSbfD+V+DxV6D23pf8gWFpGLHldn0dyo5KL9BWSvha/qLTcQ7F9VrlyobO7z1r1uzEGQK7WoegfS6l4Dx/A9kYlxMHvtebODQmZn/SkqW57In0l2bvDsYz/9YmCgklOwNL8n5Q+OoSGnuYDzUWa6+s9X9duWbj3zQr3ZCTPLlkbc6SvflvERJ88EvDdW3XM3uuFjGvDw+GaCgNy2ZfXzdQ5QdTiXFHBX7mxe8et9MiEFs+uG7UpojOgJGvXgiFkRg1ftN+jf3t/9RlXhl6tVWbEeKsa7FP49jRD4FijToBmirCP87J8l8qlxt5+dsfEL58VKYu/SrT0prUA4B8y7Qj5aKVd33QBy6CHDYefKN23+iFCagGQ6Pnjuqhl5GgIrwzP4sx6jMXfHfoKgYYZafrDbGll6HjJZJTDItpX30c4OWIc7J/fjnoqYtrVCoWxPMxW3c9nrykqti5VZq9IylhCGWr1nFWHmb1uqog+l3MOP6k2WM+fne/O/V13173Ywf/XV1VW1R0Ekz97WaIjK3/vzOeRfZQhfq9YsD1UYbRXzG7as2dqTUA/9hAPmiuURkFV7tz3tqHOgV/PMEUXZcbfzCPhINRpxJHBH31Df2OatVTqRgSSH7DK9foXk0IXGlw7CBT2ysvImfYc4ljf7kaCIn7TG/Gvt9nivGT8cpC6H7QrQIqFexRmaIOFv6O98VlPWm677xmFMu3Tk9IXBbo+fLAvv5tlbJoeh7Lc5uH3BV1v6DlnG5nRbXVMPaB+Z8yWvzu55r/slne2SccXfj5y+9jSE/VmF8bT6usqf7kWY3+7RLDqj3jWw89Itn4FjwzJxaeSJHvUHm19W5dtmzXICxvZAsKFDIxVxkzS9TodRIUCZTptOzhWpTMBIwYv8maVYEy1SdVB5MN+qk7JyYLxNoDCeHSYzks0JQSDXPCRCXqDtHIEgx+gYcDPm7FCJeCh4Q5a5ZVLFcaU6GCGh2gJGmb4cJ1VigVh1kpVF38LfUx8BIDw+nThHKlMgnw6TRiqITNL0OKFghCKZ8RROSlbratgSCyjadFJunMp0iySOaiuMtz3rugV7bDIcLdVZvZmn2rWCGUeJNCjhLfDsSjaTRi4QbNDBGDaYF1yqFkyDWdeExJ4BBNJydBSLQ5NUHb2gCWCrbrOJudNuss5eTVKoXHe1XSUSicUikar1nGZlKFQLaLZBElBpwG9P0CAxCFEk2U2nSSXynt0kY//pT6uoTAPMkLnZQil2d1AGNRCOIbNG7N0EUxcqMW9IS0vRVoDQRT9JF3HlOhtLh9H1IG3YN79D39uhWi6SFpQb4YofCI3nT5oE/GZ49pLJeyhGvyr0HpLGGjIANezOJaPieSgDUAfGSVXvG6mwJWAGmD2gkH2onTtCj5cbLhoBdnfGmGar+jGSoKuNw9MeyV14Qm6JMu5Ek/ECXKGBx6un2FyPPH3zuo3yZ7LquDODPU1mS66Qer6EpfuNBXnf5B39txVs/yTnSVFMcHfbGSpo7/qm49Tl6PkCPw4KV59eoTz05DvVqiV+7rLYwcnpiAAnPP61krwFJ+pbL8Du8VgeglF113XzusNXhIkHkuGYVXK+4UAj2+sHHyn0tYbo9FWxzFPgffnkxecW5UUdqzSY+4/rD/WCqF4W3N85I1Hde/PravRw5kGDE55QcKQ5uXWFfPcZ9yOSRxH4gyF7gTMnY3Nqx78sziyLVH5QKicO/WqL5mrWDrmne9aHgDuDSz7UciJm8d2ZI0yNechGRn9mesUNoEdvdNbtlEcfLVQZPQIl96BBDT0/objlqxKJ85PsCIm6sz/c86f34x6i5yWTPm24hYp1y515D23JGrJYmXLRF42HDlZVc9ZtTAoPX1Lc1lay+B+fZC+QFJ1i9dEvNWq8QPPB/FnUBkEWL5MkOW5mj7B31jR2ixITn2bsEIeXtj777oE332gEG3tdFv22wlOLlPmqVxKtpflvoDCfy3K8ris4NSPReqisHOzGhhGSSgN0z0TdJxM0V5QclqxlKQLg3vxlZW9Tngj4zx+ZnXeMgN7XVK3lcfmeHYsM6m0wVGDvKt+tOf2cMus5bw8FsHlZPy4kftmiYwL+k2TIMBsPCwE/MZ6otE1r7lLiOmjR7yw0zFdm/SgNSCxbhr+Zm5FuO7T3Q7AJ3mU5oq78d+RhDKAMB8dv35fv3PV8Ev2KBQzwbEjLu5itUZK+ucEGUsIHLXWVh6wLZSufdqPWb1DOTUVROld/Z319N/FE+MXakt9dQQ9h1IIYPHsRR9R+9rGSli+DOOux2RMS9yXLAwb4Kfnb2dyv76ZuzpiXsEkV+7f24NUblz3uZoZJ8SQZ6ZdL33wHvSw0aGn+YxeM7d33muFPq8jGIyQxLKSc+O3Vv4iqzl4N31kgncn2Ln2RTFZhodj3M/TO3o/Wzv3ncteS1zemRLa3d5w+yP5pGm5nkrdM+qE8Cm1p95EEMGSceZmbnze8sdOwaENW7H+z6F+dm3zAteznG1PC21u/cPj2yI/uve+oTXQB+rFvdN9srlk1kZOTvscV59TA+Bx84KX9IeAh/aBCTO4mEUmLm9Djvc1UkyMmN0Bxgf8EVEFP3JAOV7BmjZgLnuWBu8VfptNsLJaSm1W44reaqMdwxJHzG1M39Fyii+V9hb8HzE1vUS0K5BrIJLoYd4fDVKOg7tO98XKfUjXw15RGAAyuD//Ah8MsUnlixUEYn2MEA5ZmiatAWkx7qLxlGDn5kfCI1kgTuNQECKAMA4+j2ahhxJQrkKp0lCQjF5N4w2ZyooF5SM4zd1dZ8k+IpJp2C4gFEG6vLCoIwmkrudyVmt5u2uvrrk96gLNUxzydnF5kO6jQgLNHk1WCQhsg6FCgoH2ztPuLdnIC8qx5xxUXd1xtQgEORMaPB5Lt+vPRKh5DxuacqUVnMiX9NEGXQUqMey9I4WiUqyhdBBUX8l4iVyvpC/YZ+iZTE6X2eOKcj823zR4/PTym95ZJH8qj0JbDDBnEhHYvmz/O8RAkwAxwcjpgh710L4MkS+fDPFr7M2iOLUGrYvg9NgpMrSCQYpMbYRo4QpiSY6PAVMcJjMBEIQDEGEvvRIE/pdoFOzkXvkJU2Eb3avyU6qKbWbD5JSt6E1Fl1WXyvL1g7lIPPRVAoxOAg4ceevdxgxgBjABGACMwTghcbmnsiM6vk08mmxfYrmKzF1g8MTWMAEYAIzB1EQD/dFpa2MBfZ4qZRA96gYZzjE6eAD5vBrpHmB5GYKQIYCfnSJHC5TACE41AAI3O+O3knGiQcPsYAYwARgAjgBHwQQCbPR9IcAZGACOAEcAITF8EsNmbvmOLe4YRwAhgBDACPghgs+cDCc7ACGAEMAIYgemLADZ703dscc8wAhgBjABGwAeBALzAwN5g40MfZ2AEJjUCWHon9fBg5jAC44BAAMwe/p+LcRgXTPJhIIBfYHgYKOM2MAKBQCCAK1Ts5AzEgGAaGAGMAEYAIzBFEMBmb4oMFGYTI4ARwAhgBAKBADZ7gUAR08AIYAQwAhiBKYLA1DR7d5qVYUJlM+vIwykCN2YTI0AhMI4yDI4LEIYpm+H5zlP6ug9E4N8jc4VBQZOzp5D3ceLsPrCwhnzkJVmVvgvJwJq9OxZtKgg8witEoqztmkx2abBPu7PCQqqCQYshXwJOnwWXcK0WnGcLL3tXbS6VGSLJRcfesiSAXZ2VjZPTDYHzWkkYkgwgwvQhrpOkj64vtblV9MmlBDiEuVmrpCQ2KEQoK9JTknx/dl2WxlwJPEcddtJD1IGc56q7vmWROK+VbdFTp6cy2f4t6/BkmYpMAumKkLV6u99jxJli90hcPlr1SbCqwzG6w4DA+EZJtOfddBnbYNFKyIEP4kuU1eCIYHeZe6bAOFQUyYABJi+g+cBpsyOtfE/KBDGO0jiawboPl1PudmDNHuq+WGMecjpal/dsVZR5zJ+JBMfVd2DrDhN5WrOrqyR91R+frOp1Dtk61l3bsXS9tu9Wf7N67YYWlDlgrhIYVsnZk59dfSK7gdt+GAg8KtacA8fJtqb0bF3v53zxh8GCnzYG+8rzd5wZoO70nypKSsion7HlJDok2XHyHX7rpqUydGa6n8qeWRfrdmw3xFQ7wHnLVXPO1H56gVHS/a1lmqqSvZ94HJ1+tS4r9TUfy+dJEv4anqxvWWKmMLdlaOBwJs8F1spjei66Zb96lz8rLKAHBaDTpB1/SOn51fqyLgYVP+zTWa4+7bKYjHfPPV9BnXFtO6ngt1U1X6ALPPD3OEnjqAYLdQIsC8Y0Tg+MQOAJjIPZg0xywmMXxQT32xyTw9Hi+rJ8664TgyR8F+v2HrBKVe9lzuEQvATV/pJFZyt0nb2ffnqFyuQK5Yp1Itu5vzoovD2qU3n4a7ojwItdPC/4is0xEuU3/lighZeREmHi266yN0tnFH5xQrs+ngcbD49fX9HQmP293q9HwK/rUm8PESv+YTjBFWZ+2HZ4vZAyHYN9te9Vfz042LBvv8eCdaYgqq/wvpZvWLLjj05gWwhP2CBb0NtqunBfsq5O9epCa3b9Z/UFK4RcVJwXn1lcX68U3rfu6AoEWhqnzWCNDkaq9DiZvUFLg7757py5z3yPIKA/JCRRkhgSFCKr7euqVpLelaC5MjXpXmF5F4MWKJuvQe+NmnQahAhfflkSgsJ47MxXKnvukh2wd2nXku6F4V1S15pz1mucswVkDTjed+MkLyBtAQz0M4lLoqzn/j67+LOB+kwqs//rc1b+/B9EoBqe1Snc8Nd0R8DV13Cw9W7s3GeASYB+MH6i5IWQoCiZ/nO3M1woU1PurHGW4X5DTlqFM44SYcLV01RnS9+cARZurOvxFRVHD8PFHLzu9ui3+XdjApl/Lks531CYT7v3aRqus7qKT6NVh2ukl0s9HviCo2TlLbuIwpgf3etp0ocseBJKDkEzGrRgr1PmGlDU46JeFhWSrP3SgKJf53+bnXfsZuVKPghG9nfVMl5bYW5zP/DO3OypykQTfO5afR9rBQJ8pHl57Vfa8+bDJxB3ReDs3dMMXLIeQ3aR7uHIvvs7a+q/FKW8+LRHcZ8hBm7mz4/WWdN2qVeGe5T0/MFWXJQ2s/d3qpF3OkS4ttbisncWJaOQi1cfWXTY0shk+6Hc76E83XrS1d+llQlRI2T4yf9gLSwilzuuzqK5UclF+wtIERK+qrd8rs0ubKfGyUfrutEGbvPUouodqHfDd4fpwgQlxsHstefNDgqZnfWnqGx5In8m2a/Bs4/99IuBgUpOwdL8npQ/OIaGnOYCzkeZ6eo/X9VvW7r1zAv1ZifMLFsacaevfFvGR5w8E/DeWHXP3eiGS1zg4fHNdNn125bVz9c5QNXhXFIg7r1H2Syp2CePIllx3bBdCY0RPUEDHhwxK2Lwqv0G/ZsgrjWrSj9fnbch9lEg2N7V3cVwaroi8C1QpkEzRFlH+Nk/S+RTpsV+dsbGL5wXK4m9S7f2pLQC4Rww7wr5aCVwht8AcjieMnytuWBn84pf75MJKcShDM/gz3qMHgB3BCgIGmao5Qe7rZGl5yGTwGMv21beRz8owjrcObkf91TEtK0VUkYCZrrsdWWl1sXKrFVpGUsIQ63es4ow87ctVdGHUu7hR/Umy5nz873536uu+nc7mL/66uqq2qMgkmdvazRE5e/9+RzyrzKEr1VrlocqjLaK+Q1b1mztSaiH3sIBc8VytOq0d9vTjjoHejXPHFGUHXc7j4CPVKMRRwJ39A2q4vJWoAecX+zi1K5ML0EOSnLILtdnPgX7577Q+NKhuKBHVlbeZO4dy5v9SFDET1pj/rV2ezw18vAmVDWeQwxvuhy2K0B/hLIKMpSohF/FddNU81F3us7mqF9x6cTpvraast503TcOY9qlI6fdDmeKgl9pBPf8UvabCdccW5Y1ztdZgYqlw0//v5cMcOZkbE631TX1gLUFMudLXp3d8173SzrbJeOKvx85/djr1bvEcJz2xzX41boI7ds9mkVn1LsGdl665TNk3tBM5G/wHytjuNgcs6rfNmuWEzC2NzTk6NBIRdwkTa/TYVQIUKbTppNzRSoTMFLwIn9mKdZEi1QdVB7Mt+qkrJzbRkWoQGE8O0xmJJsTgkCueUiEvhxNCsHzCuPVIbNGTN51dqhEPBS8IcvcMqniuFIdipCAHFuHKilUXNwBTSnohU91shL+nBYIAOHx6cc5UplCBWHSSAWRSZoeJxTCUCQznsJJyWpdDVtiIUXPYg8kw2D+5AgEOUbHgHtyQRmOlkIt5nnZdFJunMpkBTPOLdLeAs+uYjNp5ALBBh2wNLAYl6oF02DWNYHl6dAQAwhIOx0dxeLQJFVHL2gC6MDbbGLutJuss1eTFCrXXW1XiURisUikaj2nWRkK1cIQAhWQgEoDkqKYv+UmA0tEkt10mlQi79lNM+ZVkfzZ3kAPmZseStG1mGxqdBxuFcHccid8BxTITuiin6SLuHKdjaW96Cp073wrAm1mgzCKpKpyI1zsQ52zXCQtoH7RFNA3w62XNN5DJfoqTxtUvB6KkhRmsiXWYAGQYXcuGRXPw9F3nFSJ46Sq941k2BKoUDhOoEc+WvfcEXqkoLYnpYhGwKM/D/KD3YMHoQPqjsPTHsldeEJuiTLuRJPxAlyhgccrrxUXuw/3St+8bqP8maxS7sxgT5PZkiukni9RabBM3n0+r3b/isfdlTlPimKCu9vOUEF71zcdpy5HzxcgN8WgRf+LrEPRldX5CeFgBeevupsQTk1vBDjh8a+V5C04Ud96AXaUx/IQjLLjbnFlVXRn3lOG+40Fed/kHf23FVAg6YsTs0rONxxoZHv94PJfX2uITl8VyzwF0uWH/ebF5xblRR2rNJj7j+sP9YKoXhbc3zkjUd178+tq9HDmUZcTnlBwpDm5dYV89xn3I5JHEfiDIXsBPkOkdvzL4syySOUHpXLi0K+2aK5m7ZB7umd9CLgzuORDLSdiFt+dOcLUAwzZvVuYuaLiBlCeNzrrdsqjjxaqjCPdsk4NOoBR1fZVyWLnJ9kRyUWdREJxy1clEvhLou70v4PUSxp9+HOLE+sWO9P9vAE5b8udR5djDVasTLnoi8ZDB6uqOes2JoWHLyluaytZ/I9PshdIik6x+uhXYqmRAmSD+bNCaeqT83vczB5h76xp7BYlJj7N2CEOL2199t0Db77RCLb3uiz6bYWnFinzVa8kWkvz30BhPpfleF1XcGpGovVQWTnYje2yGNSVBuieibpPJmiuKDksWctSBMg/Wdl5Ii9mBpjJs/PaCeDB4Eu0t+R7diwyqLfBUIG9q3y35vRzyqznOASwea+lFhK7Wn6bCaPTw1U/PzkHEnMVeAT8xHii0jatuUuJKxCYnYWG+cqsH6UBiR0XGQYLr19W9jbliUBU5pHZeccIGEFI1VqC47fvy3fuej6JfsUChnk2pOVdzNYoSd/cYAMp4YOWuspD1oWylU+78ek3KOemoiidq7+zvr6beCL8Ym3J766ghzBqHQ2emYgjaj/7WEnLl0Gc9djsCYn7kuUBA/yU/O1s7td3UzdnzEvYpIr9W3vw6o3LWMtQhi2eJCP9cumb7xjgyxKDluY/dsHY3ggu3kubsv9BVXT16bepDYs2ZI3C9o+gCVL/eAwx6j4nfnv1L6Kqs1fDdxagnoLvQemLZLIKC0XVn+Jy9urXLkwuH1z2+oaUyC+bPypZO/efy11LXt+YEtnebhpuT5K3NPqj7F9Pcnipq9OtdXvLO0HoD4YVw9K0nQ3eMgAGizMvc/Pzhjd2IgD/m0X/6tzkA65lP9+YEt7e+gW9wY/Vrh+tS3V7sn9RUj7KL3avWFWRk5O+xxXn1MD4HHzspf0h4FH9oEJMbhwRSYubyGd8U02OmHwI5wL/CaiCnrshHa5gzRoxFzzRA3eLv0yn2VgsJQP9XPFbTdQeYpKjAbOpB3lp0E/GyQl/DZib3qJaFMg1kEmbmweaf+Inh4epTtLHn1MeATDUPn0AbiVmqcoTKw6agLub8YPB0ixREUiLSTcVOzOAMuz8xtRNe9+HWBEEkmkg/BoFJcZgpkhVOijJ4EKOJvGGzeREA/OQnGdkLfjJkn9CJNW0W4AflQDeUZaDcQiE01ZyuSs1vd2019ddn/QAZ6mOeTo5vch2UNPH2aPJKkGhDeCwLVDQvlnaCUY7OQF5h6mG7hAXBBquNqEAByLjMX9JThgHILsiwGE3dMp5DBmbc1YtMpsp6acJdkXWuFNDTN0F41CuorQQVFnIXTkA/eKkF9hXcV1i9A/UWn/5zyZK//HEOR8jlci0e29p9KUMsPKbOWA27pYKkJKl5GGYwYJo0I5l88c5bBEC+JA98tW6DIYsbQ/zaL3P9OdBEoxi9jdtR0c4CBRnkxthGjw+MSXHRoGpjhMYgYlCAIgxlt6JAh+3O/kQADt3sqI3EVVWXSaP5VSfHIwG0OgE4OChyYEJ5gIjgBHACGAEHgSByy2NHdH5dfLJZ/MepFe+dbHZ88UE52AEMAIYge8aAmA3Q2lhA3+dKWbSPegFeijG6OQJ4PNmoHuE6WEERooAdnKOFClcDiMw0QgE0OiM307OiQYJt48RwAhgBDACGAEfBLDZ84EEZ2AEMAIYAYzA9EUAm73pO7a4ZxgBjABGACPggwA2ez6Q4AyMAEYAI4ARmL4IYLM3fccW9wwjgBHACGAEfBDAZs8HEpyBEcAIYAQwAtMXgQC8t8feVzp9gcI9m54IYOmdnuOKe4URGB6BAJg9/PdOw8OL70xqBPB7e5N6eDBzGAEWAgFcoWInJwtXnMQIYAQwAhiB6Y4ANnvTfYRx/zACGAGMAEaAhQA2eywwcBIjgBHACGAEpjsCU9Ps3WlWhgmVzazzfqf7OOH+YQTGEYFpOKH6m5XCMGXznQdBDR6cu05vdz0IDVx3EiIQWLN3x6JNBYFHeIVIlLVdk8AuXdTLokiOwCc1DcCh7bkScF414FIo03b1U2LtsjTmSvio8FyZFpxEjK5hCk/CscQsBQKB81pJlER73k2KMQkWrQQJR1AQX6KsZsSGLjloMeRTUiXJR0eE03fG7xvoZeH3ZfqLrBYu6tdu8dDUdr0shNvQHzgAACAASURBVJ+s/TJgyts9I/iS3EYLi66rr2KdupOVARTCq2v1fawcyClE1MciuWdfiCTXwKbK6hyVRHomZK1HN31LjTjH1fdBbgVrxKmK33aV7W5O+WkaOIWnv6tW6aUxXP1d1UpKXTA4TEIFOGIUvksFA2v2EHJijXnI6Whd3rNVUdb17QSD6brU2/N95tjoGxUrZhLfdqnlqwyCKnAEs8O47uqupT8uh/PS1alOzzY8uc/sdDo6Mq/u+OcfQ00xTOEJ7hVufqIQWK4x3x5y/CGl51fry7o8tLm9cYfsaEzj1SFnb9WTZ2tPX3QRUAn6qPeAch6etHEd33Cg0W1Y7G2NR5oaWy7TzQz26WsN0cq9ry8I0GkyLntdgczwQqPD6TTve/JM0+kLg3Rb146XVehKyuo8Ho+u1GWtzvKxfHQV5vti3Y7thphqBzj5vWrOmdpPL3iAyxQjEzOFuS1DA4fhUahgLfKAELu+LN+654zTqwmCsH+yt+z7u9Qrw4ESKFNs7Vne6nAijVECh77fWLA2rxmqiyGIgyE7nbH3k0oB+nQLZwAExsHsQVw54bGLYoL7bY4H8jEEYIQumFqt3xc98z03KSDNpZelu3ZnCrlE+BLVh4WLTtfoPr9hrysrtabtei9TyOGEJ+R/WLLwdEX951f9Fp5oW+7uDE5NBALhCRtkC3pbTRdYjbu+6e0hFojjeARnTubhlsOZcwJkZlht+Ek+Gpu1AQkwKZPfdu3f1zB4pUFdRdlk11ldxdlFSllswLj5xze9ZiI2IS6cwxGuP9z2IZxH6HL11ZVUf0UMHlHv91wQCMIvFf74PpYPLk+JWPEPwwmuMPPDtsPrhQFj2A9qrKzBvvL8HSf+i5VDJq81q0p7tm9HB64+Gl/82UCbKiGcQ9BDbzabWq+Q6oLgCH/8i3U/sJ77muXcmjQK0KdjOAMgME5mb9DSoG++O2cutDfQyR6SKEkMCQqR1fa5PQNzZWrSl2HvqqV8jkFBC5TN1wiXpVktE5JOyJdfloSgMB4785XKnrvk8Nm7tGtRSeBVza3tsnsOqst++tPuwbos/gzGMQXV0+ACyaLHyZIc4YtLom3n/noFTObBuMWLqGOFucLEF6OtvX/p/spfYYdnK/jXdwyB/s6a+i9FKS8+zeo3J1amXHSqUFHudn5afpudd+xm5Uo+iDB5eMn2NFsGkaePnyh5ISQoSqbvszTvkQmR312YJpPw0QPMoL9M4FvTUiVRHOHmnIzN6ba6ph74dOTqaaoLVnUcUxEtTZ9DQ+j6/GiddcnmzDk3fecddDUyDPyN6kr/qSKJUJLb0PVnNXLqhQjX1no6HJGhNagVTBSAqvnt57qaE9EFTTWrraWeD3xRP/2w5ZdEYVJS0SmWYaCqUV+c57KU8w2F+VpmCru+1CZHCZUGVOWiXrmzGQYjXHb92pCQtP9Z9ipyk57XZhe2UxD7qBGCuNtT+QpE1bcXZLPgYNVfpmn+K04w05MbAprwVolme7y38YVDb0mSpcyOL/4L+bgJazr+es4WPV8Q7qbCVoDuXJyaLAiAl83HcLG5Z1W/bdYsp2/xxIqDJuAWAH4BhYDgrtT0DgzZdFIuT6w66RgCnoEauSBUpGq/opNzueKcJuAtAJnHDpusvZqVXIFcY7INDdk6VElcQqAwXvKXabPp5KHi4g7YCiopUplA0n0NmI06I3BmQsof54gjBYqmq0ZFaKjCeJspdE4jjhRr2gGTHtlmjZhYXqr5mb/C55jKODGlEQCy6sM/kIdQWoaZbyCBjiEoEuTFyLZnbafZWCwVECJpMZLmITgdkFBZddJILimozl6dXEQAQR0AgkhwkzS9wEvWq0niiqSaDgeIDnQUi7kEqDXgL/M2mEGhSaoOMDXIknHAge80qURcuc4Gbsq5cArcMqniuFKdbQi0Gy1SdTj9zLsO5203A0MwLVDoPlaJBWh6wjkLKTiaFOKf6dAMYnfVaW4qlooIgbTYCKctvFATSZoesi2YgLlIIUCnHznfI8m5D1vzmGyw6BBwbxp3SwWhAuluas5S/XIifCKlOusQ3SMIHkkBDApMgGa91Egvo3ZQdTSCZDvMJ+id4HmFsRVpAPakBkoige6CuzQkCC5vJeN0GHMEgg0IJb8KkKGAEw+EADX50NcDERoa8p32IyI4DAduKR9ydGikIjSrkdlD/m56WpJNIEkVZSnWoJnpbpaeq2QOOSGNZ6kJ7J0ZyeaEIFDoxU3KI0VOtqZ2lYhdzNmhEkVLdeeBpiDQ/CTrkKqkpulX/gqD6Yev6YAAEB6fbpDLIJYSpCSQNHv3EjCKFJT8ZwXyGrOTNnvQJED7RBUgf7Y3AM0t1oCGyInArNjgfAlVNF2ibBhZiZXpIfGIAinDNU2aJBGyDcgIhcp152pQu//lb96RdpdkAJgnaEYEgmiwLgRLUsqmiqSqcsasUbyzvpwOk0YqeFauA4YbGloCml5g7FBakGOEi1GWQgA1HSdJs+qz9GRRHbKZNHLKijh7UI/OmVQJAnGCABjwc5qkULiAJucyXLxSZs9TaUB6tOUGSYgPD0HNbghw8Tzqr/eIw7lP8c8uj9Jw1fIsjRIkDZcp1EIE/GT1160AfYjgjDEhwBb8MRFwVxonJycBnOC5Jcq4E03GCzC8FxojeorN9cjTN6/bKH8mq447MxguZt3dackVevsr6Gqum9cdgNKMZ0Qx3C/bTl8j810W0ykrf/4PIp8RzeZ2f3qaisYPWjpM1mjR3Lhn/RWOoGnib4yADwJQ8rdE1dUaLvgKrldhXozoCa8sgrh13cZsEmFusjI9njZutOXOIzjxOarElndy37WmbkqLgnV4kozUU1nzNxjS38yJf4yh4pNgMzAzKnY+0fz7o8ABC2LzCaq2r0oWOz/Jjkgu6vSKHZBkOOHxr5XkRdVVGi/0nzh46BxBRRMee1HdTXzdUHWU2VZDNxu+pPjIwZTWjS/v7hgeGl58blFe1LFKwwWCMy9z8/OGf1m1tuy/533wr+uIuvwtFdasbevnUNFEmu6w38H8WfDJnRM2ix/sWQi4N/fknd94dH86yzNJFrlYt/cPMbvyV4BIHnm5Oovm0ttlOXOkG5fYdQYT2rTgsugVWb9/svJ9VQLPk763AvS+i39PKALjZvYIe2dNY7coMfFpxg5xeGnrs+8eePMNuOkZSMy2wlOLlPmqVxKtpflvoDCfy3K8ris4NSPReqisHHj5wVZpdaUBKoGo+2SC5oqSw5K17i1tIA5gqV0rWYeiBSAiUquqPBWZlf5iVMaekucMhTv1YHr3d5YXVJxetCErNown31kCYjPb9BYXKHygQIM2Ajzht/CjEzpkuPFJiABQo7lzJepOGH9Cks+N4IXRk4v30qbsf5S++Q58q8HVp9+mNkCRY6wRh5e6Ot1at7ccvDMD3oLQVhqugOXZ/TJd/Z1qSViatg9aKTCzsgg7d13mMkpZPyV/e7OIeDZ700tgj42/eee7ySU0ZpNGt86qyC7ttJ/Xr12YXD647PUNKZFftppsLMSvNSsTJWSUDga6znCfCLla+171laUwikFd4NmLcG+rYVUGm8iA5Usl/o+3YYdvyKUi+wr6VV/fTTzBA/hwePLt+dwrV1LXZ85bkqN6vrv9sXUbk3wMFWgA6QcPNcLmmc0BSoN9mMqq3hN5IhD0D5qf136lPW9+kERrIcA4lhb2/ORtOWuVznlmcco/GSoPwsF19TUcbL2bKo6bCdVLVuq/Ebs+1vnfvuSrAH3YwBkThQAtqaP7ZnPLqome8el7IGBXA+NzpH+GjKYBx8hBhZhcGTEhEJupJgfEM+DFJeMWyNGBfgvWrBFzSb+8v0wqmoKKit9q8g5CDJib3qIouyMuwDNhbqIa5AqkGhSAhJ1A8T+aNxhoQdcwhcmb+HNKIwDkxod/b5cXFfeiYnvDOzndckIQVGSadnKCNhymGgUpiUDkUOyK8Z1CDkiHIZoDgpVSMQ/FrfxmkgEwVJKOiKMu3DIV57AMDyDZoVpeTIe6/c07NgNMmnTiSX99qGY7xa7PtGJNEzR9LJ8Ap6yn04WMVvKSNN1/AcF+VuwAsQrQ6NBkFbPi6yDbc6oys28IhDhzikn/sKMpR3EYKBRw+Tg5QZ6XGulFvmKyEe8xdZq7u6EPlrxYd6FbNUFhvErfor+RxxJqGYIcvv/L0mMoG3zAbvpVgDQR/P1gCNBAw+8HozQUBOqzyY0wDdZITMmxUWCq4wRGYKIQAGI8RaQXbIde+ApRYYMvnuJrnBAAj3pvJJbMPnI89+G8fTJO3ZiuZANodGg/zHSFCvcLIzBFEWD9u4rL0nSw2Zkqno9t3jgOpqurLK8tZYcc27xxBHlykB7jajeAhndy4IC5+C4iMLmf9sB7e/t2KPc0fA0CYTxxzgfVv8l4WC9xfxeFAfd5kiMQQKODzd4kH2vM3jgiMLnN3jh2HJPGCEw5BAJo9rCTc8qNPmYYI4ARwAhgBMaOADZ7Y8cO18QIYAQwAhiBKYcANntTbsgwwxgBjABGACMwdgSw2Rs7drgmRgAjgBHACEw5BLDZm3JDhhnGCGAEMAIYgbEjMGPsVema7A02dB7+xghMDQSw9E6NccJcYgQCh0AAzN4U+Z+LwGGGKU0XBPALDNNlJHE/pj8CAVyhYifn9BcX3EOMAEYAI4ARYBDAZo+BAicwAhgBjABGYPojgM3e9B9j3EOMAEYAI4ARYBCYmmbvTrMyTKhs7me6MRUS4E/0hWHKZnQ+JeJ3SvZiKiCNeRwtAt9hUYRd95iWPvN0tGBO3fLfGTEIrNm7Y9GmgsAjvEIkytquCbZLFq2EZIbkp6yuC54CSl0uS3NFkUxIFwD8apt7evWvCkPW6ukz1vu0aSHC3GZWLcJNky9RVrMJ0oTx95RG4LxWEiXRnnf3wa0LwK0wUl5CJLm14BhkjwucEJsvCYH3QyT58ETZh3CB01mF9MHfVHMX9Wu30AKMslgnOQSCI9YcR7O8TM+e5uDvsz8oks2lZxWYI9pmTyhclsZcCZ+EKRcdLk1zNdinzVV3fUv/BN/ntbIt8Dhoj8uvWbr30HjUn8gfbu1BYsdoJMh/iEzvJVLjx6qrT5scxii68WtnklIOrNlDnYTHLTodrct7tirKPIR4QiAgzwV1Ok4q+H8uenHhG6QNA6O+LCbj3XPPV1An09rA/baqthmZeyuye9X7u6B5dJ3VVVzNrihYQZ1YzfCPaDr+kNLzq/VlqCRzByemOQKPijXnwImmrSk9W9eTUkJ32N64Q3Y0pvEqOGK16smztacvughoITweJOiyAfsOT9q4jm840NjHLOfsbY1HmhpbLtNNDPbpaw3Ryr2vL+DQWQH4pk6OhbPmz4XLFioNaIEL7NaPY1buOxfzrpk8w9XxJwXfVGW4wGrxYt2O7YaYagc4V7ZqzpnaTy8wnPe3lmmqSvZ+4qH6r9Zlpb7mY/lY9NzJ4YfGXWYypPxqpHm5bTcG6jPJQ65HwyWwlwtG7/e6drzs4JXt2+W8QAgFsOXjK+WjwWNkZcfB7MGGOeGxi2KC+20Ot0tvZPyMUylOeHxm8eEGTXRDHjBUrk716kJrdv1n9QUrhOSx7jxwv75eKSQeX7Fnd0rde3X2O3bwmbJ7z4rH/fMUHrM4hnvFdoOZtv6L4dxpiAAvYUNGXG9HxwW3eLu+6e0hFojjeARnTubhlsOZD+fUtkdjszYsOl2j+5x8SPq2a/++hsErDeoqajkGl25nFyllsYHQbz4jCWfN4aO7oquLwALX1VWyOu9itvFkvSqdOiAJzrpD9bnz3BVdlwBMseIfhhNcYeaHbYfX00cpDfbVvlf99eBgw779HmvlmYKovsKRWj7QDi928bzgKzbHZJ+WnhrJDdBDSd354hMdR74qZlyE4qH04AEbGSezN2hp0DffnTP3me8RBHRKhCRKEkOCQmS1fV3VStLFETRXpiZ9HPau2lzSOxQUBFYu1wjgf1ST7scQ4csvS0JQGI+d+Uplz12y4/Yu7VrSUenP7+QJDmde5uYl1rqjXV1H66xpu9Qrwz3vU7/CV6pVj1Qfqi47wNfsGaYMeBSEJ38Oxs59EooOmzeGYcKnX1QD9s6i5DDoBxsgiJs9f9ju6Rlz9ftCBP1sfIksDfV07lo9Wtz3d2opbxJ2t/odyPHLtHfWNHaLEhOfdh/7yomVKRedKlSUu/3elt9m5x27WbmSDwK6/V21SmqchbI90O+HxjRR8kJIUJRM32dp3iMTIg+pME0m4aPVM3AY+mYC8dBSJVEc4eacjM3ptrqmHqjnXT1NdcGqjmMqoqUJGULX50DUl2zOnHNzGKGiGfgbBVb/qSKJUJLb0PVnNWI3RLi21nJPE8KhGOjoajJYpb9SD7dMJBvgPJelnG8ozNd6uYihef40WnW4Rnq51OOBLzhKVt6yiyiM+VFRp8dzoP/RdfU1HGy9Gzv3GTgthwOQUUFAs5DPqaCwq79TLQmT5BrMToK426Pf5uWJ9R1BUrNJXn4ZDhwD1Fg00ufgXHcq8O+lLT3GGj5Su9kIChJu1RYp89q/qly5UNls99UbUMRCXpAk8oPcgRsIm+vsp613Z4uAcobDjRzOwlfpR+qbPVWZnnrGR3Q9VPqOguzCdkrKIfEpcY2D2WvPmx0UMjvrT1HZ8kQ+pRcGzz720y8GBio5BUvze1L+4BgacpoLOB9lpqv/fFW/benWMy/UQ7+I01y2NOJOX/m2jI84eSbb0JBV99yNbujbH/SX6bLrty2rn69zgKr+/E7eI8AJnRUBVoLguhIcMSt0uLUOJ3zhc8Rv9/37vGUvers3SYrH8mY/MmP2hiNR0p8lPsEZnjfPfpFQ/72zSLaiNbn5SEm6MIQg7N3nhaWXnMgz9kfZpgN9V+u2eEPUidSOvduedtQ50Kt55oii7Pidi/ot2fXzPwBIDmF3q/dAP+Dvb9vz5tPRqaCgR1ZW3mQIkrf4Ka0x79fmxLMliLMg93hbRUzb2ohnqfWc8LVqzfJQhdFWMb9hy5qtPctbgaA6v9jFqV2ZXoKexuxnZ2z8wnn58ELjpoxaIq/VAaIDusSr3VC/u/oO+GYS9rotyxrn66xgrtBxhAj529lEaRnyT5SVEqmr4hNXye8i43Gxbm81kb9dTjQMJ1QkA/WZ34c9vH6iaPXG1pSDR7QvOXQfdafrbI76FZdOnL7gFV1j0CATj83iz7hi+7vN1h/MnxXqddP7J3dO7sc9ECYhZf5hAZe9rqzUuliZtSotYwlhqNX3sVsEz4W/bamKPpQiu6flQ0MzQ5R1hJ/9s0Q+Z3gAwfx64QOkbnoqlv4PxKDzeuee1Sv+I6W5UZs+G/yFx2C3NbL0/BD0xAoMsm3lfX16/yMISt5OOXrd2VsSfeSdd4/bx6aRvJ5N3drSe6z/gthIqIehmQFzxarE7VqN+FmF8bOKuBb/Qzz4f2b89D+cA4czWf5Ml8N2JVr0g3DOHdPhsu6XdLZLxhV/PwLd8uDy1TN+RZegmKwv2VO9S4ykfIV7EYhAncwfQG2O4WL3iFX9tlmznCD9/o4OjVTETdL0Oh1GhQBlOm06OVekMpF+/yHyZ5ZiTbRI1UHlQVpWnZSVc9uoCBUojGeHyYxkc0IQpN+c5sisEXvkUAx0dKhEXLnOxmqTroG+rxoVqxRGk04qVhivetwBP9w0bSaNXMBdqentHYY3Vi8gFYgDVyCIFuQYoZ0eGoJdi5RCFQYvp0klIpJ+pVrjA5HKNOAuiYot13QclJLeWab/VLiFJIY/R4QAAM+n3DmNOBIF8Og7lASCBYbPLbqIxzeU/GcF8hqzE04HoBBu23RSbpzKdIsqRv5sb1CEhqKGvOYFlJNQRdMlj8nCymRGHCYQBScQ6GhpTZMmSUSJE2giVK47V4Pa/S9/844UKpIBUhRDoWwqmuBCCtjUjmKxSKoqN1JROncPWXOcyiQn7LEOVRxXqgNr1ZFdaPoINuiABof8c6m6MA0mPMkGG3DEUmiSqqMX4WO87dEMU9LpMGmkgsgkzRdXhgPQrYIgCTi83GhB9PP0ZEfzlOkI5Icn/tUv/YygyQpnNFmSLKYx6qRj0UgmpCShqCAt4daWXmPtxQZkH3QcmD2b3yFub1KEeihAWAH0mKWlT6rEcVLV+0ZyiwNLI7H0jI/ooo5Teh7QAyoRsY6Ij+MHG4wHbGYcnvZI7sITckuUcSeajCj+ERojeorN9cjTN6/bKH8mq447M9jTZLbkCodfcrjO6w+cikx5URSfJo8+Wqgy+ttoCtwNe/LOL9++LF7+dsqpkjr3ZgFW+yjJi88tyos7W2/8xuOOmzePbOpHVMwLROvBo/f2G/mrSHD5sx4DNzgRs/jUfZY4AiloyxX6rYczHzICUPK3RNXVGi74Cq4XK7wY0RNeWQRx67qN/axD3mdlemjtG20gcsaJz1EltryT+641dVNaFKzAk2Sknsqav8GQ/mZOPBSbYS42AzOjYucTzb8/CndOcsITVG1flSx2fpIdkXzPZyzwUNV4wPBPKYtj4lelRzf8qwoEKUZ0oekTdazSYO4/rj/UC6J6WdDdNiNR3Xvz6+rao9RuaoYWYKngSHNy6wr57jPup2/mNp0AMbPXSvIWnKhvvUBnoW8WgB755I+o2BfuNh9sGcO0pB5wOWGz+MGI1lg00my22wCsZRht6TXWb/zQD+/3zgqdLXpqeJUYvqS4ra1k8T8+yV4gKTqF9KGvnvHfgJtJ//cnde64mT3CN/7B4aWtz7574M03GoF4uSz6bYWnFinzVa8kWkvz30BhPpfleF1XcGpGovVQWTnw/rssBnWlASqBqPtkguZAwCxZO4yVAhERfdFaaZ51+a5fpIRz4rdX/yKqOnu1e3e1HdyXySosrq6yvE9iNmeADQkgWrOF0Gwt/3KY0AYIBtTXd0elJCYMy5tHv2ygG8Exm9/XvXJJsVVNBSquNBTuhF51V1/du3XWpIxXczb7QORvPwJ/SUa67dDeD2EkCcVjkrXD8Tmp5W+6MAdWS7lzJepO+K4LknxuBC+Mnly8lzZl/6P0zXfgWw2uPv02tWHRhqxYxhpxeKmr0611e8s7+0E4yqCtNFwhiBn3yyRjUWla6A+EMyuLsHPXZS6j3PJPyd/eLCKezd70Ethj42/e+QpVaMwmjW6dVZFd2mk/r1+7MLl8cNnrG1Iiv2w1QdH1d8FZszat0Lr6l79Y9jgwvtUqfnWGFM4qcs7AWbdOxn4bBLxxMTcV2VFy+hBPhF+sLfndFegWolfw4FGVOELtpvZolbR8GcRZu0e214/+zpr6L0UpifHDolpBqiAYkgdvEIDqwS9ser9i3aV3stWk6icGG9TbYAR90FJXeci6UPbqa/ccQYYDlpoalUZiCLgTbKmgx9qxMCP9MiVIMHL5x65+EIgE1zBD7P8fl2c+JZodarvucA1a9K/OTT7gWvbzjSnh7a1fONyt0yn+vUWXLjblvmlZG903u5usmujxmb7HFefUwPgc6Z8hnRLABXFQISa36YqkxU3IhWIz1eSISZcdFzgxQBXkAIF0uII1a8Rc4OQErhd/mU6zsVgqQC1yxW81UW8j0BxBhyR9ccWK3xw2kd5FdB9ULVdRdWFD0oJyY0e7KontY3QYc5AbE3jS6cuLZo0JOYX88QYY9ugX45wZMOs2CARyTXuNIpQn3ryB7DvNvz+IoPOBBMHtZXWam4qlItQ9njjnYx9nFM0w/h4eAYCez03GXUbfcYPvc4suAr/BeNBSTIDBhZJPOznBXYepRkGNs0C6G/qU3GRhZeSaQ3NAsFIq5iGnkd/MAbNxt1SASoIJRk4g2PwtU3GOppclqMDttryYCSj4mXdsBpi0s1cnf1Yg/fWhmu2eYgnbQJfXHFf8RkdOAfIuYO99FSWWAF3gJ6UdaFT1AXPTW9RkB3c17RYwxQhPv8UQCGCv5MLwQbe3wxkSgbBkqY75ODmZqCJPrDiIZrpfAEEmo4J4YtVJENIIJeE218gFz0o1Bh1wXYo3bCbVFAOy7wh6aDZaNsaokRglySRAT/2NtZsNgisu7nD8J3JyAiXE7helWuGo+nM/QgcmivI4zR/nsLvJiAFoHCo68k0tH9H16PiUdHIGgQ7SlmEU38AbwZQeGwWmOk5gBCYKASDGU0R6wQa/ha8QFbaKqbRvYKKGFbd7HwTAFk9+Af/4yeL4R+9TcjLdDqDRof0wk6l7mBeMAEaAYP27Cnpbxpkqnj98lAYDhhEYMQIzn1+T5aJeehlxpelUEJu96TSauC/TCAFeRknjdp7mxRlgn8fsNy+ll5XIx7gtbBqBgrsSEAQeX7Z9Y2QZeOllmH0LAWlkEhMZo5MngM+bkxgczNo0R2DqODmn+UDg7mEE7otAAI0Oftq7L9q4AEYAI4ARwAhMHwSw2Zs+Y4l7ghHACGAEMAL3RQCbvftChAtgBMYNgWFPooEtgvfKfM7GYr9RPfwZQJAs+KvPi+PEt6uraK7XgVzj1BImixEYBwSw2RsHUDFJjMAoEPB7Eg14r93v2VjNF7wo+z0DSJjbNnS5PnP0W2BGdogMJ36TKra16uhlL17wT4zAlEAAm70pMUyYyWmPgOdJNPc6G8svFB5nAPktEdBM8HckC1oa2+75dykBbRATwwgEDgFs9gKHJaY0DRDwe8aTv4Ol3Ke6gFNnkndW70yG5wZRB7h4Hw/k799f/YE1wrOx/FUFefQZQD0uyBw6rgt1hz5d6HOfU7oAn+xTeEqK3IfIsI7NEsrU8O/G2Gfi1Dl/IIo0HGn5ru6AH2YEcPbUQACbvakxTpjLh4iA19krfg+9QuygU11u92oWnd63y/HWJWePJvpPindPgROKfY4HIo+BvW8nRng21nB0yDOAvI4+Jo83ulhJ7PU+pYs85cp9Cs9L26lDe7nmUgAAIABJREFUZPbHNYDjwHpSWsFfrA2Yd4V8tFKu7roFWqWPm8l8Avwl+qDD7tXUcHzhfIzAZELA/5+VTiYOMS8YgYeMQGQ6/C9yrivxxeibHb0Xr1xvOxe9ru71ePhfsgkFO7LLlBRD3Jc2Z86bGXppXvB/54ETwzmPieaBf4Z02luOGG6eaEjkq6lyoUSHtTh+3gi64bp53XE3UsTnE5F3e6/fdBGsY9JGUB2cM+CMnB/GIW6wCofGZSyfw7msbzx1s70uMaKIufW/K88aopUnf5OBjjgXrpALCUsHunu5pbEjOr9OlQC7LMzcvatRrG7qeRH8iEtLn4P+EfQpUUxoDWCWuMeZJ0xLOIERmEwI4Ke9yTQamJdJgcA9z15hHyzlPqyYquJm3+vIGHA80EiuEZ2NNSwh+gwgdLS4uxRzupDXmTjH3xB9z11qZKkpfdzMyLqIS01/BLDZm/5jjHv4YAhE+jtY6h4k2WcG0UfGeBwX7rfuiM/G8lub8DgDyF8R3zNxyh0p4MAjn1N4YOWotE1r7lLHZoHjaXYWGuYrs573cA1d7O25GTErgjxkzl+DOA8jMFkRwGZvso4M5muyIMDhZb53Mo/QvMgPmhGTa50Vh5x89+IO/p3mekKTEhE0IyLl2Av6916fM9OuXxsSslbvZw/IsbzZj4D/3YxYWmn7/4pNn/2vTCFoAB70eqLn0E/5bcrZcK9MUFD02kZX8qYVT3s13J43G97lw9q7jn92eD3yWHoVAj85PPmexlddsBdB/JTWhfqqzXOekH9wsjTmzJbZ8H8/E3afY4635YSvUB1+/4UzMnAnZHbhwKuNoAse3XY5rtvgmYKeB6T6NotzMAKTDwH8n5yTb0wwRw8LAWAuHtbBQxf1MrF6ft1XxQnTwlCAN+VXxbRlW+szycMzH9aI4Xa+uwiA2cp0/gGnrYffgiGKExgBjEAgEbC3NbYkqirjp4XNA8BcO912OT1Dgm1eIIUE03pYCGAn58NCGrfz3UXAZW/5U0/W+rTRbcucvHi5uqrUn6dsSouavCxizjACwyMwRidPAJ83h+cN38EIjC8CD9HJOb4dwdQxAtMegQAaHfy0N+2lBXcQI4ARwAhgBNwIYLPnxgKnMAIYAYwARmDaI4DN3rQfYtxBjABGACOAEXAjgM2eGwucwghgBDACGIFpjwA2e9N+iHEHMQIYAYwARsCNQADe22NvsHETximMwFRAAEvvVBglzCNGIJAIBMDsPeAL84HsDaaFERgNAvgFhtGghctiBCYSgQCuULGTcyIHEreNEcAIYAQwAg8ZAWz2HjLguDmMAEYAI4ARmEgEsNmbSPRx2xgBjABGACPwkBHAZu8hA46bwwhgBDACGIGJRGBqmr07zcowobK5fyKRw21jBDACGAGMwBREILBmD5zClQr228ArRKKs7Zpou3ReKwkj2QFHa0qU/1PfZXePkcvSXLFTJiTP8EQMaxuNta8K3WeBDvZp00KEuc39LnctJuX6UptbZSF/uiyGXAkixJfkNlr8FWfq4QRGACOAEcAITCACgTV7qCNijXnI6Whd3rNVUdb17QT2DTX9qFhzDrxiMeT4k4J/uvDFJGXzNZgPjNayhJXv9sZU9DjhbafjpILf9r/7Fu+uyO5V7++Clst1VldxNbuiYEW47ylpg33l+TvODKAmXPa6ApnhhUaH02ne9+SZptMXmFOq0X38gRHACGAEMAKTBoEAvLfnry+c8NhFMcEf2Rx3COJRfwUeel54fGZxzcJZP34+r2LjV28T6uw860+Nn/2GNmkceL8+E7K1Z3dK4nt1ObGpLe/VpezuWPG4L6+uvgNbdxgH49LQrX9802smYlfHhXM44esPt633LY9zMAIYAYwARmCSIDAOT3uwZ4OWBn3z3Tlzn/keQfQ3K4UhiZLEkKAQWW1fV7VSwkeOx7kytQH5A+1dtZSLMChoAXwaA+5HtUyIXKXCl1+WhKAwHjvzlcqeuySA9i7tWlQSeFVza9k+TD8Ac+dkrk+3Gpq6OprqbNJd+bTN8ywavlKteqT6UHXZAb5mz8pwz5vwV78hJ63CGSeg7zwam7VhkUGt0HZOtFOX5gh/YwQwAhgBjMAwCIyD2WvPmx0UMjvrT1HZ8kT+TLLdwbOP/fSLgYFKTsHS/J6UPziAV9FcwPkoM13956v6bUu3nnmh3gycjU5z2dKIO33l2zI+4uSZbENDVt1zN7qhyxA4FX0zXXb9tmX183UOUNXWmtKzdT3pnRymryA7dBY/uN9m+7vtygz+rMeGKccJX/gc8dt9/z5v2Yt+3JvXmgt2Nq/49T6ZkKnOmZN7vOfdmLbsCKFM3YxDewwwODFFEMB7xKbIQN2DTTiGYcpm4F/D1/0QGAezB2N7IJb2R5mtZOmPy/vI/R1xaelzZtpbjhiilftUS8AjFEeY+d6uNGtdpfr3HdH5pb9JF4IAGke4TB5PfNZ2Lnrd9tfjeQTBSyjYkR0KOmH3l3m5pfHUzfaixIgZYMdKovrEYG9Hx4V7DvvN67a74Xz+/+BHOm3Xbw0DzrXjZcdma2pzbCUF4NETShN48AyTaM+DcF9/8x5ls6Riz8oIz8ocYbqq/ivHYUmPck2Wnuq0ZxH8a0ogALZBRaGxprl1mwT3Dil/roVBiyGf3NcUIsk3WB5KfLffoBR+X6a/SPMKvi/q127R21m7qux6WQg/WfslK4tVfNRJ1rY1tA+sTM/euTZoaf6gSDaXtY9M2wyhcIMTJFyr9fXKsDeIsVhyWRpzSecQQJz0DVF3wXazXLXH1oHzWtkWvTfs0NXkYwvc4+i50w11zb2jjcXHuCTdmIxAYCDPITI9a0veuPD0HSE6DmaPRC48IbdEGXeiyYjsUGiM6KmxIQoNlU9Nd2awSNWB9qTAfSlDQy25Qur50qcOyBjs09caIhcvFsWvkvMbCkv9bdGEhi3v/PLty+Llb6ecKqnr46youAEo32jLnUf0Gwvyvsk7+m/+vaMECBC+VpIXVVdpvOCveZw39REgd0j5cy3YG3fIjsY0Xh1y9lY9ebb29EUXAdWoj84NKAbhSRvX8Q0HGt3rLHtb45GmxpbLdDNI5qOVe19f4Lsviy4z+m9yaTtkA/vA/ly4bKHSgNz7wBT9OGblvnMx70LXDbjgPjJTleGCq6skfdUfn6zqdQ7ZOtZd27F0vbaPvSxgbxBjM3Oxbsd2Q0y1Y2jAXDXnTO2nFxjT3d9apqkq2fuJhxm4WpeV+pqP5WMTZNJ+d7rNFOa2DA0czuSNFqoxDbQfgWHY803My227MVCfyXsIQuXb+LTLGTezR9g7axq7RYmJTzN2iMNLW59998Cbb8At/i6LflvhqUXKfNUridbS/DfQUs5lOV7XFZyakWg9VFYOloTgxQB1pQFOkKj7ZILmipLDkrXu+e81VP1d+qINaXnfrN61bVl4WPz2faqo32WszgFrUTSVXPC+7FVt75/L8j6J2Zwxh0NwYmVbCM3WcmaZDNybv6zsbcoTgVcVHpmdd4yA7txUreViszJRUnQKzvz+zpr6M9wneGFereOf0woBXsKGjDhP14Lrm94eYoE4jkdw5mQebjmcCSToIVworny6Rvc5uWX62679+xoGrzSoq9BeZHI38tlFSlnsuHDDA/vADh/dFV1dBPZsA9u2Ou9itvFkvQq5bkDv4T6xQ/W5j9XtPWCVqt6DmPASVPtLFp2t0J1lTBi1QcwXLdclgGms+IfhBFeY+WHb4fXQIwSvwb7a96q/Hhxs2Lff44FvpiCqr3Cklg9RQjvdjmqeqs6roBBD2Q/hY4IE5iH0bCo0gVZlo/5g94xV+bZZs5y5xRXn1MD4nMOoEIQqjLdhOafDdFAhBt5LcImkxU1oVWgz1eSIuSiPm6TqAFVsJo1cADO4gjVrxFyBwgiigf4ynWZjsRSVJLjit5rMAyxmQPKcRgw9pOjiiRWlOsgPfYG65QVSAdkwQQikqvKaml8lcUUqE/X86HQYcwTclZpeRNb5jambqY56Sq15QUjy4xyqU1yBVGOCsUZ8TQEEgGD4cAlkJpJ66YW8d9uoCCUlkLll61Cx5QSVc/ZokiI9Rt+sESPJg8LvMNUoSBkHErLbCAQVkuUliJ/nEpFSXa/ZuJsSRcFKqZiH5suAv0wwgzRUSa5YUWNygPi3NJryeTg7VKIEVccx+Gm6BdhymlQirlxncw7dm4GD71N9dJxUiQXinHpTezFilyuQ11CPbhRSHpKP8kgGjnWo4rhSHTNDqOKQCcAVjwXpLRO7pKNJIRCJxQKCnk3uikMDvZqVgAMNe9pSBENFqsM10khWi+TodJt1GwSUGgFF2cqHIcyMI51j00m5cQAxOCZotIDK4iaIE7gEpO/o0EhFtA45iGY3S2URzyo0v6QHuumqr37zGGgr3SSAxVtgnL2aJO6zCuNVWMZ2WJHTBLQe3N8Aupmk+s1mpEX9CxVQXzlHdJtDuQnSNYhVwQadtzKEtKb0hYaA+njAjvhO+xERDCAHI2oPF8IIjAMCQIx9qAKdyCyVGDFnzB51i17SedamFmHMeg5aCGTAkOYSF3eA9ZCzVycXEWBpNQBULMFN0gDHH9J3IqmmwwHWhR3Q3oBaQOUD0+qVeRso6FByaUiWhMqatm3gphwt2hi7wljE+zCAbLBAofsY2jzVSQeyFkjjNynEP/NUoL5mjzQtuiPu1a0nLO51A5nPpnDVqHheoPjYBJbLfsweKE/a/lBqrQAJOGE34WL0Fp0gF7uMMRtgWb6RmT2aQ7bZI6j1LoBOhDABNhSsCSJFqvYrkAFxDlq0O83HDpsuUQMNzSePLOw018gFwDZ3OCFRaqDJ/rs/vQWGGThk78n1CmWSrfTDg5dQkWt9gNKRdmD2CF6SpscJDSq5cnI3NQ1SzGz0N21H17/xc3KymcRpjMAUQoAO/JBTCaktmnvq1kCbdj3ccuV5cYQrVPUWR7Wk55epWbXuHb0g3maIyt/3iwSwMRi4QN9TScFbNJ+DHVWhcRnL53Bc/Z99ejpa/vbrCeEgPJyQszMb+C+cfjPhprCbJ9SJ4BWgGRGJRe2Df23tsHJi0+TRHY1Hj+kPfJGu2hTPeTQ+5830liMt5080GvjyVTGc+zBA9sLeXLj9UIz2SDHYcRb64oZX43oa9/9uxi9OfJgppD0int2lf926bnNGgm1i/PC7tus36Vz3NyeMH3mzp/cqnXPXcd2BAgHDbhCjS4JvrnBFQb3FAveKkd5LV9d+9REifX3mnEd58u350Z9qylo9XxwCHtH/9VlrcusKWVGnjUVq+CS50y2CCcegknAXHpeA0PW2q5dGgF06EUvV7Vd6WxsqG7124ZGS4PS3Ze/o59CZSw60DwPeAoNc1mDgrn2uq/gmLu4L9f5T5/W1LYs2ZMX6bDunxvSddDg6AKV/jp81g+C+tDlzHofzTOKS7wPEL/o0iDNIBLDZw5KAEQgoAnAz15aoulrDBd+9WF4N8WJET3hlEQSwIuztHuR9VqbbCQ/MMtppxYnPUSW2vJP7rjV1U1oUrMCTZKSeypq/wZD+Zk78Pf4vgs3AzKjY+UTz74/CzZDA+qravipZ7PwkOyK5qNNj44gXw66+xgOGf0pZHBO/Kj264V9V5L8gsQtxnhTFBHe3naGouL7pOHU5er4g/D4bxNgkePG5RXlRxyoN5v7j+kO9IKqXBV/+nZGo7r35dXXtUfbOVVgP8F9wpBlYPvnuM34MMZu0e6fbbPCSsfti7cKDj9Tup4m2N0mPp7vo/VNsnH1KuwXmDmdOxubUjn9ZnFkWqfygVE4c+tUWzdWsHfKRBoqDI2aFgvgn+PLaae7T6Hc7A5u97/b4494HBgHw4JI7V6LuhH/fijZzcSN4YfTk4r20KfsfpW++A99qcPXpt6kNHut3Di91dbq1bm85+LsDsKldW2m4QhAz7pfp6u9US8LS0JZIuFksi7Bz12Uuo940fUr+9mYR8Wz2ppfgk8h9GCAhCI3ZpNGtsyqySzvt5/VrFyaXDy57fUNK5JetpuGemexgH9jatELr6l/+YtnjwPhWq/jVGVIlvU+MgPvE1sm0t+R7doD/c9gGX+yxd5Xv1px+Tpn1xHH/G8RYLyCB1zPmpiKjCzpbX99NPBF+sbbkd1eQZ5iyQ8AHSByh/k3QYyhJy5dBnL2XzUYcMjvd/G37AQuIdNuhvR92gZHtP1UkESZrHSlgz53HLjyyiRn+tuwNt5nIr8AABsDAZXO/vpu6OWNewiZV7N/ag1dvXPa4R8/IH5Cxy5RQAbFp/mPXdaefYjjLLwLuVcxoUmxSo6mHy2IEJhECQIx9uGFCRPQdOvCDdkh57nahi8Bvp7mJ3phFULswmDAMCAv53dJChgxhZfdGFfeWFr+ZrH0udHgJcXHLVJxD7b1Cv+FGkuXF9Oas+zHA9BGGHp8VSH99qGY7tQPHe6cYiszR8x/sqvmNDmyrYS7A3vsqagMIKCSSqt6H+3dAiK7pLZIgBc7wG8QYWh61AClNuwVsMSM8n73IbS8wDtftvRcJEoIYZqmOof10DGF2+NZjpxuEgd7SgoKyiIS5qZjZ0pLzsb9deHRsz++WPQZbpn0y4Udg0A0QmcsqQQMHttQVKHTkLhgmSOlXqMCGvuKTILZHMY3GyH+s1IuJqfSTFjr4/YB8B4H6bHIjTAMHA1NybBSY6jiBEZgoBIAYTxHpBa9dL3yFqLBVrPAMQE0UcrhdjMDDRiCARof2wzzsLuD2MAIYgXsiwPp3FZel6WCzM1U8H9u8e0KGb2IERoQANnsjggkXwgg8bAR4GSWN23maF8E/782Y/eal9LIS+VMPmwfcHkZgOiIwRidPAJ83pyOquE9TA4Gp4+ScGnhiLjEC44dAAI0Oftobv2HClDECGAGMAEZg0iGAzd6kGxLMEEYAI4ARwAiMHwLY7I0ftpgyRgAjgBHACEw6BLDZm3RDghnCCGAEMAIYgfFDYMaDk2ZHGh+cGqaAEXiYCGDpfZho47YwApMBgQCYvSnywu9kQBvzMLkQwDs5J9d4YG4wAsMjEMAVKnZyDg8zvoMRwAhgBDAC0w4BbPam3ZDiDmEEMAIYAYzA8Ahgszc8NvgORgAjgBHACEw7BL4DZu9OszJMqGz2PIrS70COvKTf6jjz/7H3/lFNXVnf+GVFXRM6X1zYsKbQp0ybWGNVvtNCUehKWmQUZejY0idpGECGzqPtJBWwzjjjWySWqPPw1qlDYsGZSpcMmLwy0LLqJCPBfhkVZsBQ7fhgdWBIa+P4a4WGKW+VUZPF95xzf50kFwkIyI9z/8g9Ofecffb5nH3uPnfvfe8hCBAECAIEgSmPwPiqvdtOUxpwPLJHmskJd8/yOe2VO9QyNjdcyW3IdcmijoHZ83V2epstn9NWqAyHWeEytQnucSVwoJ3GFhfaBa5eMCnnw9qgvrKwtvOuW20JUCZZBAGCAEGAIDDDERhftYfA4vd5ai6UzfP1mFbFZb5z/slKuO0WONwntFGtVfaLoKzP9/j/+h+4HRUD8o1Og+Z5m7QKlPQ05V7b+dxLFWBjyoDD57RocxrjjMVrmB01A64/oDCeB620pHa9tn5fZ1D1gNLkL0GAIEAQIAjMKgQmQO3h+Pk6DOtKXPn1n9QXr5GJ0RVJYnZpfb1OBv6IHk2Mh5s/M0ffR2/vuaLauSsblIx8Vv9+yYpTNeYzN9jL6Ow7V7Hhrcu5xt1rhHYc5otK4p95Yu5Vt4eoPR4TkiIIEAQIAgQBamLVnu/M0TpX+k7D2sgQoPZ90d01uEy5gtFnItnyZ2Pd5//hwapetxdkFR3/vM3w3IKwKGVho3M4rebraTjYcid+8WMirDYwthpoW2u47MUXleHI4Ydnvry/6w5dvq/TlEVbZYmxFEOQJAkCBAGCwLRHYALUXlvRQtq9Fpb2m/Z/Xp274MEIXPkMC5nP474asVD+CLuVpmj+g1F3rvV9w1Xw9dSVVXtVxnbP0JC3972nPn09rcAWFKlyo61oSdgcec6RqPyfJEfxLQ/2VGzK/L2oyOEeGnKZv/f16UFAWDDT12fZtKp+idnjJcZSDnySmMkIkGCu6Ti6EzVq/XadjAu3YIERzGQv+p1DL+lXbTL/TIDaw3x7byT/R/Qdz1cDwz2U+fVUtCAqeqC3+xId3AI8f19/5Z77kOQOGAOoRpW/PtZkPR6r+cXrSeDZUSRbp9c+e9Vsc7DFWVq0b8/rOaF2v/XCS6ZzbNt9n7Sej83d/HoiMKtKkoq35UOPomDmlebGkwNtO5IXgA0+o5INxwe729svBjbDNkfOMwwBEBUVozRd4HvF3VycJiWznotS6qqD4q0GnbatTDiWcqvNCVdVE37023Sy76otl7CGLlmyXrX0sVIPLmC7tGPF7iHJx50FWlx8PZW5hg6sbRDj9uMsS6CDHiIaeFvlg9HApFPqfm1h4tFQlFx4ll+P7oH3UKv2n9yhTNbZrweVx6L2QGxebWfQsjuohnAGWFtnodg9Psjc52wsVEYhEVusNnVwlIFByqSjJQtcXKzeYQmSPeE2KApHFdxCTU5YcNBpf2+HejEjyxBtk31yxHU4Nic9fwLUHtYHUXy6JvZoib6JG0LsYmBS9Jg8Tnyu9RQjaj6n46QrasnjsjWVThgK01r4eGCNu/wXRSb+tKxo2fH6louCpQa+cjP2TOwynzlXrm8Hz3rsAWNzsHIkOWsRWG3svTXk+SC168315f7xUn2N29RH4xqvDXm7qx4+W3vqko+Ct8jA2/v4IheZ8kpulO1AI69Y+lobj1gbm6+w7Qz2WGptsbq3X1/GGz7Ya2M6+/rqitW2pxo9Xm/v3oc/tZ66yCn46x+XV5rLyutwpUtdrctZlxOk+YSaphesQ0OeP2mjTpUsT0FaZ56ssHno5uFsyWjZvwfwfT0Wre5Q3PZhAwjgyt7raVnd9Zq2vNM/+CC4Y2C1JCAEt79+fPtlLJyPAmEQGfm2h/f2er2e9uxr236Iluwwaj0lLree+q8T0Pjk9Ti2RbUUPbdud4dAHHtw2yCHRRXdQmXAvmV6KW7t3vNx7/TSNziItqPKdlGw8kzNnFi1R4kSN1f/LKY6fx2/oOjrtOxQqyvRusMfVUnm7rLv2Uq2W8DSo7+jorjy1Iq8nPgH2ELzHl37fIqrcovhJFCiIJ5zU8nR6JyM5cPpo/6Omvpz8tTljzL1Y9Iyk12HyivAKhIsVw37bXC2jpRJ9XXsWDl/pYm/rbDckPPsRSAyKU+9rLvFcRGDAHqmqWWKBAklWpR9uPlw9qLR3qcxYqEnH4jPycMiv2507tvbMHi1wVDF6GTfWXPl2RU6dfy4cfPvL7p7qfikhEiRSLb+cOv7MAANHcgH8Rk1eMQQEEAtjbxc8lJomg8RigRBbzVHjY9UF1X6ryxCh+VeSgLHR5H28svm3XePSBBFJqnVCVda2l1jakwsS1yGRTyAxUT5HhAG8W62TAQob32/7OlTlfVnbneW5/92Ttmfj1fmJ8LAdbCaz688Up1Pffm5Zyz2J19n2bqiS/lNJ+r1GTJaJCDah+oLnxhTL6ZrpQlWe2CckvTHuw79KKpVtxA904fFZjX6Vm5Y86gAYuJFr79bn/H5BlByQaqR0p348HX85iFa9PqHJ/bEtfzngrCwOQt3+35sad6XgYkOTRH59sAD/IL/bIn7Ve3mRHa+iyTZ754ooozLo8LmxBW6HkyAs3WYTM3uxh/7YMmwqNSWpy1VG3E2BBgnWbMKgcAVFey8KF6tW3GyRFvBG6Ccv80vOjawf20UeCu1v7OWsVOBF1J3Q5sStPRFJSufCg+LUdf+WSDYChqjdqtltCUsXa2MQs8Mvv5OE5OJjGwDizI3ZrjrrF3QtOjrstbN1bcf01PNVhQCjWLKnt2YvWigs1rHGdAMNhgLhjNg+ZIZQGjckykLGzr/YkBmtXBZVq1/4BhStDaDFrPCobo3zphrjscWW2vWufb4P/DF/Oj95l9SJSkpO+CCNbRDvCh7fYbLBnrBWURhIvwpZXJUGLB59vzFxJjpOINzX2ct885vWNgynUkfKvh+JmJfv/2X6UVNtI8j/G7GavAcVl9/OiY1Wcy3K1Mb7AAt6NwKT1Ymh4eFq7cV55e0MUJwl67DxcRgwjMrmIdasSx5eayr++/H/ljnAsP3BHsTQxQiMyr51cZA1webQzat3zhjtblUbxpGCIOHrdzpsmyiBQYE9SF5YbkXFEs8M7uqawAVDpTVkEefbWrizqwdb3RnnJ/R1SSlCQJTBgEgxkG8nDcq2PdIeSmXaps8Q71GBZMjUWgPOqDRyf/w9jaVqqSUXFVqRRakW73G1RHaplsghEoVLVaUtoMq3m6zRk7J9Y6b8H1VcYqx23uz27hWLNUYYbCVu12fIqZgc95uY4pYjgK4gNWrVCGmICm3WRWRom8HJenMBL3jG69DLxdrzG5wUSMGlL3fOPQJYpXZDduNheZ6UEssUehPoFiwGo00AmYiCxtiYGgIpqVa84d6hRQV8zRppZCCx6pV/MTMvHHLd9bbay1VySmpqrSJMZUNoSZSjF10WzABi0MEKOTs9/aCdqNpHmBrCBee4hCAPRq9ccvm0Sw1ebjCMEFJEGXQLzlNashzQq+IluvbroK+ixUFCHhv77HDjsuhgc82R5+9XcaUaKnKCAcXdLJAIZYWgKHACqEe0WIgVmhr2sFwisX0iNzsNedJKTAiLoAeJV5r7EZvKgOxCewsS4/tIzDsgip+paCwrd5j/IkfULwEUhQY8ctWKEKYXDGjyZIfgqhiwqzQGwNa4UviKcgMEE0kZqhTsC+XaQ6BsAaLpWCmoKzizYw2zU9HgWk7OmLB0z6k+uPIQUjtkUIEgQlAAIhxENVh779I7SHfXlAdvwxPu1G1VKqp6fWyag+qBKifmGIULlRjAAAgAElEQVT037YGcO9HN3pWOdGXmVuhm9VhdC59W7ReBjdZfO5RiIK3XS+PVdVYjSlyldkFK4AmIjTm8zWo3X/5kwKKCWlHqHdpBmi1FyGVxkq1VqAaGZ0qV+krOLUGc/0P4GcyqqRLNeZu7xBUtPBG7AYaAqUZbcGrPVgXqiioVq+FovZY0PzVHsIfXvJDgVJs1tMKnmcxRPD5CjAF9UrASKEVD1/Kv0fcwoIpQA+lzQrUBhfZF5LaQ6BxVcAAoKVMjfVNtKDB9S5oCR/BaGbE6SpUgHwGCDO3HuL7I5RiFz30NShdEoWxDak9JIFwaUVfw8RSMNNvlFhhE2oylDycWCjl71Jmoo2cOKskTRCYBQhEJhWWvRpTV2u7GBw0FdB9SZz8oYAsio+rwq9885WbjRzh7y9gXn/dCrwyosQCfXLzW4XvuNI2pMfAahJlZtrJnCV5towtBYnfxgn5p3EG5sXEL6HsfzgKg/qgb6L1s7JnvB/lL1i5o0PwI3901FhM3f6mi/3HDx46Tw3W5USB4OdvLzecpj5vqDrKhdWwbUY+W3rkYGrLKy/uah8JGhSJE/3MMwu/xVZGZ/4FJ0w5ARhat8j9yoXyB+97KOVHVyYiTv7IKGp86zH5QvHpv55iooEGne0OV6x88eofamJPHrBcgBZs7vBdsBw4GatJH72/9oH45zNiG36lF4hQ5aiPKoGJJV8PywyWVb7Y/UwRtXc/0SdtzxQEgE+ocLHSgOLr+jpqGk+LF0jms5NL8v0N+f/es+Ut+FYDiBLcZLDBWC1OGwnGVYkkaesyXHVvV4BAdvBqhGm/7SpFzcEy0Zdp56ebeqCWkqSvz6H6xLnZq5gv9j2i+cVGObU0f8P3QYwNuJp/58CWN+DnHVAs2EmhIJeIuA1Gc65Lm7+no++CJevplRWDq17PS40+1+JwY8N03a5LVtJeOujj/FT8UPi12nerrz7H2PTgGhs89FB8WA1WGXx9CWi+NOqfrA7Hr7HpfhD0lpde9MW6nZvY7rCX6DNQ6hnuQ2+/D92oyBm50uRJBQFre7a+gbxQPufHddz3eEcA35/yo6nqlC/3bHkHjiMaqYbojBeWY3ZC/+IgJi59wwt3mHYHnZbtJbYlupwnR795t0ii2V4GfMObLE4fcIkdKDaiQKR5ICTwp95tK1PYF2ZgNF6WqsilMjJRC1cb6BhAEFD0Tp0r5fm1jw4X4wdZBwukan1UdaaK+ywyBdHOVeNv7KA+DjYYNsH420Fn3f5DrqfVax9D2bgECoqlYCYuq4jMff+BUjr6A2d79LVJDYLAlEAAiHEQHwF2Idbvxfj2AoxIWG3aFURPDMZRx9rZQCmPo0YL3HPgEEtVu5qAt4z364DLbodRI6WvvvACcChBVyKMVgdWRFRJulalkCDfz83epl1MJuvKQkx84ygtwBQPqN2uX13KGqMAqYNaBf0hQNb1iDPApaHrcalU9d+HajYz7Cp+bvX37Xl7PyxgSIG+GB3Oj4DDyP+FH+DBBB4g4Ic7/XfWt4chBdBoN+aUAp8nduBeKOA63WOGnk54+Bk5WfcX41yEiEkUBR8iB6PbUQN8cTAL+aU4396I4NPtsL/BI8VeQecAIyfIw9plnJ206Y/tX0hGTkgbA5b26aIGYX6TkREe0DdgejYzfmUIjUSxMW+4kUK+PX+PKSQJROh3euCaZQ5A8HdQIPkDGTkVeRvpUWbEjOuUoFgKZg4nq3xLo0qxDMPzqCoGFw4DWTi5ENMgUpIrOTYKXHWSIAjcLwSAGE8T6QXBgU+/TFW6K9fcbTF/v3Ak7RIEJh6BcVQ6rB1m4pkmLRAECAKjQAD7uorPaT1o96YplhCdNwoASVGCwDAIELU3DDAkmyBwfxGQZJY1bpYYl4MokTkLt1zOKC/TjCZI4v4yT1onCExhBMZo5BnH580pDA5hbYYjMH2MnDN8IEj3CAIjIjCOSoc87Y2INilAECAIEAQIAjMHAaL2Zs5Ykp4QBAgCBAGCwIgIELU3IkSkAEGAIEAQIAjMHASI2ps5Y0l6QhAgCBAECAIjIjD67wkEkcQ9jUEXSQZBYEojQKR3Sg8PYY4gMAEIjIPamyYv/E4AeITkNEeARHJO8wEk7M8iBMZxhUqMnLNIbkhXCQIEAYIAQYCoPSIDBAGCAEGAIDCLECBqbxYNNukqQYAgQBAgCBC1R2SAIEAQIAgQBGYRAjNY7YGP1svm6+y3Rx7N0EuOTIuUIAgQBAgCBIGpjMD4qr3bTlMaiLdhjzSTEyodn9NeuUMtY3PDleweh2DPxEJlOMwPl6lNcNNI5vD1WbJQvkxn72czKbSlZLJOYGtgrF1AvbYTq8PXJimCAEGAIEAQIAiMr9pDeCqMveCdBng0F8rm+XpMq+Iy3zn/ZCWzk6H7hDaqtcp+kfL11RWrbdIqkO9pyr1WllXcxKqr218/vv0y3EQRGyCw2bFWdyhu++4138FysSRs1+tpWd31mra88wZ2gSQJAgQBggBBgCDAIDAO7+3dDUtfh2FdiSu//pPKjEimnCQxu7Q+G/zpt7d1zl1TqZKBHZGT8tTLDPVOD0WhYmJZ4jLq9mWM8mBPRZH28sv2/WtZOthFPimKjF8RN/f3bk8Ipk2+FkkRBAgCBAGCwGxBYAKe9jDofGeO1rnSdxoEdVXE8hcyJHZLg3OQ6u+oqT8nT13+KFYXS/r67b9ML2oaaNuRvGBOuHKrDVQRPgadDRb7nUWLH/sWdn3Qad+tltFG03S1Mgo5/PDM7KquAaZ8f4dJvRiZY6OUumrM7orRI0mCwAxD4LZdN9/foTDDOjhjujNBIyVIVjBTGMlpFh4xAWqvrWgh48ZL+037P6/OXfBghEgIK1HkqleLYv+UszA8bMFzhisq4+ZEwXKU70JtWQOlMjo83iFvb/1THeq0X9p5RyBLG7YbvjDnTzH5muQofhtqX8+BDZm1VFGLB5hAzcnXTveBCoKZFHXJ8mp+/ZL3PMBA6/kgtevN9eWdnL+RbYacZzYCF0zKGKXpAt9JbvI7TUpGsAWXRINO21bGU323lRlPeBxS/Tad7LtqyyWM1CVL1quWPkxssV3asWL3kORd8lHKwkYn1pSvpzLX0IFlXDCpX7UELlIFb5EA9vkMumEA3l9bOuE8pSjktg/P8uvRPfA+TNVLFnUMbD0gBK7/5A7lhAYT8DITJssyMV2GPIJ4CJOOlibA1mL1DkuoS3BeSmF/WEkGq/z3djALepAPEDbZA8dlGGxmYvYEqD3Mt/dG8n9E3/F8NYBNBB7E6/aCrG3egnaozLrNic2ZL1Wcs+mQ7DOxMEzZiy31x2Nyf/FfiZEiSiTL0Gszrto+crDPZxxBul3PH9Xusudequhh2vT2f/LXU7GaX7yeFEmJIpMKtudLKUowk6L6Whtt3W2G5xYAwQCauO1qd4vjIkefJAgC1Gpj7y3hJVFf4zb10bjGa0CYqx4+W3vqkg/dsgNupOMMYWTKK7lRtgONrLQjGT5ibWy+wjY02GOptcXq3n59mfCaki0X8pl2yT/V6PF6e/c+/Kn11EXO9HL94/JKc1l5Ha50r9XlpP00SPMJtvaAwngehgR4/qSNOlWyPAUFr82TFTYP3TycLRkt+1Bfhgq+z/f4//qfgFgCsDQez2ACoI2CuYEy88eHq7q9Q+723OvbsgxoNe/r7zCkxOXWU/91AtwbwWLdsS2qpei5dbs7gtf6gkDSUgqh/Lq18AmKGuwxvRS3du/5uHd6AT1wQIQdVbaLwrVnQe4EqD0MNVF8uib2aImei1XBrt3+20fmwfztBUlQmS3K3q1LOG5tWVz+NRwWGAuDFR1NMjKpsAySaroo6N775is3N0s5snhmgt7xDWSBPloLZVwpkiAI0AhEQld0wJLI90V3F7VMkSCBwny4+XD2otHep8eE7gPxOXkrTtWYz9AxXDc69+1tGLzaYKhizBS+s+bKsyt06vhx4+bfX3T3UvFJCZEikWz94db3s6FvHh6+nrqy6s+owSOGfbiNZJ40pqckVM2HCEUC73/NUeMj1UWVOCF0bWJ+RI8mxkv8STPBBObdgg4arixYSavVCVda2l1cVuiJ26fbmuemvqICoiJJystM+Pzv3R4f5essz//tnLI/H6/Mhwt9sFhPzK88Up1Pffn5mEIWfJ1l64ou5TedqNdnyGgxgAgfqocacZYeE6v2KFHi5uqfxVTnr+Ofqfs6LTvU6krnvCWKtMHqXfvgEgYsrIor2+TJyY8KabtHU9UpX+7Z8g5TcpOhITrjheV4lCc+eH0dNY2neVJzJGnrMlx1b1d09FPApGDab7tKUYKZFCVRZma4D739PrQnQPuGbKXpnOCDKt4eSc86BIRc0aJ4tW7FyRJtBW+Mcv42v+jYwP61UeDl0f7OWsZmBd7V2Q3tS9B2GpWsfCo8LEZt6RnJ/cz5pH39nSbGUY3e1RlYlLkxw11n7YKC6uuy1s3Vtx/TU81WpAiRc/3ZjdmLBjqrdcooYMWAFjODDVom/Rj4khlEJPbKwobOvxiQiS1cllWLmzEpCilam0FrAhMKP26cMdccjy221qxz7cEf+ObGqCuad1IlcT/Y0UHbLfFaw6XFi7LXZ7hsoBeQTfScBBPhTymTo8KAzbPnL0E++L7OWuZ1qLCwZTqTPmTwLwUxEXowAXgyq68/HZOaLOZbl6kNdoAZtOWGJyuTw8PC1duK80vaGFHgW5u3PCNHcvJgA3hW5+9a7JA9QWsopnRkRiW/whjo+mBzyOb0G2esNpfqTcNwAfA8O3chi0dCcKKIZ3LhEYHy6S8kfGP3OcU+14zujDON1bzVa1xN8UZO5oq3t6lCrwK2RXSIpariiib0tO1pN6rkTK7i51bmDQeWHjQ6SLVN0NE25HHUaBVoVQmq72oKKDmE2mXoU2JFQY3DDeo0aaUR2qZb0EpgVElRbelalUIyfCZwHVpLGZYkioIPGZsAyxE5zzAEgMgE9ei8URG8okJy2GtUMDImUWgPQk9zwAEEvRTIuVxVakWSA8USCZvLrIoWK0oZe75GTsn1jpvw/RxxihFYuLzdxhSxXGVsh+7n9lIg6KDWTaHMW26zKiJF3w7Emy4JjRNeh14u1pjd4KJGDCh7v3HoE8Qqs3sItBsr17d7QS2xRKE/AeaSt7dGI42AmcioRzMwRM8184d6hRQVg3MHUvBYtYqfmAOnGztNpKpSeiIDHFATKcYuui2YgOAAMKOR6fJmrzlPKqY55yYmDh9Xks1kpz88IxARvxJEGfRLTndnyHNCr4iW69uugr6DmY+A9/YeO+y4HCL4bHsIA9TQkLfLmBItZYMJrAUKsbSgyW+4sRuOWKGtae+GrdO9Qz2lwLi4AIaUeK2x+yZsAggPTZxrDybAIK9lHpappdqmayCL6y9TkJc6igKjfNkKxQaTJWYEmdKoIfZOSFERCmMbexvkSgglELiBZKGIQsm/R/kUam8seXy3BKbt6AgGT/uQ6o8jByG1RwoRBCYAASDGQVSHvf/COxfvNQmqx2XAxdxSqaam18uqPagSMOM5/betAdzOkUoAmoJWVzQJWitYLw+Xic89eF87P+Rt18tjVTVWY4pcZXZBKqCJCI35fA1q91/+9Nnm4E2NZoC510qlsVKtFS0zkU6Vq/TM+pTrG56gV5NLNWaguKGihTdlN1B2KM3oCRxMRBPq7G6hGzFeErXCgsapAXRnRr5VeMkPBUqxWU8reJ7BEMHHKrD6FQ10wHix62+mOFJ7/PqeXV4wV+m/NitQe1wZAbXn9TQVsEsBelkAdSS7iAlYVOGjFs2MMljEgBVPgEwGSim3BuJ7KpCC4AaRPX8EqT23v/yMXj4F2htLFj7kY6mP1ZlgIyfOKUkTBGYDAtC7/GpMXa3t4p2RuiuJkz8UVAb3NHMXsUz4PMfNYBSzIEos0Cc3v1X4jittQ3oMrAPM9Wknc5bk2TK2FCR+m6MSlMAZmBcTv4Sy/+EoDPADLit962dlz3g/yl+wchjjJPA5/bSsKKZuf9PF/uMHD52nButyouaEhX17ueE09XlD1VEurIZuFtAsPmJf2bJGs+vToHi0QM5QJE70M88sxN9EAk8vC+WP0H4QTC0BMFq3MFajQDp3+Y/3/S7F7ulSRJz8kWEJDDg+svXlbytOAm5FsSx7W1HC2fqmiyge4uQBywU/94rvguXAyVhN+uh9tA/EP58R2/ArvcDHrYbl7K4XMFHky2GZwfLJF5sqKaL2pspIED6mMwLAG1S4WGlAsXbITyNeIJnPTi7J9zfk/3vPlrfg+6bAjb3JYFuRlxPPaSNRyO5n3CcN4/2U89NNPVBLSdLX51B94tzsVTAIAhyPaH6xUU4tzd/wfRBjA67m3zmw5Q34soHPadlUclIoyCUiboPRnOvS5u/p6LtgyXp6ZcXgqtfzUqPPtTjc2NBct+uSlTtOQp8N9HF+Kn4o/Frtu9VXn2OseVAjg8cdig+r4SvTmi+TOntXJ18/8P7npRd9sW7nJrY7PAmYEvDBe1Izk117tr6BvJY+58d13MsAI4DvT5n+N7pgAlAnJn3DC3eY1gedlu0ltiW6nCdH+hRIRIIi8U512W7o8gS1yoxtwEcYi+IhfurdtjKFfW8YvDBiyFIVubhXvK42lGyHwbEgiOidOlfK82sFQyLYnoFFUbU+qjpTxX4TEgwcQDhXjb+lAwsPR/be5ZNlZeqcuXXjqBI4/6OqSAoTBKYOAkCMg5gJsrZB+w/n20NGtqA6MAO4hYETiJ4YUo0RepdZOxu4Guyc5siiyiG7n2/2Nu1iHNWsKwsSAKbF0gJM8QB+2vWrS9nnQmCQPKhV0MGKrOsRZ4BLg1eJNEulqv8+VLOZ8aUHOd29vR8WMKSAo93ocH4EfOjQWYj4oH+QNwj44Q7vZXx72DXka8/RH7uF50EvIOdSBa7TPWYIIDwga5xvj3WPCfng3Y4adgCgm43z7Y0IPt0O3xD8HzxeTCn6FGDkBJlY64zL09+FKWDkRLWMGibowW80gTQ1GZloBiBSwNxsZnzJEA6JYmPecKMzjCkeiM3v9GwgBSL4O78ICUGynFSMIjxiOPn0g29sf8ZR6YQBDnByIaZBQBhXcmwUuOokQRC4XwgAMZ4m0gvCAp9+map0V64RinW+X/iRdgkCk4fAOCod1g4zecyTlggCBIEQEMC+ruJzWg/avWmKJUTnhQAcKUIQGAEBovZGAIhcJgjcHwQkmWWNmyXG5SBKZM7CLZczyss0w4dH3B8WSasEgWmJwBiNPOP4vDktYSNMzwgEpo+Rc0bATTpBELgHBMZR6ZCnvXsYB1KVIEAQIAgQBKYbAkTtTbcRI/wSBAgCBAGCwD0gQNTePYBHqhIECAIEAYLAdEOAqL3pNmKEX4IAQYAgQBC4BwRG+pJACKRxT2MIxUkRgsAUQoBI7xQaDMIKQWBSEBgHtTdNXvidFDhJI9MKARLJOa2GizA7qxEYxxUqMXLOakkinScIEAQIArMNAaL2ZtuIk/4SBAgCBIFZjQBRe7N6+EnnCQIEAYLAbEOAqL3ZNuKkvwQBggBBYFYjMAvU3m27br5MZ4cbhI10gO/cy+br7LdHKkeuEwQIAgQBgsA0RWB81d5tpykNxNuwR5rJCTWIz2mv3KGWsbnhSna/Q7B/YqEyHOaHy9Smzn6//YTBXoi1uqCrfGZYuHIr3LfT78AYAM3Udoai6/wIkD8EAYIAQYAgMKMRGF+1h6BSGHvBOw3waC6UzfP1mFbFZb5z/snK3pso031CG9VaZb9I+frqitU2aRXI9zTlXivLKm7CtNSNznLta12rWzxe+ur68k4fdd1e/EqeHVXxdlc9/MfnM8pAbuABGfB6WlZ3vaYt77wReJX8JwgQBAgCBIFZjMAEqD0cTV+HYV2JK7/+k/riNTJ662lJYnZpfb1ORg2cbuucuyZbBfIjk/LUyz7vcnr4ug8kln5ys1WfFCmir3a3OC76vvhry/9V7dyVDaqIFml+ppG7uv8R8IzIUBBFxq+Im9vv9hCDJY8pSREECAIEAYLAxKo935mjda70nYa1kQJIRyx/IUNitzQAQ2V/R039OXnq8kcFilHoqjNFnfqoKKn071/WZ9O7jvn6/9HtipU/DvSiwDHobLDY7yxa/Ni3sIuDTvtutQxZVWXpamUUcuPhmdlVXQOovK+/08SUJMZSDEGSJAgQBAgC0x2BCVB7bUULGTde2m/a/3l17oIHIwQ1kyhy1atFsX/KWRgetuA5wxWVcXNiUDkYYwKvunPffn2Z39X+Jn3JuXX6nHi/XDQckIHwhTl/isnXJEfx+1H7eg5syKylilo8wARqTr52ug+UFsyk+upeXdW4xOwaIsbS6S7ghP9QEBhF2Fco5EiZSUIAjttExOAJyoNgpnBHp3ps4ASoPcy390byf0Tf8Xw1EOx/A2hdtxdkbfMWtAPvnbfbnNic+VLFOZtuPlSZTCwMRUWuqXTCq09+kFVg4z1//Sd3rCvsyq3cn70oWOtRNAOeP6rdZc+9VNHDNO7r/+Svp2I1v3g9KZISRSYVbM+XUpRXMLOv+Yht4LghOQrsa70geUfb4D9a2l3C40tyZxoCF0zKGKXpAt8tbrY7TUpmPRel1FUHRmBRg07bViYESyDYiqc3nql+m072XbXlEkbzkiXrVUsfNuP6LOrwqJWmc1gWVnwMST4SLUpZ2OjE6Pp6KnMNHVjGBZP6VUtg3JngPRHAjqY+RBjA+2tLJ1yVUhQKUgvP8uvRGHgOvQofNIfF2fGZgpF0PPPhysJahvPQm2RL8sBiTcOLwCJl0inB7QgdMvUOS8jBerzQgrrzGcGGQYbbGWsWyOaDDFlOZvp5AtQeBpkoPl0Te7REj8eqsJdv/+0j82D+9gLovRMtyt6tSzhubVlc/jUdC/PomR2L2fksWqR65dk+s81B++l8PRat7tDDb1XrnxWynbL0I5MKyyDNpouC7r1vvnIHRIGCilimXO/wohAc+PN1a+ETLF1yns0IrDb23hryfJDa9SaKscKg6Gvcpj4a13gNrNKqHj5be+qSD92yJ2ItzrcamfJKbpTtQCO7tqOovtbGI9bG5itsmcEeS60tVhdoLGEvj/5MR6I91ejxenv3Pvyp9dRFbh5d/7i80lxWXocr3Wt1OWk/DdJ8gs0+oDCeh7PN8ydt1KmS5Sk6+3WKmicrbB66eThbIrC+FaTCZkJ9OXrwxxxJRzPvbkntem39PoE4O5YtdBbkbbgQv76OHT+Iy6ynXv2TB6LjdrwV3bLhB+t2nOQfA/yIB/9BQgvrovuY75xpVdLad7rjKrvQHc7rgUGGFpvwfTKY2kzImVi1R4kSN1f/LKY6fx18Z4GeHn2dlh1qdaVz3hJF2mD1rn0dICYFaLLiyjZ5cvKjrE1S9Ngzqf+Pbf9B+mrDwZY7aYoEcBGUzHmphPpls3m9bISJ0NdR03iapymSpK3LcNW9XdHRDxfmpv22qxQ1Z6RMX3+HQTk/3dTDze2ZMOqkD/eEAIrAgjFWGBXfF91d1DJFggSu4Q43Hxa0Q2Dlxyn5QHxO3opTNeYzdMTyjc59exsGrzYYqpg7r++sufLsCp1awBcwRg7+/UV3LxWflBApEsnWH259H8aXocPXU1dW/Rk1eMTgd9ufJ43pKQlV8yFCkSDoreao8ZHqosqR9McY+zB8tXuMpJMk5WUmdLe3j0WFCIf4+Tr35e/5VtnfmivXJ6JVviRx/W+ONOZS3V96sMfq4XsUcOVGpyG/yPWjpk8O69fQd1ARxLv+9yDqPqDoDP47wWoPmhP1x7sO/SiqVQd8ePCIzWr0rdyw5lHqkez3Pix7yJK8YE7YHPmGyz+02rZhzr3vrNldxV59ssS3vrEsUwJMDQX/taHus8/r8hbOQcR4cyg2RoxzMSq1Je53tQU8TYnmvRM6ypi6AHj+Cs89BO5Q4BDOzCxrXI9KzlmQeuwpy7uvL2LmNtYMSc5WBIQisETxat2KkyXaCt746fxtftGxgf1ro8AHEHgrGbBf7YZLQGg7jUpWPhUeFqO29IwUbMVFYAUGWw0sytyY4a6zdsF7oK/LWjdX335MTzVbkSJEMWXPbsxeNNBZzVrJFqsNNmiZ9GPgS2YsgftAKVMWNnT+xYAMtuGyrFrcjElRSNHaDFoTWD7ix40z5prjscXWmnWuPfgD39wYdUXzTqok7gc7Omi7JV5ruLR4Ufb6DJcN9AKyiZ7aYCL8KSVwPQCbZ89fTOrF6BbAGZz7OmuZt4DDwpbpTPqQwcdNxBg/cJRHG0nHLrXnn8XeOUbDTUHTbniyMjkcvKT8xEpOMPgGBUP8bpyx2lwZ67P97j+iyDW/aT3MrvvvdH2wiTauB9qcedpcCkqIW7Vz6xrhSECuHEgMdH2wWdhoD2ykBvo97HDZiy8qw+mPgUyr2ED47Dv6A4dn9LVJDYLAlEAAiHEQH+eNighcvFFaqm3yDPUaFcwFiUJ70AF80gGHt7epVCWl5KpSay+8eKvXuDpC23RryGVWRYsVpYwbWyOngAn9ZpM2ghKnGLuha9uYIparjO0w2Kq9VCGmQK2bQpm33GZVRIq+3Q2DrWDJBL3jG69DLxdrzG5wUSOGxvlvHPoEscrshu3GyvXtXlBLLFHoTwArmbe3RiONgJm3eAaGYFqqNX+oV0hRMU+TVgopeKxaxU/MzBu3fG+9vdZSlZySqkqbUEfBFdREirGLbgsmYHEAZjQyXd7sNedJxTTnkDiChSeIlWQzaZaaPPCMSiN+JYgy6Jec7s6Q54ReES3Xt10FfRcrChDw3t5jhx2XQwSfbQ8/Qw7hUPt5OlABAIh0qcYMBg0/eJkBLNQ4TgsMtxfRFK81doPXlznBwImAsekypqC1OGhaWtAEBSwAK1iRkUGKAgN0GY4hPrLRLMEe13kAACAASURBVPIsZV5oQb0IxZ49cKCBMN/9QFjjEgsFFUosqHu527hWLNUYHUAI3e36FDEFCQrKsKC43r3lu1zlOg4SdykWyqUx1h9HDkLhkpQhCEwEAkLzh7tTsw2y91+k9jg3CXs1+OxpN6qWSjU1vV727gZVAtRPTFn6b1sDuJ0jlQA0Ba2u6Ov0nc56ebhMfO6BGxnwh3nb9fJYVY3VmCJXwfBjpIQiNObzNajdf/nTZ5uDdzGaAXAfhmmpNFaqtaI7ItKpcpW+glNrDO/YyetxGFWMDoCKloKqF9ypUZq5a+NgIppQZ3eHpPZY0BBrcO0AExTCH17yQ4FSbNbTCp7nL0Tw+QqBKRBJp1nKAoIuQhVLLwsCyuLdpFcAQcPtcEFVyoT7sbz5kbnWpF0aqGn4FYxf0SF2QQPHkIEdFEDI8xGFqApUe5jQ0qJCC0kASfwvxDqakSWgjsG6ChA5fwSpvbPMWoouD0sCtef2lzFMhv0GipU3vK2Q0zilkCsJF5xoIyfOKkkTBGYBAjCW6tWYulrbxTsj9VYSJ38oqAwWV8VfwzL9HkFQkIIosUCf3PxW4TuutA3pMbCSRJmZdjJnSZ4tY0tB4rd5MoEpnIF5MfFLKPsfjkIfPPRNtH5W9oz3o/wFK4cxTgKf0E/LimLq9jdd7D9+8NB5arAuJwr4Hr693HCa+ryh6ugV/9YAzeIj9pUtazS7PqXfjvW/7vcPReJEP/PMQvy9W/C4slD+CO2CwvQKuLO1bpH7VQ/lD953tryv414j6VhKgueIOPkjghdAplCIX9PFufHPZ8Taai3+sQW+nsYDtijN83EjhDcEtyWKe14T1VCyxy78lY/gCiPlDHzlFhDzu4rrSCQn4TpRe5MAMmlixiPg67cXLlYaYAQWhRw84gWS+ezkknx/Q/6/92x5C35CFsRkbTLYVuTlxHPa6N6DrUSS9PU5VJ84N3sV47N5RPOLjXJqaf6G74MYG3A1/86BLW/Alw18TsumkpNCQS4RcRuM5lyXNn9PR98FS9bTKysGV72elxp9rsXhxsbvul2XrKTDCKH361PxQ+HXat+tvvocMt/Ri2tghKT4sBq+Mq35Mqmzd3Xy9YOgt7z0oi/W7dzEdocnAVNAqWe4D739PnSjImfkSpMnNTPZtWfrG8hr6XN+XMe9RTAC+P6UxyGSDrB39+H2b5H7N0yIH1jSVG/997Yn09gvDEMXWlY6+PRV6ebEB2DtwSMlmyxoZD9859AV+FkPjqZA4oHEzXv1Mf8nc10BCDKE/mAKeItBkOGP6e8nYzWuNpRshyG4IFTpnTpXyvNrmXjDmDQA9aHyCoAweOPCsN8Go/1GlOEpFhso/BA4Ui6GzhjNpCO1QK4TBCYcASDGQW34G6zAZcaMQ/v2MHtRQE3g7yoAXjl0MJ4PzJblcdRo6atiqWpXE/CWcWQhHdpgiGpL16oUEuTMEsy82du0SyVFJVlXFmLkG0dpAaZ4AMl2/epS9iUcQOqgVkH7jVjXI84Al6Yte6r/PlSzmWFX8XOrv2/P2/thAUMK9MXocH4EXHXQWYgBgjw9wA93eC/j28Ouoc7m6I/dwvOgF5BzqQLX6R4zdB3BA7LG+fZYlyDjXIRgSxQFHyIHo9tRww4AdCJyvj3gILs7+HQ77C+0UdOPjuxI8dXp0QW/AWIQJDN8FZaIn5cOEwy2WXjmm6bEfrCDQTeywwfcfiq92UF75yA4YsXGjfRYcVBgRAOMnPQV4ISuKGakCPQGEAywZkO6EsXGPD8Z4IQEvERh1CDnp1j6wgsKMe0sHJW4YhyGnOTQB4mQKwkXDAPZOLkQ0yCGiis5NgpcdZIgCNwvBIAYTxPpBXGAT79MVbor18yiMPP7JRak3SmJwDgqHdYOMyX7SZgiCMxeBLCvq/ic1oN2b5piCdF5s1ceSM/HDwGi9sYPS0KJIDCOCEjAy6ObJcblIEpkzsItlzPKyzTDxkOMY7OEFEFgxiMwRiPPOD5vzniISQenLALTx8g5ZSEkjBEEJgmBcVQ65GlvksaMNEMQIAgQBAgCUwEBovamwigQHggCBAGCAEFgkhAgam+SgCbNEAQIAgQBgsBUQICovakwCoQHggBBgCBAEJgkBObcezu4p/HeqREKBIHJRIBI72SiTdoiCEwFBMZB7U2TF36nAtqEh6mFAInknFrjQbghCAyPwDiuUImRc3iYyRWCAEGAIEAQmHEIELU344aUdIggQBAgCBAEhkeAqL3hsSFXCAIEAYIAQWDGITAr1N5tu27+fJ39dgijB4vKdPb+EIqSIgQBggBBgCAw/RAYX7V322lKA45H9kij93DyOe2VO9QyNjdcqWO2egLbNRUqw2F+uExtgrtnDXP4et4rrLxAX/Q5GwuVUYjYYrWpI0hBXTAp59NNhSsLa7ltt4ahTLIJAgQBggBBYFYhML5qD0HH72rfXCib5+sxrYrLfOf8k5XMrl3uE9qo1ir7RcrXV1estkmrQL6nKfdaWVZxU5AOQwR95ype2/2plx6XS3XbNtse3tvr9Xras69t21Bsvx40YA8ojOeHhtwtqV2vrd/XOawyDapHMggCBAGCAEFgpiMwAWoPh8zXYVgHNgKu/6S+eI2M3oNTkphdWl+vk1EDp9s6567JVoH8yKQ89bLPu5wevC6THuyp2Lrt+L+Yf7fPtzXPWfPK8zIR2KlZrU7wdHULVYKlJfHPPDH3qttD1B6DHTkRBAgCBAGCADWxas935midK32nYW2kANQRy1/IkNgtDWDf+v6Omvpz8tTljwYW8/Xbf5lu/FeClN1obN6TL+RE2A9anT6wS319/emY1OTYwEr0f19Pw8GWO/GLHxNh14G91UCbW8NlL76oDEduPDzz5f1dd+jyfZ2mLNowS4ylGIIkSRAgCBAEpjcCE6D22ooW0r61sLTftP/z6twFD0bgmofDSxS56tWi2D/lLAwPW/Cc4YrKuDkxsFx/U7GudU3lr9Qxc9lq31m1+ZXYI3kL58xZkFx2Jb90c+ID7CXufKOtaEnYHHnOkaj8nyRH8UTBg+OmzN+LihzuoSGX+Xtfnx4EVQQzfX2WTavql5g9XmIs5WAliRmLAInkmqZDO1ED12/XyYKiAAUzBYELvaRg9QnPnAC1h/n23kj+j+g7nq8GBO2M1+0FWdu8Be1AtXi7zYnNmS9VnLPpUDgKHQtz3V683b5m1+41D/Ew9NsK0su8W094hoa8vb9LtG98yXQuiDrt2/N6Tqjdb72AFej7pPV8bO7m1xMlwASaVLwtPwIQFsy80tx4cqBtR/ICsMdnVLLh+GB3e/vFUCJBeU5JanoiAEKiYpQmJn4KdoG7szhNSmY9F6XUVQdFYA06bVuZAC3lVhuwYUzC0W/Tyb6rtlzCmrpkyXrV0ofNCWyXdqzYPST5SLQoZWGjE2vK11OZa+jAMi6Y1K9aAqEQvCfykWhgxil1v7YwwWgoSi48y69H98D7aKoO9pi2VzrpWc8PbpgsyxQYKIeF8oGAvdpO4RiFENoeLl4PGKRMOlq4gAguVu+wBInfcNRxYMPClCYnLDjotL+3Q72YEWcIOIgynBSJHY7Nyc2fALWHdUAUn66JPVqiF4pVuf23j8yD+dsLkiJFlGhR9m5dwnFry+Lyr8G3zoZALIyo37676MIrR/dl4AbS2w6bue/F7cXPgkyRTLO7aNnx+paLWItYUhSZ+NOyuxQY+MrN2DOxSnzmXLm+HTzrsQcMz8HKkeTsRGC1sffWkOeD1K4315f7B0v1NW5TH41rvAbWcFUPn609dclHwbth0JJ5XHGLTHklN8p2oLGHUzV9rY1HrI3NV9hmBnsstbZY3duvL+OtHuy1MZ3pSLSnGj1eb+/ehz+1nrrI3S6vf1xeaS4rr8OV7rW6nLSfBmk+wZbp1erQkOdP2qhTJctTdDBabZ6ssHno5uFsyWjZv1fwfT0HXtvmYALp4OD+8eGqbu+Quz33+rYsgz047Bwu972eltVdr2nLO28I9hDLBNpoWdCLUoLxesCbY0iJy62n/usEND55PY5tUS1Fz63b3RHMA9YAlmSBBfey1kIZsG+ZXopbu/d83Du99A0OAu6osl3Eqszw5MSqPUqUuLn6ZzHV+ev41URfp2WHWl3pnLdEkTZYvWsfHDxfj6W4sk2enPwoq1qgebOq+3iRHDxuhS0parsK7ZZK06UERdqd+l27T4L1lM9ZV2w8JeQRZMcs0GUYk5aZ7DpUXgEWa2DFathvgxN2pEyqr2PHyvkrTfydhSVPzrMUARSB1d3iuIj13/dFdxe1TJEggWu4w82HsxeN9j6NEQs9+UB8Tt6KUzXmM/R99kbnvr0Ng1cbDFWMTvadNVeeXaFTx48bN//+oruXik9KiBSJZOsPt76fzYSqgUlcV1b9GTV4xOAXPT1PGtNTEqrmQx2PBEFvNUeNj1QXVfqvLEKH5Z5LwujxncdZhX77dFvz3NRXVGBMJUl5mQmf/71bOFKOjrO70tLuGgsHgvF6vs7y/N/OKfvz8cr8RPCEQIHVfH7lkep86svPPWOxP/k6y9YVXcpvOlGvz5DRUgEBP1Rf+MRYeJ6edSZY7YFBStIf7zr0o6hWHfDhwSM2q9G3csOaR6lHst/7sOwhCzQkzpFvuPxDq20b59zzeaI3fPJ/2Set80ZFNHwnASxVJJr3TpQ8dGjtgrCwOQu3XM6otumTgmY08u2Bphb8Z0vcr2p5l6FIkv3uiSLKuDwqbE5coevBBBhbOkymZnfjj32wZFhUasvTlqqNk3Mbm55SNMu4DlxOwe6L4tW6FSdLtBW89cn52/yiYwP710aBLyX0d9YyRirwiupuaFCCttOoZOVT4WExakuP075bLUMTRJauVkahZ0RgiQrO9PV3mpiSyJ42sChzY4a7ztoFn/d8Xda6ufr2Y3qq2YoUIYope3Zj9qKBzmod97arwQYtk34MfMkMYf/JHUqZsrCh8y8GZFMLl2XV4mZMikKK1mbQBr4ye+OMueZ4bLG1Zp1rD/7ANzdGXdG8kyqJ+8GOjj6mlZFP4kXZ6zNcNtALyCaCAybCn1ImR4UBm2fPX0yMjY4zOPd11jJvAYeFLdOZ9CGDfymIHeB/WW/0LpSyF+Ytz8iRnDzYAJa+fR01jafxBTpbBp25ODsxz4xMbbCzeDP8v7ijWFfU9tn+tU/7PfAJxeuxI/iE310uMqOSX3AMdH2wOWTr+o0zVptL9aZhzXf8GBf6c6fLsomWGRDUh0SGLSUomXhmdlXXAFO4vyNopFgy9/HMqpbRnXGGR1eTlCYITBkEgBgH8QLWWNDl639ItU2eoV6jgsmVKLQHHdDi5H94e5tKVVJKriq1IvPRrV7j6ght0y0QP6WKFitKGTe2Rk7J9Y6bTdoISpxiBIYzb7cxRSxXGds9wITVXqoQU6DWTaHMW26zKiJF3w5isuiSCXrHN16HXi7WmN3gokYMKHu/cegTxCqzG7YbC231oJZYotDTHvEajTQCZt7iGRiCaanW/KFeIUXFPE1aKaTgsWoVPzEzb9zynfX2WktVckqqKm1i7GRDqIkUYxfdFkzA4uyCdehmrzlPKqY5h8QRLDxBrCSbSbPU5IFnVBrxK0GUQb/kdHeGPCf0imi5vu0q6LtYUYCA9/YeO+y4HCL4bHvc2etpKpBKC5ocv1FQyKYNr4DRWEu/gEVRS7VN17jSKAEHmhENsUJb094NmaE7izpOwWHC+AeVADKADghR8DuQJNCUxFKtFVzmus+U44WQosCgX7ZCKcJEi5YojKi/PCv0RgHwseJMEo4RkE4kafTYrTV2X6YHTlAyBTOR5AeMFO45Cm73bjn4lLxbuRCuBU/7ECoNDY0jByG1RwoRBCYAASDGQVS5OzV7Bd54OLXH3QfZq8FnT7tRtVSqqen1smoPqgR442PK0n/bGsDtHH1XAWgKWl3R12mtYL08XCY+9yhEwduul8eqaqzGFLnK7IJUQBMRGvP5GtTuv/zps81BvUszwNxcpdJY+lbL6FS5Sl/BqTWGd+wEnExGlXSpxgwUN1S08C7sBsoOpYHagMsCHEykp6HO7g5J7bGgcfd9mKD1ELzkhwKl2KynFTzPX4jg8xWYFND00iehYoMKhh5upAgDdcBNrCZSe3woH7vaYEowf9E6h5MfIbUHm47GVifRQMffYtY0AWssfBCjmUEHwwYK86qabh4fApDDLYkw9gWS7LqHvgQFTKIwtqGBG14y4ZKLrsCubARGCnhAx3jgQz5GEmy1iTZy4qySNEFgFiAQmVRY9mpMXa3tYnDEVED3JXFyLEqZufjNV27Wp8QXxzL5mwuYxF+3ApeMKLFAn9z8VuE7rrQN6TGwkkSZmXYyZ0meLWNLQeK3eTKBKZyBeTHxSyj7H47CiD7om2j9rOwZ70f5C1YOY5ykQ8Zi6vY3Xew/fvDQeWqwLicKuOK/vdxwmvq8oeooF1ZDtwpoFh+xr2xZo9n1KWsBC+SH+48icaKfeWbht7gsmIhYKH+Edv9jywgAQ+sWuV+5UP7gfefKg+jxXReKavf52QAHHB/Z+vK3FSeBCHCxLHtbUcLZ+qaLXJ1RJHj+BSoJxutdglGBJw9YLnBBS7Cm74LlwMlYTfroXbYPxD+fEdvwK73Ax60EWAohC5NMvjSeGTBSIKbm/h9E7d3/MSAcTH8EwHcVChcrDSi4Drl/xAsk89nJJfn+hvx/79nyFnyrAURvbTLYVuTlxHPaSCRJW5fhqnu7AnxgFgTKm/bbrlLUnJEyYYCfcn66qQdqKUn6+hyqT5ybvQpGPYDjEc0vNsqppfkbvg9ibMDV/DsHtrwBXzbwOS2bSk4KBblExG0wmnNd2vw9HX0XLFlPr6wYXPV6Xmr0uRaHGxug63ZdsnIHjClDX5n4VPxQ+LXad6uvPmfs5h6AwPMNxYfV8JVpzZdJnb2rk68fBL3lpRd9sW7nJrY7PAmYAko9w33o7fehGxU5I1eaPKkgWm3P1jeQC8rn/LiOe8dgBPBxymAQd+v2dxwvioOBdAuL2qhjRQujlKZ/JigS71SX7Ya+yUGnpczYNvxXMiC9mPQNL9xhmAHlt5fYluhyvufnnMObZdPzBOP1YFTgT73bVqaw78zAaLwsVZGLe9H5akPJdhgrC2KK3qlzpTy/lgsMZCnjZ7BGqtZHVWeq2C8jg3EEgOeq8Zd2UIXBBsMmC3BnDjrr9h9yPa1e+xjKHlEyORkWHKng981w7iYrzT72je6Mcze6mqQ0QWDKIADEOIiXAKMQbQAMwcgJ/F0FwCuHDqnGCD+JwNrZQBseR42WviqWqnY1AW8ZZzuFHNAGQ1RbulalkCBnlmDmzd6mXSopKsm6slAXvnGUFmCKB5Bs168uZY1OgNRBrQI8rICDdT3iDHBp8AatZqlU9d+HajYz7Cp+bvX37Xl7PyxgSIG+GB3Oj4C3yP9tH9pbCfxwh/fSwWiIRfYH9itHf+wW+x+dAeycSxW4TveYIYDwgKxxvj3WJcg4F2F3JIqCD5GD0e2oYQcAGiQ5396I4NPtgN+bvY4u3tvGGznBJbfDqGEiXPxgp+sGGDlReY4Z1gPKdQTVETJy4mLA9wsWB15jIyM/aAT1Zsa1DIlKFBvzhhssfzszahn+ACn6nR54Z5kDmLN/B2WSP5CRU5G3kR5opsus6RLncwRxBZwjNzBsiBspvplRpVhu4XlUFYMLh4EsnFyIabAY4kqOjQJXnSQIAvcLASDG00R6wSveT79MVbor17Cv+NwvzEi7BIH7g8A4Kh3WDnN/OkJaJQgQBIZBAPu6is9pPWj3pimWEJ03DFgkmyAwCgSI2hsFWKQoQWDyEJBkljVulhiXAz8TekW1vEzzyOS1TloiCMxcBMZo5BnH582Ziy3p2VRHYPoYOac6koQ/gsBEIzCOSoc87U30YBH6BAGCAEGAIDCFECBqbwoNBmGFIEAQIAgQBCYaAaL2JhphQp8gQBAgCBAEphACRO1NocEgrBAECAIEAYLARCMw594bwD2N906NUCAITCYCRHonE23SFkFgKiAwDmpvmrzwOxXQJjxMLQRIJOfUGg/CDUFgeATGcYVKjJzDw0yuEAQIAgQBgsCMQ4CovRk3pKRDBAGCAEGAIDA8AkTtDY8NuUIQIAgQBAgCMw4BovZm3JCSDhEECAIEAYLA8AhMT7V3266bL9PZ4Z5f5CAIEATuFYFxnlBo90G15a676t0ry5Naf5zxmVTeSWPBCIyv2rvtNKWBeBt4hCt1tZ33Wy/5+jurdcooxNBitQls44kOsFFjoTIccSlTm+BmlUx2Y2FwYfoa+Z0tCFwwKWOU+Jab3C3PaVIiSQoLi1Kye35iqIDdNbcyUqXcCneUnYSj36aTfVdtuYQ1dcmS9aqlD9uLG9vJASt2D8lhpg9P0ddZXtSaCne4BbvajjCn+ALhykK0SSxLZ7DHVGjovMH+BecLJvWrcD9VvwNsySSbr7Pf9svE2g0k618O/gMjPj98Jinp4C6SHH8ExlftIdoKYy/Yh7Bldddr2nI/qfVveRL+gem3/s2u1A88gJ/27GvbNiF+bnQaNM/bpFVgW0VPU+61nc+9VAG2EKZ8HYaMfNvDe3u9dOEfvmSaGhsBTwJQpIlQEVht7L015PkgtevN9eWdmG6hqL7GbeqjcY3XwBarVQ+frT11yUfBVWDwHTnUpkIpF5nySm6U7UAjFGD66GttPGJtbL7C/h/ssdTaYnVvv75sxN292Sp3P/v66orV/PQpyypu8l/dggLl5XFbDWu+Q1GX6rZtxubUhmL7dX/qqEBctQdsfFq16NPav17kOtLfUm6sKnv7I79Hxmt1OWk/DdJ8/iThv+HJBpelnihs/fpmfbZkEsZLoHWSdR8QmAC1B3shioxfETe33+0JWIRNbg9FSaV/v9Ja+mwk4CdJrU640tLuovo+envPFdXOXdkyMRX5rP79khWnasxnvgZzdY8rfee72TIRKLz1/bKnT1XWn+Em4eQyTlqb0ghEJuWpl3W3OC5iXPq+6O6ilikSJJRoUfbh5sPZi8ZJzWBtCCQfiM/JQwJMPxXd6Ny3t2HwaoOhitHJvrPmyrMrdOr4ceNm4HRb59w12So4fSAOn3c5PThj/U36ki83/+IFuJX77fNtzXPWvPI8mlNgAnq6uv3KUr7LALV4xf8bSYll2e+3Hl4vY/gc7Kl9t/rzwcGGvfv8ls7zpDE9JSNqvmHJ4oyS9OxFYILU3qCzwWK/s2jxY9+iKGiFCE9WJoeHhatre3Cro4E2avR11jI2x7CwZTqwHvQ57Qa1jDZCvviiMhy58fDMl/d33aHHrK/TlIVKAqtqYW2n39IQG1Vff0d9/f98T732UXh7GlymXAGWovAQyZY/G+s+/4+rX3T3DiY8s0JCTzuxLHl5rKv7H6z9ky5MfgkCEIH+jpr6c/LU5Y9icIji1boVJ0u0FZzNnHL+Nr/o2MD+tVHABNffWavj7Oq77cBSB22nUcnKp8LDYtS1fxYQeGrQad+tliFjvCxdrYxCD47Abm9iMpEfYWBR5sYMd521C67QfF3Wurn69mN6qtl6BipC35mjda5nN2YvGgiedzgDli+ZrvSf3KGUKQsbOv9iQOyGy7JqnX6Lv4jlL2RI7JYG0AUBHIC6+m3Lmu2bEx+ABOc9+UJOhP2g1elDE/B0TGpyLNMQfRJ9L0e3xFay1RQwc6G2/mus/nCN6soevwe+uTHqiuadVEncD3Z0DDfZwawOJOvrMa0MR/cW0G5fna7Qhp5QL1nUMeErd5S/isykwuMVFiYrtPd7KWqgqyob3WoWZ1n4p2vUD39nCn1b84P3kl+vyZ/7jgD4xsoYDpxtrPqtXuNq9pJEoT3o8HiHgCVRK6XEa43dN4fcZpVYotCf8AwNeXtrNNIIub7tqlkjFisKrL2gqLf32GGHq9u4VizVGB3uoSF3uz5FTEm1TZeFMt1usyZCUdoOW0El5XoHSAYct5q0EYApsVzfDi7CfxHapltcofNGRbTC2AaY9MvuNSooZNHiCpLEjEMAiEVQn4A8QHHxP4AEeoagSNAHJ9v+tb29TaUqKSVXlSJpHoLTAQmVy6yKFtOC6u02a+QUENSbUCzFKcZu700h2fZ4u40pYrnK2I5M9KUKMQVJgRkUkaJvB1MDmOJBZoLe8Y3XoZeLNWY3uKgBUu7wfuPQJ4hVZvcQaDcWir3AvGv3onmBGKBnhVRr/lCvkKLpCecspOCxahU/MQN3AH54u4wp8FkOHtKCJjj72AOUlz8PZzp7oF7QRcVSrRVM/KDjZm/TLpU0Qqra1cQ0BPgF9wRwx/iGTdAE6al6fghYRM15UjGNA2TVb+YyDQSQ5TBBaEO4vOh2BAB0sRQCxuvnVsgPoHPEcc3qN1gB7Y0Ib1CfScYYEKDFiP4dQ3W8SvC0x68Omx6GA6T2oG8PKLt2o0qOJhVSe8jhx05LmiwSbnmO9gU0M/mm2LlK58DJCW46Z5kJHJgZjXNCDa+okJZ9Utt0Dd4j8GLedr08VmW+AO4UFM05aoK9lWBTmueQpGYIAkB4gnrC3VvZK4wE0movhJUQlPylUk1Nr5e9jcLbItRPDEX6b1sDWH8pjOAmLijwcEmHdBhdib65Wy+DTD+JRxRoGa6xGlPkKrMLVgBNRGjM52tQu//yJ0XPO1rv0gwwi0GpNJbVTEinylX6iia4GvU7rjVpl+IqnFGcsAxQLUksBVQHaEFpNLbMjU4xdgXSY4i7HUaNVJoHVSzsjhipbaDcQRrMf1pf4kODOIQrgG5WaTGE/E88WaiAASbX2vRyuUIhl+tbzhvXRsBlB6c4hxkvQBHKQDSNbeANZIjFk+kY+xcua1h4/Xki/8aGAC74Y6PA1ZogIycF7P6FZbqE49ami9C9FxEnfwTnOvT0wFdugcsRsAAAIABJREFUxp6J1eEz59LPcGx/mgtl87hyvs4di8Oz6Kg2kez5V9YMmD/6m+8xeZz4XOspxrXuczpOuqKWPB79mHyh+PRfTzEhcIPOdocrVv545Li5RDiuSGKGIwAl/9WYulrbxWDBDei6JE7+UEAWxcs2fuWbr9xsBKOfSePr1sInKFFigT65+a3Cd1xpG9JjYDWJMjPtZM6SPFvGloLEb+OE/NM4A/Ni4pdQ9j8chaGSwL2tb/2s7BnvR/kLVvqZE2//7SPzYP72giQwNYAXczc/x6HXvPy7Ow1rI9k2bjts5r4XtxcD5zrwJmh2Fy07Xt9ykb3qf5YkFu4oijm239bb/7HlUDfw6uXACOw5yYbugc+ra4/isamwJuCw+Ih9Zcsaza5PB/xJ4f84shdFwBqc1v6/nskuj9a9t0dDHXrzVeO1nG2akH2w4qgHIZKiBQ9G4S3cLY3De7dy5NokIzBhao/q66hpPC1PTn6U00MiSfr6/DsHtrzRCLwFPqdlU8nJFbqt+peTXXu2voHcfD7nx3Wdc9Myk12HyiuAuR+EShv22+B8jxkhEzS3Y+X8lSbc6C5auDw1+uT+fX8Bdnyf03rQ7k1TLJknydxd9j1byXYYD9bfUVFceWpFXk78fIlmexnwzWyyQD9E54Fi4/gGAkzysJLmJhkB9Kaa0tABncFI8sULJPPZySX5/ob8f+/Z8hZ8q8HXY9lksEGR47SRoGyLJGnrMlx1b1eAt27AqxGm/barFDUHywTeMoNyfrqpB2opMLNyqD5xbvYqZqH2iOYXG+XU0nz4FoHgvAsOcomI22A057q0+Xs6+i5Ysp5eWTG46vW81OhzLQ43j+a8JYq0wepd+2BPQV+KK9uYOX7drt/TtXmzhvGOwxrzEhRpd+p37T6JJmBdsfFUgEOUAi9gLE5DapV2/lEPRV6qLfs/V+FDGLuUBU+u1BHDPv+4WUie1nyZ1NkgJ18wWQlAG2CSL/78TtrGzCeSNujjv2ybu+6VVd+BlAIOsGjIuMKMF/Sw/rET+vaGO0KEd7jqJP9+IMAK1+jOOKdYTWTkZK8Bh10N9M9xNgRQ0OtxHNQqaMcA5wJxO2oKgOsCHoy9Hpkm0H/pCy8ogFMAeFaGhDIZbwoqqqBt8Rg7sDmjSkqT5pqDLkQr06BYqjIiBySs5e39sIDjDfpUyDHDEQByE9RD3JKGLoZo5OSFCni8aM80azQDZDyOGi0t40DkkBOLIwsbEZJtXHqla1UKCfIo0S4rJNKsRxxx+Y2jtAB3qkHz4OpS1tUtNO9wBrg0dD0ular++1DNZobd4GmF/BdwyoH5yl6FJkS5v58PsoVPQImi4MMgk+nNXuvPmbkPfKLGNmdTgZTCDMKQCO2NA66+08gND8zC+AGbyNEf45318GIAWXYuA69kThnCBFg2i7W0QZi/QQmOF+hjaTv07dF3oSHk4g2wdY8EL84vSY8VAVrk6N+x0mDqhYEzTi7ENDA/cCXHRoGrThIEgfuFABDjaSK9IBz66ZepSnflGs54cr9AE2r3ul33YtniAx8XjtfbgUKNkLzZjcA4Kh3WDjO7ASW9JwhMOQSwr6vwJvopxyVkyNdZWWRP3Lb+CeIJn5LjQ5gKRGCMq91xVLyBHJH/BIHJQmBqP+0Br9LebbrdDZ8D7x2wEL5X/ZtM9m3uyQKItEMQmDIIjKPSIWpvyowqYWTSEZjaam/S4SANEgSmMALjqPaIkXMKjzNhjSBAECAIEATGGwGi9sYbUUKPIDDtEOB2mRgfzmfcxkNCsEDMJvZD40KtkrzxQICovfFAkdCYOQgMv/EQ2qEGWFrAIfQB2Fmz8RB8j5DZYilMlhX4OU0gCfzGQ/jHKqOUhfCFXfzw9bxXWHkBz0Fpnn54wBZOvnOm3P/t9wafs1Id+NVQ8Alswf04hycbxAHZjUgAkhmURdTeDBpM0pUJR+AB9Dkxd0tq12vr/d+gni0bD9FbLP3x4SrwQrm7Pff6tiyD3e+L7djGQ/1NxVlFdriZF3gpdu/DtvwMQwev+HznKl7b/Wnwi+ACSNLj6uv/+D2j2fh2Hf5lZ++1utfScgK+ly0kB8OSFSrM70YElkHgG9b+eysJ1iCZ0wcBovamz1gRTqcKApKkvMyE7vZ29OE9mqlZs/EQdft0W/Pc1FdU4KteCIfP/97t4XUZhW085Ot1tFylN/MCHyd76We5j7vOf84qkMGeiq3bjv8reEiHRdJ3AXzA5XMK21aJqRwdc3n3iJpvWLLBHJCcmY4AUXszfYRJ/8YfgeAP71H3tPGQpUdoj6GpufEQNW95Ro7k5MEG8B3AYBz8Nh4SJZb+/ebhbOZzZZ5/nHfHLpGiL3YC598v043/SpAKvHwvgCQaQd+Z+srj39Vbf6dyHfB/4JOp32/YSe2OS6E/Dic83kFkwe7t6eFwUyGgs319lq2F9Ba4zOuSJ8G+9fN1f7xgKipq+2z/2qd19r5+fvMmsBca2rrozqdVLy+GVm/Zj0PY/FaYMZJ7HxBgvtYyyhPO6CirkuIEgamCABDjIFbAx8mG2XhoiL/EfnjPv/YYNx4C+7EL7DEEPsk1RTceor8WxtwCloJdTXgUgjYeYi+Bj4EVMBssgCy4MwPYDqVF6GNjqEYgkiATbd4Ev9XJJVBJuBsU+lQY2tGJ2RqC+9YaKsL/BJCld64AnyhDWymhPR/Y/RP4bRnAoIM+ephN0+jvqwE6hx1gK4oISgL3lEDVAzYj4hslqXFCYByVTvC0D4nHceQgpPZIIYLABCAwjNoD+y9iH37k76FBn+sUZGnUGw9xt1qaHLbHEL/ZApaJzz1q8jceQgqM+XYuve8d2koT8h608RCDD7dJEPhCLziAvngS7SU0Ep48kkNoux986x9W3XJqD1KGm27CDTjxT2jCfP+DJwu/9hmhMl8Dm5FJkxTSJH17uzFFinZH4r4kTKu9gH2gIEEoF/S+fbDjftuW+bdH/o0PArjg3yNFYuTEwSRpgsA9I3CPGw9R2B5DPC9YJq8Lwdyf9I2HqAHHR7a+/G3FSeCD8mJZ9raihLP1TRchp0EbD9Hsg71WtDl/eHj/7/SwCjBv7i668MrRfRnc/kR0MYFfHslLHx/8oBt49XJigUFxznJDN/VZddX/F7TzgiSptN6e+uc1L5Z9epdNn3iyYOek9Wm2nz+TVR1d9Js9udShrW8YXRmj+Mra3AUPRoAvsoHTAgH+SdZURYCovak6MoSv6YTAvWw8NOIeQyDyfspsPERFJCgS71SX7e4ASmfQaSkztsWkJsdSlMDGQ2AAfc7anLT/Te380JyNNrYDsZ26qu7jRfI5QH8tKWq72la0JExpcvJjLYBk5LWGsurr2Ba18PmYati7r/MGX49JIc2XNucs+KCb3yFAVjIfBOW88IutMZ9fTd6YnZhUUBB/+uxcfvMmvD49RpX0pmmgV/a6TjY2By9G0tMEgbE9LeKdGxsFUosgcN8RAGIcxEOQ5S1EI+c9bTyEbdDD7zEkmDkFNh7it0mCOw8VWOFuQkIbD+Hb8XA3DM1hD7eTXhDU9GAEItkF9nOn/J5xQXtdxhQJ3Nj976xvz28gwUZOBXq4Wxl2BJKlLa6A84qc0nbE07Wmgp+b3TR7AUZOQArvjgRsGQ99e4xDD224pjD2Yq2R5LgjwMmQ0LQdXWvkm5w4mCQ9uxAATxxgukyHPpONh6bDKBEeJxIBMFs58vc4bYmRk0OSJAgCUwkBsvHQVBoNwstMQmCMq91xVLwzCU3Sl+mFwNR+2iMbD00vaSLcTiwC46h0iNqb2KEi1KcyAlNb7U1l5AhvBIHJRmAc1R4xck724JH2CAIEAYIAQeA+IkDU3n0EnzRNECAIEAQIApONAFF7k404aY8gQBAgCBAE7iMCRO3dR/BJ0wQBggBBgCAw2QgQtTfZiJP2CAIEAYIAQeA+IjDn3tvGA2zunRqhQBCYTASI9E4m2qQtgsBUQGAc1N49vjA/FVAgPMxOBMgLDLNz3EmvpyMC47hCJUbO6SgAhGeCAEGAIEAQGCMCRO2NEThSjSBAECAIEASmIwJE7U3HUSM8EwQIAgQBgsAYEZieau+2XTdfprOTHa/GOOqkGkGAIEAQmLUIjK/au+00pQHHIzzClbraqbAT4yWLOobmCPzO19muWLLC4X9ea/qcjYXKKFRmsdrUwehSn9NWqEQlw2VqU2e/b9aKCOk4QYAgQBCYSQiMr9pDyMDtFr2eltVdr2nLBbY/nlz0fJe7u76rd3xD70L4dWXq4OPbL8ONQ1k2fB2GjHzbw3t7vV5Pe/a1bT98yXTOR93oNGiet0mrem8OeZpyr+187qWKHqL4WMzImSBAECAITF8EJkDtQTBEkfEr4ub2uz237zM0Fx0tru/KH/sWy4ZYlrgskv1DUb6+uvI9rvSd72bLRKLIpK3vlz19qrL+zLWP3t5zRbVzV7ZMTEU+q3+/ZMWpGvOZG3w9kiIIEAQIAgSB6YnABKm9QWeDxX5n0WKob8DG0LLwZGVyeFi4urans1rHWRQNNid8hOrrrGXsiWFhy3T265TPaTeoZdDsGC578UVlODJI4pkv7++6Q+Pd12nKQiWBVbWwtrPPfxR8faf+enqwLidqTlhYlFJXHWSr/PcX3b2DCc+skIhQRbEseXmsq/vvpz/rGlymXPEdmppItvzZWPf5f3j8iZN/BAGCAEGAIDD9EJgAtddWtDAsfGHOn2LyNclR82hIBs9++0d/u3lzv6j4ua1dqR94hoa8vcWi32dnGP5yzbLpudc+faq+1wszy59bcLunYlPm70VFDvfQkMv8va9PDwIag0KZvj7LplX1S8weUNXdktr12vp9nX6myNtfP7iuERgqIeX3nup6M6u4yT8M5rbH3R8RJ3+EHTjRggejBj3XndeuRiyUP8IwT4nmPxh151rfN2wpciYIzCwExjlGzNdvL1ystgQsQmcWZKA3cEE/X2e/3xatGYfrxHdoAtQe9O0NDXn+qHaX8S6xhPSMRfP6mo/YYnV79c8CM6NIlv3uznRX3X7DH9pjt+75TYYMPHCJZKs0idQnredjcze/niihKElS8bZ86IfrE8q80tx4cqBtR/IC+DCXbDg+2N3efhEXQrFsTfYaYKiElDN/vf3FPrPNgV+n5i2Iihzo6r7EAu3zfOUWL/iO7KHogd7uS2xR39dfuec+JPk2W4qcZzACF0zKGKXpAt9DXiWAS/NR6JOgaWHQadvKBEEpt9qccLE24Ue/TSf7rtrCyS9o8JIl61VLH7b667Oow6NWQo/1eB18T8NkWaZAEwtwHXSWF7Wmbvg+mMD84TtnKqxyMv9HpMAFlEUpCxuRTYip6eupzDV0YH0BYXQ/zrIEet7hoAVrJD5OLZAszyeXcpqUYTH+2HLXSGJ6IzABao8GJDKpsEyXcNzahPQQ/kQ1OsAGvnIz9kysHp85V65vB8967NFcKGMf0bDiKOkb+MoTROlbj8kXik//9RRzmxh0tjtcsfLFCUvjxOdaT12naficjpOuqCWPLwgkSf7POgQeUBjPC5sW+hq3qY/GNV4b8nZXPXy29tQlHwUDm4PvveOJWWTKK7lRtgON/F2/r7XxiLWx+QrbymCPpRasNd9+fRltx2fz7+EMe/rHh6u6vUPu9tzr27IMdr84Z+gvL4/baljD+AhQS8Bas3XbpzfpVn2dZRnPYxSeW2/qwVcJgEKx2vZUo8fr7d378KfWUxe5q9c/Lq80l5XX4XqdulqXsy4nSPMF9fAuZIPKggxZYevQlfrsRyig/yZ2FIVaJ3kTicCEqT2qr6Om8bQ8OflRTg+JJOnr8+8c2PIGXL75nJZNJSdX6LbqX0527dn6BnLz+Zwf13XOTctMdh0qrwCrSLA6M+y3QZmPGSETNLdj5fyVJn7+g0WnszZLmYtWo77+zlr9/pPRORnLOXYgrCKJZnvZipMlmyxOHyhzoNh4doVOHf9Q5u6y79lKtlvAmr2/o6K48tSKvJz4ByZyIAjtaYSAJCkvM8HftOD7oruLWqZIkPz/7Z19cFNlvscPE/Deg96yxXTW1rFq6hIBGZCCtM6p1q4WGLgCTmrYtnDLDuKmkrbriLe7lWAr7HZhl8spUkbAgS2ml25ZGDS5puhllPZuSnq7LrdaDJsiW1ZeJiFdGG0Fkun9Pc95yZMmaC0pTeF3/khOnvO8fs7zPN/n5XdOOM2k/H2H9+VPipnMfBuYO2cWLGfsrb5u27p5f9+5/VW75NX+4HFrLa3SscvN1faWw+NyVhiggJTDqc/dfmb21eOwrP1b2auL2Kle8OTOF8sdinadadi4s9tgeZMg0mZYtlbPOV5rPc5EQXbcuZkZ6YkaTdqyfc1vE8syegRPNlTv+Yzre7dqwG6GLvHLtc99l/JdN9pvA4zXbkkCyjzp+32zKJiQVzziM+olXjDXkf05v8OkSzA5rhB/Ab9rt0mQWoTeUGkjG3r9XledWZAqNp9tcUIQr0s06khEvG7RIoHXmRywGxjNMeBxVBqoT44XXrHRbTwmP70e2ytyzJyaXH8/eYBBipPmyXPArGZJdEJKkqtNzhSvM4gusn2Ix61GAGpYRJE6RSGZTumUK6Haol7yOi3ZvN7iYitFoEPMTg6rKh5RoI2BVH6/q84k1USoTusdUFFJtNoMYQbPJRusbo9jvUFH24BunkHQ0vbSG80RWpAo++QFU53LD/vfhlR5zSPgtOgzLM4PyCd9aCfgsuh5o9UL6Ue0OzYDu9+SW4T/Y4ugE8yNrpZKml1eZ6yjjVShAd9+m0k31Wils72BHHrd4kK9ySY3IikQ8a8XBB0nbX+QTGoZwl+5LOm8wQrNXj0CbhH4GtTGKF8gPjl9ha3OyJNCSfRpnyOIbk+dUZcsWD6WkiaFUzqd60Yr3TI5t91WU4WDNPOA1wrxzxM7DlAmLaJAn3YisTE9FTfV5DgBPRsvLFpEblw0UGrCeBILArQxyR83GF9ksx9UhDHMwaDSQ09IYBgIQDWOiBW0TX2oU63m0iApdEkZ0oWHlgdh6gCL9Mi07wVlSuaFSif0qgG31ajnQDJ7ycOjfLYI6sH08vDwKNEbCAUConT9IccrXqshQRoaSo7pIG+qtpH+moixKiSKIkIoXitJQoDIQwKRSaIMcgbkgaD1ANE8ohxkqEqkCBRL+Kk1YjTpFufJ8y/S+58PUQD/+oWimxiRKcd5h2mGznTABQNiSfZIuqFBJwxCyVhZuqSEge+Ax1Zp0HM6Q6VDkV1aimyxA3QJikNOiP9QcFo0Wfmiyl5ktAq6AL0FMP7oJmZ00jBCzScMX8hdlORQMNOxesDzwT6XGyhxIJDuXhqcLRTJGR6xJaC2xmjN9vslFdnsBxU+hjkYVHroCQkMA4Fo7Ued0inpqd1ff8QlxUvYt98pGqbSSZIie6SbJvoke5N+tuyH+Qid9ND+NDR3lFZHbF/KGiYFYhzZtsfRGMj8KdVQZxOz9bTjhpURUEejtbOOpvsPRQ6lqJTkiO5KGZDWPxJ0ulSdPPWhmqo3WLapmqMWMeB3mHXyqkyvx7pcR/t9ehnkNkOJQU6LeNaZHf7ekLYNYranJCZNbaWZJZ3qyZM8ek6iBeELyR4JJc1WLR+D2EbO9qJESyZ8AK2T5FzI0MFwoFPMTiBKFloTkmVPkUMlFmkdS56nDixUyBOexYoAW/FvMM7h29tjM4nnSOC2IUCMuValNOy1n46woBrIQDtNf89AN+6ri15lFyx0jXEMCSS0/UvNJZM5zWyzJfPw6yW/685dOT+FBNJmLck9WjBluX3By+bZ32KBzGbgjpSZU7imP7xPbFDh1Q2W5s+qHw8cKpr41LpW9kmEy65Ddl9ReUUGbFXwafnlpenHGx2nSaK+Qxu33P9G1bzQ6yB6HBWlX5S+/5u5iczWouZe/bRx7c2fyJEGv3AePZs6RRcKReKSDk3i7J9Vl6Y0bHec7vlo9zudnPwM7l2PVbVzp/bvel+13FFCJD5R+e7unCMrFq93Xp8+E61mcv4LM+y/WLh0yw9Kd/yqkGtYs6q2u2D1sknKbFaJ+Hrf45LuJosD5Bmncdfzg+7xRgBlL97uCOZnNBKgT6plVbUSm0ZqzMVP1E5QGpf2xyuLvtn08uvkqYbgyfrVVXZiIaWqkUab++yC7oaN2+B9sGDZX7Pdfo7jxn6XY7CntSprwnxqA0mMxQo4H1+Y/7QsMPcZX31Bz00tIk8RRDUly5vJKBElnjBtpWgt7DYVbWr1nahfOuupbX1Pv7Q8J/nTIy4vc0sS0oXZ1/ZUbyBa2NdVXy22pORkpnLchSbLpo6yMqP85gcIcaGp4t+3u22leni17T89VPoBR57oza3p+qFxQ/kce9VqYnvpa9u2Xjw2vbhgOpOdC03FmVnrjpJHbHta6xo/4e8Zf37vm3vOPcksn8LciwtZ7jD5g9cqgfLlcn+PGDtERqudQIzaytbw587lLsuf/ITZMqO95a7CFdnRNJha1YUZ37FY2BzgedwTGNpskS3W0GLAUEhgxAlANY7IQ8RK5iAXOWEzSjHM4nRGkRhzKYuckEZ0kxZ1N4gxVAmZtER1ZOxcYINRsgkjZfjKVWlmVAE2x5yWZyoVoxuIKqpJi5IBtYxk63GqzvDrd+rKZAucKJZiqnEZzPeUvS7YidRLq44K0cAXrnbVTiV8KbKfsTWTWSmh6HcgZGVGDcq6DoFVXPijStKGKOzwtX8ebWuwH5aaCyolOzo16oHRynZqsItqrpSWoP02s2mfnGmVibzICdEwJi1kmdfNGOtFVBs1VTyJEYEYis4YyBIb3SDP4aFd1efQYlCD4wkSGCkCUI1HSe2FF4LMep6r9dbODXsAZ6TADUwXJlKLqx/e+WFJ7J4OHJgE/r7dCcRQdJR1mNsdKZYfCcQZAebtKsEu2+6mQK4wJS41D97KUlvaNLt82WRmoTLOYGJ2kABDYIij3RgKL5MZPEUCN5VAfM/2+rqaNpcXb9h/CnaptIJ5x57/WELe4IcHErgtCcRQdFD2bssahIWmBOJb9vAmIQEkECIQQ9nDRc4QVjxDAkgACSCBW54Ayt4tf4uxgEgACSABJBAigLIXYoFnSAAJIAEkcMsTQNm75W8xFhAJIAEkgARCBMaGTod6xu40DjUODIcERoYA1t6R4Y6pIoGRIxAD2RslD/yOHGNMOV4JoCVnvN4ZzBcSGEgghiNUXOQcCBd/IwEkgASQwC1MAGXvFr65WDQkgASQABIYSABlbyAR/I0EkAASQAK3MIHRKXtXm4onpBU3kX8mwQMJIAEkgASQwOAJxFb2rnbV5MLGIznGZxXvbYsDXTpTn5ci5Qg+JxQ3XeWCPW17irOSqOPDeTXwJ2f0CHbZS7Lgn8Eg62l5NW3kj9PIEew6WBLpWbqGn0gACSABJDDaCMRW9mjpBdHTH/AfeabjRdOWtq9HGEjwS3fH/Rbpz7Tgv6jhf1uCbVuW/bIj549+yKQz/3z5aprJr9uqjAvtul2e3n6/o/D8G08+tw3+BJMLtlYtKLLfu9kTkDz/63M1n8p6OMIFw+SRABJAAkhgKASGQfZINjSJM+dMG9fj9V8dSqZiGOa060j3/foH/zkUpSaj8vOzzZVPJEImM/Ly0s8ecXZzvkMbN501vLE+P42Hf2e2vL12zrE6658v+Rq2bOqe/8ab+Wka8Lzm7epZx2ob/4y6F6KJZ0gACSCBUUZgmGSvr2t/fdO1SQ8TvYF/yEwbn5mVOX7M+Ly9J9kFxip7F5EQdtVxfFqxvSfY1VSVlyatNy5enAVusI3HOj6/veOaBNrXVrOU+oRV1ZK9bb5w/EHfsT+19zUUJI0dMyYpq3iPunRJvQV7Whsb/2963rwHgl+4O/oeyZrzQym4Ju2xJ1K9nX8994Xb05f++Byt9HcvfFrmY6nd7r8q65/haeEvJIAEkAASGAUEhkH2WkofGjP+oYL/SikyZibJ/4vZd/yun/ylt3e7puLJNXSBsT/gqdD8Pn9BVWvQ17AKHB/d4Qn09wc6ap/8F/e21Ut+ryl1efv7u63TL7XD341xfSejOAZ99aufbpxi9UNI75GcjheXbW0Lm4pdvXT3swdh3RIi9ux4tOOXSysc8k4eMYoZOzGz2lu27qVJfNDvPZfwkP4+5V88NRPuTrp23nfR7+1JmKa/T7mPmol3J/X5fZfC0lAu4jcSGLUEYmwjFuxpKnk4r37AIHTU0rlexsmAnpoLXM8DuscpgWGQPbK319/vfy/PWy3vkEHZ0+cvmHSH7/C79tTizRZYYOQ0aflvvjG/u+E9x/vUUfoLTU3aXOODp5o7UwvLXpqthX/XzKgoL0qA8L7/jeJ49vDBo5db1mVOJJO5zKqP+txO52l2WZVPm5s/F9YtSXJLfvvaYp/V7pKu3zG39hJo4Vsz3jGZmy5oJiYlX/a4zyhhg5cuesfdo717YlLi5Q73GeXeBf0XvfxE7QT8r0+FyC34faImKyWr5kSoZCFJgEsTqCVU1KWFvi77GtkmKmuNvYsM1ob96LEXp92fV6/WUEjwTP3SVfU+ZmTG/Et7jPITKumYtKU1A5dYYPmmbUtpc87KH0MDvo5F2HfFwIU8jB8AM/hpTeFvmNEtmNH929J6shHPHuSmRSpSyGwtKavkIF1qYgOFn3fVZI1JCWcb7gF/jVoCwyB7EovEjJLq4vSPbA6qQ+yc6fuxunzRK69nMuFCjuP0FifM9ZTjcEmaMmNjvNPT4OWLfogp0Lbu4fFLpX5Bk7ZwxdzL1kN/CT6on8Z/2nzsghQo2OU62p005UfJD+of4tv/dEzuRPq6nK7uVP2PElH2BsK9bX7fKYid0ZcWfAfL896fdvB8f8C9697je4+dCXLEsDmy740lq8TsFYVJ9p0HQ72+r/ngu7aDh88qqfSdrN+2I0zoAAAKg0lEQVQLY82NLz0Ss1pLSvrevbvcgX6vs/BC+dKqprBlf1i+2bJl2pqqubBlcKahvIyxCFtZ0USaWLCtesFCJoYnl9WcDB8lRIEpFSjY8+EO0SpubGCV/lxDwbMFEcqnEFC/IWMVefZHD/oDAc/mez+xHTsdnqjqUTpJK2nuP9uYD2s9MNx5BB+XGoBnVP8cNtnjfK11B9v1mZkPqDqk0c5fVnRt58s/J+OsYFf96rVH5xT/ZN78Zxd010qOZAOv4ctZSzK739myDUaRMDqr2m4nlTMl99sdIbl1T014qibU/slIc+/SrEI6GoXtw72W7UeTCxY8PuWxnOSj27f+D6x2Brtsu5sCucKUO7RLNlRPt699rR4G6T2t2ypqj81ZXjBzgtb4WvWco2tX13cFIYadFeLxOcV5M2PWf4zqmnM7Z16bsXxJevjSAtke5h4R0rWcZlL+vsP78ifdlGpy58yC5dT8SjKZ/rpt6+b9fef2V+2S50PB49baGFfaq+0th8flrDBAASmHU5+7/cxcq8dhWfu3slcXwVSPu9rZcnjs3BULqUUYmI/5O9x+ooUbd3YbLG8SRNoMy9bqOcdrrceZKLjrwgye2Fv9n6c4poBSNdQlfrn2ue9Svm9gq56bmZGeqNGkLdvX/DaxX8Pj9iSgzJO+3zfLigl5xSM+o17iBXMd2Z/zO0y6BJPjCvEX8Lt2mwTSIjhOb6i0kf28MEetYPnY3+91iUYd8cPrFi0SeJ3J4YchdhTHgMdRaaA+OV54xUa38Zj89Hpsrwhy3WaTEw06yVV1JLt/NrPkl9cZRBfZLyRHwHPArGZYdEI+8LhlCEANiyhLpygk0ymdcuWKw5Qg1UD1ktdpyeb1FhezzgDb0mJ2Mltz+j2iQOowRyq/31VnUmvXegdUVBKtNkOYwXPJBqvb41gv10ndPIOgpe2lN5ojtCCl9vKCqc7lh/1vQ6q85hFwWvQZFucH5JM+tBNwWfS80eqF9CPaHZuB3W/JZfR/bBF0grnR1VJJs8vrjHW0kSo04NtvM+mmGq10tjeQQ69bXKg32ZRmct5hmkFjgOd/IMJ0kiuSSS1D+CuXJZ03WKGnCB2RMOk1Uhwu3WJ7y8ADtG7qRvscQXR76oy6ZNp7EGdSOKXTod7IR8Atwm0zqK1YSkXObbfVVOEgrT7gtRp5fp7YcYAyOa/0aVAH3K46uY/guKkmxwno2Xhh0SLSmUQDpSaMJ7EgQBuT/HGD8UU2+0FFGMMcDCo99IQEhoEAVOOIWEHbyGZy+KHKnnxJGdKFh5YHYepYivTItO8FZUrmhUon9KoBt9Wo50Aye6Fj5vhsEdSD6Y4leSBKCQKi9NEhxyteqyEh2+IEjQgJiaptpL8mYqwKiaKIEIqXBpQwjAN5SCAySZRBzgBVCZ3JeoBoHhl3kqEqkSJQOOGn1ojRpFucp0yUoPc/H6IA/vULRTcxIpMOWjSJJYxeqRySdCWekhdZtzxKECWkNKJVYYIzxUiIqSfgGApOiyYrX1TZA98wuK006DmdodJBTejkYUGA5lOSUgVaKJ9QJaCYXiqHgpmO1QOeD/a53ECJA4F099LgbKHkQuBXDAmwTfIGo41s9oOKMIY5GFR66AkJDAMBqMYRsapTOuVKWPcXPhFUvIR9+52iYSqd4iiyR1SHTnQkf9LPlv0wH6GTHjq9CM0dpdUR25eyhklhGEe27XE0BjJ/SjXU2cRsvTwHIupotHbW0XT/ocihFJWSHNFdKQPy5EinS5WVSdJUvcGyjYpDWPECfodZx0vS2+uxLtfRfp96AbnNUGKgDmReKOuQpEnZYkdgMLM9NcUQzH461ZMnefRcUtyQ7JFA0mzV8jFMMyNne0qs0oyZTljJhA+gdZKcCxk6GA50itkJRMnkoQBZZ5Jk73hoVi1HpAwO4OfAQilJ4XfsCLAV/wZjHb69PTaTeI4EbhsCxJhrVUrDXvvpSFusARC00/T3DHDiuK8ueiNNLRjHkEBC27/UXDKZ08w2WzIPv17yu+7clfNTSITarCW5RwumLLcveNk8+66IJFQHNgN3pMycwjX94X1igwovZ7A0f1b9eOBQ0cSn1rWyTyJcdh2y+4rKKzJgq4JPyy8vTT/e6DhNYoR3Pmy5/42qeWCnLR1XXXarb/FrFZLltnFD6SMfNR45rblXP21ce/MncqTBL5xHz6ZO0amhlND0OwTzzIe7/+iGXb2CVDCmHftYlZv7bM+u/2ZzRgIkPlH57u6cIysWr3den74mcfbPqktTGrY7Tmsm578ww/6LhUu3/KB0x68KuYY1q2q7C1Yvm6TMZsNyE+XHuKS7yQoAeeRpXJTL6BSXBFD24vK2YKZGGQH6pFpWVSuxaaTGXORBF6VxaX+8suibTS+/Tp5qCJ6sX11lJwZTqhpptLlg1dWwcRu8HhYM92u2289x3NjvcoSXLVRlTZhPbSCJsVgB5+ML85+WzYzvM776gp6bWkSeIohqShZpmZUwbaVoLew2FW1q9Z2oXzrrqW19T7+0PCf50yMuL3M3EtKF2df2VG8gWtjXVV8ttqTkZKZy3IUmy6aOsjKj/G4HEuKOdCH3WuP6DUep+VhDhXhMn/PYA9x9xg3lc+xVq4ntpa9t23rx2PTigumMBVAUmInn91fvuUAmi/I4n8xZuf2bt0a+/pAqXy7394ixw4Wm4sysdSQzYLZW1/gJf492AsAxlq3hz53LXZY/+QmzZUZ7y12FK7KjaTC1qtu05uf0HRvBrg8b2lgsDCE8jX8CQ5stsuUaWgwYCgmMOAGoxhF5GOoiZ8gkiuN0RpEYcymLnJBGdJMWdTeIMVQJmbREdWTsXGCDUbIJI2X4ylVpZjfVyLLbM5WK0Q1EFdWkRcmAupBLth6n6gy/fqeuTLbAiWIpphqXwXxP2euCnUi9mZqEsESZInBawXxAsY5hbM1kVmwougWn2o4QDx0O01SyIaqIHvFN1ie1fPYm2+ZnOOlZYTYOWB0tqJTs6FRnxjyNNVuDXVRzpfTaXr/NbNonG9eoTORFTmpVp5q0kGVesren2M1EVBs1VTyJEYEYis4YyBIb3SDPYZ1B9Tm0GNTgeIIERooAVONRUnvhhSCznudqvfAu9ZGC9W3pwkRqcfXDOz8sid3Tgd+WHF67HQnEUHSUdZjbESOWGQnEMQHm7SqhB0zjMr/BttrSptnlyyYzC5VxmVHMFBKgBIY42o2h8OKNQAIjRSC+Z3t9XU2by4s37D8Fu1SwQrhjj/QCv5GChekigRElEEPRQdkb0TuJiY8ogfiWvRFFg4kjgTgjEEPZw0XOOLu3mB0kgASQABIYTgIoe8NJF+NGAkgACSCBOCOAshdnNwSzgwSQABJAAsNJYOyNR84uud54bBgDEriZBLD23kzamBYSiAcCONuLh7uAeUACSAAJIIGbRABl7yaBxmSQABJAAkggHgig7MXDXcA8IAEkgASQwE0iMMTn9m5S7jAZJIAEkAASQAIxJYCzvZjixMiQABJAAkggvgmg7MX3/cHcIQEkgASQQEwJoOzFFCdGhgSQABJAAvFNAGUvvu8P5g4JIAEkgARiSuD/AY0HQ+6tWsqQAAAAAElFTkSuQmCC" alt="" /&gt;&lt;br /&gt; &lt;img src="data:image/png;base64,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" alt="" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-8069729226424441716?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/8069729226424441716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=8069729226424441716' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8069729226424441716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8069729226424441716'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/07/hp-brocade-san-switch-equ.html' title='HP - Brocade SAN switch model naming matrix'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2583055223240982666</id><published>2011-07-06T11:52:00.000+02:00</published><updated>2011-07-06T11:53:20.722+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='odm'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>ODM Device Configuration Object Classes</title><content type='html'>&lt;p&gt;&lt;a id="idx127" name="idx127"&gt;&lt;/a&gt;&lt;/p&gt; A list of the ODM Device Configuration Object Classes follows: &lt;a name="wq105"&gt;&lt;/a&gt;   &lt;table id="wq105" summary="" frame="void" rules="none" border="0" width="100%"&gt;&lt;tbody valign="top"&gt;&lt;tr&gt; &lt;td width="20%"&gt; &lt;a id="a48c0139e8" name="a48c0139e8"&gt;&lt;/a&gt;&lt;strong&gt;PdDv&lt;/strong&gt;&lt;/td&gt; &lt;td width="80%"&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Predefined_Devices.htm#a48c0138bb"&gt;Predefined Devices&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139e9" name="a48c0139e9"&gt;&lt;/a&gt;&lt;strong&gt;PdCn&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Predefined_Connection.htm#a48c013901"&gt;Predefined Connection&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139ea" name="a48c0139ea"&gt;&lt;/a&gt;&lt;strong&gt;PdAt&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Predefined_Attributes.htm#a48c01390c"&gt;Predefined Attribute&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139ec" name="a48c0139ec"&gt;&lt;/a&gt;&lt;strong&gt;Config_Rules&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Configuration.htm#a48c01398f"&gt;Configuration Rules&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139ed" name="a48c0139ed"&gt;&lt;/a&gt;&lt;strong&gt;CuDv&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Customized_Devices.htm#a48c01394b"&gt;Customized Devices&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139ee" name="a48c0139ee"&gt;&lt;/a&gt;&lt;strong&gt;CuDep&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Customized_Dependency.htm#a48c0139a4"&gt;Customized Dependency&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139ef" name="a48c0139ef"&gt;&lt;/a&gt;&lt;strong&gt;CuAt&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Customized_Attribute.htm#a48c0139af"&gt;Customized Attribute&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a48c0139f0" name="a48c0139f0"&gt;&lt;/a&gt;&lt;strong&gt;CuDvDr&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Customized_DeviceDriver.htm#a48c0139bf"&gt;Customized Device Driver&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;a id="a82c018ee0" name="a82c018ee0"&gt;&lt;/a&gt;&lt;strong&gt;CuVPD&lt;/strong&gt;&lt;/td&gt; &lt;td&gt;  &lt;a href="http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.kerneltechref/doc/ktechrf2/Customized_VPD.htm#a77c0186ff"&gt;Customized Vital Product Data&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2583055223240982666?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2583055223240982666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2583055223240982666' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2583055223240982666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2583055223240982666'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/07/odm-device-configuration-object-classes.html' title='ODM Device Configuration Object Classes'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2814355820021881177</id><published>2011-07-04T19:20:00.001+02:00</published><updated>2011-07-04T19:20:42.682+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hacmp'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>hacmp tutorial</title><content type='html'>&lt;b&gt;Cluster Manager (clstrmgr)&lt;/b&gt;&lt;br /&gt;It uses services provided by the RSCT subsystems to monitor the status  of the nodes and their interfaces. It receives ibformation from Topology  Sevices and uses Group Services for inter-node communication. It  invokes the appropriate scripts in response to node or network  events.(recovering from SW/HW failures, request to online/offline a  node, request to move/online/offline a resource group) It maintains  update informations about the resource groups (status, location) A  daemon which runs on each cluster nodes.&lt;br /&gt;&lt;br /&gt;If clstrmgr hangs or is terminated the default action taken by SRC is to  issue halt -q, causing the system to crash. Clstrmgr is dependent on  RSCT; if topsvcs or grpsvcs has problems with starting, the clstrmgr  will not start either.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Cluster Information Program (clinfo)&lt;/b&gt;&lt;br /&gt;Clinfo obtains updated cluster information from the Cluster Manager. It  makes information about the state of the cluster, nodes, networks and  applications. Used by clstat, and it is optional on cluster nodes and  clients.&lt;br /&gt;&lt;br /&gt;startsrc -s clinfoES                        starts clinfo  (/usr/es/sbin/cluster/etc/rc.cluster this script also starts everything)&lt;br /&gt;stopsrc -s clinfoES                         stops clinfo&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Address Resolution Protocol (ARP)&lt;/b&gt;&lt;br /&gt;The Internet communication protocol used to dynamically map Internet  addresses to physical (hardware/MAC) addresses on local area networks.&lt;br /&gt;The /usr/sbin/cluster/etc/clinfo.rc script, which is called by the  clinfo utility whenever a network or node event occurs, updates the  system’s ARP cache.&lt;br /&gt;&lt;b&gt;&lt;br /&gt;Cluster Communication Daemon (clcomd)&lt;/b&gt;&lt;br /&gt;All cluster communication is going through clcomd. It must be running  before any cluster services can be started. The trusted IP addresses are  stored in the /usr/sbin/cluster/etc/rhosts file. (root.system 0600).  Nodes with a non-empty /usr/es../rhosts file (or missing ...rhosts file)  will refuse all HACMP related communication with nodes not listed in  their rhosts file. If an adapter is missing or there is a format error  in the file, clcomd will not function, all connections will be denied.  After the first synchronization HACMP ODM classed are populated, so  rhosts file can be emptied.&lt;br /&gt;&lt;br /&gt;Clcomd is started via /etc/inittab entry, which is created during  PowerHA install (clverify is using the clcomd subsystem). It uses port  6191, and it is the transport medium for PowerHA cluster verification,  global ODM changes and remote command execution.&lt;br /&gt;&lt;br /&gt;clcomd is managed by src (startsrc, stopsrc, refresh; refresh is useful  to reread /usr/sbin/cluster/etc/rhosts file), and logs are in  /var/hacmp/clcomd/clcomd.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;RSCT (Reliable Scalable Cluster Technology) (earlier: RS/600 Cluster Technology)&lt;/b&gt;&lt;br /&gt;It is a software stack, a package of services ("cient subsystems"), which is a prerequisite for HACMP and is packaged with AIX.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-Topology Services:&lt;/b&gt; generates heartbeats to monitor nodes,  networks and network adapters, diagnoses failures. When a node joins the  cluster, topology services adds the adapter information to the machine  list.&lt;br /&gt;This "topology" or "connectivity" information is then passed on to group services.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-Group Services:&lt;/b&gt; "Client subsystems" (e.g. event management  subsystem, RMC subsystems...) forms groups, with a membership list.  Provides reliable communication and protocols required for cluster  operation. The main daemon is hagsd. Group services coordinates/monitors  state changes within the cluster (e.g. node join/leave) and then passes  these state changes to the interested subscribers, for example cluster  manager or. event management.Enhanced Concurrent mode disks use RSCT  group services to control locking.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-Resource Monitoring and Control (RMC):&lt;/b&gt; RMC notifies the Cluster  Manager about events, so it responds to this event by RSCT. Main damon  is rmcd. The process application monitoring uses RMC and therefore does  not require any custom script. Dynamic Node Priority (DNP) is calcuated  by the use of RMC&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-Event Management: &lt;/b&gt;Match information about the state of system resources, it initiates the scripts needed managing the cluster.&lt;br /&gt;&lt;br /&gt;HACMP relies on topology services for heartbeats and group services for  reliable messaging. These services are started prior to the cluster  processes. If there are problems with these services the cluster will  not start.&lt;br /&gt;-----------------------------------------&lt;br /&gt;&lt;b&gt;SNMP (Simple Network Management Protocol)&lt;/b&gt;&lt;br /&gt;It is a popular protocol for network management. It is used for  collecting information from, and configuring, network devices, such as  servers, printers, hubs, switches, and routers&lt;br /&gt;When giving cldump it says: "Obtaining information via SNMP from Node: xx11b01..."&lt;br /&gt;&lt;br /&gt;&lt;b&gt;lssrc -a | egrep 'snm|mib'&lt;i&gt; &lt;/i&gt; &lt;/b&gt;      lists the necessary daemons&lt;br /&gt;&lt;b&gt;ls -l /etc | grep snmp&lt;/b&gt;&lt;i&gt;  &lt;/i&gt;          location of conf. files&lt;br /&gt;&lt;b&gt;ls -l /var/tmp | grep snmp&lt;/b&gt;        location of log files&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;clsmuxpd (SMUX Peer daemon)&lt;/b&gt;&lt;br /&gt;Clusmuxpd provides SNMP support.  (IT is before v 5.3, as clinfo improved)&lt;br /&gt;clinfo is based on SNMP; it queries the clsmuxpd daemon for up-to-date cluster information and provides a simple display of it.&lt;br /&gt;&lt;br /&gt;-----------------------------------------&lt;br /&gt;&lt;b&gt;C-SPOC (Cluster Single Point of Control)&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;It helps managing the entire cluster from a single point. In smitty  hacmp or with commmands which are under /usr/es/sbin/cluster/cspoc.&lt;br /&gt;C-SPOC using clcomd for HACMP communication between nodes, so /etc/rhosts file no longer used.&lt;br /&gt;If there is a failure of a C-SPOC function it will be logged in the /tmp/cspoc.log, on the node performing the operation.&lt;br /&gt;&lt;br /&gt;cspoc.log             contains the used commands in this file&lt;br /&gt;&lt;br /&gt;-----------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Important files:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;odmget HACMPlogs   &lt;/b&gt;                       &lt;/i&gt; shows where are the log files&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;b&gt;&lt;i&gt;odmget HACMPcluster&lt;/i&gt; &lt;/b&gt;                       shows cluster version&lt;br /&gt;&lt;i&gt;&lt;b&gt;odmget HACMPnode&lt;/b&gt; &lt;/i&gt;                          shows info from nodes (cluster version)&lt;br /&gt;(changing the location of the log files: C-SPOC &amp;gt; Log Viewing and Management)&lt;br /&gt;&lt;i&gt;&lt;b&gt;/etc/es/objrepos &lt;/b&gt;    &lt;/i&gt;                      HACMP ODM files&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;HACMP Logs: (location differs on newer and older HACMP versions)&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/adm/log/cluster.log &lt;/b&gt;&lt;/i&gt;            main PowerHA log file (errors,events,messages ... /usr/es/adm/cluster.log)&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/adm/history/cluster.mmddyy &lt;/b&gt;&lt;/i&gt;     shows only the EVENTS, generated daily (/usr/es/sbin/cluster/history/cluster.mmddyyyy)&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/log/hacmp.out&lt;/b&gt;&lt;/i&gt;                   similar to cluster.log, but more detailed (with all the output of the scripts)&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/clcomd/clcomd.log &lt;/b&gt;&lt;/i&gt;              contains every connect request between the nodes and return status of the requests&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/log/clinfo.log&lt;/b&gt;&lt;/i&gt;                  records the activity of the clinfo daemon&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/clverify   &lt;/b&gt;&lt;/i&gt;                      shows the results of the verifications (verification errors are logged here)&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/hacmp/log/clutils.log &lt;/b&gt;&lt;/i&gt;                summary of nightly verification               &lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;/tmp/clstrmgr.debug &lt;/b&gt;&lt;/i&gt;                       debug info about the cluster (clstrmg.debug.long also exists) IBM support using these&lt;br /&gt;&lt;i&gt;&lt;b&gt;/tmp/cspoc.log &lt;/b&gt;&lt;/i&gt;                            shows more info of the smitty c-spoc command (good place to look if a command fails)&lt;br /&gt;&lt;i&gt;&lt;b&gt;/tmp/clconvert.log&lt;/b&gt;&lt;/i&gt;                         after cluster upgrade shows info about the results&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;RSCT Logs:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/ha/log  &lt;/b&gt;&lt;/i&gt;                              RSCT logs are here&lt;br /&gt;&lt;i&gt;&lt;b&gt;/var/ha/log/nim.topsvcs...  &lt;/b&gt;&lt;/i&gt;               the heartbeats are logged here (comm. is OK between the nodes)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;clRGinfo  &lt;/b&gt;&lt;/i&gt;          Shows the state of RGs (in earlier HACMP clfindres was used)&lt;br /&gt;&lt;i&gt;&lt;b&gt;clRGinfo -p&lt;/b&gt;&lt;/i&gt;         shows the node that has temporarily the highest priority (POL)&lt;br /&gt;&lt;i&gt;&lt;b&gt;clRGinfo -t &lt;/b&gt;&lt;/i&gt;        shows the delayed timer information&lt;br /&gt;&lt;i&gt;&lt;b&gt;clRGinfo -m&lt;/b&gt;&lt;/i&gt;         shows the status of the application monitors of the cluster&lt;br /&gt;                    resource groups state can be: online, offline, acquiring, releasing, error, unknown&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;cldump (or clstat -o)&lt;/b&gt;&lt;/i&gt;    detailed info about the cluster (realtime, shows cluster status) (clstat requires a running clinfo)&lt;br /&gt;&lt;i&gt;&lt;b&gt;cldisp&lt;/b&gt;&lt;/i&gt;               detailed general info about the cluster (not realtime)&lt;br /&gt;&lt;i&gt;&lt;b&gt;cltopinfo            &lt;/b&gt;&lt;/i&gt;Detailed information about the network of the cluster (this shows the data in DCD not in ACD)&lt;br /&gt;&lt;i&gt;&lt;b&gt;cltopinfo -i&lt;/b&gt;&lt;/i&gt;         good overview, same as cllsif: this also lists cluster inetrfaces, it was used prior HACMP 5.1&lt;br /&gt;&lt;i&gt;&lt;b&gt;cltopinfo -m&lt;/b&gt;&lt;/i&gt;         shows heartbeat statistics, missed heartbeats&lt;br /&gt;&lt;i&gt;&lt;b&gt;clshowres            &lt;/b&gt;&lt;/i&gt;Detailed information about the resource group(s)               &lt;br /&gt;&lt;i&gt;&lt;b&gt;cllsserv             &lt;/b&gt;&lt;/i&gt;Shows which scripts will be run in case of a takeover&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;clrgdependency -t PARENT_CHILD -sl &lt;/b&gt;&lt;/i&gt;shows parent child dependencies of resource groups&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;clshowsrv -v&lt;/b&gt;&lt;/i&gt;          shows status of the cluster daemons (very good overview!!!)       &lt;br /&gt;&lt;i&gt;&lt;b&gt;lssrc -g cluster &lt;/b&gt;&lt;/i&gt;     lists the running cluster daemons&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;lssrc -ls clstrmgrES&lt;/b&gt;&lt;/i&gt;  shows if cluster is STABLE or not, cluster version, Dynamic Node Priority (pgspace free, disk busy, cpu idle)&lt;br /&gt;                &lt;b&gt;ST_STABLE:&lt;/b&gt; cluster services running with resources online&lt;br /&gt;                &lt;b&gt;NOT_CONFIGURED&lt;/b&gt;: cluster is not configured or node is not synced&lt;br /&gt;                &lt;b&gt;ST_INIT&lt;/b&gt;: cluster is configured but not active on this node&lt;br /&gt;                &lt;b&gt;ST_JOINING&lt;/b&gt;: cluster node is joining the cluster&lt;br /&gt;                &lt;b&gt;ST_VOTING&lt;/b&gt;: cluster nodes are voting to decide event execution&lt;br /&gt;                &lt;b&gt;ST_RP_RUNNING&lt;/b&gt;: cluster is running a recovery program&lt;br /&gt;                &lt;b&gt;RP_FAILED:&lt;/b&gt; recovery program event script is failed&lt;br /&gt;                &lt;b&gt;ST_BARRIER&lt;/b&gt;: clstrmgr is in between events waiting at the barrier&lt;br /&gt;                &lt;b&gt;ST_CBARRIER&lt;/b&gt;: clstrmgr is exiting a recovery program&lt;br /&gt;                &lt;b&gt;ST_UNSTABLE&lt;/b&gt;: cluster is unstable usually due to an event error&lt;br /&gt;&lt;i&gt;&lt;b&gt;lssrc -ls topsvcs &lt;/b&gt;&lt;/i&gt;    shows the status of individual diskhb devices, heartbeat intervals, failure cycle (missed heartbeats)&lt;br /&gt;&lt;i&gt;&lt;b&gt;lssrc -ls grpsvcs&lt;/b&gt;&lt;/i&gt;     gives info about connected clients, number of groups)&lt;br /&gt;&lt;i&gt;&lt;b&gt;lssrc -ls emsvcs&lt;/b&gt;&lt;/i&gt;      shows the resource monitors known to the event management subsystem)&lt;br /&gt;&lt;i&gt;&lt;b&gt;lssrc -ls snmpd&lt;/b&gt;&lt;/i&gt;       shows info about snmpd&lt;br /&gt;&lt;br /&gt;-----------------------------------------&lt;br /&gt;&lt;i&gt;&lt;b&gt;/usr/es/sbin/cluster/utilities/get_local_nodename&lt;/b&gt;&lt;/i&gt;    shows the name of this node within the HACMP&lt;br /&gt;&lt;i&gt;&lt;b&gt;/usr/es/sbin/cluster/utilities/clexit.rc&lt;/b&gt;&lt;/i&gt;             this script halt the node if the cluster manager daemon stopped incorrectly&lt;br /&gt;&lt;br /&gt;-----------------------------&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Remove HACMP:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;1. stop cluster on both nodes&lt;br /&gt;2. remove the cluster configuration ( smitty hacmp) on both nodes&lt;br /&gt;3. remove cluster filesets (startinf with cluster.*)&lt;br /&gt;&lt;br /&gt;--------------------------------&lt;br /&gt;&lt;br /&gt;If you  are planning to do crash-test, do it with halt -q or reboot -q&lt;br /&gt;shutdown -Fr will not work, because it stops hacmp and resource groups garcefully (rc.shutdown), so no takeover will occur&lt;br /&gt;&lt;br /&gt;--------------------------------&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;clhaver - clcomd problem:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;If there are problems during start up a cluster or synch. and verif., and you see something like this:&lt;br /&gt;&lt;br /&gt; &lt;b&gt; 1800-106 An error occurred:&lt;/b&gt;&lt;br /&gt;&lt;b&gt;  connectconnect: : Connection refusedConnection refused&lt;/b&gt;&lt;br /&gt;&lt;b&gt;  clhaver[113]: cl_socket(rs2aa05)clhaver[113]: cl_socket(xx04a05): : Connection refusedConnection refused&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Probably there is a problem with clcomd.&lt;br /&gt;&lt;br /&gt;1. check if if it is running: clshowsrv -v or lssrc -a | grep clcomd&lt;br /&gt;    refresh or start it: refresh -s clcomdES or startsrc -s clcomdES&lt;br /&gt;&lt;br /&gt;2. check log file: /var/hacmp/clcomd/clcomd.log&lt;br /&gt;    you can see something like this: CONNECTION: REJECTED(Invalid address): xx10g01c: 57.57.91.100-&amp;gt;57.57.88.139&lt;br /&gt;&lt;br /&gt;    for me the solution was:&lt;br /&gt;        -update /usr/sbin/cluster/etc/rhosts file on both nodes (I added  all  ip's of both servers (except service ip + service backup ip))&lt;br /&gt;        -refresh -s clcomdES&lt;br /&gt;&lt;br /&gt;--------------------------------&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;When trying to bring up a resource group in HACMP, got the following errors in the hacmp.out log file.&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt; &lt;b&gt;   cl_disk_available[187] cl_fscsilunreset fscsi0 hdiskpower1 false&lt;br /&gt;    cl_fscsilunreset[124]: openx(/dev/hdiskpower1, O_RDWR, 0, SC_NO_RESERVE): Device busy&lt;br /&gt;    cl_fscsilunreset[400]: ioctl SCIOLSTART id=0X11000 lun=0X1000000000000 : Invalid argument&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;To resolve this, you will have to make sure that the SCSI reset disk  method is configured in HACMP. For example, when using EMC storage:&lt;br /&gt;&lt;br /&gt;Make sure emcpowerreset is present in /usr/lpp/EMC/Symmetrix/bin/emcpowerreset.&lt;br /&gt;&lt;br /&gt;Then add new custom disk method:&lt;br /&gt;&lt;b&gt;smitty hacmp -&amp;gt; Ext. Conf. -&amp;gt; Ext. Res. Conf. -&amp;gt; HACMP Ext.  Resources Conf. -&amp;gt; Conf. Custom Disk Methods -&amp;gt; Add Cust. Disk&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    * Disk Type (PdDvLn field from CuDv)                 [disk/pseudo/power]&lt;br /&gt;    * Method to identify ghost disks                     [SCSI3]&lt;br /&gt;    * Method to determine if a reserve is held           [SCSI_TUR]&lt;br /&gt;    * Method to break a reserve                          [/usr/lpp/EMC/Symmetrix/bin/emcpowerreset]&lt;br /&gt;        Break reserves in parallel                          true&lt;br /&gt;    * Method to make the disk available                  [MKDEV]&lt;br /&gt;&lt;br /&gt;--------------------------------&lt;br /&gt;&lt;br /&gt;Once I had a problem with commands 'cldump' and 'clstat -o' (version 5.4.1 SP3)&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;cldump: Waiting for the Cluster SMUX peer (clstrmgrES)&lt;br /&gt;to stabilize...&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Can not get cluster information.&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Solution was:&lt;/b&gt;&lt;br /&gt;-checked all the below mentioned daemons (clinfo, clcomd,snmpd, hostmibd...) and started what was missing&lt;br /&gt;-and after that I did: &lt;b&gt;refresh -s clstrmgrES&lt;/b&gt; (cldump and clstat was OK only after this refresh has been done)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;things what can be checked regarding snmp:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-clinfoES and clcomdES:&lt;/b&gt;&lt;br /&gt;clshowsrv -v&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-snmpd and mibd daemons (if not active startsrc can start it)&lt;/b&gt;&lt;br /&gt;root@xx20e01b: / # lssrc -a | egrep 'snm|mib'&lt;br /&gt; snmpmibd         tcpip            552998       active&lt;br /&gt; aixmibd          tcpip            524418       active&lt;br /&gt; hostmibd         tcpip            430138       active&lt;br /&gt; snmpd            tcpip            1212632      active&lt;br /&gt;&lt;br /&gt;&lt;b&gt;-snmpd conf and log files&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;root@xx20e01b: / # ls -l /etc | grep snmp&lt;br /&gt;-rw-r-----    1 root     system         2302 Aug 16 2005  clsnmp.conf&lt;br /&gt;-rw-r--r--    1 root     system           37 Jun 16 16:18 snmpd.boots&lt;br /&gt;-rw-r-----    1 root     system        10135 Aug 11 2009  snmpd.conf&lt;br /&gt;-rw-r-----    1 root     system         2693 Aug 11 2009  snmpd.peers&lt;br /&gt;-rw-r-----    1 root     system        10074 Jun 16 16:22 snmpdv3.conf&lt;br /&gt;drwxrwxr-x    2 root     system          256 Aug 11 2009  snmpinterfaces&lt;br /&gt;-rw-r-----    1 root     system         1816 Aug 11 2009  snmpmibd.conf&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;root@xx20e01b: / # ls -l /var/tmp | grep snmp&lt;br /&gt;-rw-r--r--    1 root     system        83130 Jun 16 20:32 snmpdv3.log&lt;br /&gt;-rw-r--r--    1 root     system       100006 Oct 01 2008  snmpdv3.log.1&lt;br /&gt;-rw-r--r--    1 root     system        16417 Jun 16 16:19 snmpmibd.log&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2814355820021881177?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2814355820021881177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2814355820021881177' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2814355820021881177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2814355820021881177'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/07/hacmp-tutorial.html' title='hacmp tutorial'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2352372076112905951</id><published>2011-06-29T10:08:00.001+02:00</published><updated>2011-06-29T10:20:47.156+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='profile'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>AIX .profile</title><content type='html'>~/.profile&lt;br /&gt;PS1=[${USER}@${HOSTNAME}:'$PWD]# '&lt;br /&gt;ENV=/.kshrc&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/etc/profile&lt;br /&gt;HOSTNAME=`hostname`&lt;br /&gt;PWD=`pwd`&lt;br /&gt;PS1='[${LOGNAME}@${HOSTNAME}:${PWD}] '&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2352372076112905951?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2352372076112905951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2352372076112905951' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2352372076112905951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2352372076112905951'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/06/aix-profile.html' title='AIX .profile'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1963422749372042814</id><published>2011-06-29T08:55:00.002+02:00</published><updated>2011-06-29T08:58:56.686+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='user migration'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>Migrating Users from One AIX System to Another AIX System</title><content type='html'>&lt;a href="https://www-304.ibm.com/support/docview.wss?uid=isg3T1000231"&gt;Technote &lt;/a&gt;(FAQ)&lt;br /&gt;&lt;br /&gt;Question&lt;br /&gt;Migrating Users from One AIX System to Another AIX System&lt;br /&gt;&lt;br /&gt;Answer&lt;br /&gt;This document discusses migrating users from one AIX system to another. This does not include transferring the user's personal data or home directories.&lt;br /&gt;The information in this document applies to AIX 5.2 and above.&lt;br /&gt;Since the files involved in the following procedure are flat ASCII files and their format has not changed from V4 to V5, the users can be migrated between systems running the same or different versions of AIX (for example, from V4 to V5).&lt;br /&gt;&lt;br /&gt;Files that can be copied over&lt;br /&gt;/etc/group&lt;br /&gt;/etc/passwd&lt;br /&gt;/etc/security/group&lt;br /&gt;/etc/security/limits&lt;br /&gt;/etc/security/passwd&lt;br /&gt;/etc/security/.ids&lt;br /&gt;/etc/security/environ&lt;br /&gt;/etc/security/.profile&lt;br /&gt;NOTE: Edit the passwd file so the root entry is as follows:&lt;br /&gt;   root:!:0:0::/:/usr/bin/ksh&lt;br /&gt;When you copy the /etc/passwd and /etc/group files, make sure they contain at least a minimum set of essential user and group definitions.&lt;br /&gt;Listed specifically as users are the following:&lt;br /&gt;    •    root&lt;br /&gt;    •    daemon&lt;br /&gt;    •    bin&lt;br /&gt;    •    sys&lt;br /&gt;    •    adm&lt;br /&gt;    •    uucp&lt;br /&gt;    •    guest&lt;br /&gt;    •    nobody&lt;br /&gt;    •    lpd&lt;br /&gt;Listed specifically as groups are the following:&lt;br /&gt;    •    system&lt;br /&gt;    •    staff&lt;br /&gt;    •    bin&lt;br /&gt;    •    sys&lt;br /&gt;    •    adm&lt;br /&gt;    •    uucp&lt;br /&gt;    •    mail&lt;br /&gt;    •    security&lt;br /&gt;    •    cron&lt;br /&gt;    •    printq&lt;br /&gt;    •    audit&lt;br /&gt;    •    ecs&lt;br /&gt;    •    nobody&lt;br /&gt;    •    usr&lt;br /&gt;If the bos.compat.links fileset is installed, you can copy the /etc/security/mkuser.defaults file over. If it is not installed, the file belongs in the /usr/lib/security directory.&lt;br /&gt;If you copy over mkuser.defaults, changes must be made to the stanzas. Replace group with pgrp, and program with shell. A proper stanza should look like the following:&lt;br /&gt;    user:&lt;br /&gt;            pgrp = staff&lt;br /&gt;            groups = staff&lt;br /&gt;            shell = /usr/bin/ksh&lt;br /&gt;            home = /home/$USER&lt;br /&gt;The following files may also be copied over, as long as the AIX version in the new machine is the same:&lt;br /&gt;   /etc/security/login.cfg&lt;br /&gt;   /etc/security/user&lt;br /&gt;NOTE: If you decide to copy these two files, open the /etc/security/user file and make sure that variables such as tty, registry, auth1 and so forth are set properly with the new machine. Otherwise, do not copy these two files, and just add all the user stanzas to the new created files in the new machine.&lt;br /&gt;Once the files are moved over, execute the following:&lt;br /&gt;    usrck -t ALL&lt;br /&gt;    pwdck -t ALL&lt;br /&gt;    grpck -t ALL&lt;br /&gt;This will clear up any discrepancies (such as uucp not having an entry in /etc/security/passwd). Ideally this should be run on the source system before copying over the files as well as after porting these files to the new system.&lt;br /&gt;NOTE: It is possible to find user ID conflicts when migrating users from older versions of AIX to newer versions. AIX has added new user IDs in different release cycles. These are reserved IDs and should not be deleted. If your old user IDs conflict with the newer AIX system user IDs, it is advised that you assign new user IDs to these older IDs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1963422749372042814?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1963422749372042814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1963422749372042814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1963422749372042814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1963422749372042814'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/06/migrating-users-from-one-aix-system-to.html' title='Migrating Users from One AIX System to Another AIX System'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-3415131425977808119</id><published>2011-06-22T13:16:00.003+02:00</published><updated>2011-06-22T13:21:57.206+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='password'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='lpa'/><title type='text'>Support for passwords with more than 8 characters and Loadable Password Algorithm</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Support for passwords with more than 8 characters and Loadable Password Algorithm:&lt;/span&gt;&lt;br /&gt;Recent advancements in computer hardware makes tradition UNIX password encryption vulnerable to&lt;br /&gt;brute-force password guessing attacks. A cryptographically weak algorithm can lead to recovery of even&lt;br /&gt;strong passwords. AIX 5L introduced Loadable Password Algorithm (LPA) that supports secure password&lt;br /&gt;hash mechanisms. It also removes the eight-character password limitation.&lt;br /&gt;Traditional password crypt function:&lt;br /&gt;The standard AIX authentication mechanism uses a one-way hash function called crypt to authenticate&lt;br /&gt;users. The crypt function is a modified DES algorithm. It performs a one-way encryption of a fixed data&lt;br /&gt;array with the supplied password and a Salt.&lt;br /&gt;The crypt function uses only the first eight characters from the password string; the user's password is&lt;br /&gt;truncated to eight characters. If the password contains less than eight characters, it is padded with zero&lt;br /&gt;bits on the right. The 56-bit DES key is derived by using the 7 bits from each character.&lt;br /&gt;Salt is a two-character string (the 12 bits of the Salt is used to perturb the DES algorithm) chosen from&lt;br /&gt;the character set "A-Z", "a-z","0-9","."(period) and "/". Salt is used to vary the hashing algorithm, so that&lt;br /&gt;the same clear text password can produce 4,096 possible password encryptions. A modification to the&lt;br /&gt;DES algorithm, swapping bits i and i+24 in the DES E-Box output when bit i is set in the Salt, achieves&lt;br /&gt;this while also making DES encryption hardware useless for password guessing.&lt;br /&gt;The 64-bit all-bits-zero block is encrypted 25 times with the DES key. The final output is the 12-bit salt&lt;br /&gt;concatenated with the encrypted 64-bit value. The resulting 76-bit value is recoded into 13 printable&lt;br /&gt;ASCII characters in the form of base64.&lt;br /&gt;Password hashing algorithms:&lt;br /&gt;Hashing algorithms such as MD5 are harder to break than the crypt function. This provides a strong&lt;br /&gt;mechanism against brute-force password guessing attacks. Since the whole password is used for&lt;br /&gt;generating the hash, there is no password length limitation when password hashing algorithms are used&lt;br /&gt;to encrypt the password.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Loadable Password Algorithm&lt;/span&gt;:&lt;br /&gt;AIX 5.3 TL7 and AIX 6.1 implemented a Loadable Password Algorithm (LPA) mechanism that can easily deploy new&lt;br /&gt;password encryption algorithms.&lt;br /&gt;64 AIX Version 7.1: Security&lt;br /&gt;Each supported password encryption algorithm is implemented as a LPA load module that is loaded at&lt;br /&gt;runtime when the algorithm is needed. The supported LPAs and their attributes are defined in the&lt;br /&gt;/etc/security/pwdalg.cfg system configuration file.&lt;br /&gt;An administrator can set up a system-wide password encryption mechanism that uses a specific LPA to&lt;br /&gt;encrypt the passwords. After the system-wide password mechanism is changed, passwords that are&lt;br /&gt;encrypted by the previous selected password encryption mechanisms (such as the crypt function) are still&lt;br /&gt;supported.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Support for passwords longer than eight characters:&lt;/span&gt;&lt;br /&gt;All of the LPAs implemented for AIX 6.1 and later support passwords longer than eight characters. The&lt;br /&gt;password length limitations vary for different LPAs. The supported maximum password length is 255&lt;br /&gt;characters.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LPA configuration file:&lt;/span&gt;&lt;br /&gt;The LPA configuration file is /etc/security/pwdalg.cfg. It is a stanza file that defines the attributes of&lt;br /&gt;the supported LPAs.&lt;br /&gt;The following LPA attributes are defined in the config file:&lt;br /&gt;v The path to the LPA module&lt;br /&gt;v The optional flags that is passed to the LPA module at runtime&lt;br /&gt;The LPA attributes defined in the configuration file can be accessed with the getconfattr and setconfattr&lt;br /&gt;interfaces.&lt;br /&gt;The following example stanza in /etc/security/pwdalg.cfg defines a LPA named ssha256:&lt;br /&gt;ssha256:&lt;br /&gt;lpa_module = /usr/lib/security/ssha&lt;br /&gt;lpa_options = algorithm=sha256&lt;br /&gt;System password algorithm:&lt;br /&gt;A system administrator can set a system-wide password algorithm by selecting an LPA as the password&lt;br /&gt;hashing algorithm. There can only be one active system password algorithm at a time. The system&lt;br /&gt;password algorithm is defined by the pwd_algorithm system attribute in the usw stanza in the&lt;br /&gt;/etc/security/login.cfg file.&lt;br /&gt;The valid values for the pwd_algorithm attribute in the /etc/security/login.cfg file are LPA stanza&lt;br /&gt;names that are defined in the /etc/security/pwdalg.cfg file. Another valid value for the pwd_algorithm&lt;br /&gt;attribute is crypt, which refers to traditional crypt encryption. If the pwd_algorithm attribute is omitted&lt;br /&gt;from the config file, crypt is used as the default value.&lt;br /&gt;The following example of the /etc/security/login.cfg file uses ssha256 LPA as the system-wide&lt;br /&gt;password encryption algorithm.&lt;br /&gt;... ...&lt;br /&gt;usw:&lt;br /&gt;shells = /bin/sh,/bin/bsh,/bin/csh,/bin/ksh,/bin/tsh,/bin/ksh93&lt;br /&gt;maxlogins = 32767&lt;br /&gt;logintimeout = 60&lt;br /&gt;maxroles = 8&lt;br /&gt;auth_type = STD_AUTH&lt;br /&gt;pwd_algorithm = ssha256&lt;br /&gt;... ...&lt;br /&gt;Security 65&lt;br /&gt;The system password algorithm takes effect only for newly created passwords and changed passwords.&lt;br /&gt;After the migration, all subsequent new passwords or password changes use the system password&lt;br /&gt;algorithm. The passwords that existed before the system password algorithm is chosen, either generated&lt;br /&gt;by the standard crypt function or by other supported LPA modules, still work on the system. Therefore,&lt;br /&gt;mixed passwords that were generated by different LPAs can coexist on the system.&lt;br /&gt;Setting up the system password algorithm:&lt;br /&gt;A system administrator can use the chsec command to set up the system password algorithm or use an&lt;br /&gt;editor such as vi to manually modify the pwd_algorithm attribute in the /etc/security/login.cfg file.&lt;br /&gt;It is recommended that you use the chsec command to set the system password algorithm, as the chsec&lt;br /&gt;command automatically checks the definition of the specified LPA.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Using the chsec command&lt;/span&gt;&lt;br /&gt;Run the following command to set the smd5 LPA as the system-wide password encryption module:&lt;br /&gt;chsec -f /etc/security/login.cfg -s usw -a pwd_algorithm=smd5&lt;br /&gt;When you use the chsec command to modify the pwd_algorithm attribute, the chsec command checks&lt;br /&gt;the /etc/security/pwdalg.cfg file to verify the specified LPA. The chsec command fails if this check fails.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Using an editor&lt;/span&gt;&lt;br /&gt;If you use an editor to manually change the pwd_algorithm attribute value in the /etc/security/&lt;br /&gt;login.cfg file, ensure that the specified value is the name of a stanza that is defined in the&lt;br /&gt;/etc/security/pwdalg.cfg file.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Extending password restrictions:&lt;/span&gt;&lt;br /&gt;The rules used by the password program to accept or reject passwords (the password composition&lt;br /&gt;restrictions) can be extended by system administrators to provide site-specific restrictions.&lt;br /&gt;Restrictions are extended by adding methods, which are called during a password change. The&lt;br /&gt;pwdchecks attribute in the /etc/security/user file specifies the methods called.&lt;br /&gt;The AIX Version 6.1 Technical Reference contains a description of the pwdrestrict_method, the subroutine&lt;br /&gt;interface to which specified password restriction methods must conform. To correctly extend the&lt;br /&gt;password composition restrictions, the system administrator must program this interface when writing a&lt;br /&gt;password-restriction method. Use caution in extending the password-composition restrictions. These&lt;br /&gt;extensions directly affect the login command, the passwd command, the su command, and other&lt;br /&gt;programs. The security of the system could easily be subverted by malicious or defective code.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="https://www-304.ibm.com/support/docview.wss?uid=isg3T1010741&amp;amp;wv=1"&gt;Link to IBM technote&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-3415131425977808119?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/3415131425977808119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=3415131425977808119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3415131425977808119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3415131425977808119'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/06/support-for-passwords-with-more-than-8.html' title='Support for passwords with more than 8 characters and Loadable Password Algorithm'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6764790369608821377</id><published>2011-04-13T15:55:00.000+02:00</published><updated>2011-04-13T15:56:29.043+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fc'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>AIX "Fast I/O Failure for Fibre Channel Devices" and "Dynamic Tracking of Fibre Channel Devices".</title><content type='html'>&lt;pre&gt;  * Introduction&lt;br /&gt; * Fast I/O Failure for Fibre Channel Devices.&lt;br /&gt; * Dynamic Tracking of Fibre Channel Devices&lt;br /&gt; * Fast Fail and Dynamic Tracking Interaction&lt;br /&gt; * Known Hardware Issues&lt;br /&gt;&lt;br /&gt;============&lt;br /&gt;Introduction&lt;br /&gt;============&lt;br /&gt;&lt;br /&gt;The purpose of this README is to introduce two new features in the Fibre&lt;br /&gt;Channel Device Driver stack, "Fast I/O Failure for Fibre Channel Devices"&lt;br /&gt;and "Dynamic Tracking of Fibre Channel Devices".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;==========================================&lt;br /&gt;Fast I/O Failure for Fibre Channel Devices&lt;br /&gt;==========================================&lt;br /&gt;&lt;br /&gt;This release of AIX supports Fast I/O Failure for Fibre Channel devices&lt;br /&gt;after link events in a switched environment.  If the FC adapter driver&lt;br /&gt;detects a link event such as a lost link between a storage device and a&lt;br /&gt;switch, the FC adapter driver will wait a short period of time, on the order&lt;br /&gt;of 15 seconds, to allow the fabric to stabilize.  At that point, if the FC&lt;br /&gt;adapter driver detects that the device is not on the fabric, it will begin&lt;br /&gt;failing all I/Os at the adapter driver.   Any new I/O or&lt;br /&gt;future retries of the failed I/Os will be failed immediately by the adapter&lt;br /&gt;until the adapter driver detects that the device has rejoined the fabric.&lt;br /&gt;&lt;br /&gt;Fast Failure of I/O is controlled by a new fscsi device attribute,&lt;br /&gt;'fc_err_recov'.  The default setting for this attribute is 'delayed_fail',&lt;br /&gt;which is the I/O failure behavior that has existed in previous versions&lt;br /&gt;of AIX.  Setting this attribute to 'fast_fail', as shown in the example&lt;br /&gt;&lt;br /&gt;chdev -l fscsi0 -a fc_err_recov=fast_fail&lt;br /&gt;&lt;br /&gt;(assuming the fscsi device instance is fscsi0), enables fast I/O failure.&lt;br /&gt;Fast fail logic is invoked when the adapter driver receives an indication&lt;br /&gt;from the switch that there has been a link event involving a remote storage&lt;br /&gt;device port via a Registered State Change Notification (RSCN) from the switch.&lt;br /&gt;&lt;br /&gt;Fast I/O failure may be desirable in situations where multipathing software&lt;br /&gt;is being used.  Setting 'fc_err_recov' to 'fast_fail' may decrease the I/O&lt;br /&gt;fail times due to link loss between the storage device and switch and allow&lt;br /&gt;faster failover to alternate paths.&lt;br /&gt;&lt;br /&gt;In single-path configurations, especially configurations with a single-path&lt;br /&gt;to a paging device, the default 'delayed_fail' setting is the&lt;br /&gt;recommended setting.&lt;br /&gt;&lt;br /&gt;The requirements for Fast I/O Failure support are the following:&lt;br /&gt;&lt;br /&gt;- Fast Fail is only supported in a switched environment.  It is not supported&lt;br /&gt; in arbitrated loop environments, including public loop.&lt;br /&gt;&lt;br /&gt;- FC 6227 adapter firmware - level 3.22A1 or greater.&lt;br /&gt;&lt;br /&gt;- FC 6228 adapter firmware - level 3.82A1 or greater.&lt;br /&gt;&lt;br /&gt;- FC 6239 adapter firmware - all firmware levels&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Failure to meet these requirements may cause the fscsi device to log an&lt;br /&gt;error log of type INFO indicating that one of these requirements was&lt;br /&gt;not met and that fast fail has NOT been enabled.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;=========================================&lt;br /&gt;Dynamic Tracking of Fibre Channel Devices&lt;br /&gt;=========================================&lt;br /&gt;&lt;br /&gt;This release provides support for Dynamic Tracking of Fibre Channel Devices.&lt;br /&gt;Previous releases of AIX required a user to unconfigure FC storage device and&lt;br /&gt;adapter device instances before making changes on the SAN that might result&lt;br /&gt;in an N_Port ID (SCSI ID) change of any remote storage ports.&lt;br /&gt;&lt;br /&gt;If Dynamic Tracking of FC Devices is enabled, the FC adapter driver will&lt;br /&gt;detect when the Fibre Channel N_Port ID of a device changes and then re-route&lt;br /&gt;traffic destined for that device to the new address while the devices are&lt;br /&gt;still online.  Examples of events that can cause an N_Port ID to change are&lt;br /&gt;moving a cable between a switch and storage device from one switch port to&lt;br /&gt;another, connecting two separate switches via an Inter-Switch Link (ISL),&lt;br /&gt;and possibly rebooting a switch.&lt;br /&gt;&lt;br /&gt;Dynamic Tracking of FC devices is controlled by a new fscsi device attribute,&lt;br /&gt;'dyntrk'.  The default setting for this attribute is 'no'.  Setting this&lt;br /&gt;attribute to 'yes', as shown in the example&lt;br /&gt;&lt;br /&gt;chdev -l fscsi0 -a dyntrk=yes&lt;br /&gt;&lt;br /&gt;(assuming fscsi device instance is fscsi0), enables dynamic tracking.&lt;br /&gt;Dynamic Tracking logic is invoked when the adapter driver receives an&lt;br /&gt;indication from the switch that there has been a link event involving a&lt;br /&gt;remote storage device port.&lt;br /&gt;&lt;br /&gt;The requirements for Dynamic Tracking support are the same as those for&lt;br /&gt;"Fast I/O Failure for Fibre Channel Devices" and also include the following&lt;br /&gt;requirements:&lt;br /&gt;&lt;br /&gt;- Dynamic Tracking requires that device World Wide Name (Port Name) and&lt;br /&gt; Node Names remain constant, and that World Wide Name be unique.&lt;br /&gt; Changing the World Wide Name or Node Name of an available or on-line device&lt;br /&gt; could result in I/O failures.&lt;br /&gt;&lt;br /&gt; In addition, each FC storage device instance must have world_wide_name&lt;br /&gt; and node_name attributes.  Updated filesets that contain the 'sn_location'&lt;br /&gt; attribute mentioned in the next bullet should also be updated to contain&lt;br /&gt; both of these attributes.&lt;br /&gt;&lt;br /&gt;- The storage device must provide a reliable method to extract a unique serial&lt;br /&gt; number for each LUN. The AIX FC device drivers will not autodetect serial&lt;br /&gt; number location, so the method for serial number extraction must be&lt;br /&gt; explicitly provided by any storage vendor in order to support&lt;br /&gt; dynamic tracking for their devices. This information is conveyed to the&lt;br /&gt; drivers via the 'sn_location' ODM attribute for each storage&lt;br /&gt; device.  If the disk or tape driver detects that the 'sn_location'&lt;br /&gt; ODM attribute is missing, an error log of type INFO will be generated and&lt;br /&gt; dynamic tracking will NOT be enabled.&lt;br /&gt;&lt;br /&gt; Note: The 'sn_location' attribute may be non-displayable, so&lt;br /&gt; running the 'lsattr' command on an hdisk, for example, may not show&lt;br /&gt; the attribute, but it may, indeed, be present in ODM.&lt;br /&gt;&lt;br /&gt;- The FC device drivers will be able to track devices on a SAN fabric, where&lt;br /&gt; a SAN fabric is defined as a fabric as seen from a single host bus adapter,&lt;br /&gt; if the N_Port IDs on the fabric stabilize within about 15 seconds.&lt;br /&gt; If cables are not reseated or N_Port IDs continue to change after the&lt;br /&gt; initial 15 seconds, I/O failures could result.&lt;br /&gt;&lt;br /&gt;- Devices will not be tracked across host bus adapters. Devices will only&lt;br /&gt; track if they remain visible from the same HBA that they were originally&lt;br /&gt; connected to.&lt;br /&gt;&lt;br /&gt; For example, if device A were moved from one location to another on fabric A&lt;br /&gt; attached to host bus adapter A (i.e., its N_Port on fabric A changes), the&lt;br /&gt; device would seamlessly be tracked without any user intervention and I/O&lt;br /&gt; to this device can continue.&lt;br /&gt;&lt;br /&gt; However, if a device A is visible from HBA A but not from HBA B,&lt;br /&gt; and device A is moved from the fabric attached to HBA A to the fabric&lt;br /&gt; attached to HBA B, device A will not be accessible on fabric A nor on&lt;br /&gt; fabric B.  User intervention would be required to make it available on&lt;br /&gt; fabric B by invoking cfgmgr. The AIX device instance on fabric A would no&lt;br /&gt; longer be usable, and a new device instance on fabric B would be created.&lt;br /&gt; This device would have to manually be added to volume groups, multipath&lt;br /&gt; device instances, etc.   In essence, this is the same as removing a device&lt;br /&gt; from fabric A and adding a new device to fabric B.&lt;br /&gt;&lt;br /&gt;- No dynamic tracking will performed for FC dump devices while an AIX&lt;br /&gt; system dump is in progress.  In addition, dynamic tracking is not supported&lt;br /&gt; during boot or during cfgmgr invocations.  SAN changes should not be made&lt;br /&gt; while any of these operations are in progress.&lt;br /&gt;&lt;br /&gt;- Once devices are tracked, ODM will potentially contain stale information as&lt;br /&gt; SCSI IDs in ODM will no longer reflect actual SCSI IDs on the SAN. ODM will&lt;br /&gt; remain in this state until cfgmgr is run manually or the system is&lt;br /&gt; rebooted, provided all drivers, including any third party FC SCSI target&lt;br /&gt; drivers, are dynamic-tracking capable. If cfgmgr is run manually, cfgmgr&lt;br /&gt; must be invoked on all affected fscsi devices, which can easily be&lt;br /&gt; accomplished by running cfgmgr without any options, or by invoking&lt;br /&gt; cfgmgr on each fscsi device individually.&lt;br /&gt;&lt;br /&gt; Note: Running cfgmgr at run time to recalibrate the SCSI IDs may not&lt;br /&gt; update the SCSI ID in ODM for a storage device if the storage device is&lt;br /&gt; currently opened, such as when volume groups are varied on.&lt;br /&gt; cfgmgr would need to be run on devices that are not opened or the system&lt;br /&gt; should be rebooted to recalibrate the SCSI IDs.  Note that stale SCSI IDs&lt;br /&gt; in ODM have no adverse affect on the FC drivers and recalibration of&lt;br /&gt; SCSI IDs in ODM is not necessary for the FC drivers to function properly.&lt;br /&gt; Any applications that communicate with the adapter driver directly via&lt;br /&gt; ioctl calls and use the SCSI ID values from ODM, however, need to be&lt;br /&gt; updated as indicated in the next bullet to avoid using potentially&lt;br /&gt; stale SCSI IDs.&lt;br /&gt;&lt;br /&gt;- All applications and kernel extensions that communicate with the FC Adapter&lt;br /&gt; Driver, either via ioctl calls or directly to the FC driver's entry points,&lt;br /&gt; must support the version 1 ioctl and scsi_buf APIs of the FC Adapter&lt;br /&gt; Driver in order to work properly with FC dynamic tracking.  Non-compliant&lt;br /&gt; applications or kernel extensions may not function properly and/or fail&lt;br /&gt; after a dynamic tracking event.  If the FC adapter driver detects an&lt;br /&gt; application or kernel extension that is not adhering to the new version 1&lt;br /&gt; ioctl and/or scsi_buf API, an error log of type INFO will be generated and&lt;br /&gt; dynamic tracking may not be enabled for the device that this application/&lt;br /&gt; kernel extension may be trying to communicate with.&lt;br /&gt;&lt;br /&gt; ISVs developing kernel extensions and/or applications that communicate with&lt;br /&gt; the AIX Fibre Channel Driver stack should refer to the "Fibre Channel&lt;br /&gt; Protocol for SCSI and iSCSI Subsystem" article in "AIX 5L Version 5.2 Kernel&lt;br /&gt; Extensions and Device Support Programming Concepts" (pay special attention&lt;br /&gt; to the "Required FCP and iSCSI Adapter Device Driver ioctl Commands" and&lt;br /&gt; "Understanding the scsi_buf Structure sections") for changes necessary&lt;br /&gt; to support Dynamic Tracking.&lt;br /&gt;&lt;br /&gt;- Even with dynamic tracking enabled users are strongly encouraged to make&lt;br /&gt; SAN changes, such as cable moves/swaps and establishing ISL links, during&lt;br /&gt; maintenance windows. Making SAN changes during full production runs is&lt;br /&gt; discouraged.  This is due to the fact that there is a short interval of&lt;br /&gt; time to perform any SAN changes.  Cables that are not reseated correctly,&lt;br /&gt; for example, could result in I/O failures. Performing these operations&lt;br /&gt; during a time of little/no traffic minimizes impact of I/O failures due to&lt;br /&gt; misplugging of cables, taking too long to recable, etc.&lt;br /&gt;&lt;br /&gt;At the time of this release, the base AIX FC SCSI Disk and FC SCSI Tape&lt;br /&gt;device drivers support dynamic tracking.&lt;br /&gt;&lt;br /&gt;For status on dynamic tracking support for the FAStT product line,&lt;br /&gt;refer to the following URLs:&lt;br /&gt;&lt;br /&gt;IBM FAStT Storage Manager v7.10:&lt;br /&gt;&lt;br /&gt;   http://www-3.ibm.com/pc/support/site.wss/MIGR-40711.html&lt;br /&gt;&lt;br /&gt;IBM FAStT Storage Manager v8.21:&lt;br /&gt;&lt;br /&gt;   http://www-3.ibm.com/pc/support/site.wss/MIGR-43839.html&lt;br /&gt;&lt;br /&gt;IBM FAStT Storage Manager v8.3:&lt;br /&gt;&lt;br /&gt;   http://www-3.ibm.com/pc/support/site.wss/MIGR-50177.html&lt;br /&gt;&lt;br /&gt;After accepting the license agreement, proceed to the link for&lt;br /&gt;Storage Manager for AIX.  Look for the current version of this&lt;br /&gt;software and follow the link to the associated README.  Product&lt;br /&gt;support and enhancement announcents will be made here.  These&lt;br /&gt;announcements should contain information on what AIX APARs are&lt;br /&gt;required to support dynamic tracking on FAStT.&lt;br /&gt;&lt;br /&gt;In addition, the IBM ESS, EMC Symmetrix and HDS storage devices support&lt;br /&gt;dynamic tracking provided that the vendor provides the ODM filesets with&lt;br /&gt;the necessary 'sn_location' and 'node_name' attributes.  Contact the&lt;br /&gt;storage vendor if you are not sure if your current level of ODM fileset&lt;br /&gt;supports dynamic tracking.&lt;br /&gt;&lt;br /&gt;If vendor-specific ODM entries are not being used for the storage device,&lt;br /&gt;but the ESS, Symmetrix or HDS storage subsystem is configured with the&lt;br /&gt;displayable message of "MPIO Other FC SCSI Disk", then dynamic tracking&lt;br /&gt;is supported for these devices in this configuration.&lt;br /&gt;&lt;br /&gt;The STK tape device using the standard AIX device driver also supports&lt;br /&gt;dynamic tracking provided the STK fileset contains the necessary&lt;br /&gt;'sn_location' and 'node_name' attributes.&lt;br /&gt;&lt;br /&gt;Note: It is strongly recommended that SAN changes involving tape devices&lt;br /&gt;be made with no active I/O.  Due to the serial nature of tape devices,&lt;br /&gt;a single I/O failure can cause an application, such as a tape backup,&lt;br /&gt;to fail.&lt;br /&gt;&lt;br /&gt;Devices that configure with the displayable messages of "Other FC SCSI Disk"&lt;br /&gt;or "Other FC SCSI Tape" will not support dynamic tracking.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;==========================================&lt;br /&gt;Fast Fail and Dynamic Tracking Interaction&lt;br /&gt;==========================================&lt;br /&gt;&lt;br /&gt;Although Fast Fail and Dynamic Tracking of FC Devices are technically separate&lt;br /&gt;features, the enabling of one may change the interpretation of the other in&lt;br /&gt;certain situations.  The following table shows the behavior exhibited&lt;br /&gt;by the FC drivers with the various permutations of these settings.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;dyntrk  fc_err_recov    FC Driver Behavior&lt;br /&gt;======  ============    ==================&lt;br /&gt;no      delayed_fail    This is the default setting.  This is legacy behavior&lt;br /&gt;                       existing in previous versions of AIX.  The FC drivers&lt;br /&gt;                       will not recover if the scsi_id of a device changes,&lt;br /&gt;                       and I/Os will take longer to fail when a link loss&lt;br /&gt;                       occurs between a remote storage port and switch.&lt;br /&gt;                       This may be desirable in single-path situations&lt;br /&gt;                       if dynamic tracking support is not a requirement.&lt;br /&gt;&lt;br /&gt;no      fast_fail       If the driver receives a Registered State Change&lt;br /&gt;                       Notification (RSCN) from the switch, this could&lt;br /&gt;                       indicate a link loss between a remote storage port&lt;br /&gt;                       and switch.  After an initial 15 second delay, the&lt;br /&gt;                       FC drivers will query to see if the device is on&lt;br /&gt;                       the fabric.  If not, I/Os will be flushed back by&lt;br /&gt;                       the adapter.  Future retries or new I/Os will fail&lt;br /&gt;                       immediately if the device is still not on the fabric.&lt;br /&gt;&lt;br /&gt;                       If the FC drivers detects the device is on the fabric&lt;br /&gt;                       but the scsi_id has changed, the FC device drivers&lt;br /&gt;                       will not recover, i.e., I/Os will be failed with&lt;br /&gt;                       PERM errors.&lt;br /&gt;&lt;br /&gt;yes     delayed_fail    If the driver receives a Registered State Change&lt;br /&gt;                       Notification (RSCN) from the switch, this could&lt;br /&gt;                       indicate a link loss between a remote storage port&lt;br /&gt;                       and switch.  After an initial 15 second delay, the&lt;br /&gt;                       FC drivers will query to see if the device is on&lt;br /&gt;                       the fabric.  If not, I/Os will be flushed back by&lt;br /&gt;                       the adapter.  Future retries or new I/Os will fail&lt;br /&gt;                       immediately if the device is still not on the fabric,&lt;br /&gt;                       although the storage driver (disk, tape, FAStT)&lt;br /&gt;                       drivers may inject a small delay (2-5 seconds) between&lt;br /&gt;                       I/O retries.&lt;br /&gt;&lt;br /&gt;                       If the FC drivers detects the device is on the fabric&lt;br /&gt;                       but the scsi_id has changed, the FC device drivers&lt;br /&gt;                       will reroute traffic to the new scsi_id.&lt;br /&gt;&lt;br /&gt;yes     fast_fail       If the driver receives a Registered State Change&lt;br /&gt;                       Notification (RSCN) from the switch, this could&lt;br /&gt;                       indicate a link loss between a remote storage port&lt;br /&gt;                       and switch.  After an initial 15 second delay, the&lt;br /&gt;                       FC drivers will query to see if the device is on&lt;br /&gt;                       the fabric.  If not, I/Os will be flushed back by&lt;br /&gt;                       the adapter.  Future retries or new I/Os will fail&lt;br /&gt;                       immediately if the device is still not on the fabric.&lt;br /&gt;                       The storage driver (disk, tape, FAStT) will likely&lt;br /&gt;                       not delay between retries.&lt;br /&gt;&lt;br /&gt;                       If the FC drivers detects the device is on the fabric&lt;br /&gt;                       but the scsi_id has changed, the FC device drivers&lt;br /&gt;                       will reroute traffic to the new scsi_id.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note that with dynamic tracking disabled, there is a marked difference&lt;br /&gt;between the 'delayed_fail' and 'fast_fail' settings of the 'fc_err_recov'&lt;br /&gt;attribute.  However, with dynamic tracking enabled, the setting of the&lt;br /&gt;'fc_err_recov' attribute is less significant.  This is because there&lt;br /&gt;is some overlap in the dynamic tracking and fast fail error recovery&lt;br /&gt;policies.  As such, enabling dynamic tracking inherently enables some&lt;br /&gt;of the fast fail logic.&lt;br /&gt;&lt;br /&gt;The general error recovery procedure when a device is no longer reachable&lt;br /&gt;on the fabric is the same for both 'fc_err_recov' settings with dynamic&lt;br /&gt;tracking enabled, with the minor difference that the storage drivers may&lt;br /&gt;choose to inject delays between I/O retries if 'fc_err_recov' is&lt;br /&gt;set to 'delayed_fail'.  This will increase the I/O failure time by some&lt;br /&gt;additional amount depending on the delay value and number of retries before&lt;br /&gt;permanently failing the I/O.  With high I/O traffic, however, the difference&lt;br /&gt;between 'delayed_fail' and 'fast_fail' may be more noticeable.&lt;br /&gt;&lt;br /&gt;SAN administrators may want to experiment with these settings to find&lt;br /&gt;the correct combination of settings for their environment.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;=====================&lt;br /&gt;Known Hardware Issues&lt;br /&gt;=====================&lt;br /&gt;&lt;br /&gt;--------&lt;br /&gt;SWITCHES&lt;br /&gt;--------&lt;br /&gt;In general, if problems are encountered due to cable swaps or other operations&lt;br /&gt;involving a switch, the switch firmware should always be updated to the&lt;br /&gt;latest supported levels regardless of the type of switch being used.&lt;br /&gt;&lt;br /&gt;IBM 2109 FC Switch&lt;br /&gt;------------------&lt;br /&gt;Some problems were experienced when using these features and performing&lt;br /&gt;multiple cable swaps with the IBM FC 2109 F16 switch at GA firmware&lt;br /&gt;level 3.0.  These problems are solved by updating the switch firmware to&lt;br /&gt;the latest levels.  These features were tested using v3.0.2k firmware&lt;br /&gt;for this switch.&lt;br /&gt;&lt;br /&gt;Inrange Switch&lt;br /&gt;--------------&lt;br /&gt;If using an Inrange FC/9000 FC Director, the Inrange switch must&lt;br /&gt;be at a minimum level of "FC 4.1.2.7" firmware in order to support&lt;br /&gt;Dynamic Tracking and Fast Fail.&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6764790369608821377?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6764790369608821377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6764790369608821377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6764790369608821377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6764790369608821377'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/04/aix-fast-io-failure-for-fibre-channel.html' title='AIX &quot;Fast I/O Failure for Fibre Channel Devices&quot; and &quot;Dynamic Tracking of Fibre Channel Devices&quot;.'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1792940324036332200</id><published>2011-03-27T18:10:00.002+02:00</published><updated>2011-03-27T18:14:25.556+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><category scheme='http://www.blogger.com/atom/ns#' term='tpcr'/><category scheme='http://www.blogger.com/atom/ns#' term='java installer'/><title type='text'>X11 libraries required for TPC server install on Linux</title><content type='html'>TPC for Replications stopped with swing error.&lt;br /&gt;               &lt;br /&gt;java.lang.ExceptionInInitializerError&lt;br /&gt;       at javax.swing.plaf.metal.MetalTheme.&lt;clinit&gt;(MetalTheme.java:61)&lt;br /&gt;       at javax.swing.plaf.metal.MetalLookAndFeel.getCurrentTheme(MetalLookAndFeel.java:1374)&lt;br /&gt;       at javax.swing.plaf.metal.MetalLookAndFeel.createDefaultTheme(MetalLookAndFeel.java:1306)&lt;br /&gt;       at javax.swing.plaf.metal.MetalLookAndFeel.getDefaults(MetalLookAndFeel.java:1313)&lt;br /&gt;       at javax.swing.UIManager.setLookAndFeel(UIManager.java:425)&lt;br /&gt;       at javax.swing.UIManager.setLookAndFeel(UIManager.java:455)&lt;br /&gt;       at com.installshield.wizard.swing.SwingWizardUI.switchToSystemLAF(SwingWizardUI.java:134)&lt;br /&gt;       at com.installshield.wizard.swing.SwingWizardUI.initialize(SwingWizardUI.java:487)&lt;br /&gt;       at com.installshield.wizard.StandardWizardListener.wizardInitializing(Unknown Source)&lt;br /&gt;       at com.installshield.wizard.Wizard$WizardListenerInitializer.run(Wizard.java:1862)&lt;br /&gt;       at java.lang.Thread.run(Thread.java:568)&lt;br /&gt;&lt;img alt="" class="display-img" src="http://www.ibm.com/i/c.gif" height="6" width="1" /&gt;  &lt;h1&gt; &lt;span style="font-weight: normal;font-size:85%;" &gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;/clinit&gt;Resolving the problem In addition to the standard X11 libraries, these libraries are required:&lt;br /&gt;libXft 64bit &amp;amp; 32bit (TPC SE)&lt;br /&gt;libXmu-1.0.2-5 (or latest version for your Linux distribution) 64bit &amp;amp; 32bit (TPC-R)&lt;br /&gt;libXmu.i386 32bit (TPC-R)&lt;clinit&gt;&lt;h1&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-weight: normal;font-size:85%;" &gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;br /&gt;&lt;/clinit&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1792940324036332200?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1792940324036332200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1792940324036332200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1792940324036332200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1792940324036332200'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/03/x11-libraries-required-for-tpc-server.html' title='X11 libraries required for TPC server install on Linux'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-206325796588583890</id><published>2011-02-23T11:09:00.000+01:00</published><updated>2011-02-23T11:10:32.538+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='DS storage'/><category scheme='http://www.blogger.com/atom/ns#' term='Brocade'/><title type='text'>H196488: DS3500/DS3950/DS5000 systems not working with Brocade on 8 Gbps host ports - IBM System Storage</title><content type='html'>&lt;a name="DOCDISPLAYTOP"&gt;&lt;/a&gt;  &lt;table class="layout"&gt;&lt;tbody&gt;&lt;tr class="layout"&gt;&lt;/tr&gt;&lt;tr class="layout"&gt;&lt;td class="layout-center"&gt;&lt;style&gt;p.sss-doc-title { font-size: 1em ! important; font-weight: bold; padding-bottom: 0pt ! important; }.sss-doc-header, #sss-doc-body-id div h2, .v14-header-1 { font-size: 0.75em; font-weight: bold; background: url("//www.ibm.com/i/v16/t/sprites-t1.gif") repeat-x scroll 0pt -545px rgb(255, 255, 255); border: 1px solid rgb(204, 204, 204); height: 1%; margin: 0pt; padding: 3px 5px; display: block; }div.sss-doc-body { font-size: 0.76em ! important; }div.sss-doc-body * { font-size: 1em ! important; }div.sss-doc-body table { padding: 0pt; }&lt;/style&gt;  &lt;div class="ns_7_L020GAG0984H30I63CCQRI20K2__midCol"&gt; &lt;div id="ibm-content-main"&gt; &lt;p class="sss-doc-title"&gt;&lt;br /&gt;&lt;/p&gt;    &lt;div class="ibm-alternate-rule"&gt;&lt;hr /&gt;&lt;/div&gt;  &lt;div class="ibm-rule"&gt;&lt;hr /&gt;&lt;/div&gt;      &lt;div class="sss-doc-body" id="sss-doc-body-id"&gt; &lt;div class="nxg-docdisplay"&gt;  &lt;style type="text/css"&gt;a.ibm-feature-link { text-decoration: none; }table.ibm-data-table { border-right: 1px solid rgb(204, 204, 204); border-width: 0px 1px 1px; border-style: none solid solid; border-color: -moz-use-text-color rgb(204, 204, 204) rgb(204, 204, 204); width: 100%; }&lt;/style&gt;                  &lt;h2&gt;Source&lt;/h2&gt;      &lt;p&gt;RETAIN tip: H196488&lt;/p&gt;      &lt;h2&gt;Symptom&lt;/h2&gt;      &lt;p&gt;When attaching System Storage DS5000 series storage subsystems,  System Storage DS3500 series storage subsystems, or System Storage  DS3950 storage subsystems to Brocade 8 Gigabit (Gb) Fibre Channel  switches running at 8 Gb host port speeds, the host connection will not  establish at 8 gigabits per second (Gbps).&lt;/p&gt;      &lt;p&gt;The following Brocade FC switches, running firmware 6.2.0e or above, are affected:&lt;/p&gt;      &lt;table class="ibm-data-table" summary="layout" border="0" cellpadding="0" cellspacing="0"&gt;       &lt;tbody&gt;&lt;tr&gt;         &lt;td&gt;2498-B40&lt;/td&gt;          &lt;td&gt;Brocade 5100&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;2498-B80&lt;/td&gt;          &lt;td&gt;Brocade 5300&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;2499-192&lt;/td&gt;          &lt;td&gt;Brocade DCX-4S&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;2499-384&lt;/td&gt;          &lt;td&gt;Brocade DCX&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt;      &lt;h2&gt;Affected configurations&lt;/h2&gt;      &lt;p&gt;The system may be any of the following IBM servers:&lt;/p&gt;      &lt;ul&gt;&lt;li&gt;DS5020 Disk Controller (1814-20A), any model&lt;/li&gt;&lt;li&gt;DS5100 Storage Controller, type 1818, any model&lt;/li&gt;&lt;li&gt;DS5300 Storage Controller, type 1818, any model&lt;/li&gt;&lt;li&gt;IBM System Storage DS3512, type 1746, any model&lt;/li&gt;&lt;li&gt;IBM System Storage DS3524, type 1746, any model&lt;/li&gt;&lt;li&gt;IBM System Storage DS3950 Express, type 1814, any model&lt;/li&gt;&lt;/ul&gt;      &lt;p&gt;This tip is not software specific.&lt;/p&gt;      &lt;p&gt;This tip is not option specific.&lt;br /&gt;     The 6.2.0e firmware for the Brocade FC switches is affected.&lt;br /&gt;     The system has the symptom described above.&lt;/p&gt;      &lt;h2&gt;Workaround&lt;/h2&gt;      &lt;p&gt;The following Workaround should be used on the Brocade switch to establish 8 Gb host port connections.&lt;/p&gt;     To enable IDLE on ports, execute the following command on the switch console&lt;br /&gt;           &lt;table class="ibm-container" width="100%" border="0" cellpadding="0" cellspacing="0"&gt;       &lt;tbody&gt;&lt;tr&gt;         &lt;td width="25"&gt; &lt;/td&gt;          &lt;td&gt;portcfgfillword x 0&lt;br /&gt;        &lt;br /&gt;         Where x is the port number.&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt;      &lt;p&gt;Once ports are set to IDLE on Brocade switches, the connection with the storage subsystem will be established at 8 Gbps.&lt;/p&gt;      &lt;h2&gt;Additional information&lt;/h2&gt;      &lt;p&gt;Brocade switches that support 8 Gbps host port speeds have a  connection issue with DS5000, DS3500, and DS3950 series storage  subsystems. If one of the Brocade switches that supports 8 Gbps is  shipped with 6.2.0e firmware and above, then the fillword setting is ARB  instead of IDLE.&lt;/p&gt;      &lt;p&gt;In order to work at 8 Gbps host port speeds, the following command should be executed on the affected switches&lt;/p&gt;      &lt;table class="ibm-container" width="100%" border="0" cellpadding="0" cellspacing="0"&gt;       &lt;tbody&gt;&lt;tr&gt;         &lt;td width="25"&gt; &lt;/td&gt;          &lt;td&gt;portcfgfillword x 0&lt;br /&gt;        &lt;br /&gt;         Where x is the port number.&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt;      &lt;p&gt;To check the status of the ports, use the following command:&lt;/p&gt;      &lt;table class="ibm-container" width="100%" border="0" cellpadding="0" cellspacing="0"&gt;       &lt;tbody&gt;&lt;tr&gt;         &lt;td width="25"&gt; &lt;/td&gt;          &lt;td&gt;portcfgshow&lt;br /&gt;        &lt;br /&gt;         0- Fillword set to IDLE (This is how it should be set.)&lt;br /&gt;         1- Fillword set to ARB&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-206325796588583890?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/206325796588583890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=206325796588583890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/206325796588583890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/206325796588583890'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/02/h196488-ds3500ds3950ds5000-systems-not.html' title='H196488: DS3500/DS3950/DS5000 systems not working with Brocade on 8 Gbps host ports - IBM System Storage'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1604531597786914312</id><published>2011-02-16T18:20:00.003+01:00</published><updated>2011-02-16T18:27:48.960+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tws'/><category scheme='http://www.blogger.com/atom/ns#' term='installshield'/><title type='text'>Installshield error on x86_64 RedHat Linux</title><content type='html'>TWS install fails with the following error message:&lt;br /&gt;&lt;br /&gt;SETUP.sh -is:log /tmp/tws.log -&gt;&lt;br /&gt;The installer is unable to run in graphical mode. Try running the installer with the -console or -silent flag.&lt;br /&gt;&lt;br /&gt;Log says:&lt;br /&gt;Wizard, com.installshield.wizard.StandardWizardListener, dbg, java.lang.NoClassDefFoundError: java/awt/Frame&lt;br /&gt;java.lang.NoClassDefFoundError: java/awt/Frame&lt;br /&gt;    at com.installshield.wizard.awt.AWTWizardUI.createFrame(Unknown Source)&lt;br /&gt;    at com.installshield.wizard.awt.AWTWizardUI.initialize(Unknown Source)&lt;br /&gt;    at com.installshield.wizard.StandardWizardListener.wizardInitializing(Unknown Source)&lt;br /&gt;    at com.installshield.wizard.Wizard$WizardListenerInitializer.run(Wizard.java:1871)&lt;br /&gt;    at java.lang.Thread.run(Thread.java:568)&lt;br /&gt;(Feb 16, 2011 6:06:30 PM), Wizard, com.installshield.wizard.StandardWizardListener, err, could not initialize interface awt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Solution:&lt;br /&gt;You have to install the i386 version of the necessary rpms.&lt;br /&gt;- libXp-1.0.0-8.1.el5.i386.rpm&lt;br /&gt;-compatlib .. etc&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1604531597786914312?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1604531597786914312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1604531597786914312' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1604531597786914312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1604531597786914312'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/02/installshield-error-on-x8664-redhat.html' title='Installshield error on x86_64 RedHat Linux'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-7387259144946666292</id><published>2011-02-02T20:05:00.002+01:00</published><updated>2011-02-02T20:07:34.496+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='macosx'/><title type='text'>Install Leopard With An External Hard Drive</title><content type='html'>I found a useful guide to install MAC OS X from external harddrive.&lt;br /&gt;&lt;br /&gt;"If you have an external hard drive and made an image of leopard copy,  but don’t have any dual layered disks lying around, you can always use  an external hard drive to install Mac OS X 10.5 Leopard. This is  incredibly easy, and works with both USB and Firewire hard drives:&lt;br /&gt;&lt;span id="more-63"&gt;&lt;/span&gt;&lt;br /&gt;1. Plug in your external hard drive&lt;br /&gt;2. Open up Disk Utility&lt;br /&gt;3. Click on the name of your external harddrive&lt;br /&gt;4. Click on the “Restore” tab&lt;br /&gt;5. In the “Source” field, select the image file (such as leopard.dmg) from wherever it is on your hard drive&lt;br /&gt;6. In the “Destination” field, drag your external hard drive from the  Disk Utility drive list on the left onto this field. Of course, if it’s  only a partition on the external drive that you want to use, drag only  the partition.&lt;br /&gt;Note: anything on the partition will be erased and replaced with the  installation files for Leopard. Therefore, it is best to make a  partition on the external hard drive which has about 8 gigabytes. Use  this partition as the destination so that everything else on the drive  remains unchanged.&lt;br /&gt;7. Click on restore. This may take awhile.&lt;br /&gt;8. Once its done, open up System Preferences&lt;br /&gt;9. Click on Startup Disk&lt;br /&gt;10. Select the external hard drive (or partition in it) with the Leopard Install&lt;br /&gt;11. Click Restart. The leopard installation will begin from the external  hard drive. This installation is identical to installing leopard with a  DVD."&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.liveslick.com/2007/12/28/install-leopard-with-an-external-hard-drive/"&gt;Original link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-7387259144946666292?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/7387259144946666292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=7387259144946666292' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/7387259144946666292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/7387259144946666292'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/02/install-leopard-with-external-hard.html' title='Install Leopard With An External Hard Drive'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6465460304135129878</id><published>2011-02-02T18:48:00.000+01:00</published><updated>2011-02-02T18:49:28.146+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='dvd'/><title type='text'>How To  Enable Dvd Drive Sharing on a Non-Air Macbook</title><content type='html'>&lt;pre class="alt2" dir="ltr" style="margin: 0px; padding: 6px; border: 1px inset; width: 640px; height: 50px; text-align: left; overflow: auto;"&gt;defaults write com.apple.NetworkBrowser EnableODiskBrowsing -bool true&lt;br /&gt;defaults write com.apple.NetworkBrowser ODSSupported -bool true&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6465460304135129878?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6465460304135129878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6465460304135129878' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6465460304135129878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6465460304135129878'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/02/how-to-enable-dvd-drive-sharing-on-non.html' title='How To  Enable Dvd Drive Sharing on a Non-Air Macbook'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-202609386788908469</id><published>2011-02-02T10:34:00.003+01:00</published><updated>2011-02-03T19:31:57.841+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fc'/><category scheme='http://www.blogger.com/atom/ns#' term='qlogic'/><category scheme='http://www.blogger.com/atom/ns#' term='switch'/><title type='text'>Qlogic SANBox password reset</title><content type='html'>&lt;span class="body12"&gt;&lt;p&gt;&lt;strong&gt;How do you reset the SANbox switch password file back to factory default?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Question:&lt;/strong&gt; How do you reset the SANbox switch password file back to factory default?&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Response:&lt;/strong&gt; Put switch into Maintenance Mode (disruptive) by pressing the maintenance mode switch/button for 4 seconds or power on and press the maintenance mode switch until the heartbeat LED is on solid (the maintenance mode switch is in the hole located under the Ethernet connection). Use Telnet and log in as prom/prom (username/password). Select menu option#3 (Reset Password File) to defaults (admin/password = username/password). Select menu option#7 (Reset Switch) to reset switch once selecting exiting from Maintenance Mode menu, then menu item#0 (Exit).&lt;br /&gt;&lt;/p&gt;  &lt;div&gt;Sanbox2 login: prom&lt;/div&gt;  &lt;div&gt; Password: prom&lt;/div&gt;  &lt;p&gt; 0) Exit&lt;br /&gt;1) Image Unpack&lt;br /&gt;2) Reset Network Config&lt;br /&gt;3) Reset Password File&lt;br /&gt;4) Copy Log Files&lt;br /&gt;5) Remove Switch Config&lt;br /&gt;6) Remake Filesystem&lt;br /&gt;7) Reset Switch&lt;/p&gt;  &lt;p&gt; Option: 3&lt;br /&gt;&lt;/p&gt;    &lt;p&gt; OK, password file has been reset to factory defaults.&lt;/p&gt;&lt;p&gt;0) Exit&lt;br /&gt;1) Image Unpack&lt;br /&gt;2) Reset Network Config&lt;br /&gt;3) Reset Password File&lt;br /&gt;4) Copy Log Files&lt;br /&gt;5) Remove Switch Config&lt;br /&gt;6) Remake Filesystem&lt;br /&gt;7) Reset Switch&lt;/p&gt;  &lt;p&gt; Option: 7&lt;/p&gt;  &lt;p&gt; Are you sure you want to reboot the switch? (y/n) y&lt;/p&gt;  &lt;p&gt; 0) Exit&lt;br /&gt;1) Image Unpack&lt;br /&gt;2) Reset Network Config&lt;br /&gt;3) Reset Password File&lt;br /&gt;4) Copy Log Files&lt;br /&gt;5) Remove Switch Config&lt;br /&gt;6) Remake Filesystem&lt;br /&gt;7) Reset Switch&lt;/p&gt;  &lt;p&gt; Option: 0&lt;/p&gt;    &lt;div&gt; &lt;/div&gt;  &lt;div&gt;Note: After resetting, the SANbox switch will come up in Normal mode and be ready to use with a default password file.&lt;span class="body12"&gt; When the switch is in Maintenance Mode, the IPaddress = 10.0.0.1. Once the switch is reset and boots normally, the IPaddress will return back to the configured setting.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-202609386788908469?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/202609386788908469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=202609386788908469' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/202609386788908469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/202609386788908469'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/02/qlogic-sanbox-password-reset.html' title='Qlogic SANBox password reset'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1430865809347866782</id><published>2011-01-31T17:42:00.000+01:00</published><updated>2011-01-31T17:43:09.745+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scsi'/><category scheme='http://www.blogger.com/atom/ns#' term='rescan'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Linux Storage Reconfiguration</title><content type='html'>&lt;p&gt; Because most RAID arrays allow LUNs to be created, removed and resized dynamically, it is important that the Linux kernel to react to these actions, preferably without a reboot. The Linux 2.6 kernel permits this by way of the /sys filesystem, which replaced the earlier /proc interfaces. For example, the following command causes the kernel to forget about the LUN on busid 3, channel 0, target 7 and LUN 1:  &lt;/p&gt;&lt;pre class="programlisting"&gt;echo "1" &gt; \&lt;br /&gt;/sys/class/scsi_host/host3/device/3:0:7:1/delete&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; The busid of 3 is redundant with the 3 in host3. This format also is used, however, in contexts where the busid is required, such as in /sys/bus/scsi/devices. &lt;/p&gt;&lt;p&gt; To later restore only that particular LUN, execute:  &lt;/p&gt;&lt;pre class="programlisting"&gt;echo "0 7 1" &gt; /sys/class/scsi_host/host3/scan&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; To resize this same LUN, use:  &lt;/p&gt;&lt;pre class="programlisting"&gt;echo 1 &gt; /sys/bus/scsi/devices/3:0:7:1/rescan&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; To scan all channels, targets and LUNs, try:  &lt;/p&gt;&lt;pre class="programlisting"&gt;echo "- - -" &gt; /sys/class/scsi_host/host3/scan&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1430865809347866782?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1430865809347866782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1430865809347866782' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1430865809347866782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1430865809347866782'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/01/linux-storage-reconfiguration.html' title='Linux Storage Reconfiguration'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6796471816932680348</id><published>2011-01-12T21:23:00.003+01:00</published><updated>2011-01-12T21:30:59.225+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='cygwin1.dll'/><category scheme='http://www.blogger.com/atom/ns#' term='bomc'/><title type='text'>BOMC (Bootable Media Creator) error</title><content type='html'>I got this error after I tried to create bootable iso with IBM ToolsCenter software called BOMC:&lt;br /&gt;"Error(s) occurs while creating the bootable media!  Error message: Media creation error: The mkisofs utility failed to create ISO file"&lt;br /&gt;&lt;br /&gt;This error occurs when cygwin1.dll already loaded by another program. I use LinuxTSC that use this dll. After unloaded the xwin.exe the problem disappeared.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6796471816932680348?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6796471816932680348/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6796471816932680348' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6796471816932680348'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6796471816932680348'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2011/01/bomc-bootable-media-creator-error.html' title='BOMC (Bootable Media Creator) error'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1694560391078746590</id><published>2010-12-21T08:49:00.000+01:00</published><updated>2010-12-21T08:49:02.788+01:00</updated><title type='text'>Determine the process running on a particular port</title><content type='html'>&lt;a href="http://www-01.ibm.com/support/docview.wss?uid=swg21457869&amp;amp;myns=swgtiv&amp;amp;mynp=OCSSBSEX&amp;amp;mynp=OCSS8JB5&amp;amp;mync=E"&gt;IBM - Determine the process running on a particular port&lt;/a&gt;: "Determine the process running on a particular port&lt;br /&gt;Technote (FAQ)&lt;br /&gt;&lt;br /&gt;Question&lt;br /&gt;How to find out which application is using what port?&lt;br /&gt;&lt;br /&gt;Answer&lt;br /&gt;For AIX:&lt;br /&gt;1. netstat -Aan | grep&lt;br /&gt;- This shows if the specified  is being used. The hex number in the first column is the address of protocol control block (PCB)&lt;br /&gt;&lt;br /&gt;2. rmsock  tcpcb&lt;br /&gt;- This shows the process who is holding the socket. Note that this command must be run as root.&lt;br /&gt;&lt;br /&gt;An AIX example:&lt;br /&gt;# netstat -Aan | grep 9515&lt;br /&gt;f100060003743b98 tcp4 0 0 *.9515 *.* LISTEN&lt;br /&gt;&lt;br /&gt;# rmsock f100060003743b98 tcpcb&lt;br /&gt;The socket 0x3743808 is being held by proccess 438488 (java).&lt;br /&gt;&lt;br /&gt;For Windows:&lt;br /&gt;Let’s say that we are looking for port 9549 — Data server.&lt;br /&gt;&lt;br /&gt;Here is the command.&lt;br /&gt;&lt;br /&gt;C:\&amp;gt; netstat -aon | findstr 9549&lt;br /&gt;&lt;br /&gt;-a means list all active connections and their ports.&lt;br /&gt;-o means include their process IDs.&lt;br /&gt;-n means display the port numbers numerically.&lt;br /&gt;&lt;br /&gt;The pipe symbol ( | ) means, that instead of the result of netstat being displayed on the screen, feed it’s result to the findstr process — we are looking specifically for the line which has port 9549.&lt;br /&gt;&lt;br /&gt;You might see something like this&lt;br /&gt;TCP 0.0.0.0:9549 0.0.0.0:0 LISTENING 3444&lt;br /&gt;&lt;br /&gt;Now we know that process 3444 is using port 9549 (that last column right there, is the process ID).&lt;br /&gt;You could now enter 'tasklist'.&lt;br /&gt;&lt;br /&gt;C:\&amp;gt; tasklist | findstr 3444&lt;br /&gt;java.exe 3444 Console 0 22,920 K&lt;br /&gt;&lt;br /&gt;tasklist is another Windows command line utility which shows you a list of all active processes.&lt;br /&gt;&lt;br /&gt;In this case, the process is the java process link to the data server process.&lt;br /&gt;If you kill process 3444, you kill the data server service.&lt;br /&gt;&lt;br /&gt;- Sent using Google Toolbar"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1694560391078746590?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www-01.ibm.com/support/docview.wss?uid=swg21457869&amp;myns=swgtiv&amp;mynp=OCSSBSEX&amp;mynp=OCSS8JB5&amp;mync=E' title='Determine the process running on a particular port'/><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1694560391078746590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1694560391078746590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1694560391078746590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1694560391078746590'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/12/determine-process-running-on-particular.html' title='Determine the process running on a particular port'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6552116121740011419</id><published>2010-12-15T14:40:00.000+01:00</published><updated>2010-12-15T14:40:20.008+01:00</updated><title type='text'>Brocade Password Recovery</title><content type='html'>&lt;a href="http://community.brocade.com/docs/DOC-1644"&gt;Brocade Communities : Brocade Password Recovery Notes Publication Number: 53-1000114-01&lt;/a&gt;: "Fabric OS&lt;br /&gt;&lt;br /&gt;Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Supporting Fabric OS v2.6.x, v3.1.x, v4.x, v5.x&lt;br /&gt;&lt;br /&gt;2 of 12 Fabric OS Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;Copyright © 2006, Brocade Communications Systems, Incorporated.&lt;br /&gt;&lt;br /&gt;ALL RIGHTS RESERVED. Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you have access to the root account you can reset the passwords for all other accounts on the system including: the&lt;br /&gt;&lt;br /&gt;factory, admin, and user accounts. The root account can reset the root, factory, and admin accounts; admin can reset the&lt;br /&gt;&lt;br /&gt;user login. See “Password Recovery Using Root Account” on page 3.&lt;br /&gt;&lt;br /&gt;If you do not have access to the root account, you can use the Boot PROM password to reset the system passwords to&lt;br /&gt;&lt;br /&gt;default values. This option is only available on Fabric OS v4.1 or greater, and you must have the Boot PROM password&lt;br /&gt;&lt;br /&gt;(unless no Boot PROM password was set). See “Password Recovery Using the Boot PROM” on page 4.&lt;br /&gt;&lt;br /&gt;If you do not have either the root or Boot PROM password, or your system is loaded with a version older than Fabric OS&lt;br /&gt;&lt;br /&gt;v4.1, contact your switch service provider for a Boot PROM recovery string to regain access to the switch. See “Obtaining&lt;br /&gt;&lt;br /&gt;the Boot PROM Recovery Password” on page 7.&lt;br /&gt;&lt;br /&gt;Password Recovery Using Root Account&lt;br /&gt;&lt;br /&gt;If you have access to the root account, you can reset the password for any admin, factory, and user accounts without&lt;br /&gt;&lt;br /&gt;knowing the account’s current password.&lt;br /&gt;&lt;br /&gt;To reset any account password from the root account:&lt;br /&gt;&lt;br /&gt;1. Open a CLI session (serial or telnet for an unsecured system and sectelnet for a secure system) to the switch.&lt;br /&gt;&lt;br /&gt;2. Log in as root.&lt;br /&gt;&lt;br /&gt;3. At the prompt, enter the passwd command, followed by the account name as shown below:&lt;br /&gt;&lt;br /&gt;switch:root&amp;gt; passwd account&lt;br /&gt;&lt;br /&gt;Note&lt;br /&gt;&lt;br /&gt;When connected through a serial cable to the console, always save the output using the capture functionality&lt;br /&gt;&lt;br /&gt;under windows (or script functionality for UNIX or Linux).&lt;br /&gt;&lt;br /&gt;Note&lt;br /&gt;&lt;br /&gt;In a fabric with Secure Fabric OS enabled, you must log in to the primary FCS to perform these tasks.&lt;br /&gt;&lt;br /&gt;4 of 12 Fabric OS Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;4. Follow the prompts to reset the password for the selected account. For example:&lt;br /&gt;&lt;br /&gt;Password Recovery Using the Boot PROM&lt;br /&gt;&lt;br /&gt;If you know the Boot PROM password or none was set on your system, use this procedure to reset the passwords to&lt;br /&gt;&lt;br /&gt;default values on the switch or director. The current Fabric OS level of the switch or director must be v4.1 or greater.&lt;br /&gt;&lt;br /&gt;To reset the root password to default using the Boot PROM password:&lt;br /&gt;&lt;br /&gt;1. Connect to the serial console port of the switch (SilkWorm 200E, 3250, 3850, 3900, 4100, 4900 or 7500 switch) or&lt;br /&gt;&lt;br /&gt;the standby CP of a director (SilkWorm 12000, 24000, or 48000). Use the hashow command to see which CP is&lt;br /&gt;&lt;br /&gt;active and which is standby.&lt;br /&gt;&lt;br /&gt;2. Enter the reboot command.&lt;br /&gt;&lt;br /&gt;3. Press ESC at the message “Press escape within 4 seconds...” The Boot PROM menu is displayed with the following&lt;br /&gt;&lt;br /&gt;options:&lt;br /&gt;&lt;br /&gt;- 1) Start system&lt;br /&gt;&lt;br /&gt;Used to reboot the system.&lt;br /&gt;&lt;br /&gt;- 2) Recover password.&lt;br /&gt;&lt;br /&gt;Used to generate a character string for your support provider to recover the Boot PROM password.&lt;br /&gt;&lt;br /&gt;- 3) Enter command shell.&lt;br /&gt;&lt;br /&gt;Used to enter the command shell, to reset all passwords on the system.&lt;br /&gt;&lt;br /&gt;switch:root&amp;gt; passwd admin&lt;br /&gt;&lt;br /&gt;Changing password for admin&lt;br /&gt;&lt;br /&gt;Enter new password: xxxxxxx&lt;br /&gt;&lt;br /&gt;Re-type new password: xxxxxxx&lt;br /&gt;&lt;br /&gt;passwd: all authentication tokens updated successfully&lt;br /&gt;&lt;br /&gt;Saving password to stable storage.&lt;br /&gt;&lt;br /&gt;Password saved to stable storage successfully.&lt;br /&gt;&lt;br /&gt;Note&lt;br /&gt;&lt;br /&gt;This procedure is disruptive to traffic on the SilkWorm 200E, 3250, 3850, 3900, 4100, 4900 and 7500 switches,&lt;br /&gt;&lt;br /&gt;because it requires you to reboot the switch; traffic resumes after the switch is rebooted. On a SilkWorm 12000,&lt;br /&gt;&lt;br /&gt;24000, or 48000 director, you can reset the passwords without disruption by performing this procedure on the&lt;br /&gt;&lt;br /&gt;standby CP.&lt;br /&gt;&lt;br /&gt;Note&lt;br /&gt;&lt;br /&gt;If you are attempting to recover passwords for Fabric OS v4.4.0, you must review “Password Recovery for&lt;br /&gt;&lt;br /&gt;Fabric OS v4.4.0” on page 8 prior to beginning this procedure.&lt;br /&gt;&lt;br /&gt;Fabric OS Password Recovery Notes 5 of 12&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;4. Type 3 at the prompt to open the command shell.&lt;br /&gt;&lt;br /&gt;5. Type the Boot PROM password, if prompted, then press Enter. The Boot PROM has a password only if one was&lt;br /&gt;&lt;br /&gt;defined earlier.&lt;br /&gt;&lt;br /&gt;6. Run the printenv command, then save the output to a file. You will need to refer to this output later in the procedure.&lt;br /&gt;&lt;br /&gt;7. Locate the first memory address; it is the string after OSLoader= in the printenv output.&lt;br /&gt;&lt;br /&gt;8. Run the boot command with the first memory address and the –s option. For example:&lt;br /&gt;&lt;br /&gt;9. For a SilkWorm 200E, 3250, 3850, 3900, 4100, 4900, or 7500 switch, perform the following steps:&lt;br /&gt;&lt;br /&gt;a. Enter the mount command with the following parameters:&lt;br /&gt;&lt;br /&gt;&amp;gt; mount -o remount,rw,noatime /&lt;br /&gt;&lt;br /&gt;This will remount the root partition as read/write.&lt;br /&gt;&lt;br /&gt;b. Enter the mount command with the following parameters where hda is followed by the second partition value&lt;br /&gt;&lt;br /&gt;(such as 1 or 2) from OSRootPartition in the printenv output:&lt;br /&gt;&lt;br /&gt;&amp;gt; mount /dev/hda2 /mnt&lt;br /&gt;&lt;br /&gt;The system is coming up, please wait...&lt;br /&gt;&lt;br /&gt;Checking system RAM - press any key to stop test&lt;br /&gt;&lt;br /&gt;01a00000&lt;br /&gt;&lt;br /&gt;System RAM check terminated by keyboard&lt;br /&gt;&lt;br /&gt;System RAM check complete&lt;br /&gt;&lt;br /&gt;Press escape within 4 seconds to enter boot interface.&lt;br /&gt;&lt;br /&gt;1) Start system.&lt;br /&gt;&lt;br /&gt;2) Recover password.&lt;br /&gt;&lt;br /&gt;3) Enter command shell.&lt;br /&gt;&lt;br /&gt;Option? 3&lt;br /&gt;&lt;br /&gt;1) Start system.&lt;br /&gt;&lt;br /&gt;2) Recover password.&lt;br /&gt;&lt;br /&gt;3) Enter command shell.&lt;br /&gt;&lt;br /&gt;Option? 3&lt;br /&gt;&lt;br /&gt;Boot PROM password has not been set.&lt;br /&gt;&lt;br /&gt;&amp;gt; printenv&lt;br /&gt;&lt;br /&gt;AutoLoad=yes&lt;br /&gt;&lt;br /&gt;ENET_MAC=0060696019B4&lt;br /&gt;&lt;br /&gt;InitTest=MEM()&lt;br /&gt;&lt;br /&gt;LoadIdentifiers=Fabric Operating System;Fabric Operating System&lt;br /&gt;&lt;br /&gt;OSBooted=MEM()0xF0000000&lt;br /&gt;&lt;br /&gt;OSLoadOptions=quiet;quiet&lt;br /&gt;&lt;br /&gt;OSLoader=MEM()0xF0000000;MEM()0xF0800000&lt;br /&gt;&lt;br /&gt;OSRootPartition=hda1;hda2&lt;br /&gt;&lt;br /&gt;SkipWatchdog=yes&lt;br /&gt;&lt;br /&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;gt; boot MEM()0xF0000000 -s&lt;br /&gt;&lt;br /&gt;Booting 'Manually selected OS' image.&lt;br /&gt;&lt;br /&gt;Entry point at 0x00800000 ...&lt;br /&gt;&lt;br /&gt;6 of 12 Fabric OS Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;c. Enter the passwddefault command, as follows:&lt;br /&gt;&lt;br /&gt;&amp;gt; /sbin/passwddefault&lt;br /&gt;&lt;br /&gt;This resets all account passwords to the default values. If there were additional user accounts created, they are&lt;br /&gt;&lt;br /&gt;deleted and only the default accounts and passwords remain.&lt;br /&gt;&lt;br /&gt;d. Reboot the switch using the reboot –f command.&lt;br /&gt;&lt;br /&gt;&amp;gt; reboot -f&lt;br /&gt;&lt;br /&gt;Traffic flow resumes when the switch completes rebooting. If you do not use the –f you will have to manually&lt;br /&gt;&lt;br /&gt;reboot the switch.&lt;br /&gt;&lt;br /&gt;e. Log in as root to the switch by serial or telnet and set new passwords for all accounts.&lt;br /&gt;&lt;br /&gt;The process is now complete.&lt;br /&gt;&lt;br /&gt;10. For a SilkWorm 12000, 24000, or 48000 director, perform the following steps&lt;br /&gt;&lt;br /&gt;a. From the serial connection to the standby CP, determine the hostname of the CPs. This can be done using the&lt;br /&gt;&lt;br /&gt;# /bin/cat /etc/hosts command:&lt;br /&gt;&lt;br /&gt;b. From the serial connection to the standby CP, set the appropriate hostname to the CP. Use the hostname displayed&lt;br /&gt;&lt;br /&gt;in the previous step. In the above example mycp0 is the standby CP.&lt;br /&gt;&lt;br /&gt;hostname&lt;br /&gt;&lt;br /&gt;c. Start networking on the standby CP:&lt;br /&gt;&lt;br /&gt;&amp;gt; /etc/init.d/network start&lt;br /&gt;&lt;br /&gt;d. Perform one of the following according to which slot the CP card is in:&lt;br /&gt;&lt;br /&gt;- If the standby CP card is in slot 5 (CP0), enter:&lt;br /&gt;&lt;br /&gt;&amp;gt; rsh 10.0.0.6 /sbin/passwddefault&lt;br /&gt;&lt;br /&gt;- If the standby CP card is in slot 6 (CP1), enter:&lt;br /&gt;&lt;br /&gt;&amp;gt; rsh 10.0.0.5 /sbin/passwddefault&lt;br /&gt;&lt;br /&gt;e. Reboot the standby CP using the reboot –f command.&lt;br /&gt;&lt;br /&gt;&amp;gt; reboot –f&lt;br /&gt;&lt;br /&gt;If you do not use the –f option you will have to manually reset the CP by moving the slider switch to the off and&lt;br /&gt;&lt;br /&gt;then on position.&lt;br /&gt;&lt;br /&gt;# /bin/cat /etc/hosts&lt;br /&gt;&lt;br /&gt;127.0.0.1 localhost&lt;br /&gt;&lt;br /&gt;10.64.148.23 swd77 #sw0 255.255.240.0&lt;br /&gt;&lt;br /&gt;10.64.148.24 swd76 #sw1 255.255.240.0&lt;br /&gt;&lt;br /&gt;10.64.148.25 mycp0 #cp0 255.255.240.0 &amp;lt; CP0 SLOT 5&lt;br /&gt;&lt;br /&gt;10.64.148.26 cp1 #cp1 255.255.240.0 &amp;lt; CP1 SLOT 6&lt;br /&gt;&lt;br /&gt;0.0.0.0 fc0 #fc0 0.0.0.0&lt;br /&gt;&lt;br /&gt;0.0.0.0 fc1 #fc1 0.0.0.0&lt;br /&gt;&lt;br /&gt;10.0.0.5 cp_0_inteth #cp_0_internaleth&lt;br /&gt;&lt;br /&gt;10.0.0.6 cp_1_inteth #cp_1_internaleth&lt;br /&gt;&lt;br /&gt;Note&lt;br /&gt;&lt;br /&gt;The hostname for CP0 or CP1 are user definable, and may be different for each installation.&lt;br /&gt;&lt;br /&gt;Fabric OS Password Recovery Notes 7 of 12&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;f. Log in to the active CP as admin from a telnet or serial connection, and enter Ctrl + C to bypass the request to&lt;br /&gt;&lt;br /&gt;modify passwords.&lt;br /&gt;&lt;br /&gt;g. Log in to either logical switch by serial or telnet as admin and set new passwords for all accounts. The password&lt;br /&gt;&lt;br /&gt;recovery procedure is now complete.&lt;br /&gt;&lt;br /&gt;Obtaining the Boot PROM Recovery Password&lt;br /&gt;&lt;br /&gt;This section explains how to gather the information you need to send to your switch support provider in order to get a&lt;br /&gt;&lt;br /&gt;Boot PROM recovery password. Once you have received the Boot PROM recovery password, and gained access to the&lt;br /&gt;&lt;br /&gt;Boot PROM, you reset the passwords using “Password Recovery Using the Boot PROM” on page 4.&lt;br /&gt;&lt;br /&gt;To obtain the Boot PROM recovery password from your switch support provider:&lt;br /&gt;&lt;br /&gt;1. Connect to the serial port interface of the switch or standby CP.&lt;br /&gt;&lt;br /&gt;2. Reboot the switch or standby CP.&lt;br /&gt;&lt;br /&gt;3. Press ESC within four seconds after the message “Press escape within 4 seconds...”.&lt;br /&gt;&lt;br /&gt;4. Enter 2 at the prompt. A character string is displayed.&lt;br /&gt;&lt;br /&gt;5. Send the character string to your switch support provider to obtain a Boot PROM recovery password.&lt;br /&gt;&lt;br /&gt;6. Perform the appropriate steps to set the Boot PROM password if it was not set, as prompted:&lt;br /&gt;&lt;br /&gt;Recovery password is NOT set. Please set it now.&lt;br /&gt;&lt;br /&gt;7. Enter the Recovery Password that is generated from your support provider when prompted.&lt;br /&gt;&lt;br /&gt;8. When prompted with “New password:”, enter the new Boot PROM password and re-enter when prompted.&lt;br /&gt;&lt;br /&gt;9. Record the new password for future reference.&lt;br /&gt;&lt;br /&gt;10. Enter the saveenv command.&lt;br /&gt;&lt;br /&gt;1) Start system.&lt;br /&gt;&lt;br /&gt;2) Recover password.&lt;br /&gt;&lt;br /&gt;3) Enter command shell.&lt;br /&gt;&lt;br /&gt;Option? 2&lt;br /&gt;&lt;br /&gt;Send the following string to Customer Support for password recovery:&lt;br /&gt;&lt;br /&gt;/uasLR1raCqT3FToqy0ZjA==&lt;br /&gt;&lt;br /&gt;Enter the supplied recovery password.&lt;br /&gt;&lt;br /&gt;Recovery Password: YnfG9DDrlFMDVkNM0RkPtg== &amp;lt; Supplied by your support provider&lt;br /&gt;&lt;br /&gt;Re-enter Recovery Password: YnfG9DDrlFMDVkNM0RkPtg==&lt;br /&gt;&lt;br /&gt;New password: xxx&lt;br /&gt;&lt;br /&gt;Re-enter new password: xxx&lt;br /&gt;&lt;br /&gt;&amp;gt; saveenv&lt;br /&gt;&lt;br /&gt;8 of 12 Fabric OS Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;Password Recovery for Fabric OS v4.4.0&lt;br /&gt;&lt;br /&gt;In Fabric OS v4.4.0, you must take additional steps prior to and after performing the “Password Recovery Using the Boot&lt;br /&gt;&lt;br /&gt;PROM” on page 4. Otherwise, the switch is left in single-user mode.&lt;br /&gt;&lt;br /&gt;Password Recovery Steps Before Root Command&lt;br /&gt;&lt;br /&gt;1. Connect to the serial port of the switch or the standby CP.&lt;br /&gt;&lt;br /&gt;2. Reboot the switch and press ESC within 4 seconds after the message 'Press escape within 4 seconds...'.&lt;br /&gt;&lt;br /&gt;3. Enter the Boot PROM password.&lt;br /&gt;&lt;br /&gt;4. Enter 3 at the prompt to enter the command shell.&lt;br /&gt;&lt;br /&gt;5. Enter the printenv command and save the output. For example:&lt;br /&gt;&lt;br /&gt;6. From the output of the printenv, record the value for OSLoader.&lt;br /&gt;&lt;br /&gt;OSLoader ___________________________________________&lt;br /&gt;&lt;br /&gt;Password Recovery Steps After Root Command&lt;br /&gt;&lt;br /&gt;After you have recovered the passwords:&lt;br /&gt;&lt;br /&gt;1. Connect to the serial port interface of the switch or standby CP.&lt;br /&gt;&lt;br /&gt;2. Reboot the switch and press ESC within 4 seconds after the message 'Press escape within 4 seconds...' displays.&lt;br /&gt;&lt;br /&gt;'Enter Boot PROM interface:'&lt;br /&gt;&lt;br /&gt;3. Enter the Boot PROM password.&lt;br /&gt;&lt;br /&gt;4. Enter 3 at the prompt to enter the command shell.&lt;br /&gt;&lt;br /&gt;The system is coming up, please wait...&lt;br /&gt;&lt;br /&gt;Checking system RAM - press any key to stop test&lt;br /&gt;&lt;br /&gt;Checking memory address: 01300000&lt;br /&gt;&lt;br /&gt;System RAM check terminated by keyboard&lt;br /&gt;&lt;br /&gt;System RAM check complete&lt;br /&gt;&lt;br /&gt;Press escape within 4 seconds to enter boot interface.&lt;br /&gt;&lt;br /&gt;1) Start system.&lt;br /&gt;&lt;br /&gt;2) Recover password.&lt;br /&gt;&lt;br /&gt;3) Enter command shell.&lt;br /&gt;&lt;br /&gt;Option? 3&lt;br /&gt;&lt;br /&gt;Password:&lt;br /&gt;&lt;br /&gt;&amp;gt; printenv&lt;br /&gt;&lt;br /&gt;AutoLoad=yes&lt;br /&gt;&lt;br /&gt;ENET_MAC=006069602BD6&lt;br /&gt;&lt;br /&gt;InitTest=MEM()&lt;br /&gt;&lt;br /&gt;LoadIdentifiers=Fabric Operating System;Fabric Operating System&lt;br /&gt;&lt;br /&gt;OSLoader=MEM()0xF0000000;MEM()0xF0800000&lt;br /&gt;&lt;br /&gt;OSLoadOptions=quiet;quiet&lt;br /&gt;&lt;br /&gt;OSRootPartition=hda1;hda2&lt;br /&gt;&lt;br /&gt;SkipWatchdog=yes&lt;br /&gt;&lt;br /&gt;Fabric OS Password Recovery Notes 9 of 12&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;5. Enter the following command strings, one at a time, to reset the passwords:&lt;br /&gt;&lt;br /&gt;unsetenv OSBooted&lt;br /&gt;&lt;br /&gt;setenv LoadIdentifiers=Fabric Operating System;Fabric Operating System&lt;br /&gt;&lt;br /&gt;setenv OSLoadOptions=quiet;quiet&lt;br /&gt;&lt;br /&gt;setenv OSLoader=MEM()0xF0000000;MEM()0xF0800000&lt;br /&gt;&lt;br /&gt;saveenv&lt;br /&gt;&lt;br /&gt;printenv&lt;br /&gt;&lt;br /&gt;reset&lt;br /&gt;&lt;br /&gt;Password Recovery on VXWorks-Based Switches&lt;br /&gt;&lt;br /&gt;This procedure requires Password Recovery firmware, available from your switch support provider. The Password&lt;br /&gt;&lt;br /&gt;Recovery firmware is effective only for the first time it is launched. You cannot use the Password Recovery firmware to&lt;br /&gt;&lt;br /&gt;perform any other switch functions.&lt;br /&gt;&lt;br /&gt;These procedures require switch downtime. Brocade recommends removing the switch from the fabric and rejoining it&lt;br /&gt;&lt;br /&gt;after the recovery process is complete.&lt;br /&gt;&lt;br /&gt;In order to complete the steps in this section you need the following:&lt;br /&gt;&lt;br /&gt;• Password Recovery firmware: Send the switch WWN to your switch support provider with a request for the Password&lt;br /&gt;&lt;br /&gt;Recovery firmware. This firmware can be launched once, and it recovers the password for the specific switch only.&lt;br /&gt;&lt;br /&gt;• Ethernet connection between host and switch. It can be either a network connection from a host to the switch or a&lt;br /&gt;&lt;br /&gt;direct connection with an Ethernet crossover cable.&lt;br /&gt;&lt;br /&gt;• Serial connection to the switch&lt;br /&gt;&lt;br /&gt;Reset Passwords for Fabric OS v2.6.1+, and v3.1+&lt;br /&gt;&lt;br /&gt;To reset the passwords on a Fabric OS v2.6.x and greater, or v3.1.x and greater switch using the Password Recovery&lt;br /&gt;&lt;br /&gt;firmware:&lt;br /&gt;&lt;br /&gt;1. Copy the Password Recovery firmware to a secure location that is accessible to the switch; that is, an FTP server&lt;br /&gt;&lt;br /&gt;accessible to the switch. You must use either FTP or RSHD to copy the firmware. If FTP is used, the password cannot&lt;br /&gt;&lt;br /&gt;be blank.&lt;br /&gt;&lt;br /&gt;2. Connect to the console port.&lt;br /&gt;&lt;br /&gt;3. Power the switch off and back on.&lt;br /&gt;&lt;br /&gt;4. Set the boot parameters on your switch to perform a netboot:&lt;br /&gt;&lt;br /&gt;a. At the “[VxWorks Boot]” prompt for the switch, enter c.&lt;br /&gt;&lt;br /&gt;Note&lt;br /&gt;&lt;br /&gt;The value of the OSLoader= string should be set to the exact value from step 6 on page 8.&lt;br /&gt;&lt;br /&gt;10 of 12 Fabric OS Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;b. Type the requested information at the prompts. To accept the default value for a parameter, press Enter.&lt;br /&gt;&lt;br /&gt;The parameters are defined as follows.&lt;br /&gt;&lt;br /&gt;host name Name of machine on which Password Recovery firmware is located&lt;br /&gt;&lt;br /&gt;file name Full pathname where Password Recovery firmware is located&lt;br /&gt;&lt;br /&gt;inet on ethernet Switch IP address&lt;br /&gt;&lt;br /&gt;host inet Host IP address&lt;br /&gt;&lt;br /&gt;gateway inet Gateway address&lt;br /&gt;&lt;br /&gt;user Login name of user account on host machine&lt;br /&gt;&lt;br /&gt;Press any key to stop auto-boot...&lt;br /&gt;&lt;br /&gt;[VxWorks Boot]: c&lt;br /&gt;&lt;br /&gt;'.' = clear field; '-' = go to previous field; ^D = quit&lt;br /&gt;&lt;br /&gt;boot device : fei&lt;br /&gt;&lt;br /&gt;processor number : 0&lt;br /&gt;&lt;br /&gt;host name : host&lt;br /&gt;&lt;br /&gt;file name : /usr/switch/firmware resetPasswd303f6f&lt;br /&gt;&lt;br /&gt;inet on ethernet (e) : 192.168.132.217:fffff000&lt;br /&gt;&lt;br /&gt;inet on backplane (b):&lt;br /&gt;&lt;br /&gt;host inet (h) : 192.168.132.133&lt;br /&gt;&lt;br /&gt;gateway inet (g) : 192.168.132.133&lt;br /&gt;&lt;br /&gt;user (u) : user&lt;br /&gt;&lt;br /&gt;ftp password (pw) (blank = use rsh):&lt;br /&gt;&lt;br /&gt;flags (f) : 0x0&lt;br /&gt;&lt;br /&gt;target name (tn) : sw2800&lt;br /&gt;&lt;br /&gt;startup script (s) :&lt;br /&gt;&lt;br /&gt;other (o) :&lt;br /&gt;&lt;br /&gt;Fabric OS Password Recovery Notes 11 of 12&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;5. Type @ at the [VxWorks Boot] prompt to begin booting the Password Recovery version of the firmware from the&lt;br /&gt;&lt;br /&gt;network.&lt;br /&gt;&lt;br /&gt;The user, admin, factory, and root passwords are reset to the default values.&lt;br /&gt;&lt;br /&gt;6. Power the switch off and back on.&lt;br /&gt;&lt;br /&gt;7. Press any key when you see the message “Press any key to stop autoboot...” This provides access to the boot prompt.&lt;br /&gt;&lt;br /&gt;8. Set the switch to boot from the flash again:&lt;br /&gt;&lt;br /&gt;a. At the [VxWorks Boot] prompt, type c to begin resetting the boot parameters to the default settings.&lt;br /&gt;&lt;br /&gt;b. Remove the values that you added by typing a period (.) after each parameter, then pressing Enter. The boot&lt;br /&gt;&lt;br /&gt;parameters are returned to the default settings.&lt;br /&gt;&lt;br /&gt;9. Power the switch off and back on to reload the original firmware from flash. The switch resumes normal operation.&lt;br /&gt;&lt;br /&gt;10. Log in to the switch by telnet or serial as root, and set new passwords for all accounts.&lt;br /&gt;&lt;br /&gt;[VxWorks Boot]: @&lt;br /&gt;&lt;br /&gt;boot device : fei&lt;br /&gt;&lt;br /&gt;processor number : 0&lt;br /&gt;&lt;br /&gt;host name : host&lt;br /&gt;&lt;br /&gt;file name : resetPasswd303f6f&lt;br /&gt;&lt;br /&gt;inet on ethernet (e) : 192.168.132.217:fffff000&lt;br /&gt;&lt;br /&gt;host inet (h) : 192.168.132.133&lt;br /&gt;&lt;br /&gt;gateway inet (g) : 192.168.132.133&lt;br /&gt;&lt;br /&gt;user (u) : user&lt;br /&gt;&lt;br /&gt;flags (f) : 0x0&lt;br /&gt;&lt;br /&gt;target name (tn) : sw2800&lt;br /&gt;&lt;br /&gt;Attaching network interface fei0... done.&lt;br /&gt;&lt;br /&gt;Attaching network interface lo0... done.&lt;br /&gt;&lt;br /&gt;host is alive &amp;lt;-------------------------CONNECTION TO HOST PROVIDING FIRMWARE IMAGE&lt;br /&gt;&lt;br /&gt;Loading... 4407608 + 329564 + 1153796&lt;br /&gt;&lt;br /&gt;Starting at 0x10400000...&lt;br /&gt;&lt;br /&gt;Attaching network interface fei0... done.&lt;br /&gt;&lt;br /&gt;Attached TCP/IP interface to fei unit 0&lt;br /&gt;&lt;br /&gt;Attaching network interface lo0... done.&lt;br /&gt;&lt;br /&gt;telnetInit: telnetd initialized.&lt;br /&gt;&lt;br /&gt;NFS client support not included.&lt;br /&gt;&lt;br /&gt;efwHookAdd: Added Ethernet Hook&lt;br /&gt;&lt;br /&gt;Adding 9407 symbols for standalone.&lt;br /&gt;&lt;br /&gt;Model: 4&lt;br /&gt;&lt;br /&gt;flash time 0, creation time 1048818644&lt;br /&gt;&lt;br /&gt;Committing configuration...done.&lt;br /&gt;&lt;br /&gt;setting passwd to defaults &amp;lt;-------FIRMWARE IMAGE RESETS PASSWORD TO BROCADE&lt;br /&gt;&lt;br /&gt;DEFAULTS&lt;br /&gt;&lt;br /&gt;Time Bomb has been set&lt;br /&gt;&lt;br /&gt;RESTRICTED ONE TIME USE&lt;br /&gt;&lt;br /&gt;Passwords have been reset. Please power cycle the switch.&lt;br /&gt;&lt;br /&gt;12 of 12 Fabric OS Password Recovery Notes&lt;br /&gt;&lt;br /&gt;Publication Number: 53-1000114-01&lt;br /&gt;&lt;br /&gt;- Sent using Google Toolbar"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6552116121740011419?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://community.brocade.com/docs/DOC-1644' title='Brocade Password Recovery'/><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6552116121740011419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6552116121740011419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6552116121740011419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6552116121740011419'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/12/brocade-password-recovery.html' title='Brocade Password Recovery'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-8333030288027485204</id><published>2010-12-02T14:09:00.005+01:00</published><updated>2010-12-21T10:53:15.525+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><title type='text'>Sample script to check wheter TPC performance collection is working well</title><content type='html'>checktime.sh&lt;br /&gt;"#!/bin/sh&lt;br /&gt;device=$1&lt;br /&gt;type=$2&lt;br /&gt;option=$3&lt;br /&gt;&lt;br /&gt;maxDiff=3600&lt;br /&gt;tpccli=/home482/TPC/cli/tpccli&lt;br /&gt;usage="Usage @0 [device] [fabric|subsys] -l"&lt;br /&gt;&lt;br /&gt;getDiff () {&lt;br /&gt; now=`date +%s`&lt;br /&gt; c_time=`date --date "$s_time" +%s`&lt;br /&gt; x_diff=$(($now - $c_time))&lt;br /&gt; if [ $x_diff -lt $maxDiff ]; then&lt;br /&gt;  str_diff="OK"&lt;br /&gt;  RC=0&lt;br /&gt; else&lt;br /&gt;  str_diff="Difference is greater than ${maxDiff} sec!! Diff: ${x_diff} sec"&lt;br /&gt;  RC=4&lt;br /&gt; fi&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;if [ $# -lt 2 ]; then&lt;br /&gt; echo $usage&lt;br /&gt; exit 1&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;case $type in&lt;br /&gt; subsys)&lt;br /&gt;  TT=`$tpccli lstime -subsys ${device} -level sample -ctype subsystem| tail -n 1 | sed -e "s/:/ /" -e "s/\./-/g" | awk '{print $1 " " $2 " " $3}'`&lt;br /&gt;  ;;&lt;br /&gt; fabric)&lt;br /&gt;  TT=`$tpccli lstime -fabric ${device} -level sample -ctype switch | tail -n 1 | sed -e "s/:/ /" -e "s/\./-/g" | awk '{print $1 " " $2 " " $3}'`&lt;br /&gt;  ;;&lt;br /&gt; *)&lt;br /&gt;  echo $usage&lt;br /&gt;  exit 1&lt;br /&gt;esac&lt;br /&gt;&lt;br /&gt; if [ "${TT}" != "" ]; then&lt;br /&gt; #echo ""&lt;br /&gt; #echo "***************************"&lt;br /&gt; echo "Current maximum difference is ${maxDiff} sec"&lt;br /&gt; echo $TT | while read d t dur&lt;br /&gt; do&lt;br /&gt;  s_time=`date --date "$d $t $dur sec"`&lt;br /&gt;  getDiff&lt;br /&gt;  printf "$device=&gt;${str_diff}\n"&lt;br /&gt;  if [ "${option}" == "-l" ]; then&lt;br /&gt;   printf  "Calculated Time: `date --date "$s_time" "+%F %H:%M"`\nCurrent time: `date "+%F %H:%M"`\nStarted at $d $t Duration:${dur} sec\n"&lt;br /&gt;  fi&lt;br /&gt; done&lt;br /&gt; else&lt;br /&gt;  echo ""&lt;br /&gt;  #echo "***************************"&lt;br /&gt;  echo "$device has no performance data!!"&lt;br /&gt;  RC=5&lt;br /&gt; fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;exit $RC"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Calling script:&lt;br /&gt;#!/bin/ksh&lt;br /&gt;&lt;br /&gt;_tmp=.checktime.res&lt;br /&gt;&lt;br /&gt;echo "Checking performance monitors ..."&lt;br /&gt;cat $TPCCLIHOME/devices | while read device&lt;br /&gt; do&lt;br /&gt;  sh gettime ${device} &gt; $_tmp&lt;br /&gt;  if [ $? -gt 3 ]; then&lt;br /&gt;   cat $_tmp&lt;br /&gt;  else&lt;br /&gt;   printf " `echo ${device} | cut -d " " -f 1` "&lt;br /&gt;  fi&lt;br /&gt; done&lt;br /&gt;&lt;br /&gt;devices file format:&lt;br /&gt;#device [subsys|fabric]&lt;br /&gt;ds8k subsys&lt;br /&gt;sanswitch1 fabric&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-8333030288027485204?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/8333030288027485204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=8333030288027485204' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8333030288027485204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8333030288027485204'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/12/sample-script-to-check-wheter-tpc.html' title='Sample script to check wheter TPC performance collection is working well'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-389521820169494453</id><published>2010-10-22T09:07:00.000+02:00</published><updated>2010-10-22T09:07:24.289+02:00</updated><title type='text'>Disk I/O and the Network | AIX | IBM Systems Magazine</title><content type='html'>&lt;a href="http://www.ibmsystemsmag.com/aix/enewsletterexclusive/34867p1.aspx"&gt;Disk I/O and the Network | AIX | IBM Systems Magazine&lt;/a&gt;: "Disk I/O&lt;br /&gt;&lt;br /&gt;Many of the most common performance problems are related to I/O issues. In particular, data layout can affect performance more than any I/O tunable the administrator can set. Since changing these later is extremely painful, it’s important to plan in advance to avoid these problems.&lt;br /&gt;&lt;br /&gt;The trend in the industry right now is to provide fewer, larger hdisks to the server. For example, the server may be given one 500 GB hdisk that’s spread across several disks in the disk subsystem, rather than being given 10, 50 GB or five 100 GB hdisks. However, I/O performance depends on bandwidth, not size. While that data may be spread across multiple disks in the back end, this doesn’t help with queuing in the front end. At the server, the hdisk driver has an in-process and a wait queue. Once an I/O is built in the JFS2 buffer, it gets queued to the LUN (hdisk). Queue_depth for an hdisk (LUN) represents the number of in-flight I/Os that can be outstanding for an hdisk at any given time.&lt;br /&gt;&lt;br /&gt;The in-process queue for the hdisk can contain up to queue-depth I/Os and the hdisk driver submits the I/Os to the adapter driver. Why is this important? If your data’s striped by LVM across five hdisks then you can have more I/Os in process at the same time. With one big hdisk, you’ll be queuing. Multipath I/O drivers such as subsystem device driver (SDD) won’t submit more than queue_depth I/Os to an hdisk, which can affect performance. You either need to increase queue_depth or disable that limit. In SDD, use the 'datapath qdepth disable' command.&lt;br /&gt;&lt;br /&gt;Some vendors do a nice job of setting the queue_depth, but if you’re using large logical-unit numbers from multiple disks in the back end, then you’ll want to grow this. You can use the iostat -D or the sar -d commands to figure this out. Interactive nmon also has a -D option, which lets you monitor sqfull as well. If you’re using sddpcm, then you can use 'pcmpath query devstats' to monitor sqfull and 'pcmpath query adaptstats' to monitor adapter queuing.&lt;br /&gt;&lt;br /&gt;In particular, look at the avgsqsz, avgwqsz and sqfull fields to determine if you need to increase queue_depth. Don’t increase queue_depth beyond the disk manufacturer’s recommendations. lsattr -El hdisk? shows the current queue_depth setting. queue_depth is a disruptive change and requires a reboot.&lt;br /&gt;&lt;br /&gt;For Fibre Channel, the adapter also has an in-process queue, which can hold up to num_cmd_elems of I/Os. The adapter submits the I/Os to the disk subsystem and it uses direct memory access (DMA) to perform the I/O. You may need to consider changing two settings on the adapter. By default num_cmd_elems is set to 200 and max_xfer_size is set to 0x100000. The latter equates to a DMA size of 16 MB. For a heavy I/O load, I increase the DMA to 0x200000 (128 MB) and I’ve set num_cmd_elems as high as 2,048, although I normally start at 1,024. This has to be done before the hdisks, etc., are assigned or you’ll have to rmdev them all to set these values. lsattr -El fcs? shows the current settings. Before changing these, check with your disk vendor. The fcstat command can be used to monitor these. Look for entries like:&lt;br /&gt;&lt;br /&gt;FC SCSI Adapter Driver Information&lt;br /&gt; No DMA Resource Count: 0              &lt;br /&gt; No Adapter Elements Count: 2567           &lt;br /&gt; No Command Resource Count: 34114051 &lt;br /&gt;&lt;br /&gt;In the above, it’s clear that num_cmd_elems isn’t high enough and that the DMA area also needs increasing. This is a disruptive change that requires a reboot.&lt;br /&gt;&lt;br /&gt;When using VIO servers, max_xfer_size and num_cmd_elems should be set on the VIO servers and, if using N_Port ID Virtualization (NPIV), they’ll also need to be set on the NPIV client LPARs. Don’t set the values on the NPIV client LPAR higher than the VIO servers; I tried this and my LPAR wouldn’t boot, which was probably lucky, as I am sure there would have been overruns."&lt;br /&gt;&lt;a id="publishButton" class="cssButton" href="javascript:void(0)" target="" onclick="if (this.className.indexOf(&amp;quot;ubtn-disabled&amp;quot;) == -1) {var e = document['stuffform'].publish;(e.length) ? e[0].click() : e.click(); if (window.event) window.event.cancelBubble = true; return false;}"&gt;&lt;div class="cssButtonOuter"&gt;&lt;div class="cssButtonMiddle"&gt;&lt;div class="cssButtonInner"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-389521820169494453?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.ibmsystemsmag.com/aix/enewsletterexclusive/34867p1.aspx' title='Disk I/O and the Network | AIX | IBM Systems Magazine'/><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/389521820169494453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=389521820169494453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/389521820169494453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/389521820169494453'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/10/disk-io-and-network-aix-ibm-systems.html' title='Disk I/O and the Network | AIX | IBM Systems Magazine'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5348631079938473082</id><published>2010-10-13T14:24:00.003+02:00</published><updated>2010-10-13T14:34:05.849+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fc'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tape'/><title type='text'>Linux FC tape devices persistent binding</title><content type='html'>&lt;span style="font-weight: bold;"&gt;udevinfo -a -p $(udevinfo -q path -n /dev/IBMtape0)&lt;/span&gt;&lt;br /&gt;looking at device '/class/lin_tape/IBMtape0':&lt;br /&gt;KERNEL=="IBMtape0"&lt;br /&gt;SUBSYSTEM=="lin_tape"&lt;br /&gt;SYSFS{sys_encryption_write}=="2"&lt;br /&gt;SYSFS{sys_encryption_proxy}=="1"&lt;br /&gt;SYSFS{dev}=="253:0"&lt;br /&gt;looking at device&lt;br /&gt;'/devices/pci0000:00/0000:00:03.0/0000:15:00.1/host6/rport-6:0-0/target6:0:0/6:0:0&lt;br /&gt;:0':&lt;br /&gt;ID=="6:0:0:0"&lt;br /&gt;BUS=="scsi"&lt;br /&gt;DRIVER=="lin_tape"&lt;br /&gt;SYSFS{primary_path}=="NA"&lt;br /&gt;SYSFS{ww_port_name}=="0x500507630F810916"&lt;br /&gt;SYSFS{ww_node_name}=="0x500507630F010916"&lt;br /&gt;SYSFS{serial_num}=="000001327093"&lt;br /&gt;SYSFS{rev}=="268F"&lt;br /&gt;SYSFS{model}=="03592E06 "&lt;br /&gt;SYSFS{vendor}=="IBM&lt;br /&gt;&lt;br /&gt;defining rules&lt;br /&gt;BUS=="scsi", KERNEL=="IBMtape[0-9]", SYSFS{serial_num}=="000001327093",&lt;br /&gt;SYSFS{ww_port_name}=="0x500507630F410916", SYMLINK+="tape0"&lt;br /&gt;BUS=="scsi", KERNEL=="IBMtape[0-9]n", SYSFS{serial_num}=="000001327093",&lt;br /&gt;SYSFS{ww_port_name}=="0x500507630F410916", SYMLINK+="tape0n"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5348631079938473082?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5348631079938473082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5348631079938473082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5348631079938473082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5348631079938473082'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/10/linux-fc-tape-devices-persistent.html' title='Linux FC tape devices persistent binding'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1297533811421078565</id><published>2010-10-05T14:58:00.006+02:00</published><updated>2010-10-05T15:06:29.792+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='Brocade'/><title type='text'>How to find brocade switch model type based on switchshow output.</title><content type='html'>The following table lists Brocade switch type codes as they appear in Command-Line Interface (CLI) command output and their corresponding Brocade model names. The switch type is a field (switchType) displayed in the output of the switchShow command. When you are gathering information for your switch support provider, you may be asked to provide the switch name (model). If you do not know the model, you can use this table to map the switch type to the model.&lt;br /&gt;NOTE: Switch type output displays these values with 1.x for the Brocade 1000 family, 2.x for Brocade 2800, and so on. The "x" value refers to motherboard revision level.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Switch Type  Switch Name&lt;/span&gt;&lt;br /&gt;1 Brocade 1000 Switches&lt;br /&gt;2,6 Brocade 2800 Switch&lt;br /&gt;3 Brocade 2100, 2400 Switches&lt;br /&gt;4 Brocade 20x0, 2010, 2040, 2050 Switches&lt;br /&gt;5 Brocade 22x0, 2210,2240, 2250 Switches&lt;br /&gt;7 Brocade 2000 Switch&lt;br /&gt;9 Brocade 3800 Switch&lt;br /&gt;10 Brocade 12000 Director&lt;br /&gt;12 Brocade 3900 Switch&lt;br /&gt;16 Brocade 3200 Switch&lt;br /&gt;17 Brocade 3800VL&lt;br /&gt;18 Brocade 3000 Switch&lt;br /&gt;21 Brocade 24000 Director&lt;br /&gt;22 Brocade 3016 embedded Blade Switch&lt;br /&gt;23 8Gbit 10-port embedded fabric switch&lt;br /&gt;26 Brocade 3850 Switch&lt;br /&gt;27 Brocade 3250 Switch&lt;br /&gt;29 Brocade 4012 EmbeddedBlade Switch&lt;br /&gt;32 Brocade 4100 Switch&lt;br /&gt;33 Brocade 3014 Switch&lt;br /&gt;34 Brocade 200E Switch&lt;br /&gt;36 Brocade FR4-18i DirectorBlade&lt;br /&gt;37 Brocade 4020 Embedded Blade Switch&lt;br /&gt;38 Brocade 7420 SAN Router&lt;br /&gt;40 Fibre Channel Routing (FCR) Front Domain&lt;br /&gt;41 Fibre Channel Routing (FCR) Xlate Domain&lt;br /&gt;42 Brocade 48000 Director&lt;br /&gt;43 Brocade 4024 Embedded Blade Switch&lt;br /&gt;44 Brocade 4900 Switch&lt;br /&gt;45 Brocade 4016 Embedded Blade Switch&lt;br /&gt;46 Brocade 7500 Switch&lt;br /&gt;47 Brocade FC4-16IP Director Blade&lt;br /&gt;50 Brocade 4GB FC Port Blade&lt;br /&gt;51 Brocade 4018 Embedded Blade Switch&lt;br /&gt;55 Brocade FA4-18i Extension Director Blade&lt;br /&gt;55,2 Brocade 7600 Switch&lt;br /&gt;58 Brocade 5000 Switch&lt;br /&gt;62 Brocade DCX Backbone&lt;br /&gt;63 Brocade 8Gb Backbone Core Fabric Switch&lt;br /&gt;64 Brocade 5300 Switch&lt;br /&gt;66 Brocade 5100 Switch&lt;br /&gt;67 Brocade Encryption Switch&lt;br /&gt;68 Brocade 8Gb 16 FC 2 GigE ports Director Encryption Blade&lt;br /&gt;69 Brocade 5410 Blade&lt;br /&gt;70 Brocade 8GB 10 Port Embedded Fabric Switch&lt;br /&gt;71 Brocade 300 Switch&lt;br /&gt;72 Brocade 5480 Embedded Blade Switch&lt;br /&gt;75 Brocade M5424 Embedded Blade Switch&lt;br /&gt;76,6 Brocade 8000 FCoE Switch&lt;br /&gt;77,3 Brocade DCX-4S&lt;br /&gt;82 Brocade 8Gb 24-port Embedded Blade Switch&lt;br /&gt;83 Brocade 16-FC port,&lt;br /&gt;6-GE port, auto sensing 1, 2, 4 or 8Gbit Switch&lt;br /&gt;86 Brocade 8Gbit 26-port embedded Switch&lt;br /&gt;88 Brocade 10Gb 24 GigE ports DCE Blade&lt;br /&gt;89 Brocade 8Gb 12 FC, 1Gb 10 GigE FCIP Blade, 10Gb 2 GigE ports FCR&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;source &lt;a href="http://community.brocade.com/docs/DOC-1643"&gt;brocade&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1297533811421078565?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1297533811421078565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1297533811421078565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1297533811421078565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1297533811421078565'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/10/how-to-find-brocade-switch-model-type.html' title='How to find brocade switch model type based on switchshow output.'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-9024943039019264841</id><published>2010-08-04T11:56:00.002+02:00</published><updated>2010-08-04T12:00:43.743+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gpfs'/><title type='text'>GPFS portability layer compile fals Part II.</title><content type='html'>I tried to compile the portability layer on Centos (RedHat) but the "make Autoconfig" shows the following message:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;"Cannot find a valid kernel include dir"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The full message is:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;[root@gpfs02 src]# make Autoconfig&lt;br /&gt;cd /usr/lpp/mmfs/src/config; ./configure --genenvonly; /usr/bin/cpp -P def.mk.proto &gt; ./def.mk; exit $? || exit 1&lt;br /&gt;Cannot find a valid kernel include dir&lt;br /&gt;def.mk.proto:12:19: error: env.mcr: No such file or directory&lt;br /&gt;make: *** [Autoconfig] Error 1&lt;br /&gt;&lt;/span&gt;[root@gpfs02 src]# &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This error message means that the it cannot read the version.h file under the defined module library dierctory. This file is located in the kernel build directory. After I installed the kernel-devel-2.6.18-164.el5.x86_64.rpm package the build was successful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-9024943039019264841?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/9024943039019264841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=9024943039019264841' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/9024943039019264841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/9024943039019264841'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/08/gpfs-portability-layer-compile-fals.html' title='GPFS portability layer compile fals Part II.'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2887774113935127849</id><published>2010-08-04T10:49:00.001+02:00</published><updated>2010-08-04T10:51:44.062+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpm'/><category scheme='http://www.blogger.com/atom/ns#' term='rhel'/><category scheme='http://www.blogger.com/atom/ns#' term='yum'/><title type='text'>Centos RHEL WHATPROVIDES</title><content type='html'>I found a usefull option to yum called 'whatprovides'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# yum whatprovides libstdc++.so.5 &lt;br /&gt;Loaded plugins: rhnplugin, security&lt;br /&gt;...&lt;br /&gt;compat-libstdc++-33-3.2.3-61.i386 : Compatibility standard C++ libraries&lt;br /&gt;Matched from:&lt;br /&gt;Other       : Provides-match: libstdc++.so.5&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2887774113935127849?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2887774113935127849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2887774113935127849' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2887774113935127849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2887774113935127849'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/08/centos-rhel-whatprovides.html' title='Centos RHEL WHATPROVIDES'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2895071411225862972</id><published>2010-07-14T15:00:00.002+02:00</published><updated>2010-07-14T15:04:32.541+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><title type='text'>DB2 instance wont start at system startup.</title><content type='html'>The db2 instance wont start at boot but the AUTOSTART=YES is set.&lt;br /&gt;Problem:&lt;br /&gt;Missing fmc section from inittab.&lt;br /&gt;Resolution:&lt;br /&gt; db2fmcu -u -p /opt/IBM/db2/V9.5/bin/db2fmcd&lt;br /&gt;This command set the appropriate settings in inittab:&lt;br /&gt;#lsitab "fmc"&lt;br /&gt;#fmc:2:respawn:/opt/IBM/db2/V9.5/bin/db2fmcd #DB2 Fault Monitor Coordinator&lt;br /&gt;&lt;br /&gt;Detailed settings:&lt;br /&gt;&lt;br /&gt;"Configuring DB2 fault monitor using db2fmc and system commands&lt;br /&gt;&lt;br /&gt;You can configure the DB2® fault monitor using the DB2 Fault Monitor Controller Utility (FMCU) command db2fmcu or system commands.&lt;br /&gt;&lt;br /&gt;Here are some examples of using db2fmcu and system commands to configure the fault monitor:&lt;br /&gt;&lt;br /&gt;Example 1: Prevent FMC from being launched&lt;br /&gt;&lt;br /&gt;    You can prevent the FMC from being launched by using the DB2 Fault Monitor Controller Utility (FMCU). The FMCU must be run as root because it accesses the system's inittab file. To block the FMC from being run, type the following command as root:&lt;br /&gt;&lt;br /&gt;       db2fmcu -d&lt;br /&gt;&lt;br /&gt;    Note: If you apply a DB2 Data Server fix pack this will be reset so that the inittab will again be configured to include the FMC. To prevent the FMC from being launched after you have applied a fix pack, you must reissue the above command.&lt;br /&gt;Example 2: Include FMC to be launched&lt;br /&gt;&lt;br /&gt;    To reverse the db2fmcu -d command and reconfigure the inittab to include the FMC, type the following command:&lt;br /&gt;&lt;br /&gt;       db2fmcu -u -p  &lt;fullpath&gt;&lt;br /&gt;&lt;br /&gt;    where &lt;fullpath&gt; is the complete path to the db2fmcd object, for example /opt/IBM/db2/bin/db2fmcd.&lt;br /&gt;Example 3: automatically start the DB2 database manager instance&lt;br /&gt;&lt;br /&gt;    You can also enable FMC to automatically start the instance when the system is first booted. To enable this feature for instance DB2INST1, type the following command:&lt;br /&gt;&lt;br /&gt;       db2iauto -on db2inst1&lt;br /&gt;&lt;br /&gt;Example 4: disable automatically starting the instance&lt;br /&gt;&lt;br /&gt;    To turn off the autostart behaviour, type the following command:&lt;br /&gt;&lt;br /&gt;       db2iauto -off db2inst1&lt;br /&gt;&lt;br /&gt;Example 5: prevent fault monitor processes from being launched&lt;br /&gt;&lt;br /&gt;    You can also prevent fault monitor processes from being launched for a specific instances on the system by changing a field in the global registry record for the instance. To change the global registry field to disable fault monitors for instance DB2INST1, type the following command as root:&lt;br /&gt;&lt;br /&gt;       db2greg -updinstrec instancename=db2inst1!startatboot=0&lt;br /&gt;&lt;br /&gt;    To reverse this command and re-enable fault monitors for instance DB2INST1, type the following command as root:&lt;br /&gt;&lt;br /&gt;       db2greg -updinstrec instancename=db2inst1!startatboot=1"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2895071411225862972?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2895071411225862972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2895071411225862972' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2895071411225862972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2895071411225862972'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/07/db2-instance-wont-start-at-system.html' title='DB2 instance wont start at system startup.'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6705223129674149349</id><published>2010-07-14T12:16:00.004+02:00</published><updated>2010-07-14T12:28:02.432+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='filesystem'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><category scheme='http://www.blogger.com/atom/ns#' term='jfs2'/><title type='text'>JFS2 filesystem is clean but won't be mounted</title><content type='html'>I faced with this problem with AIX 5.2. &lt;br /&gt;The customer couldn't kill the process that used a filesystem. After a restart the they could not mount this fs. The error message was like this:&lt;br /&gt;  "...failure replaying log for ..."&lt;br /&gt;  " ..media is not formatted or format is not correct"&lt;br /&gt;&lt;br /&gt;This is a known problem documented in the following APAR:&lt;br /&gt;"IY60872: MOUNT OF JFS2 FILESYSTEM FAILS&lt;br /&gt;      fsck runs and claims a clean JFS2 filesystem.  When the mount&lt;br /&gt;      of the file-system is attempted it fails with an error message&lt;br /&gt;      about "Unformatted or incompatible media"&lt;br /&gt;&lt;br /&gt;Problem summary&lt;br /&gt;      fsck runs and claims a clean JFS2 filesystem.  When the mount&lt;br /&gt;      of the filesystem is attempted it fails with an error message&lt;br /&gt;      about "Unformatted or incompatible media"&lt;br /&gt;Problem conclusion&lt;br /&gt;      When stale log pages or I/O errors are detected in&lt;br /&gt;      logredo make sure log is reformatted in all cases."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Another usefull IBM site &lt;a href="http://www-01.ibm.com/support/docview.wss?uid=isg3T1000156"&gt;here&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Problem resolultion:&lt;br /&gt;The file-system log volume was used by only this filesystem therefore we could use the "logform" command to reformat the log.&lt;br /&gt;&lt;br /&gt;After logform and another fsck the mount was succesful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6705223129674149349?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6705223129674149349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6705223129674149349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6705223129674149349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6705223129674149349'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/07/jfs2-filesystem-is-clean-but-wont-be.html' title='JFS2 filesystem is clean but won&apos;t be mounted'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-8980022209721232962</id><published>2010-07-05T14:16:00.001+02:00</published><updated>2010-07-05T14:18:54.357+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='DS4000'/><category scheme='http://www.blogger.com/atom/ns#' term='storage'/><title type='text'>Numeric display diagnostic codes DS 4000</title><content type='html'>Value Controller State Description&lt;br /&gt;L0 Suspended Mismatched controller board ID&lt;br /&gt;L1 Suspended Missing interconnect canister&lt;br /&gt;L2 Suspended Persistent memory errors&lt;br /&gt;L3 Suspended Persistent hardware errors&lt;br /&gt;L4 Suspended Persistent data protection errors&lt;br /&gt;L5 Suspended ACS failure&lt;br /&gt;L6 Suspended Unsupported host card&lt;br /&gt;L7 Suspended Submodel identifier not set or mismatched&lt;br /&gt;L8 Suspended Memory configuration error&lt;br /&gt;L9 Suspended Link speed mismatch&lt;br /&gt;LA Suspended Reserved&lt;br /&gt;LB Suspended Host card configuration error&lt;br /&gt;LC Suspended Persistent cache backup configuration error&lt;br /&gt;LD Suspended Mixed cache memory DIMMs&lt;br /&gt;LE Suspended Uncertified cache memory DIMM sizes&lt;br /&gt;LF Suspended Lockdown with limited SYMbol support&lt;br /&gt;LH Suspended Controller firmware mismatch&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-8980022209721232962?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/8980022209721232962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=8980022209721232962' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8980022209721232962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8980022209721232962'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/07/numeric-display-diagnostic-codes-ds.html' title='Numeric display diagnostic codes DS 4000'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-8427469230230640887</id><published>2010-07-05T13:32:00.001+02:00</published><updated>2010-07-05T13:34:22.066+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='DS4000'/><category scheme='http://www.blogger.com/atom/ns#' term='storage'/><title type='text'>DS drive migration changes</title><content type='html'>"There is no need to verify drive migration enable settings in storage&lt;br /&gt;expansion enclosures with controller firmware level 7.xx or later and Storage&lt;br /&gt;Manager software version 10.xx or later"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hard Disk Drive and Storage Expansion&lt;br /&gt;Enclosure Installation and Migration Guide&lt;br /&gt;Chapter 4 , Activity 4&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-8427469230230640887?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/8427469230230640887/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=8427469230230640887' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8427469230230640887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/8427469230230640887'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/07/ds-drive-migration-changes.html' title='DS drive migration changes'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-223776813797269850</id><published>2010-06-22T14:26:00.003+02:00</published><updated>2010-06-22T14:32:57.992+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cifs'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><title type='text'>Fedora 13 : no mount.cifs found!</title><content type='html'>After I upgraded my fedora12 to 13 I've got this error ever I try to mount my samba share:&lt;br /&gt;"CIFS VFS: cifs_mount failed w/return code = -22"&lt;br /&gt;&lt;br /&gt;I found this message in the strace output:&lt;br /&gt;stat64("/sbin/mount.cifs", 0xbf9133a8)  = -1 ENOENT (No such file or directory)&lt;br /&gt;&lt;br /&gt;`locate mount.cifs` didn't find the mount.cifs program.&lt;br /&gt;&lt;br /&gt;Solution:&lt;br /&gt;You have to install the following package to make cifs-mount working:&lt;br /&gt;cifs-utils-4.5-2.fc13.i686&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-223776813797269850?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/223776813797269850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=223776813797269850' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/223776813797269850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/223776813797269850'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/06/fedora-13-no-mountcifs-found.html' title='Fedora 13 : no mount.cifs found!'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6217614785375560473</id><published>2010-06-22T14:21:00.000+02:00</published><updated>2010-06-22T14:22:20.733+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='stuff'/><title type='text'>Useful stuffs : LINUX</title><content type='html'>strace - trace system calls and signals&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6217614785375560473?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6217614785375560473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6217614785375560473' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6217614785375560473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6217614785375560473'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/06/useful-stuffs-linux.html' title='Useful stuffs : LINUX'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-465269006444308353</id><published>2010-06-18T14:05:00.001+02:00</published><updated>2010-06-18T14:05:27.900+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='macbook'/><title type='text'>MACbook EFI</title><content type='html'>[root@macko ~]# gptsync /dev/sda&lt;br /&gt;&lt;br /&gt;Current GPT partition table:&lt;br /&gt; #      Start LBA      End LBA  Type&lt;br /&gt; 1             35       409633  EFI System (FAT)&lt;br /&gt; 2         409634    117209121  Linux LVM&lt;br /&gt;&lt;br /&gt;Current MBR partition table:&lt;br /&gt; # A    Start LBA      End LBA  Type&lt;br /&gt; 1              1           34  ee  EFI Protective&lt;br /&gt; 2 *           35       409633  83  Linux&lt;br /&gt; 3         409634    117209121  8e  Linux LVM&lt;br /&gt;&lt;br /&gt;Status: Analysis inconclusive, will not touch this disk.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-465269006444308353?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/465269006444308353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=465269006444308353' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/465269006444308353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/465269006444308353'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/06/macbook-efi.html' title='MACbook EFI'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2751617701102763203</id><published>2010-05-10T17:11:00.003+02:00</published><updated>2010-05-10T17:16:04.843+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='X'/><title type='text'>X forward after "su"</title><content type='html'>I found a good article about, how to prevent the "loss" of X forward after su to another user.&lt;br /&gt;&lt;br /&gt;"X authentication is based on cookies -- secret little pieces of random data that only you and the X server know... So, you need to let the other user in on what your cookie is. One way to do this is as follows:&lt;br /&gt;Before you issue the su or sudo (but after having ssh'ed into the remote system), request the cookie for the current DISPLAY that's connecting to your X server:&lt;br /&gt;&lt;br /&gt;$ xauth list&lt;br /&gt;You'll get something like&lt;br /&gt;&lt;br /&gt;somehost.somedomain:10 mit-magic-cookie-1 4d22408a71a55b41ccd1657d377923ae&lt;br /&gt;&lt;br /&gt;Then, after having done su, tell the new user what the cookie is:&lt;br /&gt;&lt;br /&gt;$ xauth add somehost.somedomain:10 MIT-MAGIC-COOKIE-1 4d22408a71a55b41ccd1657d377923ae&lt;br /&gt;&lt;br /&gt;(just copy'n-paste the output of the above 'xauth list' onto 'xauth add') That's it. Now, you _should_ be able to start any X application.)"&lt;br /&gt;&lt;br /&gt;Another pretty trick:&lt;br /&gt;xauth merge /home/user/.Xauthority&lt;br /&gt;where /home/user is the username with made the ssh connection before "su"&lt;br /&gt; &lt;br /&gt;Checked, It works.&lt;br /&gt;&lt;br /&gt;Thanks&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2751617701102763203?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2751617701102763203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2751617701102763203' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2751617701102763203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2751617701102763203'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/05/x-forward-after-su.html' title='X forward after &quot;su&quot;'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-3174189120759861999</id><published>2010-03-25T20:17:00.003+01:00</published><updated>2010-03-25T20:28:45.741+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='redhat'/><category scheme='http://www.blogger.com/atom/ns#' term='gpfs'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>GPFS portability layer compile fails on CentOS</title><content type='html'>When I tried to compile the GPFS v3.3 portability layer on CentOS 5.4 I`ve got the following errors:&lt;br /&gt;&lt;br /&gt;[root@gpfsnode2 src]# make Autoconfig&lt;br /&gt;........&lt;br /&gt;........&lt;br /&gt;lines ommited&lt;br /&gt;........&lt;br /&gt;Invoking Kbuild...&lt;br /&gt;make[2]: Entering directory `/usr/src/kernels/2.6.18-164.15.1.el5-PAE-i686'&lt;br /&gt;  LD      /usr/lpp/mmfs/src/gpl-linux/built-in.o&lt;br /&gt;  CC [M]  /usr/lpp/mmfs/src/gpl-linux/kdump-kern.o&lt;br /&gt;  CC [M]  /usr/lpp/mmfs/src/gpl-linux/kdump-stub.o&lt;br /&gt;  CC [M]  /usr/lpp/mmfs/src/gpl-linux/mmwrap.o&lt;br /&gt;  CC [M]  /usr/lpp/mmfs/src/gpl-linux/mmfsmod.o&lt;br /&gt;  CC [M]  /usr/lpp/mmfs/src/gpl-linux/cfiles_cust.o&lt;br /&gt;In file included from /usr/lpp/mmfs/src/gpl-linux/cfiles.c:56,&lt;br /&gt;                 from /usr/lpp/mmfs/src/gpl-linux/cfiles_cust.c:60:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/inode.c: In function ‘printInode’:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/inode.c:130: error: ‘struct inode’ has no member named ‘i_blksize’&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/inode.c: In function ‘cxiSetOSNode’:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/inode.c:346: error: ‘struct inode’ has no member named ‘i_blksize’&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/inode.c: In function ‘gpfs_i_getattr’:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/inode.c:1921: error: ‘struct inode’ has no member named ‘i_blksize’&lt;br /&gt;In file included from /usr/lpp/mmfs/src/gpl-linux/cfiles.c:59,&lt;br /&gt;                 from /usr/lpp/mmfs/src/gpl-linux/cfiles_cust.c:60:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c: In function ‘cxiFcntlLock’:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:714: error: too few arguments to function ‘posix_test_lock’&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:741: error: too few arguments to function ‘posix_test_lock’&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:768: error: implicit declaration of function ‘posix_block_lock’&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c: In function ‘cxiFlockToVFS’:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:975: error: ‘FL_LOCKD’ undeclared (first use in this function)&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:975: error: (Each undeclared identifier is reported only once&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:975: error: for each function it appears in.)&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c: In function ‘cxiVFSToFlock’:&lt;br /&gt;/usr/lpp/mmfs/src/gpl-linux/cxiSystem.c:1064: error: ‘FL_LOCKD’ undeclared (first use in this function)&lt;br /&gt;make[3]: *** [/usr/lpp/mmfs/src/gpl-linux/cfiles_cust.o] Error 1&lt;br /&gt;make[2]: *** [_module_/usr/lpp/mmfs/src/gpl-linux] Error 2&lt;br /&gt;make[2]: Leaving directory `/usr/src/kernels/2.6.18-164.15.1.el5-PAE-i686'&lt;br /&gt;make[1]: *** [modules] Error 1&lt;br /&gt;make[1]: Leaving directory `/usr/lpp/mmfs/src/gpl-linux'&lt;br /&gt;make: *** [Modules] Error 1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Resolution:&lt;br /&gt;GPFS is supported only on REDHAT distribution. BUT we now that CentOS has binary compatibilty with RHEL so change the /etc/redhat-release to the appropiate RHEL release and everything will work fine ..&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# cat /etc/redhat-release&lt;br /&gt;Red Hat Enterprise Linux Server release 5.4 (Tikanga)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-3174189120759861999?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/3174189120759861999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=3174189120759861999' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3174189120759861999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3174189120759861999'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/03/gpfs-portability-layer-compile-fails-on.html' title='GPFS portability layer compile fails on CentOS'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-4623174319824903617</id><published>2010-03-24T19:48:00.001+01:00</published><updated>2010-03-24T21:10:12.302+01:00</updated><title type='text'>HBA &amp; multipathing on RHEL</title><content type='html'>A usefull guide to &lt;br /&gt;HBA &amp; multipathing on RHEL&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Introduction&lt;br /&gt;The firmware gets updated by the driver or each time the "qla2300" or "qla2400" modules are loaded. Drivers need specific firmware versions. Nevertheless here's QLogic firmware repo : ftp.qlogic.com/outgoing/linux/firmware/&lt;br /&gt;&lt;br /&gt;Note. it's ok to have a more recent BIOS than firmware, but not the contrary.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Driver &amp; Firmware installation&lt;br /&gt;The driver should be included into the RHEL distribution. If not, use constructor's provided one e.g.,&lt;br /&gt;- HP Approved Software : driverdownloads.qlogic.com/QLogicDriverDownloads_UI/Product_detail.aspx?oemid=21&lt;br /&gt;- IBM Supported Software : driverdownloads.qlogic.com/QLogicDriverDownloads_UI/IBM.aspx?companyid=6&lt;br /&gt;make sure you have the gcc package,&lt;br /&gt;rpm -q gcc&lt;br /&gt;and install the driver,&lt;br /&gt;./INSTALL -h&lt;br /&gt;./INSTALL -f -a&lt;br /&gt;&lt;br /&gt;Note. make sure the default binary isn't a link to gcc 2.95 (as it's sometimes the case on Oracle installs),&lt;br /&gt;ll /usr/bin/gcc&lt;br /&gt;or check that the gcc version matches the distribution build,&lt;br /&gt;dmesg | head -1&lt;br /&gt;/usr/bin/gcc --version&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Driver, firmware and BIOS versions&lt;br /&gt;To check the driver and firmware versions,&lt;br /&gt;cat /proc/scsi/qla2300/1 | grep Firmware&lt;br /&gt;&lt;br /&gt;To check the BIOS version, either note it during machine's boot process, or use SANsurfer.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SANsurfer installation&lt;br /&gt;Install the SANsurfer agent on the server and use the SANsurfer Windows GUI to access it. Note. the default password for SANsurfer is "config".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;BIOS update&lt;br /&gt;SANsurfer allows you to update HBA's BIOS, FCode and NVRAM (if you do so, read multi-boot's image release notes).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Failover &amp; multipathing&lt;br /&gt;SANsurfer&lt;br /&gt;SANsurfer also allows you to configure failover and multipathing. It uses that module,&lt;br /&gt;qla2xxx_conf&lt;br /&gt;with that configuration file,&lt;br /&gt;/etc/hba.conf&lt;br /&gt;&lt;br /&gt;DS4000&lt;br /&gt;Prerequesties,&lt;br /&gt;yum install kernel-devel kernel-headers gcc&lt;br /&gt;yum update kernel&lt;br /&gt;sync&lt;br /&gt;reboot&lt;br /&gt;and check after boot,&lt;br /&gt;uname -r&lt;br /&gt;ls -l /lib/modules&lt;br /&gt;&lt;br /&gt;Install IBM RDAC,&lt;br /&gt;tar xvzf rdac-LINUX-09.03.0C05.0030-source.tar.gz&lt;br /&gt;cd linuxrdac-09.03.0C05.0030&lt;br /&gt;make clean&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;&lt;br /&gt;Edit GRUB,&lt;br /&gt;cd /boot/grub&lt;br /&gt;vi menu.lst&lt;br /&gt;add above the other titles (default=0),&lt;br /&gt;title CentOS (2.6.18-164.el5) with MPP support&lt;br /&gt;root (hd0,0)&lt;br /&gt;kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/&lt;br /&gt;initrd /mpp-2.6.18-164.el5.img&lt;br /&gt;N.B. change kernel package version accordingly&lt;br /&gt;&lt;br /&gt;Reboot and before Redhat starts up, connect the fiber channel cables,&lt;br /&gt;shutdown -r now&lt;br /&gt;once started check everything's fine,&lt;br /&gt;fdisk -l&lt;br /&gt;sfdisk -s&lt;br /&gt;Note. you should see one multipathed disk per LUN, as sdX.&lt;br /&gt;&lt;br /&gt;Redhat multipathing&lt;br /&gt;Prerequesties,&lt;br /&gt;rpm -q device-mapper-multipath&lt;br /&gt;&lt;br /&gt;Configure,&lt;br /&gt;cd /etc&lt;br /&gt;mv multipath.conf multipath.conf.dist&lt;br /&gt;sed '/^#/d; /^$/d' multipath.conf.dist &gt; multipath.conf&lt;br /&gt;vi multipath.conf&lt;br /&gt;change to blacklist local harddrive only,&lt;br /&gt;blacklist {&lt;br /&gt;devnode "sda"&lt;br /&gt;}&lt;br /&gt;enable,&lt;br /&gt;service multipathd start&lt;br /&gt;chkconfig multipathd on&lt;br /&gt;check everything's fine,&lt;br /&gt;fdisk -l&lt;br /&gt;sfdisk -s&lt;br /&gt;&lt;br /&gt;Note. SLES names it "multipath-tools"&lt;br /&gt;Note. the old method was to use an "md" raid device on both pathes, treating one path as spare,&lt;br /&gt;#mdadm --create -f -lmp -n2 -x1 /dev/md0 /dev/&lt;channela&gt; /dev/&lt;channelb&gt;&lt;br /&gt;DM Multipath : www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/en-US/RHEL510/DM_Multipath/index.html&lt;br /&gt;Note. make sure write cach mirroring is enabled (marc.info/?l=linux-lvm&amp;m=108690553031551&amp;w=2).&lt;br /&gt;&lt;br /&gt;EMC&lt;br /&gt;Use PowerPath. Also install "navihostagent" and "navicli".&lt;br /&gt;&lt;br /&gt;IBM ESS, DS600, DS9000&lt;br /&gt;Use "sdd" for failover and load balancing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;References&lt;br /&gt;Welcome to SPOCK : h20272.www2.hp.com/&lt;br /&gt;BIOS : en.wikipedia.org/wiki/BIOS&lt;br /&gt;Extensible Firmware Interface : en.wikipedia.org/wiki/Extensible_Firmware_Interface&lt;br /&gt;FCode : en.wikipedia.org/wiki/Open_Firmware#Advantages&lt;br /&gt;NVRAM : en.wikipedia.org/wiki/NVRAM&lt;br /&gt;Firmware : en.wikipedia.org/wiki/Firmware&lt;br /&gt;&lt;br /&gt;Multipathing with Qlogic HBAs - failover and LUN load balancing : twiki.cern.ch/twiki/bin/view/PSSGroup/Multipathing&lt;br /&gt;Device-mapper Resource Page : sources.redhat.com/dm/&lt;br /&gt;LVM2 Resource Page : sources.redhat.com/lvm2/&lt;br /&gt;&lt;br /&gt;[linux-lvm] LVM - Multipath / Failover : www.redhat.com/archives/linux-lvm/2003-September/thread.html#00160&lt;br /&gt;[linux-lvm] Multipath without round-robin? : www.redhat.com/archives/linux-lvm/2004-June/thread.html#00053&lt;br /&gt;How do I modify my modules.conf file so my external fiber channel disks stop showing up as /dev/sda and my internal drives as /dev/sdb? : kbase.redhat.com/faq/docs/DOC-8079&lt;br /&gt;How do I modify the /etc/modules.conf file? : kbase.redhat.com/faq/docs/DOC-6919&lt;br /&gt;&lt;br /&gt;How to setup / use multipathing on SLES : support.novell.com/techcenter/sdb/en/2005/04/sles_multipathing.html&lt;br /&gt;[suse-oracle] qla2xxx failover : lists.suse.com/archive/suse-oracle/2005-Apr/index.html#138&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-4623174319824903617?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/4623174319824903617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=4623174319824903617' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4623174319824903617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4623174319824903617'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/03/hba-multipathing-on-rhel.html' title='HBA &amp; multipathing on RHEL'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5327037782119658791</id><published>2010-03-24T19:42:00.001+01:00</published><updated>2010-03-24T19:43:49.156+01:00</updated><title type='text'>How to Connect to the DS4000 system using Hyperterm</title><content type='html'>I found a usefull guide to make reacheable a IBM ds3/4k storage if it have ip address other than default.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1.                  Attach the null modem serial cable to Controller A or Controller B&lt;br /&gt;&lt;br /&gt;If this is a system with a round serial port (DS3000’s &amp; DS4700), the serial adapter &amp; cable have IBM part numbers; 39M5942 – Adapter, 39M5908 – Cable&lt;br /&gt;&lt;br /&gt;2.                  Launch HyperTerm.&lt;br /&gt;&lt;br /&gt;Try to get HyperTerm baud rate to 38200 or 57600, 8, 1, None  (8 data, 1 stop, no parity)&lt;br /&gt;&lt;br /&gt;&gt;&gt; Rumor has it that using flow control other than "None" can cause HyperTerm lock ups when connected to DS4000 controllers.  This may be dependent on the version of  firmware (5.4 vs. 6.6 vs. 7.15).  Some of the documentation also has Xon/Xoff as the flow control protocol.&lt;br /&gt;&lt;br /&gt;3.                  Press &lt;CTL&gt; and &lt;BREAK&gt;   (you may have to keep doing this until you get a response)&lt;br /&gt;&lt;br /&gt;4.                  When you see "Press Space Bar within 5 Seconds To Set Baud rate,…" press the Space Bar.   Wait till you see that the Baud rate reports being set before going to step 5.&lt;br /&gt;&lt;br /&gt;5.                  Press &lt;CTL&gt; and &lt;BREAK&gt; once.&lt;br /&gt;&lt;br /&gt;6.                  When you see "Press Space Bar within 5 Seconds To Set Baud rate, or Press &lt;ESC&gt; To Exit To Shell", press &lt;ESC&gt;.&lt;br /&gt;&lt;br /&gt;7.                  You will now be prompted for the password infiniti&lt;br /&gt;&lt;br /&gt;For firmware versions 7.x and above (not the DS4300 in this example), there is a username/password combination instead of just the password.  The user name is “shellUsr”, and the password is “Wy3oo&amp;w4” (which is just up and the left of shellUsr).  Depending on the method of updating, I’ve seen the user name/password set to “shellUsr/infiniti” also.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Field Tip: If you cannot break into controller, the culprit is usually the cable.  Please ensure you have a 'null modem serial cable'&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Troubleshooting:  If you cannot break into the controller and you’re sure you have a null-modem serial cable, I find that re-booting my laptop resolves the problem.  Sometimes the COM1 port on your laptop gets hung.  This especially happens if you’ve been connecting and re-connecting to various serial ports.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Please follow the procedure outlined here exactly, because some commands that can be issued from the serial console can cause data loss.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;You will need one IP address for each controller.  Ctlr A __________   Ctlr B __________&lt;br /&gt;&lt;br /&gt;1.      Log into Controller A&lt;br /&gt;&lt;br /&gt;2.      Type netCfgSet. &lt;br /&gt;&lt;br /&gt;a.      This command will display each line, one line at a time. When each line is displayed, the cursor will be placed to the right of the current value waiting for user input. Entering a "Carriage Return" at the cursor will cause the current line to be skipped with no changes being made to its value. Entering a "." (period) at the prompt will cause the value of the current line to be reset to the factory default.  To change the value of a field, simply enter the new value at the cursor. Make sure to include the "." in IP addresses and to precede the Network Init Flags with "0x" if this value is to be changed. As a minimum requirement, four fields must have non-default values in order to grant a particular host access to a controller. These fields are titled:&lt;br /&gt;&lt;br /&gt;                                                                                      i.      "My IP Address",&lt;br /&gt;&lt;br /&gt;                                                                                    ii.      "Gateway IP Address"&lt;br /&gt;&lt;br /&gt;                                                                                  iii.      "Subnet Mask"&lt;br /&gt;&lt;br /&gt;3.      Repeat the process for Controller B&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;br /&gt;·        It is strongly recommended that during an initial configuration that all values be set to their default values using a ".", except for the three required settings&lt;br /&gt;&lt;br /&gt;·        Change Network Init Flag to 0x01 if using a static IP address (keep it at 0x00 if using DHCP or Bootp server).  In some HW versions of the DS4300, the default value is not 0x00 its 0x80, and in that case it should be set to 0x81, so the last digit is the key. &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Verify Network IP Settings&lt;br /&gt;&lt;br /&gt;Check settings using netCfgShow command via serial connection and/or Ping IP address from Command prompt.  netCfgShow will dump the following: &lt;br /&gt;&lt;br /&gt;-&gt; netCfgShow&lt;br /&gt;&lt;br /&gt;==== NETWORK CONFIGURATION ====&lt;br /&gt;&lt;br /&gt;Interface Name : dse0&lt;br /&gt;&lt;br /&gt;My Host Name : DS_a&lt;br /&gt;&lt;br /&gt;My IP Address : 100.100.100.236&lt;br /&gt;&lt;br /&gt;Server Host Name : host&lt;br /&gt;&lt;br /&gt;Server IP Address : 0.0.0.0&lt;br /&gt;&lt;br /&gt;Gateway IP Address : 100.100.100.9&lt;br /&gt;&lt;br /&gt;Subnet Mask : 255.255.255.0&lt;br /&gt;&lt;br /&gt;Network Init Flags : 0x01&lt;br /&gt;&lt;br /&gt;Network Mgmt Timeout : 30&lt;br /&gt;&lt;br /&gt;Shell Password : ************&lt;br /&gt;&lt;br /&gt;User Name : guest&lt;br /&gt;&lt;br /&gt;User Password : ************&lt;br /&gt;&lt;br /&gt;NFS Root Path : (null)&lt;br /&gt;&lt;br /&gt;NFS Group ID Number : 0&lt;br /&gt;&lt;br /&gt;NFS User ID Number: 0n.&lt;br /&gt;&lt;br /&gt;value = 27 = 0x1b&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Once this procedure is complete, you should be able to attach with the StorageManager, and proceed as expected.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-5327037782119658791?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/5327037782119658791/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=5327037782119658791' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5327037782119658791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/5327037782119658791'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/03/how-to-connect-to-ds4000-system-using.html' title='How to Connect to the DS4000 system using Hyperterm'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-3904436921421621351</id><published>2010-03-11T13:50:00.001+01:00</published><updated>2010-03-11T13:50:51.209+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><title type='text'>Forcing uninstall of TPC ca agent</title><content type='html'>./uninstall -W beanArguments.forceUninstall=true&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-3904436921421621351?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/3904436921421621351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=3904436921421621351' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3904436921421621351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3904436921421621351'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/03/forcing-uninstall-of-tpc-ca-agent.html' title='Forcing uninstall of TPC ca agent'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6747879128255065629</id><published>2010-02-25T13:20:00.008+01:00</published><updated>2010-02-25T14:04:53.295+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><category scheme='http://www.blogger.com/atom/ns#' term='clariion'/><title type='text'>TPC 4.1 with EMC Clariion</title><content type='html'>There isn't any publicly available step-by-step guide how to configure an oldy Clariion like FC4700 to use under TPC.&lt;br /&gt;So here comes..&lt;br /&gt;&lt;br /&gt;- Download  EMC Solutions Enabler v6.0.2. If you have access to EMC download links you are pretty lucky. I wasn't. I asked an EMC customer to download me the SE package.&lt;br /&gt;- It does not matter whether You use it under Linux or Windows&lt;br /&gt;- Start the installation process (under windows you have to start the \osl_cd\install_shield\runprog.exe)&lt;br /&gt;- Do not forget to check the "SMI Provider and cimserver" option on.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Mghmn4Se1G8/S4ZwB6pVpWI/AAAAAAAAFmo/NMd7lWGevqs/s1600-h/EMC_01.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 237px;" src="http://1.bp.blogspot.com/_Mghmn4Se1G8/S4ZwB6pVpWI/AAAAAAAAFmo/NMd7lWGevqs/s320/EMC_01.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5442160377948644706" /&gt;&lt;/a&gt;&lt;br /&gt;- Leave all options in default &lt;br /&gt;&lt;br /&gt;- After the install is successfully ended start the cimserver service manually or let the install to start it.&lt;br /&gt;- Open a command prompt and enable the BASE license with key you received from EMC.&lt;br /&gt; cd C:\Program Files\EMC\SYMCLI\bin&lt;br /&gt; symlmf&lt;br /&gt;- After the key successfully added you need authorize the symcli to the Clariion SPs &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;symcfg authorization add -host [ipadd] -username [username]  -password [password]&lt;/span&gt;&lt;br /&gt; where [host] is ip/name of the SP , [username] is the admin defined on Clariion&lt;br /&gt; First register SPA then SPB.&lt;br /&gt;&lt;br /&gt;- Them run command &lt;br /&gt;        &lt;span style="font-weight:bold;"&gt;symcfg discover -clariion -file [discovery_file] &lt;/span&gt;&lt;br /&gt;    where [discovery_file] is a file containing the IP address of SP A and SPB (both on the same line with ipaddress of SPA first, and separated by a space)&lt;br /&gt;- Confirm the CLARiiON is discovered with command:&lt;br /&gt;                 &lt;span style="font-weight:bold;"&gt;symcfg -clariion list&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Mghmn4Se1G8/S4Z0H9Vuj-I/AAAAAAAAFmw/Hcjyk6jfobU/s1600-h/emc_02.jpg"&gt;&lt;img style="float:center; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 102px;" src="http://2.bp.blogspot.com/_Mghmn4Se1G8/S4Z0H9Vuj-I/AAAAAAAAFmw/Hcjyk6jfobU/s320/emc_02.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5442164879797424098" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After all start to configure TPC CIMOM data source as usual&lt;br /&gt;Use /root/emc namespace and do not enter any username/pass. (if you want to use the default settings)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6747879128255065629?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6747879128255065629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6747879128255065629' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6747879128255065629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6747879128255065629'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/02/tpc-41-with-emc-clariion.html' title='TPC 4.1 with EMC Clariion'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Mghmn4Se1G8/S4ZwB6pVpWI/AAAAAAAAFmo/NMd7lWGevqs/s72-c/EMC_01.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-955364957497029264</id><published>2010-02-18T15:38:00.007+01:00</published><updated>2010-02-18T16:00:54.242+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><category scheme='http://www.blogger.com/atom/ns#' term='TIVOLI'/><title type='text'>Creating new GUID with tivguid</title><content type='html'>If you clone the AIX systems than the TivGUID will be same on all machines.&lt;br /&gt;To recreate a new guid use the&lt;br /&gt; /usr/tivoli/guid/tivguid command with -WRITE -NEW optins.&lt;br /&gt;You can check the new Guid by issuing the&lt;br /&gt; /usr/tivoli/guid/tivguid -show command.&lt;br /&gt;&lt;br /&gt;# /usr/tivoli/guid/tivguid -show&lt;br /&gt;Tivoli GUID utility - Version 1, Release 3, Level 0.&lt;br /&gt;(C) Copyright IBM Corporation 2002, 2004 All Rights Reserved.&lt;br /&gt;&lt;br /&gt;Guid:04.d8.5e.7e.38.8d.11.de.a1.bf.08.63.ac.10.cb.b4&lt;br /&gt;&lt;br /&gt;I've seen this error when tried to install the new TPC Storage Resource Agent on two remote AIX servers. The first install was success but the second failed with errors:&lt;br /&gt;&lt;br /&gt; NAD0124E: Failed to register Agent to Server.&lt;br /&gt; NAD0040E: Agent install exited with an error code: 45&lt;br /&gt;&lt;br /&gt;The two systems are clones of each others.&lt;br /&gt;After I generate a brand new GUID on the failing system the agent registration was success.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;IBM technote:&lt;br /&gt;The globally unique identifier (GUID) associates a client node with a host&lt;br /&gt;system. When you install the Tivoli software, the tivguid program is run to&lt;br /&gt;generate a GUID which is stored in the /etc/tivoli directory on a UNIX&lt;br /&gt;system. The GUID for a client node on the server can change if the host&lt;br /&gt;system machine is corrupted, if the file entry is lost, or if a user obtaines the&lt;br /&gt;same node name from different host systems. You can perform the&lt;br /&gt;following functions from the command line:&lt;br /&gt;&lt;br /&gt;- Create a new GUID&lt;br /&gt;- View the current GUID&lt;br /&gt;- Write a specific value&lt;br /&gt;&lt;br /&gt;Under AIX other tivguid related files are installed under&lt;br /&gt;/usr/tivoli/guid/. This files are installed with fileset tivoli.tivguid. There is&lt;br /&gt;a README.guid with additional information.&lt;br /&gt;&lt;br /&gt;Some useful TIVGUID commands :&lt;br /&gt;&lt;br /&gt;tivguid -show : shows current tivguid&lt;br /&gt;tivguid -create : generates a new tivguid if none exists&lt;br /&gt;tivguid -write : writes the guid&lt;br /&gt;tivguid -help : lists available commands&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-955364957497029264?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/955364957497029264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=955364957497029264' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/955364957497029264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/955364957497029264'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/02/creating-new-guid-with-tivguid.html' title='Creating new GUID with tivguid'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1960286465351713408</id><published>2010-02-15T15:04:00.003+01:00</published><updated>2010-02-15T15:36:02.550+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='svc'/><title type='text'>Migrating SAN booting Windows with SVC</title><content type='html'>I performed an SVC migration at the weekend. &lt;br /&gt;The official IBM dokumentation is not obvious. &lt;br /&gt;So I took some comment to the original instructions.&lt;br /&gt;&lt;br /&gt;The migration to IBM SVC is not a tricky rocket science work. But If you facing with Windows + SAN boot the process becomes hardener and longer than you expected.&lt;br /&gt;&lt;br /&gt;For successful migration you must have a lot of OS/machine reboot. So relax. You will need your patience!!&lt;br /&gt;&lt;br /&gt;Perform the following steps to migrate your existing SAN boot images:&lt;br /&gt;First of all: Do not install the SDDDSM driver before the migration. Leave everything unchanged. (only the SDD needs some configuration!) Just bring down the os and follow the IBM suggested way. (My comments are after the original instructions)&lt;br /&gt;&lt;br /&gt;   1. If the existing SAN boot images are controlled by an IBM® storage controller that uses SDD as the multipathing driver, you must use SDD v1.6 or higher. Run the SDD command datapath set bootdiskmigrate 2145 to prepare for image migration. See the IBM System Storage™ Multipath Subsystem Device Driver User's Guide for more information about this command.&lt;br /&gt;   2. Shut down the host.&lt;br /&gt;   3. Perform the following configuration changes on the storage controller:&lt;br /&gt;         1. Remove all the image-to-host mappings from the storage controller. &lt;span style="font-style:italic;"&gt;(Storage Controller = the original storage system .. FastT, EMC, DS .. etc.)&lt;/span&gt;&lt;br /&gt;         2. Map the existing SAN boot image and any other disks to the SAN Volume Controller. (Use the subsystem storage manager to perform the needed configurations)&lt;br /&gt;   4. Zone one port of each host bus adapter (HBA) to one of the SAN Volume Controller ports that is associated with the I/O group for the target image-mode VDisk.&lt;br /&gt;&lt;span style="font-style:italic;"&gt;(This means: create only ONE zone on only ONE SAN fabric. For example: Create a zone in SAN "A" like this: [SVCNODE1_HBA1] + [WINDOWS HOST HBA PORT 1])&lt;/span&gt;&lt;br /&gt;   5. Perform the following configuration changes on the SAN Volume Controller:&lt;br /&gt;         1. Create an image-mode VDisk for the managed disk (MDisk) that contains the SAN boot image. Use the MDisk unique identifier to specify the correct MDisk.&lt;span style="font-style:italic;"&gt; (You can start the migration also)&lt;/span&gt;&lt;br /&gt;         2. Create a host object and assign it to the HBA port that you zoned to the SAN Volume Controller port in step 4.&lt;span style="font-style:italic;"&gt; (You can assign all HOST ports. This does not matter)&lt;/span&gt;&lt;br /&gt;         3. Map the image mode VDisk to the host. For example, you might map the boot disk to the host with SCSI LUN ID 0.&lt;br /&gt;         4. Map the swap disk to the host, if required. For example, you might map the swap disk to the host with SCSI LUN ID 1. &lt;span style="font-style:italic;"&gt;(You can map all disk to the OS.)&lt;/span&gt;&lt;br /&gt;   6. Change the boot address of the host by performing the following steps:&lt;br /&gt;         1. Restart the host and open the BIOS utility of the host during the booting process. &lt;span style="font-style:italic;"&gt;(Use CTRL+Q if you use Qlogic and use CTRL+E if you use Emulex HBA)&lt;/span&gt;&lt;br /&gt;         2. Set the BIOS settings on the host to find the boot image at the worldwide port name (WWPN) of the node that is zoned to the HBA port. &lt;span style="font-style:italic;"&gt;(It is easy because this is the only port use can "see". Otherwise You made some mistake!)&lt;/span&gt;&lt;br /&gt;   7. Boot the host in single-path mode. &lt;span style="font-style:italic;"&gt;(It means simply boot the host. There isn't any Windows boot option called "single-path mode" ..")&lt;/span&gt;&lt;br /&gt;   8. Uninstall any multipathing driver that is not supported for SAN Volume Controller hosts that run the applicable Windows Server operating system.&lt;br /&gt;   9. Install a supported multipathing driver. (SDDSM. Before the SDDDSM install You have to install the suggested OS hotfixes. This can be do before the migration. It is also a time consuming process.)&lt;br /&gt;  10. Restart the host in single-path mode to ensure that the supported multipath driver was properly installed.&lt;br /&gt;  11. Zone each HBA port to one port on each SAN Volume Controller node.&lt;br /&gt;  12. Add HBA ports to the host object that you created in step 5.b.&lt;br /&gt;  13. Configure the HBA settings on the host by using the following steps:&lt;br /&gt;         1. Restart the host and open the host's BIOS utility during the booting process.&lt;br /&gt;         2. Ensure that all HBA ports are boot-enabled and can see both nodes in the I/O group that contains the SAN boot image. Configure the HBA ports for redundant paths.&lt;br /&gt;         3. Exit the BIOS utility and finish booting the host.&lt;br /&gt;  14. Map any additional VDisks to the host as required.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1960286465351713408?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1960286465351713408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1960286465351713408' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1960286465351713408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1960286465351713408'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/02/migrating-san-booting-windows-with-svc.html' title='Migrating SAN booting Windows with SVC'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-6964106218903497070</id><published>2010-02-11T10:58:00.000+01:00</published><updated>2010-02-11T11:03:32.515+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='SAN'/><category scheme='http://www.blogger.com/atom/ns#' term='Brocade'/><title type='text'>IBM / Brocade naming conventions</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Mghmn4Se1G8/S3PVwjEkGrI/AAAAAAAAFmg/OLvOGaNGQKE/s1600-h/ibmbrcd.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 241px;" src="http://4.bp.blogspot.com/_Mghmn4Se1G8/S3PVwjEkGrI/AAAAAAAAFmg/OLvOGaNGQKE/s320/ibmbrcd.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5436924205191142066" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-6964106218903497070?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/6964106218903497070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=6964106218903497070' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6964106218903497070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/6964106218903497070'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/02/ibm-brocade-naming-conventions.html' title='IBM / Brocade naming conventions'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Mghmn4Se1G8/S3PVwjEkGrI/AAAAAAAAFmg/OLvOGaNGQKE/s72-c/ibmbrcd.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-9145924435181733833</id><published>2010-02-01T16:13:00.000+01:00</published><updated>2010-02-01T16:14:07.913+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powerchute'/><category scheme='http://www.blogger.com/atom/ns#' term='ups'/><category scheme='http://www.blogger.com/atom/ns#' term='apc'/><title type='text'>PowerChute Network Shutdown System Requirements</title><content type='html'>Hardware Requirements:&lt;br /&gt;&lt;br /&gt;Smart-UPS w/ Smart Slot, Matrix, Symmetra or Silcon and either of the following:&lt;br /&gt;&lt;br /&gt;Web/SNMP Card (AP9606)&lt;br /&gt;Any of the Network Management Cards (AP9617, AP9618, AP9619, AP9630, 9631)&lt;br /&gt;&lt;br /&gt;Software Requirements:&lt;br /&gt;&lt;br /&gt;PowerChute Network Shutdown utilizes the following TCP/IP ports: tcp/udp 3052 and tcp/udp 80. Versions 2.2.3 utilizes port 6547 for instance 1, 6548 for instance 2, and 6549 for instance 3.&lt;br /&gt;&lt;br /&gt;Java Runtime Environment v1.2.2 or higher for PCNS 2.0.x&lt;br /&gt;Java Runtime Environment v1.4.2_02 or higher for PCNS 2.2.x&lt;br /&gt;&lt;br /&gt;A supported Java™ Runtime Environment (JRE) as listed in the Compatibility Chart for PCNS on the APC Web site&lt;br /&gt;http://www.apcc.com/tools/download/index.cfm?isocountrycode=US&amp;tsk=&lt;br /&gt;&lt;br /&gt;On Windows EXCEPT the Itanium and Server 2008 Server Core versions, PCNS has to determine whether it installs JRE or uses a version already installed on your system. If your JRE version is lower in number than the installation JRE, it installs the packaged JRE. If your JRE version is higher, PCNS uses your JRE version that is closest in number to the PCNS installation package (for example, if PCNS is packaged with JRE 5.0 Update 13 and you have JRE 5.0 Update 14 and 15, the installation program uses Update 14, not 15). Note that PCNS does NOT uninstall any version of JRE.&lt;br /&gt;&lt;br /&gt;On HP-UX, AIX, Solaris 10 for x64/ x86, NetWare, Mac OS X, and Windows Itanium/ Server 2008 Server Core, PCNS does NOT install JRE.&lt;br /&gt;&lt;br /&gt;On Linux, VMware, and SPARC versions of Solaris, PCNS gives you a choice whether or not to install JRE.&lt;br /&gt;&lt;br /&gt;Microsoft Internet Explorer v5.01 or higher&lt;br /&gt;&lt;br /&gt;Unix:&lt;br /&gt;&lt;br /&gt;Xwindows must be installed and running (non-rpm versions).&lt;br /&gt;&lt;br /&gt;Netware:&lt;br /&gt;&lt;br /&gt;Xserver must be running&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-9145924435181733833?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/9145924435181733833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=9145924435181733833' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/9145924435181733833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/9145924435181733833'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/02/powerchute-network-shutdown-system.html' title='PowerChute Network Shutdown System Requirements'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-4107036149671080808</id><published>2010-02-01T16:09:00.001+01:00</published><updated>2010-02-01T16:09:55.676+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powerchute'/><category scheme='http://www.blogger.com/atom/ns#' term='ups'/><category scheme='http://www.blogger.com/atom/ns#' term='apc'/><title type='text'>Powerchute Network Shutdown (PCNS) network checklist</title><content type='html'>The following steps should help establish communication between PCNS and the Network Management Card.&lt;br /&gt;&lt;br /&gt;1. Verify the version of PCNS that is running The most current version of PowerChute Network Shutdown can be downloaded from the site below: http://www.apcc.com/tools/download&lt;br /&gt;&lt;br /&gt;2. Confirm the type of Network Management Card being used along with the firmware type on the card. The Network Management Cards that are designed to work with PCNS are part numbers AP9606, AP9617, AP9618, AP9619, AP9630, and AP9631. The AP9605 and the AP9603 are older cards and will not work with PCNS.&lt;br /&gt;&lt;br /&gt;3: Check the network settings on the server running PCNS. Incorrect subnet mask or default gateway settings will cause communications issues even the PCNS can register with the card successfully during installation. For Unix server,use the command "#ifconfig -a" to display the network settings.You may also need to verify network settings in file /etc/networks if the server is running Solaris.&lt;br /&gt;&lt;br /&gt;4: Verify multiple PCNS install daemons are not running on the server. In this case, the PCNS client can't register with the network management card during installation. For Unix server, use the command "#ps -ef |grep java" to display java related daemon. Since PCNS is java based, all PCNS install daemons will be displayed in the list. Make sure that there is only one install daemon running.&lt;br /&gt;&lt;br /&gt;5. Verify that the PCNS service is started. If it is already started, try stopping the service and then restarting it again. Instructions for starting and stopping the PCNS service can be found in the Installation guide.&lt;br /&gt;&lt;br /&gt;6. Check the Network Management Card to see if the IP address of the PCNS client is listed under the PowerChute menu. If it is not, either add the PCNS client IP to the list, or make sure that the Network Management Card and the PCNS client are on the same segment. Otherwise, communication will not be possible.&lt;br /&gt;&lt;br /&gt;7. See if the customer has set up an Authentication Phrase on the Network Management Card. If so, have the customer reset the card to default except TCP/IP. This option can be found under the System&gt;Tools menu on the Network Management Card. Resetting to defaults with reset any configurations changes that the customer has made.&lt;br /&gt;&lt;br /&gt;8. Verify that the proper user name and password for the Network Management Card are being used and that the user name is 10 characters or less.&lt;br /&gt;&lt;br /&gt;9. Verify that there is a network connection between the PCNS client computer and the Network Management Card. Try accessing the Network Management Card from the PCNS client computer or try using the ping utility from the Network Management Card.&lt;br /&gt;&lt;br /&gt;10. Have the customer verify that ports 3052 and port 80 are open on their router or server. These two ports must be open for bi-directional communication. If the customer's router, firewall, or anti-virus software is blocking these ports, communication will be lost. If the ports are open, make sure that there are no other devices that could be using these ports.&lt;br /&gt;&lt;br /&gt;11. Check the IP address of the Network Management Card and make sure that it is the same address that PCNS is looking for. To check the IP address that PCNS is looking for, go under Communications. The IP addresses should match.&lt;br /&gt;&lt;br /&gt;12. Make sure that the customer doesn't have proxy settings set up on the server. To disable proxy, open up Internet Explorer. Go to Tools&gt;InternetOptions&gt;Connections&gt;LAN Settings. From here, make sure that Proxy is disabled (unchecked).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-4107036149671080808?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/4107036149671080808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=4107036149671080808' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4107036149671080808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4107036149671080808'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/02/powerchute-network-shutdown-pcns.html' title='Powerchute Network Shutdown (PCNS) network checklist'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-3449965068723184711</id><published>2010-01-28T13:51:00.000+01:00</published><updated>2010-01-28T13:52:25.677+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><category scheme='http://www.blogger.com/atom/ns#' term='cim'/><category scheme='http://www.blogger.com/atom/ns#' term='SMI-S'/><title type='text'>IBM Tape SMI-S agent settings</title><content type='html'>The SMI-S Agent follows the security settings of the Web server. When SSL is disabled, it listens on the standard CIM HTTP port 5988. When SSL is enabled, it uses the CIM HTTPS port 5989. When user security is enabled the CIMOM requires a Web user and password that are part of the Administrator or Monitor Roles. The SMI-S agent uses the namespace root/ibm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-3449965068723184711?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/3449965068723184711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=3449965068723184711' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3449965068723184711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3449965068723184711'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/01/ibm-tape-smi-s-agent-settings.html' title='IBM Tape SMI-S agent settings'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1450230176399728061</id><published>2010-01-22T11:59:00.003+01:00</published><updated>2010-01-22T12:02:54.956+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sap'/><category scheme='http://www.blogger.com/atom/ns#' term='robot'/><category scheme='http://www.blogger.com/atom/ns#' term='ITCAM'/><title type='text'>Recording an SAP® 6.2 GUI Transaction with Rational Robot</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.ibm.com/developerworks/tivoli/library/t-rationalrobot/images/SAP_logon_fail1_red.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 261px; height: 260px;" src="http://www.ibm.com/developerworks/tivoli/library/t-rationalrobot/images/SAP_logon_fail1_red.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Rational Robot supports SAP® GUI V4.5, but there is no official statement of support for SAP® GUI V6.2, which many companies are today using. However, since the SAP® GUI uses the Windows GUI, you can of course record an SAP® GUI transaction. There is just one thing to watch out for; the SAP® GUI V6.2 will freeze when the Logon button is clicked while Robot is recording. So you need to take a few simple steps to work around this.&lt;br /&gt;&lt;br /&gt;The SAP GUI freezes when you click on the Logon button while recording&lt;br /&gt;&lt;br /&gt;The recording of the freeze, and multiple attempts to click the Logon button&lt;br /&gt;&lt;br /&gt;Fortunately, this is quite easy to work around; just complete the following steps.&lt;br /&gt;   1. Stop the recording in Robot.&lt;br /&gt;   2. Open the script and delete any duplicate PushButton commands that you may have recorded, so that only one of them remains.&lt;br /&gt;   3. Open the Windows Task Manager and terminate the process saplogon.exe.&lt;br /&gt;   4. Restart the SAP® GUI and click the Logon button.&lt;br /&gt;   5. Open the recorded Robot script and move the cursor below the failed PushButton command.&lt;br /&gt;   6. Click on the menu option to restart Robot recording at the current line.&lt;br /&gt;   7. Return to the SAP® GUI and proceed with the transaction.&lt;br /&gt;The final recorded script will simply be a splice of the two separate recording sessions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1450230176399728061?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1450230176399728061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1450230176399728061' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1450230176399728061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1450230176399728061'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/01/recording-sap-62-gui-transaction-with.html' title='Recording an SAP® 6.2 GUI Transaction with Rational Robot'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1121720871357666165</id><published>2010-01-04T15:17:00.003+01:00</published><updated>2010-01-04T15:21:02.504+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nfs'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>mount nfs export on MAC</title><content type='html'>If you try to mount an NFS on to your Mac OS X  by using &lt;br /&gt;   "sudo mount -t nfs /[NFS export] [LOCAL DIR]" &lt;br /&gt;maybe you got an error message like this: &lt;br /&gt; "mount_nfs: ******* : Operation not permitted"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Resolution:&lt;br /&gt;Add the "insecure" option to the nfs export.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1121720871357666165?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1121720871357666165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1121720871357666165' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1121720871357666165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1121720871357666165'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2010/01/mount-nfs-export-on-mac.html' title='mount nfs export on MAC'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-2855146232226575155</id><published>2009-12-18T16:14:00.004+01:00</published><updated>2009-12-18T16:19:35.950+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>the MySQL client library is not bundled anymore with php 5x</title><content type='html'>PHP 5.3.1&lt;br /&gt;&lt;br /&gt;If you'd like compile php 5x from source with option --with-mysql you get a message like this:&lt;br /&gt;&lt;br /&gt;"...&lt;br /&gt;configure: error: Cannot find MySQL header files under yes.&lt;br /&gt;Note that the MySQL client library is not bundled anymore!"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The mysql headers file location on RHEL /usr/include/mysql&lt;br /&gt;&lt;br /&gt;So, the right option setting is:  --with-mysql=/usr/include/mysql&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-2855146232226575155?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/2855146232226575155/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=2855146232226575155' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2855146232226575155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/2855146232226575155'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/12/php-5.html' title='the MySQL client library is not bundled anymore with php 5x'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-1303049513582465909</id><published>2009-12-02T20:59:00.002+01:00</published><updated>2009-12-02T21:01:03.915+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java installer'/><category scheme='http://www.blogger.com/atom/ns#' term='dscli'/><title type='text'>Correcting the Java Virtual Machine Not Found Error</title><content type='html'>Complete this task to correct the Java™ Virtual Machine Not Found Error.&lt;div class="body taskbody"&gt; &lt;div class="section context"&gt;&lt;div class="tasklabel"&gt;&lt;strong&gt;About this task&lt;/strong&gt;&lt;/div&gt;&lt;div class="p"&gt;The Java Virtual Machine Not Found error occurs when the DS CLI installer cannot find the correct version of Java in the standard directories of your system. You must have Java 1.4.1 or higher on your system for the DS CLI application to work.&lt;div class="note note"&gt;&lt;span class="notetitle"&gt;Notes:&lt;/span&gt; &lt;ol class="ol"&gt;&lt;li class="li"&gt;This error might also occur if you are installing the DS CLI on an AIX® system. The LIBPATH environment variable can interfere with the installation of the DS CLI and can result in the display of the Java Virtual Machine Not Found error. To prevent this error, disable the LIBPATH environment variable before you install the DS CLI. After the installation of the DS CLI, enable the LIBPATH environment variable so that it can be used with other applications.&lt;/li&gt;&lt;li class="li"&gt;If you have already installed the DS Storage Manager, you have installed Java 1.5 on your system. However, because it was not installed in one of your standard directories, the DS CLI installer did not find it during its initial check.&lt;/li&gt;&lt;/ol&gt; &lt;/div&gt; &lt;/div&gt; &lt;p class="p"&gt;If Java 1.4.1 or higher is not found during the initial check, the following message is displayed:&lt;/p&gt; &lt;ul class="ul"&gt;&lt;li class="li"&gt;If you are using Windows®, the following message is displayed:&lt;pre class="pre"&gt;LaunchAnywhere Error: Could not find a valid Java virtual machine to load.&lt;br /&gt;&lt;br /&gt;You may need to reinstall a supported Java virtual machine.&lt;/pre&gt; &lt;/li&gt;&lt;li class="li"&gt;If you are using Unix or Linux®, the following message is displayed: &lt;pre class="pre"&gt;No Java virtual machine could be found from your PATH&lt;br /&gt;environment variable.  You must install a VM prior to&lt;br /&gt;running this program.&lt;/pre&gt; &lt;/li&gt;&lt;/ul&gt; &lt;p class="p"&gt;Java 1.4.2 is available on the DS CLI installation CD for installation on some systems.&lt;/p&gt; &lt;div class="p"&gt;After ensuring that Java 1.4.1 or higher is installed, perform one of the following actions to correct the Java Virtual Machine Not Found error:&lt;ul class="ul"&gt;&lt;li class="li"&gt;Run the DS CLI installer again from the console, and provide the path to the JVM using the LAX_VM option. The following examples represent paths to the correct version of Java: &lt;ul class="ul"&gt;&lt;li class="li"&gt;For a Windows system, specify the following:&lt;pre class="pre"&gt;dsclisetup.exe LAX_VM "C:\Program Files\java-whatever\jre\bin\java.exe"&lt;/pre&gt; &lt;div class="note note"&gt;&lt;span class="notetitle"&gt;Note:&lt;/span&gt; Because there is a space in the Program Files directory name, you are required to add quotes around the  file name.&lt;/div&gt; &lt;/li&gt;&lt;li class="li"&gt;For a Unix or Linux system, specify the following:&lt;pre class="pre"&gt;dsclisetup.bin LAX_VM /opt/ibm-Java-whatever/java/bin/java&lt;/pre&gt; &lt;div class="note note"&gt;&lt;span class="notetitle"&gt;Note:&lt;/span&gt;  If you use this argument, the installer attempts to use whatever JVM that you specify.  You must use a supported version.&lt;/div&gt; &lt;/li&gt;&lt;li class="li"&gt;Continue with the installation of the DS CLI application. &lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li class="li"&gt;(For Unix or Linux) Add the Java virtual machine location to your PATH environment variable by running the following command:&lt;pre class="pre"&gt;export PATH=$PATH:/opt/ibm-Java-whatever/java/bin&lt;/pre&gt; &lt;p class="p"&gt;Then, run the dsclisetup.bin program to install the DS CLI.&lt;/p&gt; &lt;/li&gt;&lt;li class="li"&gt;(AIX only) Run the following commands to sequentially disable the LIBPATH environment variable, install the DS CLI, and restore the LIBPATH environment variable: &lt;pre class="pre"&gt;export LIBSAVE=$LIBPATH&lt;br /&gt;     unset LIBPATH&lt;br /&gt;dsclisetup.bin LAX_VM/opt/ibm-Java-whatever/java/bin/java&lt;br /&gt;     export LIBPATH=$LIBSAVE&lt;br /&gt;     unset LIBSAVE&lt;/pre&gt; &lt;/li&gt;&lt;/ul&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-1303049513582465909?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/1303049513582465909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=1303049513582465909' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1303049513582465909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/1303049513582465909'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/12/correcting-java-virtual-machine-not.html' title='Correcting the Java Virtual Machine Not Found Error'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-9055466306702412881</id><published>2009-11-27T14:18:00.001+01:00</published><updated>2009-11-27T14:19:36.194+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='shell scripting'/><title type='text'>While loop variable lost after loop ends</title><content type='html'>"I'm having a problem returning variables from a loop. the variable test get incremented each time it goes through the loop but if I try to get the count after the loop has run I get 0. Can anyone explain to me why this is happening and maybe show the correct way to go about doing this?"&lt;br /&gt;&lt;br /&gt;The answer:&lt;br /&gt;"sh is running the while loop in a subshell.  Variables changed in the subshell do affect the values in the main shell.&lt;br /&gt;&lt;br /&gt;ksh won't do that.  Switch to ksh.&lt;br /&gt;&lt;br /&gt;And ksh can increment the variable directly:&lt;br /&gt;((test=test+1))"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-9055466306702412881?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/9055466306702412881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=9055466306702412881' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/9055466306702412881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/9055466306702412881'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/11/while-loop-variable-lost-after-loop.html' title='While loop variable lost after loop ends'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-3549144715305621566</id><published>2009-10-29T12:58:00.005+01:00</published><updated>2009-10-29T13:06:16.310+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RPT'/><category scheme='http://www.blogger.com/atom/ns#' term='ITCAM'/><title type='text'>RPT 8.0 RPWC0002E</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;When you call a webservice in RPT &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;sometimes &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;you receive the following error:&lt;/span&gt;&lt;br /&gt;RPWC0002E Unexpected exception (com.ibm.rational.test.lt.models.wscore.transport.impl.HttpTransporterImpl)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;java.lang.NullPointerException&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.datamodel.security.util.KeyStoreUtil$SSLCreationUtil.getSSLContext(KeyStoreUtil.java:122)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.transport.noblck.impl.SocketFactoryUtil.create(SocketFactoryUtil.java:97)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.transport.noblck.impl.SocketFactoryUtil.buildSocket(SocketFactoryUtil.java:57)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.transport.http.impl.HttpRequest.&lt;init&gt;(HttpRequest.java:43)&lt;/init&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.transport.impl.HttpTransporterImpl.setUpIO(HttpTransporterImpl.java:466)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.transport.impl.HttpTransporterImpl.connect(HttpTransporterImpl.java:146)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.test.lt.models.wscore.transport.impl.SynchronousUtil.send(SynchronousUtil.java:27)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.ttt.common.ui.send.ObservableWSCommunication.sendAndReceive(ObservableWSCommunication.java:110)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;    at com.ibm.rational.ttt.common.ui.send.SendRequestThread$ObservedThread.run(SendRequestThread.java:186)&lt;/span&gt;&lt;/span&gt;&lt;init&gt;&lt;br /&gt;&lt;br /&gt;The cause of the problem is that you try to use http insteed of https. The endpoint call points to an https site but the transport is set to http.&lt;br /&gt;&lt;br /&gt;Solutions:&lt;br /&gt;&lt;br /&gt;Change the transport configuration to a user defined HTTPS with SSL.&lt;br /&gt;&lt;br /&gt;&lt;/init&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-3549144715305621566?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/3549144715305621566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=3549144715305621566' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3549144715305621566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/3549144715305621566'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/10/rpt-80-rpwc0002e.html' title='RPT 8.0 RPWC0002E'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-4960312846246947228</id><published>2009-10-19T13:52:00.001+02:00</published><updated>2009-10-19T13:52:33.817+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><category scheme='http://www.blogger.com/atom/ns#' term='agentmanager'/><title type='text'>Recovering from bad certificate errors on TPC agents</title><content type='html'>&lt;h2&gt;Technote (troubleshooting)&lt;/h2&gt; &lt;br /&gt;&lt;h2&gt;Problem(Abstract)&lt;/h2&gt; &lt;p&gt;A TPC data or fabric agent is not working. This may be due to a problem with the certificate for the common agent component.&lt;/p&gt; &lt;h2&gt;Symptom&lt;/h2&gt; &lt;p&gt;One or both of: &lt;/p&gt;&lt;p&gt;- Agent shows as down or unreachable in TPC gui.&lt;br /&gt;- Common agent is down or not communicating, and subagents are down or not responding.&lt;/p&gt; &lt;h2&gt;Cause&lt;/h2&gt; &lt;p&gt;Damaged/corrupted certificate/truststore files.&lt;/p&gt; &lt;h2&gt;Diagnosing the problem&lt;/h2&gt; &lt;p&gt;Common agent log file msgAgent.log contains java error messages about a 'bad certificate':&lt;br /&gt;&lt;br /&gt;- Error codes: BTC5019E, BTC4045E&lt;br /&gt;- 'Rejected connection attempt' on port 9511.&lt;/p&gt; &lt;h2&gt;Resolving the problem&lt;/h2&gt; &lt;p&gt;Take the following steps to correct this problem:&lt;br /&gt;&lt;br /&gt;1. Log in to the agent machine with the userid account used to install IBM Tivoli Storage Productivity Center (usually 'root' on UNIX and 'Administrator' on Windows).&lt;br /&gt;&lt;br /&gt;2. Stop the common agent service if it is running (it probably is not because of this error) using the following commands:&lt;br /&gt;&lt;br /&gt;- UNIX: cd /opt/IBM/TPC/ca; ./endpoint.sh stop&lt;br /&gt;- Windows: stop the 'Tivoli Common Agent' service through the Computer Management 'Services' panel&lt;br /&gt;&lt;br /&gt;3. Change directory to the common agent installation directory:&lt;br /&gt;&lt;br /&gt;- UNIX: /opt/IBM/TPC/ca&lt;br /&gt;- Windows: c:\Program Files\IBM\TPC\ca&lt;br /&gt;&lt;br /&gt;4. Locate and rename the 'cert' directory to 'cert.backup', and create a new, empty 'cert' directory in its place.&lt;br /&gt;&lt;br /&gt;4. Change directory to the 'config' directory and locate the &lt;b&gt;endpoint.properties&lt;/b&gt; file.&lt;br /&gt;&lt;br /&gt;6. Edit the &lt;b&gt;endpoint.properties&lt;/b&gt; file (make a backup copy if you wish) and change the following line as shown:&lt;br /&gt;&lt;br /&gt;    'agent.ssl.truststore.download=false'     to     'agent.ssl.truststore.download=true'&lt;br /&gt;&lt;br /&gt;7. Restart Common Agent.&lt;br /&gt;&lt;br /&gt;- UNIX: cd /opt/IBM/TPC/ca; ./endpoint.sh start&lt;br /&gt;- Windows: start the 'Tivoli Common Agent' service through the Computer Management 'Services' panel&lt;br /&gt;&lt;br /&gt;8. Check files in the new 'cert' directory. The directory should contain 4 files once registration with the Agent Manager is successful.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-4960312846246947228?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/4960312846246947228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=4960312846246947228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4960312846246947228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4960312846246947228'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/10/recovering-from-bad-certificate-errors.html' title='Recovering from bad certificate errors on TPC agents'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-7969935230692365835</id><published>2009-10-19T11:15:00.000+02:00</published><updated>2009-10-19T11:16:46.379+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TPC'/><title type='text'>TPC - Help to Find the Supported Products and Platforms Interoperability Matrix Links</title><content type='html'>&lt;!-- OneX body.doc --&gt;&lt;!--BEGIN MAIN BODY CONTENT--&gt;    &lt;!--BEGIN CONTENT--&gt; &lt;!-- ******** PASTE MAIN BODY CONTENT HERE ******** --&gt;  &lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr valign="top"&gt;&lt;td width="438"&gt; &lt;table border="0" cellpadding="0" cellspacing="0" width="443"&gt; &lt;tbody&gt;&lt;tr&gt; &lt;td class="v14-header-1efix" height="19" valign="top" width="443"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td height="20" valign="bottom" width="443"&gt;&lt;b&gt;Abstract&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td width="443"&gt; Since the migration of the TotalStorage Productivity Center support site to Tivoli Storage Productivity Center, it has been difficult to find certain content items. This document intends to provide a variety of links for the 3.x and 4.x version interoperability and support matrices to make navigating a little easier. &lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="438"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="20" valign="bottom" width="443"&gt;&lt;b&gt;Content&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td width="443"&gt;  &lt;table border="1" width="100%"&gt; &lt;tbody&gt;&lt;tr valign="top"&gt;&lt;td colspan="2" bgcolor="#c0c0c0" width="40%"&gt;&lt;div align="center"&gt;&lt;b&gt;Supported Platforms&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" bgcolor="#c0c0c0" width="60%"&gt;&lt;div align="center"&gt;&lt;b&gt;Supported Products&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td bgcolor="#c0c0c0" width="20%"&gt;&lt;div align="center"&gt;&lt;b&gt;Agents, Servers and GUI&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;td bgcolor="#c0c0c0" width="20%"&gt;&lt;div align="center"&gt;&lt;b&gt;Replication&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;td bgcolor="#c0c0c0" width="20%"&gt;&lt;div align="center"&gt;&lt;b&gt;HBAs&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;td bgcolor="#c0c0c0" width="20%"&gt;&lt;div align="center"&gt;&lt;b&gt;Switches &amp;amp; Directors&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;td bgcolor="#c0c0c0" width="20%"&gt;&lt;div align="center"&gt;&lt;b&gt;Storage&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=40&amp;amp;context=SSBSEX&amp;amp;uid=swg21384678&amp;amp;loc=en_US&amp;amp;cs=UTF-8&amp;amp;lang=en"&gt;4.1.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=40&amp;amp;context=SSBSEX&amp;amp;uid=swg21384678&amp;amp;loc=en_US&amp;amp;cs=UTF-8&amp;amp;lang=en"&gt;4.1.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=40&amp;amp;context=SSBSEX&amp;amp;uid=swg21384616&amp;amp;loc=en_US&amp;amp;cs=UTF-8&amp;amp;lang=en"&gt;4.1.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=40&amp;amp;context=SSBSEX&amp;amp;dc=DA420&amp;amp;dc=DA480&amp;amp;dc=DA490&amp;amp;dc=DA430&amp;amp;dc=DA410&amp;amp;dc=DB600&amp;amp;dc=DA400&amp;amp;dc=D600&amp;amp;dc=D700&amp;amp;dc=DB520&amp;amp;dc=DB510&amp;amp;dc=DA500&amp;amp;dc=DA470&amp;amp;dc=DA4A20&amp;amp;dc=DA460&amp;amp;dc=DA440&amp;amp;dc=DB550&amp;amp;dc=DB560&amp;amp;dc=DB700&amp;amp;dc=DB530&amp;amp;dc=DA4A10&amp;amp;dc=DA4A30&amp;amp;dc=DB540&amp;amp;q1=switch&amp;amp;uid=swg21384219&amp;amp;loc=en_US&amp;amp;cs=utf-8&amp;amp;lang=en"&gt;4.1.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=40&amp;amp;context=SSBSEX&amp;amp;q1=subsystem&amp;amp;uid=swg21384734&amp;amp;loc=en_US&amp;amp;cs=utf-8&amp;amp;lang=en"&gt;4.1.0&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;Not Applicable&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?&amp;amp;uid=swg2S7002099"&gt;3.4&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;Not applicable&lt;/td&gt;&lt;td width="20%"&gt;Not Applicable&lt;/td&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=40&amp;amp;context=SSBSEX&amp;amp;uid=swg2S1003285&amp;amp;loc=en_US&amp;amp;cs=UTF-8&amp;amp;lang=en"&gt;3.3.2&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21265379"&gt;3.3.2&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21265379"&gt;3.3.2&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg2S1003286"&gt;3.3.2&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1003184"&gt;3.3.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21265379"&gt;3.3.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21265379"&gt;3.3.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1133&amp;amp;uid=swg2S1003183"&gt;3.3.1&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?&amp;amp;uid=swg2S1003119"&gt;3.3.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?&amp;amp;uid=swg2S7001675"&gt;3.3&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21265379"&gt;3.3.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21265379"&gt;3.3.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1003118"&gt;3.3.0&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.3/3.2.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.3/3.2.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1003019"&gt;3.1.3/3.2.1&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?uid=swg2S1002911"&gt;3.1.2/3.2.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.2/3.2.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.2/3.2.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1002912"&gt;3.1.2/3.2.0&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;img src="http://www-01.ibm.com/support/docview.wss?uid=swg21386446&amp;amp;aid=1" alt="" border="0" height="1" width="1" /&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1002841"&gt;3.1.1&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top"&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1002814"&gt;3.1.0 Operating Systems&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?&amp;amp;uid=swg2S1002813"&gt;3.1.0 Databases&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?&amp;amp;uid=swg2S7001570"&gt;3.1&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=1103&amp;amp;uid=swg21249383"&gt;3.1.0&lt;/a&gt;&lt;/td&gt;&lt;td width="20%"&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=597&amp;amp;uid=swg2S1002800"&gt;3.1.0&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;This table will be updated as additional links become available. &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-7969935230692365835?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/7969935230692365835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=7969935230692365835' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/7969935230692365835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/7969935230692365835'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/10/tpc-help-to-find-supported-products-and.html' title='TPC - Help to Find the Supported Products and Platforms Interoperability Matrix Links'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-4295193010700975683</id><published>2009-10-15T22:46:00.006+02:00</published><updated>2011-12-14T14:28:53.144+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipl'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>IPL LED 518 555</title><content type='html'>&lt;hr /&gt; &lt;h2&gt;&lt;a name="1"&gt;About this document&lt;/a&gt;&lt;/h2&gt;&lt;a name="1"&gt;  &lt;/a&gt;&lt;p&gt; &lt;a name="1"&gt;This document covers the use of the &lt;b&gt;fsck&lt;/b&gt; (file system check) command in  Maintenance mode to repair inconsistencies in file systems. The procedure described  is useful when file system corruption in the primary root file systems is suspected  or, in many cases, to correct an IPL hang at LED value 518 or LED value 555.&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;hr /&gt; &lt;a name="1"&gt;  &lt;/a&gt;&lt;h2&gt;&lt;a name="2"&gt;Recovery procedure&lt;/a&gt;&lt;/h2&gt;&lt;a name="2"&gt;  &lt;/a&gt;&lt;ol&gt;&lt;a name="2"&gt;  &lt;/a&gt;&lt;li&gt;&lt;a name="2"&gt;Boot your system into a limited function maintenance shell (Service, or  Maintenance mode) from AIX bootable media to perform file system checks on  your root file systems. &lt;/a&gt;&lt;p&gt; &lt;a name="2"&gt;Please refer to your system user's or installation and service guide for  specific IPL procedures related to your type and model of hardware. You can also refer to  the document titled "Booting in Service Mode," available at  &lt;/a&gt;&lt;a href="http://techsupport.services.ibm.com/rs6k/techbrowse/" target="new.window"&gt;  http://techsupport.services.ibm.com/rs6k/techbrowse/&lt;/a&gt;. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;With &lt;b&gt;bootable media of the same version and level as the system&lt;/b&gt;, boot the  system.  The bootable media can be any ONE of the following:  &lt;ul&gt;&lt;li&gt;Bootable CD-ROM  &lt;/li&gt;&lt;li&gt;NON_AUTOINSTALL &lt;b&gt;mksysb&lt;/b&gt;  &lt;/li&gt;&lt;li&gt;Bootable Install Tape  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; Follow the screen prompts to the following menu:  &lt;/p&gt;&lt;pre&gt;   Welcome to Base Operating System&lt;br /&gt; Installation and Maintenance&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; Start Maintenance Mode for System Recovery &lt;/tt&gt;(Option 3).  &lt;p&gt; The next screen displays the&lt;tt&gt; Maintenance &lt;/tt&gt;menu.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; Access a Root Volume Group &lt;/tt&gt;(Option 1).  &lt;p&gt; The next screen displays a warning that indicates you will not be able to  return to the Base OS menu without rebooting.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; 0 continue&lt;/tt&gt;.  &lt;p&gt; The next screen displays information about all volume groups on the system. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Select the root volume group by number. &lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; Access this volume group and start a shell before mounting  file systems &lt;/tt&gt;(Option 2).  &lt;p&gt; If you get errors from the preceding option, do not continue with the rest of  this procedure.  Correct the problem causing the error.  If you need assistance  correcting the problem causing the error, contact one of the following:  &lt;/p&gt;&lt;ul&gt;&lt;li&gt;local branch office  &lt;/li&gt;&lt;li&gt;your point of sale  &lt;/li&gt;&lt;li&gt;your AIX support center  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; If no errors occur,  proceed with the following steps. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Run the following commands to check and repair file systems.   &lt;p&gt;&lt;b&gt;NOTE:&lt;/b&gt; The &lt;b&gt;-y&lt;/b&gt; option gives &lt;b&gt;fsck&lt;/b&gt; permission to repair  file system corruption when necessary. This flag can be used to avoid having  to manually answer multiple confirmation prompts, however, use of this flag  can cause permanent, unnecessary data loss in some situations. &lt;/p&gt;&lt;pre&gt; fsck /dev/hd4&lt;br /&gt; fsck /dev/hd2&lt;br /&gt; fsck /dev/hd3&lt;br /&gt; fsck /dev/hd9var&lt;br /&gt; fsck /dev/hd1&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt;&lt;li&gt;To format the default &lt;b&gt;jfslog&lt;/b&gt; for the &lt;b&gt;rootvg&lt;/b&gt; Journaled File  System (JFS) file systems, run the following command:  &lt;pre&gt; /usr/sbin/logform /dev/hd8&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;Answer &lt;tt&gt; yes &lt;/tt&gt; when asked if you want to destroy the log.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If your system is hanging at LED 518 during a Normal mode boot,  it is possible the &lt;b&gt;/etc/filesystems&lt;/b&gt; file is corrupt or missing.  To temporarily replace the disk-based &lt;b&gt;/etc/filesystems&lt;/b&gt;  file, run the following commands: &lt;pre&gt; mount /dev/hd4 /mnt&lt;br /&gt; mv /mnt/etc/filesystems /mnt/etc/filesystems.[&lt;i&gt;MMDDYY&lt;/i&gt;]&lt;br /&gt; cp /etc/filesystems /mnt/etc/filesystems&lt;br /&gt; umount /mnt&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; &lt;i&gt;MMDDYY&lt;/i&gt; represents the current two-digit representation of the  Month, Day and Year, respectively. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Type &lt;tt&gt; exit &lt;/tt&gt; to exit from the shell.  The file systems should  automatically mount after you type &lt;tt&gt; exit&lt;/tt&gt;. If you receive error  messages, reboot into a limited function maintenance shell again to attempt  to address the failure causes.  &lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you have user-created file systems in the &lt;b&gt;rootvg&lt;/b&gt; volume  group, run &lt;b&gt;fsck&lt;/b&gt; on them now. Enter:   &lt;pre&gt; fsck /dev/[&lt;i&gt;LVname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;i&gt;LVname&lt;/i&gt; is the name of your user-defined logical volume.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you used the preceding procedure to temporarily replace the  &lt;b&gt;/etc/filesystems&lt;/b&gt; file, and you have user-created file systems in the  &lt;b&gt;rootvg&lt;/b&gt; volume group, you must also run the following command: &lt;pre&gt; imfs -l /dev/[&lt;i&gt;LVname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you have file systems in a volume group other than &lt;b&gt;rootvg&lt;/b&gt;,  run &lt;b&gt;fsck&lt;/b&gt; on them now. Enter: &lt;pre&gt; varyonvg [&lt;i&gt;VGname&lt;/i&gt;]&lt;br /&gt; fsck /dev/[&lt;i&gt;LVname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; &lt;i&gt;VGname&lt;/i&gt; is the name of your user-defined volume group. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you used the preceding procedure to temporarily replace the  &lt;b&gt;/etc/filesystems&lt;/b&gt; file, also run the following command: &lt;pre&gt; imfs [&lt;i&gt;VGname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; The preceding commands can be repeated for each user-defined volume  group on the system. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If your system was hanging at LED 518 and you are unable to activate  non-rootvg volume groups in Service mode, you can manually edit the  &lt;b&gt;/etc/filesystems&lt;/b&gt; file and add the appropriate entries.  &lt;p&gt;The file &lt;b&gt;/etc/filesystems.&lt;i&gt;MMDDYY&lt;/i&gt;&lt;/b&gt; saved in the preceding  steps may be used as a reference if it is readable. However, the imfs method  is preferred since it uses information stored in the logical volume control  block to re-populate the &lt;b&gt;/etc/filesystems&lt;/b&gt; file. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If your system has a mode select key, turn it to the Normal position. &lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Reboot the system into Normal mode using the following command: &lt;pre&gt; sync;sync;sync;reboot&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;If your system still halts at the LED 518 display, in many cases, it is  faster and more cost-effective to reinstall from a recent system backup.  Attempting to isolate the cause of the problem can be very time-consuming and often results in the determination that a reinstall is required to  correct the problem anyway. &lt;/p&gt;&lt;p&gt; If you need assistance correcting the problem causing the halt, contact one  of the following: &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;local branch office &lt;/li&gt;&lt;li&gt;your point of sale &lt;/li&gt;&lt;li&gt;your AIX support center &lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt; [ Doc Ref: 90605188914738     Publish Date: Nov. 06, 2000     4FAX Ref: 2535 ] &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-4295193010700975683?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/4295193010700975683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=4295193010700975683' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4295193010700975683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/4295193010700975683'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/10/ipl-led-518-555_15.html' title='IPL LED 518 555'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-263593803558097217</id><published>2009-10-15T22:46:00.005+02:00</published><updated>2009-10-15T22:59:05.478+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipl'/><category scheme='http://www.blogger.com/atom/ns#' term='AIX'/><title type='text'>IPL LED 518 555</title><content type='html'>&lt;hr /&gt; &lt;h2&gt;&lt;a name="1"&gt;About this document&lt;/a&gt;&lt;/h2&gt;&lt;p&gt; &lt;a name="1"&gt;This document covers the use of the &lt;b&gt;fsck&lt;/b&gt; (file system check) command in  Maintenance mode to repair inconsistencies in file systems. The procedure described  is useful when file system corruption in the primary root file systems is suspected  or, in many cases, to correct an IPL hang at LED value 518 or LED value 555.&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;hr /&gt; &lt;a name="1"&gt;  &lt;/a&gt;&lt;h2&gt;&lt;a name="2"&gt;Recovery procedure&lt;/a&gt;&lt;/h2&gt;&lt;a name="2"&gt;  &lt;/a&gt;&lt;ol&gt;&lt;a name="2"&gt;  &lt;/a&gt;&lt;li&gt;&lt;a name="2"&gt;Boot your system into a limited function maintenance shell (Service, or  Maintenance mode) from AIX bootable media to perform file system checks on  your root file systems.&lt;/a&gt;&lt;a name="2"&gt;&lt;br /&gt;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;With &lt;b&gt;bootable media of the same version and level as the system&lt;/b&gt;, boot the  system.  The bootable media can be any ONE of the following:  &lt;ul&gt;&lt;li&gt;Bootable CD-ROM  &lt;/li&gt;&lt;li&gt;NON_AUTOINSTALL &lt;b&gt;mksysb&lt;/b&gt;  &lt;/li&gt;&lt;li&gt;Bootable Install Tape  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; Follow the screen prompts to the following menu:  &lt;/p&gt;&lt;pre&gt;   Welcome to Base Operating System&lt;br /&gt;Installation and Maintenance&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; Start Maintenance Mode for System Recovery &lt;/tt&gt;(Option 3).  &lt;p&gt; The next screen displays the&lt;tt&gt; Maintenance &lt;/tt&gt;menu.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; Access a Root Volume Group &lt;/tt&gt;(Option 1).  &lt;p&gt; The next screen displays a warning that indicates you will not be able to  return to the Base OS menu without rebooting.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; 0 continue&lt;/tt&gt;.  &lt;p&gt; The next screen displays information about all volume groups on the system. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Select the root volume group by number. &lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Choose&lt;tt&gt; Access this volume group and start a shell before mounting  file systems &lt;/tt&gt;(Option 2).  &lt;p&gt; If you get errors from the preceding option, do not continue with the rest of  this procedure.  Correct the problem causing the error.  If you need assistance  correcting the problem causing the error, contact one of the following:  &lt;/p&gt;&lt;ul&gt;&lt;li&gt;local branch office  &lt;/li&gt;&lt;li&gt;your point of sale  &lt;/li&gt;&lt;li&gt;your AIX support center  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; If no errors occur,  proceed with the following steps. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Run the following commands to check and repair file systems.   &lt;p&gt;&lt;b&gt;NOTE:&lt;/b&gt; The &lt;b&gt;-y&lt;/b&gt; option gives &lt;b&gt;fsck&lt;/b&gt; permission to repair  file system corruption when necessary. This flag can be used to avoid having  to manually answer multiple confirmation prompts, however, use of this flag  can cause permanent, unnecessary data loss in some situations. &lt;/p&gt;&lt;pre&gt; fsck /dev/hd4&lt;br /&gt;fsck /dev/hd2&lt;br /&gt;fsck /dev/hd3&lt;br /&gt;fsck /dev/hd9var&lt;br /&gt;fsck /dev/hd1&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt;&lt;li&gt;To format the default &lt;b&gt;jfslog&lt;/b&gt; for the &lt;b&gt;rootvg&lt;/b&gt; Journaled File  System (JFS) file systems, run the following command:  &lt;pre&gt; /usr/sbin/logform /dev/hd8&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;Answer &lt;tt&gt; yes &lt;/tt&gt; when asked if you want to destroy the log.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If your system is hanging at LED 518 during a Normal mode boot,  it is possible the &lt;b&gt;/etc/filesystems&lt;/b&gt; file is corrupt or missing.  To temporarily replace the disk-based &lt;b&gt;/etc/filesystems&lt;/b&gt;  file, run the following commands: &lt;pre&gt; mount /dev/hd4 /mnt&lt;br /&gt;mv /mnt/etc/filesystems /mnt/etc/filesystems.[&lt;i&gt;MMDDYY&lt;/i&gt;]&lt;br /&gt;cp /etc/filesystems /mnt/etc/filesystems&lt;br /&gt;umount /mnt&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; &lt;i&gt;MMDDYY&lt;/i&gt; represents the current two-digit representation of the  Month, Day and Year, respectively. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Type &lt;tt&gt; exit &lt;/tt&gt; to exit from the shell.  The file systems should  automatically mount after you type &lt;tt&gt; exit&lt;/tt&gt;. If you receive error  messages, reboot into a limited function maintenance shell again to attempt  to address the failure causes.  &lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you have user-created file systems in the &lt;b&gt;rootvg&lt;/b&gt; volume  group, run &lt;b&gt;fsck&lt;/b&gt; on them now. Enter:   &lt;pre&gt; fsck /dev/[&lt;i&gt;LVname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;i&gt;LVname&lt;/i&gt; is the name of your user-defined logical volume.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you used the preceding procedure to temporarily replace the  &lt;b&gt;/etc/filesystems&lt;/b&gt; file, and you have user-created file systems in the  &lt;b&gt;rootvg&lt;/b&gt; volume group, you must also run the following command: &lt;pre&gt; imfs -l /dev/[&lt;i&gt;LVname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you have file systems in a volume group other than &lt;b&gt;rootvg&lt;/b&gt;,  run &lt;b&gt;fsck&lt;/b&gt; on them now. Enter: &lt;pre&gt; varyonvg [&lt;i&gt;VGname&lt;/i&gt;]&lt;br /&gt;fsck /dev/[&lt;i&gt;LVname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; &lt;i&gt;VGname&lt;/i&gt; is the name of your user-defined volume group. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If you used the preceding procedure to temporarily replace the  &lt;b&gt;/etc/filesystems&lt;/b&gt; file, also run the following command: &lt;pre&gt; imfs [&lt;i&gt;VGname&lt;/i&gt;]&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; The preceding commands can be repeated for each user-defined volume  group on the system. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If your system was hanging at LED 518 and you are unable to activate  non-rootvg volume groups in Service mode, you can manually edit the  &lt;b&gt;/etc/filesystems&lt;/b&gt; file and add the appropriate entries.  &lt;p&gt;The file &lt;b&gt;/etc/filesystems.&lt;i&gt;MMDDYY&lt;/i&gt;&lt;/b&gt; saved in the preceding  steps may be used as a reference if it is readable. However, the imfs method  is preferred since it uses information stored in the logical volume control  block to re-populate the &lt;b&gt;/etc/filesystems&lt;/b&gt; file. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;/li&gt;&lt;li&gt;If your system has a mode select key, turn it to the Normal position. &lt;p&gt; &lt;/p&gt;&lt;/li&gt;&lt;li&gt;Reboot the system into Normal mode using the following command: &lt;pre&gt; sync;sync;sync;reboot&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;If your system still halts at the LED 518 display, in many cases, it is  faster and more cost-effective to reinstall from a recent system backup.  Attempting to isolate the cause of the problem can be very time-consuming and often results in the determination that a reinstall is required to  correct the problem anyway. &lt;/p&gt;&lt;p&gt; If you need assistance correcting the problem causing the halt, contact one  of the following: &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;local branch office &lt;/li&gt;&lt;li&gt;your point of sale &lt;/li&gt;&lt;li&gt;your AIX support center &lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt; [ Doc Ref: 90605188914738     Publish Date: Nov. 06, 2000     4FAX Ref: 2535 ] &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3929051598743407695-263593803558097217?l=user-techdocs.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://user-techdocs.blogspot.com/feeds/263593803558097217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3929051598743407695&amp;postID=263593803558097217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/263593803558097217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3929051598743407695/posts/default/263593803558097217'/><link rel='alternate' type='text/html' href='http://user-techdocs.blogspot.com/2009/10/ipl-led-518-555.html' title='IPL LED 518 555'/><author><name>Zsámboki Attila</name><uri>http://www.blogger.com/profile/04849439410621706751</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_Mghmn4Se1G8/SeTe24ik7WI/AAAAAAAAD-U/XkoJpKZ4hCA/S220/Photo+13.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3929051598743407695.post-5236091333325797800</id><published>2009-10-15T20:25:00.000+02:00</published><updated>2009-10-15T20:26:42.589+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipl'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='naming'/><title type='text'>IBM naming conventions and other stuffs</title><content type='html'>&lt;pre&gt;Display codes (LEDs)&lt;br /&gt;&lt;br /&gt;This page provides descriptions for the numbers and characters that&lt;br /&gt;display on the operator panel and descriptions of the location codes&lt;br /&gt;used to identify a particular item. Information is available about the&lt;br /&gt;following codes:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Note:*&lt;br /&gt;   AIX logical location codes can still be seen and supported under&lt;br /&gt;   various AIX commands and functions. However, the Diagnostic screens&lt;br /&gt;   and menus display physical location codes for resources when running&lt;br /&gt;   versions 5.2.0 and later. For these systems, refer to Physical&lt;br /&gt;   Location Codes&lt;br /&gt;   &lt;http://web.archive.org/web/20041112035526/http://publib16.boulder.ibm.com/pseries/en_us/infocenter/base/ledsearch.htm#led_physical_location&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The basic formats of the AIX location codes are as follows:&lt;br /&gt;&lt;br /&gt;   * For non-SCSI devices/drives:&lt;br /&gt;&lt;br /&gt;AB-CD-EF-GH&lt;br /&gt;&lt;br /&gt;   * For SCSI devices/drives:&lt;br /&gt;&lt;br /&gt;AB-CD-EF-G,H&lt;br /&gt;&lt;br /&gt;For planars, cards, and non-SCSI devices, the location code is defined&lt;br /&gt;as follows:&lt;br /&gt;&lt;br /&gt;AB-CD-EF-GH&lt;br /&gt;|  |  |  |&lt;br /&gt;|  |  |  Device/FRU/Port ID&lt;br /&gt;|  |  Connector ID&lt;br /&gt;|  devfunc Number, Adapter Number or Physical Location&lt;br /&gt;Bus Type or PCI Parent Bus&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;   * The AB value identifies a bus type or PCI parent bus as assigned&lt;br /&gt;     by the firmware.&lt;br /&gt;   * The CD value identifies adapter number, adapter's devfunc number,&lt;br /&gt;     or physical location. The devfunc number is defined as the PCI&lt;br /&gt;     device number times 8, plus the function number.&lt;br /&gt;   * The EF value identifies a connector.&lt;br /&gt;   * The GH value identifies a port, address, device, or FRU.&lt;br /&gt;&lt;br /&gt;Adapters and cards are identified only with AB-CD. The possible values&lt;br /&gt;for AB are:&lt;br /&gt;00  Processor bus&lt;br /&gt;01  ISA bus&lt;br /&gt;02  EISA bus&lt;br /&gt;03  MCA bus&lt;br /&gt;04  PCI bus used in the case where the PCI bus cannot be identified&lt;br /&gt;05  PCMCIA buses&lt;br /&gt;xy  For PCI adapters where x is equal to or greater than 1. The x and y&lt;br /&gt;are characters in the range of 0-9, A-H, J-N, P-Z (O, I, and lower case&lt;br /&gt;are omitted) and are equal to the parent bus's ibm, aix-loc Open&lt;br /&gt;Firmware Property.&lt;br /&gt;&lt;br /&gt;The possible values for CD depend on the adapter or card are as follows:&lt;br /&gt;&lt;br /&gt;   * For pluggable PCI adapters/cards, CD is the device's *devfunc*&lt;br /&gt;     number (PCI device number times 8, plus the function number). The&lt;br /&gt;     C and D are characters in the range of 0-9, and A-F (hex numbers).&lt;br /&gt;     This allows the location code to uniquely identify multiple&lt;br /&gt;     adapters on individual PCI cards.&lt;br /&gt;&lt;br /&gt;     For pluggable ISA adapters, CD is equal to the order in which the&lt;br /&gt;     ISA cards defined or configured, either by SMIT or the ISA Adapter&lt;br /&gt;     Configuration Service Aid.&lt;br /&gt;&lt;br /&gt;     For integrated ISA adapters, CD is equal to a unique code&lt;br /&gt;     identifying the ISA adapter. In most cases, this is equal to the&lt;br /&gt;     adapter's physical location code. In cases where a physical&lt;br /&gt;     location code is not available, CD is FF.&lt;br /&gt;&lt;br /&gt;   * EF is the connector ID. It is used to identify a connector on the&lt;br /&gt;     adapter to which a resource is attached.&lt;br /&gt;   * GH is used to identify a port, device, or FRU. For example:&lt;br /&gt;         o For async devices, GH defines the port on the fanout box.&lt;br /&gt;           The values are 00 to 15.&lt;br /&gt;         o For a diskette drive, H defines either diskette drive 1 or&lt;br /&gt;           2. G is always 0.&lt;br /&gt;         o For all other devices, GH is equal to 00.&lt;br /&gt;&lt;br /&gt;For the integrated adapters, EF-GH is the same as the definition for the&lt;br /&gt;pluggable adapters. For example, the location code for a diskette drive&lt;br /&gt;is 01-D1-00-00. A second diskette drive is 01-D1-00-01.&lt;br /&gt;&lt;br /&gt;For SCSI devices, the location code is defined as:&lt;br /&gt;&lt;br /&gt;AB-CD-EF-G,H&lt;br /&gt;|  |  | | |&lt;br /&gt;|  |  | | Logical Unit address of the SCSI Device&lt;br /&gt;|  |  | Control Unit Address of the SCSI Device&lt;br /&gt;|  |  Connector ID&lt;br /&gt;|  devfunc Number, Adapter Number or Physical Location&lt;br /&gt;Bus Type or PCI Parent Bus&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Where:&lt;br /&gt;&lt;br /&gt;   * AB-CD-EF are the same as non-SCSI devices.&lt;br /&gt;   * G defines the control unit address of the device. Values of 0 to&lt;br /&gt;     15 are valid.&lt;br /&gt;   * H defines the logical unit address of the device. Values of 0 to&lt;br /&gt;     255 are valid.&lt;br /&gt;&lt;br /&gt;There is also a bus location code that is generated as '00-xxxxxxxx'&lt;br /&gt;where xxxxxxxx is equivalent to the node's unit address. Refer to the&lt;br /&gt;system unit service guide for additional information.&lt;br /&gt;&lt;br /&gt;Location Codes for CHRP Model Architecture System Units  Top of page&lt;br /&gt;&lt;http://web.archive.org/web/20041112035526/http://publib16.boulder.ibm.com/pseries/en_us/infocenter/base/ledsearch.htm#top&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Note:*&lt;br /&gt;   You need to know which system architecture the system unit on which&lt;br /&gt;   you are working uses. If you are working with a RSPC model use the&lt;br /&gt;   Location Codes for RSPC Model Architecture System Units&lt;br /&gt;   &lt;http://web.archive.org/web/20041112035526/http://publib16.boulder.ibm.com/pseries/en_us/infocenter/base/ledsearch.htm#led_rspc&gt;.&lt;br /&gt;   If you do not know which model you have, refer to Determining System&lt;br /&gt;   Architecture&lt;br /&gt;   &lt;http://web.archive.org/web/20041112035526/http://publib16.boulder.ibm.com/pseries/en_us/infocenter/base/hardware_docs/pdf/380509.pdf&gt;&lt;br /&gt;   in /Diagnostic Information for Multiple Bus Systems/ before proceeding.&lt;br /&gt;&lt;br /&gt;The (CHRP) system unit uses Physical Location Codes in conjunction with&lt;br /&gt;AIX Location Codes to provide mapping of the failing field replaceable&lt;br /&gt;units. The location codes are produced by the system unit's firmware and&lt;br /&gt;the AIX operating system.&lt;br /&gt;&lt;br /&gt;Diagnostic Load Progress Indicators  Top of page&lt;br /&gt;&lt;http://web.archive.org/web/20041112035526/http://publib16.boulder.ibm.com/pseries/en_us/infocenter/base/ledsearch.htm#top&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Note:*&lt;br /&gt;   Some systems might produce 4-digit codes. If the leftmost digit of a&lt;br /&gt;   4-digit code is 0, use the three rightmost digits.&lt;br /&gt;&lt;br /&gt;*c00 *&lt;br /&gt;   AIX Install/Maintenance loaded successfully.&lt;br /&gt;&lt;br /&gt;*c01 *&lt;br /&gt;   Insert the first diagnostic diskette.&lt;br /&gt;&lt;br /&gt;*c02 *&lt;br /&gt;   Diskettes inserted out of sequence.&lt;br /&gt;&lt;br /&gt;*c03 *&lt;br /&gt;   The wrong diskette is in diskette drive.&lt;br /&gt;&lt;br /&gt;*c04 *&lt;br /&gt;   The loading stopped with an irrecoverable error.&lt;br /&gt;&lt;br /&gt;*c05 *&lt;br /&gt;   A diskette error occurred.&lt;br /&gt;&lt;br /&gt;*c06 *&lt;br /&gt;   The *rc.boot* configuration shell script is unable to determine type&lt;br /&gt;   of boot.&lt;br /&gt;&lt;br /&gt;*c07 *&lt;br /&gt;   Insert the next diagnostic diskette.&lt;br /&gt;&lt;br /&gt;*c08 *&lt;br /&gt;   RAM file system started incorrectly.&lt;br /&gt;&lt;br /&gt;*c09 *&lt;br /&gt;   The diskette drive is reading or writing a diskette.&lt;br /&gt;&lt;br /&gt;*c20 *&lt;br /&gt;   An unexpected halt occurred, and the system is configured to enter&lt;br /&gt;   the kernel debug program instead of entering a system dump.&lt;br /&gt;&lt;br /&gt;*c21 *&lt;br /&gt;   The *ifconfig* command was unable to configure the network for the&lt;br /&gt;   client network host.&lt;br /&gt;&lt;br /&gt;*c22 *&lt;br /&gt;   The *tftp* command was unable to read client's /ClientHostName/&lt;br /&gt;   *info* file during a client network boot.&lt;br /&gt;&lt;br /&gt;*c24 *&lt;br /&gt;   Unable to read client's /ClientHostName/.*info* file during a client&lt;br /&gt;   network boot.&lt;br /&gt;&lt;br /&gt;*c25 *&lt;br /&gt;   Client did not mount remote miniroot during network install.&lt;br /&gt;&lt;br /&gt;*c26 *&lt;br /&gt;   Client did not mount the /usr file system during the network boot.&lt;br /&gt;&lt;br /&gt;*c29 *&lt;br /&gt;   The system was unable to configure the network device.&lt;br /&gt;&lt;br /&gt;*c31 *&lt;br /&gt;   Select the console display for the diagnostics. To select No console&lt;br /&gt;   display, set the key mode switch to Normal then to Service. The&lt;br /&gt;   diagnostic programs then load and run the diagnostics automatically.&lt;br /&gt;   If you continue to get the message, check the cables and make sure&lt;br /&gt;   you are using the serial port.&lt;br /&gt;&lt;br /&gt;*c32 *&lt;br /&gt;   A directly attached display (HFT) was selected.&lt;br /&gt;&lt;br /&gt;*c33 *&lt;br /&gt;   A TTY terminal attached to serial ports S1 or S2 was selected.&lt;br /&gt;&lt;br /&gt;*c34 *&lt;br /&gt;   A file was selected. The console messages store in a file.&lt;br /&gt;&lt;br /&gt;*c35 *&lt;br /&gt;   No console found.&lt;br /&gt;&lt;br /&gt;*c40 *&lt;br /&gt;   Configuration files are being restored.&lt;br /&gt;&lt;br /&gt;*c41 *&lt;br /&gt;   Could not determine the boot type or device.&lt;br /&gt;&lt;br /&gt;*c42 *&lt;br /&gt;   Extracting data files from diskette.&lt;br /&gt;&lt;br /&gt;*c43 *&lt;br /&gt;   Cannot access the boot/install tape.&lt;br /&gt;&lt;br /&gt;*c44 *&lt;br /&gt;   Initializing installation database with target disk information.&lt;br /&gt;&lt;br /&gt;*c45 *&lt;br /&gt;   Cannot configure the console.&lt;br /&gt;&lt;br /&gt;*c46 *&lt;br /&gt;   Normal installation processing.&lt;br /&gt;&lt;br /&gt;*c47 *&lt;br /&gt;   Could not create a physical volume identifier (PVID) on disk.&lt;br /&gt;&lt;br /&gt;*c48 *&lt;br /&gt;   Prompting you for input.&lt;br /&gt;&lt;br /&gt;*c49 *&lt;br /&gt;   Could not create or form the JFS log.&lt;br /&gt;&lt;br /&gt;*c50 *&lt;br /&gt;   Creating root volume group on target disks.&lt;br /&gt;&lt;br /&gt;*c51 *&lt;br /&gt;   No paging devices were found.&lt;br /&gt;&lt;br /&gt;*c52 *&lt;br /&gt;   Changing from RAM environment to disk environment.&lt;br /&gt;&lt;br /&gt;*c53 *&lt;br /&gt;   Not enough space in the */tmp* directory to do a preservation&lt;br /&gt;   installation.&lt;br /&gt;&lt;br /&gt;*c54 *&lt;br /&gt;   Installing either BOS or additional packages.&lt;br /&gt;&lt;br /&gt;*c55 *&lt;br /&gt;   Could not remove the specified logical volume in a preservation&lt;br /&gt;   installation.&lt;br /&gt;&lt;br /&gt;*c56 *&lt;br /&gt;   Running user-defined customization.&lt;br /&gt;&lt;br /&gt;*c57 *&lt;br /&gt;   Failure to restore BOS.&lt;br /&gt;&lt;br /&gt;*c58 *&lt;br /&gt;   Displaying message to turn the key.&lt;br /&gt;&lt;br /&gt;*c59 *&lt;br /&gt;   Could not copy either device special files, device ODM, or volume&lt;br /&gt;   group information from RAM to disk.&lt;br /&gt;&lt;br /&gt;*c61 *&lt;br /&gt;   Failed to create the boot image.&lt;br /&gt;&lt;br /&gt;*c62 *&lt;br /&gt;   Loading platform dependent debug files.&lt;br /&gt;&lt;br /&gt;*c63 *&lt;br /&gt;   Loading platform dependent data files.&lt;br /&gt;&lt;br /&gt;*c64 *&lt;br /&gt;   Failed to load platform dependent data files.&lt;br /&gt;&lt;br /&gt;*c70 *&lt;br /&gt;   Problem Mounting diagnostic CD-ROM disc.&lt;br /&gt;&lt;br /&gt;*c99 *&lt;br /&gt;   Diagnostics have completed. This code is only used when there is no&lt;br /&gt;   console.&lt;br /&gt;&lt;br /&gt;*Fxx *&lt;br /&gt;   (xx is any number) Refer to Firmware chapter of the service manual.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     Dump Progress Indicators (Dump Status Codes)&lt;br /&gt;&lt;br /&gt;The following dump progress indicators, or dump status codes, are part&lt;br /&gt;of a Type 102 message.&lt;br /&gt;&lt;br /&gt;*Note:*&lt;br /&gt;   When a lowercase c is listed, it displays in the lower half of the&lt;br /&gt;   character position. Some systems produce 4-digit codes, the two&lt;br /&gt;   leftmost positions can have a blanks or zeros. Use the two rightmost&lt;br /&gt;   digits.&lt;br /&gt;&lt;br /&gt;*0c0 *&lt;br /&gt;   The dump completed successfully.&lt;br /&gt;&lt;br /&gt;*0c1 *&lt;br /&gt;   The dump failed due to an I/O error.&lt;br /&gt;&lt;br /&gt;*0c2 *&lt;br /&gt;   A dump, requested by the user, is started.&lt;br /&gt;&lt;br /&gt;*0c3 *&lt;br /&gt;   The dump is inhibited.&lt;br /&gt;&lt;br /&gt;*0c4 *&lt;br /&gt;   The dump device is not large enough.&lt;br /&gt;&lt;br /&gt;*0c5 *&lt;br /&gt;   The dump did not start, or the dump crashed.&lt;br /&gt;&lt;br /&gt;*0c6 *&lt;br /&gt;   Dumping to a secondary dump device.&lt;br /&gt;&lt;br /&gt;*0c7 *&lt;br /&gt;   Reserved.&lt;br /&gt;&lt;br /&gt;*0c8 *&lt;br /&gt;   The dump function is disabled.&lt;br /&gt;&lt;br /&gt;*0c9 *&lt;br /&gt;   A dump is in progress.&lt;br /&gt;&lt;br /&gt;*0cc *&lt;br /&gt;   Unknown dump failure&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     Crash Codes&lt;br /&gt;&lt;br /&gt;*Note:*&lt;br /&gt;   Some systems may produce 4-digit codes. If the leftmost digit of a&lt;br /&gt;   4-digit code is 0, use the three rightmost digits.&lt;br /&gt;&lt;br /&gt;The crash codes that follow are part of a Type 102 message. These crash&lt;br /&gt;codes are grouped into three categories:&lt;br /&gt;&lt;br /&gt;*Category 1 *&lt;br /&gt;   Dump analysis is the appropriate first action in Problem&lt;br /&gt;   Determination, begin the Problem Determination process with software&lt;br /&gt;   support.&lt;br /&gt;&lt;br /&gt;*Category 2 *&lt;br /&gt;   Dump analysis most likely will not aid in Problem Determination,&lt;br /&gt;   begin the Problem Determination process with hardware support.&lt;br /&gt;&lt;br /&gt;*Category 3 *&lt;br /&gt;   Both software and hardware support may be needed in Problem&lt;br /&gt;   Determination, go to MAP 0070: 888 Sequence in Operator Panel&lt;br /&gt;   Display&lt;br /&gt;   &lt;http://web.archive.org/web/20041112035526/http://publib16.boulder.ibm.com/pseries/en_us/infocenter/base/hardware_docs/pdf/380509.pdf&gt;&lt;br /&gt;   in /Diagnostic Information for Multiple Bus Systems/to assist in&lt;br /&gt;   problem isolation.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;       Category 1&lt;br /&gt;&lt;br /&gt;*300 *&lt;br /&gt;   Data storage interrupt from the processor.&lt;br /&gt;&lt;br /&gt;*32x *&lt;br /&gt;   Data storage interrupt because of an I/O exception from IOCC.&lt;br /&gt;&lt;br /&gt;*38x *&lt;br /&gt;   Data storage interrupt because of an I/O exception from SLA.&lt;br /&gt;&lt;br /&gt;*400 *&lt;br /&gt;   Instruction storage interrupt.&lt;br /&gt;&lt;br /&gt;*700 *&lt;br /&gt;   Program interrupt.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;       Category 2&lt;br /&gt;&lt;br /&gt;*200 
